summaryrefslogtreecommitdiffstats
path: root/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt95
1 files changed, 67 insertions, 28 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 5ae2326..5f3ec8b 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,42 +1,81 @@
-project(polkit-kde-agent-1)
+############################################
+# #
+# Improvements and feedbacks are welcome #
+# #
+# This file is released under GPL >= 3 #
+# #
+############################################
-set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules")
-find_package(KDE4 REQUIRED)
+cmake_minimum_required( VERSION 2.8.12 )
-set(POLKITQT-1_MIN_VERSION "0.99.0")
-find_package(PolkitQt-1 REQUIRED)
-include_directories(${KDE4_INCLUDES}
- ${POLKITQT-1_INCLUDE_DIR}
- ${CMAKE_CURRENT_SOURCE_DIR}
- ${CMAKE_CURRENT_BINARY_DIR})
+#### general package setup
-set(policykit_SRCS
- policykitkde.cpp
- policykitlistener.cpp
- main.cpp
- AuthDialog.cpp
-)
+project( polkit-agent-tde )
+set( VERSION R14.1.0 )
-qt4_add_dbus_adaptor(policykit_SRCS org.kde.Polkit1AuthAgent.xml policykitlistener.h PolicyKitListener)
-kde4_add_ui_files(policykit_SRCS AuthDialog.ui authdetails.ui)
+#### include essential cmake modules
-kde4_add_executable(polkit-kde-authentication-agent-1 ${policykit_SRCS})
+include( FindPkgConfig )
+include( CheckFunctionExists )
+include( CheckSymbolExists )
+include( CheckIncludeFile )
+include( CheckLibraryExists )
+include( CheckCSourceCompiles )
+include( CheckCXXSourceCompiles )
-target_link_libraries(polkit-kde-authentication-agent-1
- ${KDE4_TDEUI_LIBS}
- ${POLKITQT-1_LIBRARIES}
-)
-configure_file(polkit-kde-authentication-agent-1.desktop.in ${CMAKE_BINARY_DIR}/polkit-kde-authentication-agent-1.desktop)
+#### include our cmake modules
-install(TARGETS polkit-kde-authentication-agent-1 DESTINATION ${LIBEXEC_INSTALL_DIR})
+include( TDEMacros )
-install(FILES ${CMAKE_BINARY_DIR}/polkit-kde-authentication-agent-1.desktop DESTINATION ${AUTOSTART_INSTALL_DIR})
-install(FILES policykit1-kde.notifyrc DESTINATION ${DATA_INSTALL_DIR}/policykit1-kde)
+##### setup install paths
-include(MacroOptionalAddSubdirectory)
-macro_optional_add_subdirectory( po )
+include( TDESetupPaths )
+tde_setup_paths( )
+
+
+##### optional stuff
+
+option( WITH_ALL_OPTIONS "Enable all optional support" OFF )
+option( WITH_GCC_VISIBILITY "Enable fvisibility and fvisibility-inlines-hidden" ${WITH_ALL_OPTIONS} )
+
+
+##### user requested modules
+
+option( BUILD_ALL "Build all" ON )
+#option( BUILD_DOC "Build documentation" ${BUILD_ALL} )
+#option( BUILD_TRANSLATIONS "Build translations" ${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 "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--no-undefined" )
+set( CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,--no-undefined" )
+
+
+##### directories
+
+add_subdirectory( src )
+
+
+##### other data ################################
+
+#tde_conditional_add_project_docs( BUILD_DOC )
+#tde_conditional_add_project_translations( BUILD_TRANSLATIONS )
+
+
+##### write configure files
+
+configure_file( config.h.cmake config.h @ONLY )