summaryrefslogtreecommitdiff
path: root/databases/postgresql80
diff options
context:
space:
mode:
authorjdolecek <jdolecek@pkgsrc.org>2005-02-06 12:32:05 +0000
committerjdolecek <jdolecek@pkgsrc.org>2005-02-06 12:32:05 +0000
commitfc812047e43d4d9fb81624d54e29cdbb349c99ba (patch)
treeca025c7eef396d233c2e4340a7c68a2a92ecf72b /databases/postgresql80
parent1a41b85972768a587b9a8a7b9eb46634e56ced9f (diff)
downloadpkgsrc-fc812047e43d4d9fb81624d54e29cdbb349c99ba.tar.gz
PostgreSQL 8.0.1 packages. A dump/restore using pg_dump is required
for those wishing to migrate data from any previous release. Major changes relative to 7.4.x: * Savepoints * Point-in-Time recovery * Tablespaces * Improved buffer management * ALTER TABLE column management improvements Full list of changes is available at: http://www.postgresql.org/docs/8.0/static/release.html#RELEASE-8-0 Also note that PostgreSQL server listens also on localhost (127.0.0.1) by default now.
Diffstat (limited to 'databases/postgresql80')
-rw-r--r--databases/postgresql80/DESCR9
-rw-r--r--databases/postgresql80/Makefile19
-rw-r--r--databases/postgresql80/Makefile.common117
-rw-r--r--databases/postgresql80/PLIST2
-rw-r--r--databases/postgresql80/distinfo5
-rw-r--r--databases/postgresql80/files/GNUmakefile.libpgtcl20
-rw-r--r--databases/postgresql80/files/GNUmakefile.libpq20
-rw-r--r--databases/postgresql80/files/Makefile.custom15
-rw-r--r--databases/postgresql80/files/netbsd.c73
-rw-r--r--databases/postgresql80/files/netbsd.h45
-rw-r--r--databases/postgresql80/patches/patch-aa31
11 files changed, 356 insertions, 0 deletions
diff --git a/databases/postgresql80/DESCR b/databases/postgresql80/DESCR
new file mode 100644
index 00000000000..9f6b5b5b0f9
--- /dev/null
+++ b/databases/postgresql80/DESCR
@@ -0,0 +1,9 @@
+PostgreSQL is a robust, next-generation, Object-Relational DBMS (ORDBMS),
+derived from the Berkeley Postgres database management system. While
+PostgreSQL retains the powerful object-relational data model, rich data types
+and easy extensibility of Postgres, it replaces the PostQuel query language
+with an extended subset of SQL.
+
+PostgreSQL is free and the complete source is available.
+
+This is the meta-package for the PostgreSQL database system.
diff --git a/databases/postgresql80/Makefile b/databases/postgresql80/Makefile
new file mode 100644
index 00000000000..2d29f27c5e9
--- /dev/null
+++ b/databases/postgresql80/Makefile
@@ -0,0 +1,19 @@
+
+PKGNAME= postgresql80-${BASE_VERS}
+COMMENT= Robust, next generation, object-relational DBMS
+
+DEPENDS+= postgresql80-client>=${BASE_VERS}:../../wip/postgresql80-client
+DEPENDS+= postgresql80-server>=${BASE_VERS}:../../wip/postgresql80-server
+DEPENDS+= postgresql80-docs>=${BASE_VERS}:../../wip/postgresql80-docs
+
+.include "Makefile.common"
+
+EXTRACT_ONLY= # empty
+NO_CHECKSUM= YES
+NO_CONFIGURE= YES
+NO_BUILD= YES
+
+do-install: # empty
+do-patch: # empty
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/databases/postgresql80/Makefile.common b/databases/postgresql80/Makefile.common
new file mode 100644
index 00000000000..93991c625a7
--- /dev/null
+++ b/databases/postgresql80/Makefile.common
@@ -0,0 +1,117 @@
+# $NetBSD: Makefile.common,v 1.1.1.1 2005/02/06 12:32:05 jdolecek Exp $
+#
+# This Makefile fragment is included by all PostgreSQL packages built from
+# the main sources of the PostgreSQL distribution except jdbc-postgresql.
+#
+# The PostgreSQL package naming scheme, aside from the obvious piecewise
+# packages, is as follows:
+#
+# <lang>-postgresql client-side interface to PostgreSQL
+# postgresql-<lang> server-side module for PostgreSQL backend
+
+DISTNAME?= postgresql-${DIST_VERS}
+CATEGORIES+= databases
+MASTER_SITES?= \
+ ftp://ftp.de.postgresql.org/mirror/postgresql/source/v${DIST_VERS}/ \
+ ftp://gd.tuwien.ac.at/db/www.postgresql.org/pub/source/v${DIST_VERS}/ \
+ ftp://ftp.sunsite.auc.dk/mirrors/postgresql/source/v${DIST_VERS}/ \
+ ftp://ftp.jaist.ac.jp/pub/dbms/postgres95/source/v${DIST_VERS}/ \
+ http://www.postgresql.org/ftpsite/source/v${DIST_VERS}/ \
+ ftp://ftp.postgresql.org/pub/source/v${DIST_VERS}/
+
+EXTRACT_SUFX= .tar.bz2
+
+MAINTAINER?= recht@NetBSD.org
+HOMEPAGE?= http://www.postgresql.org/
+
+CONFLICTS+= postgresql-[0-9]* postgresql73-* postgresql74-*
+
+DISTINFO_FILE?= ${.CURDIR}/../postgresql80/distinfo
+COMMON_FILESDIR?= ${.CURDIR}/../postgresql80/files
+PATCHDIR?= ${.CURDIR}/../postgresql80/patches
+
+# Version numbering scheme:
+#
+# DIST_VERS version number on the postgresql distfile
+# BASE_VERS pkgsrc-mangled version number (convert pl -> .)
+#
+# Note: Do not forget jdbc-postgresql when updating version
+DIST_VERS?= 8.0.1
+BASE_VERS?= ${DIST_VERS}
+
+BUILDLINK_DEPENDS.postgresql80-lib?= postgresql80-lib>=${BASE_VERS}
+#BUILDLINK_DEPENDS.tcl-postgresql80?= tcl-postgresql80>=${BASE_VERS}
+
+USE_BUILDLINK3= yes
+GNU_CONFIGURE= yes
+BUILD_USES_MSGFMT= yes
+USE_GNU_TOOLS+= lex make yacc
+PKG_SYSCONFSUBDIR= postgresql
+
+# in 7.4.2, this is done by autoconf stuff which has leading whitespace
+#USE_PKGLOCALEDIR= yes
+#SUBST_CLASSES+= pkglocaledir2
+#SUBST_FILES.pkglocaledir2= configure config/programs.m4
+#SUBST_STAGE.pkglocaledir2= pre-configure
+#SUBST_SED.pkglocaledir2= -e 's|\( localedir[ :]*=\).*|\1${_PKGLOCALEDIR}|'
+
+.include "../../mk/bsd.prefs.mk"
+
+# Add support for hierarchical queries with Oracle like CONNECT BY syntax.
+# see http://gppl.terminal.ru/README.html for details.
+.if defined(PGSQL_USE_HIER) && !empty(PGSQL_USE_HIER:M[yY][eE][sS])
+PATCH_SITES= http://gppl.moonbone.ru/
+PATCHFILES= hier-Pg7.4-0.5.3.tar.gz
+PATCH_DIST_STRIP= -p1
+.endif
+BUILD_DEFS+= PGSQL_USE_HIER
+
+PGSQL_TEMPLATE.SunOS= solaris
+.if !defined(PGSQL_TEMPLATE.${OPSYS})
+PGSQL_TEMPLATE.${OPSYS}= ${LOWER_OPSYS}
+.endif
+
+PG_DIR= ${PREFIX}
+GNU_CONFIGURE_PREFIX= ${PG_DIR}
+INSTALLATION_DIRS+= ${PG_DIR}
+
+#CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR}
+CONFIGURE_ARGS+= --with-docdir=${PREFIX}/share/doc/postgresql80
+CONFIGURE_ARGS+= --with-template="${PGSQL_TEMPLATE.${OPSYS}}"
+CONFIGURE_ARGS+= --without-readline
+CONFIGURE_ARGS+= --with-zlib
+CONFIGURE_ARGS+= --enable-nls
+
+CONFIGURE_ARGS+= --without-java
+CONFIGURE_ARGS+= --without-perl
+CONFIGURE_ARGS+= --without-python
+CONFIGURE_ARGS+= --without-tcl
+CONFIGURE_ARGS+= --without-tk
+
+# Postgresql explicitly forbids any use of -ffast-math
+CFLAGS:= ${CFLAGS:S/-ffast-math//}
+
+post-extract:
+ if [ -d ${WRKSRC}/src ]; then \
+ ${RM} -f ${WRKSRC}/src/Makefile.custom; \
+ ${CP} -f ${COMMON_FILESDIR}/Makefile.custom \
+ ${WRKSRC}/src/Makefile.custom; \
+ fi
+ if [ -d ${WRKSRC}/src/interfaces/libpq ]; then \
+ ${RM} -f ${WRKSRC}/src/interfaces/libpq/GNUmakefile; \
+ ${CP} -f ${COMMON_FILESDIR}/GNUmakefile.libpq \
+ ${WRKSRC}/src/interfaces/libpq/GNUmakefile; \
+ fi
+ if [ -d ${WRKSRC}/src/interfaces/libpgtcl ]; then \
+ ${RM} -f ${WRKSRC}/src/interfaces/libpgtcl/GNUmakefile; \
+ ${CP} -f ${COMMON_FILESDIR}/GNUmakefile.libpgtcl \
+ ${WRKSRC}/src/interfaces/libpgtcl/GNUmakefile; \
+ fi
+ if [ -d ${WRKSRC}/src/backend/port/dynloader ]; then \
+ ${RM} -f ${WRKSRC}/src/backend/port/dynloader/netbsd.[ch];\
+ ${CP} -f ${COMMON_FILESDIR}/netbsd.[ch] \
+ ${WRKSRC}/src/backend/port/dynloader/; \
+ fi
+
+.include "../../devel/gettext-lib/buildlink3.mk"
+.include "../../devel/zlib/buildlink3.mk"
diff --git a/databases/postgresql80/PLIST b/databases/postgresql80/PLIST
new file mode 100644
index 00000000000..42ad3c2e849
--- /dev/null
+++ b/databases/postgresql80/PLIST
@@ -0,0 +1,2 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2005/02/06 12:32:05 jdolecek Exp $
+@comment this plist intentionally left empty
diff --git a/databases/postgresql80/distinfo b/databases/postgresql80/distinfo
new file mode 100644
index 00000000000..48b7c2ae471
--- /dev/null
+++ b/databases/postgresql80/distinfo
@@ -0,0 +1,5 @@
+$NetBSD: distinfo,v 1.1.1.1 2005/02/06 12:32:05 jdolecek Exp $
+
+SHA1 (postgresql-8.0.1.tar.bz2) = 42a16fe13a6271b1612fb0a9f41f7da0a2e307b6
+Size (postgresql-8.0.1.tar.bz2) = 11049626 bytes
+SHA1 (patch-aa) = 20492216de0e5238a02b4cdd18c297731cf6462a
diff --git a/databases/postgresql80/files/GNUmakefile.libpgtcl b/databases/postgresql80/files/GNUmakefile.libpgtcl
new file mode 100644
index 00000000000..b1ea47d2775
--- /dev/null
+++ b/databases/postgresql80/files/GNUmakefile.libpgtcl
@@ -0,0 +1,20 @@
+# $NetBSD: GNUmakefile.libpgtcl,v 1.1.1.1 2005/02/06 12:32:05 jdolecek Exp $
+#
+# This GNUmakefile overrides the `all' target of $(libpgtcl_srcdir)/Makefile
+# to be empty if INSTALLED_LIBPGTCL is defined. This handles the submake
+# targets sprinkled throughout the PostgreSQL Makefiles that execute
+#
+# @$(MAKE) -C $(libpgtcl_builddir) all
+#
+# to ensure that the libpgtcl libraries are built first. If INSTALLED_LIBPGTCL
+# is defined, then have the `all' target simple return success.
+
+ifdef INSTALLED_LIBPGTCL
+all:
+ @test -f libpgtcl.a || touch libpgtcl.a
+endif
+
+%: force
+ @$(MAKE) -f Makefile $@
+
+force: ;
diff --git a/databases/postgresql80/files/GNUmakefile.libpq b/databases/postgresql80/files/GNUmakefile.libpq
new file mode 100644
index 00000000000..16a1e9834fc
--- /dev/null
+++ b/databases/postgresql80/files/GNUmakefile.libpq
@@ -0,0 +1,20 @@
+# $NetBSD: GNUmakefile.libpq,v 1.1.1.1 2005/02/06 12:32:05 jdolecek Exp $
+#
+# This GNUmakefile overrides the `all' target of $(libpq_srcdir)/Makefile
+# to be empty if INSTALLED_LIBPQ is defined. This handles the submake
+# targets sprinkled throughout the PostgreSQL Makefiles that execute
+#
+# @$(MAKE) -C $(libpq_builddir) all
+#
+# to ensure that the libpq libraries are built first. If INSTALLED_LIBPQ
+# is defined, then have the `all' target simple return success.
+
+ifdef INSTALLED_LIBPQ
+all:
+ @test -f libpq.a || touch libpq.a
+endif
+
+%: force
+ @$(MAKE) -f Makefile $@
+
+force: ;
diff --git a/databases/postgresql80/files/Makefile.custom b/databases/postgresql80/files/Makefile.custom
new file mode 100644
index 00000000000..2c27efbc3a4
--- /dev/null
+++ b/databases/postgresql80/files/Makefile.custom
@@ -0,0 +1,15 @@
+# $NetBSD: Makefile.custom,v 1.1.1.1 2005/02/06 12:32:05 jdolecek Exp $
+#
+# This file is included by Makefile.global, which is included by every
+# sub-Makefile in the build tree. Makefiles for shared libraries include
+# Makefile.global then Makefile.shlib.
+
+pkglibdir = $(exec_prefix)/lib/postgresql
+
+ifdef INSTALLED_LIBPQ
+libpq = -lpq
+endif
+
+ifdef INSTALLED_LIBPGTCL
+libpgtcl = -lpgtcl
+endif
diff --git a/databases/postgresql80/files/netbsd.c b/databases/postgresql80/files/netbsd.c
new file mode 100644
index 00000000000..d2ef8e70699
--- /dev/null
+++ b/databases/postgresql80/files/netbsd.c
@@ -0,0 +1,73 @@
+/*-
+ * Portions Copyright (c) 1996-2003, PostgreSQL Global Development Group
+ * Portions Copyright (c) 1990 The Regents of the University of California.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. All advertising materials mentioning features or use of this software
+ * must display the following acknowledgement:
+ * This product includes software developed by the University of
+ * California, Berkeley and its contributors.
+ * 4. Neither the name of the University nor the names of its contributors
+ * may be used to endorse or promote products derived from this software
+ * without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ */
+
+#if defined(LIBC_SCCS) && !defined(lint)
+static char sccsid[] = "@(#)dl.c 5.4 (Berkeley) 2/23/91";
+#endif /* LIBC_SCCS and not lint */
+
+#include "postgres.h"
+
+#include <nlist.h>
+#include <link.h>
+#include <dlfcn.h>
+
+#include "dynloader.h"
+
+#ifndef HAVE_DLOPEN
+
+char *
+pg_dlerror(void)
+{
+ return "dynaloader unsupported";
+}
+
+void *
+pg_dlopen(const char *file, int num)
+{
+ elog(ERROR, "dynamic load not supported");
+ return NULL;
+}
+
+void *
+pg_dlsym(void *handle, const char *name)
+{
+ return NULL;
+}
+
+void
+pg_dlclose(void *handle)
+{
+}
+
+#endif /* ! HAVE_DLOPEN */
diff --git a/databases/postgresql80/files/netbsd.h b/databases/postgresql80/files/netbsd.h
new file mode 100644
index 00000000000..b9ac224d9e5
--- /dev/null
+++ b/databases/postgresql80/files/netbsd.h
@@ -0,0 +1,45 @@
+/*-------------------------------------------------------------------------
+ *
+ * netbsd.h
+ * port-specific prototypes for NetBSD
+ *
+ *
+ * Portions Copyright (c) 1996-2003, PostgreSQL Global Development Group
+ * Portions Copyright (c) 1994, Regents of the University of California
+ *
+ * $Id: netbsd.h,v 1.1.1.1 2005/02/06 12:32:05 jdolecek Exp $
+ *
+ *-------------------------------------------------------------------------
+ */
+#ifndef PORT_PROTOS_H
+#define PORT_PROTOS_H
+
+#include <sys/types.h>
+#include <nlist.h>
+#include <link.h>
+#include <dlfcn.h>
+
+#include "utils/dynamic_loader.h"
+
+#ifdef HAVE_DLOPEN
+/*
+ * In some older systems, the RTLD_NOW flag isn't defined and the mode
+ * argument to dlopen must always be 1. The RTLD_GLOBAL flag is wanted
+ * if available, but it doesn't exist everywhere.
+ * If it doesn't exist, set it to 0 so it has no effect.
+ */
+#ifndef RTLD_NOW
+#define RTLD_NOW 1
+#endif
+#ifndef RTLD_GLOBAL
+#define RTLD_GLOBAL 0
+#endif
+
+#define pg_dlopen(f) dlopen((f), RTLD_NOW | RTLD_GLOBAL)
+#define pg_dlsym dlsym
+#define pg_dlclose dlclose
+#define pg_dlerror dlerror
+
+#endif /* HAVE_DLOPEN */
+
+#endif /* PORT_PROTOS_H */
diff --git a/databases/postgresql80/patches/patch-aa b/databases/postgresql80/patches/patch-aa
new file mode 100644
index 00000000000..a6592ae3d6f
--- /dev/null
+++ b/databases/postgresql80/patches/patch-aa
@@ -0,0 +1,31 @@
+$NetBSD: patch-aa,v 1.1.1.1 2005/02/06 12:32:05 jdolecek Exp $
+
+--- src/Makefile.shlib.orig Tue Nov 9 17:02:42 2004
++++ src/Makefile.shlib
+@@ -132,7 +132,7 @@ endif
+
+ ifeq ($(PORTNAME), freebsd)
+ ifdef ELF_SYSTEM
+- shlib = lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION)
++ shlib = lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
+ LINK.shared = $(COMPILER) -shared -Wl,-x,-soname,$(soname)
+ else
+ shlib = lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
+@@ -149,7 +149,7 @@ ifeq ($(PORTNAME), netbsd)
+ endif
+
+ ifeq ($(PORTNAME), hpux)
+- shlib = lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION)
++ shlib = lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
+ ifeq ($(GCC), yes)
+ SHLIB_LINK += `$(CC) $(LDFLAGS) -print-libgcc-file-name`
+ endif
+@@ -161,7 +161,7 @@ ifeq ($(PORTNAME), hpux)
+ endif
+
+ ifeq ($(PORTNAME), irix)
+- shlib = lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION)
++ shlib = lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
+ LINK.shared = $(COMPILER) -shared -Wl,-set_version,sgi$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION)
+ endif
+