aboutsummaryrefslogtreecommitdiff
path: root/databases/postgresql80-server
diff options
context:
space:
mode:
authorJames FitzGibbon <jfitz@FreeBSD.org>1996-09-23 22:40:15 +0000
committerJames FitzGibbon <jfitz@FreeBSD.org>1996-09-23 22:40:15 +0000
commit05209f589d590baa306656c97ab8e67dba7d8411 (patch)
tree0868d98fb4f391b4a06d6479f0e8916505e3d360 /databases/postgresql80-server
parentd5e3fb8d0efed6d16e2c27655c252e9bf25ece4e (diff)
downloadports-05209f589d590baa306656c97ab8e67dba7d8411.tar.gz
ports-05209f589d590baa306656c97ab8e67dba7d8411.zip
Import of Postgres95, a next-generation DMBS research prototype.
Reviewed by: jfitz@FreeBSD.ORG Submitted by: Matthew Stein <matt@bdd.net>
Notes
Notes: svn path=/head/; revision=3849
Diffstat (limited to 'databases/postgresql80-server')
-rw-r--r--databases/postgresql80-server/Makefile61
-rw-r--r--databases/postgresql80-server/files/post-install-notes8
-rw-r--r--databases/postgresql80-server/pkg-comment1
-rw-r--r--databases/postgresql80-server/pkg-descr20
-rw-r--r--databases/postgresql80-server/pkg-plist85
-rw-r--r--databases/postgresql80-server/scripts/createuser50
6 files changed, 225 insertions, 0 deletions
diff --git a/databases/postgresql80-server/Makefile b/databases/postgresql80-server/Makefile
new file mode 100644
index 000000000000..03e477b31811
--- /dev/null
+++ b/databases/postgresql80-server/Makefile
@@ -0,0 +1,61 @@
+# New ports collection makefile for: postgres95
+# Version required: 1.06
+# Date created: Sep 14 1996
+# Whom: Matthew Stein <matt@bdd.net>
+#
+# $Id$
+
+PKGNAME= postgres95-1.06
+CATEGORIES+= databases
+MASTER_SITES= ftp://ftp.ki.net/pub/postgres95/oldstuff/ \
+ ftp://ftp.luga.or.at/pub/postgres95/ \
+ ftp://ftp.jaist.ac.jp/pub/dbms/postgres95/ \
+ ftp://cal011111.student.utwente.nl/pub/postgres95/
+
+DISTFILES= postgres95-1.05.tar.gz \
+ postgres95-1.05-1.06.tar.gz \
+ flex-2.5.2.tgz
+
+MAINTAINER= matt@bdd.net
+
+NO_PACKAGE= yes
+
+WRKSRC= ${WRKDIR}/postgres95/src/
+MAKE_ENV+= WRKSRC=${WRKSRC} WRKDIR=${WRKDIR}
+USE_GMAKE= yes
+
+pre-fetch:
+.if exists(/usr/lib/libc.so.3.0)
+ @ ${CAT} ${FILESDIR}/md5.libc30 ${FILESDIR}/md5.all > ${FILESDIR}/md5
+MASTER_SITES+= ftp://eddie.cis.uoguelph.ca/pub/flex/ \
+ ftp://ftp.teamos2.org/pub/flex/ \
+ ftp://ftp.bdd.net/pub/flex/
+.else
+ @ ${CAT} ${FILESDIR}/md5.libc22 ${FILESDIR}/md5.all > ${FILESDIR}/md5
+MASTER_SITES+= ftp://ftp.freebsd.org/pub/FreeBSD/packages-2.1.5/All/
+.endif
+
+pre-install:
+ @ ${MKDIR} -p ${PREFIX}/postgres95
+ @ ${SETENV} ${MAKE_ENV} /usr/bin/perl ${SCRIPTDIR}/createuser
+
+post-install:
+ @ chown -R postgres:postgres ${PREFIX}/postgres95
+ @ echo 'Initializing Postgres95 Databases - this may take a few minutes...'
+ @ su -l postgres -c ${PREFIX}/postgres95/bin/initdb
+ @ ${MKDIR} -p ${PREFIX}/etc/rc.d
+ @ if [ ! -f ${PREFIX}/etc/rc.d/postgres95.sh ]; then \
+ echo "Installing ${PREFIX}/etc/rc.d/postgres95.sh startup file."; \
+ echo "#!/bin/sh" > ${PREFIX}/etc/rc.d/postgres95.sh; \
+ echo "[ -x ${PREFIX}/postgres95/bin/postmaster ] && su -l postgres -c ${PREFIX}/postgres95/bin/postmaster & && echo -n ' postgres95'" >> ${PREFIX}/etc/rc.d/postgres95.sh; \
+ chmod 751 ${PREFIX}/etc/rc.d/postgres95.sh; \
+ fi
+ @ ${INSTALL_DATA} ${FILESDIR}/post-install-notes ${PREFIX}/postgres95
+.ifndef(BATCH)
+ @ more -e ${FILESDIR}/post-install-notes
+.endif
+
+pre-clean:
+ @ ${RM} -f ${FILESDIR}/md5
+
+.include <bsd.port.mk>
diff --git a/databases/postgresql80-server/files/post-install-notes b/databases/postgresql80-server/files/post-install-notes
new file mode 100644
index 000000000000..9974efd8df42
--- /dev/null
+++ b/databases/postgresql80-server/files/post-install-notes
@@ -0,0 +1,8 @@
+
+Now that postgres95 is installed, you should read the documentation and
+implementation guides. These can be found at
+
+http://www.ki.net/postgres95/docs/
+
+--
+mat.
diff --git a/databases/postgresql80-server/pkg-comment b/databases/postgresql80-server/pkg-comment
new file mode 100644
index 000000000000..55a303f3106a
--- /dev/null
+++ b/databases/postgresql80-server/pkg-comment
@@ -0,0 +1 @@
+a next-generation DBMS research prototype.
diff --git a/databases/postgresql80-server/pkg-descr b/databases/postgresql80-server/pkg-descr
new file mode 100644
index 000000000000..2743afb25835
--- /dev/null
+++ b/databases/postgresql80-server/pkg-descr
@@ -0,0 +1,20 @@
+Postgres95 is an enhancement of the POSTGRES database management system, a
+next-generation DBMS research prototype. While Postgres95 retains the
+powerful data model and rich data types of POSTGRES, it replaces the
+PostQuel query language with an extended subset of SQL. Postgres95 is free
+and the complete source is available.
+
+Postgres95 development is being performed by a team of Internet developers
+who all subscribe to the Postgres95 development mailing list. The current
+coordinator is Marc G. Fournier (scrappy@ki.net). This team is now
+responsible for all current and future development of Postgres95.
+
+The authors of Postgres95 1.01 were Andrew Yu and Jolly Chen. Many others
+have contributed to the porting, testing, debugging and enhancement of the
+code. The original Postgres code, from which Postgres95 is derived, was the
+effort of many graduate students, undergraduate students, and staff
+programmers working under the direction of Professor Michael Stonebraker at
+the University of California, Berkeley.
+
+More information and documentation can be found at the postgres95 website,
+at http://www.ki.net/postgres95/
diff --git a/databases/postgresql80-server/pkg-plist b/databases/postgresql80-server/pkg-plist
new file mode 100644
index 000000000000..668cc642df35
--- /dev/null
+++ b/databases/postgresql80-server/pkg-plist
@@ -0,0 +1,85 @@
+etc/rc.d/postgres95.sh
+postgres95/lib/libpq.a
+postgres95/bin/postgres
+postgres95/bin/postmaster
+postgres95/bin/pg_id
+postgres95/bin/pg_version
+postgres95/bin/psql
+postgres95/bin/pg_dump
+postgres95/bin/cleardbdir
+postgres95/bin/createdb
+postgres95/bin/createuser
+postgres95/bin/destroydb
+postgres95/bin/destroyuser
+postgres95/bin/initdb
+postgres95/data/files/global1.bki
+postgres95/data/files/global1.bki.source
+postgres95/data/files/local1_template1.bki
+postgres95/data/files/local1_template1.bki.source
+postgres95/data/pg_hba
+postgres95/data/base/template1/pg_proc
+postgres95/data/base/template1/pg_type
+postgres95/data/base/template1/pg_attribute
+postgres95/data/base/template1/pg_class
+postgres95/data/base/template1/pg_inherits
+postgres95/data/base/template1/pg_index
+postgres95/data/base/template1/pg_version
+postgres95/data/base/template1/pg_statistic
+postgres95/data/base/template1/pg_operator
+postgres95/data/base/template1/pg_opclass
+postgres95/data/base/template1/pg_am
+postgres95/data/base/template1/pg_amop
+postgres95/data/base/template1/pg_amproc
+postgres95/data/base/template1/pg_language
+postgres95/data/base/template1/pg_parg
+postgres95/data/base/template1/pg_aggregate
+postgres95/data/base/template1/pg_ipl
+postgres95/data/base/template1/pg_inheritproc
+postgres95/data/base/template1/pg_rewrite
+postgres95/data/base/template1/pg_listener
+postgres95/data/base/template1/pg_attnameind
+postgres95/data/base/template1/pg_attnumind
+postgres95/data/base/template1/pg_attrelidind
+postgres95/data/base/template1/pg_procidind
+postgres95/data/base/template1/pg_procnameind
+postgres95/data/base/template1/pg_procsrcind
+postgres95/data/base/template1/pg_typeidind
+postgres95/data/base/template1/pg_typenameind
+postgres95/data/base/template1/pg_classnameind
+postgres95/data/base/template1/pg_classoidind
+postgres95/data/base/template1/PG_VERSION
+postgres95/data/base/template1/pg_internal.init
+postgres95/data/pg_variable
+postgres95/data/pg_database
+postgres95/data/pg_demon
+postgres95/data/pg_magic
+postgres95/data/pg_defaults
+postgres95/data/pg_server
+postgres95/data/pg_user
+postgres95/data/pg_hosts
+postgres95/data/pg_group
+postgres95/data/pg_log
+postgres95/data/pg_time
+postgres95/data/PG_VERSION
+postgres95/include/fmgr.h
+postgres95/include/lib/dllist.h
+postgres95/include/libpq/pqcomm.h
+postgres95/include/libpq/libpq-fs.h
+postgres95/include/utils/geo-decls.h
+postgres95/include/libpq-fe.h
+postgres95/include/postgres.h
+postgres95/include/c.h
+postgres95/post-install-notes
+@dirrm postgres95/lib/
+@dirrm postgres95/include/utils/
+@dirrm postgres95/include/port/BSD44_derived/
+@dirrm postgres95/include/port/
+@dirrm postgres95/include/libpq/
+@dirrm postgres95/include/lib/
+@dirrm postgres95/include/
+@dirrm postgres95/data/files/
+@dirrm postgres95/data/base/template1/
+@dirrm postgres95/data/base/
+@dirrm postgres95/data/
+@dirrm postgres95/bin/
+@dirrm postgres95/
diff --git a/databases/postgresql80-server/scripts/createuser b/databases/postgresql80-server/scripts/createuser
new file mode 100644
index 000000000000..4c24a164fbd6
--- /dev/null
+++ b/databases/postgresql80-server/scripts/createuser
@@ -0,0 +1,50 @@
+#!/usr/bin/perl
+#
+
+eval '(exit $?0)' && eval 'exec /usr/bin/perl -S $0 ${1+"$@"}'
+& eval 'exec /usr/bin/perl -S $0 $argv:q'
+if 0;
+
+if( $> ) {
+ print "\nYou must be root to run this step!\n\n";
+ exit 1;
+}
+
+if( getpwnam( "postgres" ) ) {
+ ( $null, $null, $pgUID ) = getpwnam( "postgres" );
+} else {
+ $pgUID = 70;
+ while( getpwuid( $pgUID ) ) {
+ $pgUID++;
+ }
+}
+
+if( getgrnam( "postgres" ) ) {
+ ( $null, $null, $pgGID ) = getgrnam( "postgres" );
+} else {
+ $pgGID = 70;
+ while( getgrgid( $pgGID ) ) {
+ $pgGID++;
+ }
+ &append_file( "/etc/group", "postgres:*:$pgGID:" );
+}
+
+print "postgres user using uid $pgUID\n";
+print "postgres user using gid $pgGID\n";
+
+system( "/usr/bin/chpass -a \"postgres:*:$pgUID:$pgGID::0:0:Postgres95 pseudo-user:$ENV{'PREFIX'}/postgres95:/bin/sh\"" );
+
+sub append_file {
+ local($file,@list) = @_;
+ local($LOCK_EX) = 2;
+ local($LOCK_NB) = 4;
+ local($LOCK_UN) = 8;
+
+ open(F, ">> $file") || die "$file: $!\n";
+ while( ! flock( F, $LOCK_EX | $LOCK_NB ) ) {
+ exit 1;
+ }
+ print F join( "\n", @list) . "\n";
+ close F;
+ flock( F, $LOCK_UN );
+}