f26b45242c
PostgreSQL 11.4, 10.9, 9.6.14, 9.5.18, 9.4.23, and 12 Beta 2 Released! The PostgreSQL Global Development Group has released an update to all supported versions of our database system, including 11.4, 10.9, 9.6.14, 9.5.18, and 9.4.23, as well as the second beta of PostgreSQL 12. This release fixes one security issue and over 25 bugs since the previous cumulative update in May. Security Issues This release closes one security vulnerability: CVE-2019-10164: Stack-based buffer overflow via setting a password Versions affected: 10, 11, 12 beta. Bug Fixes and Improvements Fix assorted errors in run-time partition pruning that could lead to wrong answers in queries on partitioned tables pg_dump now recreates table partitions using CREATE TABLE and ALTER TABLE .. ATTACH PARTITION rather than including PARTITION OF in the creation command Improve how initdb determines which system time zone to select if there are equivalent names for the time zone. Also explicitly prefer UTC over UCT Fix possible crash while trying to copy trigger definitions to a new partition Fix failure of ALTER TABLE .. ALTER COLUMN TYPE when the table has a partial exclusion constraint Fix failure of COMMENT command for comments on domains Several fixes related to aggregation Fix faulty generation of merge-append plans that could lead to "could not find pathkey item to sort" errors Fix failures on dump/restore where views contained queries with duplicate join names Fix conversion of JSON string literals to JSON-type output columns in json_to_record() and json_populate_record() Fix incorrect optimization of {1,1} quantifiers in regular expressions Fix issue for B-tree indexes during edge case failure involving columns covered with the INCLUDE clause, which manifests itself with errors during VACUUM. If you are affected by this issue, you will need to reindex the specific index Fix race condition in check to see whether a pre-existing shared memory segment is still in use by a conflicting postmaster Fix for the walreceiver process that avoids a crash or deadlock on shutdown Avoid possible hang in libpq if using SSL and OpenSSL's pending-data buffer contains an exact multiple of 256 bytes Fix ordering of GRANT commands emitted by pg_dump and pg_dumpall for databases and tablespaces Fix misleading error reports from reindexdb Ensure that vacuumdb returns correct status if an error occurs while using parallel jobs Fix contrib/auto_explain to not cause problems in parallel queries, which resulted in failures like "could not find key N in shm TOC" Account for possible data modifications by local BEFORE ROW UPDATE triggers in contrib/postgres_fdw On Windows, avoid failure when the database encoding is set to SQL_ASCII and we attempt to log a non-ASCII string
138 lines
4.7 KiB
Makefile
138 lines
4.7 KiB
Makefile
# $NetBSD: Makefile.common,v 1.31 2019/06/23 07:55:59 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/postgresql94-client/Makefile
|
|
# used by databases/postgresql94-contrib/Makefile
|
|
# used by databases/postgresql94-docs/Makefile
|
|
# used by databases/postgresql94-plperl/Makefile
|
|
# used by databases/postgresql94-plpython/Makefile
|
|
# used by databases/postgresql94-pltcl/Makefile
|
|
# used by databases/postgresql94-server/Makefile
|
|
|
|
DISTNAME= postgresql-9.4.23
|
|
CATEGORIES= databases
|
|
MASTER_SITES= ${MASTER_SITE_PGSQL:=source/v${PKGVERSION_NOREV}/}
|
|
EXTRACT_SUFX= .tar.bz2
|
|
|
|
MAINTAINER?= adam@NetBSD.org
|
|
HOMEPAGE= https://www.postgresql.org/
|
|
LICENSE= postgresql-license
|
|
|
|
CONFLICTS+= postgresql-[0-9]*
|
|
CONFLICTS+= postgresql[0-8][0-9]-[0-9]*
|
|
CONFLICTS+= postgresql9[01235-9]-[0-9]*
|
|
|
|
.if !empty(PKGNAME:M*-*-*)
|
|
module= ${PKGNAME:C/-[0-9].*$//:C/^.*-//}
|
|
CONFLICTS+= postgresql[0-8][0-9]-${module}-[0-9]*
|
|
CONFLICTS+= postgresql9[01235-9]-${module}-[0-9]*
|
|
.endif
|
|
|
|
DISTINFO_FILE?= ${.CURDIR}/../../databases/postgresql94/distinfo
|
|
COMMON_FILESDIR?= ${.CURDIR}/../../databases/postgresql94/files
|
|
PATCHDIR?= ${.CURDIR}/../../databases/postgresql94/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
|
|
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+= --with-libxml
|
|
CONFIGURE_ARGS+= --with-readline
|
|
CONFIGURE_ARGS+= --without-perl
|
|
CONFIGURE_ARGS+= --without-python
|
|
CONFIGURE_ARGS+= --without-tcl
|
|
|
|
# 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
|
|
|
|
# pkgsrc silently filters the --as-needed linker arg, but that makes
|
|
# it leak into the pgxs Makefiles and compromises manual building
|
|
# against PostgreSQL files installed. Disable it here to prevent
|
|
# that from happening.
|
|
.if ${OPSYS} == "SunOS" || ${OPSYS} == "Darwin"
|
|
CONFIGURE_ENV+= pgac_cv_prog_cc_ldflags__Wl___as_needed=no
|
|
.endif
|
|
|
|
# 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
|
|
.include "../../devel/zlib/buildlink3.mk"
|
|
.include "../../textproc/libxml2/buildlink3.mk"
|
|
|
|
.include "../../mk/readline.buildlink3.mk"
|
|
.if ${READLINE_TYPE} == "editline"
|
|
CONFIGURE_ARGS+= --with-libedit-preferred
|
|
.endif
|
|
|
|
.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/postgresql94/options.mk"
|