diff --git a/CMakeLists.txt b/CMakeLists.txt index c06b7df57e..b45b788829 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -825,6 +825,12 @@ if(CAPSTONE_BUILD_SHARED_LIBS) $ ) target_compile_definitions(capstone PUBLIC CAPSTONE_SHARED) + # Build pdb file for dll on Windows + if(MSVC) + message("Enabling PDB for Windows") + set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /Zi") + set(CMAKE_SHARED_LINKER_FLAGS_RELEASE "${CMAKE_SHARED_LINKER_FLAGS_RELEASE} /DEBUG") + endif() endif() # Fuzzer if this is moved to it's own CMakeLists.txt (as it should be) @@ -951,6 +957,14 @@ if(CAPSTONE_INSTALL) DESTINATION ${CAPSTONE_CMAKE_CONFIG_INSTALL_DIR} ) + if (MSVC AND CAPSTONE_BUILD_SHARED_LIBS) + install(FILES + $ + DESTINATION ${CMAKE_INSTALL_BINDIR} + OPTIONAL + ) + endif() + # uninstall target if(NOT TARGET UNINSTALL) configure_file(