From 82aef7cbc9bc909666640870617296dc49af3e92 Mon Sep 17 00:00:00 2001 From: Matthew Smith Date: Sat, 9 Apr 2022 13:45:50 +0100 Subject: dev-util/rebar: add 3.18.0 Signed-off-by: Matthew Smith --- dev-util/rebar/Manifest | 12 +++ .../files/rebar-3.18.0-bootstrap-vendored.patch | 36 +++++++++ dev-util/rebar/metadata.xml | 2 +- dev-util/rebar/rebar-3.18.0.ebuild | 94 ++++++++++++++++++++++ 4 files changed, 143 insertions(+), 1 deletion(-) create mode 100644 dev-util/rebar/files/rebar-3.18.0-bootstrap-vendored.patch create mode 100644 dev-util/rebar/rebar-3.18.0.ebuild (limited to 'dev-util/rebar') diff --git a/dev-util/rebar/Manifest b/dev-util/rebar/Manifest index 5c88cb01b5e3..792024e1583e 100644 --- a/dev-util/rebar/Manifest +++ b/dev-util/rebar/Manifest @@ -1 +1,13 @@ +DIST bbmustache-1.12.2.tar 17920 BLAKE2B a91df2d85533de4ad2df661b19e5dea67e84b73fd0192ecac43b8c9163beeb4444872af605ad298b104725687f2a5a2107b0d142a4654213f7b817903c06aca2 SHA512 aecba4e354bdd5e09756cf9cd8c1e55af832f0e121c4c8000b71bc9a46485a4cdd86d13aae4f1838588be228745003a324956fdd440fb4c48b987cc58a9e238c +DIST certifi-2.8.0.tar 153088 BLAKE2B 1718b805a2c340586c908059bd1e38cc5175f534136efcf6022ba970cd6f00100ef209953aa2718f2b25e76b895ddcf57c71690660f85ea519eb353d24ec612d SHA512 1c484afdf7664eb92df90251bb451208c08e76179e5654a2b069388a72889aac75e941ef626eaeec7fe0a74fdbacf359aeab5330eebd43e333ad513998e46e76 +DIST cf-0.3.1.tar 10240 BLAKE2B 0a13aca11772ea8b7a9ed6a5908a013b82248a64ca633c616ed75b3ccc0e7d52199480e53519f96c1767ceef9c863da16840ad90d1d7c6235cb6ea3291d35b8d SHA512 232fa9cd175e54599c035b087a6d44c9afb4135a5509b7498ebce8becec333cd670d0e06a3bf9e30d54c7c609ad2aecd42fc40e667cf95e68b7dc228e1fd85d8 +DIST cth_readable-1.5.1.tar 19968 BLAKE2B ecaab32aec9e327a2e39ab7312bbaf07c5ab4a88916ed6d84e064897d49f148486b9d95a761d9243cbb8b3cc0a779c9075f1eba179db0ec5e22502176e8c10e5 SHA512 8abd3f7255634e29584559e0d4b811e2af3ed047a10f32a7e2b899abd02f0ab3cef117d3ef6c9db38d34fed6285a1f47356b647350c9b636f011445d3914da7f +DIST erlware_commons-1.5.0.tar 53760 BLAKE2B 042b321c2d0e5ae82801ab982a989618b2cacf4aef921162d6185e4bf4790346765fae265ab9ad337b58ccd0a928199b8b95823528fdd7cb8c440288efb7dc88 SHA512 215072e79da4edf51ac6889721c0d4cefbee60fd5e2a803b39acdd2735b5e91f2df690b94f14a9814f63a4cd3e4762e8d7f87f6debb3e659e542a6dda5159739 +DIST eunit_formatters-0.5.0.tar 14848 BLAKE2B 6f672235d3cfb7d5f8a6d4e870916b931ef7de2d52901a2b66c6bdb4da86db4e220981cc3a104e15e04405b1c8a232c3d5aa0462107debf83c6832bede1f03e7 SHA512 e8692ff35f979dfaf99ccac58014429d300a71ff76f2ce945814a0d4d9431821f04f988dc0271271858a37e6903a73b4dd9ae3abf215333f3135fa883ec07022 +DIST getopt-1.0.1.tar 19456 BLAKE2B 9b9deb22ddb10170603d4743190f80f7152b70b1eafc3e3511f2520599fbc8054c7aa021eec4aade28ae8e8bbfe6c9aa5a9df249173270344db15d364860a07b SHA512 859642dc26c42414474fa8af8a32fed827b0773ac6d6eb51ec19c291672408e71619ad2bb0c7f08d84ff591b33a655a7e0b6241b94372e9cc816a648ee6cdaf6 +DIST meck-0.8.13.tar 34304 BLAKE2B f2bb100bdea75079351610edd572ea7ced1503c02f86ed3378ec00e023ee63b729e859dfb3aefd521eb50541d4fc3ce70f1425beae8dd32d2dd2adb68618cc57 SHA512 adcfd3fdf69d4926dc1d9c2f0b477c8977bddba8b8ffdbfedcf1b5dc3c1af47b39b1c6263c922a43efede90f145f009d71b27178597320522960c5ebbd84a15a +DIST providers-1.9.0.tar 14848 BLAKE2B a50e97faee63bb62335005e61e63de0a1b9ebf467f61e316fd0002485fbc6a102689bd0881878db95972a367ac2ee56c603bfcdd0b8e5efc6dfeee7e177fea8d SHA512 7227855164124425b89996b0295a786e36bbc2fadee9949d0b3d9ad518b3be9204650e5fa9e027e72cc4c2d2e8b968bddfc2015ceaf4cc00d865a35132defe76 DIST rebar-2.6.4.tar.gz 213158 BLAKE2B a71c525948697f9ba44a7faa9183f1aadce031b8b85857da87c5b2376f3b7511c78d02c183b115836605a6d3830e9b9ceac754ab64ec11d9d1bb66f37ea78665 SHA512 4e53d1ab7db296c60fb039443da7e3b31b63410fc614690c6faa7ec330d9e9393dbc1c8507aa4aea2c99397e1b443ff9d25e4d57ec57f616ee748aa97d055ffa +DIST rebar-3.18.0.tar.gz 436403 BLAKE2B 827fcb8a3fb9f3b93a19260696546697f766ea83a498cf79943568dd811c2afcd05a1c666b6813116428d0c1e6f522617244b69fe19cebda2701efdc3ec68763 SHA512 4fcaa1867fba7462df0b9a64fa442f4a887e83530635fdcd19f4b5dcee14ace3e7403c27f35e5e6055fb6bf89c98a91a3ff1e2036ab6e67e3de028f91233e4ed +DIST relx-4.6.0.tar 75776 BLAKE2B 1e9b6043781ee2835f2cd7ff37755456de63e34702fa1e2d8c5326bc58f953700f1a5acf4b1bf073b4d30ff2587d4fdc505a0c1dc0848675ed98a10b9277df1a SHA512 a0ae0447815e78b7f296b721be1430897305bb21b8b183191ed1bb0cc33ee1060f5b1ee2452d86ff7a782f29450896e8b01e90f00847c7e4bad62f3c5a786678 +DIST ssl_verify_fun-1.1.6.tar 14848 BLAKE2B 31f8a92881803b1b93e2f65cf070449cd53af21b50f6aae7a9d036e28c17b2c093b2cb6238279191663ba011aab7fd604af8366ed8ae91b7b1d7c333f9de9ea8 SHA512 65980368629357ec16b37fd8ea1d42f7dbd7fa86318b329bec756e868b70eb4c93cf1bfe3dd34e1b6c011086ba32e11981d61e18fdad78564b77664e4d155a47 diff --git a/dev-util/rebar/files/rebar-3.18.0-bootstrap-vendored.patch b/dev-util/rebar/files/rebar-3.18.0-bootstrap-vendored.patch new file mode 100644 index 000000000000..633a74e174d4 --- /dev/null +++ b/dev-util/rebar/files/rebar-3.18.0-bootstrap-vendored.patch @@ -0,0 +1,36 @@ +From 4c4b0d39dba07911a707f8b8f17711900d2ee786 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Viktor=20S=C3=B6derqvist?= +Date: Fri, 5 Nov 2021 09:46:29 +0100 +Subject: [PATCH] Make bootstrap use _checkouts + +This makes it possible to run the bootstrap offline by placing the deps +in the using the already documented _checkouts directory in advance. +--- + bootstrap | 14 +++++++++++++- + 1 file changed, 13 insertions(+), 1 deletion(-) + +diff --git a/bootstrap b/bootstrap +index 9632b6c77..18cc46216 100755 +--- a/bootstrap ++++ b/bootstrap +@@ -92,7 +92,19 @@ fetch_and_compile({Name, ErlFirstFiles}, Deps) -> + + compile(Name, ErlFirstFiles). + +-fetch({pkg, Name, Vsn}, App) -> ++fetch(Source, App) -> ++ Dir = filename:join([filename:absname("_checkouts"), App]), ++ case filelib:is_dir(Dir) of ++ false -> ++ fetch_from_hex(Source, App); ++ true -> ++ io:format("Using ~p from ~p~n", [App, Dir]), ++ Dest = filename:absname("_build/default/lib"), ++ ok = filelib:ensure_dir(filename:join([Dest, "dummy"])), ++ cp_r([Dir], Dest) ++ end. ++ ++fetch_from_hex({pkg, Name, Vsn}, App) -> + Dir = filename:join([filename:absname("_build/default/lib/"), App]), + case filelib:is_dir(Dir) of + false -> diff --git a/dev-util/rebar/metadata.xml b/dev-util/rebar/metadata.xml index 6812e6202992..d2dbc989ecb0 100644 --- a/dev-util/rebar/metadata.xml +++ b/dev-util/rebar/metadata.xml @@ -6,6 +6,6 @@ Matthew Smith - rebar/rebar + erlang/rebar3 diff --git a/dev-util/rebar/rebar-3.18.0.ebuild b/dev-util/rebar/rebar-3.18.0.ebuild new file mode 100644 index 000000000000..4f02c6cc4e21 --- /dev/null +++ b/dev-util/rebar/rebar-3.18.0.ebuild @@ -0,0 +1,94 @@ +# Copyright 2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MY_PN=${PN}3 + +inherit bash-completion-r1 + +DESCRIPTION="A sophisticated build-tool for Erlang projects that follows OTP principles" +HOMEPAGE="https://www.rebar3.org https://github.com/erlang/rebar3" +SRC_URI=" + https://github.com/erlang/${MY_PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz + https://repo.hex.pm/tarballs/bbmustache-1.12.2.tar + https://repo.hex.pm/tarballs/certifi-2.8.0.tar + https://repo.hex.pm/tarballs/cf-0.3.1.tar + https://repo.hex.pm/tarballs/cth_readable-1.5.1.tar + https://repo.hex.pm/tarballs/erlware_commons-1.5.0.tar + https://repo.hex.pm/tarballs/eunit_formatters-0.5.0.tar + https://repo.hex.pm/tarballs/getopt-1.0.1.tar + https://repo.hex.pm/tarballs/providers-1.9.0.tar + https://repo.hex.pm/tarballs/relx-4.6.0.tar + https://repo.hex.pm/tarballs/ssl_verify_fun-1.1.6.tar + test? ( https://repo.hex.pm/tarballs/meck-0.8.13.tar ) +" +S="${WORKDIR}"/${MY_PN}-${PV} + +LICENSE="Apache-2.0 MIT BSD" +SLOT="3" +KEYWORDS="~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86" +IUSE="test" + +RESTRICT="!test? ( test )" + +RDEPEND=" + dev-lang/erlang + !dev-util/rebar-bin +" +DEPEND="${RDEPEND}" + +PATCHES=( + # The build directory (where dependencies are usually stored) gets + # cleared before each build. Make the fetch function first look in + # a _checkouts directory before going out over the net. + "${FILESDIR}"/${PN}-3.18.0-bootstrap-vendored.patch +) + +src_unpack() { + # Unpack the rebar sources like normal, but extract the hex.pm + # dependencies separately. The outer tarball contains another + # tarball named contents.tar.gz that actually contains the code. + + local archive + for archive in ${A}; do + case "${archive}" in + # Assume that the .tar files are our hex.pm dependencies. + *.tar) + local dest="${S}"/_checkouts/"${archive%-*}" + + mkdir -p "${dest}" || die + + # Extract the inner tarball + tar -O -xf "${DISTDIR}"/"${archive}" contents.tar.gz | + tar -xzf - -C "${dest}" + + assert + ;; + *) + unpack "${archive}" + ;; + esac + done +} + +src_compile() { + ./bootstrap || die +} + +src_test() { + ./rebar3 ct || die +} + +src_install() { + dobashcomp priv/shell-completion/bash/${MY_PN} + dobin ${MY_PN} + dodoc rebar.config.sample + doman manpages/${MY_PN}.1 + + insinto /usr/share/fish/completion + newins priv/shell-completion/fish/${MY_PN}.fish ${MY_PN} + + insinto /usr/share/zsh/site-functions + doins priv/shell-completion/zsh/_${MY_PN} +} -- cgit v1.2.3-65-gdbad