Parrot on RTEMS: Out of directory building

Sorry it’s been such a long time since I’ve given an update. After a long discussion with one of my mentors we’ve decided to switch focuses and knock out a few minor Parrot features that would help us immensely. Currently I’m working on getting Parrot to build out of directory. Currently Parrot assumes that we are building in the same directory our source is in which, while it works, means we get our executables (and compiled objects) intermingled with our source and other files. Also if we wanted to have two versions of Parrot from a single source (say with different Configuration options) it seems nigh impossible unless we have two copies of the source. Our of directory building will allow us to do something like:

mkdir build
cd build
perl ../Configure.pl
make

And we’d have our build separate from our source code.

Those first three steps are now possible with a set of patches to the Parrot configuration code. Now all that remains is to copy the source code to the build directory so we can just run `make`. I’ve tested configuring out of directory and building in directory and you get exactly the same Makefile and build and it passes all coding tests. The patch right now is a bit ugly and should be refactored into a separate module.

After this is done, I’ll work on getting a mechanism to copy over all the source so we can do a full build out of directory. Hopefully this will be committed to the source, and I can begin working on getting Parrot to cross-compile. Since I’ve already got Parrot compiling with the RTEMS tool-chain, after all this is done I’ll create a bootstrapping Perl script that’ll help install the source, get you a system copy of Parrot, a RTEMS cross-compiled copy and build libparrot for linking.

Posted in Google Summer of Code | Comments Off on Parrot on RTEMS: Out of directory building

Comments are closed.