diff options
| author | Tim Redfern <tim@eclectronics.org> | 2013-12-29 12:19:38 +0000 |
|---|---|---|
| committer | Tim Redfern <tim@eclectronics.org> | 2013-12-29 12:19:38 +0000 |
| commit | f7813a5324be39d13ab536c245d15dfc602a7849 (patch) | |
| tree | fad99148b88823d34a5df2f0a25881a002eb291b /ffmpeg/doc/Makefile | |
| parent | b7a5a477b8ff4d4e3028b9dfb9a9df0a41463f92 (diff) | |
basic type mechanism working
Diffstat (limited to 'ffmpeg/doc/Makefile')
| -rw-r--r-- | ffmpeg/doc/Makefile | 83 |
1 files changed, 71 insertions, 12 deletions
diff --git a/ffmpeg/doc/Makefile b/ffmpeg/doc/Makefile index a861655..26bd9f5 100644 --- a/ffmpeg/doc/Makefile +++ b/ffmpeg/doc/Makefile @@ -6,7 +6,6 @@ LIBRARIES-$(CONFIG_AVFORMAT) += libavformat LIBRARIES-$(CONFIG_AVDEVICE) += libavdevice LIBRARIES-$(CONFIG_AVFILTER) += libavfilter -COMPONENTS-yes = $(PROGS-yes) COMPONENTS-$(CONFIG_AVUTIL) += ffmpeg-utils COMPONENTS-$(CONFIG_SWSCALE) += ffmpeg-scaler COMPONENTS-$(CONFIG_SWRESAMPLE) += ffmpeg-resampler @@ -15,9 +14,11 @@ COMPONENTS-$(CONFIG_AVFORMAT) += ffmpeg-formats ffmpeg-protocols COMPONENTS-$(CONFIG_AVDEVICE) += ffmpeg-devices COMPONENTS-$(CONFIG_AVFILTER) += ffmpeg-filters -MANPAGES = $(COMPONENTS-yes:%=doc/%.1) $(LIBRARIES-yes:%=doc/%.3) -PODPAGES = $(COMPONENTS-yes:%=doc/%.pod) $(LIBRARIES-yes:%=doc/%.pod) -HTMLPAGES = $(COMPONENTS-yes:%=doc/%.html) $(LIBRARIES-yes:%=doc/%.html) \ +MANPAGES1 = $(AVPROGS-yes:%=doc/%.1) $(AVPROGS-yes:%=doc/%-all.1) $(COMPONENTS-yes:%=doc/%.1) +MANPAGES3 = $(LIBRARIES-yes:%=doc/%.3) +MANPAGES = $(MANPAGES1) $(MANPAGES3) +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 \ @@ -35,6 +36,22 @@ DOCS-$(CONFIG_MANPAGES) += $(MANPAGES) DOCS-$(CONFIG_TXTPAGES) += $(TXTPAGES) DOCS = $(DOCS-yes) +DOC_EXAMPLES-$(CONFIG_DECODING_ENCODING_EXAMPLE) += decoding_encoding +DOC_EXAMPLES-$(CONFIG_DEMUXING_DECODING_EXAMPLE) += demuxing_decoding +DOC_EXAMPLES-$(CONFIG_FILTERING_AUDIO_EXAMPLE) += filtering_audio +DOC_EXAMPLES-$(CONFIG_FILTERING_VIDEO_EXAMPLE) += filtering_video +DOC_EXAMPLES-$(CONFIG_METADATA_EXAMPLE) += metadata +DOC_EXAMPLES-$(CONFIG_MUXING_EXAMPLE) += muxing +DOC_EXAMPLES-$(CONFIG_RESAMPLING_AUDIO_EXAMPLE) += resampling_audio +DOC_EXAMPLES-$(CONFIG_SCALING_VIDEO_EXAMPLE) += scaling_video +DOC_EXAMPLES-$(CONFIG_TRANSCODE_AAC_EXAMPLE) += transcode_aac +ALL_DOC_EXAMPLES_LIST = $(DOC_EXAMPLES-) $(DOC_EXAMPLES-yes) + +DOC_EXAMPLES := $(DOC_EXAMPLES-yes:%=doc/examples/%$(PROGSSUF)$(EXESUF)) +ALL_DOC_EXAMPLES := $(ALL_DOC_EXAMPLES_LIST:%=doc/examples/%$(PROGSSUF)$(EXESUF)) +ALL_DOC_EXAMPLES_G := $(ALL_DOC_EXAMPLES_LIST:%=doc/examples/%$(PROGSSUF)_g$(EXESUF)) +PROGS += $(DOC_EXAMPLES) + all-$(CONFIG_DOC): doc doc: documentation @@ -42,7 +59,9 @@ doc: documentation apidoc: doc/doxy/html documentation: $(DOCS) -TEXIDEP = awk '/^@(verbatim)?include/ { printf "$@: $(@D)/%s\n", $$2 }' <$< >$(@:%=%.d) +examples: $(DOC_EXAMPLES) + +TEXIDEP = perl $(SRC_PATH)/doc/texidep.pl $(SRC_PATH) $< $@ >$(@:%=%.d) doc/%.txt: TAG = TXT doc/%.txt: doc/%.texi @@ -59,12 +78,22 @@ $(GENTEXI): doc/avoptions_%.texi: doc/print_options$(HOSTEXESUF) doc/%.html: TAG = HTML doc/%.html: doc/%.texi $(SRC_PATH)/doc/t2h.init $(GENTEXI) $(Q)$(TEXIDEP) - $(M)texi2html -I doc -monolithic --init-file $(SRC_PATH)/doc/t2h.init --output $@ $< + $(M)texi2html -I doc -monolithic --D=config-not-all --init-file $(SRC_PATH)/doc/t2h.init --output $@ $< + +doc/%-all.html: TAG = HTML +doc/%-all.html: doc/%.texi $(SRC_PATH)/doc/t2h.init $(GENTEXI) + $(Q)$(TEXIDEP) + $(M)texi2html -I doc -monolithic --D=config-all --init-file $(SRC_PATH)/doc/t2h.init --output $@ $< doc/%.pod: TAG = POD doc/%.pod: doc/%.texi $(SRC_PATH)/doc/texi2pod.pl $(GENTEXI) $(Q)$(TEXIDEP) - $(M)perl $(SRC_PATH)/doc/texi2pod.pl -Idoc $< $@ + $(M)perl $(SRC_PATH)/doc/texi2pod.pl -Dconfig-not-all=yes -Idoc $< $@ + +doc/%-all.pod: TAG = POD +doc/%-all.pod: doc/%.texi $(SRC_PATH)/doc/texi2pod.pl $(GENTEXI) + $(Q)$(TEXIDEP) + $(M)perl $(SRC_PATH)/doc/texi2pod.pl -Dconfig-all=yes -Idoc $< $@ doc/%.1 doc/%.3: TAG = MAN doc/%.1: doc/%.pod $(GENTEXI) @@ -73,29 +102,59 @@ doc/%.3: doc/%.pod $(GENTEXI) $(M)pod2man --section=3 --center=" " --release=" " $< > $@ $(DOCS) doc/doxy/html: | doc/ +$(DOC_EXAMPLES:%=%.o): | doc/examples +OBJDIRS += doc/examples doc/doxy/html: $(SRC_PATH)/doc/Doxyfile $(INSTHEADERS) $(M)$(SRC_PATH)/doc/doxy-wrapper.sh $(SRC_PATH) $^ +install-doc: install-html install-man + +install-html: + install-man: +ifdef CONFIG_HTMLPAGES +install-progs-$(CONFIG_DOC): install-html + +install-html: $(HTMLPAGES) + $(Q)mkdir -p "$(DOCDIR)" + $(INSTALL) -m 644 $(HTMLPAGES) "$(DOCDIR)" +endif + ifdef CONFIG_MANPAGES install-progs-$(CONFIG_DOC): install-man install-man: $(MANPAGES) $(Q)mkdir -p "$(MANDIR)/man1" - $(INSTALL) -m 644 $(MANPAGES) "$(MANDIR)/man1" + $(INSTALL) -m 644 $(MANPAGES1) "$(MANDIR)/man1" + $(Q)mkdir -p "$(MANDIR)/man3" + $(INSTALL) -m 644 $(MANPAGES3) "$(MANDIR)/man3" endif -uninstall: uninstall-man +uninstall: uninstall-doc + +uninstall-doc: uninstall-html uninstall-man + +uninstall-html: + $(RM) -r "$(DOCDIR)" uninstall-man: - $(RM) $(addprefix "$(MANDIR)/man1/",$(ALLMANPAGES)) + $(RM) $(addprefix "$(MANDIR)/man1/",$(AVPROGS-yes:%=%.1) $(AVPROGS-yes:%=%-all.1) $(COMPONENTS-yes:%=%.1)) + $(RM) $(addprefix "$(MANDIR)/man3/",$(LIBRARIES-yes:%=%.3)) clean:: docclean -docclean: - $(RM) $(TXTPAGES) doc/*.html doc/*.pod doc/*.1 doc/*.3 $(CLEANSUFFIXES:%=doc/%) doc/avoptions_*.texi +distclean:: docclean + $(RM) doc/config.texi + +examplesclean: + $(RM) $(ALL_DOC_EXAMPLES) $(ALL_DOC_EXAMPLES_G) + $(RM) $(CLEANSUFFIXES:%=doc/examples/%) + +docclean: examplesclean + $(RM) $(CLEANSUFFIXES:%=doc/%) + $(RM) $(TXTPAGES) doc/*.html doc/*.pod doc/*.1 doc/*.3 doc/avoptions_*.texi $(RM) -r doc/doxy/html -include $(wildcard $(DOCS:%=%.d)) |
