commit: 45d66397fb075bb928e384dc227143dacc54145f
Author: Jan-Espen Oversand <sigsegv <AT> radiotube <DOT> org>
AuthorDate: Fri Dec 13 23:24:40 2024 +0000
Commit: Jan-Espen Oversand <sigsegv <AT> radiotube <DOT> org>
CommitDate: Fri Dec 13 23:24:40 2024 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=45d66397
dev-db/soci: add use flags for backends and cmake flags
Signed-off-by: Jan-Espen Oversand <sigsegv <AT> radiotube.org>
dev-db/soci/metadata.xml | 5 ++++
dev-db/soci/soci-4.0.3-r1.ebuild | 50 ++++++++++++++++++++++++++++++++++++++++
dev-db/soci/soci-4.0.3.ebuild | 28 ----------------------
3 files changed, 55 insertions(+), 28 deletions(-)
diff --git a/dev-db/soci/metadata.xml b/dev-db/soci/metadata.xml
index e64cd5769..69b1e1d6a 100644
--- a/dev-db/soci/metadata.xml
+++ b/dev-db/soci/metadata.xml
@@ -5,6 +5,11 @@
<email>[email protected]</email>
<description>Jan-Espen Oversand</description>
</maintainer>
+ <use>
+ <flag name="ubsan">Enable running with UB sanitizer</flag>
+ <flag name="shared">Enable dynamic linking with shared objects</flag>
+ <flag name="cxx11">Enable c++11 support</flag>
+ </use>
<upstream>
<remote-id type="sourceforge">soci</remote-id>
</upstream>
diff --git a/dev-db/soci/soci-4.0.3-r1.ebuild b/dev-db/soci/soci-4.0.3-r1.ebuild
new file mode 100644
index 000000000..3ca7b75a7
--- /dev/null
+++ b/dev-db/soci/soci-4.0.3-r1.ebuild
@@ -0,0 +1,50 @@
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="SOCI - The C++ Database Access Library"
+HOMEPAGE="https://sourceforge.net/projects/soci/"
+SRC_URI="https://sourceforge.net/projects/soci/files/soci/${P}/${P}.tar.gz/download
-> ${P}.tar.gz"
+
+LICENSE="Boost-1.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="odbc sqlite oracle postgres mysql +shared +static test ubsan lto cxx11"
+REQUIRED_USE="|| ( shared static )"
+RESTRICT="!test? ( test )"
+
+CMAKE_SKIP_TESTS=(
+ soci_odbc_test_mssql
+ soci_odbc_test_mssql_static
+ soci_odbc_test_mysql
+ soci_odbc_test_mysql_static
+ soci_odbc_test_postgresql
+ soci_odbc_test_postgresql_static
+ soci_postgresql_test
+ soci_postgresql_test_static
+ soci_mysql_test
+ soci_mysql_test_static
+)
+
+RDEPEND="
+ >=dev-libs/boost-1.85.0-r1
+ odbc? ( dev-db/unixODBC )
+ sqlite? ( dev-db/sqlite )
+ oracle? ( dev-db/oracle-instantclient[sdk] )
+ postgres? ( dev-db/postgresql )
+ mysql? ( dev-db/mysql )
+"
+DEPEND="${RDEPEND}"
+
+src_configure() {
+ local mycmakeargs=(
+ -DSOCI_SHARED="$(usex shared)"
+ -DSOCI_STATIC="$(usex static)"
+ -DSOCI_TESTS="$(usex test)"
+ -DSOCI_UBSAN="$(usex ubsan)"
+ -DSOCI_LTO="$(usex lto)"
+ -DSOCI_CXX11="$(usex cxx11)"
+ )
+ cmake_src_configure
+}
diff --git a/dev-db/soci/soci-4.0.3.ebuild b/dev-db/soci/soci-4.0.3.ebuild
deleted file mode 100644
index dfdd6ed83..000000000
--- a/dev-db/soci/soci-4.0.3.ebuild
+++ /dev/null
@@ -1,28 +0,0 @@
-
-EAPI=8
-
-inherit cmake
-
-DESCRIPTION="SOCI - The C++ Database Access Library"
-HOMEPAGE="https://sourceforge.net/projects/soci/"
-SRC_URI="https://sourceforge.net/projects/soci/files/soci/soci-4.0.3/${P}.tar.gz/download
-> ${P}.tar.gz"
-
-LICENSE="Boost-1.0"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE=""
-
-CMAKE_SKIP_TESTS=(
- soci_odbc_test_mssql
- soci_odbc_test_mssql_static
- soci_odbc_test_mysql
- soci_odbc_test_mysql_static
- soci_odbc_test_postgresql
- soci_odbc_test_postgresql_static
- soci_postgresql_test
- soci_postgresql_test_static
-)
-
-RDEPEND=">=dev-libs/boost-1.85.0-r1 >=dev-db/unixODBC-2.3.12
>=dev-db/sqlite-3.46.1"
-DEPEND="${RDEPEND}"
-