Skip to main content
GameDev.net gamedev.net
🔒 Locked

Generic preprocessor tools

Started by alnite Sep 27, 2012 at 6:09 PM 2 replies 1.8k views
Original Post
alnite
alnite
Some languages are blessed with preprocessor directives, but there are other languages that don't have them for various reasons.

So then my question is this: Is there a generic preprocessor tools out there where you can inject a few rules, process any text files, and output the result to new text files.

If the file was a Java source code, and DEBUG was set to false, it would preprocess them like this:

//#if DEBUG
int var = 10 + debugValue;
//#else
int var = 10;
//#endif

Output:
//#if DEBUG
// int var = 10 + debugValue;
//#else
int var = 10;
//#endif


If it was Python:

##if DEBUG
var = 10 + debugValue
##else
var = 10;
##endif

Output:
##if DEBUG
# var = 10 + debugValue
##else
var = 10;
##endif


And as you can see, you can extend this to any programming languages or scripts (HTML, CSS, bash, anything) that don't support preprocessor directives natively but support comments. Alas, I can't find any good tools that can do this seemingly-straightforward task properly.
Bregma
Bregma
The C preprocessor will do that. It's almost universally available as a separate phase of the compiler or as a separate executable entirely. The C preprocessor has no clue about the C (or C++, or FORTRAN, or Java) language proper.

There have been many systems that leverage the C preprocessor to enhance other languages.
Stephen M. Webb
Professional Free Software Developer
wqking
wqking
I heard M4 and saw some open source projects use it
http://en.wikipedia.org/wiki/M4_%28computer_language%29
I didn't use it before.

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.