mirror of
https://git.FreeBSD.org/ports.git
synced 2025-01-01 05:45:45 +00:00
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)
This commit is contained in:
parent
69e314d5fb
commit
11d66f7e29
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=67076
@ -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
|
||||
.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
|
||||
|
||||
SCRIPTS_ENV= WRKDIRPREFIX="${WRKDIRPREFIX}" \
|
||||
WRKDIR="${WRKDIR}" \
|
||||
FILESDIR="${FILESDIR}" \
|
||||
TOUCH="${TOUCH}" \
|
||||
MKDIR="${MKDIR}" \
|
||||
DISTNAME="${DISTNAME}"
|
||||
.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
|
||||
|
||||
# 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_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:
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
@ -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];
|
23
databases/postgresql-devel/files/patch-al
Normal file
23
databases/postgresql-devel/files/patch-al
Normal file
@ -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 $@
|
||||
|
@ -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.
|
||||
|
@ -1 +1 @@
|
||||
The most advanced open-source database available anywhere
|
||||
The most advanced open-source database available anywhere.
|
||||
|
@ -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/
|
||||
|
@ -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!
|
||||
======================== BACKUP YOUR DATA! ===========================
|
||||
|
||||
Press ctrl-C *now* if you need to pg_dump.
|
||||
===========================================
|
||||
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
|
||||
|
@ -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
|
||||
|
@ -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
|
||||
|
||||
======================================================================
|
||||
|
@ -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
|
||||
|
@ -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
|
Loading…
Reference in New Issue
Block a user