2012-03-01 3 views
0


cmake의 특정 대상에 흥미로운 디렉토리를 포함하려면 어떻게해야합니까?

나는 Cmake에 관해 질문이 있습니다.
대상을 "helloAll"로 호출하면 하위 대상 인 Hello 및 Hello2가 빌드됩니다.
하지만 Hello 및 Hello2에는 다른 디렉토리가 있어야합니다.
add_library()는 특정 객체를 포함 할 수 있지만 include_directory는 포함 할 수 없습니다.
해결책이 있습니까?

대단히 감사합니다!

add_custom_target(helloAll DEPENDS Hello Hello2) 

#When building Hello include Src/inc 
include_directories(Src/inc) 

#When building Hello include Src/inc2 
include_directories(Src/inc2) 

add_library(Hello Src/hello) 
add_library(Hello2 Src/hello2) 

message(STATUS "CMAKE_INCLUDE_CURRENT_DIR: ${CMAKE_INCLUDE_CURRENT_DIR}") 

build_command(buildCommand TARGET helloAll) 
message(STATUS "buildCommand: ${buildCommand}") 

답변

0

하나의 CMakeLists.txt는 각 include_directory와 각 대상에 대한 각 add_definitions를 가질 수 없습니다. 그래서 각 include_directory와 add_definitions에 대해 여러 CMakelists.txt를 씁니다. 나는 그것이 최선의 해결책이라고 확신하지 못한다. 그러나이 방법은이 문제를 해결할 수 있습니다.

감사합니다.

관련 문제