[p4] Changelist number in versions

Mark Ridgwell perforce at markridgwell.com
Wed Dec 19 09:55:23 PST 2007


Ivey, William wrote:
>> You might want to put your output in a different
>> location that the source, that way, all the builds you do won't
>> "pollute" your source tree.
>>     
>
> That's what we do. It goes under a special include directory that
> is not under the source tree. (In general, although a given project
> may have special requirements which just can't be met that way.)
>   

We tend to put the version beside the source tree and update/check that 
in as the 1st step of the build. e.g

     Product\Source\....
     Product\Versioning\...

 From there we sync the whole source to that point in time, and run a 
few utilities that process the version file and modify the checked in 
source e.g

assemblyinfo.cs -> changes the product version and file versions with 
the ones in verstamp.h.
*.vbp ->Changes product version etc
C++ - nothing needed - version information is included in the resources 
and includes verstamp.h to get the information.

There is a lot more in the verstamp.h than just version numbers e.g. 
defines for

Build type -> Internal\External
Language(s) supported
Product Name
Licensing information i.e. which web service to call to request licenses

So it is considered more of an integral part of the build.

Mark


More information about the perforce-user mailing list