diff --git a/Makefile b/Makefile index 10202d0588..f79712cddc 100644 --- a/Makefile +++ b/Makefile @@ -10,26 +10,28 @@ vpath %.v $(SRC_PATH) vpath %.texi $(SRC_PATH) vpath %/fate_config.sh.template $(SRC_PATH) -PROGS-$(CONFIG_FFMPEG) += ffmpeg -PROGS-$(CONFIG_FFPLAY) += ffplay -PROGS-$(CONFIG_FFPROBE) += ffprobe -PROGS-$(CONFIG_FFSERVER) += ffserver +AVPROGS-$(CONFIG_FFMPEG) += ffmpeg +AVPROGS-$(CONFIG_FFPLAY) += ffplay +AVPROGS-$(CONFIG_FFPROBE) += ffprobe +AVPROGS-$(CONFIG_FFSERVER) += ffserver -PROGS := $(PROGS-yes:%=%$(PROGSSUF)$(EXESUF)) -INSTPROGS = $(PROGS-yes:%=%$(PROGSSUF)$(EXESUF)) +AVPROGS := $(AVPROGS-yes:%=%$(PROGSSUF)$(EXESUF)) +INSTPROGS = $(AVPROGS-yes:%=%$(PROGSSUF)$(EXESUF)) +PROGS += $(AVPROGS-yes) +AVBASENAMES = ffmpeg ffplay ffprobe ffserver +ALLAVPROGS = $(AVBASENAMES:%=%$(PROGSSUF)$(EXESUF)) +ALLAVPROGS_G = $(AVBASENAMES:%=%$(PROGSSUF)_g$(EXESUF)) -OBJS-ffmpeg = ffmpeg_opt.o ffmpeg_filter.o +$(foreach prog,$(AVBASENAMES),$(eval OBJS-$(prog) += cmdutils.o)) + +OBJS-ffmpeg += ffmpeg_opt.o ffmpeg_filter.o OBJS-ffmpeg-$(HAVE_VDPAU_X11) += ffmpeg_vdpau.o TESTTOOLS = audiogen videogen rotozoom tiny_psnr tiny_ssim base64 HOSTPROGS := $(TESTTOOLS:%=tests/%) doc/print_options TOOLS = qt-faststart trasher TOOLS-$(CONFIG_ZLIB) += cws2fws -BASENAMES = ffmpeg ffplay ffprobe ffserver -ALLPROGS = $(BASENAMES:%=%$(PROGSSUF)$(EXESUF)) -ALLPROGS_G = $(BASENAMES:%=%$(PROGSSUF)_g$(EXESUF)) - FFLIBS-$(CONFIG_AVDEVICE) += avdevice FFLIBS-$(CONFIG_AVFILTER) += avfilter FFLIBS-$(CONFIG_AVFORMAT) += avformat @@ -51,9 +53,9 @@ include $(SRC_PATH)/common.mak FF_EXTRALIBS := $(FFEXTRALIBS) FF_DEP_LIBS := $(DEP_LIBS) -all: $(PROGS) +all: $(AVPROGS) -$(PROGS): %$(EXESUF): %_g$(EXESUF) +$(AVPROGS): %$(EXESUF): %_g$(EXESUF) $(CP) $< $@ $(STRIP) $@ @@ -92,7 +94,7 @@ endef $(foreach D,$(FFLIBS),$(eval $(call DOSUBDIR,lib$(D)))) define DOPROG -OBJS-$(1) += $(1).o cmdutils.o $(EXEOBJS) $(OBJS-$(1)-yes) +OBJS-$(1) += $(1).o $(EXEOBJS) $(OBJS-$(1)-yes) $(1)$(PROGSSUF)_g$(EXESUF): $$(OBJS-$(1)) $$(OBJS-$(1)): CFLAGS += $(CFLAGS-$(1)) $(1)$(PROGSSUF)_g$(EXESUF): LDFLAGS += $(LDFLAGS-$(1)) @@ -100,7 +102,7 @@ $(1)$(PROGSSUF)_g$(EXESUF): FF_EXTRALIBS += $(LIBS-$(1)) -include $$(OBJS-$(1):.o=.d) endef -$(foreach P,$(PROGS-yes),$(eval $(call DOPROG,$(P)))) +$(foreach P,$(PROGS),$(eval $(call DOPROG,$(P)))) %$(PROGSSUF)_g$(EXESUF): %.o $(FF_DEP_LIBS) $(LD) $(LDFLAGS) $(LD_O) $(OBJS-$*) $(FF_EXTRALIBS) @@ -122,7 +124,7 @@ version.h .version: # force version.sh to run whenever version might have changed -include .version -ifdef PROGS +ifdef AVPROGS install: install-progs install-data endif @@ -133,7 +135,7 @@ install-libs: install-libs-yes install-progs-yes: install-progs-$(CONFIG_SHARED): install-libs -install-progs: install-progs-yes $(PROGS) +install-progs: install-progs-yes $(AVPROGS) $(Q)mkdir -p "$(BINDIR)" $(INSTALL) -c -m 755 $(INSTPROGS) "$(BINDIR)" @@ -145,13 +147,13 @@ install-data: $(DATA_FILES) $(EXAMPLES_FILES) uninstall: uninstall-libs uninstall-headers uninstall-progs uninstall-data uninstall-progs: - $(RM) $(addprefix "$(BINDIR)/", $(ALLPROGS)) + $(RM) $(addprefix "$(BINDIR)/", $(ALLAVPROGS)) uninstall-data: $(RM) -r "$(DATADIR)" clean:: - $(RM) $(ALLPROGS) $(ALLPROGS_G) + $(RM) $(ALLAVPROGS) $(ALLAVPROGS_G) $(RM) $(CLEANSUFFIXES) $(RM) $(CLEANSUFFIXES:%=tools/%) $(RM) -r coverage-html diff --git a/doc/Makefile b/doc/Makefile index 50a68b4e05..17f34cfaf3 100644 --- a/doc/Makefile +++ b/doc/Makefile @@ -14,11 +14,11 @@ COMPONENTS-$(CONFIG_AVFORMAT) += ffmpeg-formats ffmpeg-protocols COMPONENTS-$(CONFIG_AVDEVICE) += ffmpeg-devices COMPONENTS-$(CONFIG_AVFILTER) += ffmpeg-filters -MANPAGES1 = $(PROGS-yes:%=doc/%.1) $(PROGS-yes:%=doc/%-all.1) $(COMPONENTS-yes:%=doc/%.1) +MANPAGES1 = $(AVPROGS-yes:%=doc/%.1) $(AVPROGS-yes:%=doc/%-all.1) $(COMPONENTS-yes:%=doc/%.1) MANPAGES3 = $(LIBRARIES-yes:%=doc/%.3) MANPAGES = $(MANPAGES1) $(MANPAGES3) -PODPAGES = $(PROGS-yes:%=doc/%.pod) $(PROGS-yes:%=doc/%-all.pod) $(COMPONENTS-yes:%=doc/%.pod) $(LIBRARIES-yes:%=doc/%.pod) -HTMLPAGES = $(PROGS-yes:%=doc/%.html) $(PROGS-yes:%=doc/%-all.html) $(COMPONENTS-yes:%=doc/%.html) $(LIBRARIES-yes:%=doc/%.html) \ +PODPAGES = $(AVPROGS-yes:%=doc/%.pod) $(AVPROGS-yes:%=doc/%-all.pod) $(COMPONENTS-yes:%=doc/%.pod) $(LIBRARIES-yes:%=doc/%.pod) +HTMLPAGES = $(AVPROGS-yes:%=doc/%.html) $(AVPROGS-yes:%=doc/%-all.html) $(COMPONENTS-yes:%=doc/%.html) $(LIBRARIES-yes:%=doc/%.html) \ doc/developer.html \ doc/faq.html \ doc/fate.html \ @@ -120,7 +120,7 @@ uninstall-html: $(RM) -r "$(DOCDIR)" uninstall-man: - $(RM) $(addprefix "$(MANDIR)/man1/",$(PROGS-yes:%=%.1) $(PROGS-yes:%=%-all.1) $(COMPONENTS-yes:%=%.1)) + $(RM) $(addprefix "$(MANDIR)/man1/",$(AVPROGS-yes:%=%.1) $(AVPROGS-yes:%=%-all.1) $(COMPONENTS-yes:%=%.1)) $(RM) $(addprefix "$(MANDIR)/man3/",$(LIBRARIES-yes:%=%.3)) clean:: docclean