diff options
Diffstat (limited to 'dev-db/monetdb')
-rw-r--r-- | dev-db/monetdb/ChangeLog | 9 | ||||
-rw-r--r-- | dev-db/monetdb/files/digest-monetdb-4.10.2 | 9 | ||||
-rw-r--r-- | dev-db/monetdb/files/monetdb-4.10.2-gentoo-MapiClient.patch | 11 | ||||
-rw-r--r-- | dev-db/monetdb/files/monetdb-4.10.2-gentoo-conf.patch | 51 | ||||
-rw-r--r-- | dev-db/monetdb/monetdb-4.10.2.ebuild | 235 |
5 files changed, 314 insertions, 1 deletions
diff --git a/dev-db/monetdb/ChangeLog b/dev-db/monetdb/ChangeLog index 7d1b7cf4573b..086f0dbeab63 100644 --- a/dev-db/monetdb/ChangeLog +++ b/dev-db/monetdb/ChangeLog @@ -1,6 +1,13 @@ # 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.4 2006/01/25 19:27:31 grobian Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-db/monetdb/ChangeLog,v 1.5 2006/02/24 21:33:50 grobian Exp $ + +*monetdb-4.10.2 (24 Feb 2006) + + 24 Feb 2006; Fabian Groffen <grobian@gentoo.org> + +files/monetdb-4.10.2-gentoo-MapiClient.patch, + +files/monetdb-4.10.2-gentoo-conf.patch, +monetdb-4.10.2.ebuild: + New version upstream: bugfix release *monetdb-4.10.0 (25 Jan 2006) diff --git a/dev-db/monetdb/files/digest-monetdb-4.10.2 b/dev-db/monetdb/files/digest-monetdb-4.10.2 new file mode 100644 index 000000000000..79893d270cbe --- /dev/null +++ b/dev-db/monetdb/files/digest-monetdb-4.10.2 @@ -0,0 +1,9 @@ +MD5 855e17f84fac0fbe345131009f168fda MonetDB-4.10.2.tar.gz 6505286 +RMD160 84882bdac8987497e1357a74f7746964fac40e13 MonetDB-4.10.2.tar.gz 6505286 +SHA256 e66dfb81b9fd5c222c2ec846a21a966bbd8cd9e78321467319d4b68ccd97764b MonetDB-4.10.2.tar.gz 6505286 +MD5 cfc2605e25a965c0a7ffab70d7ade322 MonetDB-SQL-2.10.2.tar.gz 13129287 +RMD160 cb1dc3e600293c13ca49421fad58089608dcca86 MonetDB-SQL-2.10.2.tar.gz 13129287 +SHA256 08d5f1d973445060e5fe6041fb7fb33109e6880aa21383922c5b032b34c822ad MonetDB-SQL-2.10.2.tar.gz 13129287 +MD5 fc86e09a7067ea2ee97c8dc3b7395e23 MonetDB-XQuery-0.10.2.tar.gz 5039724 +RMD160 15825aebf9af51a18f886643899809580ed59f6c MonetDB-XQuery-0.10.2.tar.gz 5039724 +SHA256 fe5ba620a0fc5ecee0a1a468f2efaf3aa75c469dc2a65528b85ee0ff5e1360b2 MonetDB-XQuery-0.10.2.tar.gz 5039724 diff --git a/dev-db/monetdb/files/monetdb-4.10.2-gentoo-MapiClient.patch b/dev-db/monetdb/files/monetdb-4.10.2-gentoo-MapiClient.patch new file mode 100644 index 000000000000..7f1d2ed8cb2d --- /dev/null +++ b/dev-db/monetdb/files/monetdb-4.10.2-gentoo-MapiClient.patch @@ -0,0 +1,11 @@ +--- MonetDB-4.10.2/src/mapi/clients/C/MapiClient.c ++++ MonetDB-4.10.2/src/mapi/clients/C/MapiClient.c +@@ -1175,7 +1175,7 @@ + { + opt *set = NULL; + int setlen; +- char *language = "mil"; ++ char *language = "sql"; + int port = 0; + char *user = NULL; + char *passwd = NULL; diff --git a/dev-db/monetdb/files/monetdb-4.10.2-gentoo-conf.patch b/dev-db/monetdb/files/monetdb-4.10.2-gentoo-conf.patch new file mode 100644 index 000000000000..1c8fab677d23 --- /dev/null +++ b/dev-db/monetdb/files/monetdb-4.10.2-gentoo-conf.patch @@ -0,0 +1,51 @@ +--- MonetDB-4.10.2/conf/MonetDB.conf.in ++++ MonetDB-4.10.2/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. +@@ -72,11 +72,6 @@ + # + #gdk_version <ver> create BATs in old formats[out of date?] + +- +-# General client Section +-#======================= +-#host=localhost #the host the server runs on +- + # MonetDB Section + #================ + # Administrator user name +@@ -89,7 +84,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 + #==================================== +@@ -101,7 +96,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 + #====================== +@@ -118,9 +113,6 @@ + # default port to address an Mserver for an XQuery session + xquery_port=45789 + +-# default port to address the HTTP server for pathfinder +-pf_httpd_port=8080 +- + #output mode "dm" = pretty printed, + # "xml" = enforce XML with enclosing <XQueryResult> tags + xquery_output=dm diff --git a/dev-db/monetdb/monetdb-4.10.2.ebuild b/dev-db/monetdb/monetdb-4.10.2.ebuild new file mode 100644 index 000000000000..5c2104adf8a2 --- /dev/null +++ b/dev-db/monetdb/monetdb-4.10.2.ebuild @@ -0,0 +1,235 @@ +# 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.10.2.ebuild,v 1.1 2006/02/24 21:33:50 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 static" +PV_SQL=2.10.2 +PV_XQ=0.10.2 +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 ~ppc-macos ~x86" + +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 +} + +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="" + + if use debug; + then + myconf="${myconf} --enable-debug" + else + myconf="${myconf} --enable-optimize --disable-assert" + fi + + # 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" + + myconf="${myconf} $(use_with java)" + myconf="${myconf} $(use_with readline)" + myconf="${myconf} $(use_enable static)" + + 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}" + make DESTDIR="${D}" install || die "failed to install monetdb" + + cd "${WORKDIR}/sql-${PV_SQL}" + make DESTDIR="${D}" install || die "failed to install sql" + + cd "${WORKDIR}/pathfinder-${PV_XQ}" + make 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}-4.8.2-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}" + fowners monetdb:monetdb "/var/log/${PN}" + + # 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 pf_burk, upstream only compiles it, but doesn't use it + rm -f \ + "${D}/usr/lib/MonetDB/pf_burk.mil" \ + "${D}/usr/lib/MonetDB/lib_pf_burk.so.0.0.0" \ + "${D}/usr/lib/MonetDB/lib_pf_burk.so.0" \ + "${D}/usr/lib/MonetDB/lib_pf_burk.so" \ + "${D}/usr/lib/MonetDB/lib_pf_burk.la" \ + || die "removing incomplete Burkowski step support" + # 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_preinst() { + enewgroup monetdb + enewuser monetdb -1 /bin/bash "${DATA_DIR}" monetdb +} + +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 +} |