diff options
author | Ferenc Erki <erkiferenc@gmail.com> | 2020-11-07 12:49:54 +0100 |
---|---|---|
committer | Patrice Clement <monsieurp@gentoo.org> | 2020-11-11 22:40:55 +0100 |
commit | 308f860069cc84873c403a57f65b30e69df329fa (patch) | |
tree | ee61fe74ac1569ca60a3c9a4f49cd0111b13b99b /app-admin/rex | |
parent | app-admin/rex: update deps. (diff) | |
download | gentoo-308f860069cc84873c403a57f65b30e69df329fa.tar.gz gentoo-308f860069cc84873c403a57f65b30e69df329fa.tar.bz2 gentoo-308f860069cc84873c403a57f65b30e69df329fa.zip |
app-admin/rex: bump version to 1.13.1.
Signed-off-by: Ferenc Erki <erkiferenc@gmail.com>
Signed-off-by: Patrice Clement <monsieurp@gentoo.org>
Diffstat (limited to 'app-admin/rex')
-rw-r--r-- | app-admin/rex/Manifest | 1 | ||||
-rw-r--r-- | app-admin/rex/rex-1.13.1.ebuild | 203 |
2 files changed, 204 insertions, 0 deletions
diff --git a/app-admin/rex/Manifest b/app-admin/rex/Manifest index 3423bf02d6a7..095f59173fe4 100644 --- a/app-admin/rex/Manifest +++ b/app-admin/rex/Manifest @@ -1,3 +1,4 @@ DIST Rex-1.12.1.tar.gz 339065 BLAKE2B fd026e66a4e1cf6d4c8b15f7fcba0525a3e98346464170f27d5ef7bb54f1decd7450d87d9f23bee8378df4647eacf512c06a8d051bb76021cbcae472e2c2012d SHA512 774452511d97106bb6586324ff4e8642b05be628c80f3adbba7fd82558c82236878e969512bab398e26a1a7a271a7614108761bd0fb888a2122167806796bad1 DIST Rex-1.12.2.tar.gz 343716 BLAKE2B bb546298305e2e210ea67a21c948f364d3c0ee5947c8d716606fc81cfd07c4b1eea9e6ce8fd3fd49a0cffd33a964e0d328f60d570fa18fa3452b334a7882b279 SHA512 867942eec63ba71b591b93d6c0af794605f86571ef6d1be473989314cb7fc7d4e8d906ef25e30ea56beeaefe953c884661d9b769452587a3d4892de10163b6c7 DIST Rex-1.13.0.tar.gz 344412 BLAKE2B 220e3dff378bdf5c607f2be94952a68f4c3e72ab362518566e16be55a837cef64f12af8f487e1f26bec04e3b5b4781d1d8eecc6aa347a666c2eb616595371919 SHA512 9e717decbe27a630e83c8194418783cb38c63fedb7f8c4a437395ebc3db21a45cc2057bcb6b2bc689255ab8f579908ad7158031e3a019886634fae3f6e6fb511 +DIST Rex-1.13.1.tar.gz 347483 BLAKE2B bab66dffa3e0c0ae6b54bb8a76adfff0858797370389d5329169e5a7a2e6091a5d866feae14c5764b9d87bf920ff9ee5951cc69be4311c9c362e49f58f24659f SHA512 d68bf98e83a04a28d904db683e3cc0984f019ffc6be589f261b4bc44300b753c03e751b87936d9d831bf6456bdcff916cc2a84c0a1a6c11e20c47bf2533575fc diff --git a/app-admin/rex/rex-1.13.1.ebuild b/app-admin/rex/rex-1.13.1.ebuild new file mode 100644 index 000000000000..6a9496d529c0 --- /dev/null +++ b/app-admin/rex/rex-1.13.1.ebuild @@ -0,0 +1,203 @@ +# 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 bash-completion-r1 perl-module ${VCS_ECLASS} + +DESCRIPTION="(R)?ex, the friendly automation framework" + +SLOT="0" +IUSE="minimal 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 + 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=" + !minimal? ( + dev-perl/DBI + dev-perl/Expect + dev-perl/IPC-Shareable + dev-perl/XML-LibXML + ) + virtual/perl-Carp + virtual/perl-Data-Dumper + dev-perl/Data-Validate-IP + dev-perl/Devel-Caller + dev-perl/Digest-HMAC + virtual/perl-Digest-MD5 + 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/JSON-MaybeXS + 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-Simple + dev-perl/libwww-perl + dev-perl/YAML + virtual/perl-version +" + +BDEPEND=" + ${RDEPEND} + >=virtual/perl-CPAN-Meta-Requirements-2.120.620 + >=virtual/perl-ExtUtils-MakeMaker-7.110.100 + >=dev-perl/File-ShareDir-Install-0.60.0 + virtual/perl-Module-Metadata + test? ( + virtual/perl-File-Temp + dev-perl/Test-Deep + dev-perl/Test-Output + dev-perl/Test-UseAllModules + virtual/perl-autodie + ) +" + +[[ ${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 '/^\[PodSyntaxTests\]/d' \ + -e '/^Perl::Critic::Freenode =/d' \ + -e '/^Perl::Critic::TooMuchCode =/d' \ + -e '/^Test::Kwalitee =/d' \ + -e '/^Test::PerlTidy =/d' \ + -e '/^Test::Pod =/d' \ + -e '/^\[Test::CPAN::Changes\]/{N;d}' \ + -e '/^\[OptionalFeature/,/^$/d' \ + -e '/^\[Test::MinimumVersion\]/{N;d}' \ + -i dist.ini || die "Can't patch dist.ini" +} +dzil_env_setup() { + # NextRelease noise :( + mkdir -p ~/.dzil/ || die "mkdir -p ~/.dzil/ failed" + 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 +} + +src_install() { + newbashcomp "share/${PN}-tab-completion.bash" "${PN}" + + insinto /usr/share/zsh/site-functions + newins "share/${PN}-tab-completion.zsh" "_${PN}" + + perl-module_src_install +} |