The DObject Library C++ is a Java-like library that acts as a bridge between the C++ and the Java worlds. It offers a wide range of the Java facilities without losing the power of C++. It offers naming convention that is similar to the Java language, smart pointers emulating Java references, and classes emulating Java arrays.
MagiCBuild is a configuration and build system that provides high-level functionality for compiling a software product from source code. It is based on GNU make and consists of a framework of Makefiles, and a shell script based framework for configuration. All output and intermediate files are written to an output directory tree that is totally separate from source code tree, which helps keep the source tree clean from trash such as object files and executables. It allows building with "./ configure && make && make install", such as with Automake.
CMI is an optimizing frontend for gcc which allows gcc to inline across module boundaries without requiring you to put inline functions in header files or even mark inline functions for inlining. It makes your code go faster, makes your code smaller, makes your embedded software use less stack space, is a preprocessor for gcc, supports most gcc extensions, and is able to deal with such notoriously tricky code as the glibc header files. It works by merging multiple C files into one file, topologically sorting the definitions so that definitions come before uses, and marks functions as inline. It controls code bloat by deleting dead code and inlining up until a user-specified budget is reached. You can use user-specified heuristics to select which functions to inline (it includes a tool which uses gprof output to choose inlinings to illustrate this).
Invicta is an open-source build management tool. Using simple project definition files, it generates powerful build scripts (Apache ANTs) while hiding their complexity. Furthermore, Invicta is a modular framework that allows advanced developers add their own customized types of components, which means writing once ANT code that can later be used by all developers in their project or company simply by specifying the new type name.
Brook for GPUs is a compiler and runtime implementation of the Brook stream programming language for modern graphics hardware. The goals for this project are to demonstrate general purpose programing on GPUs, to provide a useful tool for developers who want to run applications on GPUs, and to research the stream language programming model, streaming applications, and system implementations.
snip is an Ant task designed to help with the single-sourcing of program documentation. This task extracts snippets of text from files, placing them into properties in the Ant project. These properties can then be used by any other Ant task, and are particularly useful when referenced by <filter>s within the <copy> task. It was originally written to keep snippets of sample code in API documentation synchronized with the actual sample classes by automatically extracting code from the samples when the project is built.
DbSchema is a complete solution for databases. Its goal is to manage both database schema and data in a single unified workflow. This provides an efficient and productive environment to work in, with improved awareness of application schema architecture and easy access to application data. Offline work and schema synchronization are supported.
Rundoc is an Ant task designed to help with the single- sourcing of program documentation. This task replaces special commands embedded within text files with their output in a specified format. Currently, only Docbook format is supported. It was written to keep sample code output in program documentation synchronized with the actual output of the current code, by running the referenced code when the documentation is built.