[v3,2/4] mk: use templated doxygen config, modified on the fly
Checks
Commit Message
This will allow the same config file to be used from Meson.
The result has been verified to be identical via diffoscope.
Signed-off-by: Luca Boccassi <bluca@debian.org>
---
v2: reordered generated fields as requested
doc/api/doxy-api.conf | 87 ------------------------------------
doc/api/doxy-api.conf.in | 96 ++++++++++++++++++++++++++++++++++++++++
mk/rte.sdkdoc.mk | 16 +++----
3 files changed, 103 insertions(+), 96 deletions(-)
delete mode 100644 doc/api/doxy-api.conf
create mode 100644 doc/api/doxy-api.conf.in
deleted file mode 100644
@@ -1,87 +0,0 @@
-# SPDX-License-Identifier: BSD-3-Clause
-# Copyright 2013-2017 6WIND S.A.
-
-PROJECT_NAME = DPDK
-INPUT = doc/api/doxy-api-index.md \
- drivers/crypto/scheduler \
- drivers/mempool/dpaa2 \
- drivers/net/bnxt \
- drivers/net/bonding \
- drivers/net/dpaa \
- drivers/net/i40e \
- drivers/net/ixgbe \
- drivers/net/softnic \
- drivers/raw/dpaa2_cmdif \
- drivers/raw/dpaa2_qdma \
- lib/librte_eal/common/include \
- lib/librte_eal/common/include/generic \
- lib/librte_acl \
- lib/librte_bbdev \
- lib/librte_bitratestats \
- lib/librte_bpf \
- lib/librte_cfgfile \
- lib/librte_cmdline \
- lib/librte_compat \
- lib/librte_compressdev \
- lib/librte_cryptodev \
- lib/librte_distributor \
- lib/librte_efd \
- lib/librte_ethdev \
- lib/librte_eventdev \
- lib/librte_flow_classify \
- lib/librte_gro \
- lib/librte_gso \
- lib/librte_hash \
- lib/librte_ip_frag \
- lib/librte_jobstats \
- lib/librte_kni \
- lib/librte_kvargs \
- lib/librte_latencystats \
- lib/librte_lpm \
- lib/librte_mbuf \
- lib/librte_member \
- lib/librte_mempool \
- lib/librte_meter \
- lib/librte_metrics \
- lib/librte_net \
- lib/librte_pci \
- lib/librte_pdump \
- lib/librte_pipeline \
- lib/librte_port \
- lib/librte_power \
- lib/librte_rawdev \
- lib/librte_reorder \
- lib/librte_ring \
- lib/librte_sched \
- lib/librte_security \
- lib/librte_table \
- lib/librte_timer \
- lib/librte_vhost
-FILE_PATTERNS = rte_*.h \
- cmdline.h
-PREDEFINED = __DOXYGEN__ \
- VFIO_PRESENT \
- __attribute__(x)=
-
-OPTIMIZE_OUTPUT_FOR_C = YES
-ENABLE_PREPROCESSING = YES
-MACRO_EXPANSION = YES
-EXPAND_ONLY_PREDEF = YES
-EXTRACT_STATIC = YES
-DISTRIBUTE_GROUP_DOC = YES
-HIDE_UNDOC_MEMBERS = YES
-HIDE_UNDOC_CLASSES = YES
-HIDE_SCOPE_NAMES = YES
-GENERATE_DEPRECATEDLIST = NO
-VERBATIM_HEADERS = NO
-ALPHABETICAL_INDEX = NO
-
-HTML_TIMESTAMP = NO
-HTML_DYNAMIC_SECTIONS = YES
-SEARCHENGINE = NO
-SORT_MEMBER_DOCS = NO
-SOURCE_BROWSER = YES
-
-EXAMPLE_PATH = examples
-EXAMPLE_PATTERNS = *.c
-EXAMPLE_RECURSIVE = YES
new file mode 100644
@@ -0,0 +1,96 @@
+# SPDX-License-Identifier: BSD-3-Clause
+# Copyright 2013-2017 6WIND S.A.
+
+PROJECT_NAME = DPDK
+PROJECT_NUMBER = @VERSION@
+INPUT = @TOPDIR@/doc/api/doxy-api-index.md \
+ @TOPDIR@/drivers/crypto/scheduler \
+ @TOPDIR@/drivers/mempool/dpaa2 \
+ @TOPDIR@/drivers/net/bnxt \
+ @TOPDIR@/drivers/net/bonding \
+ @TOPDIR@/drivers/net/dpaa \
+ @TOPDIR@/drivers/net/i40e \
+ @TOPDIR@/drivers/net/ixgbe \
+ @TOPDIR@/drivers/net/softnic \
+ @TOPDIR@/drivers/raw/dpaa2_cmdif \
+ @TOPDIR@/drivers/raw/dpaa2_qdma \
+ @TOPDIR@/lib/librte_eal/common/include \
+ @TOPDIR@/lib/librte_eal/common/include/generic \
+ @TOPDIR@/lib/librte_acl \
+ @TOPDIR@/lib/librte_bbdev \
+ @TOPDIR@/lib/librte_bitratestats \
+ @TOPDIR@/lib/librte_bpf \
+ @TOPDIR@/lib/librte_cfgfile \
+ @TOPDIR@/lib/librte_cmdline \
+ @TOPDIR@/lib/librte_compat \
+ @TOPDIR@/lib/librte_compressdev \
+ @TOPDIR@/lib/librte_cryptodev \
+ @TOPDIR@/lib/librte_distributor \
+ @TOPDIR@/lib/librte_efd \
+ @TOPDIR@/lib/librte_ethdev \
+ @TOPDIR@/lib/librte_eventdev \
+ @TOPDIR@/lib/librte_flow_classify \
+ @TOPDIR@/lib/librte_gro \
+ @TOPDIR@/lib/librte_gso \
+ @TOPDIR@/lib/librte_hash \
+ @TOPDIR@/lib/librte_ip_frag \
+ @TOPDIR@/lib/librte_jobstats \
+ @TOPDIR@/lib/librte_kni \
+ @TOPDIR@/lib/librte_kvargs \
+ @TOPDIR@/lib/librte_latencystats \
+ @TOPDIR@/lib/librte_lpm \
+ @TOPDIR@/lib/librte_mbuf \
+ @TOPDIR@/lib/librte_member \
+ @TOPDIR@/lib/librte_mempool \
+ @TOPDIR@/lib/librte_meter \
+ @TOPDIR@/lib/librte_metrics \
+ @TOPDIR@/lib/librte_net \
+ @TOPDIR@/lib/librte_pci \
+ @TOPDIR@/lib/librte_pdump \
+ @TOPDIR@/lib/librte_pipeline \
+ @TOPDIR@/lib/librte_port \
+ @TOPDIR@/lib/librte_power \
+ @TOPDIR@/lib/librte_rawdev \
+ @TOPDIR@/lib/librte_reorder \
+ @TOPDIR@/lib/librte_ring \
+ @TOPDIR@/lib/librte_sched \
+ @TOPDIR@/lib/librte_security \
+ @TOPDIR@/lib/librte_table \
+ @TOPDIR@/lib/librte_timer \
+ @TOPDIR@/lib/librte_vhost
+INPUT += @API_EXAMPLES@
+FILE_PATTERNS = rte_*.h \
+ cmdline.h
+PREDEFINED = __DOXYGEN__ \
+ VFIO_PRESENT \
+ __attribute__(x)=
+
+OPTIMIZE_OUTPUT_FOR_C = YES
+ENABLE_PREPROCESSING = YES
+MACRO_EXPANSION = YES
+EXPAND_ONLY_PREDEF = YES
+EXTRACT_STATIC = YES
+DISTRIBUTE_GROUP_DOC = YES
+HIDE_UNDOC_MEMBERS = YES
+HIDE_UNDOC_CLASSES = YES
+HIDE_SCOPE_NAMES = YES
+GENERATE_DEPRECATEDLIST = NO
+VERBATIM_HEADERS = NO
+ALPHABETICAL_INDEX = NO
+
+HTML_TIMESTAMP = NO
+HTML_DYNAMIC_SECTIONS = YES
+SEARCHENGINE = NO
+SORT_MEMBER_DOCS = NO
+SOURCE_BROWSER = YES
+
+EXAMPLE_PATH = @TOPDIR@/examples
+EXAMPLE_PATTERNS = *.c
+EXAMPLE_RECURSIVE = YES
+
+OUTPUT_DIRECTORY = @OUTPUT@
+STRIP_FROM_PATH = @STRIP_FROM_PATH@
+GENERATE_HTML = YES
+HTML_OUTPUT = @HTML_OUTPUT@
+GENERATE_LATEX = NO
+GENERATE_MAN = NO
@@ -43,15 +43,13 @@ clean: api-html-clean guides-html-clean guides-pdf-clean guides-man-clean
api-html: $(API_EXAMPLES)
@echo 'doxygen for API...'
$(Q)mkdir -p $(RTE_OUTPUT)/doc/html
- $(Q)(cat $(RTE_SDK)/doc/api/doxy-api.conf && \
- printf 'PROJECT_NUMBER = ' && \
- $(MAKE) -rRs showversion && \
- echo INPUT += $(API_EXAMPLES) && \
- echo OUTPUT_DIRECTORY = $(RTE_OUTPUT)/doc && \
- echo HTML_OUTPUT = html/api && \
- echo GENERATE_HTML = YES && \
- echo GENERATE_LATEX = NO && \
- echo GENERATE_MAN = NO )| \
+ $(Q)(sed -e "s|@VERSION@|`$(MAKE) -rRs showversion`|" \
+ -e "s|@API_EXAMPLES@|$(API_EXAMPLES)|" \
+ -e "s|@OUTPUT@|$(RTE_OUTPUT)/doc|" \
+ -e "s|@HTML_OUTPUT@|html/api|" \
+ -e "s|@TOPDIR@|./|g" \
+ -e "s|@STRIP_FROM_PATH@|./|g" \
+ $(RTE_SDK)/doc/api/doxy-api.conf.in)| \
doxygen -
$(Q)$(RTE_SDK)/doc/api/doxy-html-custom.sh $(RTE_OUTPUT)/doc/html/api/doxygen.css