openbsd-ports/databases/postgresql-previous/Makefile
sthen 5173391ce6 postgresql-previous doesn't need Python; it was copied from the main
PostgreSQL port where it's used for building plpython, so remove the build
dependency (and as a bonus, it wasn't synced with the py27->py3 switch,
so this gets rid of another py27 user).
2022-11-16 17:27:29 +00:00

111 lines
3.1 KiB
Makefile

COMMENT= PostgreSQL RDBMS (previous version, for pg_upgrade)
VERSION= 14.6
REVISION= 0
DISTNAME= postgresql-${VERSION}
PKGNAME= postgresql-previous-${VERSION}
CATEGORIES= databases
SHARED_LIBS= ecpg 7.10 \
ecpg_compat 4.10 \
pgtypes 4.9 \
pq 6.13
HOMEPAGE= https://www.postgresql.org/
MAINTAINER= Jeremy Evans <jeremy@openbsd.org>
# BSD
PERMIT_PACKAGE= Yes
WANTLIB = c crypto curses execinfo m perl readline ssl xml2 z
MASTER_SITES= https://ftp.postgresql.org/pub/source/v${VERSION}/ \
ftp://ftp.postgresql.org/pub/source/v${VERSION}/
MAKE_FILE= GNUmakefile
SUBST_VARS= VERSION
USE_GMAKE= Yes
CONFIGURE_STYLE=gnu
POSTGRESQL_DIR= postgresql-${VERSION:C/.[0-9]+$//}
CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \
LDFLAGS="-L${LOCALBASE}/lib"
CONFIGURE_ARGS= --with-openssl=/usr \
--with-perl \
--without-python \
--with-pam=no \
--with-uuid=bsd \
--enable-integer-datetimes \
--bindir="${PREFIX}/bin/${POSTGRESQL_DIR}" \
--libdir="${PREFIX}/lib/${POSTGRESQL_DIR}" \
--includedir="${PREFIX}/include/${POSTGRESQL_DIR}" \
--datadir="${PREFIX}/share/${POSTGRESQL_DIR}" \
--with-includes="${INCLUDES}" \
--with-libraries="${LOCALBASE}/lib/" \
--with-system-tzdata="/usr/share/zoneinfo" \
--with-openssl \
--with-libxml \
--disable-thread-safety
# There is no spinlock support for hppa and alpha yet. Until we have access to
# a system to get this working, disable them for now. There is
# (apparently) a serious performance hit doing this.
.if ${MACHINE_ARCH} == "alpha" || ${MACHINE_ARCH} == "hppa" || ${MACHINE_ARCH} == "riscv64"
CONFIGURE_ARGS+=--disable-spinlocks
.endif
# To avoid problems with missed floating point overflow checks.
# pgsql 10.6+ refuses to build on i386 clang unless -msse2 is set.
# If clang gains "-fexcess-precision=standard" support then this
# should be removed.
MODULES+= gcc4
MODGCC4_ARCHS= i386
MODGCC4_LANGS= c
MODGNU_CONFIG_GUESS_DIRS= ${WRKSRC}/config
ALL_TARGET= all
INSTALL_TARGET= install
LIB_DEPENDS = textproc/libxml
MAKE_ENV= LIBpq_MAJOR=${LIBpq_VERSION:R} \
LIBpq_MINOR=${LIBpq_VERSION:E} \
LIBecpg_MAJOR=${LIBecpg_VERSION:R} \
LIBecpg_MINOR=${LIBecpg_VERSION:E} \
LIBecpg_compat_MAJOR=${LIBecpg_compat_VERSION:R} \
LIBecpg_compat_MINOR=${LIBecpg_compat_VERSION:E} \
LIBpgtypes_MAJOR=${LIBpgtypes_VERSION:R} \
LIBpgtypes_MINOR=${LIBpgtypes_VERSION:E}
# Work around Makefile issue where it attempts to rebuild
# the documentation even if it is not necessary.
pre-build:
touch ${WRKSRC}/doc/src/sgml/*-stamp
post-build:
cd ${WRKSRC}/contrib && gmake
SUBST_VARS += POSTGRESQL_DIR
INSTALL_REPLACE = 's/^install_bin = .*$$/ifdef BSD_INSTALL_SCRIPT\ninstall_bin
INSTALL_REPLACE += = \$$\(subst -m 755,,\$${BSD_INSTALL_SCRIPT}\)
INSTALL_REPLACE += \nelse\ninstall_bin = \/usr\/bin\/install -c -o ${BINOWN}
INSTALL_REPLACE += -g ${BINGRP}\nendif/'
post-install:
cd ${WRKSRC}/contrib && gmake install
perl -i -pe ${INSTALL_REPLACE} \
${PREFIX}/lib/${POSTGRESQL_DIR}/pgxs/src/Makefile.global
# avoid conflict between extension example files and
# databases/postgresql,-docs
rm -R ${PREFIX}/share/doc/postgresql
.include <bsd.port.mk>