On Sat, 12 Sep 2020 18:28:03 +0200, Dimitry Andric <d...@freebsd.org> wrote:

On 12 Sep 2020, at 17:43, Ronald Klop <ronald-li...@klop.ws> wrote:

Because I'm tired of hours of compilation of llvm/clang I'm testing compiling FreeBSD with llvm11 from a pkg.

Setup a jail with 13-CURRENT. Compilation of the installed version went fine.
Today I svn up'd and compiled and compilation broke.

/lib/clang/11.0.0/include -fstack-protector-strong -Wsystem-headers -Werror -Wall -[29/1822] t-y2k -Wno-uninitialized -Wno-pointer-sign -Wno-empty-body -Wno-string-plus-int -Wno-unused-const-variable -Wno-tautological-compare -Wno-unused-value -Wno-parentheses-equality -Wno-unused-function -Wno-enum-conversion -Wno-unused-local-typedef -Wno-address-of-packed-member - Wno-switch -Wno-switch-enum -Wno-knr-promoted-parameter -Qunused-arguments -I/usr/src/li b/libutil -I/usr/src/lib/msun/amd64 -I/usr/src/lib/msun/x86 -I/usr/src/lib/msun/src -c /usr/
src/lib/libc/sys/shm_open.c -o shm_open.o
/usr/src/lib/libc/sys/shm_open.c:64:28: error: variable has incomplete type 'struct shm_larg
epage_conf'
       struct shm_largepage_conf slc;
                                 ^
/usr/src/lib/libc/sys/shm_open.c:64:9: note: forward declaration of 'struct shm_largepage_co
nf'
       struct shm_largepage_conf slc;


I can see the difference between /usr/include/sys/mman.h and /usr/src/sys/sys/mman.h is exactly about these symbols.
Why is the base compiler using the latter and ports llvm11 the former?

Configuration of my src.conf and make.conf is described in https://blog.klop.ws/2020/08/waiting-for-clang-forever-and-ever.html .


Do I miss some directive about system header files?

During what stage is this, and is it an incremental (e.g. -DNO_CLEAN)
build? With this kind of failure, it is usually required to be able to
inspect the full buildworld log, and the exact command line you used to
invoke make. If you can, upload that somewhere so it can be viewed.


It is during the building world stage and happens with and without NO_CLEAN.
Full command:
/usr/local/bin/clang11 -O2 -pipe -fno-common -DNO__SCCSID -DNO__RCSID -I/usr/src/lib/libc /include -I/usr/src/include -I/usr/src/lib/libc/amd64 -DNLS -D__DBINTERFACE_PRIVATE -I/usr/ src/contrib/gdtoa -I/usr/src/contrib/libc-vis -DINET6 -I/usr/obj/usr/src/amd64.amd64/lib/lib c -I/usr/src/lib/libc/resolv -D_ACL_PRIVATE -DPOSIX_MISTAKE -I/usr/src/lib/libmd -I/usr/src/ contrib/jemalloc/include -DMALLOC_PRODUCTION -I/usr/src/contrib/tzcode/stdtime -I/usr/src/li b/libc/stdtime -I/usr/src/lib/libc/locale -DBROKEN_DES -DPORTMAP -DDES_BUILTIN -I/usr/src/li b/libc/rpc -DWANT_HYPERV -DYP -DNS_CACHING -DSYMBOL_VERSIONING -g -MD -MF.depend.shm_open.o -MTshm_open.o -std=gnu99 -Wno-format-zero-length -nobuiltininc -idirafter /usr/local/llvm11 /lib/clang/11.0.0/include -fstack-protector-strong -Wsystem-headers -Werror -Wall -Wno-format-y2k -Wno-uninitialized -Wno-pointer-sign -Wno-empty-body -Wno-string-plus-int -Wno-unused- const-variable -Wno-tautological-compare -Wno-unused-value -Wno-parentheses-equality -Wno-un used-function -Wno-enum-conversion -Wno-unused-local-typedef -Wno-address-of-packed-member - Wno-switch -Wno-switch-enum -Wno-knr-promoted-parameter -Qunused-arguments -I/usr/src/lib/libutil -I/usr/src/lib/msun/amd64 -I/usr/src/lib/msun/x86 -I/usr/src/lib/msun/src -c /usr/
src/lib/libc/sys/shm_open.c -o shm_open.o



That said, it looks like something is messing up your include order,
as during a very early stage in buildword, the sys/sys/ headers are
symlinked to objdir/tmp/legacy/usr/include/sys/. This should include
the mman.h header.

-Dimitry




I just added CROSS_TOOLCHAIN=llvm11 to make.conf and src.conf, but no difference. I think I need something with --sysroot, but am not sure if this is something I should set or which the build framework should set.

Any advice on this? Or a pointer to the right documentation?


Regards,

Ronald.
_______________________________________________
freebsd-current@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"

Reply via email to