# MAKE SURE TO KEEP THE FLAGS IDENTICAL TO CPERL BELOW
# allows for easier side-by-side comparison
- - perl: "5.22.1_thr_qm"
+ # vcpu=1 for even more stable results
+ - perl: "5.22.2_thr_qm"
# explicit new infra spec preparing for a future forced upgrade
# also need to pull in a sufficiently new compiler for quadmath.h
sudo: required
- CLEANTEST=true
- POISON_ENV=true
- MVDT=false
- - BREWVER=5.22.1
+ - BREWVER=5.22.2
- BREWOPTS="-Duseithreads -Dusequadmath"
###
# MAKE SURE TO KEEP THE FLAGS IDENTICAL TO STOCK 5.22.1 ABOVE
# allows for easier side-by-side comparison
- - perl: "cperl-5.22.1_thr_qm"
+ # vcpu=1 for even more stable results
+ - perl: "cperl-5.22.2_thr_qm"
# explicit new infra spec preparing for a future forced upgrade
# also need to pull in a sufficiently new compiler for quadmath.h
sudo: required
dist: trusty
env:
- # FIXME - work around https://github.com/perl11/cperl/issues/131
- VCPU_USE=1
- CLEANTEST=true
- POISON_ENV=true
- MVDT=false
- - BREWVER=cperl-5.22.1
+ - BREWVER=cperl-5.22.2
- BREWOPTS="-Duseithreads -Dusequadmath"
# threaded oldest possible with blead CPAN
allow_failures:
# these run with various dev snapshots - allowed to fail
- - perl: cperl-5.22.1_thr_qm
+ - perl: cperl-5.22.2_thr_qm
- perl: devcpan_5.8.1_thr_mb
- perl: devcpan_5.8.1
- perl: devcpan_5.8.3_mb
# we need a mirror that both has the standard index and a backpan version rolled
# into one, due to MDV testing
-CPAN_MIRROR="http://cpan.metacpan.org/"
+export CPAN_MIRROR="http://cpan.metacpan.org/"
PERL_CPANM_OPT="$PERL_CPANM_OPT --mirror $CPAN_MIRROR"
run_or_err "Compiling/installing Perl $BREWVER (without testing, using ${perlbrew_jopt:-1} threads, may take up to 5 minutes)" \
"perlbrew install --as $BREWVER --notest --noman --verbose $BREWOPTS -j${perlbrew_jopt:-1} $BREWSRC"
+ # FIXME work around https://github.com/perl11/cperl/issues/144
+ if is_cperl && ! [[ -f ~/perl5/perlbrew/perls/$BREWVER/bin/perl ]] ; then
+ ln -s ~/perl5/perlbrew/perls/$BREWVER/bin/cperl ~/perl5/perlbrew/perls/$BREWVER/bin/perl
+ fi
+
# can not do 'perlbrew use' in the run_or_err subshell above, or a $()
# furthermore some versions of `perlbrew use` return 0 regardless of whether
# the perl is found (won't be there unless compilation suceeded, wich *ALSO* returns 0)
### emulate a local::lib-like env
- # trick cpanm into executing true as shell - we just need the find+unpack
- run_or_err "Downloading latest stable DBIC from CPAN" \
- "SHELL=/bin/true cpanm --look DBIx::Class"
- # move it somewhere as following cpanm will clobber it
- run_or_err "Moving latest stable DBIC from CPAN to /tmp" "mv ~/.cpanm/latest-build/DBIx-Class-*/lib /tmp/stable_dbic_lib"
+ # FIXME - work around https://github.com/perl11/cperl/issues/145
+ if ! is_cperl ; then
+ # trick cpanm into executing true as shell - we just need the find+unpack
+ run_or_err "Downloading latest stable DBIC from CPAN" \
+ "SHELL=/bin/true cpanm --look DBIx::Class"
- export PERL5LIB="/tmp/stable_dbic_lib:$PERL5LIB"
+ # move it somewhere as following cpanm will clobber it
+ run_or_err "Moving latest stable DBIC from CPAN to /tmp" "mv ~/.cpanm/latest-build/DBIx-Class-*/lib /tmp/stable_dbic_lib"
- # perldoc -l <mod> searches $(pwd)/lib in addition to PERL5LIB etc, hence the cd /
- echo_err "Latest stable DBIC (without deps) locatable via \$PERL5LIB at $(cd / && perldoc -l DBIx::Class)"
+ export PERL5LIB="/tmp/stable_dbic_lib:$PERL5LIB"
+
+ # perldoc -l <mod> searches $(pwd)/lib in addition to PERL5LIB etc, hence the cd /
+ echo_err "Latest stable DBIC (without deps) locatable via \$PERL5LIB at $(cd / && perldoc -l DBIx::Class)"
+ fi
fi
# Need a shitton of patches to run on cperl (luckily all provided)
# Also need to have YAML in place, otherwise the distroprefs are not readable
+# (cperl 5.22.2 comes with YAML already)
if is_cperl ; then
run_or_err "Downloading and installing cperl distroprefs" '
tar -C $HOME/.cpan --strip-components 1 -zx distroprefs-master/prefs distroprefs-master/sources
'
- installdeps YAML
+ perl -M5.022002 -e1 &>/dev/null || installdeps YAML
fi
# we build are guaranteed to be clean, without side
# effects from travis preinstalls)
- # trick cpanm into executing true as shell - we just need the find+unpack
- [[ -d ~/.cpanm/latest-build/DBIx-Class-*/inc ]] || run_or_err "Downloading latest stable DBIC inc/ from CPAN" \
- "SHELL=/bin/true cpanm --look DBIx::Class"
+ # work around https://github.com/perl11/cperl/issues/145 (no cpanm)
+ if is_cperl ; then
- mv ~/.cpanm/latest-build/DBIx-Class-*/inc .
+ wget -qO- $( wget -qO- http://cpanmetadb.plackperl.org/v1.0/package/DBIx::Class | grep distfile | sed "s|distfile:\s*|$CPAN_MIRROR/authors/id/|" ) \
+ | tar -zx --strip-components 1 --wildcards '*/inc'
+
+ # FIXME - kill this when M::I is gone
+ # Argh -DFORTIFY_INC!!!
+ export PERL5LIB="$PERL5LIB:."
+
+ else
+ # trick cpanm into executing true as shell - we just need the find+unpack
+ [[ -d ~/.cpanm/latest-build/DBIx-Class-*/inc ]] || run_or_err "Downloading latest stable DBIC inc/ from CPAN" \
+ "SHELL=/bin/true cpanm --look DBIx::Class"
+
+ mv ~/.cpanm/latest-build/DBIx-Class-*/inc .
+ fi
# The first CPAN which is somewhat sane is around 1.94_56 (perl 5.12)
# The problem is that the first sane version also brings a *lot* of