# $NetBSD: Makefile.common,v 1.3.4.2 2010/05/22 10:38:54 tron Exp $ # # used by databases/postgresql84-adminpack/Makefile # used by databases/postgresql84-client/Makefile # used by databases/postgresql84-plperl/Makefile # used by databases/postgresql84-plpython/Makefile # used by databases/postgresql84-pltcl/Makefile # used by databases/postgresql84-server/Makefile # # 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 .include "../../databases/postgresql84/Makefile.mirrors" DISTNAME?= postgresql-${DIST_VERS} CATEGORIES+= databases MASTER_SITES?= ${PGSQL_MIRRORS:=source/v${DIST_VERS}/} EXTRACT_SUFX= .tar.bz2 MAINTAINER?= adam@NetBSD.org HOMEPAGE?= http://www.postgresql.org/ CONFLICTS+= postgresql-[0-9]* CONFLICTS+= postgresql73-* CONFLICTS+= postgresql74-* CONFLICTS+= postgresql80-* CONFLICTS+= postgresql81-* CONFLICTS+= postgresql82-* CONFLICTS+= postgresql83-* DISTINFO_FILE?= ${.CURDIR}/../postgresql84/distinfo COMMON_FILESDIR?= ${.CURDIR}/../postgresql84/files PATCHDIR?= ${.CURDIR}/../postgresql84/patches # Version numbering scheme: # DIST_VERS version number on the postgresql distfile # BASE_VERS pkgsrc-mangled version number (convert pl -> .) # Note: Do not forget jdbc-postgresql84 when updating version DIST_VERS?= 8.4.4 BASE_VERS?= ${DIST_VERS} BUILDLINK_API_DEPENDS.postgresql84-client+= postgresql84-client>=${BASE_VERS} 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 .if !defined(PG_TEMPLATE.${OPSYS}) PG_TEMPLATE.${OPSYS}= ${LOWER_OPSYS} .endif PG_SUBPREFIX= # empty .if empty(PG_SUBPREFIX) PG_PREFIX= ${PREFIX} PLIST_SUBST+= PG_SUBPREFIX= .else PG_PREFIX= ${PREFIX}/${PG_SUBPREFIX} BUILD_DEFS+= PG_SUBPREFIX PLIST_SUBST+= PG_SUBPREFIX=${PG_SUBPREFIX}/ BUILDLINK_PASSTHRU_DIRS+= ${PG_PREFIX} .endif PG_DATA_DIR= ${PG_PREFIX}/share/postgresql PG_DOC_DIR= ${PG_PREFIX}/share/doc/postgresql PG_LOCALE_DIR= ${PG_PREFIX}/${PKGLOCALEDIR}/locale PG_ETC_DIR= ${PKG_SYSCONFDIR:S/^${PREFIX}\//${PG_PREFIX}\//} GNU_CONFIGURE= yes GNU_CONFIGURE_PREFIX= ${PG_PREFIX} CONFIGURE_ARGS+= --sysconfdir=${PG_ETC_DIR} CONFIGURE_ARGS+= --datadir=${PG_DATA_DIR} CONFIGURE_ARGS+= --localedir=${PG_LOCALE_DIR} CONFIGURE_ARGS+= --with-docdir=${PG_DOC_DIR} CONFIGURE_ARGS+= --with-template=${PG_TEMPLATE.${OPSYS}} CONFIGURE_ARGS+= --without-readline CONFIGURE_ARGS+= --without-zlib CONFIGURE_ARGS+= --enable-nls CONFIGURE_ARGS+= --without-perl CONFIGURE_ARGS+= --without-python CONFIGURE_ARGS+= --without-tcl # Enable Bonjour on Mac OS X .if ${OPSYS} == "Darwin" CONFIGURE_ARGS+= --with-bonjour .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 FILES_SUBST+= PG_PREFIX=${PG_PREFIX:Q} .include "../../devel/gettext-lib/buildlink3.mk" .if !defined(META_PACKAGE) post-extract: cp -f ${COMMON_FILESDIR}/Makefile.custom ${WRKSRC}/src/Makefile.custom cp -f ${COMMON_FILESDIR}/Makefile.libtool ${WRKSRC}/src/Makefile.shlib . 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 # 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 (hardcoded in the # PostgreSQL sources). Please don't change this value unless you know # what you are doing. BUILD_DEFS+= PGSQL_BLCKSZ .if defined(PGSQL_BLCKSZ) .PHONY: pgsql-blcksz pre-configure: pgsql-blcksz pgsql-blcksz: for file in ${WRKSRC}/src/include/pg_config_manual.h; do \ ${SED} -e "/^#define[ ]*BLCKSZ[ ]*/s/^\(#define[ ]*BLCKSZ\).*/\1 ${PGSQL_BLCKSZ}/" $$file > $$file.new; \ ${MV} -f $$file.new $$file; \ done .endif