summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xconfigure14
-rw-r--r--libavcodec/Makefile4
-rw-r--r--libavcodec/libpostproc/Makefile2
-rw-r--r--libavformat/Makefile2
4 files changed, 17 insertions, 5 deletions
diff --git a/configure b/configure
index 3ae70513a0..9e5329b92a 100755
--- a/configure
+++ b/configure
@@ -197,6 +197,7 @@ netserver="no"
need_inet_aton="no"
ffserver="yes"
ffplay="yes"
+LIBOBJFLAGS=""
LDFLAGS=-Wl,--warn-common
FFSLDFLAGS=-Wl,-E
LDCONFIG="ldconfig"
@@ -276,7 +277,7 @@ bktr="yes"
audio_oss="yes"
dv1394="no"
make="gmake"
-CFLAGS="$CFLAGS \$(PIC)"
+LIBOBJFLAGS="\$(PIC)"
LDFLAGS="$LDFLAGS -export-dynamic -pthread"
LDCONFIG="ldconfig -m \$(libdir)"
extralibs="$extralibs -lossaudio"
@@ -1103,6 +1104,16 @@ if test "$optimize" = "yes"; then
fi
fi
+# PIC flags for shared library objects where they are needed
+if test "$lshared" = "yes" ; then
+ # LIBOBJFLAGS may have already been set in the OS configuration
+ if test -z "$LIBOBJFLAGS" ; then
+ if test "$cpu" = "x86_64" ; then
+ LIBOBJFLAGS="\$(PIC)"
+ fi
+ fi
+fi
+
if test x"$bindir" = x""; then
bindir="${prefix}/bin"
fi
@@ -1219,6 +1230,7 @@ echo "LDFLAGS=$LDFLAGS" >> config.mak
echo "LDCONFIG=$LDCONFIG" >> config.mak
echo "FFSLDFLAGS=$FFSLDFLAGS" >> config.mak
echo "SHFLAGS=$SHFLAGS" >> config.mak
+echo "LIBOBJFLAGS=$LIBOBJFLAGS" >> config.mak
echo "BUILDSUF=$BUILDSUF" >> config.mak
echo "LIBPREF=$LIBPREF" >> config.mak
echo "LIBSUF=\${BUILDSUF}$LIBSUF" >> config.mak
diff --git a/libavcodec/Makefile b/libavcodec/Makefile
index 9e38eefdc9..d7c7227d1a 100644
--- a/libavcodec/Makefile
+++ b/libavcodec/Makefile
@@ -409,10 +409,10 @@ libpostproc/libpostproc.a:
$(MAKE) -C libpostproc
%.o: %.c
- $(CC) $(CFLAGS) -c -o $@ $<
+ $(CC) $(CFLAGS) $(LIBOBJFLAGS) -c -o $@ $<
%.o: %.S
- $(CC) $(CFLAGS) -c -o $@ $<
+ $(CC) $(CFLAGS) $(LIBOBJFLAGS) -c -o $@ $<
depend: $(SRCS)
$(CC) -MM $(CFLAGS) $^ 1>.depend
diff --git a/libavcodec/libpostproc/Makefile b/libavcodec/libpostproc/Makefile
index 0f4147896c..a12bc721e1 100644
--- a/libavcodec/libpostproc/Makefile
+++ b/libavcodec/libpostproc/Makefile
@@ -21,7 +21,7 @@ CFLAGS = $(OPTFLAGS) $(MLIB_INC) -I. -I.. $(EXTRA_INC)
# .PHONY: all clean
.c.o:
- $(CC) -c $(CFLAGS) -I$(SRC_PATH)/libavcodec -I../.. -o $@ $<
+ $(CC) -c $(CFLAGS) $(LIBOBJFLAGS) -I$(SRC_PATH)/libavcodec -I../.. -o $@ $<
all: $(SWSLIB) $(PPLIB) $(SPPLIB)
diff --git a/libavformat/Makefile b/libavformat/Makefile
index c9a8af5ef2..9f2a8f33ad 100644
--- a/libavformat/Makefile
+++ b/libavformat/Makefile
@@ -134,7 +134,7 @@ install-headers:
install -m 644 ../libavformat.pc $(libdir)/pkgconfig
%.o: %.c
- $(CC) $(CFLAGS) -c -o $@ $<
+ $(CC) $(CFLAGS) $(LIBOBJFLAGS) -c -o $@ $<
# BeOS: remove -Wall to get rid of all the "multibyte constant" warnings
%.o: %.cpp