view Resources/CMake/VisualStudioPrecompiledHeaders.cmake @ 2189:c4b3259c8bce

New metadata automatically computed at the instance level: "TransferSyntax"
author Sebastien Jodogne <s.jodogne@gmail.com>
date Tue, 29 Nov 2016 16:07:14 +0100
parents c9e0e709485b
children 233d6eeef799
line wrap: on
line source

macro(ADD_VISUAL_STUDIO_PRECOMPILED_HEADERS PrecompiledHeaders PrecompiledSource Sources)
  get_filename_component(PrecompiledBasename ${PrecompiledHeaders} NAME_WE)
  set(PrecompiledBinary "${PrecompiledBasename}_$(ConfigurationName).pch")

  set_source_files_properties(${PrecompiledSource}
    PROPERTIES COMPILE_FLAGS "/Yc\"${PrecompiledHeaders}\" /Fp\"${PrecompiledBinary}\""
    OBJECT_OUTPUTS "${PrecompiledBinary}")

  set_source_files_properties(${${Sources}}
    PROPERTIES COMPILE_FLAGS "/Yu\"${PrecompiledHeaders}\" /FI\"${PrecompiledHeaders}\" /Fp\"${PrecompiledBinary}\""
    OBJECT_DEPENDS "${PrecompiledBinary}")

  list(APPEND ${Sources} ${PrecompiledSource})
endmacro()