diff options
author | Mans Rullgard <mans@mansr.com> | 2012-10-15 04:05:03 +0100 |
---|---|---|
committer | Mans Rullgard <mans@mansr.com> | 2012-10-23 12:00:22 +0100 |
commit | 80521c1997a23e148edf89e11b939ab8646297ca (patch) | |
tree | bdaee0989d84e85268fb158868e8874589ca8e23 | |
parent | a805cefd8b81e551ab7dfb6a7ae8b5a1512e7893 (diff) | |
download | ffmpeg-80521c1997a23e148edf89e11b939ab8646297ca.tar.gz |
build: allow targets to specify extra objects to link with executables
This allows targets to include special objects when linking
executables without including them in (shared) libraries.
Signed-off-by: Mans Rullgard <mans@mansr.com>
-rw-r--r-- | Makefile | 8 | ||||
-rwxr-xr-x | configure | 1 | ||||
-rw-r--r-- | library.mak | 2 |
3 files changed, 6 insertions, 5 deletions
@@ -59,7 +59,7 @@ PROGS-$(CONFIG_AVPROBE) += avprobe PROGS-$(CONFIG_AVSERVER) += avserver PROGS := $(PROGS-yes:%=%$(EXESUF)) -OBJS = cmdutils.o +OBJS = cmdutils.o $(EXEOBJS) OBJS-avconv = avconv_opt.o avconv_filter.o TESTTOOLS = audiogen videogen rotozoom tiny_psnr base64 HOSTPROGS := $(TESTTOOLS:%=tests/%) doc/print_options @@ -90,8 +90,8 @@ FF_DEP_LIBS := $(DEP_LIBS) all: $(PROGS) -$(TOOLS): %$(EXESUF): %.o - $(LD) $(LDFLAGS) $(LD_O) $< $(ELIBS) +$(TOOLS): %$(EXESUF): %.o $(EXEOBJS) + $(LD) $(LDFLAGS) $(LD_O) $^ $(ELIBS) tools/cws2fws$(EXESUF): ELIBS = $(ZLIB) @@ -124,7 +124,7 @@ endef $(foreach D,$(FFLIBS),$(eval $(call DOSUBDIR,lib$(D)))) define DOPROG -OBJS-$(1) += $(1).o cmdutils.o +OBJS-$(1) += $(1).o cmdutils.o $(EXEOBJS) $(1)$(EXESUF): $$(OBJS-$(1)) $$(OBJS-$(1)): CFLAGS += $(CFLAGS-$(1)) $(1)$(EXESUF): LDFLAGS += $(LDFLAGS-$(1)) @@ -3737,6 +3737,7 @@ ZLIB=$($ldflags_filter -lz) LIB_INSTALL_EXTRA_CMD=$LIB_INSTALL_EXTRA_CMD EXTRALIBS=$extralibs COMPAT_OBJS=$compat_objs +EXEOBJS=$exeobjs INSTALL=install LIBTARGET=${LIBTARGET} SLIBNAME=${SLIBNAME} diff --git a/library.mak b/library.mak index b36593504c..cbfa0d48e1 100644 --- a/library.mak +++ b/library.mak @@ -36,7 +36,7 @@ define RULES $(EXAMPLES) $(TOOLS): THISLIB = $(FULLNAME:%=$(LD_LIB)) $(TESTPROGS): THISLIB = $(SUBDIR)$(LIBNAME) -$(EXAMPLES) $(TESTPROGS) $(TOOLS): %$(EXESUF): %.o +$(EXAMPLES) $(TESTPROGS) $(TOOLS): %$(EXESUF): %.o $(EXEOBJS) $$(LD) $(LDFLAGS) $$(LD_O) $$(filter %.o,$$^) $$(THISLIB) $(FFEXTRALIBS) $$(ELIBS) $(SUBDIR)$(SLIBNAME): $(SUBDIR)$(SLIBNAME_WITH_MAJOR) |