61363ef3c3
Security Fixes * CVE-2015-0241 Buffer overruns in "to_char" functions. * CVE-2015-0242 Buffer overrun in replacement printf family of functions. * CVE-2015-0243 Memory errors in functions in the pgcrypto extension. * CVE-2015-0244 An error in extended protocol message reading. * CVE-2014-8161 Constraint violation errors can cause display of values in columns which the user would not normally have rights to see. JSON and JSONB Unicode Escapes Other Fixes and Improvements * Cope with the non-ASCII Norwegian Windows locale name. * Avoid data corruption when databases are moved to new tablespaces and back again. * Ensure that UNLOGGED tables are correctly copied during ALTER DATABASE operations. * Avoid deadlocks when locking recently modified rows. * Fix two SELECT FOR UPDATE query issues. * Prevent false negative for shortest-first regular expression matches. * Fix false positives and negatives in tsquery contains operator. * Fix namespace handling in xpath(). * Prevent row-producing functions from creating empty column names. * Make autovacuum use per-table cost_limit and cost_delay settings. * When autovacuum=off, limit autovacuum work to wraparound prevention only. * Multiple fixes for logical decoding in 9.4. * Fix transient errors on hot standby queries due to page replacement. * Prevent duplicate WAL file archiving at end of recovery or standby promotion. * Prevent deadlock in parallel restore of schema-only dump.
134 lines
4.5 KiB
Text
134 lines
4.5 KiB
Text
# $NetBSD: Makefile.common,v 1.23 2015/02/14 12:06:49 adam 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
|
|
#
|
|
# 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-monitoring/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-replicationtools/Makefile
|
|
# used by databases/postgresql91-server/Makefile
|
|
# used by databases/postgresql91-upgrade/Makefile
|
|
|
|
DISTNAME= postgresql-9.1.15
|
|
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]-[0-9]*
|
|
CONFLICTS+= postgresql9[02-9]-[0-9]*
|
|
|
|
.if !empty(PKGNAME:M*-*-*)
|
|
module= ${PKGNAME:C/-[0-9].*$//:C/^.*-//}
|
|
CONFLICTS+= postgresql[0-8][0-9]-${module}-[0-9]*
|
|
CONFLICTS+= postgresql9[02-9]-${module}-[0-9]*
|
|
.endif
|
|
|
|
DISTINFO_FILE?= ${.CURDIR}/../../databases/postgresql91/distinfo
|
|
COMMON_FILESDIR?= ${.CURDIR}/../../databases/postgresql91/files
|
|
PATCHDIR?= ${.CURDIR}/../../databases/postgresql91/patches
|
|
|
|
USE_GCC_RUNTIME= yes
|
|
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
|
|
PG_TEMPLATE.MirBSD= openbsd
|
|
.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+= --docdir=${PG_DOC_DIR}
|
|
CONFIGURE_ARGS+= --localedir=${PG_LOCALE_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
|
|
|
|
# configure fails on OpenBSD and MirBSD if thread safety is enabled.
|
|
.if ${OPSYS} == "OpenBSD" || ${OPSYS} == "MirBSD"
|
|
CONFIGURE_ARGS+= --disable-thread-safety
|
|
.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"
|