Menu

Controlix build system and macro preprocessing

Most system level languages use some kind of macro language along with the core compiler, to enable variables in the build environment to be passed to the compiler, basic logic (in many cases) to be handled before compilation, and many other seemingly minor but very necessary uses. Controlix currently has none of that, and as a result a simple thing I was needing today (Passing a build date string to a shell 'Version' command) is basically impossible.

So, we need a macro language to use. Looking around, I see two major candidates, CPP and M4. Each has their strengths and weaknesses - M4 is much more flexible and powerful (the auto* build system that Controlix uses is written in M4), but it is complex and often hard to grasp. CPP is much simpler, and it is the standard macro language used by every C compiler. I need to do more research on this subject, but right now I am leaning towards CPP, mostly because I already know it (|->). We'll see what happens.

Posted by Jon Taylor 2015-06-09

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.