1 Copyright 2000, International Business Machines Corporation and others.
4 This software has been released under the terms of the IBM Public
5 License. For details, see the LICENSE file in the top-level source
6 directory or online at http://www.openafs.org/dl/license10.html
8 HOW TO SET THE AFS FOR WINDOWS VERSION INFORMATION
11 DECIDE WHAT THE VERSION INFO SHOULD BE
13 First decide what the version information should be. There are
14 the following values that will need to be set:
21 Title (called VersionString in the registry)
23 MajorVersion is the first number in a dotted version scheme. For
24 example, if the version is 3.5, then MajorVersion is set to 3.
26 MinorVersion is the second number in a dotted version scheme. For
27 example, if the version is 3.5, then MinorVersion is set to 5.
29 PatchLevel is an integer number representing the patch level. If
30 the patch level is 4, then PatchLevel is set to 400. If the patch
31 level is 3.32, then PatchLevel is set to 332. The reason patch
32 numbers aren't just 1, 2, etc., is that they are currently set to
33 the cml configuration number of the build used to produce the patch.
34 We may later switch to just making the patch level a single digit,
35 in which case the PatchLevel value must be set to something big
36 enough so that in a comparison with the old patch levels, it will
37 evaluate as bigger. So if you want a patch level of 4, use a
38 PatchLevel setting of 400. If this is not a patch release, then
41 BetaLevel is an integer number representing the beta level. This is
42 just a way to have multiple beta releases. So if this is the first
43 beta release, set BetaLevel to 1. If this is not a beta release,
44 then set BetaLevel to 0.
46 ReleaseType is kind of redundant; it is set to the string "GA" if
47 this is a non-beta release and "Beta" if this is a beta release.
49 Title is the product version as a full string. So if this is
50 release 3.5 3.22, then Title is set to "3.5 3.22". If this is
51 3.6 Beta 2, then Title is set to "3.6 Beta 2".
53 Title is used when showing the version to the user, like, for
54 example, in the afs creds tool.
56 ************************* NOTE ******************************
57 You MUST set all of these values correctly and in a consistent
58 manner from one release to the next so that the installer can
59 properly determine whether to perform upgrades, downgrades, or
62 Look at the function CompareVersions in file setup.rul to see
63 how these values are used to make version info decisions.
66 SET THE VERSION IN THE INSTALLSHIELD FILES
68 You will need to edit the following InstallShield files:
72 This file contains all of the strings used by the program. Set
73 all of the following identifiers to the new version number:
76 UNINST_DISPLAY_NAME_CC
77 UNINST_DISPLAY_NAME_CLIENT
78 UNINST_DISPLAY_NAME_DOCS
79 UNINST_DISPLAY_NAME_LIGHT_CLIENT
80 UNINST_DISPLAY_NAME_SERVER
82 These identifiers below correspond to the version information
83 discussed in the first section above.
87 PRODUCT_VERSION_PATCH_LEVEL
88 PRODUCT_VERSION_BETA_LEVEL
89 PRODUCT_VERSION_RELEASE_TYPE
94 This file contains information that will be written to the registry
97 Change all occurances of the following to the proper verison info:
99 MajorVersion (set to same value as PRODUCT_VERSION_MAJOR in value.shl)
100 MinorVersion (set to same value as PRODUCT_VERSION_MINOR in value.shl)
101 PatchLevel (set to same value as PRODUCT_VERSION_PATCH_LEVEL in value.shl)
102 BetaLevel (set to same value as PRODUCT_VERSION_BETA_LEVEL in value.shl)
103 ReleaseType (set to same value as PRODUCT_RELEASE_TYPE in value.shl)
104 VersionString (set to same value as PRODUCT_VERSION_TITLE in value.shl)
106 Finally, change any string matching the form below to have the new verison
109 HKLMn=Software\TransarcCorporation\Product Name\Version
111 For example, one such string may be:
113 HKLM2=Software\TransarcCorporation\AFS Control Center\3.5 3.32
115 To update the verison info to 3.6 patch 3, the string would change
118 HKLM2=Software\TransarcCorporation\AFS Control Center\3.6 3
120 That's it! Build and test the thing, making sure that the version info
121 in the registry is correct for each app, and that upgrades of previous
122 versions, downgrades to previous versions from this version, and reinstalls
123 of this version work correctly.
125 If you're the poor sucker who had to do this, then I offer you my sympathy!