DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH] test-meson-builds: add a 32-bit build
@ 2020-11-05 11:07 Bruce Richardson
  2020-11-05 11:13 ` Thomas Monjalon
                   ` (2 more replies)
  0 siblings, 3 replies; 12+ messages in thread
From: Bruce Richardson @ 2020-11-05 11:07 UTC (permalink / raw)
  To: dev; +Cc: thomas, Bruce Richardson

It's reasonably common for patches to have issues when built on 32-bits, so
to prevent this, we can add a 32-bit build (if supported) to the
"test-meson-builds.sh" script. The tricky bit is using a valid
PKG_CONFIG_LIBDIR, so for now we use two common possibilities for where that
should point to in order to get a successful build.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
---
 devtools/test-meson-builds.sh | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/devtools/test-meson-builds.sh b/devtools/test-meson-builds.sh
index a87de635a..02db73e98 100755
--- a/devtools/test-meson-builds.sh
+++ b/devtools/test-meson-builds.sh
@@ -226,6 +226,19 @@ for f in $srcdir/config/ppc/ppc* ; do
 	build build-$(basename $f | cut -d'-' -f-2) $f $use_shared
 done
 
+# test a 32-bit build
+if echo "int main(void) { return 0; }" | cc -m32 -x c - -o /dev/null 2> /dev/null ; then
+	if [ -d "/usr/lib/i386-linux-gnu" ] ; then
+		# 32-bit pkgconfig on debian/ubuntu
+		export PKG_CONFIG_LIBDIR="/usr/lib/i386-linux-gnu/pkgconfig"
+	else
+		# 32-bit pkgconfig on RHEL/fedora (lib vs lib64)
+		export PKG_CONFIG_LIBDIR="/usr/lib/pkgconfig"
+	fi
+	build build-32-bit cc -Dc_args='-m32' -Dc_link_args='-m32'
+	unset PKG_CONFIG_LIBDIR
+fi
+
 # Test installation of the x86-default target, to be used for checking
 # the sample apps build using the pkg-config file for cflags and libs
 build_path=$(readlink -f $builds_dir/build-x86-default)
-- 
2.25.1


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

* Re: [dpdk-dev] [PATCH] test-meson-builds: add a 32-bit build
  2020-11-05 11:07 [dpdk-dev] [PATCH] test-meson-builds: add a 32-bit build Bruce Richardson
@ 2020-11-05 11:13 ` Thomas Monjalon
  2020-11-05 11:21   ` Bruce Richardson
  2020-11-05 17:19   ` Bruce Richardson
  2020-11-05 17:21 ` [dpdk-dev] [PATCH v2] " Bruce Richardson
  2020-11-06 16:56 ` [dpdk-dev] [PATCH v3 1/1] devtools: test " Thomas Monjalon
  2 siblings, 2 replies; 12+ messages in thread
From: Thomas Monjalon @ 2020-11-05 11:13 UTC (permalink / raw)
  To: Bruce Richardson; +Cc: dev, david.marchand

05/11/2020 12:07, Bruce Richardson:
> It's reasonably common for patches to have issues when built on 32-bits, so
> to prevent this, we can add a 32-bit build (if supported) to the
> "test-meson-builds.sh" script. The tricky bit is using a valid
> PKG_CONFIG_LIBDIR, so for now we use two common possibilities for where that
> should point to in order to get a successful build.
> 
> Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>

Thanks we really need such test.

> +if echo "int main(void) { return 0; }" | cc -m32 -x c - -o /dev/null 2> /dev/null ; then

I think a function would be cleaner, with -m32 passed as parameter.

> +	if [ -d "/usr/lib/i386-linux-gnu" ] ; then
> +		# 32-bit pkgconfig on debian/ubuntu
> +		export PKG_CONFIG_LIBDIR="/usr/lib/i386-linux-gnu/pkgconfig"
> +	else
> +		# 32-bit pkgconfig on RHEL/fedora (lib vs lib64)
> +		export PKG_CONFIG_LIBDIR="/usr/lib/pkgconfig"

It is /usr/lib32 on my Arch Linux.

I would prefer avoiding export,
by assigning a local variable and use it below:

PKG_CONFIG_LIBDIR=libdir32 build build-32-bit ...

> +	fi
> +	build build-32-bit cc -Dc_args='-m32' -Dc_link_args='-m32'

Or just "build-32" as directory name.

> +	unset PKG_CONFIG_LIBDIR

No need of unset if not using export above.

> +fi




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

* Re: [dpdk-dev] [PATCH] test-meson-builds: add a 32-bit build
  2020-11-05 11:13 ` Thomas Monjalon
