aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorseanc <seanc@FreeBSD.org>2002-09-24 06:01:46 +0800
committerseanc <seanc@FreeBSD.org>2002-09-24 06:01:46 +0800
commitcc656dfc5a1ec228a6eac940cbf9a7a210f736bb (patch)
tree2051ba9b5e03be92e4144fda4a9cf457aeddea1e
parent34b76d74f805caf5e8123d68e979c3d9a59206cd (diff)
downloadfreebsd-ports-gnome-cc656dfc5a1ec228a6eac940cbf9a7a210f736bb.tar.gz
freebsd-ports-gnome-cc656dfc5a1ec228a6eac940cbf9a7a210f736bb.tar.zst
freebsd-ports-gnome-cc656dfc5a1ec228a6eac940cbf9a7a210f736bb.zip
Adding a development port for PostgreSQL. postgresql-devel will have its
distfiles periodically updated to track PostgreSQL between major releases. Port is repo copied from databases/postgresql7 and has been updated to 7.3b1. Approved by: portmgr && knu (mentor)
-rw-r--r--databases/postgresql-devel/Makefile164
-rw-r--r--databases/postgresql-devel/distinfo6
-rw-r--r--databases/postgresql-devel/files/dot.cshrc.in6
-rw-r--r--databases/postgresql-devel/files/dot.profile.in9
-rw-r--r--databases/postgresql-devel/files/patch-aj118
-rw-r--r--databases/postgresql-devel/files/patch-al23
-rw-r--r--databases/postgresql-devel/files/post-install-notes22
-rw-r--r--databases/postgresql-devel/pkg-comment2
-rw-r--r--databases/postgresql-devel/pkg-descr31
-rw-r--r--databases/postgresql-devel/pkg-install21
-rw-r--r--databases/postgresql-devel/pkg-message26
-rw-r--r--databases/postgresql-devel/pkg-message.client18
-rw-r--r--databases/postgresql-devel/pkg-plist49
-rw-r--r--databases/postgresql-devel/scripts/configure.postgresql173
14 files changed, 205 insertions, 463 deletions
diff --git a/databases/postgresql-devel/Makefile b/databases/postgresql-devel/Makefile
index e69e4843561b..3e49f02109fd 100644
--- a/databases/postgresql-devel/Makefile
+++ b/databases/postgresql-devel/Makefile
@@ -6,7 +6,8 @@
#
PORTNAME?= postgresql
-PORTVERSION?= 7.2.2
+PORTVERSION?= 7.3.b1
+PKGNAMESUFFIX= -devel
CATEGORIES?= databases
MASTER_SITES= ftp://ftp.postgresql.org/pub/%SUBDIR%/ \
ftp://ftp.se.postgresql.org/pub/database/relational/postgresql/%SUBDIR%/ \
@@ -18,89 +19,100 @@ MASTER_SITES= ftp://ftp.postgresql.org/pub/%SUBDIR%/ \
ftp://ftp.jaist.ac.jp/pub/dbms/PostgreSQL/%SUBDIR%/ \
ftp://ftp.us.postgresql.org/%SUBDIR%/
MASTER_SITE_SUBDIR= source/v${PORTVERSION}
-DISTFILES= postgresql-base-${PORTVERSION}${EXTRACT_SUFX} \
- postgresql-opt-${PORTVERSION}${EXTRACT_SUFX}
+DISTFILES= postgresql-base-7.3b1${EXTRACT_SUFX} \
+ postgresql-opt-7.3b1${EXTRACT_SUFX}
-MAINTAINER?= girgen@partitur.se
+MAINTAINER?= seanc@FreeBSD.org
-WRKSRC= ${WRKDIR}/postgresql-${PORTVERSION}
+WRKSRC= ${WRKDIR}/postgresql-7.3b1
DIST_SUBDIR= postgresql
-USE_SUBMAKE= yes
USE_GMAKE= YES
GNU_CONFIGURE= YES
.if defined(POSTGRESQL_SUBPORT)
## the POSTGRESQL_SUBPORTS use this port's distinfo
-MD5_FILE= ${.CURDIR}/../postgresql7/distinfo
+MD5_FILE= ${.CURDIR}/../postgresql-devel/distinfo
.else
## The rest of this file is for normal base installation
INSTALLS_SHLIB= YES
-CONFIGURE_ARGS= --enable-locale --enable-syslog --with-CXX \
- --docdir=${PREFIX}/share/doc --with-libdir=${LOCALBASE}/lib \
+CONFIGURE_ARGS= --docdir=${PREFIX}/share/doc --with-libdir=${LOCALBASE}/lib \
--with-includes=${LOCALBASE}/include
.if !defined(WITHOUT_GNUGETOPT)
-LDFLAGS+= -L${LOCALBASE}/lib -lgnugetopt
-CONFIGURE_ENV+= LDFLAGS="${LDFLAGS}"
LIB_DEPENDS= gnugetopt:${PORTSDIR}/devel/libgnugetopt
.endif
# if you want localized messages, make -DWITH_GETTEXT
# WARNING: this seems to require relinking binaries depending on
# libpq.so, including for example mod_php and tcl.
-.if defined(WITH_GETTEXT)
-CONFIGURE_ARGS+=--enable-nls
-CONFIGURE_ENV+= "LIBS=-lintl"
-LDFLAGS+= -L${LOCALBASE}/lib -lintl
-LIB_DEPENDS+= intl.4:${PORTSDIR}/devel/gettext
+.if defined(WITHOUT_GETTEXT)
+CONFIGURE_ARGS+=--disable-nls
PLIST_SUB+= GETTEXT=""
.else
+CONFIGURE_ENV+= "LDFLAGS=-L${LOCALBASE}/lib"
+LDFLAGS+= -L${LOCALBASE}/lib
+CONFIGURE_ARGS+= --enable-nls
+LIB_DEPENDS+= intl.4:${PORTSDIR}/devel/gettext
PLIST_SUB+= GETTEXT="@comment "
.endif
+.if defined(WITH_OPTIMIZED_CFLAGS)
+CFLAGS+=-O3
+.endif
+
+.if defined(WITH_DEBUG) && defined(WITH_STRIPBIN)
+ @${ECHO} "WITH_DEBUG and WITH_STRIPBIN are mutually exclusive tunables."
+ @${ECHO} "Please choose one or the other."
+ @exit ${FALSE}
+.endif
+
+.if defined(WITH_DEBUG)
+CONFIGURE_ARGS+= --enable-debug
+.endif
+
+.if defined(WITH_STRIPBIN)
+INSTALL_TARGET= install-strip
+.endif
+
.if !defined(WITHOUT_SSL)
USE_OPENSSL= yes
CONFIGURE_ARGS+= "--with-openssl=${OPENSSLBASE}"
.endif
-MAN1= createdb.1 createlang.1 createuser.1 dropdb.1 droplang.1 \
- dropuser.1 ecpg.1 initdb.1 initlocation.1 ipcclean.1 pg_config.1 \
- pg_ctl.1 pg_dump.1 pg_dumpall.1 pg_passwd.1 pg_restore.1 \
- pgaccess.1 pgtclsh.1 pgtksh.1 postgres.1 postmaster.1 psql.1 \
- vacuumdb.1
-MAN7= abort.7 alter_group.7 alter_table.7 alter_user.7 analyze.7 \
- begin.7 checkpoint.7 close.7 cluster.7 comment.7 commit.7 copy.7 \
- create_aggregate.7 create_constraint_trigger.7 \
- create_database.7 create_function.7 create_group.7 \
- create_index.7 create_language.7 create_operator.7 \
- create_rule.7 create_sequence.7 create_table.7 \
- create_table_as.7 create_trigger.7 create_type.7 \
- create_user.7 create_view.7 declare.7 delete.7 \
- drop_aggregate.7 drop_database.7 drop_function.7 \
- drop_group.7 drop_index.7 drop_language.7 \
- drop_operator.7 drop_rule.7 drop_sequence.7 \
- drop_table.7 drop_trigger.7 drop_type.7 drop_user.7 \
- drop_view.7 end.7 explain.7 fetch.7 grant.7 insert.7 \
- listen.7 load.7 lock.7 move.7 notify.7 reindex.7 \
- reset.7 revoke.7 rollback.7 select.7 select_into.7 \
- set.7 set_constraints.7 set_transaction.7 show.7 \
- set_session_authorization.7 \
- truncate.7 unlisten.7 update.7 vacuum.7
-
-SCRIPTS_ENV= WRKDIRPREFIX="${WRKDIRPREFIX}" \
- WRKDIR="${WRKDIR}" \
- FILESDIR="${FILESDIR}" \
- TOUCH="${TOUCH}" \
- MKDIR="${MKDIR}" \
- DISTNAME="${DISTNAME}"
-
-# We must .include here because we need the Makefile.inc @ pre-install
-# to determine the correct plist.
-.if exists(${WRKDIRPREFIX}${.CURDIR}/Makefile.inc)
-.include "${WRKDIRPREFIX}${.CURDIR}/Makefile.inc"
+.if defined(WITH_MIT_KRB5) && defined(WITH_HEIMDAL_KRB5)
+ @${ECHO} "WITH_MIT_KRB5 and WITH_HEIMDAL_KRB5 are mutually exclusive."
+ @${ECHO} "Please choose one or the other."
+ @exit 1
+.endif
+
+.if defined(WITH_MIT_KRB5)
+KRB5CONF= ${LOCALBASE}/bin/krb5-config
+.if !exists(${KRB5CONFIG})
+ @${ECHO} "Unable to find krb5-config in your local base, please verify that"
+ @${ECHO} "security/krb5 is installed or undefine the WITH_MIT_KRB5 tunable."
+ @exit 1
+.endif
+WITH_KRB5= yes
+.endif
+
+.if defined(WITH_HEIMDAL_KRB5)
+KRB5CONF= /usr/bin/krb5-config
+.if !exists(${KRB5CONFIG})
+ @${ECHO} "Unable to find krb5-config in the base system. Undefine"
+ @${ECHO} "WITH_HEIMDAL_KRB5 or add MAKE_KERBEROS5=yes to /etc/make.conf"
+ @${ECHO} "and remake world (or undefine the WITH_HEIMDAL_KRB5 tunable)."
+ @exit 1
+.endif
+LIB_DEPENDS+= krb5.3:${PORTSDIR}/security/krb5
+WITH_KRB5= yes
+.endif
+
+.if defined(WITH_KRB5)
+CONFIGURE_ARGS+= --with-krb5="`${KRB5CONF} --prefix krb5`"
+LDFLAGS+= `${KRB5CONF} --libs krb5`
.endif
.if defined(WITHOUT_SERVER)
@@ -110,15 +122,36 @@ PLIST_SUB+= SERVER="@comment "
PLIST_SUB+= SERVER=""
.endif
-.if defined(WITHOUT_MULTIBYTE)
-PLIST_SUB+= MULTIBYTE="@comment "
-.else
-PLIST_SUB+= MULTIBYTE=""
-CONFIGURE_ARGS+=--enable-multibyte=${MULTIBYTE_ENCODING}
-.endif
-
pre-everything::
- @ ${SETENV} ${SCRIPTS_ENV} ${SH} ${SCRIPTDIR}/configure.postgresql
+ @${ECHO} ""
+ @${ECHO} "CAUTION!!!!!"
+ @${ECHO} ""
+ @${ECHO} " This is a development port! You may have to re-initdb between"
+ @${ECHO} " upgrades as the system catalogs may change between snapshots."
+ @${ECHO} " Running this version of the port implies a large degree of"
+ @${ECHO} " familiarity with the PostgreSQL development cycle and process."
+ @${ECHO} " You should _always_ backup your data using pg_dump(all) before"
+ @${ECHO} " every upgrade. If you have not backed up your data yet, exit"
+ @${ECHO} " this installation and backup your data now!!!!"
+ @${ECHO} ""
+ @${ECHO} ""
+ @${ECHO} "${PORTNAME} has several tunables that used to configure PostgreSQL:"
+ @${ECHO} ""
+ @${ECHO} " WITHOUT_GNUGETOPT=yes Skips building with GNU getopt"
+ @${ECHO} " WITHOUT_GETTEXT=yes Skips building with support for"
+ @${ECHO} " internationalized error messages"
+ @${ECHO} " WITH_DEBUG=yes Builds with debugging symbols"
+ @${ECHO} " WITH_STRIPBIN=yes Installs stripped binaries"
+ @${ECHO} " WITHOUT_SSL=yes Builds without OpenSSL support"
+ @${ECHO} " WITHOUT_SERVER=yes Installs the headers and libraries for"
+ @${ECHO} " PostgreSQL clients"
+ @${ECHO} " WITH_MIT_KRB5=yes Builds with MIT's kerberos support"
+ @${ECHO} " WITH_HEIMDAL_KRB5=yes Builds with Heimdal's kerberos support"
+ @${ECHO} " WITH_OPTIMIZED_CFLAGS=yes Builds with compiler optimizations (-O3)"
+ @${ECHO} ""
+.if !defined(BATCH)
+ @sleep 3
+.endif
pre-install:
.if !defined(WITHOUT_SERVER)
@@ -126,16 +159,13 @@ pre-install:
${SH} ${PKGDIR}/pkg-install ${PORTNAME} PRE-INSTALL
.endif
-post-build:
- @ cd ${WRKSRC} ; ${SETENV} ${MAKE_ENV} ${GMAKE} -C src/interfaces/odbc odbc-drop.sql
-
post-install:
@ ${MKDIR} ${PREFIX}/share/postgresql ;\
${CAT} ${FILESDIR}/post-install-notes ${PKGMESSAGE} |\
${SED} "s|/usr/local|${PREFIX}|g" |\
tee ${PREFIX}/share/postgresql/post-install-notes
.if !defined(DEBUG_FLAGS)
-.for file in ecpg pg_dump pg_id pg_passwd pg_restore psql
+.for file in ecpg pg_dump pg_id pg_restore psql
@ strip ${PREFIX}/bin/${file}
.endfor
.endif
@@ -159,15 +189,13 @@ post-install:
${INSTALL_DATA} ${PREFIX}/share/postgresql/post-install-notes ~pgsql/. ;\
${CHOWN} -R pgsql:pgsql ~pgsql/. ;\
${INSTALL_DATA} ${FILESDIR}/502.pgsql \
- ${WRKSRC}/src/interfaces/odbc/odbc.sql \
- ${WRKSRC}/src/interfaces/odbc/odbc-drop.sql \
${PREFIX}/share/postgresql
.else
do-install:
@ cd ${WRKSRC}; \
- ${GMAKE} -C src/bin install ;\
- ${GMAKE} -C src/include install ;\
- ${GMAKE} -C src/interfaces install
+ ${GMAKE} -C src/bin ${INSTALL_TARGET} ;\
+ ${GMAKE} -C src/include ${INSTALL_TARGET} ;\
+ ${GMAKE} -C src/interfaces ${INSTALL_TARGET}
.endif
post-clean:
diff --git a/databases/postgresql-devel/distinfo b/databases/postgresql-devel/distinfo
index 99c49f5e2f7c..9fe3fb4187a4 100644
--- a/databases/postgresql-devel/distinfo
+++ b/databases/postgresql-devel/distinfo
@@ -1,3 +1,3 @@
-MD5 (postgresql/postgresql-base-7.2.2.tar.gz) = 669ccb907c8dbd901487391055fe52a5
-MD5 (postgresql/postgresql-opt-7.2.2.tar.gz) = 302e5d0da833530359b55ebb5ee7dc57
-MD5 (postgresql/postgresql-docs-7.2.2.tar.gz) = 1fdb72d0e980aedfefb1b629b02d0d8e
+MD5 (postgresql/postgresql-base-7.3b1.tar.gz) = 4dcdb1af4555a513bf31108cf1acb7aa
+MD5 (postgresql/postgresql-opt-7.3b1.tar.gz) = 62013f6856acd9f8ca219e83f12b778d
+MD5 (postgresql/postgresql-docs-7.3b1.tar.gz) = 7e51c9815c48c84d11647943757de212
diff --git a/databases/postgresql-devel/files/dot.cshrc.in b/databases/postgresql-devel/files/dot.cshrc.in
index 724212c70b23..f8e190c1613e 100644
--- a/databases/postgresql-devel/files/dot.cshrc.in
+++ b/databases/postgresql-devel/files/dot.cshrc.in
@@ -1,13 +1,7 @@
set path = ( %%PREFIX%%/bin $path )
-setenv PGLIB %%PREFIX%%/lib
-
# note: PGDATA can be overridden by the -D startup option
setenv PGDATA $HOME/data
#You might want to set some locale stuff here
-#setenv PGDATESTYLE ISO
#setenv LC_ALL sv_SE.ISO_8859-1
-
-# if you want to make regression tests use this TZ
-#setenv TZ PST8PDT
diff --git a/databases/postgresql-devel/files/dot.profile.in b/databases/postgresql-devel/files/dot.profile.in
index 96344d533921..b4b638f64eb4 100644
--- a/databases/postgresql-devel/files/dot.profile.in
+++ b/databases/postgresql-devel/files/dot.profile.in
@@ -1,18 +1,11 @@
# both new and old layout's paths, but new path first...
PATH=%%PREFIX%%/bin:${PATH}
-PGLIB=%%PREFIX%%/lib
-
# note: PGDATA can be overridden by the -D startup option
PGDATA=${HOME}/data
-export PATH PGLIB PGDATA
+export PATH PGDATA
#You might want to set some locale stuff here
-#PGDATESTYLE=ISO
#LC_ALL=sv_SE.ISO_8859-1
#export PGDATESTYLE LC_ALL
-
-# if you want to make regression tests use this TZ
-#TZ=PST8PDT
-#export TZ
diff --git a/databases/postgresql-devel/files/patch-aj b/databases/postgresql-devel/files/patch-aj
deleted file mode 100644
index 94c0d6d79991..000000000000
--- a/databases/postgresql-devel/files/patch-aj
+++ /dev/null
@@ -1,118 +0,0 @@
---- src/bin/pg_passwd/pg_passwd.c.orig Sat Mar 24 01:54:55 2001
-+++ src/bin/pg_passwd/pg_passwd.c Wed Apr 18 04:54:14 2001
-@@ -7,6 +7,12 @@
- #include <errno.h>
- #include <time.h>
- #include <ctype.h>
-+
-+#if defined(__FreeBSD__)
-+#include <pwd.h> /* defines _PASSWORD_LEN, max # of characters in a password */
-+#include <sys/time.h> /* gettimeofday for password salt */
-+#endif
-+
- #define issaltchar(c) (isalnum((unsigned char) (c)) || (c) == '.' || (c) == '/')
-
- #ifdef HAVE_TERMIOS_H
-@@ -23,18 +29,31 @@
- * We assume that the output of crypt(3) is always 13 characters,
- * and that at most 8 characters can usefully be sent to it.
- *
-+ * For FreeBSD, take these values from /usr/include/pwd.h
- * Postgres usernames are assumed to be less than NAMEDATALEN chars long.
- */
-+#if defined(__FreeBSD__)
-+#define CLEAR_PASSWD_LEN _PASSWORD_LEN
-+#define CRYPTED_PASSWD_LEN _PASSWORD_LEN /* max length, not containing NULL */
-+#define SALT_LEN 10
-+#else
- #define CLEAR_PASSWD_LEN 8 /* not including null */
- #define CRYPTED_PASSWD_LEN 13 /* not including null */
-+#define SALT_LEN 3
-+#endif
-+
-+static unsigned char itoa64[] = /* 0 ... 63 => ascii - 64 */
-+ "./0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
-+
-
- const char *progname;
-
- static void usage(void);
-+static void to64(char *s, long v, int n);
- static void read_pwd_file(char *filename);
- static void write_pwd_file(char *filename, char *bkname);
- static void encrypt_pwd(char key[CLEAR_PASSWD_LEN + 1],
-- char salt[3],
-+ char salt[SALT_LEN],
- char passwd[CRYPTED_PASSWD_LEN + 1]);
- static void prompt_for_username(char *username);
- static void prompt_for_password(char *prompt, char *password);
-@@ -47,6 +66,15 @@
- printf("Report bugs to <pgsql-bugs@postgresql.org>.\n");
- }
-
-+static void
-+to64(char *s, long v, int n)
-+{
-+ while (--n >= 0) {
-+ *s++ = itoa64[v&0x3f];
-+ v >>= 6;
-+ }
-+}
-+
- typedef struct
- {
- char *uname;
-@@ -154,7 +182,7 @@
- if (q != NULL)
- *(q++) = '\0';
-
-- if (strlen(p) != CRYPTED_PASSWD_LEN && strcmp(p, "+") != 0)
-+ if (strlen(p) > CRYPTED_PASSWD_LEN && strcmp(p, "+") != 0)
- {
- fprintf(stderr, "%s:%d: warning: invalid password length\n",
- filename, npwds + 1);
-@@ -221,15 +249,25 @@
-
- static void
- encrypt_pwd(char key[CLEAR_PASSWD_LEN + 1],
-- char salt[3],
-+ char salt[SALT_LEN],
- char passwd[CRYPTED_PASSWD_LEN + 1])
- {
-+#if !defined(__FreeBSD__)
- int n;
--
-+#endif
- /* select a salt, if not already given */
- if (salt[0] == '\0')
- {
-+#if defined(__FreeBSD__)
-+ struct timeval tv;
-+ srandomdev();
-+ gettimeofday(&tv,0);
-+ to64(&salt[0], random(), 3);
-+ to64(&salt[3], tv.tv_usec, 3);
-+ to64(&salt[6], tv.tv_sec, 2);
-+ salt[8] = '\0';
- srand(time(NULL));
-+#else
- do
- {
- n = rand() % 256;
-@@ -241,6 +279,7 @@
- } while (!issaltchar(n));
- salt[1] = n;
- salt[2] = '\0';
-+#endif
- }
-
- /* get encrypted password */
-@@ -335,7 +374,7 @@
- char *filename;
- char bkname[MAXPGPATH];
- char username[NAMEDATALEN];
-- char salt[3];
-+ char salt[SALT_LEN];
- char key[CLEAR_PASSWD_LEN + 1],
- key2[CLEAR_PASSWD_LEN + 1];
- char e_passwd[CRYPTED_PASSWD_LEN + 1];
diff --git a/databases/postgresql-devel/files/patch-al b/databases/postgresql-devel/files/patch-al
new file mode 100644
index 000000000000..8eeb1185872e
--- /dev/null
+++ b/databases/postgresql-devel/files/patch-al
@@ -0,0 +1,23 @@
+--- src/bin/pg_config/Makefile.orig Fri Mar 29 09:32:55 2002
++++ src/bin/pg_config/Makefile Mon Sep 23 10:45:24 2002
+@@ -7,13 +7,13 @@
+ all: pg_config
+
+ pg_config: pg_config.sh $(top_builddir)/src/Makefile.global Makefile
+- sed -e 's,@bindir@,$(bindir),g' \
+- -e 's,@includedir@,$(includedir),g' \
+- -e 's,@includedir_server@,$(includedir_server),g' \
+- -e 's,@libdir@,$(libdir),g' \
+- -e 's,@pkglibdir@,$(pkglibdir),g' \
+- -e "s,@configure@,$(configure_args),g" \
+- -e 's,@version@,$(VERSION),g' \
++ sed -e 's|@bindir@|$(bindir)|g' \
++ -e 's|@includedir@|$(includedir)|g' \
++ -e 's|@includedir_server@|$(includedir_server)|g' \
++ -e 's|@libdir@|$(libdir)|g' \
++ -e 's|@pkglibdir@|$(pkglibdir)|g' \
++ -e "s|@configure@|$(configure_args)|g" \
++ -e 's|@version@|$(VERSION)|g' \
+ $< >$@
+ chmod a+x $@
+
diff --git a/databases/postgresql-devel/files/post-install-notes b/databases/postgresql-devel/files/post-install-notes
index cdf343002074..557614dd1842 100644
--- a/databases/postgresql-devel/files/post-install-notes
+++ b/databases/postgresql-devel/files/post-install-notes
@@ -3,29 +3,20 @@ The PostgreSQL port has a collection of "side orders":
postgresql-doc
For all of the html documentation
-p5-Pg
- A perl5 API for client access to PostgreSQL databases.
-
postgresql-tcltk
If you want tcl/tk client support. You get a neat GUI, pgaccess, as
a bonus!
-postgresql-jdbc
- For Java JDBC support.
-
postgresql-odbc
For client access from unix applications using ODBC as access
- method. Not needed to access unix PostgreSQL servers from Win32
- using ODBC. See below.
+ method.
-ruby-postgres, py-PyGreSQL
- For client access to PostgreSQL databases using the ruby & python
- languages.
+ruby-postgres, py-PyGreSQL, p5-Pg, p5-DBD-Pg, postgresql-jdbc
+ For client access to PostgreSQL databases using the languages: ruby,
+ python, perl, perl DBI, and jdbc.
postgresql-plperl, postgresql-pltcl & postgresql-plruby
- For using perl5, tcl & ruby as procedural languages.
-
-etc etc...
+ For using perl5, tcl, and ruby as procedural languages.
Note that many files have moved around compared to previous versions
of PostgreSQL. For example, plpgsql.so and all other language modules
@@ -52,6 +43,3 @@ postgresql.conf also needed, of course):
options SEMUME=40
options SEMMNU=120
-If you plan to access your PostgreSQL server using ODBC, please
-consider running the SQL script /usr/local/share/postgresql/odbc.sql
-to get the functions required for ODBC compliance.
diff --git a/databases/postgresql-devel/pkg-comment b/databases/postgresql-devel/pkg-comment
index 2f1197a9821f..158b64981b30 100644
--- a/databases/postgresql-devel/pkg-comment
+++ b/databases/postgresql-devel/pkg-comment
@@ -1 +1 @@
-The most advanced open-source database available anywhere
+The most advanced open-source database available anywhere.
diff --git a/databases/postgresql-devel/pkg-descr b/databases/postgresql-devel/pkg-descr
index f8f8a9e0d422..b8cc9ef12de1 100644
--- a/databases/postgresql-devel/pkg-descr
+++ b/databases/postgresql-devel/pkg-descr
@@ -1,23 +1,18 @@
PostgreSQL is a sophisticated Object-Relational DBMS, supporting
-almost all SQL constructs, including subselects, transactions, and
-user-defined types and functions. It is the most advanced open-source
-database available anywhere. Commercial Support is also available.
+almost all SQL constructs, including sub-selects, transactions,
+schemas, and user-defined types and functions. It is the most advanced
+open-source database available anywhere. PostgreSQL is developed
+under the BSD license and has many commercial support offerings.
-The original Postgres code 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. In
-1995, Andrew Yu and Jolly Chen took on the task of converting the DBMS query
-language to SQL and created a new database system which came to known as
-Postgres95. Many others contributed to the porting, testing, debugging and
-enhancement of the Postgres95 code. As the code improved, and 1995 faded into
-memory, PostgreSQL was born.
+The postgresql-devel is intended for developer use and contains the
+latest features in the PostgreSQL tree. This version is not intended
+for production use. System catalogs may change requiring a reinitdb
+and full dump/restore of your database. Use of the -devel port
+implies a fair degree of knowledge of the PostgreSQL development cycle
+and that the administrator is tracking changes made to the PostgreSQL
+tree.
-PostgreSQL development is presently being performed by a team of Internet
-developers who are now responsible for all current and future development. The
-development team coordinator is Marc G. Fournier (scrappy@PostgreSQL.ORG).
-Support is available from the PostgreSQL developer/user community through the
-support mailing list (questions@PostgreSQL.ORG).
-
-PostgreSQL is free and the complete source is available.
+This port's source tarballs are taken directly from CVS so code may
+contain bugs. Use with extreme discretion.
WWW: http://www.postgresql.org/
diff --git a/databases/postgresql-devel/pkg-install b/databases/postgresql-devel/pkg-install
index ffcd42a5796c..8a78a8271240 100644
--- a/databases/postgresql-devel/pkg-install
+++ b/databases/postgresql-devel/pkg-install
@@ -9,17 +9,18 @@ DB_DIR=${PKG_PREFIX}/pgsql
case $2 in
PRE-INSTALL)
echo "
-=========== BACKUP YOUR DATA! =============
-As always, backup your data before
-upgrading. If the upgrade leads to a higher
-minor revision (e.g. 7.1.x -> 7.2), a dump
-and restore of all databases is
-required. This is *NOT* done by the port!
-
-Press ctrl-C *now* if you need to pg_dump.
-===========================================
+======================== BACKUP YOUR DATA! ===========================
+
+As always, backup your data before upgrading! This is a development
+port and may change the data format of on disk data as well as the
+system catalogs. It is always advised that you completely dump the
+database and re-initdb between upgrades. This is **NOT** done by the
+port!
+
+Press ctrl-C *now* if you need to pg_dump or pg_dumpall.
+======================================================================
"
- sleep 3
+ sleep 5
USER=pgsql
GROUP=${USER}
UID=70
diff --git a/databases/postgresql-devel/pkg-message b/databases/postgresql-devel/pkg-message
index 5138a7841bee..f3a38abc077a 100644
--- a/databases/postgresql-devel/pkg-message
+++ b/databases/postgresql-devel/pkg-message
@@ -2,27 +2,23 @@
* IMPORTANT UPGRADE NOTICE * IMPORTANT UPGRADE NOTICE *
-The PostgreSQL port now obeys hier(7) by default, which means that it
-installs into:
+If you have not backed up your data from the previous version, revert
+to using an older copy of this port and dump your data before
+proceeding. Upgrading without performing a dump will likely result in
+instability, data loss, interoperability problems, and performance
+issues. It is recommended that you re-initdb between upgrades. If
+you have made a backup, ignore this warning.
-/usr/local/bin
-/usr/local/lib
-/usr/local/include (NOTE! Changed again in 7.2, since PostgreSQL
- handles standard install nowadays)
+Please remember to keep PostgreSQL client installations in sync with
+the server.
-You *must* move away your old installation from users' and
-ldconfig(8)'s PATHs.
+You might want to add the following tunable to /etc/make.conf
-The pgsql user's home dir is /usr/local/pgsql by default, but can be
-changed with for example chpass(1). Datadir defaults to ~pgsql/data,
-but can be changed by modifying the ~pgsql/.profile script.
+POSTGRESQL_PORT=databases/postgresql-devel
======================================================================
-To initialize the database, you should run initdb as the "pgsql" user
-(if you want to use your locale for collation, edit ~pgsql/.profile
-and set the locale to your preference first).
-
+To initialize the database, you should run initdb as the "pgsql" user.
Example:
su -l pgsql -c initdb
diff --git a/databases/postgresql-devel/pkg-message.client b/databases/postgresql-devel/pkg-message.client
index 48646e8c9901..cc252ba07b30 100644
--- a/databases/postgresql-devel/pkg-message.client
+++ b/databases/postgresql-devel/pkg-message.client
@@ -2,15 +2,17 @@
* IMPORTANT UPGRADE NOTICE * IMPORTANT UPGRADE NOTICE *
-The PostgreSQL port now obeys hier(7) by default, which means that it
-installs into:
+There may be API compatibility issues between the last stable release
+and this development port. Please report any problems you have to
+either the module maintainer or the postgresql-devel maintainer. It
+is advised that you recompile libraries that depend on the
+postgresql-devel port after completing this upgrade.
-/usr/local/bin
-/usr/local/lib
-/usr/local/include (NOTE! Changed again in 7.2, since PostgreSQL
- handles standard install nowadays)
+Please remember to upgrade this client installation when upgrading the
+server.
-You *must* move away your old installation from users' and
-ldconfig(8)'s PATHs.
+You might want to add the following tunable to /etc/make.conf
+
+POSTGRESQL_PORT=databases/postgresql-devel
======================================================================
diff --git a/databases/postgresql-devel/pkg-plist b/databases/postgresql-devel/pkg-plist
index a103c3faf3da..8ece2c316b05 100644
--- a/databases/postgresql-devel/pkg-plist
+++ b/databases/postgresql-devel/pkg-plist
@@ -1,5 +1,6 @@
%%SERVER%%bin/postmaster
%%SERVER%%bin/postgres
+bin/clusterdb
bin/ecpg
bin/initdb
bin/initlocation
@@ -9,7 +10,6 @@ bin/pg_dump
bin/pg_restore
bin/pg_dumpall
bin/pg_id
-bin/pg_passwd
bin/psql
bin/createdb
bin/dropdb
@@ -19,7 +19,9 @@ bin/droplang
bin/vacuumdb
bin/createlang
bin/pg_config
-%%MULTIBYTE%%bin/pg_encoding
+bin/pg_controldata
+bin/pg_resetxlog
+bin/pg_encoding
include/libpq/libpq-fs.h
@dirrm include/libpq
include/postgresql/internal/libpq/pqcomm.h
@@ -32,12 +34,6 @@ include/postgresql/internal/libpq-int.h
include/postgresql/internal/pqexpbuffer.h
@dirrm include/postgresql/internal
@dirrm include/postgresql
-include/libpq++/pgconnection.h
-include/libpq++/pgdatabase.h
-include/libpq++/pgtransdb.h
-include/libpq++/pgcursordb.h
-include/libpq++/pglobject.h
-@dirrm include/libpq++
include/postgres_ext.h
include/pg_config.h
include/pg_config_os.h
@@ -47,25 +43,42 @@ include/ecpglib.h
include/ecpgtype.h
include/sqlca.h
include/sql3types.h
-include/libpgeasy.h
-include/libpq++.h
lib/libpq.so
lib/libpq.a
lib/libpq.so.2
lib/libecpg.so
lib/libecpg.a
lib/libecpg.so.3
-lib/libpgeasy.so
-lib/libpgeasy.a
-lib/libpgeasy.so.2
-lib/libpq++.so
-lib/libpq++.a
-lib/libpq++.so.4
%%SERVER%%lib/postgresql/plpgsql.so
+%%SERVER%%lib/postgresql/ascii_and_mic.so
+%%SERVER%%lib/postgresql/cyrillic_and_mic.so
+%%SERVER%%lib/postgresql/euc_cn_and_mic.so
+%%SERVER%%lib/postgresql/euc_jp_and_sjis.so
+%%SERVER%%lib/postgresql/euc_kr_and_mic.so
+%%SERVER%%lib/postgresql/euc_tw_and_big5.so
+%%SERVER%%lib/postgresql/latin2_and_win1250.so
+%%SERVER%%lib/postgresql/latin_and_mic.so
+%%SERVER%%lib/postgresql/utf8_and_ascii.so
+%%SERVER%%lib/postgresql/utf8_and_big5.so
+%%SERVER%%lib/postgresql/utf8_and_cyrillic.so
+%%SERVER%%lib/postgresql/utf8_and_euc_cn.so
+%%SERVER%%lib/postgresql/utf8_and_euc_jp.so
+%%SERVER%%lib/postgresql/utf8_and_euc_kr.so
+%%SERVER%%lib/postgresql/utf8_and_euc_tw.so
+%%SERVER%%lib/postgresql/utf8_and_gb18030.so
+%%SERVER%%lib/postgresql/utf8_and_gbk.so
+%%SERVER%%lib/postgresql/utf8_and_iso8859.so
+%%SERVER%%lib/postgresql/utf8_and_iso8859_1.so
+%%SERVER%%lib/postgresql/utf8_and_johab.so
+%%SERVER%%lib/postgresql/utf8_and_sjis.so
+%%SERVER%%lib/postgresql/utf8_and_tcvn.so
+%%SERVER%%lib/postgresql/utf8_and_uhc.so
+%%SERVER%%lib/postgresql/utf8_and_win1250.so
+%%SERVER%%lib/postgresql/utf8_and_win1256.so
+%%SERVER%%lib/postgresql/utf8_and_win874.so
@unexec rmdir %D/lib/postgresql 2>/dev/null || true
%%SERVER%%share/postgresql/502.pgsql
-%%SERVER%%share/postgresql/odbc.sql
-%%SERVER%%share/postgresql/odbc-drop.sql
+%%SERVER%%share/postgresql/conversion_create.sql
%%SERVER%%share/postgresql/postgres.bki
%%SERVER%%share/postgresql/postgres.description
%%SERVER%%share/postgresql/pg_hba.conf.sample
diff --git a/databases/postgresql-devel/scripts/configure.postgresql b/databases/postgresql-devel/scripts/configure.postgresql
deleted file mode 100644
index a8db5229c345..000000000000
--- a/databases/postgresql-devel/scripts/configure.postgresql
+++ /dev/null
@@ -1,173 +0,0 @@
-#!/bin/sh
-# -*- tab-width: 4; -*-
-# ex:ts=4
-#
-# $FreeBSD$
-#
-if [ -f ${WRKDIRPREFIX}${CURDIR}/Makefile.inc ]; then
- exit
-fi
-
-if [ ! "${BATCH}" ]; then
- dialog --title "Backup your data NOW" \
- --yesno "As always, backup your data before
-upgrading. If the upgrade leads to a higher
-minor revision (e.g. 7.1.x -> 7.2, a dump
-and restore of all databases is
-required. This is *NOT* done by the port!
-
-Select 'Yes' to continue the installation." -1 -1
- if [ $? -eq 1 ] ; then exit 1; fi
-fi
-
-if [ "${BATCH}" ]; then
- set \"MultiByte\" \"KRB5\"
-else
- /usr/bin/dialog --title "configuration options" --clear \
- --checklist "\n\
-Please select desired options:" -1 -1 3 \
-MultiByte "Multibyte for Multilingualism" ON \
-KRB5 "Kerberos 5 (only if it exists)" ON \
-CLIENT "PostgreSQL client only, no server" OFF \
-2> /tmp/checklist.tmp.$$
-
- retval=$?
-
- if [ -s /tmp/checklist.tmp.$$ ]; then
- set `cat /tmp/checklist.tmp.$$`
- fi
- rm -f /tmp/checklist.tmp.$$
-
- case $retval in
- 0) if [ -z "$*" ]; then
- echo "Nothing selected"
- fi
- ;;
- 1) echo "Cancel pressed."
- exit 1
- ;;
- esac
-fi
-
-${MKDIR} ${WRKDIRPREFIX}${CURDIR}
-exec > ${WRKDIRPREFIX}${CURDIR}/Makefile.inc
-
-while [ "$1" ]; do
- case $1 in
- \"MultiByte\")
- MULTIBYTE=1
- ;;
- \"KRB5\")
- KRB5=1
- ;;
- \"CLIENT\")
- CLIENT=1
- ;;
- \"nothing\"|true)
- ;;
- *)
- echo "Invalid option(s): $*" > /dev/stderr
- rm -f ${WRKDIRPREFIX}${CURDIR}/Makefile.inc
- exit 1
- ;;
- esac
- shift
-done
-
-exec > /dev/stderr
-
-# if multibyte, determine default charset
-echo "# Multibyte" >> ${WRKDIRPREFIX}${CURDIR}/Makefile.inc
-
-if [ ! "${MULTIBYTE}" ]; then
- echo "WITHOUT_MULTIBYTE=YES" >> ${WRKDIRPREFIX}${CURDIR}/Makefile.inc
-else
- if [ "${BATCH}" ]; then
- set "nothing"
- else
- /usr/bin/dialog --title "Default encoding system" --clear \
- --radiolist "\n\
-Please select the default encoding:" -1 -1 16 \
-nothing "Default Encoding" ON \
-SQL_ASCII "SQL_ASCII - ASCII" OFF \
-EUC_JP "Japanese EUC" OFF \
-EUC_CN "Chinese EUC" OFF \
-EUC_KR "Korean EUC" OFF \
-EUC_TW "Taiwan EUC" OFF \
-UNICODE "Unicode (UTF-8)" OFF \
-MULE_INTERNAL "Mule internal code" OFF \
-LATIN1 "ISO 8859-1" OFF \
-LATIN2 "ISO 8859-2" OFF \
-LATIN3 "ISO 8859-3" OFF \
-LATIN4 "ISO 8859-4" OFF \
-LATIN5 "ISO 8859-9" OFF \
-LATIN6 "ISO 8859-10" OFF \
-LATIN7 "ISO 8859-13" OFF \
-LATIN8 "ISO 8859-14" OFF \
-LATIN9 "ISO 8859-15" OFF \
-LATIN10 "ISO 8859-16" OFF \
-ISO-8859-5 "ECMA-113 Latin/Cyrillic" OFF \
-ISO-8859-6 "ECMA-114 Latin/Arabic" OFF \
-ISO-8859-7 "ECMA-118 Latin/Greek" OFF \
-ISO-8859-8 "ECMA-121 Latin/Hebrew" OFF \
-KOI8 "KOI8-R(U)" OFF \
-WIN "Windows CP1251" OFF \
-ALT "Windows CP866" OFF \
-2> /tmp/checklist.tmp.$$
-
- retval=$?
-
- if [ -s /tmp/checklist.tmp.$$ ]; then
- set `cat /tmp/checklist.tmp.$$`
- fi
- rm -f /tmp/checklist.tmp.$$
- if [ $retval = 1 ]; then
- echo "Cancel pressed."
- rm ${WRKDIRPREFIX}${CURDIR}/Makefile.inc
- exit 1
- fi
- fi
-
- if [ "$1" = "nothing" ]; then
- echo "MULTIBYTE_ENCODING=yes" \
- >> ${WRKDIRPREFIX}${CURDIR}/Makefile.inc
- else
- echo "MULTIBYTE_ENCODING=$1" \
- >> ${WRKDIRPREFIX}${CURDIR}/Makefile.inc
- fi
-fi
-
-if [ "${KRB5}" ]; then
- if [ -r "/usr/bin/krb5-config" ]; then
- echo " ########################################################################"
- echo " ### PostgreSQL does not build with Hiemdal kerberos. Edit ###"
- echo " ### /etc/make.conf and turn the knob MAKE_KERBEROS5 off and make ###"
- echo " ### world (or remove all traces of Hiemdal from your system by: ###"
- echo " ### rm -f /usr/bin/krb5-config /usr/lib/libkrb5.* /usr/include/krb5* ###"
- echo " ########################################################################"
- KRB5=""
- else
- KRB5CONF="`which krb5-config`"
- if [ "$KRB5CONF" ]; then
- cat <<-EOF >> ${WRKDIRPREFIX}${CURDIR}/Makefile.inc
- .if exists($KRB5CONF)
- LIB_DEPENDS+= krb5.3:${PORTSDIR}/security/krb5
- CONFIGURE_ARGS+= --with-krb5="`${KRB5CONF} --prefix krb5`"
- CFLAGS+= "'`${KRB5CONF} --cflags krb5`'"
- LDFLAGS+= "'`${KRB5CONF} --libs krb5`'"
- .endif
- EOF
- else
- echo " ########################################################"
- echo " ### Unable to find krb5-config in your path. ###"
- echo " ### Please correct and build PostgreSQL again if you ###"
- echo " ### want PostgreSQL to be compiled with kerberos ###"
- echo " ### support (ports/security/krb5). ###"
- echo " ########################################################"
- fi
- fi
-fi
-
-if [ ${CLIENT} ]; then
- echo "WITHOUT_SERVER=yes" >> ${WRKDIRPREFIX}${CURDIR}/Makefile.inc
-fi