Re: [CMake] Version compatibility?
In my case, I work with a large code base that spans many projects with various interdependencies. Some of that code base is quite old and would benefit from updating to more modern CMake features, but some parts of the code I'm not free to update. For these cases, I need to understand what CMake version a particular feature was introduced before I can start using it and also to put in place guards so that the updated project can still be used with older projects that don't want or can't yet move to using a newer CMake version. In an ideal world, everyone would just move to the latest current CMake release and our projects could use whatever CMake features they like, but that's not the reality we live in, for various reasons. ;) On a personal level, I also write a blog which frequently covers CMake features. I find I am always having to go check what version a particular CMake feature was introduced so that I can highlight to my readers what minimum CMake version they need to set. Like Vladimir, this usually requires me to go through release notes or older versions of the CMake docs to work out when that particular command, variable, module, etc. was added. It would be great if the latest version's documentation always had that information instead, it would be more reliable and certainly more convenient. On Mon, Apr 25, 2016 at 11:48 PM, Nils Gladitzwrote: > On 04/25/2016 02:29 PM, Craig Scott wrote: > > I personally have found myself having to look up to his sort of version > info a lot lately. It sounds like others do too. Perhaps a more > sustainable approach would be to include the version details in the CMAKE > docs themselves. For each command, module, variable, etc. it's > documentation could state the version it was added. Some may warrant > further info for version(s) where significant changes were made (eg > keywords added to a command). Realistically, it would have to be done > progressively and obviously with agreement from the Kitware side. It would > only work if it became part of the change process whereby any new features > or changes must include such version details. It would be interesting to > hear what Kitware think of the idea. Any chance? > > > I've also made use of such information from time to time but I think it > has been the exception and it doesn't normally come up during my regular > development workflow. > > I assume for most projects there is a single > cmake_minimum_required(VERSION). > Which means to see what is and what isn't available I only have to check > that specific version's documentation. > > I am curious as to what kind of use case results in having to require > cross-version information as provided by the compatibility matrix "a lot". > > Nils > -- Craig Scott Melbourne, Australia http://crascit.com -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake
Re: [CMake] Version compatibility?
In my case I'm going through changelogs to see what is added in which version. For example I switched to the imported target workflow recently and need to keep backward compatibility all the way back to 2.8.12 (because Ubuntu LTS). There are a lot of features that were added later and are crucial (ALIAS targets, interface compatibility...), so I somehow need to add version-specific workarounds to make the projects working on 2.8.12. The changelogs are pretty useful source of information, but it would be great to have the information directly in the docs to avoid trial and error. Regards mosra __ > Od: Nils Gladitz <nilsglad...@gmail.com> > Komu: Craig Scott <craig.sc...@crascit.com>, "Johannes Zarl-Zierl" > <johannes.zarl-zi...@jku.at> > Datum: 25.04.2016 15:51 > Předmět: Re: [CMake] Version compatibility? > > CC: "cmake@cmake.org" <cmake@cmake.org> >On 04/25/2016 02:29 PM, Craig Scott wrote: >> I personally have found myself having to look up to his sort of >> version info a lot lately. It sounds like others do too. Perhaps a >> more sustainable approach would be to include the version details in >> the CMAKE docs themselves. For each command, module, variable, etc. >> it's documentation could state the version it was added. Some may >> warrant further info for version(s) where significant changes were >> made (eg keywords added to a command). Realistically, it would have to >> be done progressively and obviously with agreement from the Kitware >> side. It would only work if it became part of the change process >> whereby any new features or changes must include such version details. >> It would be interesting to hear what Kitware think of the idea. Any >> chance? > >I've also made use of such information from time to time but I think it >has been the exception and it doesn't normally come up during my regular >development workflow. > >I assume for most projects there is a single >cmake_minimum_required(VERSION). >Which means to see what is and what isn't available I only have to check >that specific version's documentation. > >I am curious as to what kind of use case results in having to require >cross-version information as provided by the compatibility matrix "a lot". > >Nils > > >-- > >-- > >Powered by www.kitware.com > >Please keep messages on-topic and check the CMake FAQ at: >http://www.cmake.org/Wiki/CMake_FAQ > >Kitware offers various services to support the CMake community. For more >information on each offering, please visit: > >CMake Support: http://cmake.org/cmake/help/support.html >CMake Consulting: http://cmake.org/cmake/help/consulting.html >CMake Training Courses: http://cmake.org/cmake/help/training.html > >Visit other Kitware open-source projects at >http://www.kitware.com/opensource/opensource.html > >Follow this link to subscribe/unsubscribe: >http://public.kitware.com/mailman/listinfo/cmake > -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake
Re: [CMake] Version compatibility?
On 04/25/2016 02:29 PM, Craig Scott wrote: I personally have found myself having to look up to his sort of version info a lot lately. It sounds like others do too. Perhaps a more sustainable approach would be to include the version details in the CMAKE docs themselves. For each command, module, variable, etc. it's documentation could state the version it was added. Some may warrant further info for version(s) where significant changes were made (eg keywords added to a command). Realistically, it would have to be done progressively and obviously with agreement from the Kitware side. It would only work if it became part of the change process whereby any new features or changes must include such version details. It would be interesting to hear what Kitware think of the idea. Any chance? I've also made use of such information from time to time but I think it has been the exception and it doesn't normally come up during my regular development workflow. I assume for most projects there is a single cmake_minimum_required(VERSION). Which means to see what is and what isn't available I only have to check that specific version's documentation. I am curious as to what kind of use case results in having to require cross-version information as provided by the compatibility matrix "a lot". Nils -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake
Re: [CMake] Version compatibility?
I personally have found myself having to look up to his sort of version info a lot lately. It sounds like others do too. Perhaps a more sustainable approach would be to include the version details in the CMAKE docs themselves. For each command, module, variable, etc. it's documentation could state the version it was added. Some may warrant further info for version(s) where significant changes were made (eg keywords added to a command). Realistically, it would have to be done progressively and obviously with agreement from the Kitware side. It would only work if it became part of the change process whereby any new features or changes must include such version details. It would be interesting to hear what Kitware think of the idea. Any chance? On Monday, 25 April 2016, Johannes Zarl-Zierlwrote: > Hi Rob, > > I've stopped working on it when 3.0 came out. Since the whole thing was > very > much manual work (diff'ing documentation pages and checking whether some > change was only better documentation or a real change in cmake), it was too > much effort to continue long-term. > > Johannes > > On Saturday 23 April 2016 10:32:15 Rob McDonald wrote: > > Is there a continuation of the CMake version -- feature mapping table? > > > > https://cmake.org/Wiki/CMake_Version_Compatibility_Matrix > > > > I found this to be quite useful, but need something that continues into > 3.X. > > > > Rob > > -- > > Powered by www.kitware.com > > Please keep messages on-topic and check the CMake FAQ at: > http://www.cmake.org/Wiki/CMake_FAQ > > Kitware offers various services to support the CMake community. For more > information on each offering, please visit: > > CMake Support: http://cmake.org/cmake/help/support.html > CMake Consulting: http://cmake.org/cmake/help/consulting.html > CMake Training Courses: http://cmake.org/cmake/help/training.html > > Visit other Kitware open-source projects at > http://www.kitware.com/opensource/opensource.html > > Follow this link to subscribe/unsubscribe: > http://public.kitware.com/mailman/listinfo/cmake > -- Craig Scott Melbourne, Australia http://crascit.com -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake
Re: [CMake] Version compatibility?
Hi Rob, I've stopped working on it when 3.0 came out. Since the whole thing was very much manual work (diff'ing documentation pages and checking whether some change was only better documentation or a real change in cmake), it was too much effort to continue long-term. Johannes On Saturday 23 April 2016 10:32:15 Rob McDonald wrote: > Is there a continuation of the CMake version -- feature mapping table? > > https://cmake.org/Wiki/CMake_Version_Compatibility_Matrix > > I found this to be quite useful, but need something that continues into 3.X. > > Rob -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake
[CMake] Version compatibility?
Is there a continuation of the CMake version -- feature mapping table? https://cmake.org/Wiki/CMake_Version_Compatibility_Matrix I found this to be quite useful, but need something that continues into 3.X. Rob -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake
Re: [CMake] CMake Version Compatibility Matrix
Hi, Wouldn't it be better to have compability matrix generated automatically? Assuming we can automate process of building CMake and executing tests for any particular version we want, couldn't we create test suite checking if feature X works in version Y of CMake? This way we could maintain compability matrix by simply adding tests for new features? Also, including annotations Available since in documentations would be great idea. BR Michal On Mon, Mar 02, 2015 at 11:35:12AM +0100, Johannes Zarl wrote: Hi, Is there any chance that the version compatibility matrix will be updated for cmake 3.x features? Short answer: no. Longer answer: I've written and maintained the compatibility matrix before. The reasons I've stopped maintaining the page: (1) Distilling the changes between versions is quite some manual effort (diffing the help text and checking whether something some change reflects a change in cmake or just a doc change) . (2) The documentation format changed in cmake 3, which would have meant a very big one-time effort toget the differences between 2.8 and 3. (3) I still believe that this could be done much better by including annotations in the documentation itself (Available since:, Deprecated in:). Hope that explains my reasons, Johannes -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake
Re: [CMake] CMake Version Compatibility Matrix
Hi, Is there any chance that the version compatibility matrix will be updated for cmake 3.x features? Short answer: no. Longer answer: I've written and maintained the compatibility matrix before. The reasons I've stopped maintaining the page: (1) Distilling the changes between versions is quite some manual effort (diffing the help text and checking whether something some change reflects a change in cmake or just a doc change) . (2) The documentation format changed in cmake 3, which would have meant a very big one-time effort toget the differences between 2.8 and 3. (3) I still believe that this could be done much better by including annotations in the documentation itself (Available since:, Deprecated in:). Hope that explains my reasons, Johannes -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake
[CMake] CMake Version Compatibility Matrix
Hi all, Is there any chance that the version compatibility matrix will be updated for cmake 3.x features? Best regards, Marcel Loose. attachment: loose.vcf-- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake