Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 10 Oct 1998 13:42:56 +0200 (SAT)
From:      Robert Nordier <rnordier@nordier.com>
To:        bde@zeta.org.au (Bruce Evans)
Cc:        bde@zeta.org.au, rnordier@nordier.com, committers@FreeBSD.ORG, peter@netplex.com.au, rnordier@FreeBSD.ORG, skynyrd@opus.cts.cwu.edu
Subject:   Re: cvs commit: src/sys/boot/i386 Makefile
Message-ID:  <199810101142.NAA13349@ceia.nordier.com>
In-Reply-To: <199810101130.VAA27035@godzilla.zeta.org.au> from Bruce Evans at "Oct 10, 98 09:30:30 pm"

next in thread | previous in thread | raw e-mail | index | archive | help
Bruce Evans wrote:
> >Any advice regarding the new /sys/boot/i386 stuff?
> 
> LKMs just use an -aout override in CFLAGS.  This has problems for
> libraries (see other mail), but LKMs don't use libraries (module some
> bugs with utilities used to build LKMs).  Your boot stuff (btx) doesn't
> use libraries either, so a simple override should work for it.
> 
> >None of these programs are FreeBSD hosted, so I'm not entirely sure
> >what OBJFORMAT really means in this context.  All the stuff prefers
> >to compile as ELF.  As a final step, btxld(8) outputs a "package" in
> 
> The legacy build stuff tends to build things twice, first as elf and
> then as aout.  You should probably force elf if you really want that.
> Building twice is just a pessimization.  I think it's a bug for
> boot stuff to be left unbuilt just because its preferred OBJFORMAT
> doesn't match the current one.

Agreed.  I introduced the .ifdef just to stop make worlds breaking,
rather than introduce a half-baked fix of my own into /usr/src/Makefile*.

> >Does OBJFORMAT=aout mean:
> >
> >    o  Compile these files using the aout toolchain (in which case
> >       make world should *not* force OBJFORMAT=aout when invoking
> >       /sys/boot/i386)
> >
> >    o  Produce an aout binary (in which case, it seems we should
> >       pass the OBJFORMAT setting to btxld only, and force it to
> >       elf elsewhere, presumably using Makefile.inc)
> 
> It means the former, but it's hard to produced an aout binary without
> using aut tools.

Yes.  The BTX stuff is unusual in that btxld actually does that without
toolchain support.

>                   `make world' essentially builds everything with
> the default OBJFORMAT, and then if the default is elf it builds some
> things with OBJFORMAT=aout.  There is no confict in the obj directories
> since they are in separate trees, but installation may replace the elf
> versions by the aout versions.  Clobbering at install time should be
> easy to detect using
> 
> 	INSTALL='install -C -D' make -ss installworld

That helps: thanks.

-- 
Robert Nordier



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199810101142.NAA13349>