Pārlūkot izejas kodu

Added explicit setting of exception/RTTI flags when enabled (#1210)

Mikael Hermansson 11 mēneši atpakaļ
vecāks
revīzija
c45bfaccbc
1 mainītis faili ar 12 papildinājumiem un 3 dzēšanām
  1. 12 3
      Build/CMakeLists.txt

+ 12 - 3
Build/CMakeLists.txt

@@ -134,9 +134,12 @@ if (MSVC)
 		set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /Zi")
 		set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /Zi")
 	endif()
 	endif()
 
 
-	# Set compiler flag for disabling RTTI
 	if (NOT CPP_RTTI_ENABLED)
 	if (NOT CPP_RTTI_ENABLED)
+		# Set compiler flag for disabling RTTI
 		set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /GR-")
 		set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /GR-")
+	else()
+		# Set compiler flag for enabling RTTI
+		set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /GR")
 	endif()
 	endif()
 
 
 	if (NOT CPP_EXCEPTIONS_ENABLED)
 	if (NOT CPP_EXCEPTIONS_ENABLED)
@@ -189,14 +192,20 @@ else()
 		set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g")
 		set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g")
 	endif()
 	endif()
 
 
-	# Set compiler flag for disabling RTTI
 	if (NOT CPP_RTTI_ENABLED)
 	if (NOT CPP_RTTI_ENABLED)
+		# Set compiler flag for disabling RTTI
 		set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-rtti")
 		set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-rtti")
+	else()
+		# Set compiler flag for enabling RTTI
+		set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -frtti")
 	endif()
 	endif()
 
 
-	# Disable exception-handling
 	if (NOT CPP_EXCEPTIONS_ENABLED)
 	if (NOT CPP_EXCEPTIONS_ENABLED)
+		# Set compiler flag for disabling exception-handling
 		set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-exceptions")
 		set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-exceptions")
+	else()
+		# Set compiler flag for enabling exception-handling
+		set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fexceptions")
 	endif()
 	endif()
 
 
 	if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
 	if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")