Я не совсем понимаю вашу проблему. Как я понял, вы пытаетесь создать тестовый фреймворк. Я могу что-то предложить. Вы можете переместить изменения в файл .c следующим образом.
В новых.ч
extern void (foo)(/*some params*/);
/***extra stuff****/
#define foo(...) ( /*call_some_function_dummy*/) , foo())
/*some_functions*_for_debugging/
В новом.c
call_some_function_dummy()
{
#ifdef _DEBUG
call_some_function()
#endif
}
Теперь, если вы переключитесь в режим отладки, нужно перекомпилировать только New.c, и компиляция будет намного быстрее. Надеюсь, это поможет вам.
Решение 2:
В нов.ч
extern void (foo)(/*some params*/);
/***extra stuff****/
#define foo(...) ( /*call_some_function[0]*/) , foo())
/*some_functions*_for_debugging/
In New.c
#ifdef _DEBUG
call_some_function[] =
{
call_some_function0,
call_some_function1
};
#else
call_some_function[]
{
dummy_nop,
dummy_nop
};
#endif