summaryrefslogtreecommitdiff
path: root/databases/postgresql95/Makefile.common
diff options
context:
space:
mode:
Diffstat (limited to 'databases/postgresql95/Makefile.common')
-rw-r--r--databases/postgresql95/Makefile.common136
1 files changed, 136 insertions, 0 deletions
diff --git a/databases/postgresql95/Makefile.common b/databases/postgresql95/Makefile.common
new file mode 100644
index 00000000000..6d8e986dcb1
--- /dev/null
+++ b/databases/postgresql95/Makefile.common
@@ -0,0 +1,136 @@
+# $NetBSD: Makefile.common,v 1.1 2016/02/25 21:37:35 tnn 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/postgresql95-adminpack/Makefile
+# used by databases/postgresql95-client/Makefile
+# used by databases/postgresql95-datatypes/Makefile
+# used by databases/postgresql95-dblink/Makefile
+# used by databases/postgresql95-docs/Makefile
+# used by databases/postgresql95-fuzzystrmatch/Makefile
+# used by databases/postgresql95-monitoring/Makefile
+# used by databases/postgresql95-pgcrypto/Makefile
+# used by databases/postgresql95-plperl/Makefile
+# used by databases/postgresql95-plpython/Makefile
+# used by databases/postgresql95-pltcl/Makefile
+# used by databases/postgresql95-replicationtools/Makefile
+# used by databases/postgresql95-server/Makefile
+# used by databases/postgresql95-upgrade/Makefile
+
+DISTNAME= postgresql-9.5.1
+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[012346-9]-[0-9]*
+
+.if !empty(PKGNAME:M*-*-*)
+module= ${PKGNAME:C/-[0-9].*$//:C/^.*-//}
+CONFLICTS+= postgresql[0-8][0-9]-${module}-[0-9]*
+CONFLICTS+= postgresql9[012346-9]-${module}-[0-9]*
+.endif
+
+DISTINFO_FILE?= ${.CURDIR}/../../databases/postgresql95/distinfo
+COMMON_FILESDIR?= ${.CURDIR}/../../databases/postgresql95/files
+PATCHDIR?= ${.CURDIR}/../../databases/postgresql95/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/postgresql95/options.mk"