* [PATCH 0/2] fix C++ include checks in cross-compilation
@ 2022-06-21 12:28 Stanislaw Kardach
2022-06-21 12:28 ` [PATCH 1/2] config: Use G++ as C++ compiler Stanislaw Kardach
` (2 more replies)
0 siblings, 3 replies; 10+ messages in thread
From: Stanislaw Kardach @ 2022-06-21 12:28 UTC (permalink / raw)
To: dev; +Cc: Stanislaw Kardach, upstream
Meson detects the C++ cross-compiler during configuration and based on
that reports whether C++ language is available or not.
The C++ include check target (buildtools/chkincs/chkincs-cpp) is only
built when C++ language is available.
There are 2 issues that currently prevent those checks to be run in
cross-compiled environments:
* PowerPC and ARM cross-files define cpp instead of g++ as C++ compiler.
That's wrong because cpp is a C Preprocessor binary.
* The CI workflow file does not install a g++ cross-compiler.
This patchset fixes both issues.
Stanislaw Kardach (2):
config: Use G++ as C++ compiler
ci: use crossbuild-essential packages
.github/workflows/build.yml | 6 ++----
config/arm/arm32_armv8_linux_gcc | 2 +-
config/arm/arm64_armada_linux_gcc | 2 +-
config/arm/arm64_armv8_linux_gcc | 2 +-
config/arm/arm64_bluefield_linux_gcc | 2 +-
config/arm/arm64_centriq2400_linux_gcc | 2 +-
config/arm/arm64_cn10k_linux_gcc | 2 +-
config/arm/arm64_cn9k_linux_gcc | 2 +-
config/arm/arm64_dpaa_linux_gcc | 2 +-
config/arm/arm64_emag_linux_gcc | 2 +-
config/arm/arm64_graviton2_linux_gcc | 2 +-
config/arm/arm64_kunpeng920_linux_gcc | 2 +-
config/arm/arm64_kunpeng930_linux_gcc | 2 +-
config/arm/arm64_n1sdp_linux_gcc | 2 +-
config/arm/arm64_n2_linux_gcc | 2 +-
config/arm/arm64_stingray_linux_gcc | 2 +-
config/arm/arm64_thunderx2_linux_gcc | 2 +-
config/arm/arm64_thunderxt83_linux_gcc | 2 +-
config/arm/arm64_thunderxt88_linux_gcc | 2 +-
config/ppc/ppc64le-power8-linux-gcc | 2 +-
config/ppc/ppc64le-power8-linux-gcc-ubuntu | 2 +-
21 files changed, 22 insertions(+), 24 deletions(-)
--
2.30.2
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH 1/2] config: Use G++ as C++ compiler
2022-06-21 12:28 [PATCH 0/2] fix C++ include checks in cross-compilation Stanislaw Kardach
@ 2022-06-21 12:28 ` Stanislaw Kardach
2022-06-21 14:25 ` Bruce Richardson
2022-06-21 19:53 ` Tyler Retzlaff
2022-06-21 12:28 ` [PATCH 2/2] ci: use crossbuild-essential packages Stanislaw Kardach
2022-06-23 8:04 ` [PATCH 0/2] fix C++ include checks in cross-compilation David Marchand
2 siblings, 2 replies; 10+ messages in thread
From: Stanislaw Kardach @ 2022-06-21 12:28 UTC (permalink / raw)
To: Ruifeng Wang, David Christensen; +Cc: Stanislaw Kardach, dev, upstream
Through some mixup all cross-files for PowerPC and ARM platforms were
using C Preprocessor (cpp) instead of GCC (g++).
This caused meson to fail detecting the C++ compiler presence and
therefore disabling some targets (i.e. C++ include file checks).
Signed-off-by: Stanislaw Kardach <kda@semihalf.com>
---
config/arm/arm32_armv8_linux_gcc | 2 +-
config/arm/arm64_armada_linux_gcc | 2 +-
config/arm/arm64_armv8_linux_gcc | 2 +-
config/arm/arm64_bluefield_linux_gcc | 2 +-
config/arm/arm64_centriq2400_linux_gcc | 2 +-
config/arm/arm64_cn10k_linux_gcc | 2 +-
config/arm/arm64_cn9k_linux_gcc | 2 +-
config/arm/arm64_dpaa_linux_gcc | 2 +-
config/arm/arm64_emag_linux_gcc | 2 +-
config/arm/arm64_graviton2_linux_gcc | 2 +-
config/arm/arm64_kunpeng920_linux_gcc | 2 +-
config/arm/arm64_kunpeng930_linux_gcc | 2 +-
config/arm/arm64_n1sdp_linux_gcc | 2 +-
config/arm/arm64_n2_linux_gcc | 2 +-
config/arm/arm64_stingray_linux_gcc | 2 +-
config/arm/arm64_thunderx2_linux_gcc | 2 +-
config/arm/arm64_thunderxt83_linux_gcc | 2 +-
config/arm/arm64_thunderxt88_linux_gcc | 2 +-
config/ppc/ppc64le-power8-linux-gcc | 2 +-
config/ppc/ppc64le-power8-linux-gcc-ubuntu | 2 +-
20 files changed, 20 insertions(+), 20 deletions(-)
diff --git a/config/arm/arm32_armv8_linux_gcc b/config/arm/arm32_armv8_linux_gcc
index 7f2977e49d..269a60ba19 100644
--- a/config/arm/arm32_armv8_linux_gcc
+++ b/config/arm/arm32_armv8_linux_gcc
@@ -1,6 +1,6 @@
[binaries]
c = ['ccache', 'arm-linux-gnueabihf-gcc']
-cpp = ['ccache', 'arm-linux-gnueabihf-cpp']
+cpp = ['ccache', 'arm-linux-gnueabihf-g++']
ar = 'arm-linux-gnueabihf-gcc-ar'
strip = 'arm-linux-gnueabihf-strip'
pkgconfig = 'arm-linux-gnueabihf-pkg-config'
diff --git a/config/arm/arm64_armada_linux_gcc b/config/arm/arm64_armada_linux_gcc
index 1566999101..635b4946a3 100644
--- a/config/arm/arm64_armada_linux_gcc
+++ b/config/arm/arm64_armada_linux_gcc
@@ -1,6 +1,6 @@
[binaries]
c = ['ccache', 'aarch64-linux-gnu-gcc']
-cpp = ['ccache', 'aarch64-linux-gnu-cpp']
+cpp = ['ccache', 'aarch64-linux-gnu-g++']
ar = 'aarch64-linux-gnu-ar'
as = 'aarch64-linux-gnu-as'
strip = 'aarch64-linux-gnu-strip'
diff --git a/config/arm/arm64_armv8_linux_gcc b/config/arm/arm64_armv8_linux_gcc
index 048c2d9f29..529694b49d 100644
--- a/config/arm/arm64_armv8_linux_gcc
+++ b/config/arm/arm64_armv8_linux_gcc
@@ -1,6 +1,6 @@
[binaries]
c = ['ccache', 'aarch64-linux-gnu-gcc']
-cpp = ['ccache', 'aarch64-linux-gnu-cpp']
+cpp = ['ccache', 'aarch64-linux-gnu-g++']
ar = 'aarch64-linux-gnu-gcc-ar'
strip = 'aarch64-linux-gnu-strip'
pkgconfig = 'aarch64-linux-gnu-pkg-config'
diff --git a/config/arm/arm64_bluefield_linux_gcc b/config/arm/arm64_bluefield_linux_gcc
index 38df3c198b..1286227915 100644
--- a/config/arm/arm64_bluefield_linux_gcc
+++ b/config/arm/arm64_bluefield_linux_gcc
@@ -1,6 +1,6 @@
[binaries]
c = ['ccache', 'aarch64-linux-gnu-gcc']
-cpp = ['ccache', 'aarch64-linux-gnu-cpp']
+cpp = ['ccache', 'aarch64-linux-gnu-g++']
ar = 'aarch64-linux-gnu-gcc-ar'
strip = 'aarch64-linux-gnu-strip'
pkgconfig = 'aarch64-linux-gnu-pkg-config'
diff --git a/config/arm/arm64_centriq2400_linux_gcc b/config/arm/arm64_centriq2400_linux_gcc
index 0966eef2c5..bc8737e072 100644
--- a/config/arm/arm64_centriq2400_linux_gcc
+++ b/config/arm/arm64_centriq2400_linux_gcc
@@ -1,6 +1,6 @@
[binaries]
c = ['ccache', 'aarch64-linux-gnu-gcc']
-cpp = ['ccache', 'aarch64-linux-gnu-cpp']
+cpp = ['ccache', 'aarch64-linux-gnu-g++']
ar = 'aarch64-linux-gnu-gcc-ar'
strip = 'aarch64-linux-gnu-strip'
pkgconfig = 'aarch64-linux-gnu-pkg-config'
diff --git a/config/arm/arm64_cn10k_linux_gcc b/config/arm/arm64_cn10k_linux_gcc
index 201e0ccd59..05d2d64cf2 100644
--- a/config/arm/arm64_cn10k_linux_gcc
+++ b/config/arm/arm64_cn10k_linux_gcc
@@ -1,6 +1,6 @@
[binaries]
c = ['ccache', 'aarch64-linux-gnu-gcc']
-cpp = ['ccache', 'aarch64-linux-gnu-cpp']
+cpp = ['ccache', 'aarch64-linux-gnu-g++']
ar = 'aarch64-linux-gnu-gcc-ar'
strip = 'aarch64-linux-gnu-strip'
pkgconfig = 'aarch64-linux-gnu-pkg-config'
diff --git a/config/arm/arm64_cn9k_linux_gcc b/config/arm/arm64_cn9k_linux_gcc
index a9b4d51958..7416454de0 100644
--- a/config/arm/arm64_cn9k_linux_gcc
+++ b/config/arm/arm64_cn9k_linux_gcc
@@ -1,6 +1,6 @@
[binaries]
c = ['ccache', 'aarch64-linux-gnu-gcc']
-cpp = ['ccache', 'aarch64-linux-gnu-cpp']
+cpp = ['ccache', 'aarch64-linux-gnu-g++']
ar = 'aarch64-linux-gnu-gcc-ar'
strip = 'aarch64-linux-gnu-strip'
pkgconfig = 'aarch64-linux-gnu-pkg-config'
diff --git a/config/arm/arm64_dpaa_linux_gcc b/config/arm/arm64_dpaa_linux_gcc
index 0d5761bd72..8465b5097b 100644
--- a/config/arm/arm64_dpaa_linux_gcc
+++ b/config/arm/arm64_dpaa_linux_gcc
@@ -1,6 +1,6 @@
[binaries]
c = ['ccache', 'aarch64-linux-gnu-gcc']
-cpp = ['ccache', 'aarch64-linux-gnu-cpp']
+cpp = ['ccache', 'aarch64-linux-gnu-g++']
ar = 'aarch64-linux-gnu-ar'
as = 'aarch64-linux-gnu-as'
strip = 'aarch64-linux-gnu-strip'
diff --git a/config/arm/arm64_emag_linux_gcc b/config/arm/arm64_emag_linux_gcc
index 16ec49fc32..248169ed68 100644
--- a/config/arm/arm64_emag_linux_gcc
+++ b/config/arm/arm64_emag_linux_gcc
@@ -1,6 +1,6 @@
[binaries]
c = ['ccache', 'aarch64-linux-gnu-gcc']
-cpp = ['ccache', 'aarch64-linux-gnu-cpp']
+cpp = ['ccache', 'aarch64-linux-gnu-g++']
ar = 'aarch64-linux-gnu-gcc-ar'
strip = 'aarch64-linux-gnu-strip'
pkgconfig = 'aarch64-linux-gnu-pkg-config'
diff --git a/config/arm/arm64_graviton2_linux_gcc b/config/arm/arm64_graviton2_linux_gcc
index 094c540f50..fdb298bb11 100644
--- a/config/arm/arm64_graviton2_linux_gcc
+++ b/config/arm/arm64_graviton2_linux_gcc
@@ -1,6 +1,6 @@
[binaries]
c = ['ccache', 'aarch64-linux-gnu-gcc']
-cpp = ['ccache', 'aarch64-linux-gnu-cpp']
+cpp = ['ccache', 'aarch64-linux-gnu-g++']
ar = 'aarch64-linux-gnu-gcc-ar'
strip = 'aarch64-linux-gnu-strip'
pkgconfig = 'aarch64-linux-gnu-pkg-config'
diff --git a/config/arm/arm64_kunpeng920_linux_gcc b/config/arm/arm64_kunpeng920_linux_gcc
index fc057c9063..193fb48a61 100644
--- a/config/arm/arm64_kunpeng920_linux_gcc
+++ b/config/arm/arm64_kunpeng920_linux_gcc
@@ -1,6 +1,6 @@
[binaries]
c = ['ccache', 'aarch64-linux-gnu-gcc']
-cpp = ['ccache', 'aarch64-linux-gnu-cpp']
+cpp = ['ccache', 'aarch64-linux-gnu-g++']
ar = 'aarch64-linux-gnu-gcc-ar'
strip = 'aarch64-linux-gnu-strip'
pkgconfig = 'aarch64-linux-gnu-pkg-config'
diff --git a/config/arm/arm64_kunpeng930_linux_gcc b/config/arm/arm64_kunpeng930_linux_gcc
index 5f43941fae..e4281ceb4f 100644
--- a/config/arm/arm64_kunpeng930_linux_gcc
+++ b/config/arm/arm64_kunpeng930_linux_gcc
@@ -1,6 +1,6 @@
[binaries]
c = ['ccache', 'aarch64-linux-gnu-gcc']
-cpp = ['ccache', 'aarch64-linux-gnu-cpp']
+cpp = ['ccache', 'aarch64-linux-gnu-g++']
ar = 'aarch64-linux-gnu-gcc-ar'
strip = 'aarch64-linux-gnu-strip'
pkgconfig = 'aarch64-linux-gnu-pkg-config'
diff --git a/config/arm/arm64_n1sdp_linux_gcc b/config/arm/arm64_n1sdp_linux_gcc
index fc123ab53f..2806a4241b 100644
--- a/config/arm/arm64_n1sdp_linux_gcc
+++ b/config/arm/arm64_n1sdp_linux_gcc
@@ -1,6 +1,6 @@
[binaries]
c = ['ccache', 'aarch64-linux-gnu-gcc']
-cpp = ['ccache', 'aarch64-linux-gnu-cpp']
+cpp = ['ccache', 'aarch64-linux-gnu-g++']
ar = 'aarch64-linux-gnu-gcc-ar'
strip = 'aarch64-linux-gnu-strip'
pkgconfig = 'aarch64-linux-gnu-pkg-config'
diff --git a/config/arm/arm64_n2_linux_gcc b/config/arm/arm64_n2_linux_gcc
index 930bd5c236..7404bd197b 100644
--- a/config/arm/arm64_n2_linux_gcc
+++ b/config/arm/arm64_n2_linux_gcc
@@ -1,6 +1,6 @@
[binaries]
c = ['ccache', 'aarch64-linux-gnu-gcc']
-cpp = ['ccache', 'aarch64-linux-gnu-cpp']
+cpp = ['ccache', 'aarch64-linux-gnu-g++']
ar = 'aarch64-linux-gnu-gcc-ar'
strip = 'aarch64-linux-gnu-strip'
pkgconfig = 'aarch64-linux-gnu-pkg-config'
diff --git a/config/arm/arm64_stingray_linux_gcc b/config/arm/arm64_stingray_linux_gcc
index 5dfcd974fd..08148b5c3d 100644
--- a/config/arm/arm64_stingray_linux_gcc
+++ b/config/arm/arm64_stingray_linux_gcc
@@ -1,6 +1,6 @@
[binaries]
c = ['ccache', 'aarch64-linux-gnu-gcc']
-cpp = ['ccache', 'aarch64-linux-gnu-cpp']
+cpp = ['ccache', 'aarch64-linux-gnu-g++']
ar = 'aarch64-linux-gnu-gcc-ar'
strip = 'aarch64-linux-gnu-strip'
pkgconfig = 'aarch64-linux-gnu-pkg-config'
diff --git a/config/arm/arm64_thunderx2_linux_gcc b/config/arm/arm64_thunderx2_linux_gcc
index c1f5995d93..32ae938e95 100644
--- a/config/arm/arm64_thunderx2_linux_gcc
+++ b/config/arm/arm64_thunderx2_linux_gcc
@@ -1,6 +1,6 @@
[binaries]
c = ['ccache', 'aarch64-linux-gnu-gcc']
-cpp = ['ccache', 'aarch64-linux-gnu-cpp']
+cpp = ['ccache', 'aarch64-linux-gnu-g++']
ar = 'aarch64-linux-gnu-gcc-ar'
strip = 'aarch64-linux-gnu-strip'
pkgconfig = 'aarch64-linux-gnu-pkg-config'
diff --git a/config/arm/arm64_thunderxt83_linux_gcc b/config/arm/arm64_thunderxt83_linux_gcc
index 52746e2e59..e9d9e62d44 100644
--- a/config/arm/arm64_thunderxt83_linux_gcc
+++ b/config/arm/arm64_thunderxt83_linux_gcc
@@ -1,6 +1,6 @@
[binaries]
c = ['ccache', 'aarch64-linux-gnu-gcc']
-cpp = ['ccache', 'aarch64-linux-gnu-cpp']
+cpp = ['ccache', 'aarch64-linux-gnu-g++']
ar = 'aarch64-linux-gnu-gcc-ar'
strip = 'aarch64-linux-gnu-strip'
pkgconfig = 'aarch64-linux-gnu-pkg-config'
diff --git a/config/arm/arm64_thunderxt88_linux_gcc b/config/arm/arm64_thunderxt88_linux_gcc
index fed7eb791e..c6e5a5656a 100644
--- a/config/arm/arm64_thunderxt88_linux_gcc
+++ b/config/arm/arm64_thunderxt88_linux_gcc
@@ -1,6 +1,6 @@
[binaries]
c = ['ccache', 'aarch64-linux-gnu-gcc']
-cpp = ['ccache', 'aarch64-linux-gnu-cpp']
+cpp = ['ccache', 'aarch64-linux-gnu-g++']
ar = 'aarch64-linux-gnu-gcc-ar'
strip = 'aarch64-linux-gnu-strip'
pkgconfig = 'aarch64-linux-gnu-pkg-config'
diff --git a/config/ppc/ppc64le-power8-linux-gcc b/config/ppc/ppc64le-power8-linux-gcc
index 465044e427..8c2db89382 100644
--- a/config/ppc/ppc64le-power8-linux-gcc
+++ b/config/ppc/ppc64le-power8-linux-gcc
@@ -1,6 +1,6 @@
[binaries]
c = ['ccache', 'powerpc64le-linux-gcc']
-cpp = ['ccache', 'powerpc64le-linux-cpp']
+cpp = ['ccache', 'powerpc64le-linux-g++']
ar = 'powerpc64le-linux-gcc-ar'
strip = 'powerpc64le-linux-strip'
diff --git a/config/ppc/ppc64le-power8-linux-gcc-ubuntu b/config/ppc/ppc64le-power8-linux-gcc-ubuntu
index 44d7e0100a..3027d66f8d 100644
--- a/config/ppc/ppc64le-power8-linux-gcc-ubuntu
+++ b/config/ppc/ppc64le-power8-linux-gcc-ubuntu
@@ -1,6 +1,6 @@
[binaries]
c = ['ccache', 'powerpc64le-linux-gnu-gcc']
-cpp = ['ccache', 'powerpc64le-linux-gnu-cpp']
+cpp = ['ccache', 'powerpc64le-linux-gnu-g++']
ar = 'powerpc64le-linux-gnu-ar'
strip = 'powerpc64le-linux-gnu-strip'
--
2.30.2
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH 2/2] ci: use crossbuild-essential packages
2022-06-21 12:28 [PATCH 0/2] fix C++ include checks in cross-compilation Stanislaw Kardach
2022-06-21 12:28 ` [PATCH 1/2] config: Use G++ as C++ compiler Stanislaw Kardach
@ 2022-06-21 12:28 ` Stanislaw Kardach
2022-06-23 8:04 ` David Marchand
2022-06-23 8:04 ` [PATCH 0/2] fix C++ include checks in cross-compilation David Marchand
2 siblings, 1 reply; 10+ messages in thread
From: Stanislaw Kardach @ 2022-06-21 12:28 UTC (permalink / raw)
To: Ruifeng Wang, David Christensen; +Cc: Stanislaw Kardach, dev, upstream
The crossbuild-essential-<arch> packages contain all necessary
dependencies to cross-compile binaries for a given architecture
including C and C++ compilers. Therefore use those instead of listing
packages directly. This way C++ compiler is also installed and C++
include checks will be checked in CI for PowerPC and ARM.
Signed-off-by: Stanislaw Kardach <kda@semihalf.com>
---
.github/workflows/build.yml | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index c0d2829d0e..1106256539 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -128,15 +128,13 @@ jobs:
run: sudo apt install -y gcc-multilib g++-multilib
- name: Install aarch64 cross compiling packages
if: env.AARCH64 == 'true'
- run: sudo apt install -y gcc-aarch64-linux-gnu libc6-dev-arm64-cross
- pkg-config-aarch64-linux-gnu
+ run: sudo apt install -y crossbuild-essential-arm64
- 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
- pkg-config-powerpc-linux-gnu
+ run: sudo apt install -y crossbuild-essential-ppc64el
- name: Install riscv64 cross compiling packages
if: env.RISCV64 == 'true'
run: sudo apt install -y crossbuild-essential-riscv64
--
2.30.2
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 1/2] config: Use G++ as C++ compiler
2022-06-21 12:28 ` [PATCH 1/2] config: Use G++ as C++ compiler Stanislaw Kardach
@ 2022-06-21 14:25 ` Bruce Richardson
2022-06-21 19:53 ` Tyler Retzlaff
1 sibling, 0 replies; 10+ messages in thread
From: Bruce Richardson @ 2022-06-21 14:25 UTC (permalink / raw)
To: Stanislaw Kardach; +Cc: Ruifeng Wang, David Christensen, dev, upstream
On Tue, Jun 21, 2022 at 02:28:23PM +0200, Stanislaw Kardach wrote:
> Through some mixup all cross-files for PowerPC and ARM platforms were
> using C Preprocessor (cpp) instead of GCC (g++).
> This caused meson to fail detecting the C++ compiler presence and
> therefore disabling some targets (i.e. C++ include file checks).
>
> Signed-off-by: Stanislaw Kardach <kda@semihalf.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 1/2] config: Use G++ as C++ compiler
2022-06-21 12:28 ` [PATCH 1/2] config: Use G++ as C++ compiler Stanislaw Kardach
2022-06-21 14:25 ` Bruce Richardson
@ 2022-06-21 19:53 ` Tyler Retzlaff
2022-06-22 5:07 ` Stanisław Kardach
1 sibling, 1 reply; 10+ messages in thread
From: Tyler Retzlaff @ 2022-06-21 19:53 UTC (permalink / raw)
To: Stanislaw Kardach; +Cc: Ruifeng Wang, David Christensen, dev, upstream
On Tue, Jun 21, 2022 at 02:28:23PM +0200, Stanislaw Kardach wrote:
> Through some mixup all cross-files for PowerPC and ARM platforms were
> using C Preprocessor (cpp) instead of GCC (g++).
> This caused meson to fail detecting the C++ compiler presence and
> therefore disabling some targets (i.e. C++ include file checks).
>
> Signed-off-by: Stanislaw Kardach <kda@semihalf.com>
> ---
> config/arm/arm32_armv8_linux_gcc | 2 +-
> config/arm/arm64_armada_linux_gcc | 2 +-
> config/arm/arm64_armv8_linux_gcc | 2 +-
> config/arm/arm64_bluefield_linux_gcc | 2 +-
> config/arm/arm64_centriq2400_linux_gcc | 2 +-
> config/arm/arm64_cn10k_linux_gcc | 2 +-
> config/arm/arm64_cn9k_linux_gcc | 2 +-
> config/arm/arm64_dpaa_linux_gcc | 2 +-
> config/arm/arm64_emag_linux_gcc | 2 +-
> config/arm/arm64_graviton2_linux_gcc | 2 +-
> config/arm/arm64_kunpeng920_linux_gcc | 2 +-
> config/arm/arm64_kunpeng930_linux_gcc | 2 +-
> config/arm/arm64_n1sdp_linux_gcc | 2 +-
> config/arm/arm64_n2_linux_gcc | 2 +-
> config/arm/arm64_stingray_linux_gcc | 2 +-
> config/arm/arm64_thunderx2_linux_gcc | 2 +-
> config/arm/arm64_thunderxt83_linux_gcc | 2 +-
> config/arm/arm64_thunderxt88_linux_gcc | 2 +-
> config/ppc/ppc64le-power8-linux-gcc | 2 +-
> config/ppc/ppc64le-power8-linux-gcc-ubuntu | 2 +-
> 20 files changed, 20 insertions(+), 20 deletions(-)
>
> diff --git a/config/arm/arm32_armv8_linux_gcc b/config/arm/arm32_armv8_linux_gcc
> index 7f2977e49d..269a60ba19 100644
> --- a/config/arm/arm32_armv8_linux_gcc
> +++ b/config/arm/arm32_armv8_linux_gcc
> @@ -1,6 +1,6 @@
> [binaries]
> c = ['ccache', 'arm-linux-gnueabihf-gcc']
> -cpp = ['ccache', 'arm-linux-gnueabihf-cpp']
> +cpp = ['ccache', 'arm-linux-gnueabihf-g++']
suggest the variable should be 'cxx' not 'cpp' (to be consistent with
other build systems in the linux world)
> ar = 'arm-linux-gnueabihf-gcc-ar'
> strip = 'arm-linux-gnueabihf-strip'
> pkgconfig = 'arm-linux-gnueabihf-pkg-config'
> diff --git a/config/arm/arm64_armada_linux_gcc b/config/arm/arm64_armada_linux_gcc
> index 1566999101..635b4946a3 100644
> --- a/config/arm/arm64_armada_linux_gcc
> +++ b/config/arm/arm64_armada_linux_gcc
> @@ -1,6 +1,6 @@
> [binaries]
> c = ['ccache', 'aarch64-linux-gnu-gcc']
> -cpp = ['ccache', 'aarch64-linux-gnu-cpp']
> +cpp = ['ccache', 'aarch64-linux-gnu-g++']
> ar = 'aarch64-linux-gnu-ar'
> as = 'aarch64-linux-gnu-as'
> strip = 'aarch64-linux-gnu-strip'
> diff --git a/config/arm/arm64_armv8_linux_gcc b/config/arm/arm64_armv8_linux_gcc
> index 048c2d9f29..529694b49d 100644
> --- a/config/arm/arm64_armv8_linux_gcc
> +++ b/config/arm/arm64_armv8_linux_gcc
> @@ -1,6 +1,6 @@
> [binaries]
> c = ['ccache', 'aarch64-linux-gnu-gcc']
> -cpp = ['ccache', 'aarch64-linux-gnu-cpp']
> +cpp = ['ccache', 'aarch64-linux-gnu-g++']
> ar = 'aarch64-linux-gnu-gcc-ar'
> strip = 'aarch64-linux-gnu-strip'
> pkgconfig = 'aarch64-linux-gnu-pkg-config'
> diff --git a/config/arm/arm64_bluefield_linux_gcc b/config/arm/arm64_bluefield_linux_gcc
> index 38df3c198b..1286227915 100644
> --- a/config/arm/arm64_bluefield_linux_gcc
> +++ b/config/arm/arm64_bluefield_linux_gcc
> @@ -1,6 +1,6 @@
> [binaries]
> c = ['ccache', 'aarch64-linux-gnu-gcc']
> -cpp = ['ccache', 'aarch64-linux-gnu-cpp']
> +cpp = ['ccache', 'aarch64-linux-gnu-g++']
> ar = 'aarch64-linux-gnu-gcc-ar'
> strip = 'aarch64-linux-gnu-strip'
> pkgconfig = 'aarch64-linux-gnu-pkg-config'
> diff --git a/config/arm/arm64_centriq2400_linux_gcc b/config/arm/arm64_centriq2400_linux_gcc
> index 0966eef2c5..bc8737e072 100644
> --- a/config/arm/arm64_centriq2400_linux_gcc
> +++ b/config/arm/arm64_centriq2400_linux_gcc
> @@ -1,6 +1,6 @@
> [binaries]
> c = ['ccache', 'aarch64-linux-gnu-gcc']
> -cpp = ['ccache', 'aarch64-linux-gnu-cpp']
> +cpp = ['ccache', 'aarch64-linux-gnu-g++']
> ar = 'aarch64-linux-gnu-gcc-ar'
> strip = 'aarch64-linux-gnu-strip'
> pkgconfig = 'aarch64-linux-gnu-pkg-config'
> diff --git a/config/arm/arm64_cn10k_linux_gcc b/config/arm/arm64_cn10k_linux_gcc
> index 201e0ccd59..05d2d64cf2 100644
> --- a/config/arm/arm64_cn10k_linux_gcc
> +++ b/config/arm/arm64_cn10k_linux_gcc
> @@ -1,6 +1,6 @@
> [binaries]
> c = ['ccache', 'aarch64-linux-gnu-gcc']
> -cpp = ['ccache', 'aarch64-linux-gnu-cpp']
> +cpp = ['ccache', 'aarch64-linux-gnu-g++']
> ar = 'aarch64-linux-gnu-gcc-ar'
> strip = 'aarch64-linux-gnu-strip'
> pkgconfig = 'aarch64-linux-gnu-pkg-config'
> diff --git a/config/arm/arm64_cn9k_linux_gcc b/config/arm/arm64_cn9k_linux_gcc
> index a9b4d51958..7416454de0 100644
> --- a/config/arm/arm64_cn9k_linux_gcc
> +++ b/config/arm/arm64_cn9k_linux_gcc
> @@ -1,6 +1,6 @@
> [binaries]
> c = ['ccache', 'aarch64-linux-gnu-gcc']
> -cpp = ['ccache', 'aarch64-linux-gnu-cpp']
> +cpp = ['ccache', 'aarch64-linux-gnu-g++']
> ar = 'aarch64-linux-gnu-gcc-ar'
> strip = 'aarch64-linux-gnu-strip'
> pkgconfig = 'aarch64-linux-gnu-pkg-config'
> diff --git a/config/arm/arm64_dpaa_linux_gcc b/config/arm/arm64_dpaa_linux_gcc
> index 0d5761bd72..8465b5097b 100644
> --- a/config/arm/arm64_dpaa_linux_gcc
> +++ b/config/arm/arm64_dpaa_linux_gcc
> @@ -1,6 +1,6 @@
> [binaries]
> c = ['ccache', 'aarch64-linux-gnu-gcc']
> -cpp = ['ccache', 'aarch64-linux-gnu-cpp']
> +cpp = ['ccache', 'aarch64-linux-gnu-g++']
> ar = 'aarch64-linux-gnu-ar'
> as = 'aarch64-linux-gnu-as'
> strip = 'aarch64-linux-gnu-strip'
> diff --git a/config/arm/arm64_emag_linux_gcc b/config/arm/arm64_emag_linux_gcc
> index 16ec49fc32..248169ed68 100644
> --- a/config/arm/arm64_emag_linux_gcc
> +++ b/config/arm/arm64_emag_linux_gcc
> @@ -1,6 +1,6 @@
> [binaries]
> c = ['ccache', 'aarch64-linux-gnu-gcc']
> -cpp = ['ccache', 'aarch64-linux-gnu-cpp']
> +cpp = ['ccache', 'aarch64-linux-gnu-g++']
> ar = 'aarch64-linux-gnu-gcc-ar'
> strip = 'aarch64-linux-gnu-strip'
> pkgconfig = 'aarch64-linux-gnu-pkg-config'
> diff --git a/config/arm/arm64_graviton2_linux_gcc b/config/arm/arm64_graviton2_linux_gcc
> index 094c540f50..fdb298bb11 100644
> --- a/config/arm/arm64_graviton2_linux_gcc
> +++ b/config/arm/arm64_graviton2_linux_gcc
> @@ -1,6 +1,6 @@
> [binaries]
> c = ['ccache', 'aarch64-linux-gnu-gcc']
> -cpp = ['ccache', 'aarch64-linux-gnu-cpp']
> +cpp = ['ccache', 'aarch64-linux-gnu-g++']
> ar = 'aarch64-linux-gnu-gcc-ar'
> strip = 'aarch64-linux-gnu-strip'
> pkgconfig = 'aarch64-linux-gnu-pkg-config'
> diff --git a/config/arm/arm64_kunpeng920_linux_gcc b/config/arm/arm64_kunpeng920_linux_gcc
> index fc057c9063..193fb48a61 100644
> --- a/config/arm/arm64_kunpeng920_linux_gcc
> +++ b/config/arm/arm64_kunpeng920_linux_gcc
> @@ -1,6 +1,6 @@
> [binaries]
> c = ['ccache', 'aarch64-linux-gnu-gcc']
> -cpp = ['ccache', 'aarch64-linux-gnu-cpp']
> +cpp = ['ccache', 'aarch64-linux-gnu-g++']
> ar = 'aarch64-linux-gnu-gcc-ar'
> strip = 'aarch64-linux-gnu-strip'
> pkgconfig = 'aarch64-linux-gnu-pkg-config'
> diff --git a/config/arm/arm64_kunpeng930_linux_gcc b/config/arm/arm64_kunpeng930_linux_gcc
> index 5f43941fae..e4281ceb4f 100644
> --- a/config/arm/arm64_kunpeng930_linux_gcc
> +++ b/config/arm/arm64_kunpeng930_linux_gcc
> @@ -1,6 +1,6 @@
> [binaries]
> c = ['ccache', 'aarch64-linux-gnu-gcc']
> -cpp = ['ccache', 'aarch64-linux-gnu-cpp']
> +cpp = ['ccache', 'aarch64-linux-gnu-g++']
> ar = 'aarch64-linux-gnu-gcc-ar'
> strip = 'aarch64-linux-gnu-strip'
> pkgconfig = 'aarch64-linux-gnu-pkg-config'
> diff --git a/config/arm/arm64_n1sdp_linux_gcc b/config/arm/arm64_n1sdp_linux_gcc
> index fc123ab53f..2806a4241b 100644
> --- a/config/arm/arm64_n1sdp_linux_gcc
> +++ b/config/arm/arm64_n1sdp_linux_gcc
> @@ -1,6 +1,6 @@
> [binaries]
> c = ['ccache', 'aarch64-linux-gnu-gcc']
> -cpp = ['ccache', 'aarch64-linux-gnu-cpp']
> +cpp = ['ccache', 'aarch64-linux-gnu-g++']
> ar = 'aarch64-linux-gnu-gcc-ar'
> strip = 'aarch64-linux-gnu-strip'
> pkgconfig = 'aarch64-linux-gnu-pkg-config'
> diff --git a/config/arm/arm64_n2_linux_gcc b/config/arm/arm64_n2_linux_gcc
> index 930bd5c236..7404bd197b 100644
> --- a/config/arm/arm64_n2_linux_gcc
> +++ b/config/arm/arm64_n2_linux_gcc
> @@ -1,6 +1,6 @@
> [binaries]
> c = ['ccache', 'aarch64-linux-gnu-gcc']
> -cpp = ['ccache', 'aarch64-linux-gnu-cpp']
> +cpp = ['ccache', 'aarch64-linux-gnu-g++']
> ar = 'aarch64-linux-gnu-gcc-ar'
> strip = 'aarch64-linux-gnu-strip'
> pkgconfig = 'aarch64-linux-gnu-pkg-config'
> diff --git a/config/arm/arm64_stingray_linux_gcc b/config/arm/arm64_stingray_linux_gcc
> index 5dfcd974fd..08148b5c3d 100644
> --- a/config/arm/arm64_stingray_linux_gcc
> +++ b/config/arm/arm64_stingray_linux_gcc
> @@ -1,6 +1,6 @@
> [binaries]
> c = ['ccache', 'aarch64-linux-gnu-gcc']
> -cpp = ['ccache', 'aarch64-linux-gnu-cpp']
> +cpp = ['ccache', 'aarch64-linux-gnu-g++']
> ar = 'aarch64-linux-gnu-gcc-ar'
> strip = 'aarch64-linux-gnu-strip'
> pkgconfig = 'aarch64-linux-gnu-pkg-config'
> diff --git a/config/arm/arm64_thunderx2_linux_gcc b/config/arm/arm64_thunderx2_linux_gcc
> index c1f5995d93..32ae938e95 100644
> --- a/config/arm/arm64_thunderx2_linux_gcc
> +++ b/config/arm/arm64_thunderx2_linux_gcc
> @@ -1,6 +1,6 @@
> [binaries]
> c = ['ccache', 'aarch64-linux-gnu-gcc']
> -cpp = ['ccache', 'aarch64-linux-gnu-cpp']
> +cpp = ['ccache', 'aarch64-linux-gnu-g++']
> ar = 'aarch64-linux-gnu-gcc-ar'
> strip = 'aarch64-linux-gnu-strip'
> pkgconfig = 'aarch64-linux-gnu-pkg-config'
> diff --git a/config/arm/arm64_thunderxt83_linux_gcc b/config/arm/arm64_thunderxt83_linux_gcc
> index 52746e2e59..e9d9e62d44 100644
> --- a/config/arm/arm64_thunderxt83_linux_gcc
> +++ b/config/arm/arm64_thunderxt83_linux_gcc
> @@ -1,6 +1,6 @@
> [binaries]
> c = ['ccache', 'aarch64-linux-gnu-gcc']
> -cpp = ['ccache', 'aarch64-linux-gnu-cpp']
> +cpp = ['ccache', 'aarch64-linux-gnu-g++']
> ar = 'aarch64-linux-gnu-gcc-ar'
> strip = 'aarch64-linux-gnu-strip'
> pkgconfig = 'aarch64-linux-gnu-pkg-config'
> diff --git a/config/arm/arm64_thunderxt88_linux_gcc b/config/arm/arm64_thunderxt88_linux_gcc
> index fed7eb791e..c6e5a5656a 100644
> --- a/config/arm/arm64_thunderxt88_linux_gcc
> +++ b/config/arm/arm64_thunderxt88_linux_gcc
> @@ -1,6 +1,6 @@
> [binaries]
> c = ['ccache', 'aarch64-linux-gnu-gcc']
> -cpp = ['ccache', 'aarch64-linux-gnu-cpp']
> +cpp = ['ccache', 'aarch64-linux-gnu-g++']
> ar = 'aarch64-linux-gnu-gcc-ar'
> strip = 'aarch64-linux-gnu-strip'
> pkgconfig = 'aarch64-linux-gnu-pkg-config'
> diff --git a/config/ppc/ppc64le-power8-linux-gcc b/config/ppc/ppc64le-power8-linux-gcc
> index 465044e427..8c2db89382 100644
> --- a/config/ppc/ppc64le-power8-linux-gcc
> +++ b/config/ppc/ppc64le-power8-linux-gcc
> @@ -1,6 +1,6 @@
> [binaries]
> c = ['ccache', 'powerpc64le-linux-gcc']
> -cpp = ['ccache', 'powerpc64le-linux-cpp']
> +cpp = ['ccache', 'powerpc64le-linux-g++']
> ar = 'powerpc64le-linux-gcc-ar'
> strip = 'powerpc64le-linux-strip'
>
> diff --git a/config/ppc/ppc64le-power8-linux-gcc-ubuntu b/config/ppc/ppc64le-power8-linux-gcc-ubuntu
> index 44d7e0100a..3027d66f8d 100644
> --- a/config/ppc/ppc64le-power8-linux-gcc-ubuntu
> +++ b/config/ppc/ppc64le-power8-linux-gcc-ubuntu
> @@ -1,6 +1,6 @@
> [binaries]
> c = ['ccache', 'powerpc64le-linux-gnu-gcc']
> -cpp = ['ccache', 'powerpc64le-linux-gnu-cpp']
> +cpp = ['ccache', 'powerpc64le-linux-gnu-g++']
> ar = 'powerpc64le-linux-gnu-ar'
> strip = 'powerpc64le-linux-gnu-strip'
>
> --
> 2.30.2
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 1/2] config: Use G++ as C++ compiler
2022-06-21 19:53 ` Tyler Retzlaff
@ 2022-06-22 5:07 ` Stanisław Kardach
2022-06-22 16:05 ` Tyler Retzlaff
0 siblings, 1 reply; 10+ messages in thread
From: Stanisław Kardach @ 2022-06-22 5:07 UTC (permalink / raw)
To: Tyler Retzlaff; +Cc: Ruifeng Wang, David Christensen, dev, upstream
On Tue, Jun 21, 2022 at 9:53 PM Tyler Retzlaff
<roretzla@linux.microsoft.com> wrote:
> <snip>
> > -cpp = ['ccache', 'arm-linux-gnueabihf-cpp']
> > +cpp = ['ccache', 'arm-linux-gnueabihf-g++']
>
> suggest the variable should be 'cxx' not 'cpp' (to be consistent with
> other build systems in the linux world)
The variable name is mandated by meson as it names C++ language "cpp"
in other places:
https://mesonbuild.com/Reference-tables.html#language-arguments-parameter-names
--
Best Regards,
Stanisław Kardach
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 1/2] config: Use G++ as C++ compiler
2022-06-22 5:07 ` Stanisław Kardach
@ 2022-06-22 16:05 ` Tyler Retzlaff
2022-06-22 16:24 ` Morten Brørup
0 siblings, 1 reply; 10+ messages in thread
From: Tyler Retzlaff @ 2022-06-22 16:05 UTC (permalink / raw)
To: Stanisław Kardach; +Cc: Ruifeng Wang, David Christensen, dev, upstream
On Wed, Jun 22, 2022 at 07:07:12AM +0200, Stanisław Kardach wrote:
> On Tue, Jun 21, 2022 at 9:53 PM Tyler Retzlaff
> <roretzla@linux.microsoft.com> wrote:
> > <snip>
> > > -cpp = ['ccache', 'arm-linux-gnueabihf-cpp']
> > > +cpp = ['ccache', 'arm-linux-gnueabihf-g++']
> >
> > suggest the variable should be 'cxx' not 'cpp' (to be consistent with
> > other build systems in the linux world)
> The variable name is mandated by meson as it names C++ language "cpp"
> in other places:
> https://mesonbuild.com/Reference-tables.html#language-arguments-parameter-names
unfortunate the meson folks didn't do their research.
thanks for clarifying, you can disregard my suggestion then.
> --
> Best Regards,
> Stanisław Kardach
^ permalink raw reply [flat|nested] 10+ messages in thread
* RE: [PATCH 1/2] config: Use G++ as C++ compiler
2022-06-22 16:05 ` Tyler Retzlaff
@ 2022-06-22 16:24 ` Morten Brørup
0 siblings, 0 replies; 10+ messages in thread
From: Morten Brørup @ 2022-06-22 16:24 UTC (permalink / raw)
To: Tyler Retzlaff, Stanisław Kardach
Cc: Ruifeng Wang, David Christensen, dev, upstream
> From: Tyler Retzlaff [mailto:roretzla@linux.microsoft.com]
> Sent: Wednesday, 22 June 2022 18.06
>
> On Wed, Jun 22, 2022 at 07:07:12AM +0200, Stanisław Kardach wrote:
> > On Tue, Jun 21, 2022 at 9:53 PM Tyler Retzlaff
> > <roretzla@linux.microsoft.com> wrote:
> > > <snip>
> > > > -cpp = ['ccache', 'arm-linux-gnueabihf-cpp']
> > > > +cpp = ['ccache', 'arm-linux-gnueabihf-g++']
> > >
> > > suggest the variable should be 'cxx' not 'cpp' (to be consistent
> with
> > > other build systems in the linux world)
> > The variable name is mandated by meson as it names C++ language "cpp"
> > in other places:
> > https://mesonbuild.com/Reference-tables.html#language-arguments-
> parameter-names
>
> unfortunate the meson folks didn't do their research.
Yes. But they seem to try to correct it... e.g. OBJCPP_LD was renamed to OBJCXX_LD.
Not sure how much it means, but CPP usually refers to the C Pre Processor.
Just my 2 cents. Whatever is fine.
>
> thanks for clarifying, you can disregard my suggestion then.
>
> > --
> > Best Regards,
> > Stanisław Kardach
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 2/2] ci: use crossbuild-essential packages
2022-06-21 12:28 ` [PATCH 2/2] ci: use crossbuild-essential packages Stanislaw Kardach
@ 2022-06-23 8:04 ` David Marchand
0 siblings, 0 replies; 10+ messages in thread
From: David Marchand @ 2022-06-23 8:04 UTC (permalink / raw)
To: Stanislaw Kardach; +Cc: Ruifeng Wang, David Christensen, dev, upstream
On Tue, Jun 21, 2022 at 2:28 PM Stanislaw Kardach <kda@semihalf.com> wrote:
>
> The crossbuild-essential-<arch> packages contain all necessary
> dependencies to cross-compile binaries for a given architecture
> including C and C++ compilers. Therefore use those instead of listing
> packages directly. This way C++ compiler is also installed and C++
> include checks will be checked in CI for PowerPC and ARM.
>
> Signed-off-by: Stanislaw Kardach <kda@semihalf.com>
Reviewed-by: David Marchand <david.marchand@redhat.com>
--
David Marchand
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH 0/2] fix C++ include checks in cross-compilation
2022-06-21 12:28 [PATCH 0/2] fix C++ include checks in cross-compilation Stanislaw Kardach
2022-06-21 12:28 ` [PATCH 1/2] config: Use G++ as C++ compiler Stanislaw Kardach
2022-06-21 12:28 ` [PATCH 2/2] ci: use crossbuild-essential packages Stanislaw Kardach
@ 2022-06-23 8:04 ` David Marchand
2 siblings, 0 replies; 10+ messages in thread
From: David Marchand @ 2022-06-23 8:04 UTC (permalink / raw)
To: Stanislaw Kardach; +Cc: dev, upstream
On Tue, Jun 21, 2022 at 2:28 PM Stanislaw Kardach <kda@semihalf.com> wrote:
>
> Meson detects the C++ cross-compiler during configuration and based on
> that reports whether C++ language is available or not.
> The C++ include check target (buildtools/chkincs/chkincs-cpp) is only
> built when C++ language is available.
>
> There are 2 issues that currently prevent those checks to be run in
> cross-compiled environments:
>
> * PowerPC and ARM cross-files define cpp instead of g++ as C++ compiler.
> That's wrong because cpp is a C Preprocessor binary.
> * The CI workflow file does not install a g++ cross-compiler.
>
> This patchset fixes both issues.
>
> Stanislaw Kardach (2):
> config: Use G++ as C++ compiler
> ci: use crossbuild-essential packages
Series applied, thanks Stanislaw.
--
David Marchand
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2022-06-23 8:05 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-06-21 12:28 [PATCH 0/2] fix C++ include checks in cross-compilation Stanislaw Kardach
2022-06-21 12:28 ` [PATCH 1/2] config: Use G++ as C++ compiler Stanislaw Kardach
2022-06-21 14:25 ` Bruce Richardson
2022-06-21 19:53 ` Tyler Retzlaff
2022-06-22 5:07 ` Stanisław Kardach
2022-06-22 16:05 ` Tyler Retzlaff
2022-06-22 16:24 ` Morten Brørup
2022-06-21 12:28 ` [PATCH 2/2] ci: use crossbuild-essential packages Stanislaw Kardach
2022-06-23 8:04 ` David Marchand
2022-06-23 8:04 ` [PATCH 0/2] fix C++ include checks in cross-compilation 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).