Sophie

Sophie

distrib > Fedora > 18 > x86_64 > media > updates > by-pkgid > 1b6e43f097b5cd167a10f68f8aba38e6 > files > 36

nqp-0.0.2013.05-1.fc18.x86_64.rpm

=head1 Bootstrapping procedure for nqp-rx

NPQ-rx is a bootstrapped compiler, which means that it uses itself to compile
itself.

To make the first compilation possible, a compiled version of the compiler is
stored in F</src/stage0/*.pir> and included in the source code repository.
Also the parrot virtual machine ships the same
C<stage0/*.pir> files.

When you make changes to the compiler, eventually you need to update these
I<stage0> files.

Here is how you proceed to update the bootstrapping files nqp-rx and parrot.
At any stage, if C<make test> fails, don't go ahead with the following steps,
but fix the problem first.

=over

=item *

Make your changes, run C<make test>

=item *

Run C<make bootstrap-files> and C<make test>

=item *

Commit the non-bootstrap files that you modified yourself

=item *

Commit the bootstrap files

=item *

Copy the I<stage0> files over to parrot:

    cp src/stage0/*.pir $PARROT_SRC/ext/nqp-rx/src/stage0

=item *

In the parrot source, run C<make test> and commit

=back

References: L<http://irclog.perlgeek.de/perl6/2010-04-22#i_2253227>