Subject: Re: NetBSD 1.3, pkgsrc and OBJECT_FMT
To: Alistair Crooks <agc@pkgsrc.org>
From: David Brownlee <abs@netbsd.org>
List: tech-pkg
Date: 04/30/2001 17:22:59
I've had a proper look at it, and the problem comes with packages
that have constructs of the form:
.if ${OBJECT_FMT} == "ELF"
Either we should:
a) Fix all such Makefiles (around 34)
b) Catch OBJECT_FMT not being set and fix it in bsd.pkg.mk.
How about using OBJECT_FMT!= make show-shlib-type in a
.if !defined(OBJECT_FMT)?
David/absolute -- www.netbsd.org: No hype required --
On Fri, 27 Apr 2001, Alistair Crooks wrote:
> On Thu, Apr 26, 2001 at 05:46:09PM +0100, David Brownlee wrote:
> > pkgsrc currently assumes the base system sets OBJECT_FMT.
> > This is not the case in 1.3 - and in addition to producing
> > various warning messages it breaks the install in some cases
> > - I have a 1.3 machine on which I cannot install
> > imap-uw-2000.0.3nb1 unless I have installed libtool with
> > OBJECT_FMT manually set.
>
> The only places where I see OBJECT_FMT used in bsd.pkg.mk, there are
> checks around it - if OBJECT_FMT is undefined, then you will just not
> have your shared libs checked in the check-shlibs target, and the
> dependency checks will either exit or warn depending on the value of
> FATAL_OBJECT_FMT_SKEW.
>
> Please note that I'm not speaking for libtool here.
>
> > I think we should test for OBJECT_FMT and set it for older NetBSD
> > systems, but what is the best way - a switch table similar to that
> > in bsd.own.mk, or some nasty 'file' command on the pkg_install
> > binary?
>
> If you're really interested in what type of shared lib will be made on
> the machine, then you can use:
>
> make show-shlib-type
>
> Regards,
> Alistair
>