cross posted at 8052.com I have a module, which is used in four different products, that has way too many #ifdef's to be readable in debug and, at the same time, there is so much common code that making four separate modules is not the right approach. I have used all the "usual tricks" (separating what is only for one to a separate libray module, making some conditionals inside a macro etc) What I wonder is: is there some software that can "cut type x" out of the source before compilation. Since I am using a .bat operation (no IDE), a free standing program would be fine. This, probably, would require replacing the #ifdef with somrthing such a program "understood" no problem. Erik just so you know: I can NOT use the IDE due to its inability to make lots of slightly different builds in one go from the same source. Not a complaint, just a fact.
is there some software that can "cut type x" out of the source before compilation. I.e. you're looking for a limited version of a C preprocessor that doesn't execute #includes, and doesn't expand macros in normal text, but still process #ifdef / #unifdef directives. Setting aside the good old Unix "stream editor", sed, which you've already been pointed to, you'll want to have a thorough look at the tool "unifdef". See http://freshmeat.net/projects/unifdef/