Merge commit 'c95169f0ec68bdeeabc5fde8aa4076f406242524'
authorJames Almer <jamrial@gmail.com>
Sun, 1 Oct 2017 21:21:02 +0000 (18:21 -0300)
committerJames Almer <jamrial@gmail.com>
Sun, 1 Oct 2017 21:26:36 +0000 (18:26 -0300)
* commit 'c95169f0ec68bdeeabc5fde8aa4076f406242524':
  build: Move cli tool sources to a separate subdirectory

Merged-by: James Almer <jamrial@gmail.com>
19 files changed:
Makefile
doc/examples/Makefile
fftools/Makefile [new file with mode: 0644]
fftools/cmdutils.c [moved from cmdutils.c with 100% similarity]
fftools/cmdutils.h [moved from cmdutils.h with 99% similarity]
fftools/cmdutils_opencl.c [moved from cmdutils_opencl.c with 100% similarity]
fftools/ffmpeg.c [moved from ffmpeg.c with 100% similarity]
fftools/ffmpeg.h [moved from ffmpeg.h with 99% similarity]
fftools/ffmpeg_cuvid.c [moved from ffmpeg_cuvid.c with 100% similarity]
fftools/ffmpeg_filter.c [moved from ffmpeg_filter.c with 100% similarity]
fftools/ffmpeg_hw.c [moved from ffmpeg_hw.c with 100% similarity]
fftools/ffmpeg_opt.c [moved from ffmpeg_opt.c with 100% similarity]
fftools/ffmpeg_qsv.c [moved from ffmpeg_qsv.c with 100% similarity]
fftools/ffmpeg_videotoolbox.c [moved from ffmpeg_videotoolbox.c with 100% similarity]
fftools/ffplay.c [moved from ffplay.c with 100% similarity]
fftools/ffprobe.c [moved from ffprobe.c with 100% similarity]
fftools/ffserver.c [moved from ffserver.c with 100% similarity]
fftools/ffserver_config.c [moved from ffserver_config.c with 100% similarity]
fftools/ffserver_config.h [moved from ffserver_config.h with 98% similarity]

index 6de5a3d..3007da5 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -15,31 +15,6 @@ vpath %.cu   $(SRC_PATH)
 vpath %.ptx  $(SRC_PATH)
 vpath %/fate_config.sh.template $(SRC_PATH)
 
-AVPROGS-$(CONFIG_FFMPEG)   += ffmpeg
-AVPROGS-$(CONFIG_FFPLAY)   += ffplay
-AVPROGS-$(CONFIG_FFPROBE)  += ffprobe
-AVPROGS-$(CONFIG_FFSERVER) += ffserver
-
-AVPROGS    := $(AVPROGS-yes:%=%$(PROGSSUF)$(EXESUF))
-INSTPROGS   = $(AVPROGS-yes:%=%$(PROGSSUF)$(EXESUF))
-PROGS      += $(AVPROGS)
-
-AVBASENAMES  = ffmpeg ffplay ffprobe ffserver
-ALLAVPROGS   = $(AVBASENAMES:%=%$(PROGSSUF)$(EXESUF))
-ALLAVPROGS_G = $(AVBASENAMES:%=%$(PROGSSUF)_g$(EXESUF))
-
-$(foreach prog,$(AVBASENAMES),$(eval OBJS-$(prog) += cmdutils.o))
-$(foreach prog,$(AVBASENAMES),$(eval OBJS-$(prog)-$(CONFIG_OPENCL) += cmdutils_opencl.o))
-
-OBJS-ffmpeg                   += ffmpeg_opt.o ffmpeg_filter.o ffmpeg_hw.o
-OBJS-ffmpeg-$(CONFIG_VIDEOTOOLBOX) += ffmpeg_videotoolbox.o
-OBJS-ffmpeg-$(CONFIG_LIBMFX)  += ffmpeg_qsv.o
-ifndef CONFIG_VIDEOTOOLBOX
-OBJS-ffmpeg-$(CONFIG_VDA)     += ffmpeg_videotoolbox.o
-endif
-OBJS-ffmpeg-$(CONFIG_CUVID)   += ffmpeg_cuvid.o
-OBJS-ffserver                 += ffserver_config.o
-
 TESTTOOLS   = audiogen videogen rotozoom tiny_psnr tiny_ssim base64 audiomatch
 HOSTPROGS  := $(TESTTOOLS:%=tests/%) doc/print_options
 