@ 2020-11-05 11:21   ` Bruce Richardson
  2020-11-05 12:56     ` Thomas Monjalon
  2020-11-05 17:19   ` Bruce Richardson
  1 sibling, 1 reply; 12+ messages in thread
From: Bruce Richardson @ 2020-11-05 11:21 UTC (permalink / raw)
  To: Thomas Monjalon; +Cc: dev, david.marchand

On Thu, Nov 05, 2020 at 12:13:37PM +0100, Thomas Monjalon wrote:
> 05/11/2020 12:07, Bruce Richardson:
> > It's reasonably common for patches to have issues when built on 32-bits, so
> > to prevent this, we can add a 32-bit build (if supported) to the
> > "test-meson-builds.sh" script. The tricky bit is using a valid
> > PKG_CONFIG_LIBDIR, so for now we use two common possibilities for where that
> > should point to in order to get a successful build.
> > 
> > Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
> 
> Thanks we really need such test.
> 
> > +if echo "int main(void) { return 0; }" | cc -m32 -x c - -o /dev/null 2> /dev/null ; then
> 
> I think a function would be cleaner, with -m32 passed as parameter.
> 
> > +	if [ -d "/usr/lib/i386-linux-gnu" ] ; then
> > +		# 32-bit pkgconfig on debian/ubuntu
> > +		export PKG_CONFIG_LIBDIR="/usr/lib/i386-linux-gnu/pkgconfig"
> > +	else
> > +		# 32-bit pkgconfig on RHEL/fedora (lib vs lib64)
> > +		export PKG_CONFIG_LIBDIR="/usr/lib/pkgconfig"
> 
> It is /usr/lib32 on my Arch Linux.
> 
> I would prefer avoiding export,
> by assigning a local variable and use it below:
> 
> PKG_CONFIG_LIBDIR=libdir32 build build-32-bit ...
> 
> > +	fi
> > +	build build-32-bit cc -Dc_args='-m32' -Dc_link_args='-m32'
> 
> Or just "build-32" as directory name.
> 
> > +	unset PKG_CONFIG_LIBDIR
> 
> No need of unset if not using export above.
> 
> > +fi

Thanks for the quick review, I'll put together a v2 based on this feedback.

/Bruce

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

* Re: [dpdk-dev] [PATCH] test-meson-builds: add a 32-bit build
  2020-11-05 11:21   ` Bruce Richardson
