Vorrei sapere se esiste un modo per incorporare i tag Mercurial nel mio codice C/C++.Come si incorporano i tag Mercurial nel mio codice C/C++?
Fondamentalmente vorrei che la stringa di tag, che finirà per essere un numero di release (major.minor.rev), venga automaticamente inserita in una posizione determinata del mio codice C come una stringa statica.
L'obiettivo generale è che l'applicazione possa essere interrogata sul suo numero di versione quando viene eseguita con un argomento della riga di comando '-v'. Qualsiasi approccio alternativo che non implichi il tentativo di incorporare un tag Mercurial sarà accolto come risposta.
Sto usando Code :: Blocks su un ambiente Linux, quindi la soluzione non può fare affidamento sulle funzionalità di Visual Studio.
Se il tag $ Id $ ha avuto un "~" stray in esso avresti problemi. Potresti provare # # defini CVS (a) stat const volatile char * rcsid = #a; \ ... \ CVS ($ Id $); 'invece. –
@Tim Schaeffer, buona cattura, ho postato dalla memoria.A volte non c'è alcun sostituto per il buon vecchio copia/incolla – Glen
bene ora hai il problema del tag Id che contiene una virgola vagante. –