1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-03 06:04:53 +00:00
freebsd-ports/sysutils/apache-mesos/Makefile
Daniel Engberg 0c0035f36c sysutils/apache-mesos: Deprecate and set expiration date to 2024-05-31
Marked BROKEN for over a year

Approved by:	portmgr (blanket)
2024-05-11 16:35:29 +02:00

118 lines
3.6 KiB
Makefile

PORTNAME= mesos
PORTVERSION= 1.11.0
PORTREVISION= 16
CATEGORIES= sysutils
MASTER_SITES= APACHE/mesos/${PORTVERSION}:mesos
PKGNAMEPREFIX= apache-
DISTFILES= ${PORTNAME}-${PORTVERSION}${EXTRACT_SUFX}:mesos
DIST_SUBDIR= ${PKGNAMEPREFIX}${PORTNAME}
MAINTAINER= james.wright@digital-chaos.com
COMMENT= Cluster manager providing resource isolation and sharing
WWW= https://mesos.apache.org/
LICENSE= APACHE20
LICENSE_FILE= ${WRKSRC}/LICENSE
BROKEN= fails to build, configure: error: Cannot find the ELFIO headers
DEPRECATED= Marked BROKEN for over a year
EXPIRATION_DATE=2024-05-31
BUILD_DEPENDS= boost-libs>0:devel/boost-libs \
elfio>0:devel/elfio \
http-parser>0:www/http-parser \
leveldb>0:databases/leveldb \
picojson>0:devel/picojson \
protobuf>0:devel/protobuf \
rapidjson>0:devel/rapidjson \
libzookeeper>0:devel/libzookeeper
LIB_DEPENDS= libapr-1.so:devel/apr1 \
libcurl.so:ftp/curl \
libgpr.so:devel/grpc \
libglog.so:devel/glog \
libhttp_parser.so:www/http-parser \
libev.so:devel/libev \
libleveldb.so:databases/leveldb \
libprotobuf.so:devel/protobuf \
libsasl2.so:security/cyrus-sasl2 \
libzookeeper_mt.so:devel/libzookeeper
.if ${WITH_SUBVERSION_VER:U} == LTS
LIB_DEPENDS+= libsvn_delta-1.so:devel/subversion-lts
LIB_DEPENDS+= libsvn_subr-1.so:devel/subversion-lts
.else
LIB_DEPENDS+= libsvn_delta-1.so:devel/subversion
LIB_DEPENDS+= libsvn_subr-1.so:devel/subversion
.endif
USES= cpe gmake libarchive libtool python:run shebangfix
CPE_VENDOR= apache
USE_LDCONFIG= yes
SHEBANG_FILES= src/cli/mesos-cat \
src/cli/mesos-ps \
src/cli/mesos-scp \
src/cli/mesos-tail
GNU_CONFIGURE= yes
CONFIGURE_ARGS= --disable-java \
--disable-python \
--disable-werror \
--with-apr=${LOCALBASE} \
--with-boost=${LOCALBASE} \
--with-elfio=${LOCALBASE} \
--with-glog=${LOCALBASE} \
--with-grpc=${LOCALBASE} \
--with-http_parser=${LOCALBASE} \
--with-leveldb=${LOCALBASE} \
--with-libarchive=${LOCALBASE} \
--with-libev=${LOCALBASE} \
--with-protobuf=${LOCALBASE} \
--with-picojson=${LOCALBASE} \
--with-rapidjson=${LOCALBASE} \
--with-sasl=${LOCALBASE} \
--with-svn=${LOCALBASE} \
--with-zookeeper=${LOCALBASE}
INSTALL_TARGET= install-strip
OPTIONS_DEFINE= DEPLOY JAVA
OPTIONS_SUB= yes
DEPLOY_DESC= Install deploy scripts
JAVA_DESC= Enable Java bindings
JAVA_CONFIGURE_ENABLE= java
JAVA_USE= java=yes
JAVA_BUILD_DEPENDS= maven>0:devel/maven
JAVA_FETCH_DEPENDS= maven>0:devel/maven
JAVA_CONFIGURE_ENV= PROTOBUF_JAR="${MAVEN_REPO}/com/google/protobuf/protobuf-java/${PROTOBUF_VERSION}/protobuf-java-${PROTOBUF_VERSION}.jar"
JAVA_MAKE_ENV= MAVEN_OPTS="${MAVEN_OPTS}"
JAVA_EXTRA_PATCHES= ${PATCHDIR}/extra-patch-src_java_mesos.pom.in
# REVIEW: Can we figure out the current Protobuf version in ports instead of hardcoding???
PROTOBUF_VERSION= 3.14.0
MAVEN_CMD= mvn
MAVEN_REPO= ${WRKDIR}/mesos-maven-deps-${PORTVERSION}
MAVEN_OPTS= -Dmaven.repo.local=${MAVEN_REPO}
MAVEN_ENV= PROTOBUF_VERSION="${PROTOBUF_VERSION}" MAVEN_OPTS="${MAVEN_OPTS}"
MAVEN_POM= ${FILESDIR}/maven-deps.pom
DEV_BUILD_MODE= no
.if (${DEV_BUILD_MODE} == "yes")
# Fetch Maven build dependencies upfront into local Maven Repo
# Needs to be after extract (as WRKDIR gets wiped) but before Configure
post-extract-JAVA-on:
@${SETENV} ${MAVEN_ENV} \
${MAVEN_CMD} -f ${MAVEN_POM} dependency:go-offline
.else
MASTER_SITES+= https://github.com/Digital-Chaos/mesos-maven-deps/archive/${DISTVERSION}/:maven
DISTFILES+= mesos-maven-deps-${DISTVERSION}${EXTRACT_SUFX}:maven
.endif
# Replace Protobuf version in src/java/mesos.pom.in
do-patch-JAVA-on:
@${REINPLACE_CMD} -e 's|@PROTOBUF_VERSION@|${PROTOBUF_VERSION}|g' ${WRKSRC}/src/java/mesos.pom.in
.include <bsd.port.mk>