[Cmake-commits] CMake branch, master, updated. v3.9.0-rc5-211-g74112c8
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "CMake". The branch, master has been updated via 74112c8da16ea5f2a4940d196d178da684626f92 (commit) from ec6441007849806ffae30a7268baa335f093202e (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log - https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=74112c8da16ea5f2a4940d196d178da684626f92 commit 74112c8da16ea5f2a4940d196d178da684626f92 Author: Kitware Robot <kwro...@kitware.com> AuthorDate: Tue Jul 4 00:01:04 2017 -0400 Commit: Kitware Robot <kwro...@kitware.com> CommitDate: Tue Jul 4 00:01:04 2017 -0400 CMake Nightly Date Stamp diff --git a/Source/CMakeVersion.cmake b/Source/CMakeVersion.cmake index 35a6ee0..5677a32 100644 --- a/Source/CMakeVersion.cmake +++ b/Source/CMakeVersion.cmake @@ -1,5 +1,5 @@ # CMake version number components. set(CMake_VERSION_MAJOR 3) set(CMake_VERSION_MINOR 9) -set(CMake_VERSION_PATCH 20170703) +set(CMake_VERSION_PATCH 20170704) #set(CMake_VERSION_RC 1) --- Summary of changes: Source/CMakeVersion.cmake |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) hooks/post-receive -- CMake ___ Cmake-commits mailing list Cmake-commits@cmake.org http://public.kitware.com/mailman/listinfo/cmake-commits
[CMake] CMake Server Mode and USE_FOLDERS
I was just exploring in a command line the CMake Server mode in 3.8 (I have not tried 3.9 yet) just to see what gets output and I was wondering if CMake-Server mode supports "set_property(GLOBAL PROPERTY USE_FOLDERS ON)" for any generator? I was specifically using the "ninja" generator for my experiments. I suspect not since Ninja itself does not have the concept of this but I though I would inquire. If IDE's that are now relying on CMake-server had this information it would allow the IDE to present the project in such a way that the developers intended or laid out. I know we put a lot of time into our CMake files so that the Visual Studio and Xcode projects are reasonably organized when you open them instead of just listing 250 targets. Thanks for any insights. Mike Jackson -- 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-developers] Adding a new henerator for CMake
Hi Eric, I was very interested in this but I unfortunately didn't have the time and probably won't have much time to work on this for the next year or so. Are you going to start working on this? Renato On Mon, Jul 3, 2017, 09:28 Eric Noulardwrote: > Hi Renato, > > Did you start to work on a Bazel generator for CMake? > If not do you still plan to do it? > > Eric > > 2017-03-17 11:51 GMT+01:00 Renato Utsch : > >> Ooh good to know, I'll take a look at how you're doing that. >> >> No, the build system is Bazel. >> >> On Fri, Mar 17, 2017, 04:58 Charles Huet wrote: >> >>> Hi, >>> >>> >>> is this buildsystem by any chance FastBuild ? >>> Because if so there is an effort (I'd like to say ongoing, but it's been >>> on hold since the release of 9.7) to implement one here: >>> https://github.com/packadal/CMake/tree/fastbuild-master >>> >>> Otherwise I guess it can serve as another example, as far as I know >>> there is no documentation on how to implement a generator from scratch. >>> >>> Good luck ! >>> >>> Le ven. 17 mars 2017 à 02:39, Renato Utsch a >>> écrit : >>> >>> Hello, >>> >>> Is there documentation somewhere on how to add a new generator to CMake? >>> There's a build system I really want CMake to support, and I'd like to >>> contribute to make that happen. >>> >>> How difficult / how much code is involved in writing a new generator? >>> The build system has nothing to do with makefiles. >>> >>> Thank. >>> >>> -- >>> >>> 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-developers >>> >>> >> -- >> >> 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-developers >> > > > > -- > Eric > -- 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-developers
Re: [cmake-developers] Adding a new henerator for CMake
Hi Renato, Did you start to work on a Bazel generator for CMake? If not do you still plan to do it? Eric 2017-03-17 11:51 GMT+01:00 Renato Utsch: > Ooh good to know, I'll take a look at how you're doing that. > > No, the build system is Bazel. > > On Fri, Mar 17, 2017, 04:58 Charles Huet wrote: > >> Hi, >> >> >> is this buildsystem by any chance FastBuild ? >> Because if so there is an effort (I'd like to say ongoing, but it's been >> on hold since the release of 9.7) to implement one here: >> https://github.com/packadal/CMake/tree/fastbuild-master >> >> Otherwise I guess it can serve as another example, as far as I know there >> is no documentation on how to implement a generator from scratch. >> >> Good luck ! >> >> Le ven. 17 mars 2017 à 02:39, Renato Utsch a >> écrit : >> >> Hello, >> >> Is there documentation somewhere on how to add a new generator to CMake? >> There's a build system I really want CMake to support, and I'd like to >> contribute to make that happen. >> >> How difficult / how much code is involved in writing a new generator? The >> build system has nothing to do with makefiles. >> >> Thank. >> >> -- >> >> 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-developers >> >> > -- > > 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-developers > -- Eric -- 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-developers
Re: [CMake] find_package(), FindXXX.cmake and IMPORTED add_library()
(My answers to your previous email are below this new question.) I have another question thus: some libraries, especially on Windows, provide both static and shared library. Is there any way for selecting which kind of library we want to get? For instance: LibJPEGTurbo has (turbojpeg.lib + turbojpeg.dll) and (turbojpeg-static.lib). So in the find_package, we can do 1. shared version add_library(LibJPEGTurbo SHARED IMPORTED) set_target_properties(LibJPEGTurbo PROPERTIES IMPORTED_IMPLIB "turbojpeg.lib") set_target_properties(LibJPEGTurbo PROPERTIES IMPORTED_LOCATION "turbojpeg.dll") 2. static version add_library(LibJPEGTurbo STATIC IMPORTED) set_target_properties(LibJPEGTurbo PROPERTIES IMPORTED_LOCATION "turbojpeg-static.lib") Maybe setting a variable before calling find_package, like set(FIND_SHAREDLIBS TRUE)? Le 01/07/2017 à 15:47, P F a écrit : On Jun 30, 2017, at 6:40 AM, Louis-Paul CORDIERwrote: Hi, I'm particularly familiar with find_package() command, add_library(... IMPORTED) and find_library(). However, I found there are many differences on find_package() usage depending of the library being imported. For instance, using find_package() on Qt5 will retrieve a bunch of *Config.cmake files in the Qt installation tree, and add each components as a library using add_library(Qt5::COMPONENT SHARED IMPORTED). One nice feature with that is the possibility to retrieve the LOCATION property on each component to get the DLL file. That said when using find_package(sharedLibFOO) that will make use of hand-written FindsharedLibFOO.cmake, some variables like FindsharedLib_FOUND, FindsharedLib_LIBRARIES, FindsharedLib_VERSION (etc.) are set by the script, but there is almost never add_library() command used inside this CMake find script. 1. Should it be mandatory to use add_library() in FindXXX.cmake scripts, so the user just needs to target_link_libraries() and all compile definitions, includes dir, and lib dir are automatically imported? This probably should be the case, but I think a lack of contributions is the problem with the current Find modules not being update on each module. Thanks, this should be added to the documentation of FindPackage then so people can start getting good habits, shouldn't be? I guess of your answer that every find_package() should populate LOCATION_ properties. 2. If not, is it a good practice to use add_library() when writing our FindXXX.cmake package? When writing your own FindXXX.cmake, you should first report a bug to library XXX for not supporting cmake downstream. Also, the purpose of `find_package` is to find prebuilt binaries, its not to add new libraries to be built. Unfortunately, many people using CMake build system don't know how to write a proper CMakeLists.txt as there are plenty ways to workaround the exporting process of CMake. Also many project are not using CMake at all. When I mean the add_library command, I am talking about the IMPORTED function of it, meaning that the library is already built and shouldn't create a new target in the Makefile/IDE. 3. When making an application, is it a good practice to create an imported target for each library, instead of appending manually to the current project using target_link_libraries(), target_compile_definitions(), target_include_directories() and so on? Yes, it is good practice to make your dependencies imported targets as it allows for the dependencies to be relocatable. Here is some more information about cmake packages: https://cmake.org/cmake/help/v3.7/manual/cmake-packages.7.html -- 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