У меня есть несколько операторов отладки, определенных в программе, и я хочу иметь возможность сделать копию источника без этих операторов.
Чтобы сделать это, я сначала посмотрел на GCC -EАргумент командной строки, который запускает только препроцессор, однако он сделал гораздо больше, чем я хотел, расширив включенные файлы и добавив операторы #line.
Например:
#include <stdio.h>
#ifdef DEBUG
#define debug( s ) puts ( s );
#else
#define debug( s )
#endif
int main( int argc, char* argv[] )
{
debug( "Foo" )
puts( "Hello, World!" );
return 0;
}
Я быхочу, чтобы это было обработано до:
#include <stdio.h>
int main( int argc, char* argv[] )
{
puts( "Hello, World!" );
return 0;
}
Я мог бы затем привести в порядок что-то вроде astyle, и для получения именно того, что я хочу, не потребовалась бы ручная работа.Я скучаю по GCC или есть инструмент, способный сделать это?