@ 2020-11-05 12:56     ` Thomas Monjalon
  0 siblings, 0 replies; 12+ messages in thread
From: Thomas Monjalon @ 2020-11-05 12:56 UTC (permalink / raw)
  To: Bruce Richardson; +Cc: dev, david.marchand

05/11/2020 12:21, Bruce Richardson:
> On Thu, Nov 05, 2020 at 12:13:37PM +0100, Thomas Monjalon wrote:
> > 05/11/2020 12:07, Bruce Richardson:
> > > It's reasonably common for patches to have issues when built on 32-bits, so
> > > to prevent this, we can add a 32-bit build (if supported) to the
> > > "test-meson-builds.sh" script. The tricky bit is using a valid
> > > PKG_CONFIG_LIBDIR, so for now we use two common possibilities for where that
> > > should point to in order to get a successful build.
> > > 
> > > Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
> > 
> > Thanks we really need such test.
> > 
> > > +if echo "int main(void) { return 0; }" | cc -m32 -x c - -o /dev/null 2> /dev/null ; then
> > 
> > I think a function would be cleaner, with -m32 passed as parameter.
> > 
> > > +	if [ -d "/usr/lib/i386-linux-gnu" ] ; then
> > > +		# 32-bit pkgconfig on debian/ubuntu
> > > +		export PKG_CONFIG_LIBDIR="/usr/lib/i386-linux-gnu/pkgconfig"
> > > +	else
> > > +		# 32-bit pkgconfig on RHEL/fedora (lib vs lib64)
> > > +		export PKG_CONFIG_LIBDIR="/usr/lib/pkgconfig"
> > 
> > It is /usr/lib32 on my Arch Linux.
> > 
> > I would prefer avoiding export,
> > by assigning a local variable and use it below:
> > 
> > PKG_CONFIG_LIBDIR=libdir32 build build-32-bit ...
> > 
> > > +	fi
> > > +	build build-32-bit cc -Dc_args='-m32' -Dc_link_args='-m32'
> > 
> > Or just "build-32" as directory name.
> > 
> > > +	unset PKG_CONFIG_LIBDIR
> > 
> > No need of unset if not using export above.
> > 
> > > +fi
> 
> Thanks for the quick review, I'll put together a v2 based on this feedback.

One more thing, the variable DPDK_TARGET should be set
accordingly so the right configuration can be loaded.
By default, I believe it will be x86_64-pc-linux-gnu.
We need something with "32" or i686 on x86 so we can adjust
the paths to the dependencies built for 32-bit.




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

* Re: [dpdk-dev] [PATCH] test-meson-builds: add a 32-bit build
  2020-11-05 11:13 ` Thomas Monjalon
  2020-11-05 11:21   ` Bruce Richardson
@ 2020-11-05 17:19   ` Bruce Richardson
  1 sibling, 0 replies; 12+ messages in thread
From: Bruce Richardson @ 2020-11-05 17:19 UTC (permalink / raw)
  To: Thomas Monjalon; +Cc: dev, david.marchand

On Thu, Nov 05, 2020 at 12:13:37PM +0100, Thomas Monjalon wrote:
> 05/11/2020 12:07, Bruce Richardson:
> > It's reasonably common for patches to have issues when built on 32-bits, so
> > to prevent this, we can add a 32-bit build (if supported) to the
> > "test-meson-builds.sh" script. The tricky bit is using a valid
> > PKG_CONFIG_LIBDIR, so for now we use two common possibilities for where that
> > should point to in order to get a successful build.
> > 
> > Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
> 
> Thanks we really need such test.
> 
> > +if echo "int main(void) { return 0; }" | cc -m32 -x c - -o /dev/null 2> /dev/null ; then
> 
> I think a function would be cleaner, with -m32 passed as parameter.
> 
> > +	if [ -d "/usr/lib/i386-linux-gnu" ] ; then
> > +		# 32-bit pkgconfig on debian/ubuntu
> > +		export PKG_CONFIG_LIBDIR="/usr/lib/i386-linux-gnu/pkgconfig"
> > +	else
> > +		# 32-bit pkgconfig on RHEL/fedora (lib vs lib64)
> > +		export PKG_CONFIG_LIBDIR="/usr/lib/pkgconfig"
> 
> It is /usr/lib32 on my Arch Linux.
> 
> I would prefer avoiding export,
> by assigning a local variable and use it below:
> 
> PKG_CONFIG_LIBDIR=libdir32 build build-32-bit ...
> 

Not having the variable exported means that it does not seem to be passed
through to the meson (and other) subprocesses. Therefore keeping the export
as is in V2.

