Quellcode durchsuchen

CMake: Add public cmake option to document ENABLE_ALL_THE_DEBUG_MACROS

- Making this an option makes this option visible to users and tooling.
- Rename `ALL_THE_DEBUG_MACROS` -> `ENABLE_ALL_THE_DEBUG_MACROS`.
Brian Gianforcaro vor 4 Jahren
Ursprung
Commit
40f671ac67
2 geänderte Dateien mit 6 neuen und 4 gelöschten Zeilen
  1. 2 2
      .github/workflows/cmake.yml
  2. 4 2
      CMakeLists.txt

+ 2 - 2
.github/workflows/cmake.yml

@@ -66,7 +66,7 @@ jobs:
       run: |
         mkdir -p Build
         cd Build
-        cmake .. -GNinja -DBUILD_LAGOM=1 -DALL_THE_DEBUG_MACROS=1
+        cmake .. -GNinja -DBUILD_LAGOM=1 -DENABLE_ALL_THE_DEBUG_MACROS=ON
 
     # === ACTUALLY BUILD AND TEST ===
 
@@ -173,7 +173,7 @@ jobs:
       run: |
         mkdir -p Build
         cd Build
-        cmake .. -GNinja -DBUILD_LAGOM=1 -DALL_THE_DEBUG_MACROS=1 -DCMAKE_C_COMPILER=gcc-10 -DCMAKE_CXX_COMPILER=g++-10
+        cmake .. -GNinja -DBUILD_LAGOM=1 -DENABLE_ALL_THE_DEBUG_MACROS=ON -DCMAKE_C_COMPILER=gcc-10 -DCMAKE_CXX_COMPILER=g++-10
 
     # === ACTUALLY BUILD AND TEST ===
 

+ 4 - 2
CMakeLists.txt

@@ -16,10 +16,12 @@ set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
 
 set(SERENITY_ARCH "i686" CACHE STRING "Target architecture for SerenityOS.")
 
+# Central location for all custom options used in the Serenity build.
 option(ENABLE_ADDRESS_SANITIZER "Enable address sanitizer testing in gcc/clang" FALSE)
 option(ENABLE_MEMORY_SANITIZER "Enable memory sanitizer testing in gcc/clang" FALSE)
 option(ENABLE_UNDEFINED_SANITIZER "Enable undefined behavior sanitizer testing in gcc/clang" FALSE)
 option(ENABLE_FUZZER_SANITIZER "Enable fuzzer sanitizer testing in clang" FALSE)
+option(ENABLE_ALL_THE_DEBUG_MACROS "Enable all debug macros to validate they still compile" FALSE)
 
 add_custom_target(run
     COMMAND ${CMAKE_SOURCE_DIR}/Meta/run.sh
@@ -61,9 +63,9 @@ elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
     add_compile_options(-Wno-overloaded-virtual)
 endif()
 
-if (ALL_THE_DEBUG_MACROS)
+if (ENABLE_ALL_THE_DEBUG_MACROS)
     include(${CMAKE_SOURCE_DIR}/Meta/CMake/all_the_debug_macros.cmake)
-endif(ALL_THE_DEBUG_MACROS)
+endif(ENABLE_ALL_THE_DEBUG_MACROS)
 
 include_directories(Libraries)
 include_directories(.)