# $NetBSD: Makefile.common,v 1.3 2017/05/12 19:37:55 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: # -postgresql client-side interface to PostgreSQL # postgresql- 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.3 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[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"