CMake를 처음 사용했습니다. 나는 프로젝트를 컴파일하고있다. 나는이CMake copy_if_different를 재귀 적으로 사용하여 파일 복사
프로젝트와 같은 구조를 가지고이 폴더에 대한
SRC
- 테스트
통화 당 (모든 소스 파일)과 CMakeLists.txt (정적 라이브러리를 생성) - 예제
.cpp (모든 원본 파일) 및이 폴더의 CMakeLists.txt (정적 라이브러리 만들기)
- 테스트
는
- 테스트
.H (모든 헤더 파일) - 예를
.H (모든 헤더 파일)
- 테스트
빌드를 포함
- C MakeLists.txt (메인 CMakelist 파일)
LIB
- 테스트
- 예 (포함 생성 된 파일)
질문 (생성 된 파일이 포함되어 있습니다) 즉 모든 정적 파일을 복사하는 방법입니다. 테스트 폴더와 예제 폴더에서 이진 구조 외부의 다른 폴더에 재귀 적으로 배치 하시겠습니까?
내 주요 CMakeLists.txt 파일 :
PROJECT(copythefiles)
SET(CMAKE_CURRENT_BINARY_DIR ".")
add_subdirectory(/src/test /lib/test) # I am specifying the location where the files are to be generated
add_subdirectory(/src/example /lib/example)
ADD_CUSTOM_TARGET(a ALL COMMAND ${CMAKE_COMMAND} -E echo "\{X}" > ${CMAKE_CURRENT_BINARY_DIR}/lib/test/libtest.a)
ADD_CUSTOM_COMMAND(TARGET a POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_if_different
${CMAKE_CURRENT_BINARY_DIR}/lib/test/libtest.a
${CMAKE_CURRENT_BINARY_DIR}/lib/libtest.a)
이 파일을 복사합니다. 그러나 나는 약 20 개의 프로젝트를 가지고 있으며 재귀 적으로하고 싶습니다.
감사합니다 :)
당신은 내가이 문제를 해결하는 데 도움이 바랍니다 수 있습니다. http://stackoverflow.com/questions/13729478/missing-source-and-include-folder-when-integrating-cmake-with-eclipse/13731123#13731123 – Pintu