@@ -69,8 +44,6 @@ FF_EXTRALIBS := $(FFEXTRALIBS)
 FF_DEP_LIBS  := $(DEP_LIBS)
 FF_STATIC_DEP_LIBS := $(STATIC_DEP_LIBS)
 
-all: $(AVPROGS)
-
 $(TOOLS): %$(EXESUF): %.o
        $(LD) $(LDFLAGS) $(LDEXEFLAGS) $(LD_O) $^ $(ELIBS)
 
@@ -117,27 +90,17 @@ endef
 
 $(foreach D,$(FFLIBS),$(eval $(call DOSUBDIR,lib$(D))))
 
+include $(SRC_PATH)/fftools/Makefile
 include $(SRC_PATH)/doc/Makefile
 include $(SRC_PATH)/doc/examples/Makefile
 
-define DOPROG
-OBJS-$(1) += $(1).o $(OBJS-$(1)-yes)
-$(1)$(PROGSSUF)_g$(EXESUF): $$(OBJS-$(1))
-$$(OBJS-$(1)): CFLAGS  += $(CFLAGS-$(1))
-$(1)$(PROGSSUF)_g$(EXESUF): LDFLAGS += $(LDFLAGS-$(1))
-$(1)$(PROGSSUF)_g$(EXESUF): FF_EXTRALIBS += $(EXTRALIBS-$(1))
--include $$(OBJS-$(1):.o=.d)
-endef
-
-$(foreach P,$(AVPROGS-yes),$(eval $(call DOPROG,$(P))))
-
-ffprobe.o cmdutils.o libavcodec/utils.o libavformat/utils.o libavdevice/avdevice.o libavfilter/avfilter.o libavutil/utils.o libpostproc/postprocess.o libswresample/swresample.o libswscale/utils.o : libavutil/ffversion.h
+libavcodec/utils.o libavformat/utils.o libavdevice/avdevice.o libavfilter/avfilter.o libavutil/utils.o libpostproc/postprocess.o libswresample/swresample.o libswscale/utils.o : libavutil/ffversion.h
 
 $(PROGS): %$(PROGSSUF)$(EXESUF): %$(PROGSSUF)_g$(EXESUF)
        $(CP) $< $@
        $(STRIP) $@
 
-%$(PROGSSUF)_g$(EXESUF): %.o $(FF_DEP_LIBS)
+%$(PROGSSUF)_g$(EXESUF): $(FF_DEP_LIBS)
        $(LD) $(LDFLAGS) $(LDEXEFLAGS) $(LD_O) $(OBJS-$*) $(FF_EXTRALIBS)
 
 VERSION_SH  = $(SRC_PATH)/ffbuild/version.sh
@@ -153,37 +116,22 @@ libavutil/ffversion.h .version:
 # force version.sh to run whenever version might have changed
 -include .version
 
-ifdef AVPROGS
-install: install-progs install-data
-endif
-
 install: install-libs install-headers
 
 install-libs: install-libs-yes
 
-install-progs-yes:
-install-progs-$(CONFIG_SHARED): install-libs
-
-install-progs: install-progs-yes $(AVPROGS)
-       $(Q)mkdir -p "$(BINDIR)"
-       $(INSTALL) -c -m 755 $(INSTPROGS) "$(BINDIR)"
-
 install-data: $(DATA_FILES) $(EXAMPLES_FILES) $(EXAMPLE_MAKEFILE)
        $(Q)mkdir -p "$(DATADIR)/examples"
        $(INSTALL) -m 644 $(DATA_FILES) "$(DATADIR)"
        $(INSTALL) -m 644 $(EXAMPLES_FILES) "$(DATADIR)/examples"
        $(INSTALL) -m 644 $(EXAMPLE_MAKEFILE:%=%.example) "$(DATADIR)/examples/Makefile"
 
