From 878d51187bbc1ad490b4cd15e3741bc0bd11b6b2 Mon Sep 17 00:00:00 2001 From: Joel Carlson Date: Thu, 6 Sep 2018 14:53:20 -0600 Subject: [PATCH] CMakeLists.txt: conditionally require C++ based on FLATCC_TEST (#94) C++ is only used when building the tests, so only include it as a language via project() when FLATCC_TEST is enabled. This allows toolchains that don't have C++ to build flatcc. Signed-off-by: Joel Carlson --- Upstream commit 878d51187bbc1ad490b4cd15e3741bc0bd11b6b2 --- CMakeLists.txt | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index b39a3d1..5df5161 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -4,7 +4,18 @@ #cmake_minimum_required (VERSION 2.8.11) cmake_minimum_required (VERSION 2.8) -project (FlatCC C CXX) +# Disable build of tests and samples. Due to custom build step +# dependency on flatcc tool, some custom build configurations may +# experience issues, and this option can then help. +option(FLATCC_TEST "enable tests" ON) + +# Conditionally set project languages based on FLATCC_TEST, as C++ is +# only necessary if building the tests. +if (FLATCC_TEST) + project (FlatCC C CXX) +else() + project (FlatCC C) +endif() # # NOTE: when changing build options, clean the build using on of: @@ -35,11 +46,6 @@ option(FLATCC_RTONLY "enable build of runtime library only" OFF) # cmake -DBUILD_SHARED_LIBS=on can override. option(FLATCC_INSTALL "enable build of runtime library only" OFF) -# Disable build of tests and samples. Due to custom build step -# dependency on flatcc tool, some custom build configurations may -# experience issues, and this option can then help. -option(FLATCC_TEST "enable tests" ON) - # Use with debug build with testing enabled only. Enables generation # of coverage information during build and run. Adds target "coverage" # which collects data and makes HTML report in build directory -- 2.7.4