Launch4j is a cross-platform tool for wrapping Java applications distributed as jars in Windows native executables. The executable can be configured to search for a certain JRE version or use a bundled one, and it's possible to set runtime options, like the initial/max heap size. The wrapper also provides better user experience through an application icon, a native pre-JRE splash screen, and a Java download page in case the appropriate JRE cannot be found. The increase in size of the application is small.
MaKL is a simple and light framework for building multi-platform C/C++ projects, purely based on the Bourne Shell and GNU Make. It is much easier to install and use than other typical building systems, while maintaining the essential functionality. It is ideal for embedded systems due to its cross-compilation, multiplatform toolchaining mechanisms, and minimal external dependencies.
crumb is an experimental build-automation program to provide functionality similar to "make" but with a much better approach, where dependencies for all invocations are automatically detected, by using shared-library level hooks. The spawned processes are also paused if a missing dependency needs to be generated. Oddly, with parallelism, this means that the linker might run before the compiler, but it will get paused until the compiler is done generating the input that it needs. Another purpose of crumb is to provide users with absolutely minimal build description files. This means that the build description files need to be smaller than an equivalent shell script containing the commands that would have built the project directly.
CMake is a cross-platform, open-source build system. It is used to control the software compilation process using simple platform and compiler independent configuration files. It generates native makefiles and workspaces that can be used in the compiler environment of your choice. CMake is quite sophisticated: it is possible to support complex environments requiring system configuration, pre-processor generation, and code generation.
autogen.sh (a.k.a. buildconf) provides automatic build system preparation and is generally very useful to projects that use the GNU build system (i.e. the GNU autotools: autoconf, automake, and libtool). It is a POSIX shell script that is used for preparing a build system for compilation, verifying versions, ensuring necessary functionality, and overcoming many common build preparation issues.
Minimac is a minimalist, general purpose text macro processor. Its simplicity should make it particularly well suited as a front end preprocessor for little language compilers. It is meant to be simpler to use than m4. It uses an explicit argument stack, and user functions are defined by concatenation (similar to the Forth language). Macro expansion is delayed to the last possible moment. The software is currently in alpha release.