#1757: Rakudo build broken by r48691/r48692
----------------------+-----------------------------------------------------
Reporter: pmichaud | Owner:
Type: bug | Status: new
Priority: critical | Milestone:
Component: core | Version: 2.6.0
Severity: fatal | Keywords:
Lang: perl6 | Patch:
Platform: |
----------------------+-----------------------------------------------------
Description changed by pmichaud:
Old description:
> r48691 and r48692 appear to change the mechanism by which version
> information is obtained in opsc. Instead of using the 'version' entry of
> the config hash, it now reads the VERSION file from the Parrot build
> directory (given by {{{config['prefix']}}}).
>
> This fails when opsc is being run using an installed parrot (i.e.,
> outside of the build tree), as there is no VERSION file in the prefix
> directory of an installed Parrot. A Rakudo build thus fails when
> compiling its dynops with an error like:
>
> {{{
> cd src/ops && /home/pmichaud/rakudo/parrot_install/bin/ops2c C --dynamic
> perl6.ops
> Unable to open filehandle from path
> '/home/pmichaud/rakudo/parrot_install/VERSION'
> current instr.: 'slurp' pc 2063 (ext/nqp-rx/src/stage0/nqp-
> setting.pir:869)
> called from Sub 'parrot;Ops;File;_set_version' pc 36651
> (compilers/opsc/gen/Ops/Compiler/Actions.pir:0)
> called from Sub 'parrot;Ops;File;new' pc 34563
> (compilers/opsc/gen/Ops/Compiler/Grammar.pir:969)
> called from Sub '_block11' pc 734 (ops2c.pir:293)
> make: *** [src/ops/perl6_ops.so] Error 1
> pmich...@orange:~/rakudo$
> }}}
>
> This is another example where Parrot needs tests run against an installed
> copy of Parrot instead of a build copy.
>
> Pm
New description:
Reported by masak++
r48691 and r48692 appear to change the mechanism by which version
information is obtained in opsc. Instead of using the 'version' entry of
the config hash, it now reads the VERSION file from the Parrot build
directory (given by {{{config['prefix']}}}).
This fails when opsc is being run using an installed parrot (i.e., outside
of the build tree), as there is no VERSION file in the prefix directory of
an installed Parrot. A Rakudo build thus fails when compiling its dynops
with an error like:
{{{
cd src/ops && /home/pmichaud/rakudo/parrot_install/bin/ops2c C --dynamic
perl6.ops
Unable to open filehandle from path
'/home/pmichaud/rakudo/parrot_install/VERSION'
current instr.: 'slurp' pc 2063 (ext/nqp-rx/src/stage0/nqp-
setting.pir:869)
called from Sub 'parrot;Ops;File;_set_version' pc 36651
(compilers/opsc/gen/Ops/Compiler/Actions.pir:0)
called from Sub 'parrot;Ops;File;new' pc 34563
(compilers/opsc/gen/Ops/Compiler/Grammar.pir:969)
called from Sub '_block11' pc 734 (ops2c.pir:293)
make: *** [src/ops/perl6_ops.so] Error 1
pmich...@orange:~/rakudo$
}}}
This is another example where Parrot needs tests run against an installed
copy of Parrot instead of a build copy.
Pm
--
--
Ticket URL: <https://trac.parrot.org/parrot/ticket/1757#comment:1>
Parrot <https://trac.parrot.org/parrot/>
Parrot Development
_______________________________________________
parrot-tickets mailing list
[email protected]
http://lists.parrot.org/mailman/listinfo/parrot-tickets