* [PATCH 1/2] ci: switch to Ubuntu 20.04
@ 2022-04-26 7:18 David Marchand
2022-04-26 7:18 ` [PATCH 2/2] ci: add mingw cross compilation in GHA David Marchand
` (3 more replies)
0 siblings, 4 replies; 10+ messages in thread
From: David Marchand @ 2022-04-26 7:18 UTC (permalink / raw)
To: dev
Cc: Aaron Conole, Michael Santana, Ruifeng Wang, Jan Viktorin,
Bruce Richardson, David Christensen
Ubuntu 18.04 is now rather old.
Besides, other entities in our CI are also testing this distribution.
Switch to a newer Ubuntu release and benefit from more recent
tool(chain)s: for example, net/cnxk now builds fine and can be
re-enabled.
Signed-off-by: David Marchand <david.marchand@redhat.com>
---
.ci/linux-build.sh | 7 ++----
.github/workflows/build.yml | 22 +++++++++----------
config/arm/arm64_armv8_linux_clang_ubuntu2004 | 1 +
.../ppc/ppc64le-power8-linux-gcc-ubuntu2004 | 1 +
4 files changed, 14 insertions(+), 17 deletions(-)
create mode 120000 config/arm/arm64_armv8_linux_clang_ubuntu2004
create mode 120000 config/ppc/ppc64le-power8-linux-gcc-ubuntu2004
diff --git a/.ci/linux-build.sh b/.ci/linux-build.sh
index 6a937611fa..30119b61ba 100755
--- a/.ci/linux-build.sh
+++ b/.ci/linux-build.sh
@@ -38,18 +38,15 @@ catch_coredump() {
}
if [ "$AARCH64" = "true" ]; then
- # Note: common/cnxk is disabled for Ubuntu 18.04
- # https://bugs.dpdk.org/show_bug.cgi?id=697
- OPTS="$OPTS -Ddisable_drivers=common/cnxk"
if [ "${CC%%clang}" != "$CC" ]; then
- OPTS="$OPTS --cross-file config/arm/arm64_armv8_linux_clang_ubuntu1804"
+ OPTS="$OPTS --cross-file config/arm/arm64_armv8_linux_clang_ubuntu2004"
else
OPTS="$OPTS --cross-file config/arm/arm64_armv8_linux_gcc"
fi
fi
if [ "$PPC64LE" = "true" ]; then
- OPTS="$OPTS --cross-file config/ppc/ppc64le-power8-linux-gcc-ubuntu1804"
+ OPTS="$OPTS --cross-file config/ppc/ppc64le-power8-linux-gcc-ubuntu2004"
fi
if [ "$BUILD_DOCS" = "true" ]; then
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 22daaabb91..812aa7055d 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -30,43 +30,41 @@ jobs:
fail-fast: false
matrix:
config:
- - os: ubuntu-18.04
+ - os: ubuntu-20.04
compiler: gcc
library: static
- - os: ubuntu-18.04
+ - os: ubuntu-20.04
compiler: gcc
library: shared
mini: mini
- - os: ubuntu-18.04
+ - os: ubuntu-20.04
compiler: gcc
library: shared
checks: abi+doc+tests
- - os: ubuntu-18.04
+ - os: ubuntu-20.04
compiler: clang
library: static
- - os: ubuntu-18.04
+ - os: ubuntu-20.04
compiler: clang
library: shared
checks: doc+tests
- - os: ubuntu-18.04
+ - os: ubuntu-20.04
compiler: gcc
library: static
cross: i386
- # Note: common/cnxk is disabled for Ubuntu 18.04
- # https://bugs.dpdk.org/show_bug.cgi?id=697
- - os: ubuntu-18.04
+ - os: ubuntu-20.04
compiler: gcc
library: static
cross: aarch64
- - os: ubuntu-18.04
+ - os: ubuntu-20.04
compiler: gcc
library: shared
cross: aarch64
- - os: ubuntu-18.04
+ - os: ubuntu-20.04
compiler: gcc
library: static
cross: ppc64le
- - os: ubuntu-18.04
+ - os: ubuntu-20.04
compiler: gcc
library: shared
cross: ppc64le
diff --git a/config/arm/arm64_armv8_linux_clang_ubuntu2004 b/config/arm/arm64_armv8_linux_clang_ubuntu2004
new file mode 120000
index 0000000000..01f5b7643e
--- /dev/null
+++ b/config/arm/arm64_armv8_linux_clang_ubuntu2004
@@ -0,0 +1 @@
+arm64_armv8_linux_clang_ubuntu1804
\ No newline at end of file
diff --git a/config/ppc/ppc64le-power8-linux-gcc-ubuntu2004 b/config/ppc/ppc64le-power8-linux-gcc-ubuntu2004
new file mode 120000
index 0000000000..9d6139a19b
--- /dev/null
+++ b/config/ppc/ppc64le-power8-linux-gcc-ubuntu2004
@@ -0,0 +1 @@
+ppc64le-power8-linux-gcc-ubuntu1804
\ No newline at end of file
--
2.23.0
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH 2/2] ci: add mingw cross compilation in GHA
2022-04-26 7:18 [PATCH 1/2] ci: switch to Ubuntu 20.04 David Marchand
@ 2022-04-26 7:18 ` David Marchand
2022-04-26 15:07 ` Aaron Conole
2022-04-26 9:14 ` [PATCH 1/2] ci: switch to Ubuntu 20.04 Ruifeng Wang
` (2 subsequent siblings)
3 siblings, 1 reply; 10+ messages in thread
From: David Marchand @ 2022-04-26 7:18 UTC (permalink / raw)
To: dev; +Cc: Aaron Conole, Michael Santana
Add mingw cross compilation in our public CI so that users with their
own github repository have a first level of checks for Windows compilation
before submitting to the mailing list.
This does not replace our better checks in other entities of the CI.
Only the helloworld example is compiled (same as what is tested in
test-meson-builds.sh).
Note: the mingw cross compilation toolchain (version 5.0) in Ubuntu
18.04 was broken (missing a ENOMSG definition).
Signed-off-by: David Marchand <david.marchand@redhat.com>
---
.ci/linux-build.sh | 22 +++++++++++++++++-----
.github/workflows/build.yml | 8 ++++++++
2 files changed, 25 insertions(+), 5 deletions(-)
diff --git a/.ci/linux-build.sh b/.ci/linux-build.sh
index 30119b61ba..06dd20772d 100755
--- a/.ci/linux-build.sh
+++ b/.ci/linux-build.sh
@@ -37,16 +37,26 @@ catch_coredump() {
return 1
}
+cross_file=
+
if [ "$AARCH64" = "true" ]; then
if [ "${CC%%clang}" != "$CC" ]; then
- OPTS="$OPTS --cross-file config/arm/arm64_armv8_linux_clang_ubuntu2004"
+ cross_file=config/arm/arm64_armv8_linux_clang_ubuntu2004
else
- OPTS="$OPTS --cross-file config/arm/arm64_armv8_linux_gcc"
+ cross_file=config/arm/arm64_armv8_linux_gcc
fi
fi
+if [ "$MINGW" = "true" ]; then
+ cross_file=config/x86/cross-mingw
+fi
+
if [ "$PPC64LE" = "true" ]; then
- OPTS="$OPTS --cross-file config/ppc/ppc64le-power8-linux-gcc-ubuntu2004"
+ cross_file=config/ppc/ppc64le-power8-linux-gcc-ubuntu2004
+fi
+
+if [ -n "$cross_file" ]; then
+ OPTS="$OPTS --cross-file $cross_file"
fi
if [ "$BUILD_DOCS" = "true" ]; then
@@ -59,7 +69,9 @@ if [ "$BUILD_32BIT" = "true" ]; then
export PKG_CONFIG_LIBDIR="/usr/lib32/pkgconfig"
fi
-if [ "$DEF_LIB" = "static" ]; then
+if [ "$MINGW" = "true" ]; then
+ OPTS="$OPTS -Dexamples=helloworld"
+elif [ "$DEF_LIB" = "static" ]; then
OPTS="$OPTS -Dexamples=l2fwd,l3fwd"
else
OPTS="$OPTS -Dexamples=all"
@@ -76,7 +88,7 @@ fi
meson build --werror $OPTS
ninja -C build
-if [ "$AARCH64" != "true" ] && [ "$PPC64LE" != "true" ]; then
+if [ -z "$cross_file" ]; then
failed=
configure_coredump
devtools/test-null.sh || failed="true"
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 812aa7055d..e2f94d786b 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -21,6 +21,7 @@ jobs:
CC: ccache ${{ matrix.config.compiler }}
DEF_LIB: ${{ matrix.config.library }}
LIBABIGAIL_VERSION: libabigail-1.8
+ MINGW: ${{ matrix.config.cross == 'mingw' }}
MINI: ${{ matrix.config.mini != '' }}
PPC64LE: ${{ matrix.config.cross == 'ppc64le' }}
REF_GIT_TAG: v22.03
@@ -52,6 +53,10 @@ jobs:
compiler: gcc
library: static
cross: i386
+ - os: ubuntu-20.04
+ compiler: gcc
+ library: static
+ cross: mingw
- os: ubuntu-20.04
compiler: gcc
library: static
@@ -119,6 +124,9 @@ jobs:
if: env.AARCH64 == 'true'
run: sudo apt install -y gcc-aarch64-linux-gnu libc6-dev-arm64-cross
pkg-config-aarch64-linux-gnu
+ - name: Install mingw cross compiling packages
+ if: env.MINGW == 'true'
+ run: sudo apt install -y mingw-w64 mingw-w64-tools
- name: Install ppc64le cross compiling packages
if: env.PPC64LE == 'true'
run: sudo apt install -y gcc-powerpc64le-linux-gnu libc6-dev-ppc64el-cross
--
2.23.0
^ permalink raw reply [flat|nested] 10+ messages in thread
* RE: [PATCH 1/2] ci: switch to Ubuntu 20.04
2022-04-26 7:18 [PATCH 1/2] ci: switch to Ubuntu 20.04 David Marchand
2022-04-26 7:18 ` [PATCH 2/2] ci: add mingw cross compilation in GHA David Marchand
@ 2022-04-26 9:14 ` Ruifeng Wang
2022-04-28 12:28 ` David Marchand
2022-04-26 15:06 ` Aaron Conole
2022-05-06 11:57 ` [PATCH v2 " David Marchand
3 siblings, 1 reply; 10+ messages in thread
From: Ruifeng Wang @ 2022-04-26 9:14 UTC (permalink / raw)
To: David Marchand, dev
Cc: Aaron Conole, Michael Santana, Jan Viktorin, Bruce Richardson,
David Christensen, Juraj Linkeš,
nd
> -----Original Message-----
> From: David Marchand <david.marchand@redhat.com>
> Sent: Tuesday, April 26, 2022 3:18 PM
> To: dev@dpdk.org
> Cc: Aaron Conole <aconole@redhat.com>; Michael Santana
> <maicolgabriel@hotmail.com>; Ruifeng Wang <Ruifeng.Wang@arm.com>;
> Jan Viktorin <viktorin@rehivetech.com>; Bruce Richardson
> <bruce.richardson@intel.com>; David Christensen <drc@linux.vnet.ibm.com>
> Subject: [PATCH 1/2] ci: switch to Ubuntu 20.04
>
> Ubuntu 18.04 is now rather old.
> Besides, other entities in our CI are also testing this distribution.
>
> Switch to a newer Ubuntu release and benefit from more recent
> tool(chain)s: for example, net/cnxk now builds fine and can be re-enabled.
>
> Signed-off-by: David Marchand <david.marchand@redhat.com>
> ---
<snip>
> diff --git a/config/arm/arm64_armv8_linux_clang_ubuntu2004
> b/config/arm/arm64_armv8_linux_clang_ubuntu2004
> new file mode 120000
> index 0000000000..01f5b7643e
> --- /dev/null
> +++ b/config/arm/arm64_armv8_linux_clang_ubuntu2004
How about naming it without '2004'?
It is a link to ubuntu1804 crossfile because distribution dependent paths in the file doesn't change. And I believe the consistency will be kept across distribution releases.
So we can use a file name without distribution release number for the latest/default Ubuntu environment.
This removes the need for a new crossfile for each Ubuntu LTS release.
Thanks.
> @@ -0,0 +1 @@
> +arm64_armv8_linux_clang_ubuntu1804
> \ No newline at end of file
> diff --git a/config/ppc/ppc64le-power8-linux-gcc-ubuntu2004
> b/config/ppc/ppc64le-power8-linux-gcc-ubuntu2004
> new file mode 120000
> index 0000000000..9d6139a19b
> --- /dev/null
> +++ b/config/ppc/ppc64le-power8-linux-gcc-ubuntu2004
> @@ -0,0 +1 @@
> +ppc64le-power8-linux-gcc-ubuntu1804
> \ No newline at end of file
> --
> 2.23.0
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 1/2] ci: switch to Ubuntu 20.04
2022-04-26 7:18 [PATCH 1/2] ci: switch to Ubuntu 20.04 David Marchand
2022-04-26 7:18 ` [PATCH 2/2] ci: add mingw cross compilation in GHA David Marchand
2022-04-26 9:14 ` [PATCH 1/2] ci: switch to Ubuntu 20.04 Ruifeng Wang
@ 2022-04-26 15:06 ` Aaron Conole
2022-05-06 11:57 ` [PATCH v2 " David Marchand
3 siblings, 0 replies; 10+ messages in thread
From: Aaron Conole @ 2022-04-26 15:06 UTC (permalink / raw)
To: David Marchand
Cc: dev, Michael Santana, Ruifeng Wang, Jan Viktorin,
Bruce Richardson, David Christensen
David Marchand <david.marchand@redhat.com> writes:
> Ubuntu 18.04 is now rather old.
> Besides, other entities in our CI are also testing this distribution.
>
> Switch to a newer Ubuntu release and benefit from more recent
> tool(chain)s: for example, net/cnxk now builds fine and can be
> re-enabled.
>
> Signed-off-by: David Marchand <david.marchand@redhat.com>
> ---
LGTM
Acked-by: Aaron Conole <aconole@redhat.com>
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 2/2] ci: add mingw cross compilation in GHA
2022-04-26 7:18 ` [PATCH 2/2] ci: add mingw cross compilation in GHA David Marchand
@ 2022-04-26 15:07 ` Aaron Conole
0 siblings, 0 replies; 10+ messages in thread
From: Aaron Conole @ 2022-04-26 15:07 UTC (permalink / raw)
To: David Marchand; +Cc: dev, Michael Santana
David Marchand <david.marchand@redhat.com> writes:
> Add mingw cross compilation in our public CI so that users with their
> own github repository have a first level of checks for Windows compilation
> before submitting to the mailing list.
> This does not replace our better checks in other entities of the CI.
>
> Only the helloworld example is compiled (same as what is tested in
> test-meson-builds.sh).
>
> Note: the mingw cross compilation toolchain (version 5.0) in Ubuntu
> 18.04 was broken (missing a ENOMSG definition).
>
> Signed-off-by: David Marchand <david.marchand@redhat.com>
> ---
Acked-by: Aaron Conole <aconole@redhat.com>
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 1/2] ci: switch to Ubuntu 20.04
2022-04-26 9:14 ` [PATCH 1/2] ci: switch to Ubuntu 20.04 Ruifeng Wang
@ 2022-04-28 12:28 ` David Marchand
0 siblings, 0 replies; 10+ messages in thread
From: David Marchand @ 2022-04-28 12:28 UTC (permalink / raw)
To: Ruifeng Wang
Cc: dev, Aaron Conole, Michael Santana, Jan Viktorin,
Bruce Richardson, David Christensen, Juraj Linkeš,
nd
On Tue, Apr 26, 2022 at 11:14 AM Ruifeng Wang <Ruifeng.Wang@arm.com> wrote:
>
> > -----Original Message-----
> > From: David Marchand <david.marchand@redhat.com>
> > Sent: Tuesday, April 26, 2022 3:18 PM
> > To: dev@dpdk.org
> > Cc: Aaron Conole <aconole@redhat.com>; Michael Santana
> > <maicolgabriel@hotmail.com>; Ruifeng Wang <Ruifeng.Wang@arm.com>;
> > Jan Viktorin <viktorin@rehivetech.com>; Bruce Richardson
> > <bruce.richardson@intel.com>; David Christensen <drc@linux.vnet.ibm.com>
> > Subject: [PATCH 1/2] ci: switch to Ubuntu 20.04
> >
> > Ubuntu 18.04 is now rather old.
> > Besides, other entities in our CI are also testing this distribution.
> >
> > Switch to a newer Ubuntu release and benefit from more recent
> > tool(chain)s: for example, net/cnxk now builds fine and can be re-enabled.
> >
> > Signed-off-by: David Marchand <david.marchand@redhat.com>
> > ---
>
> <snip>
>
> > diff --git a/config/arm/arm64_armv8_linux_clang_ubuntu2004
> > b/config/arm/arm64_armv8_linux_clang_ubuntu2004
> > new file mode 120000
> > index 0000000000..01f5b7643e
> > --- /dev/null
> > +++ b/config/arm/arm64_armv8_linux_clang_ubuntu2004
>
> How about naming it without '2004'?
> It is a link to ubuntu1804 crossfile because distribution dependent paths in the file doesn't change. And I believe the consistency will be kept across distribution releases.
> So we can use a file name without distribution release number for the latest/default Ubuntu environment.
> This removes the need for a new crossfile for each Ubuntu LTS release.
I had some concerns about renaming the 1804 file, if someone relied on it.
But on the other hand, this is only for cross compiling and I guess
people are only using this file through GHA.
If they did use this file out of GHA, it is trivial to switch to the
renamed file.
I'll do what you suggested.
--
David marchand
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH v2 1/2] ci: switch to Ubuntu 20.04
2022-04-26 7:18 [PATCH 1/2] ci: switch to Ubuntu 20.04 David Marchand
` (2 preceding siblings ...)
2022-04-26 15:06 ` Aaron Conole
@ 2022-05-06 11:57 ` David Marchand
2022-05-06 11:57 ` [PATCH v2 2/2] ci: add mingw cross compilation in GHA David Marchand
2022-05-07 3:36 ` [PATCH v2 1/2] ci: switch to Ubuntu 20.04 Ruifeng Wang
3 siblings, 2 replies; 10+ messages in thread
From: David Marchand @ 2022-05-06 11:57 UTC (permalink / raw)
To: dev
Cc: Aaron Conole, Michael Santana, Ruifeng Wang, Jan Viktorin,
Bruce Richardson, David Christensen
Ubuntu 18.04 is now rather old.
Besides, other entities in our CI are also testing this distribution.
Switch to a newer Ubuntu release and benefit from more recent
tool(chain)s: for example, net/cnxk now builds fine and can be
re-enabled.
Note: Ubuntu 18.04 and 20.04 seem to preserve the same paths for the ARM
and PPC cross compilation toolchains, so we can use a single
configuration file (with the hope, future releases of Ubuntu will do the
same).
Signed-off-by: David Marchand <david.marchand@redhat.com>
Acked-by: Aaron Conole <aconole@redhat.com>
---
Changes since v1:
- renamed ubuntu cross compilation configs for ARM and PPC,
---
.ci/linux-build.sh | 7 ++----
.github/workflows/build.yml | 22 +++++++++----------
...ntu1804 => arm64_armv8_linux_clang_ubuntu} | 0
...tu1804 => ppc64le-power8-linux-gcc-ubuntu} | 0
4 files changed, 12 insertions(+), 17 deletions(-)
rename config/arm/{arm64_armv8_linux_clang_ubuntu1804 => arm64_armv8_linux_clang_ubuntu} (100%)
rename config/ppc/{ppc64le-power8-linux-gcc-ubuntu1804 => ppc64le-power8-linux-gcc-ubuntu} (100%)
diff --git a/.ci/linux-build.sh b/.ci/linux-build.sh
index 774a1441bf..2dea0c93fa 100755
--- a/.ci/linux-build.sh
+++ b/.ci/linux-build.sh
@@ -57,18 +57,15 @@ catch_coredump() {
}
if [ "$AARCH64" = "true" ]; then
- # Note: common/cnxk is disabled for Ubuntu 18.04
- # https://bugs.dpdk.org/show_bug.cgi?id=697
- OPTS="$OPTS -Ddisable_drivers=common/cnxk"
if [ "${CC%%clang}" != "$CC" ]; then
- OPTS="$OPTS --cross-file config/arm/arm64_armv8_linux_clang_ubuntu1804"
+ OPTS="$OPTS --cross-file config/arm/arm64_armv8_linux_clang_ubuntu"
else
OPTS="$OPTS --cross-file config/arm/arm64_armv8_linux_gcc"
fi
fi
if [ "$PPC64LE" = "true" ]; then
- OPTS="$OPTS --cross-file config/ppc/ppc64le-power8-linux-gcc-ubuntu1804"
+ OPTS="$OPTS --cross-file config/ppc/ppc64le-power8-linux-gcc-ubuntu"
fi
if [ "$BUILD_DOCS" = "true" ]; then
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 22daaabb91..812aa7055d 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -30,43 +30,41 @@ jobs:
fail-fast: false
matrix:
config:
- - os: ubuntu-18.04
+ - os: ubuntu-20.04
compiler: gcc
library: static
- - os: ubuntu-18.04
+ - os: ubuntu-20.04
compiler: gcc
library: shared
mini: mini
- - os: ubuntu-18.04
+ - os: ubuntu-20.04
compiler: gcc
library: shared
checks: abi+doc+tests
- - os: ubuntu-18.04
+ - os: ubuntu-20.04
compiler: clang
library: static
- - os: ubuntu-18.04
+ - os: ubuntu-20.04
compiler: clang
library: shared
checks: doc+tests
- - os: ubuntu-18.04
+ - os: ubuntu-20.04
compiler: gcc
library: static
cross: i386
- # Note: common/cnxk is disabled for Ubuntu 18.04
- # https://bugs.dpdk.org/show_bug.cgi?id=697
- - os: ubuntu-18.04
+ - os: ubuntu-20.04
compiler: gcc
library: static
cross: aarch64
- - os: ubuntu-18.04
+ - os: ubuntu-20.04
compiler: gcc
library: shared
cross: aarch64
- - os: ubuntu-18.04
+ - os: ubuntu-20.04
compiler: gcc
library: static
cross: ppc64le
- - os: ubuntu-18.04
+ - os: ubuntu-20.04
compiler: gcc
library: shared
cross: ppc64le
diff --git a/config/arm/arm64_armv8_linux_clang_ubuntu1804 b/config/arm/arm64_armv8_linux_clang_ubuntu
similarity index 100%
rename from config/arm/arm64_armv8_linux_clang_ubuntu1804
rename to config/arm/arm64_armv8_linux_clang_ubuntu
diff --git a/config/ppc/ppc64le-power8-linux-gcc-ubuntu1804 b/config/ppc/ppc64le-power8-linux-gcc-ubuntu
similarity index 100%
rename from config/ppc/ppc64le-power8-linux-gcc-ubuntu1804
rename to config/ppc/ppc64le-power8-linux-gcc-ubuntu
--
2.23.0
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH v2 2/2] ci: add mingw cross compilation in GHA
2022-05-06 11:57 ` [PATCH v2 " David Marchand
@ 2022-05-06 11:57 ` David Marchand
2022-05-07 3:36 ` [PATCH v2 1/2] ci: switch to Ubuntu 20.04 Ruifeng Wang
1 sibling, 0 replies; 10+ messages in thread
From: David Marchand @ 2022-05-06 11:57 UTC (permalink / raw)
To: dev; +Cc: Aaron Conole, Michael Santana
Add mingw cross compilation in our public CI so that users with their
own github repository have a first level of checks for Windows compilation
before submitting to the mailing list.
This does not replace our better checks in other entities of the CI.
Only the helloworld example is compiled (same as what is tested in
test-meson-builds.sh).
Note: the mingw cross compilation toolchain (version 5.0) in Ubuntu
18.04 was broken (missing a ENOMSG definition).
Signed-off-by: David Marchand <david.marchand@redhat.com>
Acked-by: Aaron Conole <aconole@redhat.com>
---
.ci/linux-build.sh | 22 +++++++++++++++++-----
.github/workflows/build.yml | 8 ++++++++
2 files changed, 25 insertions(+), 5 deletions(-)
diff --git a/.ci/linux-build.sh b/.ci/linux-build.sh
index 2dea0c93fa..877243c9c8 100755
--- a/.ci/linux-build.sh
+++ b/.ci/linux-build.sh
@@ -56,16 +56,26 @@ catch_coredump() {
return 1
}
+cross_file=
+
if [ "$AARCH64" = "true" ]; then
if [ "${CC%%clang}" != "$CC" ]; then
- OPTS="$OPTS --cross-file config/arm/arm64_armv8_linux_clang_ubuntu"
+ cross_file=config/arm/arm64_armv8_linux_clang_ubuntu
else
- OPTS="$OPTS --cross-file config/arm/arm64_armv8_linux_gcc"
+ cross_file=config/arm/arm64_armv8_linux_gcc
fi
fi
+if [ "$MINGW" = "true" ]; then
+ cross_file=config/x86/cross-mingw
+fi
+
if [ "$PPC64LE" = "true" ]; then
- OPTS="$OPTS --cross-file config/ppc/ppc64le-power8-linux-gcc-ubuntu"
+ cross_file=config/ppc/ppc64le-power8-linux-gcc-ubuntu
+fi
+
+if [ -n "$cross_file" ]; then
+ OPTS="$OPTS --cross-file $cross_file"
fi
if [ "$BUILD_DOCS" = "true" ]; then
@@ -78,7 +88,9 @@ if [ "$BUILD_32BIT" = "true" ]; then
export PKG_CONFIG_LIBDIR="/usr/lib32/pkgconfig"
fi
-if [ "$DEF_LIB" = "static" ]; then
+if [ "$MINGW" = "true" ]; then
+ OPTS="$OPTS -Dexamples=helloworld"
+elif [ "$DEF_LIB" = "static" ]; then
OPTS="$OPTS -Dexamples=l2fwd,l3fwd"
else
OPTS="$OPTS -Dexamples=all"
@@ -95,7 +107,7 @@ fi
meson build --werror $OPTS
ninja -C build
-if [ "$AARCH64" != "true" ] && [ "$PPC64LE" != "true" ]; then
+if [ -z "$cross_file" ]; then
failed=
configure_coredump
devtools/test-null.sh || failed="true"
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 812aa7055d..e2f94d786b 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -21,6 +21,7 @@ jobs:
CC: ccache ${{ matrix.config.compiler }}
DEF_LIB: ${{ matrix.config.library }}
LIBABIGAIL_VERSION: libabigail-1.8
+ MINGW: ${{ matrix.config.cross == 'mingw' }}
MINI: ${{ matrix.config.mini != '' }}
PPC64LE: ${{ matrix.config.cross == 'ppc64le' }}
REF_GIT_TAG: v22.03
@@ -52,6 +53,10 @@ jobs:
compiler: gcc
library: static
cross: i386
+ - os: ubuntu-20.04
+ compiler: gcc
+ library: static
+ cross: mingw
- os: ubuntu-20.04
compiler: gcc
library: static
@@ -119,6 +124,9 @@ jobs:
if: env.AARCH64 == 'true'
run: sudo apt install -y gcc-aarch64-linux-gnu libc6-dev-arm64-cross
pkg-config-aarch64-linux-gnu
+ - name: Install mingw cross compiling packages
+ if: env.MINGW == 'true'
+ run: sudo apt install -y mingw-w64 mingw-w64-tools
- name: Install ppc64le cross compiling packages
if: env.PPC64LE == 'true'
run: sudo apt install -y gcc-powerpc64le-linux-gnu libc6-dev-ppc64el-cross
--
2.23.0
^ permalink raw reply [flat|nested] 10+ messages in thread
* RE: [PATCH v2 1/2] ci: switch to Ubuntu 20.04
2022-05-06 11:57 ` [PATCH v2 " David Marchand
2022-05-06 11:57 ` [PATCH v2 2/2] ci: add mingw cross compilation in GHA David Marchand
@ 2022-05-07 3:36 ` Ruifeng Wang
2022-05-09 7:42 ` David Marchand
1 sibling, 1 reply; 10+ messages in thread
From: Ruifeng Wang @ 2022-05-07 3:36 UTC (permalink / raw)
To: David Marchand, dev
Cc: Aaron Conole, Michael Santana, Jan Viktorin, Bruce Richardson,
David Christensen, nd
> -----Original Message-----
> From: David Marchand <david.marchand@redhat.com>
> Sent: Friday, May 6, 2022 7:58 PM
> To: dev@dpdk.org
> Cc: Aaron Conole <aconole@redhat.com>; Michael Santana
> <maicolgabriel@hotmail.com>; Ruifeng Wang <Ruifeng.Wang@arm.com>;
> Jan Viktorin <viktorin@rehivetech.com>; Bruce Richardson
> <bruce.richardson@intel.com>; David Christensen <drc@linux.vnet.ibm.com>
> Subject: [PATCH v2 1/2] ci: switch to Ubuntu 20.04
>
> Ubuntu 18.04 is now rather old.
> Besides, other entities in our CI are also testing this distribution.
>
> Switch to a newer Ubuntu release and benefit from more recent
> tool(chain)s: for example, net/cnxk now builds fine and can be re-enabled.
>
> Note: Ubuntu 18.04 and 20.04 seem to preserve the same paths for the ARM
> and PPC cross compilation toolchains, so we can use a single configuration file
> (with the hope, future releases of Ubuntu will do the same).
>
> Signed-off-by: David Marchand <david.marchand@redhat.com>
> Acked-by: Aaron Conole <aconole@redhat.com>
> ---
> Changes since v1:
> - renamed ubuntu cross compilation configs for ARM and PPC,
>
> ---
> .ci/linux-build.sh | 7 ++----
> .github/workflows/build.yml | 22 +++++++++----------
> ...ntu1804 => arm64_armv8_linux_clang_ubuntu} | 0
> ...tu1804 => ppc64le-power8-linux-gcc-ubuntu} | 0
> 4 files changed, 12 insertions(+), 17 deletions(-) rename
> config/arm/{arm64_armv8_linux_clang_ubuntu1804 =>
> arm64_armv8_linux_clang_ubuntu} (100%) rename config/ppc/{ppc64le-
> power8-linux-gcc-ubuntu1804 => ppc64le-power8-linux-gcc-ubuntu} (100%)
>
Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v2 1/2] ci: switch to Ubuntu 20.04
2022-05-07 3:36 ` [PATCH v2 1/2] ci: switch to Ubuntu 20.04 Ruifeng Wang
@ 2022-05-09 7:42 ` David Marchand
0 siblings, 0 replies; 10+ messages in thread
From: David Marchand @ 2022-05-09 7:42 UTC (permalink / raw)
To: Ruifeng Wang, Aaron Conole
Cc: dev, Michael Santana, Jan Viktorin, Bruce Richardson,
David Christensen, nd
On Sat, May 7, 2022 at 5:37 AM Ruifeng Wang <Ruifeng.Wang@arm.com> wrote:
>
> > -----Original Message-----
> > From: David Marchand <david.marchand@redhat.com>
> > Sent: Friday, May 6, 2022 7:58 PM
> > To: dev@dpdk.org
> > Cc: Aaron Conole <aconole@redhat.com>; Michael Santana
> > <maicolgabriel@hotmail.com>; Ruifeng Wang <Ruifeng.Wang@arm.com>;
> > Jan Viktorin <viktorin@rehivetech.com>; Bruce Richardson
> > <bruce.richardson@intel.com>; David Christensen <drc@linux.vnet.ibm.com>
> > Subject: [PATCH v2 1/2] ci: switch to Ubuntu 20.04
> >
> > Ubuntu 18.04 is now rather old.
> > Besides, other entities in our CI are also testing this distribution.
> >
> > Switch to a newer Ubuntu release and benefit from more recent
> > tool(chain)s: for example, net/cnxk now builds fine and can be re-enabled.
> >
> > Note: Ubuntu 18.04 and 20.04 seem to preserve the same paths for the ARM
> > and PPC cross compilation toolchains, so we can use a single configuration file
> > (with the hope, future releases of Ubuntu will do the same).
> >
> > Signed-off-by: David Marchand <david.marchand@redhat.com>
> > Acked-by: Aaron Conole <aconole@redhat.com>
Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>
> > ---
> > Changes since v1:
> > - renamed ubuntu cross compilation configs for ARM and PPC,
I had forgotten to amend the patch with links for the older config files.
I fixed it.
Thanks for the reviews, series applied.
--
David marchand
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2022-05-09 7:42 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-04-26 7:18 [PATCH 1/2] ci: switch to Ubuntu 20.04 David Marchand
2022-04-26 7:18 ` [PATCH 2/2] ci: add mingw cross compilation in GHA David Marchand
2022-04-26 15:07 ` Aaron Conole
2022-04-26 9:14 ` [PATCH 1/2] ci: switch to Ubuntu 20.04 Ruifeng Wang
2022-04-28 12:28 ` David Marchand
2022-04-26 15:06 ` Aaron Conole
2022-05-06 11:57 ` [PATCH v2 " David Marchand
2022-05-06 11:57 ` [PATCH v2 2/2] ci: add mingw cross compilation in GHA David Marchand
2022-05-07 3:36 ` [PATCH v2 1/2] ci: switch to Ubuntu 20.04 Ruifeng Wang
2022-05-09 7:42 ` David Marchand
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).