4
0
mirror of https://github.com/QuasarApp/qca.git synced 2025-05-10 01:39:34 +00:00

cmake: install .PDB files

On Windows when compiling with Visual Studio will be produced special
.pdb files for debuggins purposes. It must be put next to target
runtime (.dll or .exe) file.
This commit is contained in:
Ivan Romanov 2014-02-03 02:05:54 +06:00
parent 01bf129066
commit fbdf57f843
13 changed files with 35 additions and 0 deletions
cmake/modules
plugins
qca-botan
qca-cyrus-sasl
qca-gcrypt
qca-gnupg
qca-logger
qca-nss
qca-ossl
qca-pkcs11
qca-softstore
src
tools

@ -99,3 +99,15 @@ macro(add_qca_test TARGET DESCRIPTION)
WORKING_DIRECTORY "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}"
COMMAND "${TARGET}")
endmacro(add_qca_test)
macro(install_pdb TARGET INSTALL_PATH)
if(MSVC)
get_target_property(LOCATION ${TARGET} LOCATION_DEBUG)
string(REGEX REPLACE "\\.[^.]*$" ".pdb" LOCATION "${LOCATION}")
install(FILES ${LOCATION} DESTINATION ${INSTALL_PATH} CONFIGURATIONS Debug)
get_target_property(LOCATION ${TARGET} LOCATION_RELWITHDEBINFO)
string(REGEX REPLACE "\\.[^.]*$" ".pdb" LOCATION "${LOCATION}")
install(FILES ${LOCATION} DESTINATION ${INSTALL_PATH} CONFIGURATIONS RelWithDebInfo)
endif(MSVC)
endmacro(install_pdb)

@ -17,6 +17,8 @@ if(BOTAN_FOUND)
LIBRARY DESTINATION "${QCA_PLUGINS_INSTALL_DIR}"
ARCHIVE DESTINATION "${QCA_PLUGINS_INSTALL_DIR}"
RUNTIME DESTINATION "${QCA_PLUGINS_INSTALL_DIR}")
install_pdb(qca-botan ${QCA_PLUGINS_INSTALL_DIR})
else(BOTAN_FOUND)
disable_plugin("botan")
endif(BOTAN_FOUND)

@ -17,6 +17,8 @@ if(SASL2_FOUND)
LIBRARY DESTINATION "${QCA_PLUGINS_INSTALL_DIR}"
ARCHIVE DESTINATION "${QCA_PLUGINS_INSTALL_DIR}"
RUNTIME DESTINATION "${QCA_PLUGINS_INSTALL_DIR}")
install_pdb(qca-cyrus-sasl ${QCA_PLUGINS_INSTALL_DIR})
else(SASL2_FOUND)
disable_plugin("cyrus-sasl")
endif(SASL2_FOUND)

@ -27,6 +27,8 @@ if(LIBGCRYPT_FOUND)
LIBRARY DESTINATION "${QCA_PLUGINS_INSTALL_DIR}"
ARCHIVE DESTINATION "${QCA_PLUGINS_INSTALL_DIR}"
RUNTIME DESTINATION "${QCA_PLUGINS_INSTALL_DIR}")
install_pdb(qca-gcrypt ${QCA_PLUGINS_INSTALL_DIR})
else(HAVE_GCRY_ERROR_T)
message(STATUS "libgcrypt seems to be too old")
disable_plugin("gcrypt")

@ -25,6 +25,8 @@ if(QCA_GPG_EXECUTABLE)
LIBRARY DESTINATION "${QCA_PLUGINS_INSTALL_DIR}"
ARCHIVE DESTINATION "${QCA_PLUGINS_INSTALL_DIR}"
RUNTIME DESTINATION "${QCA_PLUGINS_INSTALL_DIR}")
install_pdb(qca-gnupg ${QCA_PLUGINS_INSTALL_DIR})
elseif(WITH_gnupg_PLUGIN STREQUAL "yes")
message(FATAL_ERROR "Could not find GnuPG binary")
else(QCA_GPG_EXECUTABLE)

