On 26/10/2011 16:39, Dimitry Andric wrote: > On 2011-10-26 15:32, Dominic Fandrey wrote: >> I haven't tried to dig into this. Only "unusual" properties of the system >> are my non-default MAKEOBJDIRPREFIX and the use of ccache. >> >> # uname -a >> FreeBSD AryaStark.norad 9.0-RC1 FreeBSD 9.0-RC1 #0: Wed Oct 26 13:46:13 CEST 2011 root_at_AryaStark.norad:/usr/obj/GENERIC/amd64/usr/src/sys/GENERIC amd64 >> >> # make -VCC -VCPUTYPE -VCFLAGS >> /usr/local/bin/ccache clang >> athlon64-sse3 >> -O2 -pipe -march=athlon64-sse3 > > How are you setting CC and/or CFLAGS, precisely? Depending on how you > do it, the settings might not be propagated correctly to the build32 > stage. Like that: .if ${.CURDIR:M/usr/src} || ${.CURDIR:M/usr/src/*} CC=clang CXX=clang++ CPP=clang-cpp NO_WERROR= WERROR= .endif I had hoped that the .ifdef construction from the wiki was dated. I suppose it's emulating setting CC in the environment instead of in the make/src.conf. > Also, if you force CFLAGS to have -march=athlon64-sse3, I'm not > sure if the build32 stage can even work correctly. Just specify > CPUTYPE, that should be enough. That's what I do. I don't touch CFLAGS. > In any case, you can try out the attached patch, which should take care > of passing CC to the build32 stage correctly. I tried CC?=, but that doesn't work, because apparently make always initializes CC before parsing makefiles. I figure that means the !defined(CC) clause in the .ifdef construction is never true and thus obsolete. I didn't try it, though. Your patch works for me. > I would really like to have this in head, and even stable/9. It makes > it possible to just set CC in make.conf, without .ifdef trickery. Works > nicely for clang, too. :) Seconded! -- A: Because it fouls the order in which people normally read text. Q: Why is top-posting such a bad thing? A: Top-posting. Q: What is the most annoying thing on usenet and in e-mail?Received on Fri Oct 28 2011 - 12:41:53 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:19 UTC