Date: Fri, 27 May 2016 17:42:06 +0200 From: Dimitry Andric <dim@FreeBSD.org> To: Alan Somers <asomers@freebsd.org> Cc: "src-committers@freebsd.org" <src-committers@freebsd.org>, "svn-src-all@freebsd.org" <svn-src-all@freebsd.org>, "svn-src-head@freebsd.org" <svn-src-head@freebsd.org> Subject: Re: svn commit: r300770 - in head: . contrib/libc++/include contrib/libc++/include/experimental contrib/libc++/include/ext contrib/libc++/src contrib/libc++/src/include contrib/libc++/src/support lib/l... Message-ID: <CCBCA662-E090-488E-BFB4-55B5153CFAE1@FreeBSD.org> In-Reply-To: <CAOtMX2iaNfs6XY8D9QdY9=FY95mi6TKp=_QCe4eETW7YpYhYHA@mail.gmail.com> References: <201605261852.u4QIqn5w073953@repo.freebsd.org> <CAOtMX2jRZ0ZyW5Hw1ESp6EpADa_qvX5QFPHjkgUAFjdHB1OBKA@mail.gmail.com> <D36A3E43-3FFC-4B6A-8BC2-6B7A981FBDCB@FreeBSD.org> <CAOtMX2iaNfs6XY8D9QdY9=FY95mi6TKp=_QCe4eETW7YpYhYHA@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
--Apple-Mail=_33C48EBD-05D3-423B-B947-FDCF7F7C2C02 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii On 27 May 2016, at 17:32, Alan Somers <asomers@freebsd.org> wrote: >=20 > On Fri, May 27, 2016 at 9:28 AM, Dimitry Andric <dim@freebsd.org> = wrote: >> On 27 May 2016, at 16:49, Alan Somers <asomers@freebsd.org> wrote: >>>=20 >>> I think this change is breaking the build of C++ applications. = Below >>> is a snippet of my amd64 buildworld, with the changes in D6564. it >>> built fine a few days ago. ... >> It shouldn't, it passed a full make universe. Do you have any = special >> settings in either make.conf or src.conf? Or something other about = your >> build environment that is non-standard? ... >=20 > Ahh, but when you ran "make universe" there were not yet any C++ > things in lib/. My patch adds a C++ library, and it fails when > building the 32-bit version. Here's the actual command that failed. > I don't know why it failed, because > = /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/stdde= f.h > _does_ exist. >=20 > c++ -m32 -DCOMPAT_32BIT -march=3Di686 -mmmx -msse -msse2 > -L/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/lib32 > --sysroot=3D/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32 > -B/scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/lib32 > -isystem = /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include > -O2 -pipe -MD -MF.depend.consumer.o -MTconsumer.o > -fstack-protector-strong -Wsystem-headers -Werror -Wall > -Wno-format-y2k -W -Wno-unused-parameter -Wpointer-arith > -Wno-uninitialized -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 -Qunused-arguments -Wno-c++11-extensions > -c /home/asomers/freebsd/head/lib/libdevdctl/consumer.cc -o consumer.o > ... > --- all_subdir_lib/libdevdctl --- > In file included from = /home/asomers/freebsd/head/lib/libdevdctl/event.cc:55: > In file included from > = /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v= 1/iostream:38: > In file included from > = /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v= 1/ios:216: > In file included from > = /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v= 1/__locale:15: > In file included from > = /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v= 1/string:439: > In file included from > = /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v= 1/algorithm:624: > In file included from > = /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v= 1/initializer_list:47: > = /scratch/tmp/asomers/obj/home/asomers/freebsd/head/lib32/usr/include/c++/v= 1/cstddef:43:15: > fatal error: 'stddef.h' file not found > #include_next <stddef.h> > ^ I think what happens is the same what happened with some ports. For various reasons, the include path needs to be modified, and this causes the header lookup to fail, when using #include_next<>. Can you run the above command manually, but adding -v so it will print out the full include paths it searches, and the order? My guess is that either ${MAKEOBJDIRPREFIX}/usr/include/c++/v1 needs to be added to the C++ include path, or some other path in the list is missing, at least for C++ compilation. -Dimitry --Apple-Mail=_33C48EBD-05D3-423B-B947-FDCF7F7C2C02 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.30 iEYEARECAAYFAldIatgACgkQsF6jCi4glqO2kQCgymKcp436p6W6daNk2J5ksRjS XsIAnjRKZmM6e2DfsQMUvioH80wPdSbQ =SU6e -----END PGP SIGNATURE----- --Apple-Mail=_33C48EBD-05D3-423B-B947-FDCF7F7C2C02--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CCBCA662-E090-488E-BFB4-55B5153CFAE1>