build: remove rtti for files using clang

Clang is usually compiled without runtime type information, so all files that use clang classes can't have rtti. This
change creates a separate CLANG_FILES variable which holds all clang files, so they can be compiled without rtti.

review id = 11
This commit is contained in:
Eberhard Graether
2014-04-29 17:23:20 +02:00
parent 330c38d9af
commit ad54b0d1fa
3 changed files with 11 additions and 6 deletions
+4 -1
View File
@@ -49,9 +49,12 @@ add_definitions(${CLANG_DEFINITIONS})
add_subdirectory(src/lib)
add_subdirectory(src/external)
add_library(${LIB_PROJECT_NAME} ${LIB_FILES} ${EXTERNAL_FILES})
set_source_files_properties(${CLANG_FILES} PROPERTIES COMPILE_FLAGS "-fno-rtti")
add_library(${LIB_PROJECT_NAME} ${LIB_FILES} ${CLANG_FILES} ${EXTERNAL_FILES})
create_source_groups(${LIB_FILES})
create_source_groups(${CLANG_FILES})
create_source_groups(${EXTERNAL_FILES})
set_target_properties(
-2
View File
@@ -3,8 +3,6 @@ execute_process(
OUTPUT_VARIABLE CLANG_DEFINITIONS
)
set(CLANG_DEFINITIONS ${CLANG_DEFINITIONS} "-fno-rtti")
set(CLANG_INCLUDE_DIRS
"$ENV{CLANG_DIR}/llvm/tools/clang/include"
"$ENV{CLANG_DIR}/build/tools/clang/include"
+7 -3
View File
@@ -1,3 +1,10 @@
add_files(
CLANG_FILES
data/parser/clang.cpp
data/parser/clang.h
)
add_files(
LIB_FILES
@@ -25,9 +32,6 @@ add_files(
data/access/GraphAccess.cpp
data/access/GraphAccess.h
data/parser/clang.cpp
data/parser/clang.h
data/Edge.cpp
data/Edge.h
data/Element.cpp