You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

57 lines
1.7KB

  1. AVPROGS-$(CONFIG_FFMPEG) += ffmpeg
  2. AVPROGS-$(CONFIG_FFPLAY) += ffplay
  3. AVPROGS-$(CONFIG_FFPROBE) += ffprobe
  4. AVPROGS-$(CONFIG_FFSERVER) += ffserver
  5. AVPROGS := $(AVPROGS-yes:%=%$(PROGSSUF)$(EXESUF))
  6. PROGS += $(AVPROGS)
  7. AVBASENAMES = ffmpeg ffplay ffprobe ffserver
  8. ALLAVPROGS = $(AVBASENAMES:%=%$(PROGSSUF)$(EXESUF))
  9. ALLAVPROGS_G = $(AVBASENAMES:%=%$(PROGSSUF)_g$(EXESUF))
  10. OBJS-ffmpeg += fftools/ffmpeg_opt.o fftools/ffmpeg_filter.o fftools/ffmpeg_hw.o
  11. OBJS-ffmpeg-$(CONFIG_CUVID) += fftools/ffmpeg_cuvid.o
  12. OBJS-ffmpeg-$(CONFIG_LIBMFX) += fftools/ffmpeg_qsv.o
  13. ifndef CONFIG_VIDEOTOOLBOX
  14. OBJS-ffmpeg-$(CONFIG_VDA) += fftools/ffmpeg_videotoolbox.o
  15. endif
  16. OBJS-ffmpeg-$(CONFIG_VIDEOTOOLBOX) += fftools/ffmpeg_videotoolbox.o
  17. OBJS-ffserver += fftools/ffserver_config.o
  18. define DOFFTOOL
  19. OBJS-$(1) += fftools/cmdutils.o fftools/$(1).o $(OBJS-$(1)-yes)
  20. $(1)$(PROGSSUF)_g$(EXESUF): $$(OBJS-$(1))
  21. $$(OBJS-$(1)): | fftools
  22. $$(OBJS-$(1)): CFLAGS += $(CFLAGS-$(1))
  23. $(1)$(PROGSSUF)_g$(EXESUF): LDFLAGS += $(LDFLAGS-$(1))
  24. $(1)$(PROGSSUF)_g$(EXESUF): FF_EXTRALIBS += $(EXTRALIBS-$(1))
  25. -include $$(OBJS-$(1):.o=.d)
  26. endef
  27. $(foreach P,$(AVPROGS-yes),$(eval $(call DOFFTOOL,$(P))))
  28. all: $(AVPROGS)
  29. fftools/ffprobe.o fftools/cmdutils.o: libavutil/ffversion.h | fftools
  30. OBJDIRS += fftools
  31. ifdef AVPROGS
  32. install: install-progs install-data
  33. endif
  34. install-progs-yes:
  35. install-progs-$(CONFIG_SHARED): install-libs
  36. install-progs: install-progs-yes $(AVPROGS)
  37. $(Q)mkdir -p "$(BINDIR)"
  38. $(INSTALL) -c -m 755 $(AVPROGS) "$(BINDIR)"
  39. uninstall: uninstall-progs
  40. uninstall-progs:
  41. $(RM) $(addprefix "$(BINDIR)/", $(ALLAVPROGS))
  42. clean::
  43. $(RM) $(ALLAVPROGS) $(ALLAVPROGS_G) $(CLEANSUFFIXES:%=fftools/%)