From d9576addaa0ca9588e484dba09dacc236b41a332 Mon Sep 17 00:00:00 2001 From: gregory guy Date: Sat, 11 Aug 2018 09:09:44 +0200 Subject: First bach of cmake files in order to convert tdeadmin from autotools to cmake building system. (cherry picked from commit 88073834d0052272dce61556b9508e66b84cd494) --- CMakeLists.txt | 91 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 91 insertions(+) create mode 100644 CMakeLists.txt (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..0b7fa37 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,91 @@ +############################################### +# +# Improvements and feedbacks are welcome +# +# This file is released under GPL >= 3 +# +############################################### + +cmake_minimum_required( VERSION 2.8 ) + + +#### general package setup + +project( tdeadmin ) +set( VERSION R14.0.4 ) + + +#### include essential cmake modules + +include( FindPkgConfig ) +include( CheckIncludeFile ) +include( CheckLibraryExists ) +include( CheckCSourceCompiles ) +include( CheckCXXSourceCompiles ) + + +#### include our cmake modules + +set( CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/modules" ) +include( TDEMacros ) + + +##### setup install paths + +include( TDESetupPaths ) +tde_setup_paths( ) + + +##### optional stuff ############################ + + + + +##### user requested modules ##### + +option( BUILD_ALL "Build all" OFF ) +option( BUILD_DOC "Build doc" ${BUILD_ALL} ) +option( BUILD_KCRON "Build kcron" ${BUILD_ALL} ) +option( BUILD_KDAT "Build kdat" ${BUILD_ALL} ) +option( BUILD_KNETWORKCONF "Build knetworkconf" ${BUILD_ALL} ) +option( BUILD_KPACKAGE "Build kpackage" ${BUILD_ALL} ) +option( BUILD_KSYSV "Build ksysv" ${BUILD_ALL} ) +option( BUILD_KUSER "Build kuser" ${BUILD_ALL} ) +option( BUILD_LILO_CONFIG "Build lilo-config" ${BUILD_ALL} ) +option( BUILD_SECPOLICY "Build secpolicy" ${BUILD_ALL} ) +option( BUILD_TDEFILE_PLUGINS "Build tdefile-plugins" ${BUILD_ALL} ) + + +##### configure checks + +include( ConfigureChecks.cmake ) + + +###### global compiler settings + +add_definitions( + -DHAVE_CONFIG_H +) + +set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${TQT_CXX_FLAGS}" ) +set( CMAKE_SHARED_LINKER_FLAGS "-Wl,--no-undefined" ) +set( CMAKE_MODULE_LINKER_FLAGS "-Wl,--no-undefined" ) + + +##### @TDE_MODULE_NAME@ directories + +tde_conditional_add_subdirectory( BUILD_DOC doc ) +tde_conditional_add_subdirectory( BUILD_KCRON kcron ) +tde_conditional_add_subdirectory( BUILD_KDAT kdat ) +tde_conditional_add_subdirectory( BUILD_KNETWORKCONF knetworkconf ) +tde_conditional_add_subdirectory( BUILD_KPACKAGE kpackage ) +tde_conditional_add_subdirectory( BUILD_KSYSV ksysv ) +tde_conditional_add_subdirectory( BUILD_KUSER kuser ) +tde_conditional_add_subdirectory( BUILD_LILO_CONFIG lilo-config ) +tde_conditional_add_subdirectory( BUILD_SECPOLICY secpolicy ) +tde_conditional_add_subdirectory( BUILD_TDEFILE_PLUGINS tdefile-plugins ) + + +##### write configure files + +configure_file( config.h.cmake config.h @ONLY ) -- cgit v1.2.1