diff options
-rw-r--r-- | dev-db/ingres/ChangeLog | 10 | ||||
-rw-r--r-- | dev-db/ingres/files/10.0-Jamdefs.patch | 11 | ||||
-rw-r--r-- | dev-db/ingres/files/10.0-bldenv.patch | 22 | ||||
-rw-r--r-- | dev-db/ingres/files/10.0-mksecret.patch | 22 | ||||
-rw-r--r-- | dev-db/ingres/files/10.0-sharelib.patch | 14 | ||||
-rw-r--r-- | dev-db/ingres/ingres-10.0.0.108.ebuild | 221 | ||||
-rw-r--r-- | dev-db/ingres/metadata.xml | 1 |
7 files changed, 300 insertions, 1 deletions
diff --git a/dev-db/ingres/ChangeLog b/dev-db/ingres/ChangeLog index 8242d61bca71..e7e0c1649768 100644 --- a/dev-db/ingres/ChangeLog +++ b/dev-db/ingres/ChangeLog @@ -1,6 +1,14 @@ # ChangeLog for dev-db/ingres # Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-db/ingres/ChangeLog,v 1.1 2009/10/04 00:08:24 patrick Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-db/ingres/ChangeLog,v 1.2 2009/10/22 22:06:07 patrick Exp $ + +*ingres-10.0.0.108 (22 Oct 2009) + + 22 Oct 2009; Patrick Lauer <patrick@gentoo.org> +files/10.0-Jamdefs.patch, + +files/10.0-bldenv.patch, +files/10.0-mksecret.patch, + +files/10.0-sharelib.patch, +ingres-10.0.0.108.ebuild, metadata.xml: + Bump to 10.0, fixes bug #287626. Thanks to Alexander Thiem for the shiny + patches. *ingres-9.3.0.151 (04 Oct 2009) diff --git a/dev-db/ingres/files/10.0-Jamdefs.patch b/dev-db/ingres/files/10.0-Jamdefs.patch new file mode 100644 index 000000000000..29e56cf17798 --- /dev/null +++ b/dev-db/ingres/files/10.0-Jamdefs.patch @@ -0,0 +1,11 @@ +--- src/tools/port/jam/Jamdefs 2008-10-28 14:07:42.000000000 +0100 ++++ src/tools/port/jam/Jamdefs 2008-10-30 11:23:47.000000000 +0100 +@@ -2069,7 +2069,7 @@ + } + else + { +- XERCESCLIB = libxerces-c.$(SLSFX).$(XERCVERS).0 ; ++ XERCESCLIB ?= libxerces-c.$(SLSFX).$(XERCVERS).0 ; + } + } + else diff --git a/dev-db/ingres/files/10.0-bldenv.patch b/dev-db/ingres/files/10.0-bldenv.patch new file mode 100644 index 000000000000..044e1543d7e7 --- /dev/null +++ b/dev-db/ingres/files/10.0-bldenv.patch @@ -0,0 +1,22 @@ +--- src/tools/port/jam/bldenv 2009-10-13 09:15:23.000000000 +0200 ++++ src/tools/port/jam/bldenv 2009-10-13 09:16:37.000000000 +0200 +@@ -285,6 +285,19 @@ + gtk_need=false + deb=true + instcmd="apt-get install" ++ elif [ -f /etc/gentoo-release ] ; then ++ export OSVER=GENTOO ++ gtk_need=false ++ rpm_need=false ++ export XERCESCROOT=/usr/include/xercesc ++ if [ -f /usr/lib/libxerces-c.so ]; then ++ export XERCESLOC=/usr/lib ++ fi ++ XERCESCLIB=`readlink -n ${XERCESLOC}/libxerces-c.so` ++ if [ -z "$XERCESCLIB" ]; then ++ XERCESCLIB=libxerces-c.so ++ fi ++ export XERCESCLIB + elif [ -r /etc/redhat-release ] ; then + os=`cat /etc/redhat-release | cut -d' ' -f1` + if [ "$os" = "Fedora" ] ; then diff --git a/dev-db/ingres/files/10.0-mksecret.patch b/dev-db/ingres/files/10.0-mksecret.patch new file mode 100644 index 000000000000..839fc3273974 --- /dev/null +++ b/dev-db/ingres/files/10.0-mksecret.patch @@ -0,0 +1,22 @@ +--- src/tools/port/shell_unix/mksecret.sh 2009-10-13 10:59:58.000000000 +0200 ++++ src/tools/port/shell_unix/mksecret.sh 2009-10-13 11:00:23.000000000 +0200 +@@ -1679,19 +1679,10 @@ + [ -r /usr/include/sys/file.h ] && + echo "# define xCL_007_FILE_H_EXISTS" + +-if [ "$vers" = "int_lnx" ] || [ "$vers" = "ibm_lnx" ] || \ +- [ "$vers" = "axp_lnx" ] || [ "$vers" = "i64_lnx" ] || \ +- [ "$vers" = "a64_lnx" ] || [ "$vers" = "int_rpl" ] || \ +- [ "$vers" = "ppc_lnx" ] +-then +- grep fd_set /usr/include/linux/types.h > /dev/null && +- echo "# define xCL_014_FD_SET_TYPE_EXISTS" +-else + grep fd_set /usr/include/sys/types.h > /dev/null || \ + grep fd_set /usr/include/sys/select.h > /dev/null || \ + grep fd_set /usr/include/sys/time.h > /dev/null && + echo "# define xCL_014_FD_SET_TYPE_EXISTS" +-fi + + if [ "$vers" != "ds3_ulx" ] + then diff --git a/dev-db/ingres/files/10.0-sharelib.patch b/dev-db/ingres/files/10.0-sharelib.patch new file mode 100644 index 000000000000..a800aebfc2ca --- /dev/null +++ b/dev-db/ingres/files/10.0-sharelib.patch @@ -0,0 +1,14 @@ +--- src/front/st/specials_unix_vms/sharelib.ccpp 2009-10-13 09:24:32.000000000 +0200 ++++ src/front/st/specials_unix_vms/sharelib.ccpp 2009-10-13 09:25:34.000000000 +0200 +@@ -145,9 +145,8 @@ + LINK $XERCLIB$SLSFX.$XERCVERS + LINK $XERCLIB$SLSFX + # else +- EXECUTABLE libxerces-c.$SLSFX.$XERCVERS.0 +- LINK libxerces-c.$SLSFX.$XERCVERS +- LINK libxerces-c.$SLSFX ++ EXECUTABLE $XERCESCLIB ++ LINK $XERCESCLIB + # endif + # endif /* xerces */ + PERMISSION s:re,o:rwed,g:re,w:re diff --git a/dev-db/ingres/ingres-10.0.0.108.ebuild b/dev-db/ingres/ingres-10.0.0.108.ebuild new file mode 100644 index 000000000000..901a91513e58 --- /dev/null +++ b/dev-db/ingres/ingres-10.0.0.108.ebuild @@ -0,0 +1,221 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-db/ingres/ingres-10.0.0.108.ebuild,v 1.1 2009/10/22 22:06:07 patrick Exp $ + +EAPI="2" + +inherit eutils flag-o-matic versionator + +# amd64 doesn't work yet +KEYWORDS="~x86" +SLOT="0" + +# Several Ingres instances can be installed with different +# installation identifiers - default is II +# This is not the same as slotting because we have +# n installations of the same version which is not supported +# by portage (e.g. portage doesn't know which one to unmerge) +II_INSTALLATION=${II_INSTALLATION:-"II"} + +# Getting the version strings from the package name +VERSION=$(get_version_component_range 1-3) +SHORT_VERSION=$(get_version_component_range 1-2) +BUILD=$(get_version_component_range 4) + +DESCRIPTION="Ingres Relational Database Management System" +HOMEPAGE="http://www.ingres.com/" +SRC_DIR="ingres-${VERSION}-${BUILD}-gpl-src" +SRC_TGZ="${SRC_DIR}.tgz" +DOWNLOAD_URL="http://dev.gentooexperimental.org/~dreeevil/ingres/ingres-${VERSION}-${BUILD}-gpl-src.tgz" +SRC_URI="${DOWNLOAD_URL}/${SRC_TGZ}" +S="${WORKDIR}/${SRC_DIR}" +LICENSE="GPL-2" + +# nodbms means client installation +IUSE="client net das odbc demodb" + +RDEPEND="dev-libs/xerces-c + app-arch/pax" + +DEPEND="${RDEPEND} + app-crypt/mit-krb5 + dev-util/ftjam" + +PG_DIR="/var/lib/ingres" + +pkg_setup() { + if use client && use demodb; then + eerror "Cannot install demodb without the dbms" + die "Invalid USE flags" + fi + + if [ -d "${PG_DIR}/Ingres${II_INSTALLATION}" ]; then + einfo "Existing installation found in ${PG_DIR}/Ingres${II_INSTALLATION}." + einfo "This installation will be upgraded." + einfo "If that is not what you want press CTRL-C now!" + epause 5 + fi + + if ps ax | grep -qe "iigc[n|c|d] ${II_INSTALLATION}"; then + ewarn "" + ewarn "Running instance of Ingres ${II_INSTALLATION} found!" + ewarn "Ingres will be compiled and merged but not configured" + ewarn "when another copy of the same instance is running." + ewarn "You can do that afterwards with " + ewarn "USE=\"...\" emerge --config ingres" + epause 5 + fi + + enewgroup ingres + enewuser ingres -1 /bin/bash ${PG_DIR} ingres +} + +src_prepare() { + epatch "${FILESDIR}/${SHORT_VERSION}-bldenv.patch" + epatch "${FILESDIR}/${SHORT_VERSION}-sharelib.patch" + epatch "${FILESDIR}/${SHORT_VERSION}-Jamdefs.patch" + epatch "${FILESDIR}/${SHORT_VERSION}-mksecret.patch" + epatch "${FILESDIR}/sql.patch" +} + +src_compile() { + export ING_ROOT="${S}" + + local paxlocation=`which pax` + export PAXLOC=`dirname ${paxlocation}` + + source src/tools/port/jam/bldenv || die "Setting of environment failed" + + cd tools/port/jam + jam || die "Building of mkjams failed" + mkjams || die "Creation of jam files failed" + + cd "$ING_SRC" + + grep -vE "gtk|rpm|deb|packman|pixmap" front/st/Jamfile > front/st/_Jamfile + mv front/st/_Jamfile front/st/Jamfile + + einfo "Compiling Ingres..." + + jam -q || die "Building Ingres failed" + +} + +src_install() { + + einfo "Creating II_SYSTEM..." + + II_SYSTEM="${D}${PG_DIR}/Ingres${II_INSTALLATION}" + + II_LOC="${II_SYSTEM}/ingres" + + mkdir -p "${II_LOC}" + + DIRS="abf bin ckp data demo dmp files ice jnl lib log sig utility work vdba version.rel" + + for DIR in ${DIRS}; do + echo -n "${DIR} " + cp -rpLf "${S}/build/${DIR}" "${II_LOC}/" || die "Copying ${DIR} failed" + done + echo + chown -R ingres:ingres "${II_LOC}" + + cat - > ${II_SYSTEM}/.ing${II_INSTALLATION}bash << EOF +export II_SYSTEM=${PG_DIR}/Ingres${II_INSTALLATION} +export PATH=\$II_SYSTEM/ingres/bin:\$II_SYSTEM/ingres/utility:\$PATH +if [ "\$LD_LIBRARY_PATH" ] ; then + LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:/usr/local/lib:\$II_SYSTEM/ingres/lib +else + LD_LIBRARY_PATH=/lib:/usr/lib:/usr/local/lib:\$II_SYSTEM/ingres/lib +fi +export LD_LIBRARY_PATH +export TERM=vt100 +export TERM_INGRES=vt100fx +EOF + + newinitd "${FILESDIR}/ingres-initd" ingres${II_INSTALLATION} || die "Adding init.d script failed" + + einfo "done." +} + +pkg_config() { + + export II_SYSTEM="${PG_DIR}/Ingres${II_INSTALLATION}" + + ERRMSG="Installing Ingres failed + You may find information in ${II_SYSTEM}/ingres/files/install.log. + You can retry by executing USE=\"...\" emerge --config ingres" + + if ps ax | grep -qe "iigc[n|c|d] ${II_INSTALLATION}"; then + eerror "Running instance of Ingres ${II_INSTALLATION} found!" + eerror "Please stop that instance first, before upgrading." + die "${ERRMSG}" + fi + + einfo "Fixing file permissions..." + chmod u+s "${II_SYSTEM}/ingres/bin/verifydb" + chmod u+s "${II_SYSTEM}/ingres/bin/ingvalidpw" + chmod u+s "${II_SYSTEM}/ingres/bin/iimerge" + chmod u+s "${II_SYSTEM}/ingres/utility/csreport" + + einfo "Setting up Ingres (please wait - this will take a few minutes)" + + PARTS="tm" + + if ! use client; then + PARTS="${PARTS} dbms" + fi + for FLAG in net das odbc demodb; do + if use ${FLAG}; then + PARTS="${PARTS} ${FLAG}" + fi + done + + for PART in ${PARTS}; do + einfo "${PART}..." + if [ ${PART} == "demodb" ]; then + su ingres -c " + . ${II_SYSTEM}/.ing${II_INSTALLATION}bash + cd ${II_SYSTEM}/ingres/demo/data + ingstart > /dev/null + if createdb -n demodb > /dev/null; then + sql demodb < copy.in > /dev/null + fi" || die "${ERRMSG}" + else + su ingres -c " + . ${II_SYSTEM}/.ing${II_INSTALLATION}bash + export II_INSTALLATION=${II_INSTALLATION} + ${II_SYSTEM}/ingres/utility/iisu${PART} -batch" || die "${ERRMSG}" + fi + done + + einfo "Upgrading any existing databases" + + su ingres -c " + . ${II_SYSTEM}/.ing${II_INSTALLATION}bash + ingstart > /dev/null 2>&1 + upgradedb -all > /dev/null + ingstop > /dev/null" || die "${ERRMSG}" + + su ingres -c " + . ${II_SYSTEM}/.ing${II_INSTALLATION}bash + ingsetenv ING_ABFDIR ${II_SYSTEM}/ingres/abf" || die "${ERRMSG}" + + "${II_SYSTEM}/ingres/bin/mkvalidpw" > /dev/null || die "${ERRMSG}" + + einfo "Done." + +} + +pkg_postinst() { + + pkg_config + + elog "" + elog "Run '/etc/init.d/ingres${II_INSTALLATION} start' to start Ingres" + elog "" + elog "After that, as user ingres type" + elog " source ${PG_DIR}/Ingres${II_INSTALLATION}/.ing${II_INSTALLATION}bash" + elog "to run the Ingres commands such as sql or createdb." + +} diff --git a/dev-db/ingres/metadata.xml b/dev-db/ingres/metadata.xml index 636bdd153828..d4c770f37e9b 100644 --- a/dev-db/ingres/metadata.xml +++ b/dev-db/ingres/metadata.xml @@ -10,6 +10,7 @@ <flag name='net'>Enable net support</flag> <flag name='das'>Enable das support</flag> <flag name='nodbms'>Disable dbms component</flag> + <flag name='client'>Disable dbms component</flag> <flag name='demodb'>Install demo DB</flag> </use> </pkgmetadata> |