Support Request #6121
closedEBPRODUCTSUPPORT-2777 Installation of pdb files does not work on non Visual Studio environment
Description
Support Anfrage:
Da gibt's nen fiesen bug in der ADTFMacros.cmake:
macro(adtf_install_target TARGET DIRECTORY)
install(TARGETS ${TARGET} DESTINATION ${DIRECTORY}/debug CONFIGURATIONS Debug)
install(TARGETS ${TARGET} DESTINATION ${DIRECTORY} CONFIGURATIONS Release RelWithDebInfo)
if(WIN32)
get_target_property(NAME ${TARGET} OUTPUT_NAME)
if(NOT NAME)
set(NAME ${TARGET})
endif(NOT NAME)
if(MSVC_IDE)
set(PDB_FULL_PATH_DEBUG ${CMAKE_CURRENT_BINARY_DIR}/${${TARGET}_BUILD_NAME_}/Debug/${NAME}.pdb)
install(FILES ${PDB_FULL_PATH_DEBUG} DESTINATION ${DIRECTORY}/debug CONFIGURATIONS Debug)
set(PDB_FULL_PATH_RELWITHDEBINFO ${CMAKE_CURRENT_BINARY_DIR}/${${TARGET}_BUILD_NAME_}/RelWithDebInfo/${NAME}.pdb)
install(FILES ${PDB_FULL_PATH_RELWITHDEBINFO} DESTINATION ${DIRECTORY} CONFIGURATIONS RelWithDebInfo)
elseif() # elseif() wird immer false, von daher werden die plbs nur bei VS-builds installiert
set(PDB_FULL_PATH ${CMAKE_CURRENT_BINARY_DIR}/${${TARGET}_BUILD_NAME_}/${NAME}.pdb)
install(FILES ${PDB_FULL_PATH} DESTINATION ${DIRECTORY}/debug CONFIGURATIONS Debug)
install(FILES ${PDB_FULL_PATH} DESTINATION ${DIRECTORY} CONFIGURATIONS RelWithDebInfo)
endif()
endif(WIN32)
endmacro(adtf_install_target TARGET DIRECTORY)
Gefunden unter schmerzen in Adtf 3.2 - 3.4.
Fix: elseif() durch else() ersetzen
Lösung:
Es wurde das Produktticket ACORE-9882 erstellt.
Die weitere Bearbeitung des Bug erfolgt im Produktticket.