diff --git a/CMakeLists.txt b/CMakeLists.txt index b9674d0..0c00e80 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -25,6 +25,7 @@ if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MDd") set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /MD") set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MD") + set(CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO "${CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO} /DEBUG") endif() # ----------------------------------------------------------------------------- diff --git a/conanfile.py b/conanfile.py index ba6073f..a95e3b9 100644 --- a/conanfile.py +++ b/conanfile.py @@ -1,8 +1,10 @@ from conans import ConanFile from conan.tools.cmake import CMakeDeps, CMake, CMakeToolchain from conans.tools import save, load +from conans import tools import os import pathlib +import shutil import subprocess from rules_support import PluginBranchInfo @@ -98,6 +100,7 @@ def generate(self): # Use the ManiVault .cmake file to find ManiVault with find_package mv_core_root = self.deps_cpp_info["hdps-core"].rootpath manivault_dir = pathlib.Path(mv_core_root, "cmake", "mv").as_posix() + print("ManiVault_DIR: ", manivault_dir) tc.variables["ManiVault_DIR"] = manivault_dir @@ -146,6 +149,19 @@ def package(self): release_dir, ] ) + + + + # Add the pdb files next to the libs for RelWithDebInfo linking + if self.settings.os == "Windows": + print("Copying PDBs...") + pdb_dest = pathlib.Path(package_dir, "RelWithDebInfo", "pdb") + pdb_dest.mkdir() + pdb_files = pdb_files = [p for p in pathlib.Path(self.build_folder).rglob('*') if p.is_file() and p.suffix.lower() == '.pdb'] + print("PDB(s): ", pdb_files) + for pfile in pdb_files: + shutil.copy(pfile, pdb_dest) + self.copy(pattern="*", src=package_dir) def package_info(self):