Markus,<br><br>Please discuss things on the CMake mailing list and wait (sometimes a few days are necessary for a discussion to evolve and resolve itself into a conclusion) until there is a consensus about a course of action among the people discussing it on the mailing list before you bring things up in the CMake bug tracker.<br>
<br>The bug tracker is meant to help us track what bugs are going to be fixed in the upcoming releases of CMake. It is not good as a general discussion mechanism because only a handful of CMake developers actually peruse the new issues in there. Whereas hundreds (and even thousands) of people read the CMake mailing list regularly.<br>
<br>If there is a specific problem with CMake&#39;s actual functionality, then it belongs in the bug tracker as an issue.<br><br><br>Thanks for your help to make CMake better,<br><br>David Cole<br>Kitware, Inc.<br><br><br>
<br><div class="gmail_quote">On Mon, Jan 17, 2011 at 11:30 AM, SF Markus Elfring <span dir="ltr">&lt;<a href="mailto:elfring@users.sourceforge.net">elfring@users.sourceforge.net</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
Here is the code:<br>
</blockquote>
<br>
I have found and implemented a solution that can extract data from a header file with the &quot;help&quot; from evaluation of regular expressions.<br>
<br>
file(STRINGS &quot;${CPPCHECK_SOURCE_DIR}/lib/library_version.h&quot;<br>
     CPPCHECK_BUILD_SPECIFICATION REGEX &quot;^[ \t]*#define[ \t]+CPPCHECK_LIBRARY_VERSION_[A-Z]+[ \t]+[0-9]+.*$&quot;)<br>
<br>
if(CPPCHECK_BUILD_SPECIFICATION)<br>
   message(STATUS &quot;${CPPCHECK_BUILD_SPECIFICATION}&quot;)<br>
   foreach(item IN ITEMS MAJOR MINOR PATCH)<br>
      string(REGEX REPLACE &quot;.*#define[ \t]+CPPCHECK_LIBRARY_VERSION_${item}[ \t]+([0-9]+).*&quot;<br>
             &quot;\\1&quot; XYZ ${CPPCHECK_BUILD_SPECIFICATION})<br>
      set(&quot;CPPCHECK_BUILD_VERSION_${item}&quot; ${XYZ} CACHE STRING &quot;Version number for the build of the Cppcheck software&quot;)<br>
   endforeach()<br>
else()<br>
   message(FATAL_ERROR &quot;Data were not found for the required build specification.&quot;)<br>
endif()<br>
<br>
<br>
How do you think about any optimisation opportunities like it is mentioned in the feature request &quot;Directly reading data from a file into variables&quot;?<br>
<a href="http://public.kitware.com/Bug/view.php?id=11714" target="_blank">http://public.kitware.com/Bug/view.php?id=11714</a><br>
<br>
Regards,<br><font color="#888888">
Markus</font><div><div></div><div class="h5"><br>
_______________________________________________<br>
Powered by <a href="http://www.kitware.com" target="_blank">www.kitware.com</a><br>
<br>
Visit other Kitware open-source projects at <a href="http://www.kitware.com/opensource/opensource.html" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
<br>
Please keep messages on-topic and check the CMake FAQ at: <a href="http://www.cmake.org/Wiki/CMake_FAQ" target="_blank">http://www.cmake.org/Wiki/CMake_FAQ</a><br>
<br>
Follow this link to subscribe/unsubscribe:<br>
<a href="http://www.cmake.org/mailman/listinfo/cmake" target="_blank">http://www.cmake.org/mailman/listinfo/cmake</a><br>
</div></div></blockquote></div><br>