package/libpqxx: needs C++17

libpqxx's v7.x series requires C++17 support. Adjust the configuration
selection to require a newer toolchain, as well as force a C++17
standard to ensure libpqxx's custom C++ standard check [1] passes.

Fixes:
 - http://autobuild.buildroot.net/results/a79cb93aec74acc8e32809530c09e26bebaf16e4/
 - http://autobuild.buildroot.net/results/ae1a02b5238b650cdc79edb298c398b078882cfc/

[1]: https://github.com/jtv/libpqxx/blob/7.7.5/configure.ac#L106-L124

Signed-off-by: James Knight <james.d.knight@live.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2023.05.x
James Knight 2023-05-20 13:58:44 -04:00 committed by Yann E. MORIN
parent 603df32a0c
commit 1e0e8540eb
2 changed files with 6 additions and 4 deletions

View File

@ -2,7 +2,7 @@ config BR2_PACKAGE_LIBPQXX
bool "libpqxx"
depends on BR2_PACKAGE_POSTGRESQL
depends on BR2_TOOLCHAIN_HAS_THREADS
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # C++11
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_7 # C++17
depends on BR2_INSTALL_LIBSTDCPP
help
libpqxx is the official C++ client API for PostgreSQL, the
@ -10,8 +10,8 @@ config BR2_PACKAGE_LIBPQXX
http://pqxx.org/development/libpqxx/
comment "libpqxx needs toolchain w/ C++, gcc >= 4.9, threads"
comment "libpqxx needs toolchain w/ C++, gcc >= 7, threads"
depends on BR2_PACKAGE_POSTGRESQL
depends on !BR2_INSTALL_LIBSTDCPP || \
!BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 || \
!BR2_TOOLCHAIN_GCC_AT_LEAST_7 || \
!BR2_TOOLCHAIN_HAS_THREADS

View File

@ -11,6 +11,8 @@ LIBPQXX_DEPENDENCIES = postgresql
LIBPQXX_LICENSE = BSD-3-Clause
LIBPQXX_LICENSE_FILES = COPYING
LIBPQXX_CONF_ENV += ac_cv_path_PG_CONFIG=$(STAGING_DIR)/usr/bin/pg_config
LIBPQXX_CONF_ENV = \
ac_cv_path_PG_CONFIG=$(STAGING_DIR)/usr/bin/pg_config \
CXXFLAGS="$(TARGET_CXXFLAGS) -std=c++17"
$(eval $(autotools-package))