@ -15,3 +15,5 @@ install(TARGETS qca-logger
LIBRARY DESTINATION "${QCA_PLUGINS_INSTALL_DIR}"
ARCHIVE DESTINATION "${QCA_PLUGINS_INSTALL_DIR}"
RUNTIME DESTINATION "${QCA_PLUGINS_INSTALL_DIR}")
install_pdb(qca-logger ${QCA_PLUGINS_INSTALL_DIR})

@ -18,6 +18,8 @@ if(NSS_FOUND)
LIBRARY DESTINATION "${QCA_PLUGINS_INSTALL_DIR}"
ARCHIVE DESTINATION "${QCA_PLUGINS_INSTALL_DIR}"
RUNTIME DESTINATION "${QCA_PLUGINS_INSTALL_DIR}")
install_pdb(qca-nss ${QCA_PLUGINS_INSTALL_DIR})
else(NSS_FOUND)
disable_plugin("nss")
set(WITH_nss_PLUGIN "no" PARENT_SCOPE)

@ -50,6 +50,8 @@ if(OPENSSL_FOUND)
LIBRARY DESTINATION "${QCA_PLUGINS_INSTALL_DIR}"
ARCHIVE DESTINATION "${QCA_PLUGINS_INSTALL_DIR}"
RUNTIME DESTINATION "${QCA_PLUGINS_INSTALL_DIR}")
install_pdb(qca-ossl ${QCA_PLUGINS_INSTALL_DIR})
else(OPENSSL_FOUND)
disable_plugin("ossl")
endif(OPENSSL_FOUND)

@ -29,6 +29,7 @@ if(OPENSSL_FOUND AND PKCS11H_FOUND)
ARCHIVE DESTINATION "${QCA_PLUGINS_INSTALL_DIR}"
RUNTIME DESTINATION "${QCA_PLUGINS_INSTALL_DIR}")
install_pdb(qca-pkcs11 ${QCA_PLUGINS_INSTALL_DIR})
else(OPENSSL_FOUND AND PKCS11H_FOUND)
disable_plugin("pkcs11")
endif(OPENSSL_FOUND AND PKCS11H_FOUND)

@ -15,3 +15,5 @@ install(TARGETS qca-softstore
LIBRARY DESTINATION "${QCA_PLUGINS_INSTALL_DIR}"
ARCHIVE DESTINATION "${QCA_PLUGINS_INSTALL_DIR}"
RUNTIME DESTINATION "${QCA_PLUGINS_INSTALL_DIR}")
install_pdb(qca-softstore ${QCA_PLUGINS_INSTALL_DIR})

@ -152,3 +152,5 @@ INSTALL(TARGETS ${QCA_LIB_NAME}
RUNTIME DESTINATION "${QCA_BINARY_INSTALL_DIR}"
ARCHIVE DESTINATION "${QCA_LIBRARY_INSTALL_DIR}"
)
install_pdb(${QCA_LIB_NAME} ${QCA_BINARY_INSTALL_DIR})

@ -7,3 +7,5 @@ add_executable(${MOZCERTS_NAME} ${mozcerts_bin_SRCS})
target_link_qca_libraries(${MOZCERTS_NAME})
install(TARGETS ${MOZCERTS_NAME} DESTINATION "${QCA_BINARY_INSTALL_DIR}")
install_pdb(${MOZCERTS_NAME} ${QCA_BINARY_INSTALL_DIR})

@ -11,3 +11,5 @@ add_executable(${QCA_TOOL_NAME} ${qcatool_bin_SRCS})
target_link_qca_libraries(${QCA_TOOL_NAME})
install(TARGETS ${QCA_TOOL_NAME} DESTINATION "${QCA_BINARY_INSTALL_DIR}")
install_pdb(${QCA_TOOL_NAME} ${QCA_BINARY_INSTALL_DIR})