каждый исходный файл имеет функцию:
unsigned char test(){
//return true if tests succceed false otherwise
}
Каждый раз, когда исходный файл перекомпилируется, я хочу, чтобы тестовая функция этого файла запускалась при выполнении исполняемого файла, и если тесты возвращали false, чтобы остановить. Однако я хочу только код, тестовый код которого не был запущен с момента сборки.
Я думал, что мог бы использовать систему makefile, чтобы помочь с этой проблемой, так как makefiles будет перекомпилировать только измененный код, что именно то, что я хочу. Поэтому я думал добавить что-то к аргументам командной строки. Я видел пример, в котором они использовали эхо и дату, чтобы добавить время последнего изменения. Код будет записывать время последнего изменения в файл сохранения при успешном выполнении тестового кода, с которым он будет сравниваться в следующий раз.
Есть ли лучший способ? Тот, который не полагается на сделать? По крайней мере, есть ли способ, не полагаясь на специальные команды Unix? Наконец, даже если это невозможно, как будет выглядеть командная строка для добавления в файл.