summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorStanislaw Halik <sthalik@misaki.pl>2022-11-15 12:09:00 +0100
committerStanislaw Halik <sthalik@misaki.pl>2022-11-15 12:21:48 +0100
commit9f84e5b548a94726814ec117d6d2e17695f3de4a (patch)
treea5b048083e2303ff6b8fb6eb11457dc27e6bce52
parent79ee48e0f68a3c2db2e75615cf26d4c7a239744a (diff)
cmake: disable RTTI except for Corrade test suite
-rw-r--r--CMakeLists.txt6
-rw-r--r--external/CMakeLists.txt17
2 files changed, 21 insertions, 2 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 732930e6..6296696b 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -160,6 +160,12 @@ if(NOT APPLE AND NOT WIN32)
add_compile_options(-fno-plt)
endif()
+if(MSVC)
+ add_compile_options(-GR-)
+else()
+ add_compile_options(-fno-rtti)
+endif()
+
fm_run_hook(fm-userconfig-src)
include_directories(.)
diff --git a/external/CMakeLists.txt b/external/CMakeLists.txt
index 80c8de81..b9ad5a2a 100644
--- a/external/CMakeLists.txt
+++ b/external/CMakeLists.txt
@@ -240,14 +240,27 @@ if(FLOORMAT_SUBMODULE-DEPENDENCIES)
if(MAGNUM_BUILD_TESTS OR CORRADE_BUILD_TESTS AND NOT DEFINED CORRADE_TESTSUITE_TEST_TARGET)
sets(STRING CORRADE_TESTSUITE_TEST_TARGET corrade-test)
endif()
+ fm_add_sdl2()
+ #fm_add_luajit()
+ if(MSVC)
+ add_compile_options(-GR-)
+ else()
+ add_compile_options(-fno-rtti)
+ endif()
add_subdirectory(fmt)
add_subdirectory(json)
add_subdirectory(corrade)
- fm_add_sdl2()
+ if(MSVC)
+ target_compile_options(CorradeTestSuiteObjects PUBLIC -GR)
+ target_compile_options(CorradeTestSuite PUBLIC -GR)
+
+ else()
+ target_compile_options(CorradeTestSuiteObjects PUBLIC -frtti)
+ target_compile_options(CorradeTestSuite PUBLIC -frtti)
+ endif()
add_subdirectory(magnum)
add_subdirectory(magnum-plugins)
add_subdirectory(magnum-integration)
- #fm_add_luajit()
endfunction()
if(MAGNUM_BUILD_PLUGINS_STATIC)