diff options
-rw-r--r-- | CMakeLists.txt | 11 | ||||
-rw-r--r-- | README.md | 10 |
2 files changed, 9 insertions, 12 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index e0ff6f19..d0ce98a6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.5) +cmake_minimum_required(VERSION 3.10) set(API_VERSION "0.6") project(Quotient VERSION "${API_VERSION}.0" LANGUAGES CXX) @@ -34,7 +34,7 @@ if (NOT CMAKE_INSTALL_INCLUDEDIR) set(CMAKE_INSTALL_INCLUDEDIR "include") endif() -set(CMAKE_CXX_STANDARD 14) +set(CMAKE_CXX_STANDARD 17) foreach (FLAG all "" pedantic extra error=return-type no-unused-parameter no-gnu-zero-variadic-macro-arguments) CHECK_CXX_COMPILER_FLAG("-W${FLAG}" WARN_${FLAG}_SUPPORTED) @@ -43,9 +43,7 @@ foreach (FLAG all "" pedantic extra error=return-type no-unused-parameter no-gnu endif () endforeach () -# Qt 5.6+ is the formal requirement but for the sake of supporting UBPorts -# upstream Qt 5.4 is required. -find_package(Qt5 5.4.1 REQUIRED Network Gui Multimedia) +find_package(Qt5 5.9 REQUIRED Network Gui Multimedia) get_filename_component(Qt5_Prefix "${Qt5_DIR}/../../../.." ABSOLUTE) if ((NOT DEFINED USE_INTREE_LIBQOLM OR USE_INTREE_LIBQOLM) @@ -265,8 +263,7 @@ install(FILES cmake/QuotientConfig.cmake "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}/QuotientConfigVersion.cmake" DESTINATION ${ConfigFilesLocation} ) -# Only available from CMake 3.7; reserved for future use -#install(EXPORT_ANDROID_MK QuotientTargets DESTINATION share/ndk-modules) +install(EXPORT_ANDROID_MK QuotientTargets DESTINATION share/ndk-modules) if (WIN32) install(FILES mime/packages/freedesktop.org.xml DESTINATION mime/packages) @@ -32,19 +32,19 @@ Recent releases of Debian and OpenSuSE, e.g., already have the package (under the old name). If your Linux repo doesn't provide binary package (either libqmatrixclient - older - or libquotient - newer), or you're on Windows or macOS, your best bet is to build the library from the source -and bundle it with your application. In +and bundle it with your application. ### Pre-requisites - A recent Linux, macOS or Windows system (desktop versions tried; Ubuntu Touch is known to work; mobile Windows and iOS might work too but never tried) - - Recent enough Linux examples: Debian Jessy; Fedora 28; OpenSUSE 15; - Ubuntu Bionic. + - Recent enough Linux examples: Debian Stretch; Fedora 28; OpenSUSE Leap 15; + Ubuntu Bionic Beaver. - Qt 5 (either Open Source or Commercial), 5.9 or higher. - A build configuration tool: - - CMake 3.5 or newer (from your package management system or + - CMake 3.10 or newer (from your package management system or [the official website](https://cmake.org/download/)) - or qmake (comes with Qt) -- A C++ toolchain with C++14 support: +- A C++ toolchain with C++17 support: - GCC 7 (Windows, Linux, macOS), Clang 6 (Linux), Apple Clang 10 (macOS) and Visual Studio 2017 (Windows) are the oldest officially supported. - Any build system that works with CMake and/or qmake should be fine: |