diff -rupN --exclude=.DS_Store --exclude='*.pyc' llvm-3.5.0.src/CMakeLists.txt llvm-3.5.0.src.cotire/CMakeLists.txt --- llvm-3.5.0.src/CMakeLists.txt 2014-07-04 06:23:26.000000000 +0200 +++ llvm-3.5.0.src.cotire/CMakeLists.txt 2014-12-14 12:19:41.000000000 +0100 @@ -1,6 +1,6 @@ # See docs/CMake.html for instructions about how to build LLVM with CMake. -cmake_minimum_required(VERSION 2.8.8) +cmake_minimum_required(VERSION 2.8.12) # FIXME: It may be removed when we use 2.8.12. if(CMAKE_VERSION VERSION_LESS 2.8.12) @@ -41,6 +41,8 @@ if ( LLVM_USE_FOLDERS ) endif() include(VersionFromVCS) +include(cotire) +set_property(DIRECTORY PROPERTY COTIRE_UNITY_LINK_LIBRARIES_INIT "COPY_UNITY") option(LLVM_APPEND_VC_REV "Append the version control system revision id to LLVM version" OFF) diff -rupN --exclude=.DS_Store --exclude='*.pyc' llvm-3.5.0.src/cmake/modules/AddLLVM.cmake llvm-3.5.0.src.cotire/cmake/modules/AddLLVM.cmake --- llvm-3.5.0.src/cmake/modules/AddLLVM.cmake 2014-07-23 17:19:01.000000000 +0200 +++ llvm-3.5.0.src.cotire/cmake/modules/AddLLVM.cmake 2014-12-14 12:28:35.000000000 +0100 @@ -106,6 +106,10 @@ function(add_llvm_symbol_exports target_ set_property(TARGET ${target_name} APPEND_STRING PROPERTY LINK_FLAGS " /DEF:${CMAKE_CURRENT_BINARY_DIR}/${native_export_file}") endif() +if (COMMAND cotire) + set_target_properties(${name} PROPERTIES COTIRE_UNITY_SOURCE_POST_UNDEFS "DEBUG_TYPE") + cotire(${name}) +endif() endif() add_custom_target(${target_name}_exports DEPENDS ${native_export_file}) @@ -394,6 +398,10 @@ macro(add_llvm_library name) set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS ${name}) endif() set_target_properties(${name} PROPERTIES FOLDER "Libraries") +if (COMMAND cotire) + set_target_properties(${name} PROPERTIES COTIRE_UNITY_SOURCE_POST_UNDEFS "DEBUG_TYPE") + cotire(${name}) +endif() endmacro(add_llvm_library name) macro(add_llvm_loadable_module name) @@ -422,6 +430,10 @@ macro(add_llvm_loadable_module name) endif() set_target_properties(${name} PROPERTIES FOLDER "Loadable modules") +if (COMMAND cotire) + set_target_properties(${name} PROPERTIES COTIRE_UNITY_SOURCE_POST_UNDEFS "DEBUG_TYPE") + cotire(${name}) +endif() endmacro(add_llvm_loadable_module name) @@ -471,6 +483,10 @@ macro(add_llvm_tool name) set_property(GLOBAL APPEND PROPERTY LLVM_EXPORTS ${name}) endif() set_target_properties(${name} PROPERTIES FOLDER "Tools") +if (COMMAND cotire) + set_target_properties(${name} PROPERTIES COTIRE_UNITY_SOURCE_POST_UNDEFS "DEBUG_TYPE") + cotire(${name}) +endif() endmacro(add_llvm_tool name) @@ -483,12 +499,20 @@ macro(add_llvm_example name) install(TARGETS ${name} RUNTIME DESTINATION examples) endif() set_target_properties(${name} PROPERTIES FOLDER "Examples") +if (COMMAND cotire) + set_target_properties(${name} PROPERTIES COTIRE_UNITY_SOURCE_POST_UNDEFS "DEBUG_TYPE") + cotire(${name}) +endif() endmacro(add_llvm_example name) macro(add_llvm_utility name) add_llvm_executable(${name} ${ARGN}) set_target_properties(${name} PROPERTIES FOLDER "Utils") +if (COMMAND cotire) + set_target_properties(${name} PROPERTIES COTIRE_UNITY_SOURCE_POST_UNDEFS "DEBUG_TYPE") + cotire(${name}) +endif() endmacro(add_llvm_utility name) diff -rupN --exclude=.DS_Store --exclude='*.pyc' llvm-3.5.0.src/lib/Support/CMakeLists.txt llvm-3.5.0.src.cotire/lib/Support/CMakeLists.txt --- llvm-3.5.0.src/lib/Support/CMakeLists.txt 2014-07-17 22:05:29.000000000 +0200 +++ llvm-3.5.0.src.cotire/lib/Support/CMakeLists.txt 2014-12-14 12:17:10.000000000 +0100 @@ -1,3 +1,7 @@ +if (COMMAND cotire) + set_source_files_properties (IsInf.cpp IsNAN.cpp PROPERTIES COTIRE_EXCLUDED TRUE) +endif() + add_llvm_library(LLVMSupport APFloat.cpp APInt.cpp