diff --git a/katabatic/CMakeLists.txt b/katabatic/CMakeLists.txt index 7e56664f..85fe4cd6 100644 --- a/katabatic/CMakeLists.txt +++ b/katabatic/CMakeLists.txt @@ -1,58 +1,41 @@ -PROJECT(KATABATIC) -OPTION(BUILD_DOC "Build the documentation (doxygen)" OFF) -OPTION(CHECK_DATABASE "Run database in full check mode (very slow)" OFF) + project(KATABATIC) -CMAKE_MINIMUM_REQUIRED(VERSION 2.4.0) + option(BUILD_DOC "Build the documentation (doxygen)" OFF) + option(CHECK_DATABASE "Run database in full check mode (very slow)" OFF) + + cmake_minimum_required(VERSION 2.4.0) -# 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}_TOP}" STREQUAL "") ) - MESSAGE("-- ${project}_TOP is set to $ENV{${project}_TOP}") - SET(PROJECT_MODULE_PATH "${DESTDIR}$ENV{${project}_TOP}/share/cmake/Modules/") - LIST(INSERT CMAKE_MODULE_PATH 0 "${PROJECT_MODULE_PATH}") - ENDIF( NOT("$ENV{${project}_TOP}" STREQUAL "") ) - - IF( NOT("$ENV{${project}_USER_TOP}" STREQUAL "") ) - MESSAGE("-- ${project}_USER_TOP is set to $ENV{${project}_USER_TOP}") - SET(PROJECT_MODULE_PATH "${DESTDIR}$ENV{${project}_USER_TOP}/share/cmake/Modules/") - LIST(INSERT CMAKE_MODULE_PATH 0 "${PROJECT_MODULE_PATH}") - ENDIF( NOT("$ENV{${project}_USER_TOP}" STREQUAL "") ) - - LIST(REMOVE_DUPLICATES CMAKE_MODULE_PATH) -ENDMACRO(SETUP_PROJECT_PATHS project) - -SETUP_PROJECT_PATHS(BOOTSTRAP) -SETUP_PROJECT_PATHS(VLSISAPD) -SETUP_PROJECT_PATHS(CORIOLIS) - -FIND_PACKAGE(Bootstrap REQUIRED) -SET_CMAKE_POLICIES() -SET_LIB_LINK_MODE() -SETUP_BOOST(program_options filesystem python regex) - -IF(BUILD_DOC) - FIND_PACKAGE(Doxygen) -ENDIF(BUILD_DOC) -SET(QT_USE_QTXML "true") -FIND_PACKAGE(Qt4 REQUIRED) # find and setup Qt4 for this project -FIND_PACKAGE(VLSISAPD REQUIRED) -FIND_PACKAGE(HURRICANE REQUIRED) -FIND_PACKAGE(CORIOLIS REQUIRED) -FIND_PACKAGE(KNIK REQUIRED) - -ADD_SUBDIRECTORY(src) -ADD_SUBDIRECTORY(cmake_modules) -IF(BUILD_DOC AND DOXYGEN_FOUND) - ADD_SUBDIRECTORY(doc) -ENDIF(BUILD_DOC AND DOXYGEN_FOUND) - -IF(CHECK_DATABASE) - ADD_DEFINITIONS(-DCHECK_DATABASE) - MESSAGE(STATUS "Checking database enabled (very slow).") -ENDIF(CHECK_DATABASE) -IF(CHECK_DETERMINISM) - ADD_DEFINITIONS(-DCHECK_DETERMINISM) - MESSAGE(STATUS "Checking determinism enabled.") -ENDIF(CHECK_DETERMINISM) + list(INSERT CMAKE_MODULE_PATH 0 "$ENV{BOOTSTRAP_TOP}/share/cmake/Modules/") + find_package(Bootstrap REQUIRED) + setup_project_paths(VLSISAPD) + setup_project_paths(CORIOLIS) + + set_cmake_policies() + set_lib_link_mode() + setup_boost(program_options filesystem python regex) + + set(QT_USE_QTXML "true") + find_package(Qt4 REQUIRED) + find_package(VLSISAPD REQUIRED) + find_package(HURRICANE REQUIRED) + find_package(CORIOLIS REQUIRED) + find_package(KNIK REQUIRED) + if(BUILD_DOC) + find_package(Doxygen) + ENDIF(BUILD_DOC) + + add_subdirectory(src) + add_subdirectory(cmake_modules) + if(BUILD_DOC AND DOXYGEN_FOUND) + add_subdirectory(doc) + endif(BUILD_DOC AND DOXYGEN_FOUND) + + if(CHECK_DATABASE) + add_definitions(-DCHECK_DATABASE) + message(STATUS "Checking database enabled (very slow).") + endif(CHECK_DATABASE) + if(CHECK_DETERMINISM) + add_definitions(-DCHECK_DETERMINISM) + message(STATUS "Checking determinism enabled.") + endif(CHECK_DETERMINISM)