用于发布版本的CMake复制PDB文件

时间:2015-01-15 00:54:06

标签: cmake pdb-files

当我为调试版本安装我的库时,也会复制pdb文件。

我对发布版本也有同样的想法,但CMake不这样做。所以我必须手动选择CMAKE_BINARY_DIR中的* .pdb文件并复制它们。

基本上,我该怎么做?或者还有其他方法可以解决这个问题吗?

1 个答案:

答案 0 :(得分:2)

这样做的一种方法是使用Cmake"文件"功能如此。

if(CMAKE_BUILD_TYPE EQUAL "RELEASE")
    file(GLOB filelist ${PATH_TO_PDB_FILES}/*.pdb)
    file(COPY ${filelist} DESTINATION ${PATH_TO_PDB_DESTINATION})
endif(CMAKE_BUILD_TYPE EQUAL "RELEASE")

第一个"文件"函数调用使用" GLOB"选项并生成位于" PATH_TO_PDB_FILES"中的.pdb文件的列表(称为"文件列表"); 。目录

第二个"文件"函数调用使用" COPY"选项,它使用第一个"文件生成的文件列表"函数调用并将这些文件复制到" PATH_TO_PDB_DESTINATION" 。目录

我还将if语句用于检查您是否正在进行发布构建。 (假设您只想在发布版本上执行此操作。)

编辑:如果我理解正确,您希望在安装阶段复制pdb文件。如果是这种情况,应该这样做:

INSTALL(DIRECTORY ${PATH_TO_PDB_FILES}
    DESTINATION ${PATH_TO_PDB_DESTINATION}
    CONFIGURATIONS Release
    FILES_MATCHING
    PATTERN *.pdb
)