security/nss (from head -r515742): build failure for poudriere-devel based amd64->armv7 (cortex-a7) cross build, it tried to build aes-armv8.c and failed

Mark Millard marklmi at yahoo.com
Sun Oct 27 23:24:28 UTC 2019


For some reason security/nss tried to build "-march=armv8-a -mfpu=crypto-neon-fp-armv8 aes-armv8.c"
material when targeting armv7 (cortex-a7). This did not go well . . .

/nxb-bin/usr/bin/cc -o FreeBSD13.0_OPT.OBJ/FreeBSD_SINGLE_SHLIB/aes-armv8.o -c -O2 -pipe -mcpu=cortex-a7  -I/usr/local/include/nspr -g -fstack-protector-strong -fno-strict-aliasing   -fPIC -Wall -Wno-
switch -DFREEBSD -DHAVE_STRERROR -DHAVE_BSD_FLOCK -Wall -Wshadow -Qunused-arguments -Wno-parentheses-equality -Wno-array-bounds -Wno-unevaluated-expression -Werror -DXP_UNIX -UDEBUG -DNDEBUG -D_THREAD
_SAFE -D_REENTRANT -DNSS_NO_INIT_SUPPORT -DUSE_UTIL_DIRECTLY -DNO_NSPR_10_SUPPORT -DSSL_DISABLE_DEPRECATED_CIPHER_SUITE_NAMES -I./../dist/FreeBSD13.0_OPT.OBJ/include -I./../dist/public/ -I./../dist/pr
ivate/   -fPIC -Wall -Wno-switch -DFREEBSD -DHAVE_STRERROR -DHAVE_BSD_FLOCK -Wall -Wshadow -Qunused-arguments -Wno-parentheses-equality -Wno-array-bounds -Wno-unevaluated-expression -Werror -DXP_UNIX 
-UDEBUG -DNDEBUG -D_THREAD_SAFE -D_REENTRANT -DNSS_NO_INIT_SUPPORT -DUSE_UTIL_DIRECTLY -DNO_NSPR_10_SUPPORT -DSSL_DISABLE_DEPRECATED_CIPHER_SUITE_NAMES -I../../dist/FreeBSD13.0_OPT.OBJ/include -I../..
/dist/public/ -I../../dist/private/   -fPIC -Wall -Wno-switch -DFREEBSD -DHAVE_STRERROR -DHAVE_BSD_FLOCK -Wall -Wshadow -Qunused-arguments -Wno-parentheses-equality -Wno-array-bounds -Wno-unevaluated-
expression -Werror -DXP_UNIX -DSHLIB_SUFFIX=\"so\" -DSHLIB_PREFIX=\"lib\" -DSHLIB_VERSION=\"3\" -DSOFTOKEN_SHLIB_VERSION=\"3\" -DRIJNDAEL_INCLUDE_TABLES -UDEBUG -DNDEBUG -D_THREAD_SAFE -D_REENTRANT -D
NSS_NO_INIT_SUPPORT -DUSE_UTIL_DIRECTLY -DNO_NSPR_10_SUPPORT -DSSL_DISABLE_DEPRECATED_CIPHER_SUITE_NAMES -DFREEBL_LOWHASH -DUSE_HW_AES -DMP_ASSEMBLY_MULTIPLY -DMP_ASSEMBLY_SQUARE  -DMP_USE_UINT_DIGIT 
-DSHA_NO_LONG_LONG  -DKRML_NOUINT128 -DMP_API_COMPATIBLE -I../../../dist/FreeBSD13.0_OPT.OBJ/include -I../../../dist/public/nss -I../../../dist/private/nss -Impi -Iecl -Iverified   -fPIC -Wall -Wno-sw
itch -DFREEBSD -DHAVE_STRERROR -DHAVE_BSD_FLOCK -Wall -Wshadow -Qunused-arguments -Wno-parentheses-equality -Wno-array-bounds -Wno-unevaluated-expression -Werror -DXP_UNIX -DSHLIB_SUFFIX=\"so\" -DSHLI
B_PREFIX=\"lib\" -DSHLIB_VERSION=\"3\" -DSOFTOKEN_SHLIB_VERSION=\"3\" -DRIJNDAEL_INCLUDE_TABLES -UDEBUG -DNDEBUG -D_THREAD_SAFE -D_REENTRANT -DNSS_NO_INIT_SUPPORT -DUSE_UTIL_DIRECTLY -DNO_NSPR_10_SUPP
ORT -DSSL_DISABLE_DEPRECATED_CIPHER_SUITE_NAMES -DFREEBL_LOWHASH -DUSE_HW_AES -DMP_ASSEMBLY_MULTIPLY -DMP_ASSEMBLY_SQUARE  -DMP_USE_UINT_DIGIT -DSHA_NO_LONG_LONG  -DKRML_NOUINT128 -DMP_API_COMPATIBLE 
-I../../../dist/FreeBSD13.0_OPT.OBJ/include -I../../../dist/public/nss -I../../../dist/private/nss -Impi -Iecl -Iverified  -std=gnu99 -march=armv8-a -mfpu=crypto-neon-fp-armv8 aes-armv8.c
aes-armv8.c:13:2: error: "Compiler option is invalid"
#error "Compiler option is invalid"
 ^
aes-armv8.c:65:17: error: implicit declaration of function 'vaeseq_u8' is invalid in C99 [-Werror,-Wimplicit-function-declaration]
        state = vaeseq_u8(state, key1);
                ^
