cmake_policy(SET CMP0043 OLD)
endif()
+# Honor visibility settings for all target types
+if (CMAKE_VERSION VERSION_GREATER 3.3)
+ cmake_policy(SET CMP0063 NEW)
+endif()
+
# Simplify later checks
#####################################################################
)
endif()
- find_package(Phonon4Qt5 QUIET)
- set_package_properties(Phonon4Qt5 PROPERTIES TYPE RECOMMENDED
- URL "https://projects.kde.org/projects/kdesupport/phonon"
- DESCRIPTION "a multimedia abstraction library"
+ find_package(Qt5Multimedia QUIET)
+ set_package_properties(Qt5Multimedia PROPERTIES TYPE RECOMMENDED
+ URL "http://qt.digia.com"
+ DESCRIPTION "Multimedia support for Qt5"
PURPOSE "Required for audio notifications"
)
- find_package(LibsnoreQt5 QUIET)
+ if (NOT Qt5Multimedia_FOUND)
+ find_package(Phonon4Qt5 QUIET)
+ set_package_properties(Phonon4Qt5 PROPERTIES TYPE RECOMMENDED
+ URL "https://projects.kde.org/projects/kdesupport/phonon"
+ DESCRIPTION "a multimedia abstraction library"
+ PURPOSE "Required for audio notifications"
+ )
+ endif()
+
+ find_package(LibsnoreQt5 0.7.0 QUIET)
set_package_properties(LibsnoreQt5 PROPERTIES TYPE OPTIONAL
- URL "https://github.com/TheOneRing/Snorenotify"
+ URL "https://projects.kde.org/projects/playground/libs/snorenotify"
DESCRIPTION "a cross-platform notification framework"
PURPOSE "Enable support for the snorenotify framework"
)
+ if(LibsnoreQt5_FOUND)
+ find_package(LibsnoreSettingsQt5)
+ set_package_properties(LibsnoreSettingsQt5 PROPERTIES TYPE REQUIRED
+ URL "https://projects.kde.org/projects/playground/libs/snorenotify"
+ DESCRIPTION "a cross-platform notification framework"
+ PURPOSE "Enable support for the snorenotify framework"
+ )
+ endif()
+
if (WITH_WEBKIT)
find_package(Qt5WebKit QUIET)
)
endif()
endif()
- add_feature_info("WITH_WEBKIT, QtWebKit and QtWebKitWidgets modules" Qt5WebKitWidgets_FOUND "Support showing previews for URLs in chat")
+
+ if (WITH_WEBKIT AND Qt5WebKitWidgets_FOUND)
+ set(HAVE_WEBKIT true)
+ endif()
+ add_feature_info("WITH_WEBKIT, QtWebKit and QtWebKitWidgets modules" HAVE_WEBKIT "Support showing previews for URLs in chat")
# KDE Frameworks
################
DESCRIPTION "a multimedia abstraction library"
PURPOSE "Required for audio notifications"
)
-
- find_package(Libsnore QUIET)
- set_package_properties(Libsnore PROPERTIES TYPE OPTIONAL
- URL "https://github.com/TheOneRing/Snorenotify"
- DESCRIPTION "a cross-platform notification framework"
- PURPOSE "Enable support for the snorenotify framework"
- )
endif(WITH_KDE)
find_package(IndicateQt QUIET)
)
endif()
+# Check for SSL support in Qt
+# As there's no easy way to get Qt's configuration in particular for Qt5, let's just compile
+# a small test program checking the defines. This works for both Qt4 and Qt5.
+cmake_push_check_state(RESET)
+set(CMAKE_REQUIRED_INCLUDES ${QT_INCLUDES} ${Qt5Core_INCLUDE_DIRS})
+set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${Qt5Core_EXECUTABLE_COMPILE_FLAGS}")
+
+if (USE_QT5 AND Qt5_POSITION_INDEPENDENT_CODE)
+ set(CMAKE_REQUIRED_FLAGS "-fPIC -DQT_NO_VERSION_TAGGING")
+endif()
+
+check_cxx_source_compiles("
+ #include \"qglobal.h\"
+ #if defined QT_NO_SSL
+ # error \"No SSL support\"
+ #endif
+ int main() {}"
+ HAVE_SSL)
+cmake_pop_check_state()
# Additional compile settings
#####################################################################
endif()
endif()
-# Check for SSL support in Qt
-# As there's no easy way to get Qt's configuration in particular for Qt5, let's just compile
-# a small test program checking the defines. This works for both Qt4 and Qt5.
-cmake_push_check_state(RESET)
-set(CMAKE_REQUIRED_INCLUDES ${QT_INCLUDES} ${Qt5Core_INCLUDE_DIRS})
-check_cxx_source_compiles("
- #include \"qglobal.h\"
- #if defined QT_NO_OPENSSL || defined QT_NO_SSL
- # error \"No SSL support\"
- #endif
- int main() {}"
- HAVE_SSL)
-cmake_pop_check_state()
-
if (HAVE_SSL)
add_definitions(-DHAVE_SSL)
endif()
get_git_head_revision(GIT_REFSPEC GIT_HEAD)
git_describe(GIT_DESCRIBE --long)
+# If in a Git repo we can get the commit-date from a git command
+if (GIT_HEAD)
+ execute_process(
+ COMMAND git show -s --format=%ct
+ WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
+ OUTPUT_VARIABLE GIT_COMMIT_DATE
+ OUTPUT_STRIP_TRAILING_WHITESPACE
+ )
+endif()
+
# If not in a Git repo try to read GIT_HEAD and GIT_DESCRIBE from
# enviroment
if (NOT GIT_HEAD OR NOT GIT_DESCRIBE)
if (DEFINED ENV{GIT_HEAD})
- set(GIT_HEAD ${GIT_HEAD})
+ set(GIT_HEAD $ENV{GIT_HEAD})
endif ()
if (DEFINED ENV{GIT_DESCRIBE})
- set(GIT_DESCRIBE ${GIT_DESCRIBE})
+ set(GIT_DESCRIBE $ENV{GIT_DESCRIBE})
endif()
endif()
if (NOT GIT_HEAD OR NOT GIT_DESCRIBE)
set(GIT_HEAD "")
set(GIT_DESCRIBE "")
+ set(GIT_COMMIT_DATE 0)
endif()
configure_file(version.h.in ${CMAKE_BINARY_DIR}/version.h @ONLY)