pkgsrc/databases/postgresql96/Makefile.common
adam c80d0feeb2 The PostgreSQL Global Development Group has released an update to all supported versions of our database system, including 9.6.5, 9.5.9, 9.4.14, 9.3.19, and 9.2.23.
This release includes fixes that prevent a crash in pg_restore when using parallel mode. It also patches over a few other bugs reported since the last releases in August.

Additionally, in 9.4.14 only, there is a fix to an issue with walsenders preventing primary-server shutdown unless immediate shutdown mode is used.

Users should plan to update at the next convenient downtime.
2017-09-04 19:33:43 +00:00

129 lines
4.3 KiB
Text

# $NetBSD: Makefile.common,v 1.6 2017/09/04 19:33:43 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/postgresql96-client/Makefile
# used by databases/postgresql96-contrib/Makefile
# used by databases/postgresql96-docs/Makefile
# used by databases/postgresql96-plperl/Makefile
# used by databases/postgresql96-plpython/Makefile
# used by databases/postgresql96-pltcl/Makefile
# used by databases/postgresql96-server/Makefile
DISTNAME= postgresql-9.6.5
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[012345789]-[0-9]*
.if !empty(PKGNAME:M*-*-*)
module= ${PKGNAME:C/-[0-9].*$//:C/^.*-//}
CONFLICTS+= postgresql[0-8][0-9]-${module}-[0-9]*
CONFLICTS+= postgresql9[012345789]-${module}-[0-9]*
.endif
DISTINFO_FILE?= ${.CURDIR}/../../databases/postgresql96/distinfo
COMMON_FILESDIR?= ${.CURDIR}/../../databases/postgresql96/files
PATCHDIR?= ${.CURDIR}/../../databases/postgresql96/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-readline
CONFIGURE_ARGS+= --without-perl
CONFIGURE_ARGS+= --without-python
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
# XXX work around core dumps with the native libedit
USE_GNU_READLINE= yes
.include "../../devel/readline/buildlink3.mk"
.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/postgresql96/options.mk"