diff --git a/kite/CMakeLists.txt b/kite/CMakeLists.txt index 1e42956a..df3ee1ff 100644 --- a/kite/CMakeLists.txt +++ b/kite/CMakeLists.txt @@ -1,61 +1,44 @@ -PROJECT(KITE) -OPTION(BUILD_DOC "Build the documentation (doxygen)" OFF) -OPTION(CHECK_DATABASE "Run database in full check mode (very slow)" OFF) + project(KITE) -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) -FIND_PACKAGE(LibXml2 REQUIRED) -SET(QT_USE_QTXML "true") -FIND_PACKAGE(Qt4 REQUIRED) # find and setup Qt4 for this project -FIND_PACKAGE(PythonLibs REQUIRED) -FIND_PACKAGE(PythonSitePackages REQUIRED) -FIND_PACKAGE(VLSISAPD REQUIRED) -FIND_PACKAGE(LEFDEF REQUIRED) -FIND_PACKAGE(HURRICANE REQUIRED) -FIND_PACKAGE(CORIOLIS REQUIRED) -FIND_PACKAGE(KNIK REQUIRED) -FIND_PACKAGE(KATABATIC REQUIRED) - -IF(CHECK_DATABASE) - ADD_DEFINITIONS(-DCHECK_DATABASE) -ENDIF(CHECK_DATABASE) -IF(CHECK_DETERMINISM) - ADD_DEFINITIONS(-DCHECK_DETERMINISM) -ENDIF(CHECK_DETERMINISM) - -ADD_SUBDIRECTORY(src) -ADD_SUBDIRECTORY(cmake_modules) -IF(BUILD_DOC AND DOXYGEN_FOUND) - ADD_SUBDIRECTORY(doc) -ENDIF(BUILD_DOC AND DOXYGEN_FOUND) + 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) + + find_package(LibXml2 REQUIRED) + set(QT_USE_QTXML "true") + find_package(Qt4 REQUIRED) + find_package(PythonLibs REQUIRED) + find_package(PythonSitePackages REQUIRED) + find_package(VLSISAPD REQUIRED) + find_package(LEFDEF REQUIRED) + find_package(HURRICANE REQUIRED) + find_package(CORIOLIS REQUIRED) + find_package(KNIK REQUIRED) + find_package(KATABATIC REQUIRED) + if(BUILD_DOC) + find_package(Doxygen) + endif(BUILD_DOC) + + if(CHECK_DATABASE) + add_definitions(-DCHECK_DATABASE) + endif(CHECK_DATABASE) + if(CHECK_DETERMINISM) + add_definitions(-DCHECK_DETERMINISM) + endif(CHECK_DETERMINISM) + + add_subdirectory(src) + add_subdirectory(cmake_modules) + if(BUILD_DOC AND DOXYGEN_FOUND) + add_subdirectory(doc) + endif(BUILD_DOC AND DOXYGEN_FOUND)