diff options
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r-- | CMakeLists.txt | 111 |
1 files changed, 57 insertions, 54 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 1fc630f..23066ac 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,5 +1,5 @@ -project (ayatana-indicator-datetime C CXX) cmake_minimum_required (VERSION 3.13) +project (ayatana-indicator-datetime VERSION 24.2.0 LANGUAGES C CXX) list (APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake) @@ -7,13 +7,13 @@ if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) SET(CMAKE_INSTALL_PREFIX "/usr" CACHE PATH "..." FORCE) endif(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) -set (PROJECT_VERSION "0.9.0") set (PACKAGE ${CMAKE_PROJECT_NAME}) # Options option(ENABLE_TESTS "Enable all tests and checks" OFF) option(ENABLE_COVERAGE "Enable coverage reports (includes enabling all tests and checks)" OFF) option(ENABLE_WERROR "Treat all build warnings as errors" OFF) +option(ENABLE_LOMIRI_FEATURES "Build with Lomiri-specific libraries, schemas and media" OFF) if(ENABLE_COVERAGE) set(ENABLE_TESTS ON) @@ -23,17 +23,22 @@ else() endif() if(ENABLE_WERROR) - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror") + add_definitions("-Werror") endif() +if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") + add_definitions("-Weverything") +else() + add_definitions("-Wall") +endif() + +add_definitions("-Wno-sign-compare") # Needed for GTest on Ubuntu + ## ## GNU standard installation directories ## include (GNUInstallDirs) -set (CMAKE_INSTALL_PKGLIBEXECDIR "${CMAKE_INSTALL_LIBEXECDIR}/${CMAKE_PROJECT_NAME}") -set (CMAKE_INSTALL_FULL_PKGLIBEXECDIR "${CMAKE_INSTALL_FULL_LIBEXECDIR}/${CMAKE_PROJECT_NAME}") ## ## Gettext @@ -43,11 +48,6 @@ set (GETTEXT_PACKAGE "ayatana-indicator-datetime") add_definitions (-DGETTEXT_PACKAGE="${GETTEXT_PACKAGE}" -DLOCALEDIR="${CMAKE_INSTALL_FULL_LOCALEDIR}") -set(ALARM_DEFAULT_SOUND "/usr/share/sounds/lomiri/ringtones/Alarm clock.ogg") -set(CALENDAR_DEFAULT_SOUND "/usr/share/sounds/lomiri/ringtones/Marimbach.ogg") -add_definitions(-DALARM_DEFAULT_SOUND="${ALARM_DEFAULT_SOUND}" - -DCALENDAR_DEFAULT_SOUND="${CALENDAR_DEFAULT_SOUND}") - ## ## Check for prerequisites ## @@ -56,38 +56,53 @@ find_package (PkgConfig REQUIRED) include (CheckIncludeFile) include (FindPkgConfig) -pkg_check_modules (SERVICE_DEPS REQUIRED - libayatana-common>=0.9.3 - glib-2.0>=2.36 - gio-unix-2.0>=2.36 - libical>=0.48 - libecal-2.0>=3.16 - libedataserver-1.2>=3.5 - gstreamer-1.0>=1.2 - libnotify>=0.7.6 - properties-cpp>=0.0.1 - libaccounts-glib>=1.18 - messaging-menu>=0.8.2 - uuid>=2.25) +set ( + SERVICE_DEPS + libayatana-common>=0.9.3 + glib-2.0>=2.36 + gio-unix-2.0>=2.36 + libical>=0.48 + libecal-2.0>=3.16 + libedataserver-1.2>=3.5 + gstreamer-1.0>=1.2 + libnotify>=0.7.6 + properties-cpp>=0.0.1 + libaccounts-glib>=1.18 + messaging-menu>=0.8.2 + uuid>=2.25 +) + +if (ENABLE_LOMIRI_FEATURES) + list ( + APPEND + SERVICE_DEPS + lomiri-url-dispatcher>=0 + lomiri-sounds + lomiri-schemas + ) + + pkg_get_variable(ALARM_DEFAULT_SOUND lomiri-sounds alarm_default_sound) + pkg_get_variable(CALENDAR_DEFAULT_SOUND lomiri-sounds calendar_default_sound) + string(JOIN " " ALARM_DEFAULT_SOUND ${ALARM_DEFAULT_SOUND}) + string(JOIN " " CALENDAR_DEFAULT_SOUND ${CALENDAR_DEFAULT_SOUND}) + + add_definitions ( + -DLOMIRI_FEATURES_ENABLED + -DALARM_DEFAULT_SOUND="${ALARM_DEFAULT_SOUND}" + -DCALENDAR_DEFAULT_SOUND="${CALENDAR_DEFAULT_SOUND}" + ) +else () + add_definitions ( + -DALARM_DEFAULT_SOUND="dummy" + -DCALENDAR_DEFAULT_SOUND="dummy" + ) + + set (ALARM_DEFAULT_SOUND "dummy") +endif () + +pkg_check_modules (SERVICE_DEPS REQUIRED ${SERVICE_DEPS}) include_directories (SYSTEM ${SERVICE_DEPS_INCLUDE_DIRS}) -# lomiri-url-dispatcher - -pkg_check_modules(URLDISPATCHER lomiri-url-dispatcher>=0) -include_directories(${URLDISPATCHER_INCLUDE_DIRS}) - -if(URLDISPATCHER_FOUND) - add_definitions( -DHAS_URLDISPATCHER ) -endif() - -pkg_check_modules(LOMIRI_SOUNDS lomiri-sounds) - -if(EXISTS "/usr/share/accountsservice/interfaces/com.lomiri.touch.AccountsService.Sound.xml") - set (HAS_LOMIRI_ACCTSERVICE_SOUND ON) -else() - set (HAS_LOMIRI_ACCTSERVICE_SOUND OFF) -endif() - ## ## custom targets ## @@ -105,19 +120,6 @@ add_custom_target (cppcheck COMMAND cppcheck --enable=all -q --error-exitcode=2 ## Actual building ## -if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") - - set(COMPILE_FLAGS "${COMPILE_FLAGS} -Weverything") - set(COMPILE_FLAGS "${COMPILE_FLAGS} -Wno-c++98-compat -Wno-padded") - set(COMPILE_FLAGS "${COMPILE_FLAGS} -Wno-documentation") - -else() - - set(COMPILE_FLAGS "${COMPILE_FLAGS} -Wall") - -endif() - - include_directories (${CMAKE_CURRENT_SOURCE_DIR}/include) include_directories (${CMAKE_CURRENT_BINARY_DIR}/include) @@ -153,3 +155,4 @@ endif() message(STATUS "Install prefix: ${CMAKE_INSTALL_PREFIX}") message(STATUS "Unit tests: ${ENABLE_TESTS}") message(STATUS "Build with -Werror: ${ENABLE_WERROR}") +message(STATUS "Build with Lomiri features: ${ENABLE_LOMIRI_FEATURES}") |