Files
ports/sysutils/cfengine324/Makefile
T
Xin LI 5f9d389f29 databases/lmdb0: Add port for LMDB 0.9.x legacy ABI
LMDB 1.0 introduced an incompatible on-disk format change and subtle
API breakage: applications that compiled cleanly against 1.0 headers
could fail silently at run time. Known affected ports include dns/knot3,
mail/bogofilter, and mail/postfix; the postfix issue has been confirmed
upstream. Linux distributions such as Arch Linux have observed the same
breakage. Samba can also be affected in certain configurations.

Because the regression is not detectable in an -exp build run -- the
postfix failure only manifests at run time, and bogofilter was caught
only because post-build self-tests happen to exercise this path -- we
cannot rely on package builds to validate the 1.0 upgrade.

This commit introduces databases/lmdb0 as a holding port for the 0.9.35
release, pinned to the 0.x branch with PORTSCOUT=limit:^0. and mutually
conflicting with databases/lmdb, which retains 1.0. The two packages
cannot be installed simultaneously, but having lmdb0 available means:

* Ports known to require the 0.9 ABI can declare an explicit dependency
  on databases/lmdb0 until they are validated against 1.0.
* Users with existing databases in the 0.9 format can still access the
  mdb_dump and mdb_load utilities to migrate data before upgrading.
* The package conflict prevents accidental mixing.

All 50 direct dependents of databases/lmdb are redirected to
databases/lmdb0 for now with a PORTREVISION bump, effectively restoring
the tree to the state prior to the LMDB 1.0 update. Once all dependent
ports are validated against LMDB 1.0, they will be moved back to
databases/lmdb and databases/lmdb0 will be removed.

PR:             ports/296530
2026-07-06 08:57:32 -07:00

71 lines
1.9 KiB
Makefile

PORTNAME= cfengine
DISTVERSION= 3.24.1
PORTREVISION= 2
CATEGORIES= sysutils
MASTER_SITES= https://s3.amazonaws.com/cfengine-package-repos/tarballs/
DISTNAME= ${PORTNAME}-community-${DISTVERSION}
MAINTAINER= cy@FreeBSD.org
COMMENT= Systems administration tool for networks
WWW= https://cfengine.com/
WRKSRC= ${WRKDIR}/${PORTNAME}-${DISTVERSION}
LICENSE= GPLv3
CPE_VENDOR= gnu
CONFLICTS= cfengine cfengine3[0-9] cfengine3[0-9][0-9]
.if !defined(MASTERDIR)
PKGNAMESUFFIX= 324
.endif
FETCH_BEFORE_ARGS= -o ${DISTDIR}/${DISTFILES}
USE_RC_SUBR= cf-execd cf-serverd cf-monitord
MAKE_JOBS_UNSAFE= yes
USE_LDCONFIG= yes
GNU_CONFIGURE= yes
USES= autoreconf cpe gmake gnome libtool localbase shebangfix ssl
USE_GNOME= libxml2
SHEBANG_FILES= examples/remake_outputs.pl
CFLAGS+= -Wno-return-type -fcommon
# EXAMPLESDIR= ${PREFIX}/share/examples/cfengine3
DOCSDIR= ${PREFIX}/share/doc/cfengine
MAKE_ENV= EXPLICIT_VERSION=${PORTVERSION}
CONFIGURE_ENV= EXPLICIT_VERSION=${PORTVERSION}
CONFIGURE_ARGS= --docdir=${DOCSDIR} \
--htmldir=${DOCSDIR}/html \
--libexecdir=${PREFIX}/libexec \
--libdir=${PREFIX}/libexec \
--mandir=${PREFIX}/man \
--with-workdir=/var/cfengine \
--with-pcre2=${LOCALBASE} \
--with-lmdb=${LOCALBASE} \
--enable-fhs
INSTALL_TARGET= install-strip
LIB_DEPENDS+= libpcre.so:devel/pcre \
libpcre2-posix.so:devel/pcre2 \
liblmdb.so:databases/lmdb0 \
libyaml.so:textproc/libyaml \
libcurl.so:ftp/curl
OPTIONS_DEFINE= PGSQL MYSQL LIBVIRT
PGSQL_USES= pgsql
PGSQL_CONFIGURE_WITH= --with-postgresql=${LOCALBASE}
PGSQL_CONFIGURE_OFF= --without-postgresql
MYSQL_USES= mysql
MYSQL_CONFIGURE_WITH= --with-mysql=${LOCALBASE}
MYSQL_CONFIGURE_OFF= --without-mysql
MYSQL_LIB_DEPENDS= libmysqlclient.so:${_MYSQL_CLIENT}
MYSQL_LDFLAGS= -L${LOCALBASE}/lib/mysql
LIBVIRT_CONFIGURE_WITH= --with-libvirt=${LOCALBASE}
LIBVIRT_LIB_DEPENDS+= libvirt.so:devel/libvirt
.include <bsd.port.mk>