Subject: Re: MACHINE_GNU_PLATFORM now forced to --netbsdelf in bsd.own.mk?
To: Frederick Bruckman <fredb@immanent.net>
From: Todd Vierling <tv@wasabisystems.com>
List: tech-pkg
Date: 09/20/2001 23:04:23
On Thu, 20 Sep 2001, Frederick Bruckman wrote:

: It's appears that MACHINE_GNU_PLATFORM on current systems is now
: forced to ${MACHINE_GNU_ARCH}--netbsdelf in bsd.own.mk on certain
: archictectures (PR pkg/13957):
:
: # In order to identify NetBSD to GNU packages, we sometimes need
: # an "elf" tag for historically a.out platforms.
: .if ${OBJECT_FMT} == "ELF" && \
:     (${MACHINE_ARCH} == "arm" || \
:      ${MACHINE_ARCH} == "i386" || \
:      ${MACHINE_ARCH} == "m68k" || \
:      ${MACHINE_ARCH} == "sparc" || \
:      ${MACHINE_ARCH} == "vax")
: MACHINE_GNU_PLATFORM=${MACHINE_GNU_ARCH}--netbsdelf
: .else
: MACHINE_GNU_PLATFORM=${MACHINE_GNU_ARCH}--netbsd
: .endif
:
: What's the purpose of that?

Maybe you should take a look at this line again:

: .if ${OBJECT_FMT} == "ELF" && \

This means that -netbsdelf is used on platforms that were historically a.out
and are now ELF.

The reason for this is that I will be sending a revamped config.guess and
config.sub back to the FSF folks, which will continue to assume a.out for
-netbsd as opposed to ELF for -netbsdelf.  There are many situations where
you need to know the difference, particularly in the toolchain itself, as
well as in the cases of binary compatibility issues, and this defines two
distinct GNU platform names for architectures that have multiple object file
formats.

I see arena's mishandling of the GNU data in PR 13957, and in that
particular case, it might be necessary to set an explicit --host flag in
CONFIGURE_ARGS.  But what the program is doing here is just plain wrong ...
if it wants to use the value of --host, it should be using the *entire*
value, not just one component.

-- 
-- Todd Vierling <tv@wasabisystems.com>  *  Wasabi NetBSD:  Run with it.
-- NetBSD 1.5.2 available on CD-ROM soon!  --  http://www.wasabisystems.com/