summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFabian Groffen <grobian@gentoo.org>2006-06-23 19:40:07 +0000
committerFabian Groffen <grobian@gentoo.org>2006-06-23 19:40:07 +0000
commit1e552817841d80612a3a5cc1af91a6f816bc985a (patch)
treee1a39e83ce1c68089e64a55b0d3e688187fa748d /dev-db/monetdb
parentdon't need gnuconfig_update (diff)
downloadgentoo-2-1e552817841d80612a3a5cc1af91a6f816bc985a.tar.gz
gentoo-2-1e552817841d80612a3a5cc1af91a6f816bc985a.tar.bz2
gentoo-2-1e552817841d80612a3a5cc1af91a6f816bc985a.zip
Upstream version bump to 4.12.0. Dropping ppc-macos keyword, as there are linker errors. Hope to resolve those soon.
(Portage version: 2.1-r1)
Diffstat (limited to 'dev-db/monetdb')
-rw-r--r--dev-db/monetdb/ChangeLog11
-rw-r--r--dev-db/monetdb/files/digest-monetdb-4.12.09
-rw-r--r--dev-db/monetdb/files/monetdb-4.12.0-gentoo-MapiClient.patch11
-rw-r--r--dev-db/monetdb/files/monetdb-4.12.0-gentoo-conf.patch40
-rw-r--r--dev-db/monetdb/files/monetdb-4.12.0-startup.mil25
-rw-r--r--dev-db/monetdb/monetdb-4.12.0.ebuild228
6 files changed, 323 insertions, 1 deletions
diff --git a/dev-db/monetdb/ChangeLog b/dev-db/monetdb/ChangeLog
index 831249939697..3db2014e2458 100644
--- a/dev-db/monetdb/ChangeLog
+++ b/dev-db/monetdb/ChangeLog
@@ -1,6 +1,15 @@
# ChangeLog for dev-db/monetdb
# Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-db/monetdb/ChangeLog,v 1.10 2006/05/22 20:41:38 grobian Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-db/monetdb/ChangeLog,v 1.11 2006/06/23 19:40:07 grobian Exp $
+
+*monetdb-4.12.0 (23 Jun 2006)
+
+ 23 Jun 2006; Fabian Groffen <grobian@gentoo.org>
+ +files/monetdb-4.12.0-gentoo-MapiClient.patch,
+ +files/monetdb-4.12.0-gentoo-conf.patch,
+ +files/monetdb-4.12.0-startup.mil, +monetdb-4.12.0.ebuild:
+ Upstream version bump to 4.12.0. Dropping ppc-macos keyword, as there are
+ linker errors. Hope to resolve those soon.
22 May 2006; Fabian Groffen <grobian@gentoo.org>
-files/monetdb-4.8.2-gentoo-MapiClient.patch,
diff --git a/dev-db/monetdb/files/digest-monetdb-4.12.0 b/dev-db/monetdb/files/digest-monetdb-4.12.0
new file mode 100644
index 000000000000..dabe39c94715
--- /dev/null
+++ b/dev-db/monetdb/files/digest-monetdb-4.12.0
@@ -0,0 +1,9 @@
+MD5 189eb93b08d21238dd50e71408dc0a69 MonetDB-4.12.0.tar.gz 6573810
+RMD160 80f3eec8db50a27b44596cd66ec251df158dfc6f MonetDB-4.12.0.tar.gz 6573810
+SHA256 7626b0b033f3a67ed249390fab9e7140cf3d704fd781d4c649291242af1e0903 MonetDB-4.12.0.tar.gz 6573810
+MD5 1a71813504da964122877db9885fe077 MonetDB-SQL-2.12.0.tar.gz 13232765
+RMD160 d83cd2dba8b99c9f9a18fe86c9e3ff7a01fd0cfd MonetDB-SQL-2.12.0.tar.gz 13232765
+SHA256 bd53b8a97f204969d8587a9d6ac14d713abd234ca0ad9a9a208275e3f844a0bc MonetDB-SQL-2.12.0.tar.gz 13232765
+MD5 bae37d704947155b24d3489074f68eee MonetDB-XQuery-0.12.0.tar.gz 5112297
+RMD160 bbaf492132592b56fd863c3a54d2c79152fe693a MonetDB-XQuery-0.12.0.tar.gz 5112297
+SHA256 40d799c9ef03411a743107f55fbcf4fa3860dc04a6810f6ed56d73d4f43dfa5d MonetDB-XQuery-0.12.0.tar.gz 5112297
diff --git a/dev-db/monetdb/files/monetdb-4.12.0-gentoo-MapiClient.patch b/dev-db/monetdb/files/monetdb-4.12.0-gentoo-MapiClient.patch
new file mode 100644
index 000000000000..758dc9c3bb1f
--- /dev/null
+++ b/dev-db/monetdb/files/monetdb-4.12.0-gentoo-MapiClient.patch
@@ -0,0 +1,11 @@
+--- MonetDB-4.12.0/src/mapi/clients/C/MapiClient.c
++++ MonetDB-4.12.0/src/mapi/clients/C/MapiClient.c
+@@ -35,7 +35,7 @@
+ #endif
+
+ static FILE *toConsole;
+-static char *language = "mil";
++static char *language = "sql";
+
+ char *command = NULL;
+
diff --git a/dev-db/monetdb/files/monetdb-4.12.0-gentoo-conf.patch b/dev-db/monetdb/files/monetdb-4.12.0-gentoo-conf.patch
new file mode 100644
index 000000000000..bb4aa026b467
--- /dev/null
+++ b/dev-db/monetdb/files/monetdb-4.12.0-gentoo-conf.patch
@@ -0,0 +1,40 @@
+--- MonetDB-4.12.0/conf/MonetDB.conf.in
++++ MonetDB-4.12.0/conf/MonetDB.conf.in
+@@ -20,7 +20,7 @@
+ # the name of the database to use below. Note that you can use
+ # multiple databases, but that you have to edit the database name
+ # and restart MonetDB.
+-gdk_dbname=demo
++gdk_dbname=default
+
+ # The options below deal with various aspects of memory usage behaviour.
+ # If you don't know what these values mean, you should leave them alone.
+@@ -70,10 +70,6 @@
+ # 4194304 = show result size estimations (for join,select)
+ # 8388608 = extended property checking: tells also about not set properties
+
+-# General client Section
+-#=======================
+-#host=localhost #the host the server runs on
+-
+ # MonetDB Section
+ #================
+ # Administrator user name
+@@ -86,7 +82,7 @@
+ # Where do the MonetDB modules reside? The second path is for windows dlls.
+ monet_mod_path=@Xlibdir@@DIRSEP@@PACKAGE@@PATHSEP@@Xlibdir@@DIRSEP@bin
+ # Start Mserver in daemon mode, or start with MIL interactive interface?
+-monet_daemon=no
++monet_daemon=yes
+
+ # Monet Application Interface Section
+ #====================================
+@@ -98,7 +94,7 @@
+ mapi_debug=0
+ # The number of concurrent clients can be set using mapi_clients
+ # (smaller than 1 is not very useful)
+-#mapi_clients=2
++mapi_clients=10
+
+ # SQL Interface Section
+ #======================
diff --git a/dev-db/monetdb/files/monetdb-4.12.0-startup.mil b/dev-db/monetdb/files/monetdb-4.12.0-startup.mil
new file mode 100644
index 000000000000..40a21283adbe
--- /dev/null
+++ b/dev-db/monetdb/files/monetdb-4.12.0-startup.mil
@@ -0,0 +1,25 @@
+# Gentoo MonetDB startup.mil script -- Fabian Groffen grobian@gentoo.org
+#
+# This script starts the SQL, XQuery and Mapi modules and activates a
+# listening socket for all of them on their default port. This results
+# in three ports of your system being occupied. By default the ports
+# are as follows:
+# SQL server: 45123
+# XQuery server: 45789
+# Mapi server: 50000
+
+# should connections be bound to localhost or 0.0.0.0? Set to true here
+# to allow foreign connections. Defaults to false (only local).
+var allow_foreign_connections := false;
+
+#
+# If were only looking for whatever you could change, you can stop
+# reading at this point and save your changes. Don't change anything
+# below if you don't know what you're doing.
+#
+
+module(sql_server);
+module(pathfinder);
+mapi_start(allow_foreign_connections);
+mapi_register(sql_frontend());
+mapi_register(xquery_frontend());
diff --git a/dev-db/monetdb/monetdb-4.12.0.ebuild b/dev-db/monetdb/monetdb-4.12.0.ebuild
new file mode 100644
index 000000000000..ce7653af22d9
--- /dev/null
+++ b/dev-db/monetdb/monetdb-4.12.0.ebuild
@@ -0,0 +1,228 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-db/monetdb/monetdb-4.12.0.ebuild,v 1.1 2006/06/23 19:40:07 grobian Exp $
+
+inherit flag-o-matic eutils
+
+DESCRIPTION="A main-memory relational database for SQL, XQuery and MIL"
+HOMEPAGE="http://monetdb.cwi.nl/"
+IUSE="java readline debug"
+PV_SQL=${PV/4./2.}
+PV_XQ=${PV/4./0.}
+PV_M=${PV}
+SRC_URI="mirror://sourceforge/monetdb/MonetDB-${PV_M}.tar.gz
+ mirror://sourceforge/monetdb/MonetDB-SQL-${PV_SQL}.tar.gz
+ mirror://sourceforge/monetdb/MonetDB-XQuery-${PV_XQ}.tar.gz"
+LICENSE="MonetDBPL-1.1 PathfinderPL-1.1"
+SLOT="0"
+KEYWORDS="~ppc ~x86"
+RESTRICT="test"
+
+DEPEND="virtual/libc
+ >=sys-devel/gcc-3.3
+ java? ( >=virtual/jdk-1.4 )
+ java? ( dev-java/ant-core )
+ readline? ( >=sys-libs/readline-4.1 )
+ dev-libs/libxml2
+ >=dev-libs/libpcre-5"
+
+DATA_DIR="/var/lib/MonetDB"
+
+pkg_setup() {
+ # see if we have a dbfarm, and whether there is a version of monetdb
+ # installed which is not a version that we can 'upgrade' to.
+ if [ -x "${DATA_DIR}/dbfarm" ] || [ -x "${DATA_DIR}/log" ];
+ then
+ if [ -x "/usr/bin/monetdb-config" ] && \
+ [ "`/usr/bin/monetdb-config --version`" != "${PV_M}" ];
+ then
+ while read line; do eerror "${line}"; done <<EOF
+MonetDB ${MY_PV} cannot upgrade your existing SQL databases. You must
+export your existing SQL databases to a file using "JdbcClient -D" and
+then restore them when you have upgraded completey using
+"JdbcClient -f". Dumping and restoring of MIL and XQuery databases
+unfortunately is not possible at the moment.
+
+You must remove your entire database directory to continue.
+(database directory = ${DATA_DIR}).
+See the following url for more information on dumping and
+restoring your database:
+http://monetdb.cwi.nl/TechDocs/FrontEnds/SQL/upgrade/
+EOF
+ die "Cannot upgrade automatically."
+ fi
+ fi
+
+ enewgroup monetdb
+ enewuser monetdb -1 /bin/bash "${DATA_DIR}" monetdb
+}
+
+src_unpack() {
+ unpack ${A} || die
+
+ epatch "${FILESDIR}/${PN}-${PV_M}"-gentoo-MapiClient.patch
+ epatch "${FILESDIR}/${PN}-${PV_M}"-gentoo-conf.patch
+}
+
+src_compile() {
+ # The tar has capitals, the ebuild doesn't...
+ cd "${WORKDIR}/MonetDB-${PV_M}"
+
+ local myconf=""
+
+ # Gentoo's amd64 doesn't allow 32-bits monetdb to compile, hence we switch
+ # to 64-bits Mserver here. Note that this also gives 64-bits OIDs.
+ use amd64 && myconf="${myconf} --enable-bits=64"
+
+ if use debug;
+ then
+ myconf="${myconf} --disable-optimize --enable-assert --enable-debug"
+ else
+ myconf="${myconf} --enable-optimize --disable-assert --disable-debug"
+ fi
+
+ myconf="${myconf} $(use_with java)"
+ myconf="${myconf} $(use_with readline)"
+
+ econf ${myconf} || die "econf monetdb failed"
+
+ # NOTE: the Makefiles have serious issues with parallel builds.
+ # Nothing is guaranteed to work but a single process build.
+ emake -j1 || die "emake monetdb failed"
+
+ # make the header files available to the sql and xquery compilation
+ mkdir include
+ cd include
+ ln -s ../src/common
+ ln -s ../src/gdk
+ ln -s ../src/monet
+ ln -s ../src/modules/plain
+ ln -s ../src/modules/contrib
+ ln -s ../src/mapi
+ ln -s ../src/mapi/clients/C
+ ln -s ../monetdb_config.h
+ ln -s ../sysdefs.h
+
+ cd "${WORKDIR}/MonetDB-${PV_M}"
+ mkdir -p lib/MonetDB
+ cd lib/MonetDB
+ find ../.. -name "lib_*" -exec ln -s {} ';' >& /dev/null
+ ln -s . .libs
+
+ cd "${WORKDIR}/MonetDB-${PV_M}/lib"
+ find .. -name "lib*" -exec ln -s {} ';' >& /dev/null
+ ln -s . .libs
+
+ # enable the fool-script
+ mkdir -p "${WORKDIR}/MonetDB-${PV_M}/bin"
+ MYWD=`echo ${WORKDIR} | sed -re 's/\//\\\\\//g'`
+ sed -r \
+ -e "s/\\$\_MONETDB\_INCLUDEDIR/${MYWD}\/MonetDB-${PV_M}\/include/g" \
+ -e "s/\\$\_MONETDB\_VERSION/${PV_M}/g" \
+ -e "s/\\$\_MONETDB\_LIBS/-L${MYWD}\/MonetDB-${PV_M}\/lib\/MonetDB -L${MYWD}\/MonetDB-${PV_M}\/lib/g" \
+ -e "s/\\$\_MONETDB\_MOD_PATH/${MYWD}\/MonetDB-${PV_M}\/include/g" \
+ -e "s/\\$\_MONETDB\_PREFIX/${MYWD}\/MonetDB-${PV_M}/g" \
+ -e "s/\\$\_MONETDB\_CLASSPATH/${MYWD}\/MonetDB-${PV_M}\/src\/mapi\/clients\/java\/mapi.jar/g" \
+ "${FILESDIR}/monetdb_config.sh" > \
+ "${WORKDIR}/MonetDB-${PV_M}/bin/monetdb-config"
+ chmod 744 "${WORKDIR}/MonetDB-${PV_M}/bin/monetdb-config"
+
+ # configure and make SQL
+ cd "${WORKDIR}/sql-${PV_SQL}"
+ econf MONETDB_CONFIG="${WORKDIR}/MonetDB-${PV_M}/bin/monetdb-config" \
+ "--with-monet=${WORKDIR}/MonetDB-${PV_M}" \
+ ${myconf} \
+ || die
+ emake -j1 || die "emake sql failed"
+
+ # configure and make XQuery
+ cd "${WORKDIR}/pathfinder-${PV_XQ}"
+ econf MONETDB_CONFIG="${WORKDIR}/MonetDB-${PV_M}/bin/monetdb-config" \
+ "--with-monet=${WORKDIR}/MonetDB-${PV_M} " \
+ ${myconf} || die
+ emake -j1 || die "emake xquery failed"
+}
+
+src_install() {
+ # The tar has capitals, the ebuild doesn't...
+ cd "${WORKDIR}/MonetDB-${PV_M}"
+ emake -j1 DESTDIR="${D}" install || die "failed to install monetdb"
+
+ cd "${WORKDIR}/sql-${PV_SQL}"
+ emake -j1 DESTDIR="${D}" install || die "failed to install sql"
+
+ cd "${WORKDIR}/pathfinder-${PV_XQ}"
+ emake -j1 DESTDIR="${D}" install || die "failed to install xquery"
+
+ exeinto /etc/init.d/
+ newexe "${FILESDIR}/${PN}.init-4.8.2" monetdb || die "init.d script"
+
+ insinto /etc/conf.d/
+ newins "${FILESDIR}/${PN}.conf-4.8.2" monetdb || die "conf.d file"
+
+ diropts -m750
+ dodir "${DATA_DIR}" "/var/log/${PN}"
+
+ exeinto "${DATA_DIR}"
+ newexe "${FILESDIR}/${PN}-start.sh" "${PN}-start.sh" || die "start script"
+ newexe "${FILESDIR}/${PN}-stop.sh" "${PN}-stop.sh" || die "stop script"
+
+ insinto "${DATA_DIR}"
+ newins "${FILESDIR}/${PN}-${PV_M}-startup.mil" "${PN}-startup.mil" \
+ || die "startup MIL script"
+
+ if use java;
+ then
+ exeinto /usr/bin
+ newexe "${FILESDIR}/${PN}.JdbcClient-4.10.0" "JdbcClient" \
+ || die "JdbcClient alias"
+ fi
+
+ # set right permissions
+ chown -R monetdb:monetdb "${D}/${DATA_DIR}" \
+ || die "setting ownership on ${DATA_DIR} failed"
+ fowners monetdb:monetdb "/var/log/${PN}" \
+ || die "setting ownership on /var/log/${PN} failed"
+
+ # remove testing framework and compiled tests
+ rm -f \
+ "${D}/usr/bin/Mapprove.py" \
+ "${D}/usr/bin/Mdiff" \
+ "${D}/usr/bin/Mfilter.py" \
+ "${D}/usr/bin/MkillUsers" \
+ "${D}/usr/bin/Mlog" \
+ "${D}/usr/bin/Mprofile.py" \
+ "${D}/usr/bin/Mtest.py" \
+ "${D}/usr/bin/Mtimeout" \
+ "${D}/usr/bin/prof.py" \
+ "${D}/usr/share/MonetDB/Mprofile-commands.lst" \
+ || die "removing testing tools"
+ rm -Rf \
+ "${D}/usr/lib/MonetDB/Tests" \
+ "${D}/usr/lib/sql/Tests" \
+ "${D}/usr/share/MonetDB/Tests" \
+ "${D}/usr/share/sql/Tests" \
+ || die "removing tests"
+ # remove windows cruft
+ find "${D}" -name "*.bat" | xargs rm -f || die "removing windows stuff"
+ # remove perl DBD on ppc-macos, since it gets installed in the wrong
+ # location and getting it right is not just a simple thing
+ use ppc-macos && rm -Rf "${D}/usr/Network" > /dev/null
+}
+
+src_test() {
+ # Upstream has tests that work in their "lab-setting". They prefer to wait
+ # using it when they provide a set of tests that is meant to be used
+ # outside their "labs". Those tests will also be supposed not to fail...
+ true
+}
+
+pkg_postinst() {
+ while read line; do einfo "${line}"; done <<EOF
+MonetDB has been installed on your system, using data directory
+${DATA_DIR}.
+To get started using SQL, XQuery or MIL see:
+
+http://monetdb.cwi.nl/GettingStarted/
+EOF
+}