Versionsnummer nach jedem Compile Vorgang erhöhen
-
Wie kann ich realisieren, dass nach jedem Compilevorgang eine Versionsnummer mitgeliefert wird (die ich auch im Code zur Verfügung habe!) und automatisch erhöht wird? Ich nutze GCC...
Danke schonmal.
-
Hallo
Ich hab das so relisiert.
Ich hab mir eine Versions-C-Datei gemacht mit nur zwei globalen Variabeln:
char cCompileDate[32]=__DATE__; char cCompileTime[32]=__TIME__;
Im Makefile hab ich gesagt das diese Datei von allen anderen
*.c und *.h Datein im Projekt abhängig ist.Somit wird die Versions-C-Datei immer neu kompiliert
wenn eine Datei aus dem Projekt verändert wird, und
enthällt somit immer das aktuelle Datum.Das Erstellen des Make files kann bei grßen Projekten
estwas aufwäntig sein.
-
Das geht mit einem kleinen Shell-Skript.
Erstelle eine Datei, die den Inhalte 1 hat.
$ echo "1" > version.txt
Dan fügst du in dein Makefile bei jedem compilieren folgenden Shell befehl auf
$ echo $(expr 1 + `cat version.txt`) > version.txt
Dann musst du nur noch aus der version.txt eine .c-Datei machen, in der deine Versionsnummer in einer Variable gespeichert wird.
$ echo "int version `cat version.txt`;" > version.c
Die benutzt du dann, wie AZ schon beschrieben hat.