Subject: Re: Problems with CFLAGS inheritance
To: Phil Nelson <phil@steelhead.cs.wwu.edu>
From: Chris G. Demetriou <cgd@alpha.bostic.com>
List: port-pc532
Date: 10/23/1994 17:29:15
> >so i figured there must be some global static on/off switch
> >(which I've still not found)
>
> Yes, it is in /usr/share/mk/bsd.own.mk. On the pc532, NOPIC= is
> defined. If you don't build shared libs and/or don't install them
> in /usr/lib, you get a static system, which is what I have done.
> I hope this helps.
right, but NOPIC= doesn't handle the case where you already have
shared libs in /usr/lib, and are trying to 'escape' them.
For instance, you're running a shared-lib-using system, and want to
convert your system to run with statically linked binaries... you
can't exactly just remove the .so's.
LDSTATIC=-static (or setenv LDSTATIC -static) does the right thing,
in terms of linking system binaries statically.
in some cases (e.g. where you're trying to _completely_ escape a
shared-lib system), you will want to set NOPIC and LDSTATIC
appropriately. However, it's reasonable to e.g. link the 'standard'
systems binaries statically, but want shlibs for non-standard
binaries...
chris