Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 8 Jul 2014 09:10:13 -0600
From:      Warner Losh <imp@bsdimp.com>
To:        sbruno@freebsd.org
Cc:        Tim Kientzle <tim@kientzle.com>, freebsd-arch@freebsd.org
Subject:   Re: Total confusion over toolchain/xdev behavior
Message-ID:  <13698752-8370-404F-8919-969804CFE0CC@bsdimp.com>
In-Reply-To: <1404822903.1662.0.camel@bruno>
References:  <1404688077.1059.115.camel@bruno> <2788FB1E-9498-40C2-94DE-F4C73A5DDD30@kientzle.com> <9356CE3E-1249-4318-8946-644FDD817CDF@bsdimp.com> <1404822903.1662.0.camel@bruno>

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

[-- Attachment #1 --]

On Jul 8, 2014, at 6:35 AM, Sean Bruno <sbruno@ignoranthack.me> wrote:

> On Mon, 2014-07-07 at 21:19 -0600, Warner Losh wrote:
>> On Jul 7, 2014, at 8:59 PM, Tim Kientzle <tim@kientzle.com> wrote:
>> 
>>> 
>>> On Jul 6, 2014, at 4:07 PM, Sean Bruno <sbruno@ignoranthack.me> wrote:
>>> 
>>>> Objective:  install an xcompile toolchain into a jail for use by
>>>> poudriere during arm/mips/sparc/power ports pkgs builds.  The build
>>>> should be possible from a non-root user.
>> 
>> I just re-read this…
>> 
>> So why doesn’t the following work:
>> 
>> make buildworld TARGET=foo
>> make installworld TARGET=foo DESTDIR=root-of-jail WITH_INSTALL_AS_USER=t
>> 
>> to generate a jail that you can use? Or are you trying to get a native cross compiler
>> into the jail? neither toolchain nor xdev will fit your needs, I fear...
>> 
>> Or, in gcc terms, you’d like to build host == build == arch-of-the-silicon-of-the-mahine, target == mips or something?
>> 
>> Warner
>> 
> 
> I am trying to speed up xcompile build of ports.  Right now, qemu
> bsd-user is handling the builds via a native gcc/clang which is super
> slow as everything is emulated.

Yea, we got nothing that’s for that use case. toolchain is for the weird world that we build /usr/src in. xdev is for building mips on x86 when the rest of the tree is x86. You’re wanting native binaries when the rest of the world is mips but that behave like the world is mips so that when invoked in the typical ports way, it just works. I don’t think xdev will do that because the paths are messed up and you’ll need two copies of libraries, includes, etc. It expects to be installed in /usr/$ARCH-freebsd/<mumble> and if it isn’t, it gets cranky.

Having said that, it sounds like a third way to build these may be needed. One that expects to be installed in /usr/bin, is amd64 executable, but produces mips binaries from /usr/lib, /lib, etc.

Warner

[-- Attachment #2 --]
-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - https://gpgtools.org

iQIcBAEBCgAGBQJTvAnVAAoJEGwc0Sh9sBEAtiMP/RE5QZZBzBRAS0XyUWad2GAR
x9pniXdHb2IyKY0lgfCGjYODIV7LrGBowJWKmeSoxR2ZhYjVdlWT/z5o8gX4zaBd
UO8TvbfLXyXXCQyaHaSkgA5u+s2ZF68vuqfpeD2Yy9SDpIH6moZgPsfEK47j3Jau
/m0zzR8sI6/M1WcPumH2XiHs5N0EQT3uWcU/V1vZjEv10xjziFuTmmlUELZ9X5qT
l7bwVmre6kQaa5iB5Bc73uO6MekHOw0BUM+90TLsvbSpYXyku9i80h4mT7/tqWNt
ROpKQrjoEy8sTdA90PN2pPdZLM7qa/nHHfbjTHJD71xgK/7tzh8fxhTLdh7jA9W3
+ePQojpQJdHSFSiIIGdNv7BdJtuzNadWK+iB3WjlOuhrwfxo7sgzrnAvxi7V4au4
6uOvWJQFN0c0vaPvrI2ahSPRJucVuh8afKaUWfkOHWrg+o0C8qhCClYs40oSi+rf
AC7opqGTR3a9+MS000yL53u385MrOKxxB1kHHPjzpM4NcxXkcso9alhM9Q7+yhl/
zAZhI/TbJ0nI0J+m4IH1/0RzEuz4mmaa1ga/3SDG0vcTS+5Lkhu6W2w7MJbUWA5D
7E+766WN45Fx+JjTcafNvfiJ6ZJh0YF8/MZiRw3AlKCftrhSimbJLp//NXsHLG8P
hSBU5zn/XxQIsSo0hvMW
=SWYX
-----END PGP SIGNATURE-----

Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?13698752-8370-404F-8919-969804CFE0CC>