DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH] doc/examples: fix build on FreeBSD
@ 2021-09-15 17:36 Bruce Richardson
  2021-10-01 15:03 ` [dpdk-dev] [dpdk-stable] " Thomas Monjalon
  0 siblings, 1 reply; 7+ messages in thread
From: Bruce Richardson @ 2021-09-15 17:36 UTC (permalink / raw)
  To: dev; +Cc: Bruce Richardson, bluca, stable

On FreeBSD, "find" does not support the "printf" flag, so we need to
use "gfind" from the "findutils" package.

Fixes: 8260f4f98cfe ("mk: use script to generate examples.dox")
Cc: bluca@debian.org
Cc: stable@dpdk.org

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
---
 doc/api/generate_examples.sh | 14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)

diff --git a/doc/api/generate_examples.sh b/doc/api/generate_examples.sh
index dae7ee0be0..3e08236596 100755
--- a/doc/api/generate_examples.sh
+++ b/doc/api/generate_examples.sh
@@ -5,12 +5,22 @@
 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' \) -printf '%p ' )" > ${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' -printf '@example examples/%P\n' | LC_ALL=C sort
 printf '*/\n'
-- 
2.30.2


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [dpdk-dev] [dpdk-stable] [PATCH] doc/examples: fix build on FreeBSD
  2021-09-15 17:36 [dpdk-dev] [PATCH] doc/examples: fix build on FreeBSD Bruce Richardson
@ 2021-10-01 15:03 ` Thomas Monjalon
  2021-10-01 15:15   ` Bruce Richardson
  0 siblings, 1 reply; 7+ messages in thread
From: Thomas Monjalon @ 2021-10-01 15:03 UTC (permalink / raw)
  To: Bruce Richardson; +Cc: dev, stable, bluca

15/09/2021 19:36, Bruce Richardson:
> On FreeBSD, "find" does not support the "printf" flag, so we need to
> use "gfind" from the "findutils" package.

It is one more dependency.
Shouldn't we avoid it by rewritting the shell commands with loops?





^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [dpdk-dev] [dpdk-stable] [PATCH] doc/examples: fix build on FreeBSD
  2021-10-01 15:03 ` [dpdk-dev] [dpdk-stable] " Thomas Monjalon
@ 2021-10-01 15:15   ` Bruce Richardson
  2021-10-01 15:36     ` Thomas Monjalon
  0 siblings, 1 reply; 7+ messages in thread
From: Bruce Richardson @ 2021-10-01 15:15 UTC (permalink / raw)
  To: Thomas Monjalon; +Cc: dev, stable, bluca

On Fri, Oct 01, 2021 at 05:03:11PM +0200, Thomas Monjalon wrote:
> 15/09/2021 19:36, Bruce Richardson:
> > On FreeBSD, "find" does not support the "printf" flag, so we need to
> > use "gfind" from the "findutils" package.
> 
> It is one more dependency.
> Shouldn't we avoid it by rewritting the shell commands with loops?
>
Probably in the longer term, yes. If I get the chance, I'll try and rewrite
this script, but let's keep this patch in the queue in case I don't get to
in the 21.11 timeframe.

/Bruce

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [dpdk-dev] [dpdk-stable] [PATCH] doc/examples: fix build on FreeBSD
  2021-10-01 15:15   ` Bruce Richardson
@ 2021-10-01 15:36     ` Thomas Monjalon
  2021-10-01 15:41       ` Bruce Richardson
  0 siblings, 1 reply; 7+ messages in thread
From: Thomas Monjalon @ 2021-10-01 15:36 UTC (permalink / raw)
  To: Bruce Richardson; +Cc: dev, stable, bluca

01/10/2021 17:15, Bruce Richardson:
> On Fri, Oct 01, 2021 at 05:03:11PM +0200, Thomas Monjalon wrote:
> > 15/09/2021 19:36, Bruce Richardson:
> > > On FreeBSD, "find" does not support the "printf" flag, so we need to
> > > use "gfind" from the "findutils" package.
> > 
> > It is one more dependency.
> > Shouldn't we avoid it by rewritting the shell commands with loops?
> >
> Probably in the longer term, yes. If I get the chance, I'll try and rewrite
> this script, but let's keep this patch in the queue in case I don't get to
> in the 21.11 timeframe.

OK
I can help with the shell tricks if needed.



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [dpdk-dev] [dpdk-stable] [PATCH] doc/examples: fix build on FreeBSD
  2021-10-01 15:36     ` Thomas Monjalon
@ 2021-10-01 15:41       ` Bruce Richardson
  2021-11-17 10:20         ` Thomas Monjalon
  0 siblings, 1 reply; 7+ messages in thread
From: Bruce Richardson @ 2021-10-01 15:41 UTC (permalink / raw)
  To: Thomas Monjalon; +Cc: dev, stable, bluca

