Imported Upstream version 4.3.1
[platform/upstream/ffmpeg.git] / doc / examples / Makefile
1 EXAMPLES-$(CONFIG_AVIO_LIST_DIR_EXAMPLE)     += avio_list_dir
2 EXAMPLES-$(CONFIG_AVIO_READING_EXAMPLE)      += avio_reading
3 EXAMPLES-$(CONFIG_DECODE_AUDIO_EXAMPLE)      += decode_audio
4 EXAMPLES-$(CONFIG_DECODE_VIDEO_EXAMPLE)      += decode_video
5 EXAMPLES-$(CONFIG_DEMUXING_DECODING_EXAMPLE) += demuxing_decoding
6 EXAMPLES-$(CONFIG_ENCODE_AUDIO_EXAMPLE)      += encode_audio
7 EXAMPLES-$(CONFIG_ENCODE_VIDEO_EXAMPLE)      += encode_video
8 EXAMPLES-$(CONFIG_EXTRACT_MVS_EXAMPLE)       += extract_mvs
9 EXAMPLES-$(CONFIG_FILTER_AUDIO_EXAMPLE)      += filter_audio
10 EXAMPLES-$(CONFIG_FILTERING_AUDIO_EXAMPLE)   += filtering_audio
11 EXAMPLES-$(CONFIG_FILTERING_VIDEO_EXAMPLE)   += filtering_video
12 EXAMPLES-$(CONFIG_HTTP_MULTICLIENT_EXAMPLE)  += http_multiclient
13 EXAMPLES-$(CONFIG_HW_DECODE_EXAMPLE)         += hw_decode
14 EXAMPLES-$(CONFIG_METADATA_EXAMPLE)          += metadata
15 EXAMPLES-$(CONFIG_MUXING_EXAMPLE)            += muxing
16 EXAMPLES-$(CONFIG_QSVDEC_EXAMPLE)            += qsvdec
17 EXAMPLES-$(CONFIG_REMUXING_EXAMPLE)          += remuxing
18 EXAMPLES-$(CONFIG_RESAMPLING_AUDIO_EXAMPLE)  += resampling_audio
19 EXAMPLES-$(CONFIG_SCALING_VIDEO_EXAMPLE)     += scaling_video
20 EXAMPLES-$(CONFIG_TRANSCODE_AAC_EXAMPLE)     += transcode_aac
21 EXAMPLES-$(CONFIG_TRANSCODING_EXAMPLE)       += transcoding
22 EXAMPLES-$(CONFIG_VAAPI_ENCODE_EXAMPLE)      += vaapi_encode
23 EXAMPLES-$(CONFIG_VAAPI_TRANSCODE_EXAMPLE)   += vaapi_transcode
24
25 EXAMPLES       := $(EXAMPLES-yes:%=doc/examples/%$(PROGSSUF)$(EXESUF))
26 EXAMPLES_G     := $(EXAMPLES-yes:%=doc/examples/%$(PROGSSUF)_g$(EXESUF))
27 ALL_EXAMPLES   := $(EXAMPLES) $(EXAMPLES-:%=doc/examples/%$(PROGSSUF)$(EXESUF))
28 ALL_EXAMPLES_G := $(EXAMPLES_G) $(EXAMPLES-:%=doc/examples/%$(PROGSSUF)_g$(EXESUF))
29 PROGS          += $(EXAMPLES)
30
31 EXAMPLE_MAKEFILE := $(SRC_PATH)/doc/examples/Makefile
32 EXAMPLES_FILES := $(wildcard $(SRC_PATH)/doc/examples/*.c) $(SRC_PATH)/doc/examples/README $(EXAMPLE_MAKEFILE)
33
34 $(foreach P,$(EXAMPLES),$(eval OBJS-$(P:%$(PROGSSUF)$(EXESUF)=%) = $(P:%$(PROGSSUF)$(EXESUF)=%).o))
35 $(EXAMPLES_G): %$(PROGSSUF)_g$(EXESUF): %.o
36
37 examples: $(EXAMPLES)
38
39 $(EXAMPLES:%$(PROGSSUF)$(EXESUF)=%.o): | doc/examples
40 OUTDIRS += doc/examples
41
42 DOXY_INPUT += $(EXAMPLES:%$(PROGSSUF)$(EXESUF)=%.c)
43
44 install: install-examples
45
46 install-examples: $(EXAMPLES_FILES)
47         $(Q)mkdir -p "$(DATADIR)/examples"
48         $(INSTALL) -m 644 $(EXAMPLES_FILES) "$(DATADIR)/examples"
49         $(INSTALL) -m 644 $(EXAMPLE_MAKEFILE:%=%.example) "$(DATADIR)/examples/Makefile"
50
51 uninstall: uninstall-examples
52
53 uninstall-examples:
54         $(RM) -r "$(DATADIR)/examples"
55
56 examplesclean:
57         $(RM) $(ALL_EXAMPLES) $(ALL_EXAMPLES_G)
58         $(RM) $(CLEANSUFFIXES:%=doc/examples/%)
59
60 docclean:: examplesclean
61
62 -include $(wildcard $(EXAMPLES:%$(PROGSSUF)$(EXESUF)=%.d))
63
64 .PHONY: examples