]> git.droids-corp.org - dpdk.git/commitdiff
doc: remove dependency on findutils on FreeBSD
authorBruce Richardson <bruce.richardson@intel.com>
Wed, 22 Dec 2021 15:18:55 +0000 (15:18 +0000)
committerThomas Monjalon <thomas@monjalon.net>
Wed, 12 Jan 2022 17:21:03 +0000 (18:21 +0100)
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 instead.

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: stable@dpdk.org
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
doc/api/generate_examples.sh

index 3e082365965fa975d119e2881b36e8325c22893e..48574563ca9d4690c9af717bedcd5da1d389bad6 100755 (executable)
@@ -6,21 +6,15 @@ 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'