diff --git a/CMakeLists.txt b/CMakeLists.txt index a74a5c0c22f4d1234a21066ea4140a18124c3586..41cfb3e8e819545347195e88c1da61a041d3c698 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -105,6 +105,7 @@ add_definitions(-DBOOST_TEST_DYN_LINK) # FCL's own include dir should be at the front of the include path include_directories(BEFORE "include") +include_directories("${CMAKE_CURRENT_BINARY_DIR}/include") if(PKG_CONFIG_FOUND) pkg_check_modules(CCD ccd) @@ -133,15 +134,16 @@ link_directories(${CCD_LIBRARY_DIRS}) add_subdirectory(include/fcl) add_subdirectory(src) -set(pkg_conf_file "${CMAKE_CURRENT_SOURCE_DIR}/fcl.pc") -configure_file("${pkg_conf_file}.in" "${pkg_conf_file}" @ONLY) +set(pkg_conf_file_in "${CMAKE_CURRENT_SOURCE_DIR}/fcl.pc.in") +set(pkg_conf_file_out "${CMAKE_CURRENT_BINARY_DIR}/fcl.pc") +configure_file("${pkg_conf_file_in}" "${pkg_conf_file_out}" @ONLY) install(DIRECTORY include/ DESTINATION include FILES_MATCHING PATTERN "*.h" PATTERN "*.hxx" PATTERN ".DS_Store" EXCLUDE ) -install(FILES "${pkg_conf_file}" DESTINATION lib/pkgconfig/ COMPONENT pkgconfig) +install(FILES "${pkg_conf_file_out}" DESTINATION lib/pkgconfig/ COMPONENT pkgconfig) enable_testing() diff --git a/include/fcl/CMakeLists.txt b/include/fcl/CMakeLists.txt index 000228617d8508e36450ce1c93943d5b4f4e33ec..eeba55a1abac7002f8e4686d74496ee7afe4a9f7 100644 --- a/include/fcl/CMakeLists.txt +++ b/include/fcl/CMakeLists.txt @@ -1,2 +1,4 @@ -file(TO_NATIVE_PATH "${CMAKE_CURRENT_SOURCE_DIR}" VERSION_DIR) -configure_file("${VERSION_DIR}/config.h.in" "${VERSION_DIR}/config.h") +file(TO_NATIVE_PATH "${CMAKE_CURRENT_SOURCE_DIR}" FCL_CONFIG_IN_DIR) +file(TO_NATIVE_PATH "${CMAKE_CURRENT_BINARY_DIR}" FCL_CONFIG_OUT_DIR) +configure_file("${FCL_CONFIG_IN_DIR}/config.h.in" "${FCL_CONFIG_OUT_DIR}/config.h") +install(FILES "${FCL_CONFIG_OUT_DIR}/config.h" DESTINATION include/fcl) diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index f684fcd61ec46d3e7bd860f7127b1b53360decd1..ed7e36e54032ea388c0cb71766d0fe7bb21ff5a8 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -10,14 +10,17 @@ macro(add_fcl_test test_name) endmacro(add_fcl_test) # configure location of resources -file(TO_NATIVE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/fcl_resources" TEST_RESOURCES_DIR) +file(TO_NATIVE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/fcl_resources" TEST_RESOURCES_SRC_DIR) +file(TO_NATIVE_PATH "${CMAKE_CURRENT_BINARY_DIR}/fcl_resources" TEST_RESOURCES_BIN_DIR) if(WIN32) # Correct directory separator for Windows - string(REPLACE "\\" "\\\\" TEST_RESOURCES_DIR ${TEST_RESOURCES_DIR}) + string(REPLACE "\\" "\\\\" TEST_RESOURCES_SRC_DIR ${TEST_RESOURCES_SRC_DIR}) + string(REPLACE "\\" "\\\\" TEST_RESOURCES_BIN_DIR ${TEST_RESOURCES_BIN_DIR}) endif(WIN32) -configure_file("${TEST_RESOURCES_DIR}/config.h.in" "${TEST_RESOURCES_DIR}/config.h") +configure_file("${TEST_RESOURCES_SRC_DIR}/config.h.in" "${TEST_RESOURCES_BIN_DIR}/config.h") include_directories(.) +include_directories("${CMAKE_CURRENT_BINARY_DIR}") add_fcl_test(test_fcl_collision test_fcl_collision.cpp test_fcl_utility.cpp) add_fcl_test(test_fcl_distance test_fcl_distance.cpp test_fcl_utility.cpp) diff --git a/test/fcl_resources/config.h.in b/test/fcl_resources/config.h.in index 1f8e8cf69d347b5c33bbce4754154dc10ec6cf0d..8486bd250b3b87c205b759b0de1a77667dbccb2c 100644 --- a/test/fcl_resources/config.h.in +++ b/test/fcl_resources/config.h.in @@ -37,5 +37,5 @@ #ifndef FCL_TEST_RESOURCES_CONFIG_ #define FCL_TEST_RESOURCES_CONFIG_ -#define TEST_RESOURCES_DIR "@TEST_RESOURCES_DIR@" +#define TEST_RESOURCES_DIR "@TEST_RESOURCES_SRC_DIR@" #endif