e01c8df550
Security Issues --------------- Two security holes have been closed by this release: CVE-2016-5423: certain nested CASE expressions can cause the server to crash. CVE-2016-5424: database and role names with embedded special characters can allow code injection during administrative operations like pg_dumpall. The fix for the second issue also adds an option, -reuse-previous, to psql's \connect command. pg_dumpall will also refuse to handle database and role names containing line breaks after the update. For more information on these issues and how they affect backwards-compatibility, see the Release Notes. Bug Fixes and Improvements -------------------------- This update also fixes a number of bugs reported in the last few months. Some of these issues affect only version 9.5, but many affect all supported versions: Fix misbehaviors of IS NULL/IS NOT NULL with composite values Fix three areas where INSERT ... ON CONFLICT failed to work properly with other SQL features. Make INET and CIDR data types properly reject bad IPv6 values Prevent crash in "point ## lseg" operator for NaN input Avoid possible crash in pg_get_expr() Fix several one-byte buffer over-reads in to_number() Don't needlessly plan query if WITH NO DATA is specified Avoid crash-unsafe state in expensive heap_update() paths Fix hint bit update during WAL replay of row locking operations Avoid unnecessary "could not serialize access" with FOR KEY SHARE Avoid crash in postgres -C when the specified variable is a null string Fix two issues with logical decoding and subtransactions Ensure that backends see up-to-date statistics for shared catalogs Prevent possible failure when vacuuming multixact IDs in an upgraded database When a manual ANALYZE specifies columns, don't reset changes_since_analyze Fix ANALYZE's overestimation of n_distinct for columns with nulls Fix bug in b-tree mark/restore processing Fix building of large (bigger than shared_buffers) hash indexes Prevent infinite loop in GiST index build with NaN values Fix possible crash during a nearest-neighbor indexscan Fix "PANIC: failed to add BRIN tuple" error Prevent possible crash during background worker shutdown Many fixes for issues in parallel pg_dump and pg_restore Make pg_basebackup accept -Z 0 as no compression Make regression tests safe for Danish and Welsh locales
124 lines
4.2 KiB
Text
124 lines
4.2 KiB
Text
# $NetBSD: Makefile.common,v 1.34 2016/08/23 06:28:15 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-client/Makefile
|
|
# used by databases/postgresql91-contrib/Makefile
|
|
# used by databases/postgresql91-docs/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
|
|
|
|
DISTNAME= postgresql-9.1.23
|
|
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.
|
|
CONFIGURE_ENV.SunOS+= ac_cv_header_sys_ucred_h=no
|
|
|
|
# configure fails on OpenBSD and MirBSD if thread safety is enabled.
|
|
CONFIGURE_ARGS.MirBSD+= --disable-thread-safety
|
|
CONFIGURE_ARGS.OpenBSD+= --disable-thread-safety
|
|
|
|
# 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"
|