diff options
Diffstat (limited to 'Documentation/media/Makefile')
-rw-r--r-- | Documentation/media/Makefile | 74 |
1 files changed, 62 insertions, 12 deletions
diff --git a/Documentation/media/Makefile b/Documentation/media/Makefile index a7fb35291f6c..4d8e2ff378c4 100644 --- a/Documentation/media/Makefile +++ b/Documentation/media/Makefile @@ -1,23 +1,60 @@ -# Generate the *.h.rst files from uAPI headers +# Rules to convert DOT and SVG to Sphinx images + +SRC_DIR=$(srctree)/Documentation/media + +DOTS = \ + uapi/v4l/pipeline.dot \ + +IMAGES = \ + typical_media_device.svg \ + uapi/dvb/dvbstb.svg \ + uapi/v4l/bayer.svg \ + uapi/v4l/constraints.svg \ + uapi/v4l/crop.svg \ + uapi/v4l/fieldseq_bt.svg \ + uapi/v4l/fieldseq_tb.svg \ + uapi/v4l/nv12mt.svg \ + uapi/v4l/nv12mt_example.svg \ + uapi/v4l/pipeline.svg \ + uapi/v4l/selection.svg \ + uapi/v4l/subdev-image-processing-full.svg \ + uapi/v4l/subdev-image-processing-scaling-multi-source.svg \ + uapi/v4l/subdev-image-processing-crop.svg \ + uapi/v4l/vbi_525.svg \ + uapi/v4l/vbi_625.svg \ + uapi/v4l/vbi_hsync.svg \ + +DOTTGT := $(patsubst %.dot,%.svg,$(DOTS)) +IMGDOT := $(patsubst %,$(SRC_DIR)/%,$(DOTTGT)) + +IMGTGT := $(patsubst %.svg,%.pdf,$(IMAGES)) +IMGPDF := $(patsubst %,$(SRC_DIR)/%,$(IMGTGT)) + +cmd = $(echo-cmd) $(cmd_$(1)) + +quiet_cmd_genpdf = GENPDF $2 + cmd_genpdf = convert $2 $3 + +quiet_cmd_gendot = DOT $2 + cmd_gendot = dot -Tsvg $2 > $3 + +%.pdf: %.svg + @$(call cmd,genpdf,$<,$@) + +%.svg: %.dot + @$(call cmd,gendot,$<,$@) + +# Rules to convert a .h file to inline RST documentation PARSER = $(srctree)/Documentation/sphinx/parse-headers.pl UAPI = $(srctree)/include/uapi/linux KAPI = $(srctree)/include/linux -SRC_DIR=$(srctree)/Documentation/media FILES = audio.h.rst ca.h.rst dmx.h.rst frontend.h.rst net.h.rst video.h.rst \ videodev2.h.rst media.h.rst cec.h.rst lirc.h.rst TARGETS := $(addprefix $(BUILDDIR)/, $(FILES)) -.PHONY: all -all: $(BUILDDIR) ${TARGETS} - -$(BUILDDIR): - $(Q)mkdir -p $@ - -# Rule to convert a .h file to inline RST documentation - gen_rst = \ echo ${PARSER} $< $@ $(SRC_DIR)/$(notdir $@).exceptions; \ ${PARSER} $< $@ $(SRC_DIR)/$(notdir $@).exceptions @@ -57,5 +94,18 @@ $(BUILDDIR)/cec.h.rst: ${KAPI}/cec.h ${PARSER} $(SRC_DIR)/cec.h.rst.exceptions $(BUILDDIR)/lirc.h.rst: ${UAPI}/lirc.h ${PARSER} $(SRC_DIR)/lirc.h.rst.exceptions @$($(quiet)gen_rst) -cleandocs: - -rm ${TARGETS} +# Media build rules + +.PHONY: all html epub xml latex + +all: $(IMGDOT) $(BUILDDIR) ${TARGETS} +html: all +epub: all +xml: all +latex: $(IMGPDF) all + +clean: + -rm -f $(DOTTGT) $(IMGTGT) ${TARGETS} 2>/dev/null + +$(BUILDDIR): + $(Q)mkdir -p $@ |