Welcome to the Ebuild project.
EBuild is a software build automation system. It is written in Java but is a general system that can be applied to almost any software development in its entirety.
EBuild is general in design — but owing to its origins — EBuilds 'out of the box' support for different development platfroms is Java/JVM centric. See the Supported Environments for an overview of the current level of support.
The closest analogue to EBuild in the Java world is Maven. Part of the motivation for creating EBuild was to overcome the limitations of the Maven build model, and create a more elegant, general and unobtrusive tool. See Comparisons.
Here is a list of EBuild's most salient features.
A Plugin based Architecture, means EBuild can be extended to support any development platform, and build automation tasks.
EBuild does not place any limits on what can be produced by a build. The Configuration system mean that projects can be built with variations (e.g. different builds for different platform, customers ... etc.)
It can be used to build more than just programs, but can be used to efficiently automate almost all development tasks e.g. project websites (such as this one), downloads, documentation, reports ... etc.
Projects are layed out in a convention based manner both internally (their directory structure) and externally (their layout within source control). This makes development more comprehensible and simplifies the process of build automation.
Build plugins have sensible defaults where appropriate.
EBuild does not install itself centrally as a program. Each workspace maintains its own version of EBuild. This ensures that builds are reproducible, and cannot be broken by events elsewhere on the machine.
EBuild supports Maven and Ivy dependencies and so can inter-operate with development based on these technologies. It also enables easy use of the many publically available modules which use these systems.
EBuild is scalable to large projects. Building is incremental, so only necessary projects are rebuilt.