/Bruce

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

* [dpdk-dev] [PATCH v2] test-meson-builds: add a 32-bit build
  2020-11-05 11:07 [dpdk-dev] [PATCH] test-meson-builds: add a 32-bit build Bruce Richardson
  2020-11-05 11:13 ` Thomas Monjalon
@ 2020-11-05 17:21 ` Bruce Richardson
  2020-11-06 12:40   ` Thomas Monjalon
  2020-11-06 16:56 ` [dpdk-dev] [PATCH v3 1/1] devtools: test " Thomas Monjalon
  2 siblings, 1 reply; 12+ messages in thread
From: Bruce Richardson @ 2020-11-05 17:21 UTC (permalink / raw)
  To: dev; +Cc: thomas, david.marchand, Bruce Richardson

It's reasonably common for patches to have issues when built on 32-bits, so
to prevent this, we can add a 32-bit build (if supported) to the
"test-meson-builds.sh" script. The tricky bit is using a valid
PKG_CONFIG_LIBDIR, so for now we use two common possibilities for where that
should point to in order to get a successful build.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
---
V2: added separate flag checking function
    added override of the DPDK_TARGET value
    added /usr/lib32 as possible 32-bit libdir
---
 devtools/test-meson-builds.sh | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/devtools/test-meson-builds.sh b/devtools/test-meson-builds.sh
index a87de635a2..47786dcd69 100755
--- a/devtools/test-meson-builds.sh
+++ b/devtools/test-meson-builds.sh
@@ -43,6 +43,11 @@ default_cppflags=$CPPFLAGS
 default_cflags=$CFLAGS
 default_ldflags=$LDFLAGS
 
