After updating libgcrypt in pkgsrc to 1.12.0, bulk package builders tried building it. The one on SmartOS failed with:
--- libgcrypt.la ---
/usr/bin/bash ../libtool --tag=CC --mode=link gcc -I/opt/pkg/include -pipe -O2 -msave-args -fno-aggressive-loop-optimizations -I/opt/pkg/include -I/usr/include -fvisibility=hidden -fno-delete-null-pointer-checks -Wall -version-info 27:0:7 -L/opt/pkg/lib -Wl,-R/opt/pkg/lib -lintl -liconv -L/usr/lib/amd64 -Wl,-R/usr/lib/amd64 -o libgcrypt.la -rpath /opt/pkg/lib libgcrypt_la-visibility.lo libgcrypt_la-misc.lo libgcrypt_la-global.lo libgcrypt_la-sexp.lo libgcrypt_la-hwfeatures.lo libgcrypt_la-stdmem.lo libgcrypt_la-secmem.lo libgcrypt_la-missing-string.lo libgcrypt_la-fips.lo libgcrypt_la-context.lo libgcrypt_la-const-time.lo libgcrypt_la-hwf-x86.lo ../cipher/libcipher.la ../random/librandom.la ../mpi/libmpi.la ../compat/libcompat.la -Wl,-R/opt/pkg/lib -L/opt/pkg/lib -lgpg-error -lsocket -lsocket -lsocket
libtool: link: gcc -shared -fPIC -DPIC -Wl,-z -Wl,text -Wl,-h -Wl,libgcrypt.so.20 -o .libs/libgcrypt.so.20.7.0 .libs/libgcrypt_la-visibility.o .libs/libgcrypt_la-misc.o .libs/libgcrypt_la-global.o .libs/libgcrypt_la-sexp.o .libs/libgcrypt_la-hwfeatures.o .libs/libgcrypt_la-stdmem.o .libs/libgcrypt_la-secmem.o .libs/libgcrypt_la-missing-string.o .libs/libgcrypt_la-fips.o .libs/libgcrypt_la-context.o .libs/libgcrypt_la-const-time.o .libs/libgcrypt_la-hwf-x86.o -Wl,-z -Wl,allextract ../cipher/.libs/libcipher.a ../random/.libs/librandom.a ../mpi/.libs/libmpi.a ../compat/.libs/libcompat.a -Wl,-z -Wl,defaultextract -R/home/pbulk/build/security/libgcrypt/work/.buildlink/lib -R/home/pbulk/build/security/libgcrypt/work/.buildlink/lib -L/home/pbulk/build/security/libgcrypt/work/.buildlink/lib /home/pbulk/build/security/libgcrypt/work/.buildlink/lib/libgpg-error.so /home/pbulk/build/security/libgcrypt/work/.buildlink/lib/libintl.so /home/pbulk/build/security/libgcrypt/work/.buildlink/lib/libiconv.so -lsocket -O2 -msave-args -Wl,-rpath -Wl,/opt/pkg/lib -Wl,-rpath -Wl,/opt/pkg/lib
Text relocation remains referenced
against symbol offset in file
_gcry_vaes_avx2_ocb_crypt_amd64 0x35c6 ../cipher/.libs/libcipher.a(rijndael-vaes-avx512-amd64.o)
_gcry_vaes_avx2_ctr32le_enc_amd64 0x1f86 ../cipher/.libs/libcipher.a(rijndael-vaes-avx512-amd64.o)
_gcry_vaes_avx2_ctr_enc_amd64 0x1826 ../cipher/.libs/libcipher.a(rijndael-vaes-avx512-amd64.o)
_gcry_vaes_avx2_cfb_dec_amd64 0xe36 ../cipher/.libs/libcipher.a(rijndael-vaes-avx512-amd64.o)
_gcry_vaes_avx2_cbc_dec_amd64 0x716 ../cipher/.libs/libcipher.a(rijndael-vaes-avx512-amd64.o)
_gcry_vaes_avx2_ecb_crypt_amd64 0x4ca6 ../cipher/.libs/libcipher.a(rijndael-vaes-avx512-amd64.o)
_gcry_vaes_avx2_xts_crypt_amd64 0x4186 ../cipher/.libs/libcipher.a(rijndael-vaes-avx512-amd64.o)
ld: fatal: relocations remain against allocatable but non-writable sections
collect2: error: ld returned 1 exit status
*** [libgcrypt.la] Error code 1