xref: /OK3568_Linux_fs/kernel/Documentation/userspace-api/media/Makefile (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun# SPDX-License-Identifier: GPL-2.0
2*4882a593Smuzhiyun
3*4882a593Smuzhiyun# Rules to convert a .h file to inline RST documentation
4*4882a593Smuzhiyun
5*4882a593SmuzhiyunSRC_DIR=$(srctree)/Documentation/userspace-api/media
6*4882a593SmuzhiyunPARSER = $(srctree)/Documentation/sphinx/parse-headers.pl
7*4882a593SmuzhiyunUAPI = $(srctree)/include/uapi/linux
8*4882a593SmuzhiyunKAPI = $(srctree)/include/linux
9*4882a593Smuzhiyun
10*4882a593SmuzhiyunFILES = audio.h.rst ca.h.rst dmx.h.rst frontend.h.rst net.h.rst video.h.rst \
11*4882a593Smuzhiyun	  videodev2.h.rst media.h.rst cec.h.rst lirc.h.rst
12*4882a593Smuzhiyun
13*4882a593SmuzhiyunTARGETS := $(addprefix $(BUILDDIR)/, $(FILES))
14*4882a593Smuzhiyun
15*4882a593Smuzhiyungen_rst = \
16*4882a593Smuzhiyun	echo ${PARSER} $< $@ $(SRC_DIR)/$(notdir $@).exceptions; \
17*4882a593Smuzhiyun	${PARSER} $< $@ $(SRC_DIR)/$(notdir $@).exceptions
18*4882a593Smuzhiyun
19*4882a593Smuzhiyunquiet_gen_rst = echo '  PARSE   $(patsubst $(srctree)/%,%,$<)'; \
20*4882a593Smuzhiyun	${PARSER} $< $@ $(SRC_DIR)/$(notdir $@).exceptions
21*4882a593Smuzhiyun
22*4882a593Smuzhiyunsilent_gen_rst = ${gen_rst}
23*4882a593Smuzhiyun
24*4882a593Smuzhiyun$(BUILDDIR)/audio.h.rst: ${UAPI}/dvb/audio.h ${PARSER} $(SRC_DIR)/audio.h.rst.exceptions
25*4882a593Smuzhiyun	@$($(quiet)gen_rst)
26*4882a593Smuzhiyun
27*4882a593Smuzhiyun$(BUILDDIR)/ca.h.rst: ${UAPI}/dvb/ca.h ${PARSER} $(SRC_DIR)/ca.h.rst.exceptions
28*4882a593Smuzhiyun	@$($(quiet)gen_rst)
29*4882a593Smuzhiyun
30*4882a593Smuzhiyun$(BUILDDIR)/dmx.h.rst: ${UAPI}/dvb/dmx.h ${PARSER} $(SRC_DIR)/dmx.h.rst.exceptions
31*4882a593Smuzhiyun	@$($(quiet)gen_rst)
32*4882a593Smuzhiyun
33*4882a593Smuzhiyun$(BUILDDIR)/frontend.h.rst: ${UAPI}/dvb/frontend.h ${PARSER} $(SRC_DIR)/frontend.h.rst.exceptions
34*4882a593Smuzhiyun	@$($(quiet)gen_rst)
35*4882a593Smuzhiyun
36*4882a593Smuzhiyun$(BUILDDIR)/net.h.rst: ${UAPI}/dvb/net.h ${PARSER} $(SRC_DIR)/net.h.rst.exceptions
37*4882a593Smuzhiyun	@$($(quiet)gen_rst)
38*4882a593Smuzhiyun
39*4882a593Smuzhiyun$(BUILDDIR)/video.h.rst: ${UAPI}/dvb/video.h ${PARSER} $(SRC_DIR)/video.h.rst.exceptions
40*4882a593Smuzhiyun	@$($(quiet)gen_rst)
41*4882a593Smuzhiyun
42*4882a593Smuzhiyun$(BUILDDIR)/videodev2.h.rst: ${UAPI}/videodev2.h ${PARSER} $(SRC_DIR)/videodev2.h.rst.exceptions
43*4882a593Smuzhiyun	@$($(quiet)gen_rst)
44*4882a593Smuzhiyun
45*4882a593Smuzhiyun$(BUILDDIR)/media.h.rst: ${UAPI}/media.h ${PARSER} $(SRC_DIR)/media.h.rst.exceptions
46*4882a593Smuzhiyun	@$($(quiet)gen_rst)
47*4882a593Smuzhiyun
48*4882a593Smuzhiyun$(BUILDDIR)/cec.h.rst: ${UAPI}/cec.h ${PARSER} $(SRC_DIR)/cec.h.rst.exceptions
49*4882a593Smuzhiyun	@$($(quiet)gen_rst)
50*4882a593Smuzhiyun
51*4882a593Smuzhiyun$(BUILDDIR)/lirc.h.rst: ${UAPI}/lirc.h ${PARSER} $(SRC_DIR)/lirc.h.rst.exceptions
52*4882a593Smuzhiyun	@$($(quiet)gen_rst)
53*4882a593Smuzhiyun
54*4882a593Smuzhiyun# Media build rules
55*4882a593Smuzhiyun
56*4882a593Smuzhiyun.PHONY: all html epub xml latex
57*4882a593Smuzhiyun
58*4882a593Smuzhiyunall: $(IMGDOT) $(BUILDDIR) ${TARGETS}
59*4882a593Smuzhiyunhtml: all
60*4882a593Smuzhiyunepub: all
61*4882a593Smuzhiyunxml: all
62*4882a593Smuzhiyunlatex: $(IMGPDF) all
63*4882a593Smuzhiyunlinkcheck:
64*4882a593Smuzhiyun
65*4882a593Smuzhiyunclean:
66*4882a593Smuzhiyun	-rm -f $(DOTTGT) $(IMGTGT) ${TARGETS} 2>/dev/null
67*4882a593Smuzhiyun
68*4882a593Smuzhiyun$(BUILDDIR):
69*4882a593Smuzhiyun	$(Q)mkdir -p $@
70