This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Porting/bench.pl: allow per-PUT (perl under test) options and modules
authorJim Cromie <jim.cromie@gmail.com>
Sun, 10 Apr 2016 05:20:10 +0000 (23:20 -0600)
committerTony Cook <tony@develop-help.com>
Wed, 15 Jun 2016 01:52:01 +0000 (11:52 +1000)
commitd54523c40e947fbb41347e55dca669b20b9ae52e
tree1ae3eab6de96d2d01a891cd5d21d3d17794966c2
parent955a736c2cd1ad6cd7868da807a056c4d540dfaa
Porting/bench.pl: allow per-PUT (perl under test) options and modules

Rework process_perls() to give a richer usage / API, allowing
additional command-line options, specific to each Perl-Under-Test.
For example:

  bench.pl -- perl=plain perl=slower -Mstrict -DmpMA

The above runs the same perl-exe for 2 different tests (PUTS), but
adds expensive debugging options to only the 2nd PUT.

Do this by changing strategy; we scan the list backwards, and
test/treat each item as a perlexe (ie qx/$perlexe -e 'print "ok"/).
Instead of dieing on a not-perl, they're collected and submitted as a
PUT once a $perlexe is found.

Added 'require_order' to terminate arg processing when '--' is
encountered on cmdline; without it the PUT options are in-validated by
GetOptions.
Porting/bench.pl