diff options
author | Mans Rullgard <mans@mansr.com> | 2012-08-28 16:06:56 +0100 |
---|---|---|
committer | Mans Rullgard <mans@mansr.com> | 2012-08-29 14:16:54 +0100 |
commit | 8db73c61a7b24bc4f4d3d415bea2990d17d16354 (patch) | |
tree | 4b11648bd02bc803797504d4d055f1eb91cc8b7d | |
parent | bbabeb56fac38347b976e7b84639de53306e4bf2 (diff) | |
download | ffmpeg-8db73c61a7b24bc4f4d3d415bea2990d17d16354.tar.gz |
build: allow non-standard variations of linker -l/-L flags
This enables replacing the -l and -L flags used to specify the
just-built libraries when linking the tools and shared libs with
non-standard syntaxes. System library flags are already handled
by the filtering mechanism in configure.
Signed-off-by: Mans Rullgard <mans@mansr.com>
-rw-r--r-- | Makefile | 2 | ||||
-rw-r--r-- | common.mak | 3 | ||||
-rwxr-xr-x | configure | 9 | ||||
-rw-r--r-- | libavformat/Makefile | 2 | ||||
-rw-r--r-- | library.mak | 2 |
5 files changed, 13 insertions, 5 deletions
@@ -29,7 +29,7 @@ CCFLAGS = $(CPPFLAGS) $(CFLAGS) ASFLAGS := $(CPPFLAGS) $(ASFLAGS) YASMFLAGS += $(IFLAGS:%=%/) -I$(SRC_PATH)/libavutil/x86/ -Pconfig.asm HOSTCCFLAGS = $(IFLAGS) $(HOSTCFLAGS) -LDFLAGS := $(ALLFFLIBS:%=-Llib%) $(LDFLAGS) +LDFLAGS := $(ALLFFLIBS:%=$(LD_PATH)lib%) $(LDFLAGS) define COMPILE $(call $(1)DEP,$(1)) diff --git a/common.mak b/common.mak index 01adfeca41..d866ef1eef 100644 --- a/common.mak +++ b/common.mak @@ -11,7 +11,8 @@ OBJS += $(OBJS-yes) FFLIBS := $(FFLIBS-yes) $(FFLIBS) TESTPROGS += $(TESTPROGS-yes) -FFEXTRALIBS := $(FFLIBS:%=-l%$(BUILDSUF)) $(EXTRALIBS) +LDLIBS = $(FFLIBS:%=%$(BUILDSUF)) +FFEXTRALIBS := $(LDLIBS:%=$(LD_LIB)) $(EXTRALIBS) EXAMPLES := $(EXAMPLES:%=$(SUBDIR)%-example$(EXESUF)) OBJS := $(sort $(OBJS:%=$(SUBDIR)%)) @@ -1785,6 +1785,8 @@ CC_C='-c' CC_E='-E -o $@' CC_O='-o $@' LD_O='-o $@' +LD_LIB='-l%' +LD_PATH='-L' HOSTCC_C='-c' HOSTCC_O='-o $@' HOSTLD_O='-o $@' @@ -2132,7 +2134,8 @@ probe_cc(){ pfx=$1 _cc=$2 - unset _type _ident _cc_c _cc_e _cc_o _ld_o _flags _cflags _ldflags + unset _type _ident _cc_c _cc_e _cc_o _flags _cflags + unset _ld_o _ldflags _ld_lib _ld_path unset _depflags _DEPCMD _DEPFLAGS _flags_filter=echo @@ -2294,6 +2297,8 @@ ldflags_filter=$_flags_filter add_ldflags $_flags $_ldflags test "$cc_type" != "$ld_type" && add_ldflags $cc_ldflags LD_O=${_ld_o-$LD_O} +LD_LIB=${_ld_lib-$LD_LIB} +LD_PATH=${_ld_path-$LD_PATH} probe_cc hostld "$host_ld" host_ldflags_filter=$_flags_filter @@ -3523,6 +3528,8 @@ AS_O=$AS_O CC_C=$CC_C CC_O=$CC_O LD_O=$LD_O +LD_LIB=$LD_LIB +LD_PATH=$LD_PATH DLLTOOL=$dlltool LDFLAGS=$LDFLAGS LDFLAGS-avserver=$AVSERVERLDFLAGS diff --git a/libavformat/Makefile b/libavformat/Makefile index 82dc1c1470..61e1fa12da 100644 --- a/libavformat/Makefile +++ b/libavformat/Makefile @@ -379,4 +379,4 @@ TOOLS = aviocat \ pktdumper \ probetest \ -$(SUBDIR)output-example$(EXESUF): ELIBS = -lswscale +$(SUBDIR)output-example$(EXESUF): ELIBS = $(patsubst %,$(LD_LIB),swscale) diff --git a/library.mak b/library.mak index 165a78204f..d89050e84a 100644 --- a/library.mak +++ b/library.mak @@ -35,7 +35,7 @@ install-libs-$(CONFIG_SHARED): install-lib$(NAME)-shared define RULES $(EXAMPLES) $(TESTPROGS) $(TOOLS): %$(EXESUF): %.o - $$(LD) $(LDFLAGS) $$(LD_O) $$^ -l$(FULLNAME) $(FFEXTRALIBS) $$(ELIBS) + $$(LD) $(LDFLAGS) $$(LD_O) $$^ $(FULLNAME:%=$(LD_LIB)) $(FFEXTRALIBS) $$(ELIBS) $(SUBDIR)$(SLIBNAME): $(SUBDIR)$(SLIBNAME_WITH_MAJOR) $(Q)cd ./$(SUBDIR) && $(LN_S) $(SLIBNAME_WITH_MAJOR) $(SLIBNAME) |