On Feb 22, 2008, at 2:24 AM, Ruslan Ermilov wrote: >>> - Handle upgrades nicely: use GNU ar(1) during the build on older >>> systems, and use BSD ar(1) on newer systems. >> >> If we need GNU ar for the upgrade path - then lets just install it >> (and >> its manage) as gnu-ar and let that be that. >> > I don't get you, GNU ar(1) is always installed. Only the name is > changes. But let me explain more about the upgrades. > > Currently, we always build binutils as part of cross-tools, including > GNU ar(1) and ranlib(1). These binaries are then used during the > build. > The BSD ar(1) doesn't need to be a cross-tool -- it doesn't depend on > TARGET_ARCH/TARGET and is platform-neutral. I'm very pleased to read this. Thank you Kai, Joseph and Tim of course! > Unfortunalely, since we provide the WITH_GNUAR option, we don't know > if > /usr/bin/ar and /usr/bin/ranlib are GNU or BSD versions, so we should > always bootstrap BSD ar(1). Can we determine this at runtime by running ar -v. If the output is more than 20 lines, it's GNU ar :-) Seriously: we could run ar --version (provided we add the support for that to BSD ar) and check the first word. It's either GNU or BSD (provided the output of BSD ar starts with BSD). This should eliminate any and all kind of guessing and should help in getting FreeBSD buildable on non-FreeBSD systems as well. Just a thought... -- Marcel Moolenaar xcllnt_at_mac.comReceived on Fri Feb 22 2008 - 16:52:36 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:27 UTC