On 12 Sep 2020, at 23:00, Ronald Klop <ronald-lists_at_klop.ws> wrote: > > On Sat, 12 Sep 2020 18:28:03 +0200, Dimitry Andric <dim_at_freebsd.org> wrote: >> On 12 Sep 2020, at 17:43, Ronald Klop <ronald-lists_at_klop.ws> wrote: >>> >>> Because I'm tired of hours of compilation of llvm/clang I'm testing compiling FreeBSD with llvm11 from a pkg. ... 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 After a pretty long build of the llvm11 port, I can at least reproduce your error. It looks like the problem is that clang11 does not get any --sysroot parameter passed. If I install the devel/xtoolchain-llvm90 port and use that, I get a slightly different command line. Here's both of them, in diff --side-by-side format: /usr/local/bin/clang11 | /usr/local/bin/clang90 > -target x86_64-unknown-freebsd13.0 > --sysroot=/usr/obj/usr/src/amd64.amd64/tmp > -B/var/empty -O2 -O2 -pipe -pipe -fno-common -fno-common -DNO__SCCSID -DNO__SCCSID -DNO__RCSID -DNO__RCSID -I/usr/src/lib/libc/include -I/usr/src/lib/libc/include -I/usr/src/include -I/usr/src/include -I/usr/src/lib/libc/amd64 -I/usr/src/lib/libc/amd64 -DNLS -DNLS -D__DBINTERFACE_PRIVATE -D__DBINTERFACE_PRIVATE -I/usr/src/contrib/gdtoa -I/usr/src/contrib/gdtoa -I/usr/src/contrib/libc-vis -I/usr/src/contrib/libc-vis -DINET6 -DINET6 -I/usr/obj/usr/src/amd64.amd64/lib/libc -I/usr/obj/usr/src/amd64.amd64/lib/libc -I/usr/src/lib/libc/resolv -I/usr/src/lib/libc/resolv -D_ACL_PRIVATE -D_ACL_PRIVATE -DPOSIX_MISTAKE -DPOSIX_MISTAKE -I/usr/src/lib/libmd -I/usr/src/lib/libmd -I/usr/src/contrib/jemalloc/include -I/usr/src/contrib/jemalloc/include -I/usr/src/contrib/tzcode/stdtime -I/usr/src/contrib/tzcode/stdtime -I/usr/src/lib/libc/stdtime -I/usr/src/lib/libc/stdtime -I/usr/src/lib/libc/locale -I/usr/src/lib/libc/locale -DBROKEN_DES -DBROKEN_DES -DPORTMAP -DPORTMAP -DDES_BUILTIN -DDES_BUILTIN -I/usr/src/lib/libc/rpc -I/usr/src/lib/libc/rpc -DWANT_HYPERV -DWANT_HYPERV -DYP -DYP -DNS_CACHING -DNS_CACHING -DSYMBOL_VERSIONING -DSYMBOL_VERSIONING -g -g -MD -MD -MF.depend.shm_open.o -MF.depend.shm_open.o -MTshm_open.o -MTshm_open.o -std=gnu99 -std=gnu99 -Wno-format-zero-length -Wno-format-zero-length -nobuiltininc -nobuiltininc -idirafter /usr/local/llvm11/lib/clang/11.0.0/include | -idirafter /usr/local/llvm90/lib/clang/9.0.1/include -fstack-protector-strong -fstack-protector-strong -Wsystem-headers -Wsystem-headers -Werror -Werror -Wall -Wall -Wno-format-y2k -Wno-format-y2k -Wno-uninitialized -Wno-uninitialized -Wno-pointer-sign -Wno-pointer-sign -Wno-empty-body -Wno-empty-body -Wno-string-plus-int -Wno-string-plus-int -Wno-unused-const-variable -Wno-unused-const-variable -Wno-tautological-compare -Wno-tautological-compare -Wno-unused-value -Wno-unused-value -Wno-parentheses-equality -Wno-parentheses-equality -Wno-unused-function -Wno-unused-function -Wno-enum-conversion -Wno-enum-conversion -Wno-unused-local-typedef -Wno-unused-local-typedef -Wno-address-of-packed-member -Wno-address-of-packed-member -Wno-switch -Wno-switch -Wno-switch-enum -Wno-switch-enum -Wno-knr-promoted-parameter -Wno-knr-promoted-parameter -Qunused-arguments -Qunused-arguments -I/usr/src/lib/libutil -I/usr/src/lib/libutil -I/usr/src/lib/msun/amd64 -I/usr/src/lib/msun/amd64 -I/usr/src/lib/msun/x86 -I/usr/src/lib/msun/x86 -I/usr/src/lib/msun/src -I/usr/src/lib/msun/src -c /usr/src/lib/libc/sys/shm_open.c -c /usr/src/lib/libc/sys/shm_open.c -o shm_open.o -o shm_open.o So except for the expected difference in the -idirafter option that points to the clang internal headers, the main problem is that for some reason, clang11 does not get the -target and --sysroot options passed. -Dimitry
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:25 UTC