Skip to content

Commit

Permalink
dev-ada/gnatcoll-db: readding
Browse files Browse the repository at this point in the history
Package-Manager: Portage-3.0.28, Repoman-3.0.3
Signed-off-by: Alfredo Tupone <[email protected]>
  • Loading branch information
atupone committed Nov 17, 2021
1 parent d1e6d0c commit df532bb
Show file tree
Hide file tree
Showing 4 changed files with 159 additions and 0 deletions.
1 change: 1 addition & 0 deletions dev-ada/gnatcoll-db/Manifest
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
DIST gnatcoll-db-22.0.0.tar.gz 2648812 BLAKE2B 5c1be4fb9973aa99ecdc37ca0335981f61581c8d3548d70a0c5ed2c3da8279abf36a204e5f7747a2c3d14648ee33438f027230eba105964c8042aa73b4b57f1a SHA512 a3baf3e2bf09b0407f3ac1323824da54998b79008cb7c2bc3a054e275d7071fd21f364f38b98bda97da9e07ce186e9a1c3bf1bcc25a347e8dc6f64e3f4de65fe
11 changes: 11 additions & 0 deletions dev-ada/gnatcoll-db/files/gnatcoll-db-2018-gentoo.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
--- a/sqlite/gnatcoll_sqlite.gpr 2018-06-24 14:08:52.477478654 +0200
+++ b/sqlite/gnatcoll_sqlite.gpr 2018-06-24 14:08:59.149372684 +0200
@@ -42,7 +42,7 @@
for Library_Name use Name;
for Library_Version use "lib" & Name & Gnatcoll.So_Ext & "." & Version;

- for Languages use ("Ada", "C");
+ for Languages use ("Ada");

Thread_Lib := ();

118 changes: 118 additions & 0 deletions dev-ada/gnatcoll-db/gnatcoll-db-22.0.0.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=7

PYTHON_COMPAT=( python3_{7,8,9} )
ADA_COMPAT=( gnat_2019 gnat_202{0,1} )

inherit ada multiprocessing python-single-r1

DESCRIPTION="GNAT Component Collection"
HOMEPAGE="http://libre.adacore.com"
SRC_URI="https://github.com/AdaCore/${PN}/archive/v${PV}.tar.gz
-> ${P}.tar.gz"

LICENSE="GPL-3"
SLOT="0/${PV}"
KEYWORDS="~amd64 ~x86"
IUSE="db2ada gnatinspect postgres +shared sql sqlite static-libs static-pic xref"

RDEPEND="dev-ada/gnatcoll-core:${SLOT}[${ADA_USEDEP},shared?,static-libs?,static-pic?]
sqlite? ( dev-db/sqlite:3 )
postgres? ( dev-db/postgresql:* )
xref? (
dev-ada/gnatcoll-bindings:${SLOT}[${ADA_USEDEP},iconv,shared?,static-libs?,static-pic?]
)
${ADA_DEPS}
${PYTHON_DEPS}"
DEPEND="${RDEPEND}
dev-ada/gprbuild[${ADA_USEDEP}]"

REQUIRED_USE="gnatinspect? ( xref )
xref? ( sqlite )
sqlite? ( sql )
db2ada? ( sql )
postgres? ( sql )
${ADA_REQUIRED_USE}
${PYTHON_REQUIRED_USE}"

PATCHES=( "${FILESDIR}"/${PN}-2018-gentoo.patch )

pkg_setup() {
python-single-r1_pkg_setup
ada_setup
}

src_compile() {
build () {
GPR_PROJECT_PATH="${S}"/sql:"${S}"/sqlite:"${S}"/xref \
gprbuild -p -m -v -j$(makeopts_jobs) -XGNATCOLL_SQLITE=external \
-XGNATCOLL_VERSION=${PV} \
-XBUILD=PROD -XLIBRARY_TYPE=$2 -XXMLADA_BUILD=$2 -XGPR_BUILD=$2 \
-P $1/$3.gpr \
-cargs:Ada ${ADAFLAGS} -cargs:C ${CFLAGS} || die "gprbuild failed"
}
local lib
for kind in shared static-libs static-pic ; do
if use $kind; then
lib=${kind%-libs}
lib=${lib/shared/relocatable}
for dir in sql sqlite xref postgres ; do
if use $dir; then
build $dir $lib gnatcoll_${dir}
fi
done
fi
done
if use shared; then
lib=relocatable
elif use static-libs; then
lib=static
else
lib=static-pic
fi
if use gnatinspect; then
build gnatinspect ${lib} gnatinspect
fi
if use db2ada; then
build gnatcoll_db2ada ${lib} gnatcoll_db2ada
fi
}

src_install() {
build () {
GPR_PROJECT_PATH="${D}/usr/share/gpr" gprinstall -p -f \
-XBUILD=PROD -XGNATCOLL_VERSION=${PV} \
--prefix="${D}"/usr -XLIBRARY_TYPE=$2 -XXMLADA_BUILD=$2 \
-XGPR_BUILD=$2 --build-name=$2 --build-var=LIBRARY_TYPE \
-P $1/$3.gpr
}
local lib
for kind in shared static-libs static-pic ; do
if use $kind; then
lib=${kind%-libs}
lib=${lib/shared/relocatable}
for dir in sql sqlite xref postgres ; do
if use $dir; then
build $dir $lib gnatcoll_${dir}
fi
done
fi
done
if use shared; then
lib=relocatable
elif use static-libs; then
lib=static
else
lib=static-pic
fi
if use gnatinspect; then
build gnatinspect ${lib} gnatinspect
fi
if use db2ada; then
build gnatcoll_db2ada ${lib} gnatcoll_db2ada
fi
rm -r "${D}"/usr/share/gpr/manifests || die
einstalldocs
}
29 changes: 29 additions & 0 deletions dev-ada/gnatcoll-db/metadata.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>[email protected]</email>
</maintainer>
<use>
<flag name="db2ada">Build gnatcoll_db2ada</flag>
<flag name="gnatinspect">Build gnatinspect</flag>
<flag name="shared">Build shared library</flag>
<flag name="sql">Build sql library</flag>
<flag name="static-pic">Build shared library</flag>
<flag name="xref">Build xref library</flag>
</use>
<longdescription lang="en">
The reusable library known as the GNAT Component Collection (GNATColl)
is based on one main principle: general-purpose packages that are part
of the GNAT technology should also be available to GNAT user
application code. The compiler front end, the GNAT Programming Studio
(GPS) Interactive Development Environment, and the GNAT Tracker
web-based interface all served as sources for the components.

The GNATColl components complement the predefined Ada and GNAT
libraries and deal with a range of common programming issues including
string and text processing, memory management, and file handling.
Several of the components are especially useful in enterprise
applications.
</longdescription>
</pkgmetadata>

0 comments on commit df532bb

Please sign in to comment.