|
|
|
project(kpilot)
|
|
|
|
|
|
|
|
if(EXISTS ${CMAKE_SOURCE_DIR}/CMakeOptions.txt)
|
|
|
|
include(${CMAKE_SOURCE_DIR}/CMakeOptions.txt)
|
|
|
|
else(EXISTS ${CMAKE_SOURCE_DIR}/CMakeOptions.txt)
|
|
|
|
message(FATAL_ERROR "CMakeOptions.txt not found! Run configure first.")
|
|
|
|
endif(EXISTS ${CMAKE_SOURCE_DIR}/CMakeOptions.txt)
|
|
|
|
|
|
|
|
# Search our own cmake modules path first
|
|
|
|
set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/modules")
|
|
|
|
|
|
|
|
# Need 2.4.3 for its KDE3 support
|
|
|
|
# Need 2.4.4 for its fixed KDE3 support
|
|
|
|
cmake_minimum_required(VERSION 2.4.4)
|
|
|
|
|
|
|
|
CONFIGURE_FILE(
|
|
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/cmake_uninstall.cmake.in"
|
|
|
|
"${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake"
|
|
|
|
IMMEDIATE @ONLY)
|
|
|
|
|
|
|
|
ADD_CUSTOM_TARGET(uninstall
|
|
|
|
"${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake")
|
|
|
|
|
|
|
|
# Disallow in-source build
|
|
|
|
STRING(COMPARE EQUAL "${kpilot_SOURCE_DIR}" "${kpilot_BINARY_DIR}" insource)
|
|
|
|
if(insource)
|
|
|
|
MESSAGE(FATAL_ERROR
|
|
|
|
"KPilot requires an out of source build. Please create a separate build
|
|
|
|
directory and run 'cmake path_to_kpilot [options]' there."
|
|
|
|
)
|
|
|
|
endif(insource)
|
|
|
|
|
|
|
|
find_package(Qt3) # find and setup Qt3 for this project
|
|
|
|
|
|
|
|
if (NOT QT_INCLUDE_DIR)
|
|
|
|
MESSAGE(STATUS_ERROR "Qt3 package not found--assuming TQt4")
|
|
|
|
SET(QT_INCLUDE_DIR "/usr/include/qt4" CACHE PATH "" FORCE)
|
|
|
|
endif (NOT QT_INCLUDE_DIR)
|
|
|
|
SET(QT_UIC_EXECUTABLE "/usr/bin/uic-tqt")
|
|
|
|
SET(QT_MOC_EXECUTABLE "/usr/bin/tmoc")
|
|
|
|
|
|
|
|
find_package(KDE3 REQUIRED) # find and setup KDE3 for this project
|
|
|
|
find_package(Pilotlink REQUIRED)
|
|
|
|
find_package(Mal) # see if mal is available, but it's not required
|
|
|
|
|
|
|
|
add_definitions(
|
|
|
|
${QT_DEFINITIONS}
|
|
|
|
${KDE3_DEFINITIONS}
|
|
|
|
-DQT_THREAD_SUPPORT
|
|
|
|
)
|
|
|
|
|
|
|
|
STRING(COMPARE EQUAL "${CMAKE_BUILD_TYPE}" "debug" builddebug)
|
|
|
|
if (NOT builddebug)
|
|
|
|
add_definitions(-DNDEBUG)
|
|
|
|
endif(NOT builddebug)
|
|
|
|
|
|
|
|
|
|
|
|
# Get the trinity dir. This is a bit tricky, i'm not sure how well
|
|
|
|
# this works on other systems.
|
|
|
|
STRING(REPLACE "/lib" "" KDE3_DIR ${KDE3_LIB_DIR})
|
|
|
|
|
|
|
|
# TODO: INSTALL PREFIX. RIGHT NOW EVERYTHING IS INSTALLED IN $TDEDIR
|
|
|
|
if(NOT CMAKE_INSTALL_PREFIX)
|
|
|
|
set(CMAKE_INSTALL_PREFIX ${KDE3_DIR})
|
|
|
|
endif(NOT CMAKE_INSTALL_PREFIX)
|
|
|
|
set(KDE3_KCFG_DIR ${CMAKE_INSTALL_PREFIX}/share/config.kcfg)
|
|
|
|
set(KDE3_SERVICETYPES_DIR ${CMAKE_INSTALL_PREFIX}/share/servicetypes)
|
|
|
|
set(KDE3_SERVICES_DIR ${CMAKE_INSTALL_PREFIX}/share/services)
|
|
|
|
set(KDE3_XDG_APPS_DIR ${CMAKE_INSTALL_PREFIX}/share/applications/kde)
|
|
|
|
set(KDE3_LIB_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/lib)
|
|
|
|
set(KDE3_PLUGIN_INSTALL_DIR ${KDE3_LIB_INSTALL_DIR}/trinity)
|
|
|
|
|
|
|
|
# tell cmake where to search for libraries:
|
|
|
|
link_directories(${KDE3_LIB_DIR})
|
|
|
|
|
|
|
|
# tell cmake where to search for Qt/KDE headers:
|
|
|
|
include_directories(${PILOTLINK_INCLUDE_DIR} ${KDE3_INCLUDE_DIR} ${QT_INCLUDE_DIR})
|
|
|
|
|
|
|
|
# include custom macros
|
|
|
|
INCLUDE(${CMAKE_SOURCE_DIR}/cmake/modules/KPilotCustom.cmake)
|
|
|
|
|
|
|
|
# tell cmake to process CMakeLists.txt in that subdirectory
|
|
|
|
add_subdirectory(lib)
|
|
|
|
add_subdirectory(kpilot)
|
|
|
|
add_subdirectory(conduits)
|
|
|
|
|
|
|
|
|
|
|
|
STRING(COMPARE EQUAL "${ENABLE_TESTS}" "YES" buildtests)
|
|
|
|
if (buildtests)
|
|
|
|
MESSAGE(STATUS "BUILD: Test suite enabled.")
|
|
|
|
enable_testing()
|
|
|
|
add_subdirectory(tests)
|
|
|
|
else (buildtests)
|
|
|
|
MESSAGE(STATUS "BUILD: Test suite disabled.")
|
|
|
|
endif(buildtests)
|
|
|
|
|
|
|
|
if (builddebug)
|
|
|
|
MESSAGE(STATUS "BUILD: Debug build selected.")
|
|
|
|
else(builddebug)
|
|
|
|
MESSAGE(STATUS "BUILD: Normal build selected.")
|
|
|
|
endif(builddebug)
|
|
|
|
|
|
|
|
MESSAGE(STATUS "BUILD: Install prefix set to ${CMAKE_INSTALL_PREFIX} .")
|
|
|
|
|