aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt7
-rw-r--r--cmake/ProjTest.cmake7
-rw-r--r--docs/source/install.rst2
-rw-r--r--src/lib_proj.cmake6
-rw-r--r--src/sqlite3_utils.cpp14
-rw-r--r--src/sqlite3_utils.hpp14
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;