Files

230 lines
7.0 KiB
Tcl

# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
PortSystem 1.0
PortGroup gobject_introspection 1.0
PortGroup active_variants 1.1
name libgda5
set gname libgda
version 5.2.10
revision 7
categories databases gnome
license {GPL-2 LGPL}
maintainers {devans @dbevans} {mascguy @mascguy} openmaintainer
description GDA provides uniform access to different kinds of data sources.
long_description GNU Data Access (GDA) is an attempt to provide \
uniform access to different kinds of data sources \
(databases, information servers, mail spools, etc).
homepage https://www.gnome-db.org/
set branch [join [lrange [split ${version} .] 0 1] .]
master_sites gnome:sources/${gname}/${branch}/
distname ${gname}-${version}
use_xz yes
checksums rmd160 852ab1479f58585ffb2be19b1e5324443c3cfd08 \
sha256 6f6cdf7b8053f553b907e0c88a6064eb48cf2751852eb24323dcf027792334c8 \
size 12625140
set port_ver_major [lindex [split ${version} .] 0]
depends_build-append \
port:pkgconfig \
port:gettext \
port:gtk-doc \
port:intltool \
port:itstool \
port:yelp-tools \
port:gnome-common \
port:autoconf \
port:automake \
port:libtool
depends_lib-append \
port:desktop-file-utils \
port:gettext-runtime \
port:readline \
path:lib/pkgconfig/gtk+-3.0.pc:gtk3 \
port:goocanvas2 \
port:iso-codes \
path:lib/libcrypto.dylib:openssl \
port:libsecret \
path:lib/pkgconfig/libsoup-2.4.pc:libsoup \
port:libgcrypt \
port:libxml2 \
port:libxslt \
port:ncurses
depends_run-append \
port:adwaita-icon-theme
gobject_introspection yes
patchfiles-append \
patch-configure.ac.diff \
patch-bdb.diff \
patch-use-embedded-sqlite3.diff \
cs.po.patch
# reconfigure using upstream autogen.sh for intltool 0.51 compatibility
post-patch {
xinstall -m 755 ${filespath}/autogen.sh ${worksrcpath}
}
configure.cmd ./autogen.sh
# use embedded libsqlite3 rather than the system version
# to avoid dlopen 'Can't find file libsqlite3.so' errors
configure.args-append \
--enable-system-sqlite=no \
--enable-gtk-doc=yes \
--enable-warnings=max \
--disable-silent-rules \
--with-graphviz=no \
--with-gtksourceview=no \
--with-ldap=no \
--with-bdb=no \
--with-mdb=no \
--with-mysql=no \
--with-postgres=no \
--with-oracle=no \
--with-firebird=no \
--with-java=no \
--with-jni=no
variant vala description {Build vala bindings and extensions} {
depends_lib-append \
path:bin/vala:vala \
port:libgee
configure.args-append \
--enable-vala=yes
}
default_variants +vala
proc bdb_setup {db_ver} {
global prefix
depends_lib-append port:db${db_ver}
configure.cppflags-append "-I${prefix}/include/db${db_ver}"
configure.args-delete --with-bdb=no
configure.args-append --with-bdb=${prefix} \
--with-bdb-libdir-name=lib/db${db_ver}
}
proc mysql_setup {db_ver} {
global prefix
depends_lib-append port:mysql${db_ver}
configure.env-append \
MYSQL_CONFIG=${prefix}/lib/mysql${db_ver}/bin/mysql_config
configure.args-delete --with-mysql=no
configure.args-append --with-mysql=${prefix}/lib/mysql${db_ver}
configure.cppflags-append "-I${prefix}/include/mysql${db_ver}/mysql"
}
proc pgsql_setup {db_ver} {
global prefix
configure.cppflags-append "-I${prefix}/include/postgresql${db_ver}"
depends_lib-append port:postgresql${db_ver}
configure.args-delete --with-postgres=no
configure.args-append --with-postgres=${prefix}/lib/postgresql${db_ver}
}
variant mysql56 conflicts mysql57 description {support for MySQL 5.6.x} {
mysql_setup 56
}
variant mysql57 conflicts mysql56 description {support for MySQL 5.7.x} {
mysql_setup 57
}
if {![variant_isset mysql56] && \
![variant_isset mysql57] } {
# mysql57 only builds on 10.9 and later
if {${os.platform} eq "darwin" && ${os.major} < 13} {
default_variants +mysql56
} else {
default_variants +mysql57
}
}
variant postgresql12 conflicts postgresql13 postgresql14 postgresql15 postgresql16 \
description {support for PostgreSQL 12.x} {
pgsql_setup 12
}
variant postgresql13 conflicts postgresql12 postgresql14 postgresql15 postgresql16 \
description {support for PostgreSQL 13.x} {
pgsql_setup 13
}
variant postgresql14 conflicts postgresql12 postgresql13 postgresql15 postgresql16 \
description {support for PostgreSQL 14.x} {
pgsql_setup 14
}
variant postgresql15 conflicts postgresql12 postgresql13 postgresql14 postgresql16 \
description {support for PostgreSQL 15.x} {
pgsql_setup 15
}
variant postgresql16 conflicts postgresql12 postgresql13 postgresql14 postgresql15 \
description {support for PostgreSQL 16.x} {
pgsql_setup 16
}
if {![variant_isset postgresql12] && \
![variant_isset postgresql13] && \
![variant_isset postgresql14] && \
![variant_isset postgresql15] && \
![variant_isset postgresql16] } {
default_variants +postgresql16
}
variant db53 conflicts db60 db62 \
description {support for BerkeleyDB 5.3.x} {
bdb_setup 53
}
variant db60 conflicts db53 db62 \
description {support for BerkeleyDB 6.0.x} {
bdb_setup 60
}
variant db62 conflicts db53 db60 \
description {support for BerkeleyDB 6.2.x} {
bdb_setup 62
}
if {![variant_isset db53] && \
![variant_isset db60] && \
![variant_isset db62] } {
default_variants +db62
}
variant quartz {}
if {[variant_isset quartz]} {
require_active_variants gtk3 quartz
} else {
require_active_variants gtk3 x11
depends_run-append port:yelp
}
notes "
To view the Gda Browser Help manual, use
% yelp help:gda-browser
"
post-activate {
system "${prefix}/bin/update-desktop-database ${prefix}/share/applications"
system "${prefix}/bin/gtk-update-icon-cache -f -t ${prefix}/share/icons/hicolor"
}
livecheck.type gnome
livecheck.name ${gname}
livecheck.regex "LATEST-IS-(${port_ver_major}\\.\[02468\](?:\\.\\d+)*)"