cvs commit: ports/biology/pymol Makefile distinfo pkg-plist
ports/biology/pymol/files patch-Rules.make
patch-setup+pymol+com+linux-rh7x
David O'Brien
obrien at FreeBSD.org
Wed Mar 17 09:19:13 PST 2004
On Wed, Mar 17, 2004 at 03:15:25AM -0800, Kris Kennaway wrote:
> On Wed, Mar 17, 2004 at 02:47:29AM -0800, Maho Nakata wrote:
>
> > | +.if !defined(PICFLAG)
> > | +.if ${MACHINE_ARCH} == "sparc64"
> > | +PICFLAG=-fPIC
> > | +.else
> > | +PICFLAG=-fpic
> > | +.endif
> > | +.endif
>
> As far as I understand, there's no need to treat these differently:
> -fPIC is appropriate on all architectures.
"-fpic" is a [minor?] optimization for machines that can handle it:
-fpic
Generate position-independent code (PIC) suitable for use in a shared
library, if supported for the target machine. Such code accesses all
constant addresses through a global offset table (GOT). The dynamic
loader resolves the GOT entries when the program starts (the dynamic
loader is not part of GCC; it is part of the operating system). If
the GOT size for the linked executable exceeds a machine-specific
maximum size, you get an error message from the linker indicating
that -fpic does not work; in that case, recompile with -fPIC instead.
(These maximums are 16k on the m88k, 8k on the SPARC, and 32k on the
m68k and RS/6000. The 386 has no such limit.)
-fPIC
If supported for the target machine, emit position-independent code,
suitable for dynamic linking and avoiding any limit on the size of
the global offset table. This option makes a difference on the m68k,
m88k, and the SPARC.
More information about the cvs-ports
mailing list