Changeset View
Changeset View
Standalone View
Standalone View
head/devel/bazel/Makefile
# Created by: Klaus Aehlig <aehlig@linta.de> | # Created by: Klaus Aehlig <aehlig@linta.de> | ||||
# $FreeBSD$ | # $FreeBSD$ | ||||
PORTNAME= bazel | PORTNAME= bazel | ||||
PORTVERSION= 0.5.3 | PORTVERSION= 0.7.0 | ||||
CATEGORIES= devel java | CATEGORIES= devel java | ||||
MASTER_SITES= https://storage.googleapis.com/bazel/${PORTVERSION}/rc${FINALRC}/ | MASTER_SITES= https://storage.googleapis.com/bazel/${PORTVERSION}/rc${FINALRC}/ | ||||
DISTNAME= bazel-${PORTVERSION}rc${FINALRC}-dist | DISTNAME= bazel-${PORTVERSION}rc${FINALRC}-dist | ||||
MAINTAINER?= aehlig@linta.de | MAINTAINER?= aehlig@linta.de | ||||
COMMENT= Fast and correct build system | COMMENT= Fast and correct build system | ||||
LICENSE= APACHE20 | LICENSE= APACHE20 | ||||
LICENSE_FILE= ${WRKSRC}/LICENSE | LICENSE_FILE= ${WRKSRC}/LICENSE | ||||
BROKEN_armv6= fails to package: cp: bazel: No such file or directory | BROKEN_armv6= fails to package: cp: bazel: No such file or directory | ||||
BUILD_DEPENDS= bash:shells/bash \ | BUILD_DEPENDS= bash:shells/bash \ | ||||
zip:archivers/zip | zip:archivers/zip | ||||
# In bazel, a release is always code-wise identical to the final release candidate. | # In bazel, a release is always code-wise identical to the final release candidate. | ||||
# Hence we can also download that one and so have a simple way to also test earlier release | # Hence we can also download that one and so have a simple way to also test earlier release | ||||
# candidates. | # candidates. | ||||
FINALRC= 4 | FINALRC= 2 | ||||
USES= shebangfix zip | USES= shebangfix zip:infozip python | ||||
SHEBANG_REGEX= .*(sh|txt|_stub|stub_.*|bazel|get_workspace_status|protobuf_support|_so) | SHEBANG_REGEX= .*(sh|txt|_stub|stub_.*|bazel|get_workspace_status|protobuf_support|_so) | ||||
USE_JAVA= yes | USE_JAVA= yes | ||||
JAVA_VENDOR= openjdk | JAVA_VENDOR= openjdk | ||||
JAVA_VERSION= 1.8 | JAVA_VERSION= 1.8 | ||||
JAVA_BUILD= yes | JAVA_BUILD= yes | ||||
JAVA_RUN= yes | JAVA_RUN= yes | ||||
NO_WRKSUBDIR= YES | NO_WRKSUBDIR= YES | ||||
Show All 15 Lines | |||||
# Have the location of the system-wide rc file reside ${ETCDIR}. | # Have the location of the system-wide rc file reside ${ETCDIR}. | ||||
# Also adapt the sample file to disable persistent java workers as they | # Also adapt the sample file to disable persistent java workers as they | ||||
# do not work reliably on FreeBSD. | # do not work reliably on FreeBSD. | ||||
post-patch: | post-patch: | ||||
@${REINPLACE_CMD} \ | @${REINPLACE_CMD} \ | ||||
-e "s|\"/etc/bazel.bazelrc\"|\"${ETCDIR}/bazel.bazelrc\"|" \ | -e "s|\"/etc/bazel.bazelrc\"|\"${ETCDIR}/bazel.bazelrc\"|" \ | ||||
${WRKSRC}/src/main/cpp/blaze_util_posix.cc | ${WRKSRC}/src/main/cpp/blaze_util_posix.cc | ||||
@${ECHO_CMD} build --strategy=Javac=standalone >> ${WRKSRC}/scripts/packages/debian/bazel.bazelrc | @${ECHO_CMD} build --strategy=Javac=standalone >> ${WRKSRC}/scripts/packages/bazel.bazelrc | ||||
@${ECHO_CMD} build --python_path=${PYTHON_CMD} >> ${WRKSRC}/scripts/packages/bazel.bazelrc | |||||
@${REINPLACE_CMD} \ | |||||
-e 's|\$$command|$$command --python_path=${PYTHON_CMD}|' \ | |||||
${WRKSRC}/scripts/bootstrap/bootstrap.sh | |||||
@${REINPLACE_CMD} \ | |||||
-e 's|/usr/bin/env python|${PYTHON_CMD}|' \ | |||||
${WRKSRC}/src/main/java/com/google/devtools/build/lib/bazel/rules/python/BazelPythonSemantics.java | |||||
post-patch-CLANG38-on: | post-patch-CLANG38-on: | ||||
@${REINPLACE_CMD} -e 's=/usr/lib/clang=${LOCALBASE}/llvm38/lib/clang=' \ | @${REINPLACE_CMD} -e 's=/usr/lib/clang=${LOCALBASE}/llvm38/lib/clang=' \ | ||||
-e 's=/usr/bin/clang=${LOCALBASE}/bin/clang38=' ${WRKSRC}/tools/cpp/CROSSTOOL | -e 's=/usr/bin/clang=${LOCALBASE}/bin/clang38=' ${WRKSRC}/tools/cpp/CROSSTOOL | ||||
do-build: | do-build: | ||||
@${MKDIR} ${WRKDIR}/bazel_tmp | @${MKDIR} ${WRKDIR}/bazel_tmp | ||||
(if [ -z "$${SOURCE_DATE_EPOCH}" ] ; \ | (if [ -z "$${SOURCE_DATE_EPOCH}" ] ; \ | ||||
then SOURCE_DATE_EPOCH=`grep TIMESTAMP ${DISTINFO_FILE} \ | then SOURCE_DATE_EPOCH=`grep TIMESTAMP ${DISTINFO_FILE} \ | ||||
| ${SED} -e 's/[^0-9]//g'`; \ | | ${SED} -e 's/[^0-9]//g'`; \ | ||||
fi ; \ | fi ; \ | ||||
cd ${WRKSRC} && \ | cd ${WRKSRC} && \ | ||||
${SETENV} BAZEL_SH=${LOCALBASE}/bin/bash \ | ${SETENV} BAZEL_SH=${LOCALBASE}/bin/bash \ | ||||
TMPDIR=${WRKDIR}/bazel_tmp \ | TMPDIR=${WRKDIR}/bazel_tmp \ | ||||
EMBED_LABEL='${PORTVERSION}' \ | EMBED_LABEL='${PORTVERSION}' \ | ||||
PATH=${LOCALBASE}/bin:$$PATH \ | |||||
SOURCE_DATE_EPOCH=$${SOURCE_DATE_EPOCH} \ | SOURCE_DATE_EPOCH=$${SOURCE_DATE_EPOCH} \ | ||||
${LOCALBASE}/bin/bash ./compile.sh) | ${LOCALBASE}/bin/bash ./compile.sh) | ||||
do-install: | do-install: | ||||
${INSTALL_PROGRAM} ${WRKSRC}/output/bazel ${STAGEDIR}${PREFIX}/bin | ${INSTALL_PROGRAM} ${WRKSRC}/output/bazel ${STAGEDIR}${PREFIX}/bin | ||||
@${MKDIR} ${STAGEDIR}${ETCDIR} | @${MKDIR} ${STAGEDIR}${ETCDIR} | ||||
${INSTALL_DATA} ${WRKSRC}/scripts/packages/debian/bazel.bazelrc ${STAGEDIR}${ETCDIR}/bazel.bazelrc.sample | ${INSTALL_DATA} ${WRKSRC}/scripts/packages/bazel.bazelrc ${STAGEDIR}${ETCDIR}/bazel.bazelrc.sample | ||||
.include <bsd.port.post.mk> | .include <bsd.port.post.mk> |