У меня есть проект C++, который хранится в репозитории Bazaar. Этот проект также использует строку #define
для отображения номера версии. Кто-то только что спросил, можем ли мы просто связать отображаемый номер версии с номером версии репозитория bzr.
Итак, в псевдо-C псевдо-bash что-то вроде:
#define VERSION_STRING "revision $(bzr revno)"
//...
cout << "Starting " << VERSION_STRING;
Или так. Как вы могли бы ответить на этот вопрос? Запускает ли makefile сценарий, который вставляет вывод этой команды в соответствующий исходный файл? Есть ли макрорешение для этого? И т.д?
Я открыт для любых и всех умных решений, так как я ничего не понимаю в этом. = Д
-D
для g++ и clang++:g++ -DVERSION_STRING="revision $(bzr revno)" file.cpp -c -o file.o
- person BoBTFish   schedule 15.12.2015#define VERISON_STRING "000"
на случай, если встроенный bash выйдет из строя при вызовеg++
. - person musasabi   schedule 15.12.2015