cm Compilation Manager 0.5.1 review

by on

cm Compilation Manager is a new tool for build automation and compilation management

License: BSD License
File size: 112K
Developer: Aaron Kimball
0 stars award from

cm Compilation Manager is a new tool for build automation and compilation management. cm Compilation Manager addresses a number of shortcomings I see in make.

Here are some key features of "cm Compilation Manager":
A clean syntax based on a context-free language description
Whitespace insensitivity
Distinct macros and variables
Separate procedure and production namespaces
Many native programming constructs such as foreach loops for easy iteration, and more powerful tools such as anonymous functions with static scoping.
Built-in support for recursive directory handling without additional invocations of 'cm'.
An intelligent, automatic configuration file generator
Pre-generated functions for handling common build tasks in a platform-independent manner
Support for multiple build configurations and multi-pass builds over complicated directory hierarchies

Installation instructions:

Download cm, classib, and gc.
Install the garbage collector per the included instructions. (Basically ./configure; make; sudo make install.) When running configure, you will need to pass it the parameters: --prefix=/usr/lib --with-threads=posix.
Unzip classlib (tar vzxf classlib.tar.gz).
Configure classlib's Makefile with any paths you need to modify.
Build and install classlib with make && sudo make install.
Unzip cm (tar vzxf cm.tar.gz).
Build and install cm with make && sudo make install.
Configure cm by executing: cd /usr/local/etc && sudo cminit
To verify your cm installation, you can rebuild it with the included Cmrules files by typing cm @clean && cm -m opt in the same directory you built cm in with make.

What's New in This Release:
The license was changed to the GPL.
This release includes a dynamic module/plugin system and two initial plugin modules.
It supports non-root installation, additional command line options, and caches parsed files for quick retrieval during multi-pass builds.
Several bugfixes are also included.

cm Compilation Manager 0.5.1 search tags