cleanup remaining implementations of precompiled headers
This commit is contained in:
@@ -211,47 +211,6 @@ macro(generate_from_any INPUT_FILE OUTPUT_FILE VARIABLE)
|
||||
endmacro(generate_from_any)
|
||||
|
||||
|
||||
|
||||
MACRO(ADD_MSVC_PRECOMPILED_HEADER TargetName PrecompiledHeader PrecompiledSource SourcesVar)
|
||||
IF(MSVC)
|
||||
GET_FILENAME_COMPONENT(PrecompiledBasename ${PrecompiledHeader} NAME_WE)
|
||||
IF(MSVC_IDE)
|
||||
SET(PrecompiledBinary "$(IntDir)\\$(TargetName).pch")
|
||||
ELSE(MSVC_IDE)
|
||||
SET(PrecompiledBinary ${CMAKE_CURRENT_BINARY_DIR}/${TargetName}.pch)
|
||||
ENDIF(MSVC_IDE)
|
||||
SET(Sources ${${SourcesVar}})
|
||||
|
||||
SET_SOURCE_FILES_PROPERTIES(${PrecompiledSource}
|
||||
PROPERTIES COMPILE_FLAGS "/Yc\"${PrecompiledHeader}\" /Fp\"${PrecompiledBinary}\""
|
||||
OBJECT_OUTPUTS "${PrecompiledBinary}")
|
||||
SET_SOURCE_FILES_PROPERTIES(${Sources}
|
||||
PROPERTIES COMPILE_FLAGS "/Yu\"${PrecompiledHeader}\" /FI\"${PrecompiledBinary}\" /Fp\"${PrecompiledBinary}\""
|
||||
OBJECT_DEPENDS "${PrecompiledBinary}")
|
||||
# Add precompiled header to SourcesVar
|
||||
LIST(APPEND ${SourcesVar} ${PrecompiledSource})
|
||||
ENDIF(MSVC)
|
||||
ENDMACRO(ADD_MSVC_PRECOMPILED_HEADER)
|
||||
|
||||
MACRO(GET_MSVC_PRECOMPILED_SOURCE PrecompiledSource SourcesVar)
|
||||
IF(MSVC)
|
||||
FOREACH (it ${ARGN})
|
||||
GET_FILENAME_COMPONENT(file_ext ${it} EXT)
|
||||
GET_FILENAME_COMPONENT(file_name ${it} NAME)
|
||||
STRING(COMPARE EQUAL ${it} ${PrecompiledSource} pch)
|
||||
IF (NOT pch)
|
||||
# get c++ source files
|
||||
STRING(REGEX MATCH "^(.cpp|.cc|.cxx)$" cpp_file ${file_ext})
|
||||
# ignore any generated source files from Qt
|
||||
STRING(REGEX MATCH "^(moc_|qrc_|ui_)" gen_file ${file_name})
|
||||
IF(cpp_file AND NOT gen_file)
|
||||
LIST(APPEND ${SourcesVar} ${it})
|
||||
ENDIF(cpp_file AND NOT gen_file)
|
||||
ENDIF(NOT pch)
|
||||
ENDFOREACH (it)
|
||||
ENDIF(MSVC)
|
||||
ENDMACRO(GET_MSVC_PRECOMPILED_SOURCE)
|
||||
|
||||
# Macro to replace all the binary output locations. Takes 2 optional parameters.
|
||||
# ${ARGVN} is zero based so the 3rd element is ${ARGV2}. When the 3rd element is missing,
|
||||
# Runtime and Lib directories default to /bin and /lib. When present, the 3rd element
|
||||
|
||||
Reference in New Issue
Block a user