-uninstall: uninstall-libs uninstall-headers uninstall-progs uninstall-data
-
-uninstall-progs:
-       $(RM) $(addprefix "$(BINDIR)/", $(ALLAVPROGS))
+uninstall: uninstall-libs uninstall-headers uninstall-data
 
 uninstall-data:
        $(RM) -r "$(DATADIR)"
 
 clean::
-       $(RM) $(ALLAVPROGS) $(ALLAVPROGS_G)
        $(RM) $(CLEANSUFFIXES)
        $(RM) $(CLEANSUFFIXES:%=compat/msvcrt/%)
        $(RM) $(CLEANSUFFIXES:%=compat/atomics/pthread/%)
index f0c4f79..ff958d3 100644 (file)
@@ -30,7 +30,7 @@ EXAMPLES_FILES := $(wildcard $(SRC_PATH)/doc/examples/*.c) $(SRC_PATH)/doc/examp
 EXAMPLE_MAKEFILE := $(SRC_PATH)/doc/examples/Makefile
 
 $(foreach P,$(DOC_EXAMPLES),$(eval OBJS-$(P:%$(PROGSSUF)$(EXESUF)=%) = $(P:%$(PROGSSUF)$(EXESUF)=%).o))
-$(DOC_EXAMPLES): %$(PROGSSUF)$(EXESUF): %.o
+$(DOC_EXAMPLES_G): %$(PROGSSUF)_g$(EXESUF): %.o
 
 examples: $(DOC_EXAMPLES)
 
diff --git a/fftools/Makefile b/fftools/Makefile
new file mode 100644 (file)
index 0000000..094f6d6
--- /dev/null
@@ -0,0 +1,57 @@
+AVPROGS-$(CONFIG_FFMPEG)   += ffmpeg
+AVPROGS-$(CONFIG_FFPLAY)   += ffplay
+AVPROGS-$(CONFIG_FFPROBE)  += ffprobe
+AVPROGS-$(CONFIG_FFSERVER) += ffserver
+
+AVPROGS     := $(AVPROGS-yes:%=%$(PROGSSUF)$(EXESUF))
+PROGS       += $(AVPROGS)
+
+AVBASENAMES  = ffmpeg ffplay ffprobe ffserver
+ALLAVPROGS   = $(AVBASENAMES:%=%$(PROGSSUF)$(EXESUF))
+ALLAVPROGS_G = $(AVBASENAMES:%=%$(PROGSSUF)_g$(EXESUF))
+
+OBJS-ffmpeg                        += fftools/ffmpeg_opt.o fftools/ffmpeg_filter.o fftools/ffmpeg_hw.o
+OBJS-ffmpeg-$(CONFIG_CUVID)        += fftools/ffmpeg_cuvid.o
+OBJS-ffmpeg-$(CONFIG_LIBMFX)       += fftools/ffmpeg_qsv.o
+ifndef CONFIG_VIDEOTOOLBOX
+OBJS-ffmpeg-$(CONFIG_VDA)          += fftools/ffmpeg_videotoolbox.o
+endif
+OBJS-ffmpeg-$(CONFIG_VIDEOTOOLBOX) += fftools/ffmpeg_videotoolbox.o
+OBJS-ffserver                      += fftools/ffserver_config.o
+
+define DOFFTOOL
+OBJS-$(1)-$(CONFIG_OPENCL) += fftools/cmdutils_opencl.o
+OBJS-$(1) += fftools/cmdutils.o fftools/$(1).o $(OBJS-$(1)-yes)
+$(1)$(PROGSSUF)_g$(EXESUF): $$(OBJS-$(1))
+$$(OBJS-$(1)): | fftools
+$$(OBJS-$(1)): CFLAGS  += $(CFLAGS-$(1))
+$(1)$(PROGSSUF)_g$(EXESUF): LDFLAGS += $(LDFLAGS-$(1))
+$(1)$(PROGSSUF)_g$(EXESUF): FF_EXTRALIBS += $(EXTRALIBS-$(1))
+-include $$(OBJS-$(1):.o=.d)
+endef
+
+$(foreach P,$(AVPROGS-yes),$(eval $(call DOFFTOOL,$(P))))
+
+all: $(AVPROGS)
+
+fftools/ffprobe.o fftools/cmdutils.o: libavutil/ffversion.h | fftools
+OBJDIRS += fftools
+
+ifdef AVPROGS
+install: install-progs install-data
+endif
+
+install-progs-yes:
+install-progs-$(CONFIG_SHARED): install-libs
+
+install-progs: install-progs-yes $(AVPROGS)
+       $(Q)mkdir -p "$(BINDIR)"
+       $(INSTALL) -c -m 755 $(AVPROGS) "$(BINDIR)"
+
+uninstall: uninstall-progs
+
+uninstall-progs:
+       $(RM) $(addprefix "$(BINDIR)/", $(ALLAVPROGS))
+
+clean::
+       $(RM) $(ALLAVPROGS) $(ALLAVPROGS_G) $(CLEANSUFFIXES:%=fftools/%)
similarity index 100%
rename from cmdutils.c
rename to fftools/cmdutils.c
similarity index 99%
rename from cmdutils.h
rename to fftools/cmdutils.h
index e1d64d8..2997ee3 100644 (file)
@@ -19,8 +19,8 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
-#ifndef CMDUTILS_H
-#define CMDUTILS_H
+#ifndef FFTOOLS_CMDUTILS_H
+#define FFTOOLS_CMDUTILS_H
 
 #include <stdint.h>
 
@@ -659,4 +659,4 @@ void *grow_array(void *array, int elem_size, int *size, int new_size);
 
 double get_rotation(AVStream *st);
 
-#endif /* CMDUTILS_H */
+#endif /* FFTOOLS_CMDUTILS_H */
similarity index 100%
rename from cmdutils_opencl.c
rename to fftools/cmdutils_opencl.c
similarity index 100%
rename from ffmpeg.c
rename to fftools/ffmpeg.c
similarity index 99%
rename from ffmpeg.h
rename to fftools/ffmpeg.h
index d2deb43..f6c76bc 100644 (file)
--- a/ffmpeg.h
@@ -16,8 +16,8 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
-#ifndef FFMPEG_H
-#define FFMPEG_H
+#ifndef FFTOOLS_FFMPEG_H
+#define FFTOOLS_FFMPEG_H
 
 #include "config.h"
 
@@ -676,4 +676,4 @@ int hw_device_setup_for_encode(OutputStream *ost);
 
 int hwaccel_decode_init(AVCodecContext *avctx);
 
-#endif /* FFMPEG_H */
+#endif /* FFTOOLS_FFMPEG_H */
similarity index 100%
rename from ffmpeg_cuvid.c
rename to fftools/ffmpeg_cuvid.c
similarity index 100%
rename from ffmpeg_filter.c
rename to fftools/ffmpeg_filter.c
similarity index 100%
rename from ffmpeg_hw.c
rename to fftools/ffmpeg_hw.c
similarity index 100%
rename from ffmpeg_opt.c
rename to fftools/ffmpeg_opt.c
similarity index 100%
rename from ffmpeg_qsv.c
rename to fftools/ffmpeg_qsv.c
similarity index 100%
rename from ffplay.c
rename to fftools/ffplay.c
similarity index 100%
rename from ffprobe.c
rename to fftools/ffprobe.c
similarity index 100%
rename from ffserver.c
rename to fftools/ffserver.c
similarity index 100%
rename from ffserver_config.c
rename to fftools/ffserver_config.c
similarity index 98%
rename from ffserver_config.h
rename to fftools/ffserver_config.h
index 48d38dc..089b848 100644 (file)
@@ -18,8 +18,8 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  */
 
-#ifndef FFSERVER_CONFIG_H
-#define FFSERVER_CONFIG_H
+#ifndef FFTOOLS_FFSERVER_CONFIG_H
+#define FFTOOLS_FFSERVER_CONFIG_H
 
 #define FFM_PACKET_SIZE 4096
 
@@ -152,4 +152,4 @@ int ffserver_parse_ffconfig(const char *filename, FFServerConfig *config);
 
 void ffserver_free_child_args(void *argsp);
 
-#endif /* FFSERVER_CONFIG_H */
+#endif /* FFTOOLS_FFSERVER_CONFIG_H */