Moas: The Mother Of All Sumos Rob Armstrong Sandia National Labs
Glossary ● Sumo == build system for CCA Tools ● Sumo tarball == tar archive of CCA Tools
Makings for the Sumo now resides in Subversion ● Distro contains the Makefile's, scripts necessary to build the CCA Tools suite – Not the tools themselves. ● Originally started as a comprehensive build for Ccaffeine. – Tar ball contained patched CCA Spec, Chasm, Ccaffeine – Downloaded Babel (and sometimes patches) ● Now: – All tools (except Boost) are checked out from repository – And included in the distro
Sumo generator code now creates Sumos automatically ● 'MANIFEST' describes the packages that make up the Sumo tarball. – Checkout each constituent tool and configure the master build system for that tool. – Build and test the entire tree
MANIFEST file describes the tool and location #tool archiver repository chasm wget babel svn svn+ssh://cca-forum.org/home/svn/babel/branches/release branch cca-spec-babel cvs cca-forum.org:/cvs/cca-spec/repository,cca-spec-babel cca-spec-classic cvs cca-forum.org:/cvs/cca-spec/repository,cca-spec- classic ccaffeine cvs cca-forum.org:/cvs/ccaffeine/repository,dccafe ccafe-gui cvs cca-forum.org:/cvs/ccaffeine/repository,ccafe-gui
Nightly Build for CCA Tools and Toolkit ● This kind of automation is unnecessary for creating Sumo tarballs. – Actually quicker to do by hand (automation starts with an empty disk) – Quicker to do patches on a one-off basis rather than changing the repositories ● Nightly build would checkout a fresh copy from repositories and feedback to Tools and Toolkit developers.
How? ● Build the latest version of each tool/component against the latest version of every other tool/component. ● Build the latest version of each tool/component with the “gold” version of every other tool/component. ● Combinatorially large possibilities...