82 lines
2.8 KiB
CMake
82 lines
2.8 KiB
CMake
PROJECT(CRLCORE)
|
|
|
|
CMAKE_MINIMUM_REQUIRED(VERSION 2.4.0)
|
|
|
|
IF(COMMAND CMAKE_POLICY)
|
|
CMAKE_POLICY(SET CMP0003 NEW)
|
|
CMAKE_POLICY(SET CMP0005 NEW)
|
|
IF(NOT (CMAKE_VERSION VERSION_LESS 2.8.0))
|
|
CMAKE_POLICY(SET CMP0014 OLD)
|
|
ENDIF(NOT (CMAKE_VERSION VERSION_LESS 2.8.0))
|
|
ENDIF(COMMAND CMAKE_POLICY)
|
|
|
|
# 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(VLSISAPD)
|
|
SETUP_PROJECT_PATHS(CORIOLIS)
|
|
|
|
MESSAGE("-- Components of CMAKE_MODULE_PATH:")
|
|
FOREACH(PATH IN LISTS CMAKE_MODULE_PATH)
|
|
MESSAGE("-- ${PATH}")
|
|
ENDFOREACH(PATH)
|
|
|
|
SET(QT_USE_QTXML "true")
|
|
#SET(QT_USE_QTOPENGL "true")
|
|
|
|
LIST(INSERT CMAKE_MODULE_PATH 0 "${CRLCORE_SOURCE_DIR}/cmake_modules/")
|
|
|
|
FIND_PACKAGE(LibXml2 REQUIRED)
|
|
FIND_PACKAGE(PythonLibs REQUIRED)
|
|
FIND_PACKAGE(PythonSitePackages REQUIRED)
|
|
FIND_PACKAGE(Qt4 REQUIRED) # find and setup Qt4 for this project
|
|
FIND_PACKAGE(BISON REQUIRED)
|
|
FIND_PACKAGE(FLEX REQUIRED)
|
|
FIND_PACKAGE(LEFDEF)
|
|
FIND_PACKAGE(OPENACCESS)
|
|
FIND_PACKAGE(VLSISAPD REQUIRED)
|
|
FIND_PACKAGE(HURRICANE REQUIRED)
|
|
INCLUDE(UseLATEX)
|
|
|
|
SET_LIB_LINK_MODE()
|
|
SET(Boost_USE_STATIC_LIBS ON)
|
|
MESSAGE(STATUS "Always uses Boost static libraries.")
|
|
FIND_PACKAGE(Boost 1.35.0 COMPONENTS program_options filesystem system regex python)
|
|
IF(NOT Boost_FOUND)
|
|
FIND_PACKAGE(Boost 1.33.1 COMPONENTS program_options filesystem python regex REQUIRED)
|
|
ENDIF(NOT Boost_FOUND)
|
|
MESSAGE(STATUS "Found Boost libraries ${Boost_LIB_VERSION} in ${Boost_INCLUDE_DIR}")
|
|
MESSAGE(STATUS " ${Boost_LIBRARIES}")
|
|
|
|
STRING(REGEX MATCH "^/usr" IS_USR "$ENV{CORIOLIS_TOP}")
|
|
STRING(REGEX MATCH "^/opt" IS_OPT "$ENV{CORIOLIS_TOP}")
|
|
IF(IS_USR OR IS_OPT)
|
|
MESSAGE("-- Using system-wide /etc.")
|
|
SET(SYS_CONF_DIR "/etc" CACHE STRING "System configuration directory (/etc)" FORCE)
|
|
ELSE(IS_USR OR IS_OPT)
|
|
MESSAGE("-- Using install tree /etc.")
|
|
SET(SYS_CONF_DIR "etc" CACHE STRING "System configuration directory (/etc)" FORCE)
|
|
ENDIF(IS_USR OR IS_OPT)
|
|
|
|
ADD_SUBDIRECTORY(src)
|
|
ADD_SUBDIRECTORY(etc)
|
|
ADD_SUBDIRECTORY(cmake_modules)
|
|
IF(BUILD_DOC)
|
|
ADD_SUBDIRECTORY(doc)
|
|
ENDIF(BUILD_DOC)
|