diff --git a/knik/CMakeLists.txt b/knik/CMakeLists.txt index 727e521d..64402230 100644 --- a/knik/CMakeLists.txt +++ b/knik/CMakeLists.txt @@ -26,7 +26,32 @@ IF(COMMAND CMAKE_POLICY) CMAKE_POLICY(SET CMP0003 NEW) ENDIF(COMMAND CMAKE_POLICY) -SET(CMAKE_MODULE_PATH "$ENV{HURRICANE_TOP}/share/cmake_modules/") +# This macro has to be included in all the tools CMakeLists.txt as it's +# the sole means of localizing other tools/projects. +MACRO(SETUP_PROJECT_PATHS project) + IF( NOT("$ENV{${project}_USER_TOP}" STREQUAL "") ) + MESSAGE("-- ${project}_USER_TOP is set to $ENV{${project}_USER_TOP}") + SET(${project}_DIR_SEARCH "$ENV{${project}_USER_TOP}") + SET(PROJECT_MODULE_PATH "$ENV{${project}_USER_TOP}/share/cmake_modules/") + LIST(FIND CMAKE_MODULE_PATH "${PROJECT_MODULE_PATH}" DIR_INDEX) + IF( DIR_INDEX LESS 0) + LIST(APPEND CMAKE_MODULE_PATH "${PROJECT_MODULE_PATH}") + ENDIF( DIR_INDEX LESS 0) + ENDIF( NOT("$ENV{${project}_USER_TOP}" STREQUAL "") ) + + IF( NOT("$ENV{${project}_TOP}" STREQUAL "") ) + MESSAGE("-- ${project}_TOP is set to $ENV{${project}_TOP}") + LIST(APPEND ${project}_DIR_SEARCH "$ENV{${project}_TOP}") + SET(PROJECT_MODULE_PATH "$ENV{${project}_TOP}/share/cmake_modules/") + LIST(FIND CMAKE_MODULE_PATH "${PROJECT_MODULE_PATH}" DIR_INDEX) + IF( DIR_INDEX LESS 0) + LIST(APPEND CMAKE_MODULE_PATH "${PROJECT_MODULE_PATH}") + ENDIF( DIR_INDEX LESS 0) + ENDIF( NOT("$ENV{${project}_TOP}" STREQUAL "") ) +ENDMACRO(SETUP_PROJECT_PATHS project) + +SETUP_PROJECT_PATHS(IO) +SETUP_PROJECT_PATHS(CORIOLIS) SET(QT_USE_QTXML "true") diff --git a/knik/cmake_modules/FindKNIK.cmake b/knik/cmake_modules/FindKNIK.cmake index e0694d93..14bfc3ee 100644 --- a/knik/cmake_modules/FindKNIK.cmake +++ b/knik/cmake_modules/FindKNIK.cmake @@ -12,14 +12,12 @@ SET(KNIK_DIR_MESSAGE "Set the KNIK_INCLUDE_DIR cmake cache entry to the ${KNIK_I # don't even bother under WIN32 IF(UNIX) - - SET(KNIK_DIR_SEARCH $ENV{CORIOLIS_TOP} $ENV{HURRICANE_TOP}) # # Look for an installation. # FIND_PATH(KNIK_INCLUDE_PATH NAMES knik/KnikEngine.h PATHS # Look in other places. - ${KNIK_DIR_SEARCH} + ${CORIOLIS_DIR_SEARCH} PATH_SUFFIXES include/coriolis # Help the user find it if we cannot. DOC "The ${KNIK_INCLUDE_PATH_DESCRIPTION}" @@ -27,7 +25,7 @@ IF(UNIX) FIND_LIBRARY(KNIK_LIBRARY_PATH NAMES knik - PATHS ${KNIK_DIR_SEARCH} + PATHS ${CORIOLIS_DIR_SEARCH} PATH_SUFFIXES lib # Help the user find it if we cannot. DOC "The ${KNIK_INCLUDE_PATH_DESCRIPTION}" @@ -35,7 +33,7 @@ IF(UNIX) FIND_LIBRARY(KNIK_STATIC_LIBRARY_PATH NAMES knik-static - PATHS ${KNIK_DIR_SEARCH} + PATHS ${CORIOLIS_DIR_SEARCH} PATH_SUFFIXES lib # Help the user find it if we cannot. DOC "The ${KNIK_INCLUDE_PATH_DESCRIPTION}" @@ -43,7 +41,7 @@ IF(UNIX) FIND_LIBRARY(FLUTE_LIBRARY_PATH NAMES flute - PATHS ${KNIK_DIR_SEARCH} + PATHS ${CORIOLIS_DIR_SEARCH} PATH_SUFFIXES lib # Help the user find it if we cannot. DOC "The ${KNIK_INCLUDE_PATH_DESCRIPTION}" @@ -51,7 +49,7 @@ IF(UNIX) FIND_LIBRARY(FLUTE_STATIC_LIBRARY_PATH NAMES flute-static - PATHS ${KNIK_DIR_SEARCH} + PATHS ${CORIOLIS_DIR_SEARCH} PATH_SUFFIXES lib # Help the user find it if we cannot. DOC "The ${KNIK_INCLUDE_PATH_DESCRIPTION}"