configs: Always use -fPIC for shared libraries, never for static
authorDan Nicholson <dbn.lists@gmail.com>
Wed, 31 Oct 2007 17:33:20 +0000 (10:33 -0700)
committerDan Nicholson <dbn.lists@gmail.com>
Wed, 31 Oct 2007 21:19:20 +0000 (14:19 -0700)
Mesa currently disables -fPIC for DRI on x86, but most Linux distros are
re-enabling -fPIC for all DRI arches. Let's just do that here since
that's normally what's wanted for shared libraries. Some justification:

http://bugs.gentoo.org/show_bug.cgi?id=110840#c9

On the other hand, position-independent code is only necessary when
building shared libraries, so disable it for the static cases.

configs/linux-alpha-static
configs/linux-dri-x86
configs/linux-osmesa16-static
configs/linux-ppc-static
configs/linux-solo-x86
configs/linux-static
configs/linux-x86-64-static
configs/linux-x86-static

index 08ec2d177e1c10ab946044288530d19f321d23ab..53808d77ca4b866fad685635865261482c06f413 100644 (file)
@@ -11,6 +11,7 @@ CFLAGS = -O3 -mcpu=ev5 -ansi -mieee -pedantic -D_XOPEN_SOURCE -DUSE_XSHM
 CXXFLAGS = -O3 -mcpu=ev5 -ansi -mieee -pedantic -D_XOPEN_SOURCE
 GLUT_CFLAGS = -fexceptions
 MKLIB_OPTIONS = -static
+PIC_FLAGS =
 
 # Work around aliasing bugs - developers should comment this out
 CFLAGS += -fno-strict-aliasing
index b196004e58f7c0672dc7d02963814c0167d7c0e9..f9b164d27ab726b06be5b3e0f9468c58abcd6002 100644 (file)
@@ -5,9 +5,6 @@ include $(TOP)/configs/linux-dri
 
 CONFIG_NAME = linux-dri-x86
 
-# Unnecessary on x86, generally.
-PIC_FLAGS = 
-
 # Add -m32 to CFLAGS:
 ARCH_FLAGS = -m32
 
index 22f6851d3259bced7d7dfcc388b5515ea3ca83e4..0e0d1519f39766add2559a43e60e1e910ac986b1 100644 (file)
@@ -10,6 +10,7 @@ CXX = g++
 CFLAGS = -O3 -ansi -pedantic -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DUSE_XSHM -DPTHREADS -I/usr/X11R6/include -DCHAN_BITS=16 -DDEFAULT_SOFTWARE_DEPTH_BITS=31
 CXXFLAGS = -O3 -ansi -pedantic -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
 MKLIB_OPTIONS = -static
+PIC_FLAGS =
 
 # Work around aliasing bugs - developers should comment this out
 CFLAGS += -fno-strict-aliasing
index d0e168811f84af6060133faf5fb6519749642549..3f3dc5564370aa92e37a59cc1554f9ba21f822ad 100644 (file)
@@ -5,6 +5,7 @@ include $(TOP)/configs/linux-ppc
 CONFIG_NAME = linux-ppc-static
 
 MKLIB_OPTIONS = -static
+PIC_FLAGS =
 
 # Library names (actual file names)
 GL_LIB_NAME = libGL.a
index 13cab376587861618af5963aa22f66353d85a84e..e37b9fb428d87a4753be9ac10bf994cadd93ae4d 100644 (file)
@@ -5,9 +5,6 @@ include $(TOP)/configs/linux-solo
 
 CONFIG_NAME = linux-solo-x86
 
-# Unnecessary on x86, generally.
-PIC_FLAGS = 
-
 ASM_FLAGS = -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM
 ASM_SOURCES = $(X86_SOURCES)
 ASM_API = $(X86_API)
index 45aefceece370713f1921c66d93f0ba4c8012cdf..2a77d4c4b7b2314f353836db83d215c5a27844d8 100644 (file)
@@ -5,6 +5,7 @@ include $(TOP)/configs/linux
 CONFIG_NAME = linux-static
 
 MKLIB_OPTIONS = -static
+PIC_FLAGS =
 
 # Library names (actual file names)
 GL_LIB_NAME = libGL.a
index 4bb35ed859bc1479922aad3966fbece4263c0b1a..06e6fc3650316b2aa7f8efaa2ec7afdb7ca813fc 100644 (file)
@@ -5,6 +5,7 @@ include $(TOP)/configs/linux-x86-64
 CONFIG_NAME = linux-x86-64-static
 
 MKLIB_OPTIONS = -static
+PIC_FLAGS =
 
 # Library names (actual file names)
 GL_LIB_NAME = libGL.a
index 33c131eb2b5d0a8f059ac95a6c5275318854f538..2b6478b5868b1c2259a648d1562b2dfa0e818035 100644 (file)
@@ -5,6 +5,7 @@ include $(TOP)/configs/linux-x86
 CONFIG_NAME = linux-x86-static
 
 MKLIB_OPTIONS = -static
+PIC_FLAGS =
 
 # Library names (actual file names)
 GL_LIB_NAME = libGL.a