head build error (header pollution ?) after 249958

From: Luigi Rizzo <rizzo_at_iet.unipi.it>
Date: Sun, 5 May 2013 12:04:29 +0200
Since svn 249959 (when NO_IDEA was removed) I cannot build HEAD on
a somewhat recent stable/9 (see below; kernel and userland in sync)

	> uname -a
	FreeBSD bsd9 9.1-STABLE FreeBSD 9.1-STABLE #0 r248472:
	Tue Mar 19 08:36:09 CET 2013 luigi_at_bsd9:.../RELENG_9/sys/LUIGI
	amd64

(note that head was unbuildable in general since 249972 because
there were leftovers of the IDEA option around)
The error occurs during the 'toolchain' target (actually, probably
in the 'libraries' one) and it is the following:

---> [ remember the cflags below ]
cc  -O2 -pipe  -DTERMIOS -DANSI_SOURCE -I/usr/home/luigi/FreeBSD/head/secure/lib/libcrypto/../../../crypto/openssl -I/usr/home/luigi/FreeBSD/head/secure/lib/libcrypto/../../../crypto/openssl/crypto -I/usr/home/luigi/FreeBSD/obj_head/usr/home/luigi/FreeBSD/head/secure/lib/libcrypto -DOPENSSL_THREADS -DDSO_DLFCN -DHAVE_DLFCN_H -DL_ENDIAN -DOPENSSL_IA32_SSE2 -DAES_ASM -DBSAES_ASM -DVPAES_ASM -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DMD5_ASM -DGHASH_ASM -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DWHIRLPOOL_ASM -I/usr/home/luigi/FreeBSD/head/secure/lib/libcrypto/../../../crypto/openssl/crypto/asn1 -I/usr/home/luigi/FreeBSD/head/secure/lib/libcrypto/../../../crypto/openssl/crypto/evp -I/usr/home/luigi/FreeBSD/head/secure/lib/libcrypto/../../../crypto/openssl/crypto/modes -std=gnu89 -fstack-protector -Wno-pointer-sign -c /usr/home/luigi/FreeBSD/head/secure/lib/libcrypto/../../../crypto/openssl/crypto/asn1/a_sign.c -o a_sign.o
/usr/home/luigi/FreeBSD/head/secure/lib/libcrypto/../../../crypto/openssl/crypto/asn1/a_sign.c: In function 'ASN1_item_sign_ctx':
/usr/home/luigi/FreeBSD/head/secure/lib/libcrypto/../../../crypto/openssl/crypto/asn1/a_sign.c:243: error: 'EVP_MD_CTX' has no member named 'pctx'
/usr/home/luigi/FreeBSD/head/secure/lib/libcrypto/../../../crypto/openssl/crypto/asn1/a_sign.c:243: warning: assignment makes pointer from integer without a cast
/usr/home/luigi/FreeBSD/head/secure/lib/libcrypto/../../../crypto/openssl/crypto/asn1/a_sign.c:251: error: 'EVP_PKEY' has no member named 'ameth'
/usr/home/luigi/FreeBSD/head/secure/lib/libcrypto/../../../crypto/openssl/crypto/asn1/a_sign.c:253: error: 'EVP_PKEY' has no member named 'ameth'
/usr/home/luigi/FreeBSD/head/secure/lib/libcrypto/../../../crypto/openssl/crypto/asn1/a_sign.c:273: error: 'EVP_MD_FLAG_PKEY_METHOD_SIGNATURE' undeclared (first use in this function)
/usr/home/luigi/FreeBSD/head/secure/lib/libcrypto/../../../crypto/openssl/crypto/asn1/a_sign.c:273: error: (Each undeclared identifier is reported only once
/usr/home/luigi/FreeBSD/head/secure/lib/libcrypto/../../../crypto/openssl/crypto/asn1/a_sign.c:273: error: for each function it appears in.)
/usr/home/luigi/FreeBSD/head/secure/lib/libcrypto/../../../crypto/openssl/crypto/asn1/a_sign.c:275: error: 'EVP_PKEY' has no member named 'ameth'
/usr/home/luigi/FreeBSD/head/secure/lib/libcrypto/../../../crypto/openssl/crypto/asn1/a_sign.c:278: error: 'EVP_PKEY' has no member named 'ameth'
/usr/home/luigi/FreeBSD/head/secure/lib/libcrypto/../../../crypto/openssl/crypto/asn1/a_sign.c:288: error: 'EVP_PKEY' has no member named 'ameth'
/usr/home/luigi/FreeBSD/head/secure/lib/libcrypto/../../../crypto/openssl/crypto/asn1/a_sign.c:288: error: 'ASN1_PKEY_SIGPARAM_NULL' undeclared (first use in this function)
*** [a_sign.o] Error code 1

Stop in /usr/home/luigi/FreeBSD/head/secure/lib/libcrypto.
*** [secure/lib/libcrypto__L] Error code 1

Stop in /usr/home/luigi/FreeBSD/head.
*** [libraries] Error code 1

Stop in /usr/home/luigi/FreeBSD/head.
*** [_libraries] Error code 1

Stop in /usr/home/luigi/FreeBSD/head.
*** [toolchain] Error code 1

Stop in /usr/home/luigi/FreeBSD/head.


--------------

and happens whether or not CLANG is used as a compiler, and on
all version up to the current one (250266 as i write).


Interestingly, the build works on a stable/9 host with only a slightly
more recent world/kernel

	> uname -a
	FreeBSD bsd9b 9.1-STABLE FreeBSD 9.1-STABLE #0 r249364M:
	Thu Apr 11 18:29:30 CEST 2013 luigi_at_bsd9b:.../RELENG_9/sys/LUIGI
	amd64

This makes me think that the libraries are built using the headers
installed on the host instead of those belonging to the source tree.
Looking at the arguments to 'cc' above seems to confirm this.

Any idea on how to fix this problem (which probably may affect
cross builds in general) ?

	cheers
	luigi
Received on Sun May 05 2013 - 08:02:26 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:37 UTC