# Contributor: tobias # Contributor: Tobias Kieslich # ALARM: Kevin Mihelich # - export java library path # - remove firebird package, makedepends on libfbclient pkgname=(libgda libgda-{jdbc,mysql,postgres}) pkgver=5.2.10 pkgrel=5 pkgdesc="Database access library" url="https://www.gnome-db.org/" arch=(x86_64) license=(GPL) depends=(gtksourceview3 libxslt python libsecret graphviz goocanvas iso-codes libgee openssl) makedepends=(glade mariadb-libs postgresql-libs jdk11-openjdk intltool gobject-introspection gtk-doc vala itstool gnome-common git) _commit=85a2532df64698306fd3be324bb2052fb1b80fd3 # tags/LIBGDA_5_2_10^0 source=("git+https://gitlab.gnome.org/GNOME/libgda.git#commit=$_commit" 0001-Use-single-header-with-GtkSource.patch 0002-Use-goocanvas-3.0.patch) sha256sums=('SKIP' '104594a6034b041d87c1129b0b5544c8899393d66a6a0fb7a8b55f7fcb77e560' '81ab26fd12f7174e880815f6aa624c24821b1f9c7f386ae566293df7f041b25b') _apiver=5.0 pkgver() { cd $pkgname git describe --tags | sed 's/^LIBGDA_//;s/_/./g;s/-/+/g' } prepare() { mkdir providers [[ $CARCH == "aarch64" ]] && export LD_LIBRARY_PATH=/usr/lib/jvm/java-8-openjdk/jre/lib/aarch64/server:$LD_LIBRARY_PATH [[ $CARCH != "aarch64" ]] && export LD_LIBRARY_PATH=/usr/lib/jvm/java-8-openjdk/jre/lib/arm/server:$LD_LIBRARY_PATH cd $pkgname # Remove conflicting typedef git revert -n e1aea5ffb3fd9b49ad8c0dc01a915b47de3dc3d2 # Fix use of gtksourceview headers git apply -3 ../0001-Use-single-header-with-GtkSource.patch # Port to goocanvas-3.0 git apply -3 ../0002-Use-goocanvas-3.0.patch NOCONFIGURE=1 ./autogen.sh } build() { cd $pkgname CFLAGS+=" -Wno-deprecated-declarations" ./configure --prefix=/usr --sysconfdir=/etc --disable-static \ --with-bdb=/usr --with-bdb-libdir-name=lib \ --enable-json --enable-system-sqlite --enable-binreloc \ --enable-vala --enable-gtk-doc sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool make } package_libgda() { optdepends=('libgda-jdbc: provider for JDBC' 'libgda-mysql: provider for MySQL' 'libgda-postgres: provider for PostgreSQL') options+=(emptydirs) cd $pkgname make DESTDIR="$pkgdir" install mkdir -p providers local provider for provider in jdbc mysql postgres; do mv -f "$pkgdir"/usr/lib/libgda-$_apiver/providers/libgda-$provider[-.]*so \ "$pkgdir"/usr/lib/pkgconfig/libgda-$provider-$_apiver.pc \ "$pkgdir"/usr/share/libgda-$_apiver/${provider}_specs_*.xml \ "$srcdir/providers" done mv "$pkgdir"/usr/lib/libgda-$_apiver/providers/gdaprovider-${_apiver}.jar \ "$pkgdir"/usr/bin/gda-list-jdbc-providers-${_apiver} \ "$srcdir/providers" } _packageprovider() { install -d "$pkgdir"/usr/lib/{pkgconfig,libgda-$_apiver/providers} \ "$pkgdir"/usr/share/libgda-$_apiver mv providers/libgda-${1}[-.]*so "$pkgdir/usr/lib/libgda-$_apiver/providers" mv providers/libgda-${1}-$_apiver.pc "$pkgdir/usr/lib/pkgconfig" mv providers/${1}_specs_*.xml "$pkgdir/usr/share/libgda-$_apiver" } package_libgda-jdbc() { pkgdesc="libgda provider for JDBC" depends=(libgda java-environment) _packageprovider jdbc install -d "$pkgdir/usr/bin" mv providers/gda-list-jdbc-providers-$_apiver "$pkgdir/usr/bin" mv providers/gdaprovider-$_apiver.jar "$pkgdir/usr/lib/libgda-$_apiver/providers" } package_libgda-mysql() { pkgdesc="libgda provider for MySQL" depends=(libgda mariadb-libs) _packageprovider mysql } package_libgda-postgres() { pkgdesc="libgda provider for PostgreSQL" depends=(libgda postgresql-libs) _packageprovider postgres }