Date: Mon, 29 Jun 2015 20:48:55 +0000 (UTC) From: Jimmy Olgeni <olgeni@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r390939 - head/devel/relx Message-ID: <201506292048.t5TKmttd055610@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
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@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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201506292048.t5TKmttd055610>