CMake
런타임 (file(COPY ...)
, configure_file(...)
및 add_custom_command()
모두 작동) *에서 파일 및 디렉토리를 복사하는 방법에는 여러 가지가 있지만, 소스에서 빌드 디렉토리로 복사 된 파일 또는 디렉토리가 CPack에 의해 생성 된 아카이브에 나타납니다. 실제로 다음이 연결 설치를해야합니다 대상에 복사 링크로 그 this SO answer는, 그것을 해결하는 것입니다 비록 :파일을 복사하여 CPack 보관함에 넣으십시오
install(TARGET mytarget DESTINATION bin)
나는 file()
및 configure_file()
명령은 명백한가없는 것을 인식 않은 반면, 목표에 추가 할 수있는 방법. 그러나 이것은 효과가 없었습니다. 그래서, 아래와 같은 간단한 CMakeLists.txt가 주어지면, 모든 파일 (exmaple
디렉토리 포함)을 아카이브에 표시하려면 어떻게해야합니까?! 나는 아직이 3 가지 방법 중 하나가 실제로 어떤 발견되지 않은 *
cmake_minimum_required(VERSION 2.6 FATAL_ERROR)
enable_language(FORTRAN)
add_executable(mytarget ${PROJECT_SOURCE_DIR}/myprog.for)
install(TARGETS mytarget DESTINATION bin)
add_custom_command(TARGET mytarget PREBUILD
COMMAND ${CMAKE_COMMAND} -E copy_directory
${PROJECT_SOURCE_DIR}/examplefiles ${PROJECT_BINARY_DIR}/examplefiles)
set(CPACK_GENERATOR "TGZ")
include(CPack)
(대부분?) 정확한은 - 그래서 상당히
바이너리 배포판보다는 * 소스 패키지 *에서 어떻게 작동합니까? CPack 소스 패키지 생성기는 구성 가능성면에서 다소 제한적인 것으로 보입니다. – kynan