diff mbox series

[1/1] package/fxdiv: fix build without C++ toolchain

Message ID 20230130042913.3605338-1-james.hilliard1@gmail.com
State Accepted
Headers show
Series [1/1] package/fxdiv: fix build without C++ toolchain | expand

Commit Message

James Hilliard Jan. 30, 2023, 4:29 a.m. UTC
The cmake project for fxdiv sets the project language to C and CXX
even when only C is required.

Add a patch which disables CXX unless required.

Fixes:
 - http://autobuild.buildroot.net/results/b0f/b0f3b6352429a5156a8c3a2b932331753887b65b
 - http://autobuild.buildroot.net/results/52f/52f634c06bdfe983280a2c01bb9fec4b0e1a4b34
 - http://autobuild.buildroot.net/results/181/181b85d9dd505693ed23fab823085b001aa785f4

Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
---
 ...le-CXX-unless-building-tests-benchma.patch | 49 +++++++++++++++++++
 1 file changed, 49 insertions(+)
 create mode 100644 package/fxdiv/0001-CMake-don-t-enable-CXX-unless-building-tests-benchma.patch

Comments

Yann E. MORIN Jan. 30, 2023, 7:08 a.m. UTC | #1
James, All,

On 2023-01-29 21:29 -0700, James Hilliard spake thusly:
> The cmake project for fxdiv sets the project language to C and CXX
> even when only C is required.
> 
> Add a patch which disables CXX unless required.
> 
> Fixes:
>  - http://autobuild.buildroot.net/results/b0f/b0f3b6352429a5156a8c3a2b932331753887b65b
>  - http://autobuild.buildroot.net/results/52f/52f634c06bdfe983280a2c01bb9fec4b0e1a4b34
>  - http://autobuild.buildroot.net/results/181/181b85d9dd505693ed23fab823085b001aa785f4
> 
> Signed-off-by: James Hilliard <james.hilliard1@gmail.com>

Applied to master, thanks.

Regards,
Yann E. MORIN.

> ---
>  ...le-CXX-unless-building-tests-benchma.patch | 49 +++++++++++++++++++
>  1 file changed, 49 insertions(+)
>  create mode 100644 package/fxdiv/0001-CMake-don-t-enable-CXX-unless-building-tests-benchma.patch
> 
> diff --git a/package/fxdiv/0001-CMake-don-t-enable-CXX-unless-building-tests-benchma.patch b/package/fxdiv/0001-CMake-don-t-enable-CXX-unless-building-tests-benchma.patch
> new file mode 100644
> index 0000000000..0336f5e1cc
> --- /dev/null
> +++ b/package/fxdiv/0001-CMake-don-t-enable-CXX-unless-building-tests-benchma.patch
> @@ -0,0 +1,49 @@
> +From 8c2d8fc60306a8edd21182a1f5f267a7aca55763 Mon Sep 17 00:00:00 2001
> +From: James Hilliard <james.hilliard1@gmail.com>
> +Date: Sun, 29 Jan 2023 21:18:28 -0700
> +Subject: [PATCH] CMake: don't enable CXX unless building tests/benchmarks
> +
> +We only need CXX support when building tests/benchmarks.
> +
> +Fixes:
> +CMake Error at CMakeLists.txt:4 (PROJECT):
> +  No CMAKE_CXX_COMPILER could be found.
> +
> +  Tell CMake where to find the compiler by setting either the environment
> +  variable "CXX" or the CMake cache entry CMAKE_CXX_COMPILER to the full path
> +  to the compiler, or to the compiler name if it is in the PATH.
> +
> +Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
> +[Upstream status:
> +https://github.com/Maratyszcza/FXdiv/pull/3]
> +---
> + CMakeLists.txt | 6 +++++-
> + 1 file changed, 5 insertions(+), 1 deletion(-)
> +
> +diff --git a/CMakeLists.txt b/CMakeLists.txt
> +index bcae6b5..c75f558 100644
> +--- a/CMakeLists.txt
> ++++ b/CMakeLists.txt
> +@@ -1,7 +1,7 @@
> + CMAKE_MINIMUM_REQUIRED(VERSION 3.5 FATAL_ERROR)
> + 
> + # ---[ Project
> +-PROJECT(FXdiv C CXX)
> ++PROJECT(FXdiv C)
> + 
> + # ---[ Options.
> + OPTION(FXDIV_USE_INLINE_ASSEMBLY "Allow use of inline assembly in FXdiv" OFF)
> +@@ -16,6 +16,10 @@ ENDIF()
> + # ---[ CMake options
> + INCLUDE(GNUInstallDirs)
> + 
> ++IF(FXDIV_BUILD_TESTS OR FXDIV_BUILD_BENCHMARKS)
> ++  ENABLE_LANGUAGE(CXX)
> ++ENDIF()
> ++
> + IF(FXDIV_BUILD_TESTS)
> +   ENABLE_TESTING()
> + ENDIF()
> +-- 
> +2.34.1
> +
> -- 
> 2.34.1
> 
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot
diff mbox series

Patch

diff --git a/package/fxdiv/0001-CMake-don-t-enable-CXX-unless-building-tests-benchma.patch b/package/fxdiv/0001-CMake-don-t-enable-CXX-unless-building-tests-benchma.patch
new file mode 100644
index 0000000000..0336f5e1cc
--- /dev/null
+++ b/package/fxdiv/0001-CMake-don-t-enable-CXX-unless-building-tests-benchma.patch
@@ -0,0 +1,49 @@ 
+From 8c2d8fc60306a8edd21182a1f5f267a7aca55763 Mon Sep 17 00:00:00 2001
+From: James Hilliard <james.hilliard1@gmail.com>
+Date: Sun, 29 Jan 2023 21:18:28 -0700
+Subject: [PATCH] CMake: don't enable CXX unless building tests/benchmarks
+
+We only need CXX support when building tests/benchmarks.
+
+Fixes:
+CMake Error at CMakeLists.txt:4 (PROJECT):
+  No CMAKE_CXX_COMPILER could be found.
+
+  Tell CMake where to find the compiler by setting either the environment
+  variable "CXX" or the CMake cache entry CMAKE_CXX_COMPILER to the full path
+  to the compiler, or to the compiler name if it is in the PATH.
+
+Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
+[Upstream status:
+https://github.com/Maratyszcza/FXdiv/pull/3]
+---
+ CMakeLists.txt | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index bcae6b5..c75f558 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1,7 +1,7 @@
+ CMAKE_MINIMUM_REQUIRED(VERSION 3.5 FATAL_ERROR)
+ 
+ # ---[ Project
+-PROJECT(FXdiv C CXX)
++PROJECT(FXdiv C)
+ 
+ # ---[ Options.
+ OPTION(FXDIV_USE_INLINE_ASSEMBLY "Allow use of inline assembly in FXdiv" OFF)
+@@ -16,6 +16,10 @@ ENDIF()
+ # ---[ CMake options
+ INCLUDE(GNUInstallDirs)
+ 
++IF(FXDIV_BUILD_TESTS OR FXDIV_BUILD_BENCHMARKS)
++  ENABLE_LANGUAGE(CXX)
++ENDIF()
++
+ IF(FXDIV_BUILD_TESTS)
+   ENABLE_TESTING()
+ ENDIF()
+-- 
+2.34.1
+