Hi everyone, I just finished the build scripts I have been working on for a while with Christopher's help. Thanks Christopher :-)
You can find them in Etoile/BuildScripts and the main script is build.sh (the one to invoke). You can check the README to get a better idea of how it works and how to use it. The script is very convenient to install LLVM+GNUstep+Étoilé from scratch (including dependencies on Ubuntu) and get a fully configured environment. Just do: ./build.sh --prefix=/ --update-bashrc=yes As a side note, new scripts to install dependencies on other systems than Ubuntu are welcome :-) To delve into the details a bit more… You can tweak many build options by customizing the build profile (named build.config by default) and some command-line options (pass --help to build.sh to get their documentation). The goal behind these scripts is to run test builds that report build failures to a new mailing list: [email protected] If you are an Étoilé developer, please subscribe to it… You can get a quick feedback about your commits by watching this list. On my current Ubuntu x86-32 machine, during the day I'll try to run a test build for LLVM/Clang 3.1, GNUstep trunk and Etoile trunk every two hours or so. For LLVM/Clang trunk, GNUstep trunk and Etoile trunk, I'll try to run two or three test builds per day. Once we can target some new GNUstep releases once again, I'll set up a new test build to check how we build against these releases. For our release branch 0.4.2, a dedicated test build would be nice too. If you want to run test builds on a machine you own, you are very welcome to do so. You need to follow the instructions as documented in the REAME to get the mail reporting working, and set MAIL_TO (in the build profile) and MAIL_FROM (in mail.config) to [email protected], then schedule the test build to run with cron or something similar. You must be subscribed to the list to use the mail reporting btw. It would be very useful to get some additional test builds running on the systems we support… Linux x86 (32 and 64 bits) and FreeBSD mainly. Perhaps a ARM test build too. To give an example, here is how I run a test build as a cron job: /home/qmathe/testbuilds/BuildScripts/build.sh --profile=/home/qmathe/testbuilds/BuildScripts/trunk.config --build-dir=/home/qmathe/testbuilds/trunk --test-build=yes > /home/qmathe/testbuilds/trunk.cron.log Detailed logs per built module are available inside a 'log' directory of each build directory. The logs are organized by date. For each test build failure, the logs matching the test build date are sent as mail attachments along the build profile. On a build failure, mail reporting occurs just once, the build must fail for another reason to get a new mail report. By customizing the build profile, it's possible to get a shorter invocation. Also I usually prepend 'run-one' (available as a package on Ubuntu) to prevent multiple executions in parallel by accident. That's it :-) Cheers, Quentin. _______________________________________________ Etoile-dev mailing list [email protected] https://mail.gna.org/listinfo/etoile-dev