aes-armv8.c:65:15: error: assigning to 'uint8x16_t' (vector of 16 'uint8_t' values) from incompatible type 'int'
        state = vaeseq_u8(state, key1);
              ^ ~~~~~~~~~~~~~~~~~~~~~~
aes-armv8.c:66:17: error: implicit declaration of function 'vaesmcq_u8' is invalid in C99 [-Werror,-Wimplicit-function-declaration]
        state = vaesmcq_u8(state);
                ^
aes-armv8.c:66:17: note: did you mean 'vaeseq_u8'?
aes-armv8.c:65:17: note: 'vaeseq_u8' declared here
        state = vaeseq_u8(state, key1);
                ^
aes-armv8.c:66:15: error: assigning to 'uint8x16_t' (vector of 16 'uint8_t' values) from incompatible type 'int'
        state = vaesmcq_u8(state);
              ^ ~~~~~~~~~~~~~~~~~
aes-armv8.c:67:15: error: assigning to 'uint8x16_t' (vector of 16 'uint8_t' values) from incompatible type 'int'
        state = vaeseq_u8(state, key2);
              ^ ~~~~~~~~~~~~~~~~~~~~~~
aes-armv8.c:68:15: error: assigning to 'uint8x16_t' (vector of 16 'uint8_t' values) from incompatible type 'int'
        state = vaesmcq_u8(state);
              ^ ~~~~~~~~~~~~~~~~~
aes-armv8.c:69:15: error: assigning to 'uint8x16_t' (vector of 16 'uint8_t' values) from incompatible type 'int'
        state = vaeseq_u8(state, key3);
              ^ ~~~~~~~~~~~~~~~~~~~~~~
aes-armv8.c:70:15: error: assigning to 'uint8x16_t' (vector of 16 'uint8_t' values) from incompatible type 'int'
        state = vaesmcq_u8(state);
              ^ ~~~~~~~~~~~~~~~~~
aes-armv8.c:71:15: error: assigning to 'uint8x16_t' (vector of 16 'uint8_t' values) from incompatible type 'int'
        state = vaeseq_u8(state, key4);
              ^ ~~~~~~~~~~~~~~~~~~~~~~
aes-armv8.c:72:15: error: assigning to 'uint8x16_t' (vector of 16 'uint8_t' values) from incompatible type 'int'
        state = vaesmcq_u8(state);
              ^ ~~~~~~~~~~~~~~~~~
aes-armv8.c:73:15: error: assigning to 'uint8x16_t' (vector of 16 'uint8_t' values) from incompatible type 'int'
        state = vaeseq_u8(state, key5);
              ^ ~~~~~~~~~~~~~~~~~~~~~~
aes-armv8.c:74:15: error: assigning to 'uint8x16_t' (vector of 16 'uint8_t' values) from incompatible type 'int'
        state = vaesmcq_u8(state);
              ^ ~~~~~~~~~~~~~~~~~
aes-armv8.c:75:15: error: assigning to 'uint8x16_t' (vector of 16 'uint8_t' values) from incompatible type 'int'
        state = vaeseq_u8(state, key6);
              ^ ~~~~~~~~~~~~~~~~~~~~~~
aes-armv8.c:76:15: error: assigning to 'uint8x16_t' (vector of 16 'uint8_t' values) from incompatible type 'int'
        state = vaesmcq_u8(state);
              ^ ~~~~~~~~~~~~~~~~~
aes-armv8.c:77:15: error: assigning to 'uint8x16_t' (vector of 16 'uint8_t' values) from incompatible type 'int'
        state = vaeseq_u8(state, key7);
              ^ ~~~~~~~~~~~~~~~~~~~~~~
aes-armv8.c:78:15: error: assigning to 'uint8x16_t' (vector of 16 'uint8_t' values) from incompatible type 'int'
        state = vaesmcq_u8(state);
              ^ ~~~~~~~~~~~~~~~~~
aes-armv8.c:79:15: error: assigning to 'uint8x16_t' (vector of 16 'uint8_t' values) from incompatible type 'int'
        state = vaeseq_u8(state, key8);
              ^ ~~~~~~~~~~~~~~~~~~~~~~
aes-armv8.c:80:15: error: assigning to 'uint8x16_t' (vector of 16 'uint8_t' values) from incompatible type 'int'
        state = vaesmcq_u8(state);
              ^ ~~~~~~~~~~~~~~~~~
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
gmake[4]: *** [../../coreconf/rules.mk:393: FreeBSD13.0_OPT.OBJ/FreeBSD_SINGLE_SHLIB/aes-armv8.o] Error 1
gmake[4]: Leaving directory '/wrkdirs/usr/ports/security/nss/work/nss-3.47/nss/lib/freebl'
gmake[3]: *** [Makefile:653: libs] Error 2
gmake[3]: Leaving directory '/wrkdirs/usr/ports/security/nss/work/nss-3.47/nss/lib/freebl'
gmake[2]: *** [../coreconf/rules.mk:101: libs] Error 2
gmake[2]: Leaving directory '/wrkdirs/usr/ports/security/nss/work/nss-3.47/nss/lib'
gmake[1]: *** [coreconf/rules.mk:101: libs] Error 2
gmake[1]: Leaving directory '/wrkdirs/usr/ports/security/nss/work/nss-3.47/nss'
*** Error code 1

===
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)



More information about the freebsd-ports mailing list