+check_cc_flags () # <flag to check> <flag2> ...
+{
+	echo "int main(void) { return 0; }" | cc $@ -x c - -o /dev/null 2> /dev/null
+}
+
 load_env () # <target compiler>
 {
 	targetcc=$1
@@ -57,6 +62,10 @@ load_env () # <target compiler>
 	else # toolchain not yet in PATH: its name should be enough
 		DPDK_TARGET=$targetcc
 	fi
+	if [ -n "$DPDK_TARGET_OVERRIDE" ] ; then
+		DPDK_TARGET=$DPDK_TARGET_OVERRIDE
+	fi
+	echo "Using DPDK_TARGET $DPDK_TARGET"
 	# config input: $DPDK_TARGET
 	. $srcdir/devtools/load-devel-config
 	# config output: $DPDK_MESON_OPTIONS, $PATH, $PKG_CONFIG_PATH, etc
@@ -226,6 +235,23 @@ for f in $srcdir/config/ppc/ppc* ; do
 	build build-$(basename $f | cut -d'-' -f-2) $f $use_shared
 done
 
+# test a 32-bit build
+if check_cc_flags '-m32' ; then
+	if [ -d "/usr/lib/i386-linux-gnu" ] ; then
+		# 32-bit pkgconfig on debian/ubuntu
+		export PKG_CONFIG_LIBDIR="/usr/lib/i386-linux-gnu/pkgconfig"
+	elif [ -d "/usr/lib32" ] ; then
+		# 32-bit pkgconfig on arch
+		export PKG_CONFIG_LIBDIR="/usr/lib32/pkgconfig"
+	else
+		# 32-bit pkgconfig on RHEL/fedora (lib vs lib64)
+		export PKG_CONFIG_LIBDIR="/usr/lib/pkgconfig"
+	fi
+	DPDK_TARGET_OVERRIDE="i386-pc-linux-gnu" \
+		build build-32b cc -Dc_args='-m32' -Dc_link_args='-m32'
+	unset PKG_CONFIG_LIBDIR
+fi
+
 # Test installation of the x86-default target, to be used for checking
 # the sample apps build using the pkg-config file for cflags and libs
 build_path=$(readlink -f $builds_dir/build-x86-default)
-- 
2.25.1


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

* Re: [dpdk-dev] [PATCH v2] test-meson-builds: add a 32-bit build
  2020-11-05 17:21 ` [dpdk-dev] [PATCH v2] " Bruce Richardson
@ 2020-11-06 12:40   ` Thomas Monjalon
  2020-11-06 14:08     ` Bruce Richardson
  0 siblings, 1 reply; 12+ messages in thread
From: Thomas Monjalon @ 2020-11-06 12:40 UTC (permalink / raw)
  To: Bruce Richardson; +Cc: dev, david.marchand

05/11/2020 18:21, Bruce Richardson:
> +	DPDK_TARGET_OVERRIDE="i386-pc-linux-gnu" \
> +		build build-32b cc -Dc_args='-m32' -Dc_link_args='-m32'

Surprinsingly, DPDK_TARGET_OVERRIDE is set in the global context,
so it seems unset is required.

I will send a v3 with other details changed. 




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

* Re: [dpdk-dev] [PATCH v2] test-meson-builds: add a 32-bit build
  2020-11-06 12:40   ` Thomas Monjalon
@ 2020-11-06 14:08     ` Bruce Richardson
  0 siblings, 0 replies; 12+ messages in thread
From: Bruce Richardson @ 2020-11-06 14:08 UTC (permalink / raw)
  To: Thomas Monjalon; +Cc: dev, david.marchand

On Fri, Nov 06, 2020 at 01:40:54PM +0100, Thomas Monjalon wrote:
> 05/11/2020 18:21, Bruce Richardson:
> > +	DPDK_TARGET_OVERRIDE="i386-pc-linux-gnu" \
> > +		build build-32b cc -Dc_args='-m32' -Dc_link_args='-m32'
> 
> Surprinsingly, DPDK_TARGET_OVERRIDE is set in the global context,
> so it seems unset is required.
> 
> I will send a v3 with other details changed. 
> 
Ok, thanks.

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

* [dpdk-dev] [PATCH v3 1/1] devtools: test 32-bit build
  2020-11-05 11:07 [dpdk-dev] [PATCH] test-meson-builds: add a 32-bit build Bruce Richardson
  2020-11-05 11:13 ` Thomas Monjalon
  2020-11-05 17:21 ` [dpdk-dev] [PATCH v2] " Bruce Richardson
@ 2020-11-06 16:56 ` Thomas Monjalon
  2020-11-06 17:01   ` Bruce Richardson
  2 siblings, 1 reply; 12+ messages in thread
From: Thomas Monjalon @ 2020-11-06 16:56 UTC (permalink / raw)
  To: dev; +Cc: david.marchand, Bruce Richardson

From: Bruce Richardson <bruce.richardson@intel.com>

It's reasonably common for patches to have issues when built on 32-bits, so
to prevent this, we can add a 32-bit build (if supported) to the
"test-meson-builds.sh" script. The tricky bit is using a valid
PKG_CONFIG_LIBDIR, so for now we use two common possibilities for where that
should point to in order to get a successful build.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
---
v3: unset override
    move and rename override
    split command in check_cc_flags
    use check_cc_flags for x86 default build
v2: added separate flag checking function
    added override of the DPDK_TARGET value
    added /usr/lib32 as possible 32-bit libdir
---
 devtools/test-meson-builds.sh | 32 +++++++++++++++++++++++++++++---
 1 file changed, 29 insertions(+), 3 deletions(-)

diff --git a/devtools/test-meson-builds.sh b/devtools/test-meson-builds.sh
index a87de635a2..ac76c2184b 100755
--- a/devtools/test-meson-builds.sh
+++ b/devtools/test-meson-builds.sh
@@ -43,6 +43,12 @@ default_cppflags=$CPPFLAGS
 default_cflags=$CFLAGS
 default_ldflags=$LDFLAGS
 
+check_cc_flags () # <flag to check> <flag2> ...
+{
+	echo 'int main(void) { return 0; }' |
+	cc $@ -x c - -o /dev/null 2> /dev/null
+}
+
 load_env () # <target compiler>
 {
 	targetcc=$1
@@ -52,11 +58,14 @@ load_env () # <target compiler>
 	export CFLAGS=$default_cflags
 	export LDFLAGS=$default_ldflags
 	unset DPDK_MESON_OPTIONS
-	if command -v $targetcc >/dev/null 2>&1 ; then
+	if [ -n "$target_override" ] ; then
+		DPDK_TARGET=$target_override
+	elif command -v $targetcc >/dev/null 2>&1 ; then
 		DPDK_TARGET=$($targetcc -v 2>&1 | sed -n 's,^Target: ,,p')
 	else # toolchain not yet in PATH: its name should be enough
 		DPDK_TARGET=$targetcc
 	fi
+	echo "Using DPDK_TARGET $DPDK_TARGET"
 	# config input: $DPDK_TARGET
 	. $srcdir/devtools/load-devel-config
 	# config output: $DPDK_MESON_OPTIONS, $PATH, $PKG_CONFIG_PATH, etc
@@ -200,12 +209,29 @@ done
 # Set the install path for libraries to "lib" explicitly to prevent problems
 # with pkg-config prefixes if installed in "lib/x86_64-linux-gnu" later.
 default_machine='nehalem'
-ok=$(cc -march=$default_machine -E - < /dev/null > /dev/null 2>&1 || echo false)
-if [ "$ok" = "false" ] ; then
+if ! check_cc_flags "-march=$default_machine" ; then
 	default_machine='corei7'
 fi
 build build-x86-default cc -Dlibdir=lib -Dmachine=$default_machine $use_shared
 
+# 32-bit with default compiler
+if check_cc_flags '-m32' ; then
+	if [ -d '/usr/lib/i386-linux-gnu' ] ; then
+		# 32-bit pkgconfig on Debian/Ubuntu
+		export PKG_CONFIG_LIBDIR='/usr/lib/i386-linux-gnu/pkgconfig'
+	elif [ -d '/usr/lib32' ] ; then
+		# 32-bit pkgconfig on Arch
+		export PKG_CONFIG_LIBDIR='/usr/lib32/pkgconfig'
+	else
+		# 32-bit pkgconfig on RHEL/Fedora (lib vs lib64)
+		export PKG_CONFIG_LIBDIR='/usr/lib/pkgconfig'
+	fi
+	target_override='i386-pc-linux-gnu'
+	build build-32b cc -Dc_args='-m32' -Dc_link_args='-m32'
+	target_override=
+	unset PKG_CONFIG_LIBDIR
+fi
+
 # x86 MinGW
 build build-x86-mingw $srcdir/config/x86/cross-mingw -Dexamples=helloworld
 
-- 
2.28.0


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

* Re: [dpdk-dev] [PATCH v3 1/1] devtools: test 32-bit build
  2020-11-06 16:56 ` [dpdk-dev] [PATCH v3 1/1] devtools: test " Thomas Monjalon
@ 2020-11-06 17:01   ` Bruce Richardson
  2020-11-06 17:11     ` Thomas Monjalon
  0 siblings, 1 reply; 12+ messages in thread
From: Bruce Richardson @ 2020-11-06 17:01 UTC (permalink / raw)
  To: Thomas Monjalon; +Cc: dev, david.marchand

On Fri, Nov 06, 2020 at 05:56:10PM +0100, Thomas Monjalon wrote:
> From: Bruce Richardson <bruce.richardson@intel.com>
> 
> It's reasonably common for patches to have issues when built on 32-bits, so
> to prevent this, we can add a 32-bit build (if supported) to the
> "test-meson-builds.sh" script. The tricky bit is using a valid
> PKG_CONFIG_LIBDIR, so for now we use two common possibilities for where that
> should point to in order to get a successful build.
> 
> Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
> Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
> ---
> v3: unset override
>     move and rename override
>     split command in check_cc_flags
>     use check_cc_flags for x86 default build
> v2: added separate flag checking function
>     added override of the DPDK_TARGET value
>     added /usr/lib32 as possible 32-bit libdir
> ---
>  devtools/test-meson-builds.sh | 32 +++++++++++++++++++++++++++++---
>  1 file changed, 29 insertions(+), 3 deletions(-)
> 
> diff --git a/devtools/test-meson-builds.sh b/devtools/test-meson-builds.sh
> index a87de635a2..ac76c2184b 100755
> --- a/devtools/test-meson-builds.sh
> +++ b/devtools/test-meson-builds.sh
> @@ -43,6 +43,12 @@ default_cppflags=$CPPFLAGS
>  default_cflags=$CFLAGS
>  default_ldflags=$LDFLAGS
>  
> +check_cc_flags () # <flag to check> <flag2> ...
> +{
> +	echo 'int main(void) { return 0; }' |
> +	cc $@ -x c - -o /dev/null 2> /dev/null

Minor nit, as a continuation of the previous line, I think this should be
further indented.

Otherwise all looks good to me. Thanks for the updated changes.

/Bruce

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

* Re: [dpdk-dev] [PATCH v3 1/1] devtools: test 32-bit build
  2020-11-06 17:01   ` Bruce Richardson
@ 2020-11-06 17:11     ` Thomas Monjalon
  2020-11-06 17:30       ` Thomas Monjalon
  0 siblings, 1 reply; 12+ messages in thread
From: Thomas Monjalon @ 2020-11-06 17:11 UTC (permalink / raw)
  To: Bruce Richardson; +Cc: dev, david.marchand

06/11/2020 18:01, Bruce Richardson:
> On Fri, Nov 06, 2020 at 05:56:10PM +0100, Thomas Monjalon wrote:
> > From: Bruce Richardson <bruce.richardson@intel.com>
> > 
> > It's reasonably common for patches to have issues when built on 32-bits, so
> > to prevent this, we can add a 32-bit build (if supported) to the
> > "test-meson-builds.sh" script. The tricky bit is using a valid
> > PKG_CONFIG_LIBDIR, so for now we use two common possibilities for where that
> > should point to in order to get a successful build.
> > 
> > Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
> > Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
> > ---
> > v3: unset override
> >     move and rename override
> >     split command in check_cc_flags
> >     use check_cc_flags for x86 default build
> > v2: added separate flag checking function
> >     added override of the DPDK_TARGET value
> >     added /usr/lib32 as possible 32-bit libdir
> > ---
> >  devtools/test-meson-builds.sh | 32 +++++++++++++++++++++++++++++---
> >  1 file changed, 29 insertions(+), 3 deletions(-)
> > 
> > diff --git a/devtools/test-meson-builds.sh b/devtools/test-meson-builds.sh
> > index a87de635a2..ac76c2184b 100755
> > --- a/devtools/test-meson-builds.sh
> > +++ b/devtools/test-meson-builds.sh
> > @@ -43,6 +43,12 @@ default_cppflags=$CPPFLAGS
> >  default_cflags=$CFLAGS
> >  default_ldflags=$LDFLAGS
> >  
> > +check_cc_flags () # <flag to check> <flag2> ...
> > +{
> > +	echo 'int main(void) { return 0; }' |
> > +	cc $@ -x c - -o /dev/null 2> /dev/null
> 
> Minor nit, as a continuation of the previous line, I think this should be
> further indented.

In general I keep piped commands at the same level.
This is a matter of taste,
but I can see other piped commands indented in this file,
so I will indent this one as well.

> Otherwise all looks good to me. Thanks for the updated changes.

Then I will merge it with above change. I guess we won't get more reviews.



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

* Re: [dpdk-dev] [PATCH v3 1/1] devtools: test 32-bit build
  2020-11-06 17:11     ` Thomas Monjalon
@ 2020-11-06 17:30       ` Thomas Monjalon
  0 siblings, 0 replies; 12+ messages in thread
From: Thomas Monjalon @ 2020-11-06 17:30 UTC (permalink / raw)
  To: Bruce Richardson; +Cc: dev, david.marchand

06/11/2020 18:11, Thomas Monjalon:
> 06/11/2020 18:01, Bruce Richardson:
> > On Fri, Nov 06, 2020 at 05:56:10PM +0100, Thomas Monjalon wrote:
> > > From: Bruce Richardson <bruce.richardson@intel.com>
> > > 
> > > It's reasonably common for patches to have issues when built on 32-bits, so
> > > to prevent this, we can add a 32-bit build (if supported) to the
> > > "test-meson-builds.sh" script. The tricky bit is using a valid
> > > PKG_CONFIG_LIBDIR, so for now we use two common possibilities for where that
> > > should point to in order to get a successful build.
> > > 
> > > Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
> > > Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
> > > ---
> > > v3: unset override
> > >     move and rename override
> > >     split command in check_cc_flags
> > >     use check_cc_flags for x86 default build
> > > v2: added separate flag checking function
> > >     added override of the DPDK_TARGET value
> > >     added /usr/lib32 as possible 32-bit libdir
> > > ---
> > >  devtools/test-meson-builds.sh | 32 +++++++++++++++++++++++++++++---
> > >  1 file changed, 29 insertions(+), 3 deletions(-)
> > > 
> > > diff --git a/devtools/test-meson-builds.sh b/devtools/test-meson-builds.sh
> > > index a87de635a2..ac76c2184b 100755
> > > --- a/devtools/test-meson-builds.sh
> > > +++ b/devtools/test-meson-builds.sh
> > > @@ -43,6 +43,12 @@ default_cppflags=$CPPFLAGS
> > >  default_cflags=$CFLAGS
> > >  default_ldflags=$LDFLAGS
> > >  
> > > +check_cc_flags () # <flag to check> <flag2> ...
> > > +{
> > > +	echo 'int main(void) { return 0; }' |
> > > +	cc $@ -x c - -o /dev/null 2> /dev/null
> > 
> > Minor nit, as a continuation of the previous line, I think this should be
> > further indented.
> 
> In general I keep piped commands at the same level.
> This is a matter of taste,
> but I can see other piped commands indented in this file,
> so I will indent this one as well.
> 
> > Otherwise all looks good to me. Thanks for the updated changes.
> 
> Then I will merge it with above change. I guess we won't get more reviews.

Applied



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

end of thread, other threads:[~2020-11-06 17:30 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-11-05 11:07 [dpdk-dev] [PATCH] test-meson-builds: add a 32-bit build Bruce Richardson
2020-11-05 11:13 ` Thomas Monjalon
2020-11-05 11:21   ` Bruce Richardson
2020-11-05 12:56     ` Thomas Monjalon
2020-11-05 17:19   ` Bruce Richardson
2020-11-05 17:21 ` [dpdk-dev] [PATCH v2] " Bruce Richardson
2020-11-06 12:40   ` Thomas Monjalon
2020-11-06 14:08     ` Bruce Richardson
2020-11-06 16:56 ` [dpdk-dev] [PATCH v3 1/1] devtools: test " Thomas Monjalon
2020-11-06 17:01   ` Bruce Richardson
2020-11-06 17:11     ` Thomas Monjalon
2020-11-06 17:30       ` Thomas Monjalon

DPDK patches and discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://inbox.dpdk.org/dev/0 dev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 dev dev/ https://inbox.dpdk.org/dev \
		dev@dpdk.org
	public-inbox-index dev

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://inbox.dpdk.org/inbox.dpdk.dev


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git