Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 15 Sep 2020 16:33:43 +0000
From:      Brooks Davis <brooks@freebsd.org>
To:        Dimitry Andric <dim@FreeBSD.org>
Cc:        Ronald Klop <ronald-lists@klop.ws>, FreeBSD Current <freebsd-current@freebsd.org>
Subject:   Re: compiling with ports llvm11 breaks on mman.h: struct shm_larg epage_conf
Message-ID:  <20200915163343.GA65749@spindle.one-eyed-alien.net>
In-Reply-To: <5A7AD7E7-70ED-4029-9CD7-EE366FAE3BE8@FreeBSD.org>
References:  <op.0qt8mkhjkndu52@sjakie> <E9CD402D-D7AF-4947-9BA1-086ECE2D74A0@FreeBSD.org> <op.0qunatz6kndu52@sjakie> <11FD9B3A-E977-4188-99BF-B05BFDCFE923@FreeBSD.org> <5A7AD7E7-70ED-4029-9CD7-EE366FAE3BE8@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help

[-- Attachment #1 --]
On Mon, Sep 14, 2020 at 06:46:52PM +0200, Dimitry Andric wrote:
> On 13 Sep 2020, at 20:56, Dimitry Andric <dim@FreeBSD.org> wrote:
> > 
> > On 12 Sep 2020, at 23:00, Ronald Klop <ronald-lists@klop.ws> wrote:
> >> 
> >> On Sat, 12 Sep 2020 18:28:03 +0200, Dimitry Andric <dim@freebsd.org> wrote:
> >>> On 12 Sep 2020, at 17:43, Ronald Klop <ronald-lists@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.
> ...
> > 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.
> 
> In the end it turns out that the problems is caused by setting CC (and CXX, etc) in make.conf. This has the unfortunate side-effect that any XCFLAGS are overridden during the world stages, such that the all-important --sysroot flags is not added.
> 
> In short, never set CC, CXX, CPP or LD in your make.conf or build environment, but use XCC, XCXX, XCPP and XLD instead. Better yet, install one of the llvm packages from the devel category, and set CROSS_TOOLCHAIN.
> 
> Keep an eye on https://wiki.freebsd.org/ExternalToolchain, which still has a little bit of outdated information, but is hopefully going to be updated soon.

I've made some modest updates to this page to reflect building with
modern LLVM ports.

-- Brooks

[-- Attachment #2 --]
-----BEGIN PGP SIGNATURE-----

iQEcBAEBAgAGBQJfYOzmAAoJEKzQXbSebgfAxlIH/3dIwD1ruFJ7gG13JeaVTpga
EVFcOP67Je3gbdIL5BST7lPQuoUKzJ8Sfip2rBZKNwkw/3IJZDQa31CAX8KWb8OK
LIviyr8prLXpiL3HOkIHNf33rfFrEwGqoyG0QEHP0YRwjsXwvkogdSzFkzU2eNe9
v2QJxvYvZ6iC+7Z84JvknWOSvBgq6KeWyq62GYWfl2WkbinmbUSIZ5LIX4QNJfLI
7RtTm4M16UVsd2bHvtfvqDqI5m8XWQOwrZhLGExFNrBDtM8AJsqcfrPSyp0yQzfa
VZOP496R3yFWhRbjR0JeLFbm/9FqvsBmu9FBA4XpmyZj1bsL1UcMsZpwQXS1Blo=
=+TBN
-----END PGP SIGNATURE-----

Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20200915163343.GA65749>