pkgsrc/databases/postgresql91/Makefile.common
adam 67630325a1 The PostgreSQL Global Development Group has released an update to all current versions of the PostgreSQL database system, including 9.2.1, 9.1.6, 9.0.10, 8.4.14 and 8.3.21. This update fixes critical issues for major versions 9.1 and 9.2, and users running those versions should apply it as soon as possible. Users of versions 8.3, 8.4 and 9.0 should plan to update at the next scheduled downtime.
The update fixes two potential data corruption issues present in the PostgreSQL 9.1 and 9.2 for any server which has crashed, been shutdown with "immediate", or was failed over to a standby. First, the PostgreSQL development team has discovered a chance of corruption of BTREE and GIN indexes for databases. Second, there is a significant chance of corruption of the visibility map. This update fixes both issues.

We strongly advise users of 9.1 and 9.2 to run VACUUM and/or index rebuilds after applying the update. Please see the 2012-09-24 Update wiki page for detailed instructions.

This update release also contains fixes for many minor issues discovered and patched by the PostgreSQL community in the last month, including many fixes for the newly released version 9.2. These include:

fix sorting issue with IN lists and indexes
fix planner failure when combining GROUP BY with window functions
improve selectivity of text searches using prefixes
prevent rescanning of WITH clauses from giving wrong answers
fix PL/Perl crashing issue
reduce bloat for multi-column GiST indexes
time zone data changes for Fiji
disallow Extensions from circular schema assignment
prevent crashes when default_transaction_isolation is set to "serializable"
several minor fixes to pg_upgrade
2012-10-05 22:15:35 +00:00

119 lines
4 KiB
Text

# $NetBSD: Makefile.common,v 1.10 2012/10/05 22:15:36 adam Exp $
#
# used by databases/postgresql91-adminpack/Makefile
# used by databases/postgresql91-client/Makefile
# used by databases/postgresql91-datatypes/Makefile
# used by databases/postgresql91-dblink/Makefile
# used by databases/postgresql91-docs/Makefile
# used by databases/postgresql91-fuzzystrmatch/Makefile
# used by databases/postgresql91-pgcrypto/Makefile
# used by databases/postgresql91-plperl/Makefile
# used by databases/postgresql91-plpython/Makefile
# used by databases/postgresql91-pltcl/Makefile
# used by databases/postgresql91-server/Makefile
# used by databases/postgresql91-upgrade/Makefile
#
# 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-9.1.6
CATEGORIES= databases
MASTER_SITES= ${MASTER_SITE_PGSQL:=source/v${PKGVERSION_NOREV}/}
EXTRACT_SUFX= .tar.bz2
MAINTAINER?= adam@NetBSD.org
HOMEPAGE= http://www.postgresql.org/
LICENSE= postgresql-license
CONFLICTS+= postgresql-[0-9]*
CONFLICTS+= postgresql[0-8][0-9]-*
CONFLICTS+= postgresql9[02-9]-*
DISTINFO_FILE?= ${.CURDIR}/../../databases/postgresql91/distinfo
COMMON_FILESDIR?= ${.CURDIR}/../../databases/postgresql91/files
PATCHDIR?= ${.CURDIR}/../../databases/postgresql91/patches
USE_PKGLOCALEDIR= yes
USE_TOOLS+= bison gmake lex msgfmt
PKG_SYSCONFSUBDIR= postgresql
.include "../../mk/bsd.prefs.mk"
PG_TEMPLATE.SunOS= solaris
PG_TEMPLATE.IRIX= irix5
.if !defined(PG_TEMPLATE.${OPSYS})
PG_TEMPLATE.${OPSYS}= ${LOWER_OPSYS}
.endif
PG_DATA_DIR= ${PREFIX}/share/postgresql
PG_DOC_DIR= ${PREFIX}/share/doc/postgresql
PG_LOCALE_DIR= ${PREFIX}/${PKGLOCALEDIR}/locale
PG_ETC_DIR= ${PKG_SYSCONFDIR}
GNU_CONFIGURE= yes
CONFIGURE_ARGS+= --sysconfdir=${PG_ETC_DIR}
CONFIGURE_ARGS+= --datadir=${PG_DATA_DIR}
CONFIGURE_ARGS+= --localedir=${PG_LOCALE_DIR}
CONFIGURE_ARGS+= --with-docdir=${PG_DOC_DIR}
CONFIGURE_ARGS+= --with-template=${PG_TEMPLATE.${OPSYS}}
CONFIGURE_ARGS+= --enable-nls
CONFIGURE_ARGS+= --without-perl
CONFIGURE_ARGS+= --without-python
CONFIGURE_ARGS+= --without-readline
CONFIGURE_ARGS+= --without-tcl
CONFIGURE_ARGS+= --without-zlib
# sys/ucred.h shouldn't be included on Solaris, causes conflicts between
# procfs and largefile.
.if ${OPSYS} == "SunOS"
CONFIGURE_ENV+= ac_cv_header_sys_ucred_h=no
.endif
# PGSQL_BLCKSZ is the size in bytes of a PostgreSQL disk page or block.
# This also limits the size of a tuple. The valid values are powers
# of 2 up to 32768, and the default size is 8196. Please don't change
# this value unless you know what you are doing.
BUILD_DEFS+= PGSQL_BLCKSZ
.if defined(PGSQL_BLCKSZ)
CONFIGURE_ARGS+= --with-blocksize=${PGSQL_BLCKSZ}
.endif
# PostgreSQL explicitly forbids any use of -ffast-math
BUILDLINK_TRANSFORM+= rm:-ffast-math
# USE_LIBLTDL is "yes" or "no" depending on whether we're using libltdl
# to provide "dlopen" functionality for the PostgreSQL backend.
.if ${OPSYS} == "Interix"
USE_LIBLTDL?= yes
.endif
USE_LIBLTDL?= no
.include "../../devel/gettext-lib/buildlink3.mk"
LIBS.SunOS+= -lintl
.if !defined(META_PACKAGE)
post-extract:
. if !empty(USE_LIBLTDL:M[yY][eE][sS])
cp -f ${COMMON_FILESDIR}/dynloader-ltdl.h \
${WRKSRC}/src/backend/port/dynloader/${PG_TEMPLATE.${OPSYS}:Q}.h
${ECHO} "static int dummy = 0;" \
> ${WRKSRC}/src/backend/port/dynloader/${PG_TEMPLATE.${OPSYS}:Q}.c
. endif
touch ${WRKSRC}/src/template/dragonfly
cp ${WRKSRC}/src/backend/port/dynloader/freebsd.c \
${WRKSRC}/src/backend/port/dynloader/dragonfly.c
cp ${WRKSRC}/src/backend/port/dynloader/freebsd.h \
${WRKSRC}/src/backend/port/dynloader/dragonfly.h
cp ${WRKSRC}/src/include/port/freebsd.h \
${WRKSRC}/src/include/port/dragonfly.h
cp ${WRKSRC}/src/makefiles/Makefile.freebsd \
${WRKSRC}/src/makefiles/Makefile.dragonfly
.endif
.include "../../databases/postgresql91/options.mk"