diff options
| -rw-r--r-- | CMakeLists.txt | 7 | ||||
| -rw-r--r-- | cmake/ProjTest.cmake | 7 | ||||
| -rw-r--r-- | docs/source/install.rst | 2 | ||||
| -rw-r--r-- | src/lib_proj.cmake | 6 | ||||
| -rw-r--r-- | src/sqlite3_utils.cpp | 14 | ||||
| -rw-r--r-- | src/sqlite3_utils.hpp | 14 |
6 files changed, 21 insertions, 29 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index fde2b28a..5e0dba46 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -9,15 +9,14 @@ ################################################################################ # General settings ################################################################################ -cmake_minimum_required(VERSION 3.5 FATAL_ERROR) +cmake_minimum_required(VERSION 3.9 FATAL_ERROR) # For historic reasons, the CMake PROJECT-NAME is PROJ4 project(PROJ4 LANGUAGES C CXX) set(PROJECT_INTERN_NAME PROJ) -if(NOT CMAKE_VERSION VERSION_LESS 3.1) - cmake_policy(SET CMP0054 NEW) -endif() +# Only interpret if() arguments as variables or keywords when unquoted +cmake_policy(SET CMP0054 NEW) # Set C++ version # Make CMAKE_CXX_STANDARD available as cache option overridable by user diff --git a/cmake/ProjTest.cmake b/cmake/ProjTest.cmake index 7797ed83..8930a561 100644 --- a/cmake/ProjTest.cmake +++ b/cmake/ProjTest.cmake @@ -20,15 +20,10 @@ function(proj_add_test_script_sh SH_NAME BIN_USE) endif() endif() - if(CMAKE_VERSION VERSION_LESS 2.8.4) - set(TEST_OK 0) - message(STATUS "test with bash script need a cmake version >= 2.8.4") - endif() - if(${TEST_OK}) add_test(NAME "${testname}" WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/data - COMMAND ${PROJECT_SOURCE_DIR}/test/cli/${SH_NAME} + COMMAND bash ${PROJECT_SOURCE_DIR}/test/cli/${SH_NAME} ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${${BIN_USE}} ) diff --git a/docs/source/install.rst b/docs/source/install.rst index bda3c1fa..17cc7197 100644 --- a/docs/source/install.rst +++ b/docs/source/install.rst @@ -143,7 +143,7 @@ Build requirements - SQLite3 >= 3.11 (headers, library and executable) - libtiff >= 4.0 (headers and library) - optional (but recommended): curl >= 7.29.0 -- GNU make for autotools build or CMake >= 3.5 +- GNU make for autotools build or CMake >= 3.9 Autotools -------------------------------------------------------------------------------- diff --git a/src/lib_proj.cmake b/src/lib_proj.cmake index d89cfade..6bae0778 100644 --- a/src/lib_proj.cmake +++ b/src/lib_proj.cmake @@ -376,10 +376,8 @@ if(ENABLE_LTO) endif() endif() -if(NOT CMAKE_VERSION VERSION_LESS 2.8.11) - target_include_directories(${PROJ_CORE_TARGET} INTERFACE - $<INSTALL_INTERFACE:${INCLUDEDIR}>) -endif() +target_include_directories(${PROJ_CORE_TARGET} INTERFACE + $<INSTALL_INTERFACE:${INCLUDEDIR}>) if(WIN32) set_target_properties(${PROJ_CORE_TARGET} diff --git a/src/sqlite3_utils.cpp b/src/sqlite3_utils.cpp index 673eb89c..3b1f1f8a 100644 --- a/src/sqlite3_utils.cpp +++ b/src/sqlite3_utils.cpp @@ -44,7 +44,7 @@ NS_PROJ_START // --------------------------------------------------------------------------- -SQLite3VFS::SQLite3VFS(sqlite3_vfs *vfs) : vfs_(vfs) {} +SQLite3VFS::SQLite3VFS(pj_sqlite3_vfs *vfs) : vfs_(vfs) {} // --------------------------------------------------------------------------- @@ -57,17 +57,7 @@ SQLite3VFS::~SQLite3VFS() { // --------------------------------------------------------------------------- -struct pj_sqlite3_vfs : public sqlite3_vfs { - std::string namePtr{}; - bool fakeSync = false; - bool fakeLock = false; -}; - -// --------------------------------------------------------------------------- - -const char *SQLite3VFS::name() const { - return static_cast<pj_sqlite3_vfs *>(vfs_)->namePtr.c_str(); -} +const char *SQLite3VFS::name() const { return vfs_->namePtr.c_str(); } // --------------------------------------------------------------------------- diff --git a/src/sqlite3_utils.hpp b/src/sqlite3_utils.hpp index ef141d1f..42ec33af 100644 --- a/src/sqlite3_utils.hpp +++ b/src/sqlite3_utils.hpp @@ -39,10 +39,20 @@ NS_PROJ_START //! @cond Doxygen_Suppress +// --------------------------------------------------------------------------- + +struct pj_sqlite3_vfs : public sqlite3_vfs { + std::string namePtr{}; + bool fakeSync = false; + bool fakeLock = false; +}; + +// --------------------------------------------------------------------------- + class SQLite3VFS { - sqlite3_vfs *vfs_ = nullptr; + pj_sqlite3_vfs *vfs_ = nullptr; - explicit SQLite3VFS(sqlite3_vfs *vfs); + explicit SQLite3VFS(pj_sqlite3_vfs *vfs); SQLite3VFS(const SQLite3VFS &) = delete; SQLite3VFS &operator=(const SQLite3VFS &) = delete; |
