svn commit: r390939 - head/devel/relx
Jimmy Olgeni
olgeni at FreeBSD.org
Mon Jun 29 20:48:56 UTC 2015
Author: olgeni
Date: Mon Jun 29 20:48:54 2015
New Revision: 390939
URL: https://svnweb.freebsd.org/changeset/ports/390939
Log:
Rebuild devel/relx using port dependencies rather than the dependency
tarball. We also use rebar3 from ports.
This gets us the full relx Erlang app, with its own beam files that
can be used elsewhere.
Added:
head/devel/relx/pkg-plist (contents, props changed)
Modified:
head/devel/relx/Makefile
head/devel/relx/distinfo
Modified: head/devel/relx/Makefile
==============================================================================
--- head/devel/relx/Makefile Mon Jun 29 20:44:14 2015 (r390938)
+++ head/devel/relx/Makefile Mon Jun 29 20:48:54 2015 (r390939)
@@ -2,12 +2,12 @@
PORTNAME= relx
PORTVERSION= 3.0.0
+PORTREVISION= 1
DISTVERSIONPREFIX=v
CATEGORIES= devel
MASTER_SITES+= http://olgeni.olgeni.com/~olgeni/distfiles/:deps \
LOCAL/olgeni:deps
DISTFILES= ${DISTNAME}${EXTRACT_SUFX} \
- relx-deps-2.tar.gz:deps \
relx-cache-2.tar.gz:deps
MAINTAINER= olgeni at FreeBSD.org
@@ -15,30 +15,57 @@ COMMENT= Sane, simple release creation f
LICENSE= APACHE20
-BUILD_DEPENDS= ${LOCALBASE}/bin/erl:${PORTSDIR}/lang/erlang
-RUN_DEPENDS= ${LOCALBASE}/bin/erl:${PORTSDIR}/lang/erlang
+BUILD_DEPENDS= ${LOCALBASE}/bin/erl:${PORTSDIR}/lang/erlang \
+ rebar3>=0:${PORTSDIR}/devel/rebar3 \
+ erlang-bbmustache>=0:${PORTSDIR}/devel/erlang-bbmustache \
+ erlang-erlware_commons>=0:${PORTSDIR}/devel/erlang-erlware_commons \
+ erlang-getopt>=0:${PORTSDIR}/devel/erlang-getopt \
+ erlang-providers>=0:${PORTSDIR}/devel/erlang-providers \
+ erlang-jsx>=0:${PORTSDIR}/devel/erlang-jsx \
+ erlang-rebar3_hex>=0:${PORTSDIR}/devel/erlang-rebar3_hex \
+ erlang-ssl_verify_hostname>=0:${PORTSDIR}/devel/erlang-ssl_verify_hostname
+RUN_DEPENDS:= ${BUILD_DEPENDS}
+
+PLIST_SUB= VERSION="${PORTVERSION}"
USE_GITHUB= yes
GH_ACCOUNT= erlware
-PLIST_FILES= bin/${PORTNAME}
-
# rebar3 insists on downloading dependencies, and some kind of package
# index into the user's HOME. We need to trick it into behaving by
# providing both before building.
post-extract:
- @${CP} -R ${WRKDIR}/_build ${WRKSRC}/
@${LN} -s cache ${WRKDIR}/.cache
-post-patch:
- @${REINPLACE_CMD} -e "s/%%PORTVERSION%%/${PORTVERSION}/" ${WRKSRC}/src/relx.app.src
- @${RM} ${WRKSRC}/src/*.bak ${WRKSRC}/src/*.orig
+pre-build:
+ @${MKDIR} ${WRKSRC}/_build/default/lib
+ @${MKDIR} ${WRKSRC}/_build/default/plugins
+.for lib in bbmustache erlware_commons getopt providers
+ @${LN} -s ${PREFIX}/lib/erlang/lib/$(lib)-* ${WRKSRC}/_build/default/lib/$(lib)
+.endfor
+.for plugin in jsx rebar3_hex ssl_verify_hostname
+ @${LN} -s ${PREFIX}/lib/erlang/lib/$(plugin)-* ${WRKSRC}/_build/default/plugins/$(plugin)
+.endfor
do-build:
- @cd ${WRKSRC} && HOME=${WRKDIR} ./rebar3 escriptize
+ @${RM} ${WRKSRC}/rebar.lock
+ @cd ${WRKSRC} && HOME=${WRKDIR} rebar3 compile
+ @${RM} ${WRKSRC}/rebar.lock
+ @cd ${WRKSRC} && HOME=${WRKDIR} rebar3 escriptize
do-install:
- ${INSTALL_SCRIPT} ${WRKSRC}/_build/default/bin/${PORTNAME} ${STAGEDIR}${PREFIX}/bin/
+ @${MKDIR} ${STAGEDIR}${DOCSDIR}
+ ${INSTALL_DATA} ${WRKSRC}/README.md ${STAGEDIR}${DOCSDIR}
+ @${MKDIR} ${STAGEDIR}${PREFIX}/lib/erlang/lib/${PORTNAME}-${PORTVERSION}
+ @${MKDIR} ${STAGEDIR}${PREFIX}/lib/erlang/lib/${PORTNAME}-${PORTVERSION}/ebin
+ @${MKDIR} ${STAGEDIR}${PREFIX}/lib/erlang/lib/${PORTNAME}-${PORTVERSION}/include
+ @${MKDIR} ${STAGEDIR}${PREFIX}/lib/erlang/lib/${PORTNAME}-${PORTVERSION}/priv
+ @${MKDIR} ${STAGEDIR}${PREFIX}/lib/erlang/lib/${PORTNAME}-${PORTVERSION}/src
+ ${INSTALL_DATA} ${WRKSRC}/include/* ${STAGEDIR}${PREFIX}/lib/erlang/lib/${PORTNAME}-${PORTVERSION}/include
+ ${INSTALL_DATA} ${WRKSRC}/src/* ${STAGEDIR}${PREFIX}/lib/erlang/lib/${PORTNAME}-${PORTVERSION}/src
+ ${INSTALL_DATA} ${WRKSRC}/_build/default/lib/relx/ebin/* ${STAGEDIR}${PREFIX}/lib/erlang/lib/${PORTNAME}-${PORTVERSION}/ebin
+ cd ${WRKSRC}/priv && ${COPYTREE_SHARE} \* ${STAGEDIR}${PREFIX}/lib/erlang/lib/${PORTNAME}-${PORTVERSION}/priv
+ ${INSTALL_SCRIPT} ${WRKSRC}/_build/default/bin/${PORTNAME} ${STAGEDIR}${PREFIX}/bin
.include <bsd.port.mk>
Modified: head/devel/relx/distinfo
==============================================================================
--- head/devel/relx/distinfo Mon Jun 29 20:44:14 2015 (r390938)
+++ head/devel/relx/distinfo Mon Jun 29 20:48:54 2015 (r390939)
@@ -1,6 +1,4 @@
SHA256 (erlware-relx-v3.0.0_GH0.tar.gz) = 5742ea33a221f54fa975291705b51d779347b4bd0a0040f0745f4faf9c29c084
SIZE (erlware-relx-v3.0.0_GH0.tar.gz) = 443282
-SHA256 (relx-deps-2.tar.gz) = b86212e1c4dc7dbf545c0eceaa9f3fd6a3cbc123a9b62d657ceb07f6b9695913
-SIZE (relx-deps-2.tar.gz) = 680754
SHA256 (relx-cache-2.tar.gz) = fdacd15a5decddc2d2ce1b0f5b8d7aa592b4c1c5a5f4eddef9cf6234a796f6fe
SIZE (relx-cache-2.tar.gz) = 213517
Added: head/devel/relx/pkg-plist
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/devel/relx/pkg-plist Mon Jun 29 20:48:54 2015 (r390939)
@@ -0,0 +1,60 @@
+bin/relx
+lib/erlang/lib/relx-%%VERSION%%/ebin/relx.app
+lib/erlang/lib/relx-%%VERSION%%/ebin/relx.beam
+lib/erlang/lib/relx-%%VERSION%%/ebin/rlx_app_discovery.beam
+lib/erlang/lib/relx-%%VERSION%%/ebin/rlx_app_info.beam
+lib/erlang/lib/relx-%%VERSION%%/ebin/rlx_cmd_args.beam
+lib/erlang/lib/relx-%%VERSION%%/ebin/rlx_config.beam
+lib/erlang/lib/relx-%%VERSION%%/ebin/rlx_depsolver.beam
+lib/erlang/lib/relx-%%VERSION%%/ebin/rlx_depsolver_culprit.beam
+lib/erlang/lib/relx-%%VERSION%%/ebin/rlx_dscv_util.beam
+lib/erlang/lib/relx-%%VERSION%%/ebin/rlx_goal.beam
+lib/erlang/lib/relx-%%VERSION%%/ebin/rlx_goal_utils.beam
+lib/erlang/lib/relx-%%VERSION%%/ebin/rlx_prv_app_discover.beam
+lib/erlang/lib/relx-%%VERSION%%/ebin/rlx_prv_archive.beam
+lib/erlang/lib/relx-%%VERSION%%/ebin/rlx_prv_assembler.beam
+lib/erlang/lib/relx-%%VERSION%%/ebin/rlx_prv_overlay.beam
+lib/erlang/lib/relx-%%VERSION%%/ebin/rlx_prv_rel_discover.beam
+lib/erlang/lib/relx-%%VERSION%%/ebin/rlx_prv_release.beam
+lib/erlang/lib/relx-%%VERSION%%/ebin/rlx_prv_relup.beam
+lib/erlang/lib/relx-%%VERSION%%/ebin/rlx_rel_discovery.beam
+lib/erlang/lib/relx-%%VERSION%%/ebin/rlx_release.beam
+lib/erlang/lib/relx-%%VERSION%%/ebin/rlx_state.beam
+lib/erlang/lib/relx-%%VERSION%%/ebin/rlx_topo.beam
+lib/erlang/lib/relx-%%VERSION%%/ebin/rlx_util.beam
+lib/erlang/lib/relx-%%VERSION%%/include/relx.hrl
+lib/erlang/lib/relx-%%VERSION%%/priv/templates/bin
+lib/erlang/lib/relx-%%VERSION%%/priv/templates/bin_windows
+lib/erlang/lib/relx-%%VERSION%%/priv/templates/erl_ini
+lib/erlang/lib/relx-%%VERSION%%/priv/templates/erl_script
+lib/erlang/lib/relx-%%VERSION%%/priv/templates/extended_bin
+lib/erlang/lib/relx-%%VERSION%%/priv/templates/extended_bin_windows
+lib/erlang/lib/relx-%%VERSION%%/priv/templates/install_upgrade_escript
+lib/erlang/lib/relx-%%VERSION%%/priv/templates/nodetool
+lib/erlang/lib/relx-%%VERSION%%/priv/templates/sys_config
+lib/erlang/lib/relx-%%VERSION%%/priv/templates/vm_args
+lib/erlang/lib/relx-%%VERSION%%/src/relx.app.src
+lib/erlang/lib/relx-%%VERSION%%/src/relx.erl
+lib/erlang/lib/relx-%%VERSION%%/src/rlx_app_discovery.erl
+lib/erlang/lib/relx-%%VERSION%%/src/rlx_app_info.erl
+lib/erlang/lib/relx-%%VERSION%%/src/rlx_cmd_args.erl
+lib/erlang/lib/relx-%%VERSION%%/src/rlx_config.erl
+lib/erlang/lib/relx-%%VERSION%%/src/rlx_depsolver.erl
+lib/erlang/lib/relx-%%VERSION%%/src/rlx_depsolver_culprit.erl
+lib/erlang/lib/relx-%%VERSION%%/src/rlx_dscv_util.erl
+lib/erlang/lib/relx-%%VERSION%%/src/rlx_goal.erl
+lib/erlang/lib/relx-%%VERSION%%/src/rlx_goal.peg
+lib/erlang/lib/relx-%%VERSION%%/src/rlx_goal_utils.erl
+lib/erlang/lib/relx-%%VERSION%%/src/rlx_prv_app_discover.erl
+lib/erlang/lib/relx-%%VERSION%%/src/rlx_prv_archive.erl
+lib/erlang/lib/relx-%%VERSION%%/src/rlx_prv_assembler.erl
+lib/erlang/lib/relx-%%VERSION%%/src/rlx_prv_overlay.erl
+lib/erlang/lib/relx-%%VERSION%%/src/rlx_prv_rel_discover.erl
+lib/erlang/lib/relx-%%VERSION%%/src/rlx_prv_release.erl
+lib/erlang/lib/relx-%%VERSION%%/src/rlx_prv_relup.erl
+lib/erlang/lib/relx-%%VERSION%%/src/rlx_rel_discovery.erl
+lib/erlang/lib/relx-%%VERSION%%/src/rlx_release.erl
+lib/erlang/lib/relx-%%VERSION%%/src/rlx_state.erl
+lib/erlang/lib/relx-%%VERSION%%/src/rlx_topo.erl
+lib/erlang/lib/relx-%%VERSION%%/src/rlx_util.erl
+%%PORTDOCS%%%%DOCSDIR%%/README.md
More information about the svn-ports-head
mailing list