Forked from
Eclipse Projects / Eclipse openpass / opSimulation
1635 commits behind the upstream repository.
-
Uwe Woessner authored
Signed-off-by:
hpcwoess <woessner@hlrs.de>
Uwe Woessner authoredSigned-off-by:
hpcwoess <woessner@hlrs.de>
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
MSVC.cmake 2.47 KiB
FUNCTION(OPENPASS_COPY_TARGET_PDB target_name pdb_inst_prefix)
IF(MSVC)
GET_TARGET_PROPERTY(TARGET_LOC ${target_name} DEBUG_LOCATION)
IF(TARGET_LOC)
GET_FILENAME_COMPONENT(TARGET_HEAD "${TARGET_LOC}" NAME_WE)
# GET_FILENAME_COMPONENT(FNABSOLUTE "${TARGET_LOC}" ABSOLUTE)
GET_FILENAME_COMPONENT(TARGET_PATH "${TARGET_LOC}" PATH)
SET(TARGET_PDB "${TARGET_PATH}/${TARGET_HEAD}.pdb")
# MESSAGE(STATUS "PDB-File of ${target_name} is ${TARGET_PDB}")
GET_TARGET_PROPERTY(TARGET_TYPE ${target_name} TYPE)
IF(TARGET_TYPE)
SET(pdb_dest )
IF(TARGET_TYPE STREQUAL "STATIC_LIBRARY")
SET(pdb_dest lib)
ELSE(TARGET_TYPE STREQUAL "STATIC_LIBRARY")
SET(pdb_dest bin)
ENDIF(TARGET_TYPE STREQUAL "STATIC_LIBRARY")
# maybe an optional category path given?
IF(NOT "${ARGN}" STREQUAL "")
SET(category_path "${ARGV2}")
ENDIF(NOT "${ARGN}" STREQUAL "")
INSTALL(FILES ${TARGET_PDB} DESTINATION "${pdb_inst_prefix}/${pdb_dest}${category_path}" CONFIGURATIONS "Debug")
ENDIF(TARGET_TYPE)
ENDIF(TARGET_LOC)
ENDIF(MSVC)
ENDFUNCTION(OPENPASS_COPY_TARGET_PDB)
MACRO(OPENPASS_MSVC_RUNTIME_OPTION)
IF(MSVC)
OPTION (MSVC_USE_STATIC_RUNTIME "Use static MS-Runtime (/MT, /MTd)" OFF)
IF(MSVC_USE_STATIC_RUNTIME)
FOREACH(FLAG_VAR CMAKE_CXX_FLAGS CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_RELEASE CMAKE_CXX_FLAGS_MINSIZEREL CMAKE_CXX_FLAGS_RELWITHDEBINFO
CMAKE_C_FLAGS CMAKE_C_FLAGS_DEBUG CMAKE_C_FLAGS_RELEASE CMAKE_C_FLAGS_MINSIZEREL CMAKE_C_FLAGS_RELWITHDEBINFO)
IF(${FLAG_VAR} MATCHES "/MD")
STRING(REGEX REPLACE "/MD" "/MT" BCMSVC_${FLAG_VAR} "${${FLAG_VAR}}")
SET(${FLAG_VAR} ${BCMSVC_${FLAG_VAR}} CACHE STRING "" FORCE)
ENDIF(${FLAG_VAR} MATCHES "/MD")
ENDFOREACH(FLAG_VAR)
ELSE(MSVC_USE_STATIC_RUNTIME)
FOREACH(FLAG_VAR CMAKE_CXX_FLAGS CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_RELEASE CMAKE_CXX_FLAGS_MINSIZEREL CMAKE_CXX_FLAGS_RELWITHDEBINFO
CMAKE_C_FLAGS CMAKE_C_FLAGS_DEBUG CMAKE_C_FLAGS_RELEASE CMAKE_C_FLAGS_MINSIZEREL CMAKE_C_FLAGS_RELWITHDEBINFO)
IF(${FLAG_VAR} MATCHES "/MT")
STRING(REGEX REPLACE "/MT" "/MD" BCMSVC_${FLAG_VAR} "${${FLAG_VAR}}")
SET(${FLAG_VAR} ${BCMSVC_${FLAG_VAR}} CACHE STRING "" FORCE)
ENDIF(${FLAG_VAR} MATCHES "/MT")
ENDFOREACH(FLAG_VAR)
ENDIF(MSVC_USE_STATIC_RUNTIME)
ENDIF(MSVC)
ENDMACRO(OPENPASS_MSVC_RUNTIME_OPTION)