MADDE is a cross compilation environment targeted for application development (although an instance of it has been used for linux kernel (module) compilation).
MADDE core (just environment, without toolchains, sysroot & other tools) is available for the following host platforms:
- Linux (32 & 64 bit)
- Mac OS X (Intel Leopard & up)
- Windows XP (and later)
MADDE core is generally licenced with LGPLv2. Some components (due to their origin) have different (open source) licenses. The 'external' parts (like sysroots) bundled in some MADDE distributions may have other licenses.
MADDE is part of (Nokia) Qt SDK (with targets for Maemo application development) and MeeGo SDK (like above, but targets for various MeeGo devices).
Provided there are suitable (currently gcc) toolchain (on all host platforms one wants to support) and accompanied sysroot, it is easy to add compilation target for many new systems. The configuration file format is easy to understand and new configuration files are used along the old ones when dropped into configuration directory.
MADDE provides packaging tools for creating
- Debian packages (currently hardcoded for arm)
- RPM packages (arch taken from target configuration)
As part of MADDE core, these works in all the above host platforms. Debian packaging is done by ported debian tools taken from Debian Lenny distribution. RPM packaging is done by rrpmbuild tool, written in perl and supporting a part of RPM spec file format.
Due to the variety of supported host platforms, MADDE cannot support configuration tools which compile and execute stuff to determine environment details (such as autotools). When creating new application (those few who are autotools-savvy) cannot resort to this method gaining knowledge of the system. If there are any need to do such things, the options are:
- Rely what C99 provides
- Try compile something and see if compilation succeeds
- Compose source that compiles to object file where information can easily be parsed out using strings and other shell tools (FIXME: genetypes.sh as example, c99 obsoletes this)
For now, more information about MADDE can be found on these locations:
Use 'madde maemo' and 'madde meego' search terms in your favorite search engine to find more pages.