【发布时间】:2020-04-17 18:48:45
【问题描述】:
我想将构建工件捆绑到一个 zip 中,以便在交付服务器上交付它们。我将 zip 创建集成到 CMake 例程中。
# zip the final release files into the build artifact
# call the zipping with 'cmake --build . --target zip' or 'make zip'
string(TIMESTAMP DATE_STRING %Y%m%d)
add_custom_target(zip
COMMAND ${CMAKE_COMMAND} -E tar "cfv" "${PROJECT_NAME}-${PROJECT_VERSION}-${CMAKE_CXX_COMPILER_ID}-${CMAKE_CXX_COMPILER_VERSION}-${DATE_STRING}.zip" "--format=zip" "--"
"${PROJECT_SOURCE_DIR}/bin/release/*")
工件被捆绑到 ProjectSourceDir 的 bin/release 文件夹中。
我的问题是,zip 文件具有我构建目录中文件的相对路径。所以所有文件都位于../bin/release/ 下,这不是我想要的。我想将文件放在 zip 文件的“主文件夹”中。
我找到了在我的构建文件夹中准备 zip 文件夹的解决方案,但我认为这是非常不切实际或看起来很脏的东西。
【问题讨论】:
标签: cmake