From 27eab454a6a94c12217353b5073a8f8a9380c0e5 Mon Sep 17 00:00:00 2001 From: Moritz Haase Date: Mon, 14 Jul 2025 13:26:28 +0200 Subject: soci: upgrade 4.0.3 -> 4.1.2 New version includes support to build against CMake 4+. Signed-off-by: Moritz Haase Signed-off-by: Khem Raj --- ...0001-Do-not-use-std-shuffle-with-clang-15.patch | 32 --------------- meta-oe/recipes-dbs/soci/soci_4.0.3.bb | 48 ---------------------- meta-oe/recipes-dbs/soci/soci_4.1.2.bb | 47 +++++++++++++++++++++ 3 files changed, 47 insertions(+), 80 deletions(-) delete mode 100644 meta-oe/recipes-dbs/soci/soci/0001-Do-not-use-std-shuffle-with-clang-15.patch delete mode 100644 meta-oe/recipes-dbs/soci/soci_4.0.3.bb create mode 100644 meta-oe/recipes-dbs/soci/soci_4.1.2.bb diff --git a/meta-oe/recipes-dbs/soci/soci/0001-Do-not-use-std-shuffle-with-clang-15.patch b/meta-oe/recipes-dbs/soci/soci/0001-Do-not-use-std-shuffle-with-clang-15.patch deleted file mode 100644 index eb29627c6d..0000000000 --- a/meta-oe/recipes-dbs/soci/soci/0001-Do-not-use-std-shuffle-with-clang-15.patch +++ /dev/null @@ -1,32 +0,0 @@ -From e5f72c656829402c6f70e7416039bc18f0c26485 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Tue, 30 Aug 2022 22:17:14 -0700 -Subject: [PATCH] Do not use std::shuffle with clang 15 - -This fails to compile although its preferred approach for c++11 and -newer - -See -https://github.com/SOCI/soci/issues/984 - -Upstream-Status: Inappropriate [Workaround] -Signed-off-by: Khem Raj ---- - cmake/SociConfig.cmake | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/cmake/SociConfig.cmake b/cmake/SociConfig.cmake -index 492e1837..f24fd9a6 100644 ---- a/cmake/SociConfig.cmake -+++ b/cmake/SociConfig.cmake -@@ -94,6 +94,7 @@ else() - set(SOCI_CXX11 ON) - set(SOCI_CXX_VERSION_FLAGS "-std=c++11") - add_definitions(-DCATCH_CONFIG_CPP11_NO_IS_ENUM) -+ add_definitions(-DCATCH_CONFIG_CPP11_NO_SHUFFLE) - - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${SOCI_GCC_CLANG_COMMON_FLAGS} ${SOCI_CXX_VERSION_FLAGS}") - --- -2.37.3 - diff --git a/meta-oe/recipes-dbs/soci/soci_4.0.3.bb b/meta-oe/recipes-dbs/soci/soci_4.0.3.bb deleted file mode 100644 index 315f5d515e..0000000000 --- a/meta-oe/recipes-dbs/soci/soci_4.0.3.bb +++ /dev/null @@ -1,48 +0,0 @@ -DESCRIPTION = "The C++ Database Access Library" -HOMEPAGE = "http://soci.sourceforge.net" -LICENSE = "BSL-1.0" -LIC_FILES_CHKSUM = "file://LICENSE_1_0.txt;md5=e4224ccaecb14d942c71d31bef20d78c" -SECTION = "libs" - -SRC_URI = "${SOURCEFORGE_MIRROR}/project/${BPN}/${BPN}/${BP}/${BP}.tar.gz \ - file://0001-Do-not-use-std-shuffle-with-clang-15.patch \ - " -SRC_URI[sha256sum] = "615e5f7e4b52007f3a3b4050a99aadf6346b56b5098eb08b3a650836083c6a33" - -TESTCONFIG = '-DSOCI_TEST_EMPTY_CONNSTR="dummy" -DSOCI_TEST_SQLITE3_CONNSTR="test.db" \ - -DSOCI_TEST_POSTGRESQL_CONNSTR:STRING="dbname=soci_test" \ - -DSOCI_TEST_MYSQL_CONNSTR:STRING="db=soci_test user=oe password=oe"' - -OBASEDIR ?= "/opt/oracle" -OINCDIR = "rdbms/public" -OLIBDIR = "lib" - -PACKAGECONFIG[sqlite3] = "-DWITH_SQLITE3=ON,-DWITH_SQLITE3=OFF,sqlite3," -PACKAGECONFIG[mysql] = "-DWITH_MYSQL=ON,-DWITH_MYSQL=OFF,mariadb," -PACKAGECONFIG[postgresql] = "-DWITH_POSTGRESQL=ON,-DWITH_POSTGRESQL=OFF,postgresql," -PACKAGECONFIG[odbc] = "-DWITH_ODBC=ON,-DWITH_ODBC=OFF,," -PACKAGECONFIG[empty] = "-DSOCI_EMPTY=ON,-DSOCI_EMPTY=OFF,," -PACKAGECONFIG[oracle] = "-DWITH_ORACLE=ON --with-oracle-include=${OINCDIR} --with-oracle-lib=${OLIBDIR},-DWITH_ORACLE=OFF,," -PACKAGECONFIG[firebird] = "-DWITH_FIREBIRD=ON,-DWITH_FIREBIRD=OFF,," -PACKAGECONFIG[boost] = "-DWITH_BOOST=ON,-DWITH_BOOST=OFF,boost" -PACKAGECONFIG[ptest] = "${TESTCONFIG},-DSOCI_TESTS=OFF,," - -# enable your backend by default we enable 'empty' -PACKAGECONFIG ??= "boost empty" - -EXTRA_OECMAKE = "-DWITH_DB2=OFF" -DISABLE_STATIC = "" - -inherit dos2unix cmake - -PACKAGES += "${PN}-sqlite3 ${PN}-mysql ${PN}-postgresql ${PN}-odbc ${PN}-oracle" - -FILES:${PN}-sqlite3 = "${libdir}/lib${BPN}_sqlite3.so.*" -FILES:${PN}-mysql = "${libdir}/lib${BPN}_mysql.so.*" -FILES:${PN}-postgresql = "${libdir}/lib${BPN}_postgresql.so.*" -FILES:${PN}-odbc = "${libdir}/lib${BPN}_odbc.so.*" -FILES:${PN}-oracle = "${libdir}/lib${BPN}_oracle.so.*" - -do_install:append() { - sed -i 's|${RECIPE_SYSROOT}${prefix}|${_IMPORT_PREFIX}|g' ${D}${libdir}/cmake/SOCI/SOCITargets*.cmake -} diff --git a/meta-oe/recipes-dbs/soci/soci_4.1.2.bb b/meta-oe/recipes-dbs/soci/soci_4.1.2.bb new file mode 100644 index 0000000000..d199f5350c --- /dev/null +++ b/meta-oe/recipes-dbs/soci/soci_4.1.2.bb @@ -0,0 +1,47 @@ +DESCRIPTION = "The C++ Database Access Library" +HOMEPAGE = "http://soci.sourceforge.net" +LICENSE = "BSL-1.0" +LIC_FILES_CHKSUM = "file://LICENSE_1_0.txt;md5=e4224ccaecb14d942c71d31bef20d78c" +SECTION = "libs" + +SRC_URI = "${SOURCEFORGE_MIRROR}/project/${BPN}/${BPN}/${BP}/${BP}.tar.gz \ + " +SRC_URI[sha256sum] = "b79afe73db241f762ddb611fe11184cbf6da44ba99f90721515daa2f978ff38e" + +TESTCONFIG = '-DSOCI_TEST_EMPTY_CONNSTR="dummy" -DSOCI_TEST_SQLITE3_CONNSTR="test.db" \ + -DSOCI_TEST_POSTGRESQL_CONNSTR:STRING="dbname=soci_test" \ + -DSOCI_TEST_MYSQL_CONNSTR:STRING="db=soci_test user=oe password=oe"' + +OBASEDIR ?= "/opt/oracle" +OINCDIR = "rdbms/public" +OLIBDIR = "lib" + +PACKAGECONFIG[sqlite3] = "-DWITH_SQLITE3=ON,-DWITH_SQLITE3=OFF,sqlite3," +PACKAGECONFIG[mysql] = "-DWITH_MYSQL=ON,-DWITH_MYSQL=OFF,mariadb," +PACKAGECONFIG[postgresql] = "-DWITH_POSTGRESQL=ON,-DWITH_POSTGRESQL=OFF,postgresql," +PACKAGECONFIG[odbc] = "-DWITH_ODBC=ON,-DWITH_ODBC=OFF,," +PACKAGECONFIG[empty] = "-DSOCI_EMPTY=ON,-DSOCI_EMPTY=OFF,," +PACKAGECONFIG[oracle] = "-DWITH_ORACLE=ON --with-oracle-include=${OINCDIR} --with-oracle-lib=${OLIBDIR},-DWITH_ORACLE=OFF,," +PACKAGECONFIG[firebird] = "-DWITH_FIREBIRD=ON,-DWITH_FIREBIRD=OFF,," +PACKAGECONFIG[boost] = "-DWITH_BOOST=ON,-DWITH_BOOST=OFF,boost" +PACKAGECONFIG[ptest] = "${TESTCONFIG},-DSOCI_TESTS=OFF,," + +# enable your backend by default we enable 'empty' +PACKAGECONFIG ??= "boost empty" + +EXTRA_OECMAKE = "-DWITH_DB2=OFF" +DISABLE_STATIC = "" + +inherit dos2unix cmake + +PACKAGES += "${PN}-sqlite3 ${PN}-mysql ${PN}-postgresql ${PN}-odbc ${PN}-oracle" + +FILES:${PN}-sqlite3 = "${libdir}/lib${BPN}_sqlite3.so.*" +FILES:${PN}-mysql = "${libdir}/lib${BPN}_mysql.so.*" +FILES:${PN}-postgresql = "${libdir}/lib${BPN}_postgresql.so.*" +FILES:${PN}-odbc = "${libdir}/lib${BPN}_odbc.so.*" +FILES:${PN}-oracle = "${libdir}/lib${BPN}_oracle.so.*" + +do_install:append() { + sed -i 's|${RECIPE_SYSROOT}${prefix}|${_IMPORT_PREFIX}|g' ${D}${libdir}/cmake/${BPN}-${PV}/SOCI*Targets.cmake +} -- cgit v1.2.3-54-g00ecf