diff options
author | Andreas K. Huettel <dilfridge@gentoo.org> | 2017-06-23 18:49:38 +0200 |
---|---|---|
committer | Andreas K. Huettel <dilfridge@gentoo.org> | 2017-06-23 18:49:38 +0200 |
commit | 269847de0d759ab3976093960ea0f00e51e4d439 (patch) | |
tree | cbc2dbcfab87992c37b3785de95cad14bb1c1325 /dev-perl/Lab-Measurement | |
parent | dev-perl/PDL-Graphics-Gnuplot: New package, needed for dev-perl/Lab-Measurement (diff) | |
download | gentoo-269847de0d759ab3976093960ea0f00e51e4d439.tar.gz gentoo-269847de0d759ab3976093960ea0f00e51e4d439.tar.bz2 gentoo-269847de0d759ab3976093960ea0f00e51e4d439.zip |
dev-perl/Lab-Measurement: Adapt live ebuild to Dist::Zilla
Package-Manager: Portage-2.3.6, Repoman-2.3.2
Diffstat (limited to 'dev-perl/Lab-Measurement')
-rw-r--r-- | dev-perl/Lab-Measurement/Lab-Measurement-9999.ebuild | 120 |
1 files changed, 98 insertions, 22 deletions
diff --git a/dev-perl/Lab-Measurement/Lab-Measurement-9999.ebuild b/dev-perl/Lab-Measurement/Lab-Measurement-9999.ebuild index d4f90dd81feb..2cc37f7cae1a 100644 --- a/dev-perl/Lab-Measurement/Lab-Measurement-9999.ebuild +++ b/dev-perl/Lab-Measurement/Lab-Measurement-9999.ebuild @@ -11,60 +11,136 @@ if [[ "${PV}" != "9999" ]]; then else EGIT_REPO_URI="https://github.com/lab-measurement/lab-measurement.git" EGIT_BRANCH="master" + EGIT_CHECKOUT_DIR="${WORKDIR}/${PN}-git" inherit perl-module git-r3 - S=${WORKDIR}/${P}/Measurement fi DESCRIPTION="Measurement control and automation with Perl" HOMEPAGE="http://www.labmeasurement.de/" SLOT="0" -IUSE="test +xpression" +IUSE="test" + +DZIL_PLUGINS=( Git PodWeaver ) RDEPEND=" + virtual/perl-Carp dev-perl/Class-ISA >=dev-perl/Class-Method-Modifiers-2.110.0 >=dev-perl/Clone-0.310.0 virtual/perl-Data-Dumper virtual/perl-Encode - >=dev-perl/Exception-Class-1 + >=dev-perl/Exception-Class-1.0.0 + virtual/perl-File-Path + virtual/perl-File-Spec + virtual/perl-Getopt-Long dev-perl/Hook-LexWrap - dev-perl/IO-Socket-Timeout + virtual/perl-IO + >=dev-perl/IO-Socket-Timeout-0.320.0 dev-perl/List-MoreUtils + virtual/perl-Scalar-List-Utils + virtual/perl-Math-Complex + >=virtual/perl-Module-Load-0.260.0 >=dev-perl/Moose-2.121.300 >=dev-perl/MooseX-Params-Validate-0.180.0 - >=dev-perl/namespace-autoclean-0.200.0 - dev-perl/PDL + >=dev-perl/PDL-2.7.0 + dev-perl/PDL-Graphics-Gnuplot >=dev-perl/Role-Tiny-1.3.4 + virtual/perl-Socket dev-perl/Statistics-Descriptive - dev-perl/Term-ANSIScreen - >=dev-perl/TermReadKey-2.320.0 - dev-perl/TeX-Encode + virtual/perl-Storable + >=dev-perl/TermReadKey-2.300.0 + virtual/perl-Thread-Semaphore + virtual/perl-Tie-Hash virtual/perl-Time-HiRes >=dev-perl/Try-Tiny-0.220.0 - dev-perl/XML-DOM - dev-perl/XML-Generator - dev-perl/XML-Twig - dev-perl/YAML - dev-perl/aliased >=dev-perl/YAML-LibYAML-0.410.0 + virtual/perl-autodie + >=dev-perl/namespace-autoclean-0.200.0 + virtual/perl-parent sci-visualization/gnuplot - !dev-perl/Lab-Instrument - !dev-perl/Lab-Tools - xpression? ( - dev-perl/Wx - ) " DEPEND=" ${RDEPEND} - dev-perl/Module-Build + virtual/perl-ExtUtils-MakeMaker test? ( dev-perl/File-Slurper + virtual/perl-File-Temp + dev-perl/Test-Fatal dev-perl/Test-File - dev-perl/Test-Files - >=dev-perl/Test-Fatal-0.12.0 + virtual/perl-Test-Simple + dev-perl/Text-Diff + dev-perl/aliased ) " +if [[ "${PV}" == "9999" ]]; then + DEPEND="${DEPEND} + dev-perl/Dist-Zilla" + for dzp in ${DZIL_PLUGINS} ; do + DEPEND="${DEPEND} + dev-perl/Dist-Zilla-Plugin-${dzp}" + done +fi + +src_unpack() { + if [[ "${PV}" == "9999" ]]; then + git-r3_src_unpack + mkdir -p "${S}" || die "Can't make ${S}" + else + default + fi +} + +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_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}/Measurement" "${S}" + fi + cd "${S}" || die "Can't enter build dir" + perl-module_src_prepare +} pkg_postinst() { if ( ! has_version sci-libs/linuxgpib ) && ( ! has_version dev-perl/Lab-VISA ) ; then |