Create shared libraries using versioned filenames and add -rpath-link
to LDFLAGS so linker finds them when using --as-needed (which is default in some installations). Using --as-needed is generally a good thing, so add that explicitly as well. Originally committed as revision 5362 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
8dcf48a8c3
commit
baa3a93781
@ -31,7 +31,10 @@ $(LIB): $(STATIC_OBJS)
|
|||||||
$(AR) rc $@ $^ $(EXTRAOBJS)
|
$(AR) rc $@ $^ $(EXTRAOBJS)
|
||||||
$(RANLIB) $@
|
$(RANLIB) $@
|
||||||
|
|
||||||
$(SLIBNAME): $(SHARED_OBJS)
|
$(SLIBNAME): $(SLIBNAME_WITH_MAJOR)
|
||||||
|
ln -sf $^ $@
|
||||||
|
|
||||||
|
$(SLIBNAME_WITH_MAJOR): $(SHARED_OBJS)
|
||||||
$(CC) $(SHFLAGS) $(LDFLAGS) -o $@ $^ $(EXTRALIBS) $(EXTRAOBJS)
|
$(CC) $(SHFLAGS) $(LDFLAGS) -o $@ $^ $(EXTRALIBS) $(EXTRAOBJS)
|
||||||
ifeq ($(CONFIG_WIN32),yes)
|
ifeq ($(CONFIG_WIN32),yes)
|
||||||
-lib /machine:i386 /def:$(@:.dll=.def)
|
-lib /machine:i386 /def:$(@:.dll=.def)
|
||||||
|
4
configure
vendored
4
configure
vendored
@ -228,7 +228,7 @@ vhook="default"
|
|||||||
dlfcn="no"
|
dlfcn="no"
|
||||||
dlopen="no"
|
dlopen="no"
|
||||||
mpegaudio_hp="yes"
|
mpegaudio_hp="yes"
|
||||||
SHFLAGS='-shared -Wl,-soname,$@.$(LIBMAJOR)'
|
SHFLAGS='-shared -Wl,-soname,$@'
|
||||||
netserver="no"
|
netserver="no"
|
||||||
need_inet_aton="no"
|
need_inet_aton="no"
|
||||||
protocols="yes"
|
protocols="yes"
|
||||||
@ -383,7 +383,7 @@ cygwin="yes"
|
|||||||
EXESUF=".exe"
|
EXESUF=".exe"
|
||||||
;;
|
;;
|
||||||
Linux)
|
Linux)
|
||||||
LDFLAGS="$LDFLAGS -rdynamic"
|
LDFLAGS="$LDFLAGS -rdynamic -Wl,--as-needed -Wl,-rpath-link,\$(BUILD_ROOT)/libavcodec -Wl,-rpath-link,\$(BUILD_ROOT)/libavformat -Wl,-rpath-link,\$(BUILD_ROOT)/libavutil"
|
||||||
;;
|
;;
|
||||||
IRIX*)
|
IRIX*)
|
||||||
ranlib="echo ignoring ranlib"
|
ranlib="echo ignoring ranlib"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user