aboutsummaryrefslogtreecommitdiffstats
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorsaturneric <[email protected]>2024-07-28 17:45:39 +0000
committersaturneric <[email protected]>2024-07-28 17:45:39 +0000
commit7a552f4d9dc0455b66ea2329bc1cd06a71bc6a79 (patch)
treec344bf0615bc49f80bb81519810bade0d6ea05ba /CMakeLists.txt
parentfix: errors in judgment conditions (diff)
downloadGpgFrontend-sdk/2.1.3.tar.gz
GpgFrontend-sdk/2.1.3.zip
feat: support more build modesdk/2.1.3
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt51
1 files changed, 45 insertions, 6 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 8d261fa5..4bbbaa5a 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -65,7 +65,9 @@ option(GPGFRONTEND_BUILD_TYPE_TEST_ALL
"Generate a graphical interface with all functions" OFF)
option(GPGFRONTEND_BUILD_TYPE_STABLE
"Generate release version" ON)
-option(GPGFRONTEND_BUILD_TYPE_SDK "Generate a usable SDK" OFF)
+option(GPGFRONTEND_BUILD_TYPE_FULL_SDK "Build and install all headers and libs exclude application" OFF)
+option(GPGFRONTEND_BUILD_TYPE_ONLY_SDK "Build and install sdk headers and libs" OFF)
+option(GPGFRONTEND_BUILD_TYPE_ONLY_APPLICATION "Generate a usable SDK" OFF)
option(GPGFRONTEND_QT5_BUILD "Swith to Qt5 building mode" OFF)
option(GPGFRONTEND_GENERATE_LINUX_INSTALL_SOFTWARE "Generate an installable version" OFF)
option(GPGFRONTEND_ENABLE_ASAN "Enable ASAN" OFF)
@@ -125,7 +127,7 @@ if (GPGFRONTEND_GENERATE_LINUX_INSTALL_SOFTWARE)
set(LINUX_INSTALL_SOFTWARE 1)
endif ()
-if (GPGFRONTEND_BUILD_TYPE_SDK)
+if (GPGFRONTEND_BUILD_TYPE_FULL_SDK)
set(GPGFRONTEND_BUILD_TYPE_TEST_CORE 0)
set(GPGFRONTEND_BUILD_TYPE_TEST_CORE_AND_COVERAGE 0)
set(GPGFRONTEND_BUILD_TYPE_TEST_UI 0)
@@ -133,7 +135,29 @@ if (GPGFRONTEND_BUILD_TYPE_SDK)
unset(GPGFRONTEND_BUILD_CONFIG)
set(STABLE_BUILD_APPLICATION 0)
- set(STABLE_BUILD_SDK_ONLY 1)
+ set(STABLE_BUILD_FULL_SDK 1)
+endif()
+
+if (GPGFRONTEND_BUILD_TYPE_ONLY_SDK)
+ set(GPGFRONTEND_BUILD_TYPE_TEST_CORE 0)
+ set(GPGFRONTEND_BUILD_TYPE_TEST_CORE_AND_COVERAGE 0)
+ set(GPGFRONTEND_BUILD_TYPE_TEST_UI 0)
+ set(GPGFRONTEND_BUILD_TYPE_TEST_ALL 0)
+ unset(GPGFRONTEND_BUILD_CONFIG)
+
+ set(STABLE_BUILD_APPLICATION 0)
+ set(STABLE_BUILD_ONLY_SDK 1)
+endif()
+
+if (GPGFRONTEND_BUILD_TYPE_ONLY_APPLICATION)
+ set(GPGFRONTEND_BUILD_TYPE_TEST_CORE 0)
+ set(GPGFRONTEND_BUILD_TYPE_TEST_CORE_AND_COVERAGE 0)
+ set(GPGFRONTEND_BUILD_TYPE_TEST_UI 0)
+ set(GPGFRONTEND_BUILD_TYPE_TEST_ALL 0)
+ unset(GPGFRONTEND_BUILD_CONFIG)
+
+ set(STABLE_BUILD_APPLICATION 0)
+ set(STABLE_BUILD_ONLY_APPLICATION 1)
endif()
# C++
@@ -394,20 +418,35 @@ set(CMAKE_AUTORCC_OPTIONS "--compress;9")
set(CMAKE_AUTOUIC_SEARCH_PATHS ${CMAKE_AUTOUIC_SEARCH_PATHS} ${CMAKE_SOURCE_DIR}/ui)
if (STABLE_BUILD_APPLICATION)
- message("[+] Build Stable Application")
+ message("[*] Build Stable Application")
set(BUILD_CORE 1)
set(BUILD_UI 1)
set(BUILD_TEST 1)
+ set(BUILD_SDK 1)
set(BUILD_APPLICATION 1)
set(SUPPORT_MULTI_LANG 1)
+elseif (STABLE_BUILD_ONLY_SDK)
+ message("[*] Build SDK")
+ set(BUILD_CORE 1)
+ set(BUILD_UI 1)
set(BUILD_SDK 1)
-elseif (STABLE_BUILD_SDK_ONLY)
- message("[+] Build SDK")
+elseif (STABLE_BUILD_FULL_SDK)
+ message("[*] Build All Headers and Libs (SDK fully build)")
set(BUILD_CORE 1)
set(BUILD_UI 1)
+ set(BUILD_TEST 1)
set(BUILD_SDK 1)
+elseif (GPGFRONTEND_BUILD_TYPE_ONLY_APPLICATION)
+ message("[*] Build executable only")
+ set(BUILD_CORE 0)
+ set(BUILD_UI 0)
+ set(BUILD_TEST 0)
+ set(BUILD_SDK 0)
+ set(BUILD_APPLICATION 1)
+ set(SUPPORT_MULTI_LANG 1)
endif ()
+
# For instance in order to select the highest version one
SET(CMAKE_FIND_PACKAGE_SORT_ORDER NATURAL)
SET(CMAKE_FIND_PACKAGE_SORT_DIRECTION DEC)