CMakeLists.txt 파일의 현재 위치

CMake 로 안드로이드 NDK 빌드 설정을 잡는데, 보통은 CMakeLists.txt 의 상대 경로로 실행이 되는데, 어떤 이유에서인지 상대 경로가 안먹고 에러를 토해내는 일이 있었다.

하여 CMakeLists.txt 파일의 위치를 중심으로 절대 경로를 적어줄 필요가 있었는데..
Andriod.mk 파일에서는 $(call my-dir) 로 간단히 해결할 수 있는데 Cmake 는 어떻게 하는지 몰라서 이리저리 자료를 찾아봐야 했다.

결론은 CMAKE_CURRENT_SOURCE_DIR 라는 환경 변수를 이용하면 된다.

그밖의 변수는 https://cmake.org/Wiki/CMake_Useful_Variables 참조.

add_library( TrulyHandsfreeSDK
             STATIC
             IMPORTED)
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src/main/TrulyHandsfreeSDK/include/)
set_target_properties( TrulyHandsfreeSDK
                PROPERTIES IMPORTED_LOCATION
                ${CMAKE_CURRENT_SOURCE_DIR}/src/main/TrulyHandsfreeSDK/lib/libthf_${ANDROID_ABI}.a
)


댓글

이 블로그의 인기 게시물

pandas.read_csv() 에서 왠만하면 컬럼타입을 지정하자

스프링 컨텍스트 설정파일과 URI 경로를 제대로 못찾는 삽질