mirror of
https://github.com/osm2pgsql-dev/osm2pgsql.git
synced 2025-08-18 08:18:25 +00:00
CMake config: More modern way of defining the C++ version to use
We declare that we need to use C++17, but this can be overridden on the cmake command line with "-DCMAKE_CXX_STANDARD=20" or so. Fixes #1010.
This commit is contained in:
15
.github/workflows/ci.yml
vendored
15
.github/workflows/ci.yml
vendored
@ -92,7 +92,6 @@ jobs:
|
||||
LUAJIT_OPTION: OFF
|
||||
POSTGRESQL_VERSION: 10
|
||||
POSTGIS_VERSION: 3
|
||||
CPP_VERSION: 17
|
||||
BUILD_TYPE: Debug
|
||||
|
||||
steps:
|
||||
@ -111,7 +110,6 @@ jobs:
|
||||
LUAJIT_OPTION: OFF
|
||||
POSTGRESQL_VERSION: 11
|
||||
POSTGIS_VERSION: 2.5
|
||||
CPP_VERSION: 17
|
||||
BUILD_TYPE: Debug
|
||||
|
||||
steps:
|
||||
@ -129,7 +127,6 @@ jobs:
|
||||
LUAJIT_OPTION: ON
|
||||
POSTGRESQL_VERSION: 12
|
||||
POSTGIS_VERSION: 2.5
|
||||
CPP_VERSION: 17
|
||||
BUILD_TYPE: Debug
|
||||
|
||||
steps:
|
||||
@ -148,7 +145,6 @@ jobs:
|
||||
LUAJIT_OPTION: ON
|
||||
POSTGRESQL_VERSION: 13
|
||||
POSTGIS_VERSION: 3
|
||||
CPP_VERSION: 17
|
||||
BUILD_TYPE: Debug
|
||||
|
||||
steps:
|
||||
@ -166,7 +162,6 @@ jobs:
|
||||
LUAJIT_OPTION: OFF
|
||||
POSTGRESQL_VERSION: 13
|
||||
POSTGIS_VERSION: 3
|
||||
CPP_VERSION: 17
|
||||
USE_PROJ_LIB: 6
|
||||
BUILD_TYPE: Debug
|
||||
|
||||
@ -185,7 +180,6 @@ jobs:
|
||||
LUAJIT_OPTION: OFF
|
||||
POSTGRESQL_VERSION: 13
|
||||
POSTGIS_VERSION: 3
|
||||
CPP_VERSION: 17
|
||||
USE_PROJ_LIB: off
|
||||
BUILD_TYPE: Debug
|
||||
|
||||
@ -204,7 +198,6 @@ jobs:
|
||||
LUAJIT_OPTION: OFF
|
||||
POSTGRESQL_VERSION: 14
|
||||
POSTGIS_VERSION: 3
|
||||
CPP_VERSION: 17
|
||||
USE_PROJ_LIB: 6
|
||||
BUILD_TYPE: Debug
|
||||
|
||||
@ -223,7 +216,6 @@ jobs:
|
||||
LUAJIT_OPTION: ON
|
||||
POSTGRESQL_VERSION: 13
|
||||
POSTGIS_VERSION: 2.5
|
||||
CPP_VERSION: 17
|
||||
BUILD_TYPE: Release
|
||||
|
||||
steps:
|
||||
@ -239,7 +231,6 @@ jobs:
|
||||
CXX: g++-10
|
||||
POSTGRESQL_VERSION: 13
|
||||
POSTGIS_VERSION: 2.5
|
||||
CPP_VERSION: 17
|
||||
BUILD_TYPE: Release
|
||||
|
||||
steps:
|
||||
@ -257,7 +248,6 @@ jobs:
|
||||
LUAJIT_OPTION: ON
|
||||
POSTGRESQL_VERSION: 14
|
||||
POSTGIS_VERSION: 3
|
||||
CPP_VERSION: 17
|
||||
BUILD_TYPE: Debug
|
||||
|
||||
steps:
|
||||
@ -275,7 +265,6 @@ jobs:
|
||||
LUAJIT_OPTION: OFF
|
||||
POSTGRESQL_VERSION: 14
|
||||
POSTGIS_VERSION: 3
|
||||
CPP_VERSION: 17
|
||||
USE_PROJ_LIB: 6
|
||||
BUILD_TYPE: Debug
|
||||
|
||||
@ -294,7 +283,6 @@ jobs:
|
||||
LUAJIT_OPTION: OFF
|
||||
POSTGRESQL_VERSION: 14
|
||||
POSTGIS_VERSION: 3
|
||||
CPP_VERSION: 17
|
||||
USE_PROJ_LIB: off
|
||||
BUILD_TYPE: Debug
|
||||
|
||||
@ -313,7 +301,6 @@ jobs:
|
||||
LUAJIT_OPTION: OFF
|
||||
POSTGRESQL_VERSION: 14
|
||||
POSTGIS_VERSION: 3
|
||||
CPP_VERSION: 17
|
||||
USE_PROJ_LIB: 6
|
||||
BUILD_TYPE: Debug
|
||||
|
||||
@ -333,7 +320,6 @@ jobs:
|
||||
LUAJIT_OPTION: ON
|
||||
POSTGRESQL_VERSION: 14
|
||||
POSTGIS_VERSION: 3
|
||||
CPP_VERSION: 17
|
||||
BUILD_TYPE: Release
|
||||
|
||||
steps:
|
||||
@ -350,7 +336,6 @@ jobs:
|
||||
EXTRA_FLAGS: -Wno-stringop-overread
|
||||
POSTGRESQL_VERSION: 14
|
||||
POSTGIS_VERSION: 3
|
||||
CPP_VERSION: 17
|
||||
BUILD_TYPE: Release
|
||||
|
||||
steps:
|
||||
|
@ -1,5 +1,5 @@
|
||||
|
||||
cmake_minimum_required(VERSION 3.5.0)
|
||||
cmake_minimum_required(VERSION 3.8.0)
|
||||
|
||||
project(osm2pgsql VERSION 1.8.1 LANGUAGES CXX C)
|
||||
|
||||
@ -37,12 +37,8 @@ if (NOT CMAKE_BUILD_TYPE)
|
||||
set(CMAKE_BUILD_TYPE RelWithDebInfo)
|
||||
endif()
|
||||
|
||||
if (NOT "${CMAKE_CXX_STANDARD}")
|
||||
set(CMAKE_CXX_STANDARD 17)
|
||||
endif()
|
||||
message(STATUS "Building in C++${CMAKE_CXX_STANDARD} mode")
|
||||
# We don't want to use special compiler extensions because we want portability
|
||||
set(CMAKE_CXX_EXTENSIONS OFF)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
|
||||
if (MSVC)
|
||||
add_definitions(-D_CRT_SECURE_NO_WARNINGS -DNOMINMAX)
|
||||
|
@ -1,6 +1,10 @@
|
||||
|
||||
add_library(osm2pgsql_lib STATIC)
|
||||
|
||||
# Set the minimum required C++ version for the library and hence for all
|
||||
# binaries that use it.
|
||||
target_compile_features(osm2pgsql_lib PUBLIC cxx_std_17)
|
||||
|
||||
target_sources(osm2pgsql_lib PRIVATE
|
||||
db-copy.cpp
|
||||
debug-output.cpp
|
||||
|
@ -36,6 +36,7 @@ add_definitions(-DTESTDATA_DIR=\"${osm2pgsql_SOURCE_DIR}/tests/data/\")
|
||||
add_definitions(-DOSM2PGSQLDATA_DIR=\"${osm2pgsql_SOURCE_DIR}/\")
|
||||
|
||||
add_library(catch_main_lib STATIC catch-main.cpp)
|
||||
target_compile_features(catch_main_lib PUBLIC cxx_std_17)
|
||||
|
||||
set_test(test-check-input LABELS NoDB)
|
||||
set_test(test-db-copy-thread)
|
||||
|
Reference in New Issue
Block a user