I just pushed my first branch "wix-deterministic-ids" to the topic stage
(I hope).
Since the whole workflow is quite new to me I'd be glad for any input
that anyone may provide.
I chose to generate identifiers after the following format:
CM_<ID_TYPE><SCHEME_TYPE>_<ID_CONTENT>(_<COUNTER>)
<ID_TYPE> is:
D - Directory
C - Component
F - File
<SCHEME_TYPE> is:
P - Path
H - Hash
<ID_CONTENT> depends on <SCHEME_TYPE>:
Path (P):
<component_1>(.<component_n>)
e.g. doc.cmake_2.8 for "doc/cmake-2.8"
Hash (H):
<SHA1 of path truncated to 7 characters>_<last_component>
e.g. b44dc2f_BasicConfigVersion_SameMajorVersion.cmake.in for
"share/cmake-2.8/Modules/BasicConfigVersion-SameMajorVersion.cmake.in"
<COUNTER> is used to disambiguate identifiers and only present when
necessary.
The Path scheme is preferred.
Should more than 33% of the characters in the path not be representable
in identifiers or the path exceed the identifier limit of 72 characters
the Hash scheme is used instead.
Some full sample identifiers:
CM_DP_share.cmake_2.8.Modules
CM_CP_share.cmake_2.8.Modules.BundleUtilities.cmake
CM_FP_share.cmake_2.8.Modules.AutomocInfo.cmake.in
CM_FH_b44dc2f_BasicConfigVersion_SameMajorVersion.cmake.in
Nils
--
Powered by www.kitware.com
Visit other Kitware open-source projects at
http://www.kitware.com/opensource/opensource.html
Please keep messages on-topic and check the CMake FAQ at:
http://www.cmake.org/Wiki/CMake_FAQ
Follow this link to subscribe/unsubscribe:
http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-developers