diff options
author | seanc <seanc@FreeBSD.org> | 2002-09-24 06:01:46 +0800 |
---|---|---|
committer | seanc <seanc@FreeBSD.org> | 2002-09-24 06:01:46 +0800 |
commit | cc656dfc5a1ec228a6eac940cbf9a7a210f736bb (patch) | |
tree | 2051ba9b5e03be92e4144fda4a9cf457aeddea1e | |
parent | 34b76d74f805caf5e8123d68e979c3d9a59206cd (diff) | |
download | freebsd-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/Makefile | 164 | ||||
-rw-r--r-- | databases/postgresql-devel/distinfo | 6 | ||||
-rw-r--r-- | databases/postgresql-devel/files/dot.cshrc.in | 6 | ||||
-rw-r--r-- | databases/postgresql-devel/files/dot.profile.in | 9 | ||||
-rw-r--r-- | databases/postgresql-devel/files/patch-aj | 118 | ||||
-rw-r--r-- | databases/postgresql-devel/files/patch-al | 23 | ||||
-rw-r--r-- | databases/postgresql-devel/files/post-install-notes | 22 | ||||
-rw-r--r-- | databases/postgresql-devel/pkg-comment | 2 | ||||
-rw-r--r-- | databases/postgresql-devel/pkg-descr | 31 | ||||
-rw-r--r-- | databases/postgresql-devel/pkg-install | 21 | ||||
-rw-r--r-- | databases/postgresql-devel/pkg-message | 26 | ||||
-rw-r--r-- | databases/postgresql-devel/pkg-message.client | 18 | ||||
-rw-r--r-- | databases/postgresql-devel/pkg-plist | 49 | ||||
-rw-r--r-- | databases/postgresql-devel/scripts/configure.postgresql | 173 |
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 |