Forum: Compiler & IDEs Subversion Revision im Flash hinterlegen


von Jürgen S. (jsachs)


Lesenswert?

Hallo,

ich verwalte meine avr-gcc Projekte mit Subversion.
Nun hätte ich gerne die Revision der DATEI im Flash hinterlegt.
Das geht ja einfach in dem ich das Keywords Property setze für 
"Revision".
In meinem Code gebe ich dann einfach an:
1
prog_char SVN_REV[] = "$Revision: 162 $";
2
prog_char BUS_API_VERSION[] = "v0.97 MoCo";
Subversion setzt nun brav die Versionsnummer ein, hier die 162.
So, nun hätte ich aber gerne nur die Revisionsnummer in mein 
BUS_API_VERSION eingefügt, das in etwa das herauskommt:
1
prog_char BUS_API_VERSION[] = "v0.97.162 MoCo";
Und das ganz natürlich zur Compilezeit / Preprozessor, damit der String 
so im Flash hinterlegt ist.
Geht das ?
Wenn Ja wie ?

Zur Info:
Vor und hinter der Revisionsnummer ist ein Leerzeichen, das macht 
Subversion so !

Danke
Juergen Sachs

von Uhu U. (uhu)


Lesenswert?

Nein, das geht so nicht. Der Cpp ist dazu definitiv zu blöd.

Was du machen kannst: Einen eigenen Preprozessor basteln, der vor dem 
Compiler über den Sourcefile geht, und den String entsprechend 
zurechtbiegt. Die Revisionsnummer ist ja bereits bekannt.

Werkzeuge dazu gibt es jede Menge: sed, awk oder eine der vielen 
Scripting-Sprachen.

Z.B. mit JavaScript, perl, python oder awk  kann man solche Geschichten 
mit Patternmatching mit wenigen Zeilen Code erschlagen.

Wenn du Make benutzt, kannst du diesen Preprozessor sehr leicht in den 
Build-Prozeß einbauen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.