Standard "find" on BSD does not support the "-printf" so gfind from
findutils package was used to enable full doc builds. We can remove this
extra dependency by using "sed" and "tr" to adjust the output from
regular find instread.
Fixes: 8260f4f98cfe ("mk: use script to generate examples.dox")
Fixes: 499fe9dfcfc7 ("doc: add dependency on examples for API doxygen")
Fixes: 897e55c8d27f ("doc: fix Doxygen examples build on FreeBSD")
Cc: bluca@debian.org
Cc: thomas@monjalon.net
Cc: stable@dpdk.org
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
---
doc/api/generate_examples.sh | 12 ++----------
1 file changed, 2 insertions(+), 10 deletions(-)
diff --git a/doc/api/generate_examples.sh b/doc/api/generate_examples.sh
index 3e08236596..16949cb47a 100755
--- a/doc/api/generate_examples.sh
+++ b/doc/api/generate_examples.sh
@@ -6,21 +6,13 @@ EXAMPLES_DIR=$1
API_EXAMPLES=$2
FIND=find
-if [ "$(uname)" = "FreeBSD" ] ; then
-# on FreeBSD, we need GNU find for "-printf" flag
- FIND=gfind
- if ! which -s $FIND ; then
- echo "Error: need '$FIND' on FreeBSD. Install 'findutils' pkg"
- exit 1
- fi
-fi
# generate a .d file including both C files and also build files, so we can
# detect both file changes and file additions/deletions
-echo "$API_EXAMPLES: $($FIND ${EXAMPLES_DIR} -type f \( -name '*.c' -o -name 'meson.build' \) -printf '%p ' )" > ${API_EXAMPLES}.d
+echo "$API_EXAMPLES: $($FIND ${EXAMPLES_DIR} -type f \( -name '*.c' -o -name 'meson.build' \) | tr '\n' ' ' )" > ${API_EXAMPLES}.d
exec > "${API_EXAMPLES}"
printf '/**\n'
printf '@page examples DPDK Example Programs\n\n'
-$FIND "${EXAMPLES_DIR}" -type f -name '*.c' -printf '@example examples/%P\n' | LC_ALL=C sort
+$FIND "${EXAMPLES_DIR}" -type f -name '*.c' | sed "s|${EXAMPLES_DIR}|@example examples|" | LC_ALL=C sort
printf '*/\n'
--
2.32.0