From 2b5566552c9e78344429cc619280765d7089e9f8 Mon Sep 17 00:00:00 2001 From: Masatomo Nakano Date: Thu, 6 Nov 2003 16:12:32 +0000 Subject: added recursive queries like Oracle's 'CONNECT BY' feature --- dev-db/postgresql/Manifest | 8 +- dev-db/postgresql/files/digest-postgresql-7.3.4-r1 | 2 + dev-db/postgresql/postgresql-7.3.4-r1.ebuild | 224 +++++++++++++++++++++ 3 files changed, 228 insertions(+), 6 deletions(-) create mode 100644 dev-db/postgresql/files/digest-postgresql-7.3.4-r1 create mode 100644 dev-db/postgresql/postgresql-7.3.4-r1.ebuild (limited to 'dev-db/postgresql') diff --git a/dev-db/postgresql/Manifest b/dev-db/postgresql/Manifest index 4a7dfe46ef18..1945f8fd4f67 100644 --- a/dev-db/postgresql/Manifest +++ b/dev-db/postgresql/Manifest @@ -1,12 +1,10 @@ MD5 618063e049e54a99ab026b9f2a19a1bc postgresql-7.3.ebuild 5535 MD5 1eb1f3eeb7599f68d1a37366691498b2 postgresql-7.3.3.ebuild 5952 MD5 e7affd7cd01f1b801109d2c122dec84e postgresql-7.3.2.ebuild 5944 -MD5 b3f017b26eeb0e4e22484cdfc079f3c5 ChangeLog 10170 +MD5 c484661e5526d1743f83c22114cd17a6 ChangeLog 10408 MD5 f8d3d207746da2a3cd14dcaab8daab76 metadata.xml 163 -MD5 b1b5605e424f51b6a270b9266488a927 postgresql-7.3.4-r1.ebuild 7588 +MD5 3bf22410d8ccac73ed1a326765bf880f postgresql-7.3.4-r1.ebuild 7592 MD5 9b63e936a9ba4003fdfad931238031da postgresql-7.3.4.ebuild 7244 -MD5 61762d49e9ab60e11b2f487939f97f88 postgresql-7.3.4-r2.ebuild 5201 -MD5 08f53035d8cc530bf83dfba5abf0ebb7 postgresql-7.4_beta4.ebuild.back 7232 MD5 bc6938c5fbc47a864dddb0c885f0a6dd files/pgsql 613 MD5 b0b26f2f466f14fcab3085e2ce726413 files/postgresql.init-7.3.4 1138 MD5 26e2c8e4978d59f58bf13e94bbdc446b files/postgres 851 @@ -19,7 +17,5 @@ MD5 2b0c84d2c26622573d4e2b7e0518fdad files/postgresql.conf 375 MD5 4e148f930c09bddec23d157f9c446020 files/postgresql.init 937 MD5 2b0c84d2c26622573d4e2b7e0518fdad files/postgresql 375 MD5 de93df43e2bc632828c53eac67680692 files/digest-postgresql-7.3.4-r1 135 -MD5 a653466f9b6a9324a5295d0987d45ce5 files/digest-postgresql-7.4_beta4 73 -MD5 b0b26f2f466f14fcab3085e2ce726413 files/postgresql.init-7.4_beta4 1138 MD5 c6a4bb3c0ed81f48ad1d6b675c32842e files/7.3/postgresql 678 MD5 c6a4bb3c0ed81f48ad1d6b675c32842e files/7.3.2/postgresql 678 diff --git a/dev-db/postgresql/files/digest-postgresql-7.3.4-r1 b/dev-db/postgresql/files/digest-postgresql-7.3.4-r1 new file mode 100644 index 000000000000..8207fcf9b42c --- /dev/null +++ b/dev-db/postgresql/files/digest-postgresql-7.3.4-r1 @@ -0,0 +1,2 @@ +MD5 82878d6d74c36384af3595d26ed38067 postgresql-7.3.4.tar.gz 11265028 +MD5 3dcc78b227bc1052c6a280d313908114 hier-Pg7.3-0.3.tar.gz 29696 diff --git a/dev-db/postgresql/postgresql-7.3.4-r1.ebuild b/dev-db/postgresql/postgresql-7.3.4-r1.ebuild new file mode 100644 index 000000000000..effdd473798a --- /dev/null +++ b/dev-db/postgresql/postgresql-7.3.4-r1.ebuild @@ -0,0 +1,224 @@ +# Copyright 1999-2003 Gentoo Technologies, Inc. +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-db/postgresql/postgresql-7.3.4-r1.ebuild,v 1.1 2003/11/06 16:12:25 nakano Exp $ + +DESCRIPTION="sophisticated Object-Relational DBMS." + +SRC_URI="mirror://mirror/v${PV}/${P}.tar.gz + pg-hier? ( http://gppl.terminal.ru/hier-Pg7.3-0.3.tar.gz )" +HOMEPAGE="http://www.postgresql.org/ +http://gppl.terminal.ru/index.eng.html" + +LICENSE="POSTGRESQL" +SLOT="0" +KEYWORDS="~x86 ~ppc ~sparc ~alpha ~amd64 ~hppa" +IUSE="ssl nls java python tcltk perl libg++ pam readline zlib pg-hier" + +filter-flags -ffast-math + +DEPEND="virtual/glibc + sys-devel/autoconf + app-admin/sudo + >=sys-libs/ncurses-5.2 + zlib? ( >=sys-libs/zlib-1.1.3 ) + readline? ( >=sys-libs/readline-4.1 ) + tcltk? ( >=dev-lang/tcl-8 >=dev-lang/tk-8.3.3-r1 ) + perl? ( >=dev-lang/perl-5.6.1-r2 ) + python? ( >=dev-lang/python-2.2 dev-python/egenix-mx-base ) + java? ( >=virtual/jdk-1.3* >=dev-java/ant-1.3 ) + ssl? ( >=dev-libs/openssl-0.9.6-r1 ) + nls? ( sys-devel/gettext )" +# java dep workaround for portage bug +# x86? ( java? ( =dev-java/sun-jdk-1.3* >=dev-java/ant-1.3 ) ) +RDEPEND="virtual/glibc + zlib? ( >=sys-libs/zlib-1.1.3 ) + tcltk? ( >=dev-lang/tcl-8 ) + perl? ( >=dev-lang/perl-5.6.1-r2 ) + python? ( >=dev-lang/python-2.2 ) + java? ( >=virtual/jdk-1.3* ) + ssl? ( >=dev-libs/openssl-0.9.6-r1 )" + +PG_DIR="/var/lib/postgresql" + +pkg_setup() { + if [ -f ${PG_DIR}/data/PG_VERSION ] ; then + PG_MAJOR=`cat ${PG_DIR}/data/PG_VERSION | cut -f1 -d.` + PG_MINOR=`cat ${PG_DIR}/data/PG_VERSION | cut -f2 -d.` + if [ ${PG_MAJOR} -lt 7 ] || [ ${PG_MAJOR} -eq 7 -a ${PG_MINOR} -lt 3 ] ; then + eerror "Postgres ${PV} cannot upgrade your existing databases, you must" + eerror "use pg_dump to export your existing databases to a file, and then" + eerror "pg_restore to import them when you have upgraded completely." + eerror "You must remove your entire database directory to continue." + eerror "(database directory = ${PG_DIR})." + exit 1 + fi + fi +} + +check_java_config() { + JDKHOME="`java-config --jdk-home`" + if [ -z "${JDKHOME}" ] || [ ! -d "${JDKHOME}" ]; then + NOJDKERROR="You need to use java-config to set your JVM to a JDK!" + eerror "${NOJDKERROR}" + die "${NOJDKERROR}" + fi +} + +src_unpack() { + unpack ${A} || die + if [ "`use pg-hier`" ]; then + cd ${WORKDIR} || die + mv readme.html README-hier-Pg7.3-0.3.html || die + cd ${S} || die + epatch ${WORKDIR}/hier-Pg7.3.1-0.3.diff || die + fi + cd ${S} || die +} + +src_compile() { + use java && check_java_config + + local myconf + use tcltk && myconf="--with-tcl" + use python && myconf="$myconf --with-python" + use perl && myconf="$myconf --with-perl" + use java && myconf="$myconf --with-java" + use ssl && myconf="$myconf --with-openssl" + use nls && myconf="$myconf --enable-nls" + use libg++ && myconf="$myconf --with-CXX" + use pam && myconf="$myconf --with-pam" + use readline || myconf="$myconf --without-readline" + use zlib || myconf="$myconf --without-zlib" + + # these are the only working CFLAGS I could get on ppc, so locking them + # down, anything more aggressive fails (i.e. -mcpu or -Ox) + # Gerk - Nov 26, 2002 + use ppc && CFLAGS="-pipe -fsigned-char" + + ./configure --prefix=/usr \ + --mandir=/usr/share/man \ + --host=${CHOST} \ + --docdir=/usr/share/doc/${P} \ + --libdir=/usr/lib \ + --enable-depend \ + --with-gnu-ld \ + --with-maxbackends=1024 \ + $myconf || die + + make || die + cd contrib + make || die +} + +src_install() { + addwrite "/usr/share/man/man3/Pg.3pm" + + if [ "`use perl`" ] + then + mv ${S}/src/pl/plperl/Makefile ${S}/src/pl/plperl/Makefile_orig + sed -e "s:(INST_DYNAMIC) /usr/lib:(INST_DYNAMIC) ${D}/usr/lib:" \ + ${S}/src/pl/plperl/Makefile_orig > ${S}/src/pl/plperl/Makefile + mv ${S}/src/pl/plperl/GNUmakefile ${S}/src/pl/plperl/GNUmakefile_orig + sed -e "s:\$(DESTDIR)\$(plperl_installdir):\$(plperl_installdir):" \ + ${S}/src/pl/plperl/GNUmakefile_orig > ${S}/src/pl/plperl/GNUmakefile + fi + + make DESTDIR=${D} LIBDIR=${D}/usr/lib install || die + make DESTDIR=${D} install-all-headers || die + cd ${S}/contrib + make DESTDIR=${D} LIBDIR=${D}/usr/lib install || die + cd ${S} + if [ "`use pg-hier`" ]; then + dodoc ${WORKDIR}/README-hier-Pg7.3-0.3.html + fi + dodoc COPYRIGHT HISTORY INSTALL README register.txt + dodoc contrib/adddepend/* + cd ${S}/doc + dodoc FAQ* KNOWN_BUGS MISSING_FEATURES README* + dodoc TODO bug.template + docinto sgml + dodoc src/sgml/*.{sgml,dsl} + docinto sgml/ref + dodoc src/sgml/ref/*.sgml + docinto sgml/graphics + dodoc src/graphics/* + rm -rf ${D}/usr/doc ${D}/mnt + exeinto /usr/bin + + if [ `use java` ]; then + dojar ${D}/usr/share/postgresql/java/postgresql.jar + rm ${D}/usr/share/postgresql/java/postgresql.jar + fi + + dodir /usr/include/postgresql/pgsql + cp ${D}/usr/include/*.h ${D}/usr/include/postgresql/pgsql + + exeinto /etc/init.d/ + newexe ${FILESDIR}/postgresql.init-${PV} postgresql || die + + insinto /etc/conf.d/ + newins ${FILESDIR}/postgresql.conf postgresql || die +} + +pkg_postinst() { + einfo "Execute the following command" + einfo "ebuild /var/db/pkg/dev-db/${PF}/${PF}.ebuild config" + einfo "to setup the initial database environment." + einfo "" + einfo "Make sure the postgres user in /etc/passwd has an account setup with /bin/bash as the shell, or /bin/true" +} + +pkg_config() { + einfo "Creating the data directory ..." + mkdir -p ${PG_DIR}/data + chown -Rf postgres:postgres ${PG_DIR} + chmod 700 ${PG_DIR}/data + + einfo "Initializing the database ..." + if [ -f ${PG_DIR}/data/PG_VERSION ] ; then + PG_MAJOR=`cat ${PG_DIR}/data/PG_VERSION | cut -f1 -d.` + PG_MINOR=`cat ${PG_DIR}/data/PG_VERSION | cut -f2 -d.` + if [ ${PG_MAJOR} -lt 7 ] || [ ${PG_MAJOR} -eq 7 -a ${PG_MINOR} -lt 3 ] ; then + eerror "Postgres ${PV} cannot upgrade your existing databases." + eerror "You must remove your entire database directory to continue." + eerror "(database directory = ${PG_DIR})." + exit 1 + else + einfon "A postgres data directory already exists from version "; cat ${PG_DIR}/data/PG_VERSION + einfo "Read the documentation to check how to upgrade to version ${PV}." + fi + else + # On hppa, postgresql need way more than the default sem index and shmmax + if [ "${ARCH}" = "hppa" ]; then + SEM_IDX_MIN=1024 + SHMMAX_MIN=100000000 + SEM_IDX=`sysctl kernel.sem | awk '{ print $6 }'` + if [ $SEM_IDX -lt ${SEM_IDX_MIN} ]; then + eerror "The last value of /proc/sys/kernel/sem is too low for postgresql to run" + eerror "Temporary setting this value to ${SEM_IDX_MIN} while creating the initial database." + cat /proc/sys/kernel/sem | sed -e "s/\t${SEM_IDX}/\t${SEM_IDX_MIN}/" > /proc/sys/kernel/sem + fi + fi + sudo -u postgres /usr/bin/initdb --pgdata ${PG_DIR}/data + + if [ "${ARCH}" = "hppa" ]; then + if [ ! `sysctl kernel.sem | awk '{ print $6 }'` -eq ${SEM_IDX} ] ; then + cat /proc/sys/kernel/sem | sed -e "s/\t${SEM_IDX_MIN}/\t${SEM_IDX}/" > /proc/sys/kernel/sem + ewarn "Restoring the sem idx value to the previous value" + ewarn "Please edit the last value of kernel.sem in /etc/sysctl.conf" + ewarn "and set it to at least ${SEM_IDX_MIN}" + fi + + if [ `sysctl kernel.shmmax | awk '{ print $3 }'` -lt ${SHMMAX_MIN} ]; then + eerror "The current value of /proc/sys/kernel/shmmax is too low" + eerror "for postgresql to run. Please edit /etc/sysctl.conf and set" + eerror "this value to at least ${SHMMAX_MIN}." + + fi + fi + + einfo "If you are upgrading from a pre-7.3 version of PostgreSQL, please read" + einfo "the README.adddepend file for information on how to properly migrate" + einfo "all serial columns, unique keys and foreign keys to this version." + fi +} -- cgit v1.2.3-65-gdbad