petere / pgemailaddr

email address type for PostgreSQL
https://twitter.com/pvh/status/667106073199775744
43 stars 7 forks source link

Add PostgreSQL 16/17 support #5

Open Vonng opened 2 weeks ago

Vonng commented 2 weeks ago

Fail to build against PostgreSQL 16/17

rm -rf /home/vagrant/rpmbuild/RPMS/x86_64/pg_emailaddr*.rpm
[pg_emailaddr for PG16] ===========================================
$ rpmbuild --with debuginfo --define "pgmajorversion 16" -ba ~/rpmbuild/SPECS/pg_emailaddr.spec
Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.7hqfeH
+ umask 022
+ cd /home/vagrant/rpmbuild/BUILD
+ cd /home/vagrant/rpmbuild/BUILD
+ rm -rf pgemailaddr-0
+ /usr/bin/gzip -dc /home/vagrant/rpmbuild/SOURCES/pgemailaddr-0.tar.gz
+ /usr/bin/tar -xof -
+ STATUS=0
+ '[' 0 -ne 0 ']'
+ cd pgemailaddr-0
+ /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w .
+ exit 0
Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.67U2Z8
+ umask 022
+ cd /home/vagrant/rpmbuild/BUILD
+ cd pgemailaddr-0
+ PATH=/usr/pgsql-16/bin:/home/vagrant/.cargo/bin:/home/vagrant/.local/bin:/home/vagrant/bin:/usr/share/Modules/bin:/usr/lib64/ccache:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin
+ /usr/bin/make -j10
gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type -Wshadow=compatible-local -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-format-truncation -Wno-stringop-truncation -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fPIC -fvisibility=hidden -I. -I./ -I/usr/pgsql-16/include/server -I/usr/pgsql-16/include/internal  -D_GNU_SOURCE -I/usr/include/libxml2  -I/usr/include  -c -o emailaddr.o emailaddr.c
/usr/bin/clang -Wno-ignored-attributes -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-unused-command-line-argument -Wno-compound-token-split-by-macro -O2  -I. -I./ -I/usr/pgsql-16/include/server -I/usr/pgsql-16/include/internal  -D_GNU_SOURCE -I/usr/include/libxml2  -I/usr/include -flto=thin -emit-llvm -c -o emailaddr.bc emailaddr.c
emailaddr.c:122:2: error: call to undeclared function 'SET_VARSIZE'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
  122 |         SET_VARSIZE(result, result_len);
      |         ^
emailaddr.c:139:15: error: call to undeclared function 'VARSIZE'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
  139 |         result_len = VARSIZE(arg) - offsetof(emailaddr, data) + 1 + 1;
      |                      ^
emailaddr.c:172:44: error: call to undeclared function 'VARSIZE'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
  172 |         res = strnncmp(a->data + a->local_offset, VARSIZE(a) - offsetof(emailaddr, data) - a->local_offset,
      |                                                   ^
3 errors generated.
make: *** [/usr/pgsql-16/lib/pgxs/src/makefiles/../../src/Makefile.global:1093: emailaddr.bc] Error 1
make: *** Waiting for unfinished jobs....
emailaddr.c: In function 'emailaddr_in':
emailaddr.c:122:2: warning: implicit declaration of function 'SET_VARSIZE' [-Wimplicit-function-declaration]
  SET_VARSIZE(result, result_len);
  ^~~~~~~~~~~
emailaddr.c: In function 'emailaddr_out':
emailaddr.c:139:15: warning: implicit declaration of function 'VARSIZE' [-Wimplicit-function-declaration]
  result_len = VARSIZE(arg) - offsetof(emailaddr, data) + 1 + 1;
               ^~~~~~~
error: Bad exit status from /var/tmp/rpm-tmp.67U2Z8 (%build)

RPM build errors:
    Bad exit status from /var/tmp/rpm-tmp.67U2Z8 (%build)