tags:

views:

72

answers:

1

Does Qt maintain any sort of versioning information about your program like .NET does? Like the build number? Or does it provide an easy way to access the SVN revision?

+6  A: 

No.

But if you're using qmake then you can set compiler flags in the build system based on the results of arbitrary commands, which might be usable to do what you want.

For example, if you were using git, you could do something like this in your .pro file:

REVISION = $$system(git rev-parse HEAD)
DEFINES += APP_REVISION=$$REVISION

That would give you an APP_REVISION macro when compiling your program, which you could use like this:

// stringize macro
#define _STR(X) #X
#define STR(X) _STR(X)
QTextStream(cout) << "MyApp revision " STR(APP_REVISION) << endl;
Intransigent Parsnip
Neat! I'll have to play around with this. I'm using NetBeans as my IDE and it builds the .pro file itself, so I have to figure out how to get it to *not* overwrite my changes.
Mark