mips misbehaving, not respecting make.conf

Warner Losh imp at bsdimp.com
Mon Nov 17 10:52:43 UTC 2014


On Nov 16, 2014, at 7:58 PM, Sean Bruno <sbruno at ignoranthack.me> wrote:

> On Sun, 2014-11-16 at 17:15 -0700, Warner Losh wrote:
>> On Nov 16, 2014, at 5:10 PM, Sean Bruno <sbruno at ignoranthack.me> wrote:
>> 
>>> On Sun, 2014-11-16 at 16:55 -0700, Warner Losh wrote:
>>>> On Nov 16, 2014, at 4:15 PM, Sean Bruno <sbruno at ignoranthack.me> wrote:
>>>> 
>>>>> I have set make.conf to use AS=/nxb-bin/usr/bin/as and
>>>>> CC=/nxb-bin/usr/bin/cc
>>>>> 
>>>>> Yet, while monitoring, I still see the ports build process
>>>>> using /usr/bin/as and /usr/bin/ld and /usr/libexec/cc1
>>>>> 
>>>>> I don't see this on armv6 when building in a jail + qemu.
>>>>> 
>>>>> I'm trying to understand what is missing from our gcc toolchain here
>>>>> that is causing the builds to ignore my directives.
>>>> 
>>>> Let’s start with the first question: How are you seeing this?
>>>> 
>>>> Warner
>>>> 
>>> 
>>> 
>>> Setup a qemu-user enabled jail for mips based on head.  Start poudriere
>>> building audio/speex (nice, short depend chain).
>>> 
>>> While all this is running, I have a "ps auwxxx|grep qemu" running that
>>> catches some of the invocations of qemu that are happening.  When
>>> running a mips jail I see the tool chain being invoked, partially,
>>> from /usr/bin instead of /nxb-bin/usr/bin.
>>> 
>>> http://dpaste.com/12SD5TE
>>> 
>>> This is just a primitive profile attempt on my part.  This shows that
>>> qemu is being invoked *a lot* to get cc1 and as running via emulation.
>> 
>> If you are building ports, chances are those settings won’t do what you think they will. Do you have build logs I could look at?
>> 
>> Warner
> 
> 
> More verbose output, not super useful.  Except that the configure output
> shows that /nxb-bin/usr/bin/cc wants to use /usr/bin/ld ... I think this
> means we're not setting up the build flags for gcc correctly?
> 
> http://crack.ysv.freebsd.org/data/11-mips-test-default/2014-11-17_02h37m39s/logs/speex-1.2.r1_7,1.log

Perhaps. But when I wrote those targets, I assumed they’d replace the target-native binaries with host-native binaries, now that I think about it, rather than live in a side directory. You’d need to make CC be something more like CC=$PATH/usr/bin/cc -B$PATH/lib/exec or some such.

Is there a good reason to not replace the binaries? I noticed you keeping them separate, but wasn’t sure if that was just a “well, that’s what the target does” thing or a “I had to do it because X” thing.

Warner
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 842 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://lists.freebsd.org/pipermail/freebsd-arch/attachments/20141117/d2fab4d4/attachment.sig>


More information about the freebsd-arch mailing list