On Fri, Oct 01, 2021 at 05:36:51PM +0200, Thomas Monjalon wrote:
> 01/10/2021 17:15, Bruce Richardson:
> > On Fri, Oct 01, 2021 at 05:03:11PM +0200, Thomas Monjalon wrote:
> > > 15/09/2021 19:36, Bruce Richardson:
> > > > On FreeBSD, "find" does not support the "printf" flag, so we need to
> > > > use "gfind" from the "findutils" package.
> > > 
> > > It is one more dependency.
> > > Shouldn't we avoid it by rewritting the shell commands with loops?
> > >
> > Probably in the longer term, yes. If I get the chance, I'll try and rewrite
> > this script, but let's keep this patch in the queue in case I don't get to
> > in the 21.11 timeframe.
> 
> OK
> I can help with the shell tricks if needed.
> 
Well, I was actually considering a rewrite in python for two reasons:
* easy FS scans using the "walk()" function
* portability across OS's [which is the main reason for the work after all]

/Bruce

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [dpdk-dev] [dpdk-stable] [PATCH] doc/examples: fix build on FreeBSD
  2021-10-01 15:41       ` Bruce Richardson
@ 2021-11-17 10:20         ` Thomas Monjalon
  2021-12-22 15:23           ` Bruce Richardson
  0 siblings, 1 reply; 7+ messages in thread
From: Thomas Monjalon @ 2021-11-17 10:20 UTC (permalink / raw)
  To: Bruce Richardson; +Cc: dev, stable, bluca

01/10/2021 17:41, Bruce Richardson:
> On Fri, Oct 01, 2021 at 05:36:51PM +0200, Thomas Monjalon wrote:
> > 01/10/2021 17:15, Bruce Richardson:
> > > On Fri, Oct 01, 2021 at 05:03:11PM +0200, Thomas Monjalon wrote:
> > > > 15/09/2021 19:36, Bruce Richardson:
> > > > > On FreeBSD, "find" does not support the "printf" flag, so we need to
> > > > > use "gfind" from the "findutils" package.
> > > > 
> > > > It is one more dependency.
> > > > Shouldn't we avoid it by rewritting the shell commands with loops?
> > > >
> > > Probably in the longer term, yes. If I get the chance, I'll try and rewrite
> > > this script, but let's keep this patch in the queue in case I don't get to
> > > in the 21.11 timeframe.
> > 
> > OK
> > I can help with the shell tricks if needed.
> > 
> Well, I was actually considering a rewrite in python for two reasons:
> * easy FS scans using the "walk()" function
> * portability across OS's [which is the main reason for the work after all]

Applied this patch for 21.11.



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [dpdk-dev] [dpdk-stable] [PATCH] doc/examples: fix build on FreeBSD
  2021-11-17 10:20         ` Thomas Monjalon
@ 2021-12-22 15:23           ` Bruce Richardson
  0 siblings, 0 replies; 7+ messages in thread
From: Bruce Richardson @ 2021-12-22 15:23 UTC (permalink / raw)
  To: Thomas Monjalon; +Cc: dev, stable, bluca

On Wed, Nov 17, 2021 at 11:20:17AM +0100, Thomas Monjalon wrote:
> 01/10/2021 17:41, Bruce Richardson:
> > On Fri, Oct 01, 2021 at 05:36:51PM +0200, Thomas Monjalon wrote:
> > > 01/10/2021 17:15, Bruce Richardson:
> > > > On Fri, Oct 01, 2021 at 05:03:11PM +0200, Thomas Monjalon wrote:
> > > > > 15/09/2021 19:36, Bruce Richardson:
> > > > > > On FreeBSD, "find" does not support the "printf" flag, so we
> > > > > > need to use "gfind" from the "findutils" package.
> > > > > 
> > > > > It is one more dependency.  Shouldn't we avoid it by rewritting
> > > > > the shell commands with loops?
> > > > >
> > > > Probably in the longer term, yes. If I get the chance, I'll try and
> > > > rewrite this script, but let's keep this patch in the queue in case
> > > > I don't get to in the 21.11 timeframe.
> > > 
> > > OK I can help with the shell tricks if needed.
> > > 
> > Well, I was actually considering a rewrite in python for two reasons: *
> > easy FS scans using the "walk()" function * portability across OS's
> > [which is the main reason for the work after all]
> 
> Applied this patch for 21.11.
>
Following up on this thread, implemented an alternative fix for this issue
which does not use the extra findutils dependency[1]. I didn't rewrite the
script in python as was my original intent, but used basic shell commands
to work around the lack of printf support in find, leading to a simpler
fix.

/Bruce

[1] http://patches.dpdk.org/project/dpdk/patch/20211222151855.803916-1-bruce.richardson@intel.com/

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2021-12-22 15:23 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-15 17:36 [dpdk-dev] [PATCH] doc/examples: fix build on FreeBSD Bruce Richardson
2021-10-01 15:03 ` [dpdk-dev] [dpdk-stable] " Thomas Monjalon
2021-10-01 15:15   ` Bruce Richardson
2021-10-01 15:36     ` Thomas Monjalon
2021-10-01 15:41       ` Bruce Richardson
2021-11-17 10:20         ` Thomas Monjalon
2021-12-22 15:23           ` Bruce Richardson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).