diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2020-06-21 17:50:24 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2020-06-21 17:50:24 +0100 |
commit | feb0daf81d888e9160f9f94502de09b66f2a63fd (patch) | |
tree | b6e5c40ce2abef3da27ed50a023153f475e0ddef /app-admin/rex | |
parent | 9452a6e87b6c2c70513bc47a2470bf9f1168920e (diff) |
gentoo resync : 21.06.2020
Diffstat (limited to 'app-admin/rex')
-rw-r--r-- | app-admin/rex/Manifest | 2 | ||||
-rw-r--r-- | app-admin/rex/rex-1.11.0.ebuild | 185 |
2 files changed, 187 insertions, 0 deletions
diff --git a/app-admin/rex/Manifest b/app-admin/rex/Manifest index 41eaa0f2ccf9..caac752cb223 100644 --- a/app-admin/rex/Manifest +++ b/app-admin/rex/Manifest @@ -1,6 +1,8 @@ DIST Rex-1.10.0.tar.gz 332057 BLAKE2B fb8e22c25c6f5bbc696aa894cc2f77138e830bb7a41fcc42e677ae251b63fffc841d206a9c50dfda60e022fafccf4ca0181ba8ccb50151c74830994929cb70fa SHA512 eaebf722d741d028d1f89beefee756e0b2fa6e3ddb8c2d6196c4183aedb6b1dd0a7f5fd4bc4211e4da26f61138ee974aa689d84d909c8d63cc414f803227dcf2 +DIST Rex-1.11.0.tar.gz 333640 BLAKE2B 72f4ae7c661f90e406810d265fb72fd3114808576fb284ac05add4eac9e8501e1319dc9baffceff22d4480f02a8b56f5a502e41cef5062fd21460a61cfa7731f SHA512 efe4aac2d5437d7e174fcf8b285911abcb416b68fa96a424b5b0a871490c9b7fa5d584a746befcd9f2f57f80d4135e0050db6bf8b6ce150b431b6f1e3b008b70 DIST Rex-1.9.0.tar.gz 331106 BLAKE2B 74bdf06be9454bc41c444a7d2bf576740e8ecfd2dd575d96172becaac5ee6031506b5ef111c6755a3bc3dcb1eb45722a14c050578cf816815954686a0e79a5ab SHA512 9f9f629d681cc9af3fabccbbb31a881ab7a0414b51e6f1fc45600772b5f7207f8bf27a757955576b15eb7e8e7339e9f4746c497e4111904ad57614ebf1e3cb55 EBUILD rex-1.10.0.ebuild 5099 BLAKE2B 03293ee5018b5dcee7561f30ce7527b9ca61714799b9855a1e4d08fa8ed9645f4cf9309a42cd18a951a079fbc85de769a9c38e90afcd84dcef84d9cb103f6dc6 SHA512 3584defd83a781332a3bd4e15d69525429bbfe4ed56f79b5b13dff38588c429e9881091b9cb41e75fbcd5315fbbb26036041ee2e9dc7a9756177703770779c81 +EBUILD rex-1.11.0.ebuild 5099 BLAKE2B 03293ee5018b5dcee7561f30ce7527b9ca61714799b9855a1e4d08fa8ed9645f4cf9309a42cd18a951a079fbc85de769a9c38e90afcd84dcef84d9cb103f6dc6 SHA512 3584defd83a781332a3bd4e15d69525429bbfe4ed56f79b5b13dff38588c429e9881091b9cb41e75fbcd5315fbbb26036041ee2e9dc7a9756177703770779c81 EBUILD rex-1.9.0.ebuild 5099 BLAKE2B 03c38fc711dd43055b32e4e29b9c8e095772d51e4e6c4e419da34e2b41b8d11fb469ef9b79ae94bcb85ac6472aea755c4d84bc9c702d72005e7f096f4c234c9e SHA512 99721ba1d4cd612aa6fe36af8d43e2ddd6087a999925676c3be4326a41092e0e92bd4b06bbcd3b064d9d3fc00ff450a2ecaecf37ca590d579f4eaf2cd9273f01 EBUILD rex-9999.ebuild 5099 BLAKE2B 03293ee5018b5dcee7561f30ce7527b9ca61714799b9855a1e4d08fa8ed9645f4cf9309a42cd18a951a079fbc85de769a9c38e90afcd84dcef84d9cb103f6dc6 SHA512 3584defd83a781332a3bd4e15d69525429bbfe4ed56f79b5b13dff38588c429e9881091b9cb41e75fbcd5315fbbb26036041ee2e9dc7a9756177703770779c81 MISC metadata.xml 24205 BLAKE2B 76aa5370179f64adaaf79cb730a4cc53deb191a27e97b10cbb26efd804572eb79d67d9abdb09c5e62d08d73d969848286516a2176099237feba2a5c855cd263d SHA512 a6cae05b4f46b10502da5acc2905f622b61a30329c300483cea39348e92d182d190dd61433c551a1948d4ac6a281b9f91c47b759f425055970e8c5a6349b8693 diff --git a/app-admin/rex/rex-1.11.0.ebuild b/app-admin/rex/rex-1.11.0.ebuild new file mode 100644 index 000000000000..5cc3866dba75 --- /dev/null +++ b/app-admin/rex/rex-1.11.0.ebuild @@ -0,0 +1,185 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +if [[ ${PV} == 9999 ]]; then + GITHUB_USER=RexOps + GITHUB_REPO=Rex + EGIT_REPO_URI="https://github.com/${GITHUB_USER}/${GITHUB_REPO}.git" + EGIT_BRANCH="master" + EGIT_CHECKOUT_DIR="${WORKDIR}/${PN}-git" + VCS_ECLASS="git-r3" +else + # This is intentional to stop perl-module.eclass doing magic things when it + # shouldn't. Like making ${S} contain "Rex" when the git clone has "rex" + # Also prevents perl-module.eclass provisioning SRC_URI + DIST_AUTHOR=FERKI + DIST_NAME=Rex + KEYWORDS="~amd64 ~x86" +fi +inherit perl-module ${VCS_ECLASS} + +DESCRIPTION="(R)?ex, the friendly automation framework" + +SLOT="0" +IUSE="test" +RESTRICT="!test? ( test )" + +DZIL_DEPENDS=" + dev-perl/Dist-Zilla + dev-perl/Dist-Zilla-Plugin-CheckExtraTests + dev-perl/Dist-Zilla-Plugin-ContributorsFile + dev-perl/Dist-Zilla-Plugin-Git-Contributors + dev-perl/Dist-Zilla-Plugin-MakeMaker-Awesome + dev-perl/Dist-Zilla-Plugin-Meta-Contributors + dev-perl/Dist-Zilla-Plugin-MetaProvides-Package + dev-perl/Dist-Zilla-Plugin-NextVersion-Semantic + dev-perl/Dist-Zilla-Plugin-OSPrereqs + dev-perl/Dist-Zilla-Plugin-OurPkgVersion + dev-perl/Dist-Zilla-Plugin-Run + dev-perl/Software-License +" +RDEPEND=" + virtual/perl-Carp + virtual/perl-Data-Dumper + dev-perl/Data-Validate-IP + dev-perl/DBI + dev-perl/Devel-Caller + dev-perl/Digest-HMAC + virtual/perl-Digest-MD5 + dev-perl/Expect + virtual/perl-Exporter + virtual/perl-File-Spec + dev-perl/HTTP-Message + dev-perl/Hash-Merge + virtual/perl-IO + dev-perl/IO-String + dev-perl/IO-Tty + dev-perl/IPC-Shareable + dev-perl/JSON-MaybeXS + dev-perl/List-MoreUtils + virtual/perl-MIME-Base64 + dev-perl/Net-OpenSSH + dev-perl/Net-SFTP-Foreign + virtual/perl-Scalar-List-Utils + dev-perl/Parallel-ForkManager + dev-perl/Sort-Naturally + dev-perl/String-Escape + virtual/perl-Storable + dev-perl/TermReadKey + virtual/perl-Test-Simple + dev-perl/Text-Glob + virtual/perl-Text-Tabs+Wrap + virtual/perl-Time-HiRes + dev-perl/URI + dev-perl/XML-LibXML + dev-perl/XML-Simple + dev-perl/libwww-perl + dev-perl/YAML + virtual/perl-version +" + +BDEPEND=" + ${RDEPEND} + >=virtual/perl-ExtUtils-MakeMaker-7.110.100 + test? ( + virtual/perl-File-Temp + dev-perl/Test-Deep + >=dev-perl/Test-UseAllModules-0.150.0 + ) +" + +[[ ${PV} == 9999 ]] && BDEPEND+=" ${DZIL_DEPENDS}" + +src_unpack() { + if [[ $PV == 9999 ]]; then + "${VCS_ECLASS}"_src_unpack + mkdir -p "${S}" || die "Can't make ${S}" + else + default + fi +} + +dzil_src_prep() { + einfo "Patching dist.ini" + + # This block of sed invocations removes all plugins that aren't + # useful for users to have on Gentoo, because all of them are + # conditional and subjective style checks, which don't indicate + # a real issue for users, and paying the price of their dependencies is undesired. + + # The {N;d} trick adds the [n]ext line after the match to the pattern-space + # so that the final [d]elete deletes the next line too. Can be expanded for each + # line, ie: {N;N;N;d} deletes 3 lines after the match as well as the match. + sed -e '/^\[Test::Kwalitee\]/d' \ + -e '/^\[Test::Perl::Critic\]/d' \ + -e '/^\[PodSyntaxTests\]/d' \ + -e '/^Test::Kwalitee =/d' \ + -e '/^Test::PerlTidy =/d' \ + -e '/^Test::Pod =/d' \ + -e '/^\[Test::CPAN::Changes\]/{N;d}' \ + -e '/^\[Test::MinimumVersion\]/{N;d}' \ + -i dist.ini || die "Can't patch dist.ini" +} +dzil_env_setup() { + # NextRelease noise :( + mkdir -p ~/.dzil/ + local user="$(whoami)" + local host="$(hostname)" + printf '[%%User]\nname = %s\nemail = %s' "${user}" "${user}@${host}" >> ~/.dzil/config.ini + +} +dzil_to_distdir() { + local dzil_root dest has_missing modname dzil_version + dzil_root="$1" + dest="$2" + + cd "${dzil_root}" || die "Can't enter git workdir '${dzil_root}'"; + + dzil_src_prep + dzil_env_setup + + dzil_version="$(dzil version)" || die "Error invoking 'dzil version'" + einfo "Generating CPAN dist with ${dzil_version}" + + has_missing="" + + einfo "Checking dzil authordeps" + while IFS= read -d $'\n' -r modname; do + if [[ -z "${has_missing}" ]]; then + has_missing=1 + eerror "'dzil authordeps' indicates missing build dependencies" + eerror "These will prevent building, please report a bug" + eerror "Missing:" + fi + eerror " ${modname}" + done < <( dzil authordeps --missing --versions ) + + [[ -z "${has_missing}" ]] || die "Satisfy all missing authordeps first" + + einfo "Checking dzil build deps" + while IFS= read -d $'\n' -r modname; do + if [[ -z "${has_missing}" ]]; then + has_missing=1 + ewarn "'dzil listdeps' indicates missing build dependencies" + ewarn "These may prevent building, please report a bug if they do" + ewarn "Missing:" + fi + ewarn " ${modname}" + done < <( dzil listdeps --missing --versions --author ) + + einfo "Generating release" + dzil build --notgz --in "${dest}" || die "Unable to build CPAN dist in '${dest}'" +} + +src_prepare() { + if [[ ${PV} == 9999 ]]; then + # Uses git sources in WORKDIR/rex-git + # to generate a CPAN-style tree in ${S} + # before letting perl-module.eclass do the rest + dzil_to_distdir "${EGIT_CHECKOUT_DIR}" "${S}" + fi + cd "${S}" || die "Can't enter build dir" + perl-module_src_prepare +} |