aboutsummaryrefslogtreecommitdiffstats
path: root/databases
diff options
context:
space:
mode:
authormarino <marino@FreeBSD.org>2016-05-09 19:05:00 +0800
committermarino <marino@FreeBSD.org>2016-05-09 19:05:00 +0800
commitc39a195818ea0135a101f3662fd60904f5816516 (patch)
tree582e541b0e50a87e97cb591c90ac17e504722022 /databases
parentdcabae236c1532f3c68f264dfaca127f27ee6c4e (diff)
downloadfreebsd-ports-gnome-c39a195818ea0135a101f3662fd60904f5816516.tar.gz
freebsd-ports-gnome-c39a195818ea0135a101f3662fd60904f5816516.tar.zst
freebsd-ports-gnome-c39a195818ea0135a101f3662fd60904f5816516.zip
Add new port database/adabase
Thick database bindings for MySQL, PostgreSQL and SQLite written in Ada. This is the first release of AdaBase, an abstraction library that provides a consistent interface to multiple database servers. Currently only one driver for MySQL is provided, but additional ones for SQLite and PostgreSQL are planned for the near term. It's extensible, so support for others such as Firebird, Oracle and MSSQL would be easily possible. AdaBase offers unique features over similar frameworks. For starters, it's limited to database support rather than including many other unwanted components in a "kitchen sink" fashion, and unneeded drivers can be excluded from the library as desired. It's got a developer and commerce friend license (ICS), it comes with good documentation and working examples, and the bindings are thick enough where database server backends can be interchangeable. AdaBase may seem familiar to some users as it was partially inspired by PHP's PDO database framework and is a sequel of sorts to an earlier project by the same author, Pascal Data Objects. WWW: http://jrmarino.github.io/AdaBase/
Diffstat (limited to 'databases')
-rw-r--r--databases/Makefile1
-rw-r--r--databases/adabase/Makefile40
-rw-r--r--databases/adabase/distinfo2
-rw-r--r--databases/adabase/files/adabase.gpr7
-rw-r--r--databases/adabase/pkg-descr21
-rw-r--r--databases/adabase/pkg-plist73
6 files changed, 144 insertions, 0 deletions
diff --git a/databases/Makefile b/databases/Makefile
index da811262000c..c4522c4df6b8 100644
--- a/databases/Makefile
+++ b/databases/Makefile
@@ -9,6 +9,7 @@
SUBDIR += R-cran-RSQLite.extfuns
SUBDIR += R-cran-sqldf
SUBDIR += WWWdb
+ SUBDIR += adabase
SUBDIR += adminer
SUBDIR += adodb
SUBDIR += adodb5
diff --git a/databases/adabase/Makefile b/databases/adabase/Makefile
new file mode 100644
index 000000000000..464b46a62aaa
--- /dev/null
+++ b/databases/adabase/Makefile
@@ -0,0 +1,40 @@
+# Created by: John Marino <marino@FreeBSD.org>
+# $FreeBSD$
+
+PORTNAME= adabase
+PORTVERSION= 1.0
+DISTVERSIONPREFIX= v
+CATEGORIES= databases
+
+MAINTAINER= marino@FreeBSD.org
+COMMENT= Thick database bindings for Ada
+
+LICENSE= ISCL
+LICENSE_FILE= ${WRKSRC}/License.txt
+
+BUILD_DEPENDS= gprbuild:devel/gprbuild
+
+USES= ada
+USE_GITHUB= yes
+GH_ACCOUNT= jrmarino
+GH_PROJECT= AdaBase
+
+MAKE_ENV+= OS_VERSION=unix
+
+post-extract:
+ ${RM} ${WRKSRC}/src/drivers/adabase-driver-base-firebird.ad?
+
+do-build:
+ (cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} \
+ gprbuild -p -P adabase ${BUILD_ARGS})
+
+do-install:
+ ${MKDIR} ${STAGEDIR}${PREFIX}/include/adabase \
+ ${STAGEDIR}${PREFIX}/lib/adabase \
+ ${STAGEDIR}${PREFIX}/lib/gnat
+ ${INSTALL_DATA} ${WRKSRC}/lib/* ${STAGEDIR}${PREFIX}/lib/adabase
+ ${INSTALL_DATA} ${WRKSRC}/src/*/*.ad[bs] ${WRKSRC}/src/adabase.ads \
+ ${STAGEDIR}${PREFIX}/include/adabase
+ ${INSTALL_DATA} ${FILESDIR}/adabase.gpr ${STAGEDIR}${PREFIX}/lib/gnat
+
+.include <bsd.port.mk>
diff --git a/databases/adabase/distinfo b/databases/adabase/distinfo
new file mode 100644
index 000000000000..e450ba378f28
--- /dev/null
+++ b/databases/adabase/distinfo
@@ -0,0 +1,2 @@
+SHA256 (jrmarino-AdaBase-v1.0_GH0.tar.gz) = fb9bec4376a5df61670c543f8c49c5e1e335032ae46658f966f2b0277c89d338
+SIZE (jrmarino-AdaBase-v1.0_GH0.tar.gz) = 75278
diff --git a/databases/adabase/files/adabase.gpr b/databases/adabase/files/adabase.gpr
new file mode 100644
index 000000000000..a59f794ed57d
--- /dev/null
+++ b/databases/adabase/files/adabase.gpr
@@ -0,0 +1,7 @@
+library project AdaBase is
+ for Library_Name use "adabase";
+ for Library_Kind use "static";
+ for Source_Dirs use ("../../include/adabase");
+ for Library_Dir use "../../lib/adabase";
+ for Externally_Built use "true";
+end AdaBase;
diff --git a/databases/adabase/pkg-descr b/databases/adabase/pkg-descr
new file mode 100644
index 000000000000..2e1413403435
--- /dev/null
+++ b/databases/adabase/pkg-descr
@@ -0,0 +1,21 @@
+Thick database bindings for MySQL, PostgreSQL and SQLite written in Ada.
+
+This is the first release of AdaBase, an abstraction library that provides
+a consistent interface to multiple database servers. Currently only one
+driver for MySQL is provided, but additional ones for SQLite and
+PostgreSQL are planned for the near term. It's extensible, so support
+for others such as Firebird, Oracle and MSSQL would be easily possible.
+
+AdaBase offers unique features over similar frameworks. For starters,
+it's limited to database support rather than including many other unwanted
+components in a "kitchen sink" fashion, and unneeded drivers can be
+excluded from the library as desired. It's got a developer and commerce
+friend license (ICS), it comes with good documentation and working
+examples, and the bindings are thick enough where database server backends
+can be interchangeable.
+
+AdaBase may seem familiar to some users as it was partially inspired by
+PHP's PDO database framework and is a sequel of sorts to an earlier
+project by the same author, Pascal Data Objects.
+
+WWW: http://jrmarino.github.io/AdaBase/
diff --git a/databases/adabase/pkg-plist b/databases/adabase/pkg-plist
new file mode 100644
index 000000000000..8f6cdb630790
--- /dev/null
+++ b/databases/adabase/pkg-plist
@@ -0,0 +1,73 @@
+include/adabase/adabase-bindings-mysql.ads
+include/adabase/adabase-bindings.ads
+include/adabase/adabase-connection-base-mysql.adb
+include/adabase/adabase-connection-base-mysql.ads
+include/adabase/adabase-connection-base.adb
+include/adabase/adabase-connection-base.ads
+include/adabase/adabase-connection.ads
+include/adabase/adabase-driver-base-mysql.adb
+include/adabase/adabase-driver-base-mysql.ads
+include/adabase/adabase-driver-base.adb
+include/adabase/adabase-driver-base.ads
+include/adabase/adabase-driver.ads
+include/adabase/adabase-interfaces-connection.ads
+include/adabase/adabase-interfaces-driver.ads
+include/adabase/adabase-interfaces-logger.ads
+include/adabase/adabase-interfaces-statement.ads
+include/adabase/adabase-interfaces.ads
+include/adabase/adabase-logger-base-file.adb
+include/adabase/adabase-logger-base-file.ads
+include/adabase/adabase-logger-base-screen.adb
+include/adabase/adabase-logger-base-screen.ads
+include/adabase/adabase-logger-base.adb
+include/adabase/adabase-logger-base.ads
+include/adabase/adabase-logger-facility.adb
+include/adabase/adabase-logger-facility.ads
+include/adabase/adabase-logger.ads
+include/adabase/adabase-results-converters.adb
+include/adabase/adabase-results-converters.ads
+include/adabase/adabase-results-field.adb
+include/adabase/adabase-results-field.ads
+include/adabase/adabase-results-generic_converters.adb
+include/adabase/adabase-results-generic_converters.ads
+include/adabase/adabase-results-sets.adb
+include/adabase/adabase-results-sets.ads
+include/adabase/adabase-results.ads
+include/adabase/adabase-statement-base-mysql.adb
+include/adabase/adabase-statement-base-mysql.ads
+include/adabase/adabase-statement-base.adb
+include/adabase/adabase-statement-base.ads
+include/adabase/adabase-statement.ads
+include/adabase/adabase.ads
+include/adabase/commontext.adb
+include/adabase/commontext.ads
+lib/adabase/adabase-bindings-mysql.ali
+lib/adabase/adabase-bindings.ali
+lib/adabase/adabase-connection-base-mysql.ali
+lib/adabase/adabase-connection-base.ali
+lib/adabase/adabase-connection.ali
+lib/adabase/adabase-driver-base-mysql.ali
+lib/adabase/adabase-driver-base.ali
+lib/adabase/adabase-driver.ali
+lib/adabase/adabase-interfaces-connection.ali
+lib/adabase/adabase-interfaces-driver.ali
+lib/adabase/adabase-interfaces-logger.ali
+lib/adabase/adabase-interfaces-statement.ali
+lib/adabase/adabase-interfaces.ali
+lib/adabase/adabase-logger-base-file.ali
+lib/adabase/adabase-logger-base-screen.ali
+lib/adabase/adabase-logger-base.ali
+lib/adabase/adabase-logger-facility.ali
+lib/adabase/adabase-logger.ali
+lib/adabase/adabase-results-converters.ali
+lib/adabase/adabase-results-field.ali
+lib/adabase/adabase-results-generic_converters.ali
+lib/adabase/adabase-results-sets.ali
+lib/adabase/adabase-results.ali
+lib/adabase/adabase-statement-base-mysql.ali
+lib/adabase/adabase-statement-base.ali
+lib/adabase/adabase-statement.ali
+lib/adabase/adabase.ali
+lib/adabase/commontext.ali
+lib/adabase/libadabase.a
+lib/gnat/adabase.gpr