diff options
author | Li-Wen Hsu <lwhsu@FreeBSD.org> | 2020-06-27 19:27:19 +0000 |
---|---|---|
committer | Li-Wen Hsu <lwhsu@FreeBSD.org> | 2020-06-27 19:27:19 +0000 |
commit | df5b57eba2021fbd2c3de7bf587042b97fee578e (patch) | |
tree | 43c16f60116a6da737fc3e9ff5daf423d5c70731 /sysutils | |
parent | a5fba84033f174b155f7c0b05bf76d73192abdf3 (diff) | |
download | ports-df5b57eba2021fbd2c3de7bf587042b97fee578e.tar.gz ports-df5b57eba2021fbd2c3de7bf587042b97fee578e.zip |
Add option to enable Java bindings
PR: 247419
Submitted by: James Wright <james.wright@digital-chaos.com> maintainer
Differential Revision: https://reviews.freebsd.org/D25361
Notes
Notes:
svn path=/head/; revision=540631
Diffstat (limited to 'sysutils')
-rw-r--r-- | sysutils/apache-mesos/Makefile | 43 | ||||
-rw-r--r-- | sysutils/apache-mesos/distinfo | 8 | ||||
-rw-r--r-- | sysutils/apache-mesos/files/extra-patch-src_java_mesos.pom.in | 20 | ||||
-rw-r--r-- | sysutils/apache-mesos/files/maven-deps.pom | 53 |
4 files changed, 118 insertions, 6 deletions
diff --git a/sysutils/apache-mesos/Makefile b/sysutils/apache-mesos/Makefile index 21d5d0a38a81..23b016fc914f 100644 --- a/sysutils/apache-mesos/Makefile +++ b/sysutils/apache-mesos/Makefile @@ -2,10 +2,12 @@ PORTNAME= mesos PORTVERSION= 1.10.0 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= sysutils -MASTER_SITES= APACHE/mesos/${PORTVERSION} +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 @@ -65,9 +67,44 @@ CONFIGURE_ARGS= --disable-java \ INSTALL_TARGET= install-strip -OPTIONS_DEFINE= DEPLOY +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= mvn:devel/maven +JAVA_FETCH_DEPENDS= mvn: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.12.2 + +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> diff --git a/sysutils/apache-mesos/distinfo b/sysutils/apache-mesos/distinfo index fbc1d64ada23..7c570228003b 100644 --- a/sysutils/apache-mesos/distinfo +++ b/sysutils/apache-mesos/distinfo @@ -1,3 +1,5 @@ -TIMESTAMP = 1590786317 -SHA256 (mesos-1.10.0.tar.gz) = f4b9e8a1e9f905334adf4d349a2ed33a4cfa43278381cd34fb4fc7e9df9e12a1 -SIZE (mesos-1.10.0.tar.gz) = 71760072 +TIMESTAMP = 1593259602 +SHA256 (apache-mesos/mesos-1.10.0.tar.gz) = f4b9e8a1e9f905334adf4d349a2ed33a4cfa43278381cd34fb4fc7e9df9e12a1 +SIZE (apache-mesos/mesos-1.10.0.tar.gz) = 71760072 +SHA256 (apache-mesos/mesos-maven-deps-1.10.0.tar.gz) = b119a72e99499b67e1455a32bbbba80a15ae5ef21315eab76119f941f96f3d36 +SIZE (apache-mesos/mesos-maven-deps-1.10.0.tar.gz) = 36000010 diff --git a/sysutils/apache-mesos/files/extra-patch-src_java_mesos.pom.in b/sysutils/apache-mesos/files/extra-patch-src_java_mesos.pom.in new file mode 100644 index 000000000000..b674ea07205b --- /dev/null +++ b/sysutils/apache-mesos/files/extra-patch-src_java_mesos.pom.in @@ -0,0 +1,20 @@ +--- src/java/mesos.pom.in.orig 2020-06-16 03:05:20 UTC ++++ src/java/mesos.pom.in +@@ -36,7 +36,7 @@ + <dependency> + <artifactId>protobuf-java</artifactId> + <groupId>com.google.protobuf</groupId> +- <version>3.5.0</version> ++ <version>@PROTOBUF_VERSION@</version> + </dependency> + </dependencies> + <build> +@@ -168,7 +168,7 @@ + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-dependency-plugin</artifactId> +- <version>2.8</version> ++ <version>3.1.2</version> + <executions> + <execution> + <id>copy-dependencies</id> diff --git a/sysutils/apache-mesos/files/maven-deps.pom b/sysutils/apache-mesos/files/maven-deps.pom new file mode 100644 index 000000000000..31a1db2e4e99 --- /dev/null +++ b/sysutils/apache-mesos/files/maven-deps.pom @@ -0,0 +1,53 @@ +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + <modelVersion>4.0.0</modelVersion> + <groupId>org.apache.mesos</groupId> + <artifactId>mesos</artifactId> + <name>mesos</name> + <version>1.10.0</version> + <description>The Apache Mesos Java API jar.</description> + <url>http://mesos.apache.org</url> + <parent> + <groupId>org.apache</groupId> + <artifactId>apache</artifactId> + <version>11</version> + </parent> + <dependencies> + <dependency> + <artifactId>protobuf-java</artifactId> + <groupId>com.google.protobuf</groupId> + <version>${env.PROTOBUF_VERSION}</version> + </dependency> + <dependency> + <artifactId>apache-jar-resource-bundle</artifactId> + <groupId>org.apache</groupId> + <version>1.4</version> + </dependency> + </dependencies> + <build> + <plugins> + <plugin> + <artifactId>maven-dependency-plugin</artifactId> + <version>3.1.2</version> + </plugin> + <plugin> + <artifactId>maven-gpg-plugin</artifactId> + </plugin> + <plugin> + <artifactId>maven-javadoc-plugin</artifactId> + </plugin> + <plugin> + <artifactId>maven-shade-plugin</artifactId> + <version>2.2</version> + </plugin> + <plugin> + <artifactId>maven-source-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> + <version>1.8</version> + </plugin> + </plugins> + </build> +</project> + |