Re: [CMake] Predownload
Hi, thanks a lot for your input. I will take a look at the SuperProject (with ExternalProject_Add() call) constellation as well as the meta build tools. I'm quite new to this stuff, so please allow me my question: does this even make sense what i'm trying or are there some "patterns" that handles this stuff that i'm not aware of? Gesendet: Dienstag, 18. April 2017 um 00:23 Uhr Von: "Craig Scott"An: "Florent Castelli" Cc: CMake , "Zabel, Oliver" Betreff: Re: [CMake] Predownload The top level build doesn't actually need to build anything itself. It would just become a sequence of ExternalProject_Add() calls with some simple logic for selecting which things to turn on/off, etc. The first ExternalProject_Add() would download the toolchain files. The subsequent ExternalProject_Add() calls could then use those toolchain files in their configure steps. You just need to ensure you create the dependencies between the ExternalProject targets to ensure the toolchain downloads happen before the other ExternalProject targets that need them. On Tue, Apr 18, 2017 at 8:21 AM, Florent Castelli wrote: Don't you need the toolchain to be configured (Aka project() called) before ExternalProject? You wouldn't be able to update it after the download. /Florent On Apr 17, 2017 11:18 PM, "Craig Scott" wrote: Actually, ExternalProject could even be used to download and unpack the toolchain files in a superbuild arrangement too. Probably makes more sense now that I think about it, since it provides unpacking as well, not just downloading and has a much richer set of download methods. On Tue, Apr 18, 2017 at 8:16 AM, Craig Scott wrote: One option may be a superbuild arrangement (based on ExternalProject, online searches should give you details). The only thing the top level would do is setup the sub builds, including downloading and selecting which toolchain(s) to use for each sub build. On Tue, Apr 18, 2017 at 8:03 AM, Florent Castelli wrote: It is possible. Nothing prevents you from calling execute_process to download as extract your toolchain file when it is run. You probably want to check the destination folder for a pre existing download though. If you use file(DOWNLOAD...) for downloading the toolchain files and you specify an EXPECTED_HASH, this will also conveniently take care of only downloading the file if it isn't already present. Shouldn't need to resort to execute_process() to do the download. Then, you proceed on configuring Cmake to use it as usual. /Florent On Apr 17, 2017 14:11, "Zabel, Oliver" wrote: Hi, i’m developing Software for embedded Systems and my applications Need to run on different target platforms. Until now we are build our Code with make but i’d like to Switch to cmake. ATM we’re putting our Compiler toolchains in our VCS to be able to produce the same binarys even after years. Until now, there is only one toolchain include in a Project as svn-external/git submodule. But i want to use toolchain-files with cmake. Now here is my idea and i’d like to know whether this is possible with cmake. I have my Project root and in this Folder i’d like to have different toolchain files for different Compilers. I’d like to exclude the Compilers as external. Now i’d like to build the cmake Cache by calling cmake with the required toolchain file. Is it now somehow possible, to download the required toolchain before the Cache is buidl up? If this would be possible, i could dynamicly choose which toolchain i want to have – would be great for Compiler / unit Tests as well. Perhaps someone has a better idea to do this or even i using such a System and give me a hint? Thanks a lot! Best regards, Oliver -- 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:
[Cmake-commits] CMake branch, master, updated. v3.8.0-770-gc6a41a1
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 c6a41a13bc025a30252ff569532fd2ca5768b8e9 (commit) from be2c45f2a98d69cc9952b592777bb506f69149a2 (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 - --- 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-commits] CMake branch, next, updated. v3.8.0-794-g8395d56
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, next has been updated discards d9508d20bbfe96dcd90d4183867b46288fdecae6 (commit) discards e1fb26cc4ed85491bb0b58f0566b2c4bc24561d3 (commit) discards ac39cc96d0b4a95c37fbb7b95ed06d7d781e9e04 (commit) discards 681c8bc4babcbd5d817c786474e0084c3034de4f (commit) discards 2a09701e689286eebcf50414c54b22f42f7c531f (commit) discards 5497e9f327cc0768401dac2d15be5241b689f8cf (commit) discards 58c9c0b2fad8e5684405348abae62767025561fe (commit) discards ccd80a7a9ad29ff9ce9565377b8cc9a8be74edff (commit) via 8395d56e4ddb228d943b8d796f289d9f8b0ffb8e (commit) via 0989d839e97426f8b802cc07d9f8cffc8c8f65e7 (commit) via 3d8eec401d2a14cf1301e34ffa8f982c07e11be0 (commit) via 3f2445fc557ec33f4c5b8360d89850a0dbc117ab (commit) via 5101f836abdcb252d25a7802ce5a34c69cb245a9 (commit) via 4282c91d42d39c053f4f27e55f066322546c825f (commit) via 9d588ac4f600dc1127808048fac8180010200f68 (commit) via bee0fd3b168b843a4900286fa11a1251175797e7 (commit) via c6a41a13bc025a30252ff569532fd2ca5768b8e9 (commit) This update added new revisions after undoing existing revisions. That is to say, the old revision is not a strict subset of the new revision. This situation occurs when you --force push a change and generate a repository containing something like this: * -- * -- B -- O -- O -- O (d9508d20bbfe96dcd90d4183867b46288fdecae6) \ N -- N -- N (8395d56e4ddb228d943b8d796f289d9f8b0ffb8e) When this happens we assume that you've already had alert emails for all of the O revisions, and so we here report only the revisions in the N branch from the common base, B. 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=8395d56e4ddb228d943b8d796f289d9f8b0ffb8e commit 8395d56e4ddb228d943b8d796f289d9f8b0ffb8e Merge: 0989d83 128cd85 Author: Brad KingAuthorDate: Mon Apr 17 19:36:16 2017 + Commit: Kitware Robot CommitDate: Tue Apr 18 00:01:36 2017 -0400 Stage topic 'test-CheckIPOSupported' Topic-id: 23653 Topic-url: https://gitlab.kitware.com/cmake/cmake/merge_requests/700 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=0989d839e97426f8b802cc07d9f8cffc8c8f65e7 commit 0989d839e97426f8b802cc07d9f8cffc8c8f65e7 Merge: 3d8eec4 54eb4b7 Author: Brad King AuthorDate: Mon Apr 17 19:35:20 2017 + Commit: Kitware Robot CommitDate: Tue Apr 18 00:01:36 2017 -0400 Stage topic 'objlib-extend' Topic-id: 23710 Topic-url: https://gitlab.kitware.com/cmake/cmake/merge_requests/712 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3d8eec401d2a14cf1301e34ffa8f982c07e11be0 commit 3d8eec401d2a14cf1301e34ffa8f982c07e11be0 Merge: 3f2445f 470437f Author: Brad King AuthorDate: Mon Apr 17 19:34:21 2017 + Commit: Kitware Robot CommitDate: Tue Apr 18 00:01:36 2017 -0400 Stage topic 'ipo-var-per-config' Topic-id: 23698 Topic-url: https://gitlab.kitware.com/cmake/cmake/merge_requests/709 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3f2445fc557ec33f4c5b8360d89850a0dbc117ab commit 3f2445fc557ec33f4c5b8360d89850a0dbc117ab Merge: 5101f83 d9d280f Author: Brad King AuthorDate: Mon Apr 17 18:51:58 2017 + Commit: Kitware Robot CommitDate: Tue Apr 18 00:01:35 2017 -0400 Stage topic 'findmpi-mark-library-advanced' Topic-id: 23697 Topic-url: https://gitlab.kitware.com/cmake/cmake/merge_requests/708 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=5101f836abdcb252d25a7802ce5a34c69cb245a9 commit 5101f836abdcb252d25a7802ce5a34c69cb245a9 Merge: 4282c91 11ab003 Author: Brad King AuthorDate: Mon Apr 17 18:48:46 2017 + Commit: Kitware Robot CommitDate: Tue Apr 18 00:01:35 2017 -0400 Stage topic 'tcc-enable_exports' Topic-id: 23705 Topic-url: https://gitlab.kitware.com/cmake/cmake/merge_requests/711 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=4282c91d42d39c053f4f27e55f066322546c825f commit 4282c91d42d39c053f4f27e55f066322546c825f Merge: 9d588ac efe85c7 Author: Brad King AuthorDate: Mon Apr 17 18:39:57 2017 + Commit: Kitware Robot CommitDate: Tue Apr 18 00:01:35 2017 -0400 Stage topic 'GNUInstallDirs-add-RUNSTATEDIR' Topic-id: 23693 Topic-url: https://gitlab.kitware.com/cmake/cmake/merge_requests/706
[Cmake-commits] CMake branch, nightly-master, updated. v3.8.0-769-gbe2c45f
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, nightly-master has been updated via be2c45f2a98d69cc9952b592777bb506f69149a2 (commit) via c003f1b996fdc6ff9e2542c21578d5cf04153247 (commit) via ddd2b02455db9b0ef3604af1b9b10c22af56bff9 (commit) via d4db7a2ec0c4f1ebbfc98984672793f5d9eb2744 (commit) via c0323cbf5f407e9a231c8e7d55801ef3723748bd (commit) via eb974170cbfbbc202ba7bd3688879a239544f1e2 (commit) via 99b90dbf3c6ddb1093dfd867c6810003a61cdde7 (commit) via dadf1570d919a8dd79547b8a01644d03ae607040 (commit) via ca697bfc264e4058de26942590aeaca25182ce15 (commit) via e44a8d2c322ba82c594740a2d2e49f89afdcc244 (commit) via 97cc29c7662f51f0e532f92e37070f9b44791b88 (commit) via 2f6f6f0c153f19f7efab96b2a4c3c9c05362372b (commit) via 888c8af6cbfcbaffeca2fb65a0da8641417b (commit) via 40aa6c059c3beebabf8fa433b768192300331e50 (commit) via d2b0a47c6fc4f3f4c9c869111c0750f6d5a9d574 (commit) via 9a5dcc32676a24a2dd282330839ce48d84c3da67 (commit) via fee011946e4fe0fc20f2f6bf016851402241d554 (commit) via b80c6d120c4f780d579071545ddc7e642b6e6276 (commit) from f23bede8b556d9d72b6bd5501e82ce1c8f3ce1c2 (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 - --- Summary of changes: CMakeLists.txt | 11 ++ .../CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION.rst |5 + Modules/InstallRequiredSystemLibraries.cmake |6 + Source/CMakeVersion.cmake |2 +- Source/cmExportBuildFileGenerator.cxx |4 +- Source/cmFileCommand.cxx | 61 +++-- Source/cmGeneratorTarget.cxx | 54 +++- Source/cmGeneratorTarget.h | 20 +++ Source/cmGlobalVisualStudio14Generator.cxx | 46 +-- Source/cmGlobalXCodeGenerator.cxx | 47 ++- Source/cmLocalVisualStudio7Generator.cxx | 84 +++- Source/cmLocalVisualStudio7Generator.h |3 +- Source/cmVisualStudio10TargetGenerator.cxx | 66 -- Source/cmVisualStudio10TargetGenerator.h |1 + .../INSTALL-FILES_FROM_DIR-bad-result.txt} |0 .../file/INSTALL-FILES_FROM_DIR-bad-stderr.txt | 15 +++ .../RunCMake/file/INSTALL-FILES_FROM_DIR-bad.cmake |5 + .../file/INSTALL-FILES_FROM_DIR-stdout.txt |8 ++ Tests/RunCMake/file/INSTALL-FILES_FROM_DIR.cmake |7 + Tests/RunCMake/file/RunCMakeTest.cmake |2 + .../hello.f => Tests/RunCMake/file/from/a.txt |0 .../hello.f => Tests/RunCMake/file/from/a/b.txt|0 .../hello.f => Tests/RunCMake/file/from/a/b/c.txt |0 Utilities/IWYU/mapping.imp | 136 24 files changed, 473 insertions(+), 110 deletions(-) copy Tests/RunCMake/{Android/BadSYSROOT-result.txt => file/INSTALL-FILES_FROM_DIR-bad-result.txt} (100%) create mode 100644 Tests/RunCMake/file/INSTALL-FILES_FROM_DIR-bad-stderr.txt create mode 100644 Tests/RunCMake/file/INSTALL-FILES_FROM_DIR-bad.cmake create mode 100644 Tests/RunCMake/file/INSTALL-FILES_FROM_DIR-stdout.txt create mode 100644 Tests/RunCMake/file/INSTALL-FILES_FROM_DIR.cmake copy Modules/IntelVSImplicitPath/hello.f => Tests/RunCMake/file/from/a.txt (100%) copy Modules/IntelVSImplicitPath/hello.f => Tests/RunCMake/file/from/a/b.txt (100%) copy Modules/IntelVSImplicitPath/hello.f => Tests/RunCMake/file/from/a/b/c.txt (100%) create mode 100644 Utilities/IWYU/mapping.imp hooks/post-receive -- CMake ___ Cmake-commits mailing list Cmake-commits@cmake.org http://public.kitware.com/mailman/listinfo/cmake-commits
[Cmake-commits] CMake branch, nightly, updated. v3.8.0-793-gd9508d2
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, nightly has been updated discards 715d5a8e17e435f6be64a8c16b658f1e4b33a42c (commit) discards b65d60948e9a3ed1d4a224559d0eaad4344f9025 (commit) discards 21d345dc613b5d2cf7183b3b7382a373c0347a64 (commit) discards 26f2bce8646cdd3f5d3f389aa32e27363ab00af0 (commit) discards 9bdc37ac7df5f7c62b5ad442311428b2d0135dc2 (commit) via d9508d20bbfe96dcd90d4183867b46288fdecae6 (commit) via e1fb26cc4ed85491bb0b58f0566b2c4bc24561d3 (commit) via ac39cc96d0b4a95c37fbb7b95ed06d7d781e9e04 (commit) via 470437f6f93fb7c26afd38176a9779505c7922e5 (commit) via 681c8bc4babcbd5d817c786474e0084c3034de4f (commit) via 2a09701e689286eebcf50414c54b22f42f7c531f (commit) via 5497e9f327cc0768401dac2d15be5241b689f8cf (commit) via 58c9c0b2fad8e5684405348abae62767025561fe (commit) via ccd80a7a9ad29ff9ce9565377b8cc9a8be74edff (commit) via 54eb4b7ae819e7f4843808c28e0d780cb8244961 (commit) via b06152a999ba3bc13a3101512957d6af08c2c968 (commit) via 11ab003b3aa3c7a11ae9f63946e9730c8dfab5d9 (commit) via 0630596a69dd402b34d063963c480770e974849e (commit) via 11008293a02e140328c5403caa11c4edaa281ff5 (commit) via a61f06761673627658421d20d3db5aa7b712cbc9 (commit) via 227f708bb3e245eef4a1c00cf5dc3e4119820225 (commit) via 58fcdf325b2f1e26c69495f74962a3db6553f062 (commit) via 3ab4681efa6db7339af36218fffea165ad1186f3 (commit) via be2c45f2a98d69cc9952b592777bb506f69149a2 (commit) via c003f1b996fdc6ff9e2542c21578d5cf04153247 (commit) via ddd2b02455db9b0ef3604af1b9b10c22af56bff9 (commit) via d4db7a2ec0c4f1ebbfc98984672793f5d9eb2744 (commit) via c0323cbf5f407e9a231c8e7d55801ef3723748bd (commit) via 5e616fcf9ac1675fa4f3e7c1dc7f0e3dfb014df3 (commit) via eb974170cbfbbc202ba7bd3688879a239544f1e2 (commit) via d9d280f531897aa6a40e315a980052d9352e6e7e (commit) via 128cd8538bae9e9b175b4fff6abfb872081868ec (commit) via efe85c7f4490fb48d6f52b0b3f7cc03efc6dc02c (commit) via 049be8b95f6ef3ce3add8de841adf0957969306b (commit) via d97978b887c087e5c727de514476e6d9b924d61a (commit) This update added new revisions after undoing existing revisions. That is to say, the old revision is not a strict subset of the new revision. This situation occurs when you --force push a change and generate a repository containing something like this: * -- * -- B -- O -- O -- O (715d5a8e17e435f6be64a8c16b658f1e4b33a42c) \ N -- N -- N (d9508d20bbfe96dcd90d4183867b46288fdecae6) When this happens we assume that you've already had alert emails for all of the O revisions, and so we here report only the revisions in the N branch from the common base, B. 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 - --- Summary of changes: Help/command/add_library.rst |9 +- Help/command/install.rst | 23 ++--- Help/manual/cmake-buildsystem.7.rst| 12 ++- Help/manual/cmake-generator-expressions.7.rst |4 +- Help/manual/cmake-properties.7.rst |2 + Help/manual/cmake-variables.7.rst |1 + Help/prop_tgt/IMPORTED_OBJECTS.rst | 11 +++ Help/prop_tgt/IMPORTED_OBJECTS_CONFIG.rst |7 ++ .../INTERPROCEDURAL_OPTIMIZATION_CONFIG.rst|4 + .../dev/add_custom_command-TARGET_OBJECTS.rst |6 ++ Help/release/dev/add_library-TARGET_OBJECTS.rst|5 ++ Help/release/dev/cpackifw-search-algorithm.rst |7 ++ Help/release/dev/file-GENERATE-TARGET_OBJECTS.rst |6 ++ Help/release/dev/install-TARGET_OBJECTS.rst|8 ++ .../CMAKE_INTERPROCEDURAL_OPTIMIZATION_CONFIG.rst |8 ++ Modules/CPackIFW.cmake | 53 ++-- Modules/FindMPI.cmake |1 + Modules/GNUInstallDirs.cmake | 44 ++ Modules/Platform/Linux-TinyCC-C.cmake |1 + Source/CMakeVersion.cmake |2 +- Source/cmAddLibraryCommand.cxx | 13 ++- Source/cmExportBuildFileGenerator.cxx | 57 + Source/cmExportCommand.cxx | 14 ++-- Source/cmExportFileGenerator.cxx |8 ++ Source/cmExportInstallFileGenerator.cxx| 19 + Source/cmGeneratorExpressionEvaluationFile.cxx |6 +- Source/cmGeneratorExpressionNode.cxx | 79
Re: [CMake] Predownload
The top level build doesn't actually need to build anything itself. It would just become a sequence of ExternalProject_Add() calls with some simple logic for selecting which things to turn on/off, etc. The first ExternalProject_Add() would download the toolchain files. The subsequent ExternalProject_Add() calls could then use those toolchain files in their configure steps. You just need to ensure you create the dependencies between the ExternalProject targets to ensure the toolchain downloads happen before the other ExternalProject targets that need them. On Tue, Apr 18, 2017 at 8:21 AM, Florent Castelli < florent.caste...@gmail.com> wrote: > Don't you need the toolchain to be configured (Aka project() called) > before ExternalProject? You wouldn't be able to update it after the > download. > > /Florent > > On Apr 17, 2017 11:18 PM, "Craig Scott"wrote: > >> Actually, ExternalProject could even be used to download and unpack the >> toolchain files in a superbuild arrangement too. Probably makes more sense >> now that I think about it, since it provides unpacking as well, not just >> downloading and has a much richer set of download methods. >> >> On Tue, Apr 18, 2017 at 8:16 AM, Craig Scott >> wrote: >> >>> One option may be a superbuild arrangement (based on ExternalProject, >>> online searches should give you details). The only thing the top level >>> would do is setup the sub builds, including downloading and selecting which >>> toolchain(s) to use for each sub build. >>> >>> >>> On Tue, Apr 18, 2017 at 8:03 AM, Florent Castelli < >>> florent.caste...@gmail.com> wrote: >>> It is possible. Nothing prevents you from calling execute_process to download as extract your toolchain file when it is run. You probably want to check the destination folder for a pre existing download though. >>> >>> >>> If you use file(DOWNLOAD...) for downloading the toolchain files and you >>> specify an EXPECTED_HASH, this will also conveniently take care of only >>> downloading the file if it isn't already present. Shouldn't need to resort >>> to execute_process() to do the download. >>> >>> >>> >>> Then, you proceed on configuring Cmake to use it as usual. /Florent On Apr 17, 2017 14:11, "Zabel, Oliver" wrote: Hi, i’m developing Software for embedded Systems and my applications Need to run on different target platforms. Until now we are build our Code with make but i’d like to Switch to cmake. ATM we’re putting our Compiler toolchains in our VCS to be able to produce the same binarys even after years. Until now, there is only one toolchain include in a Project as svn-external/git submodule. But i want to use toolchain-files with cmake. Now here is my idea and i’d like to know whether this is possible with cmake. I have my Project root and in this Folder i’d like to have different toolchain files for different Compilers. I’d like to exclude the Compilers as external. Now i’d like to build the cmake Cache by calling cmake with the required toolchain file. Is it now somehow possible, to download the required toolchain before the Cache is buidl up? If this would be possible, i could dynamicly choose which toolchain i want to have – would be great for Compiler / unit Tests as well. Perhaps someone has a better idea to do this or even i using such a System and give me a hint? Thanks a lot! Best regards, Oliver -- 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
Re: [CMake] Predownload
Don't you need the toolchain to be configured (Aka project() called) before ExternalProject? You wouldn't be able to update it after the download. /Florent On Apr 17, 2017 11:18 PM, "Craig Scott"wrote: > Actually, ExternalProject could even be used to download and unpack the > toolchain files in a superbuild arrangement too. Probably makes more sense > now that I think about it, since it provides unpacking as well, not just > downloading and has a much richer set of download methods. > > On Tue, Apr 18, 2017 at 8:16 AM, Craig Scott > wrote: > >> One option may be a superbuild arrangement (based on ExternalProject, >> online searches should give you details). The only thing the top level >> would do is setup the sub builds, including downloading and selecting which >> toolchain(s) to use for each sub build. >> >> >> On Tue, Apr 18, 2017 at 8:03 AM, Florent Castelli < >> florent.caste...@gmail.com> wrote: >> >>> It is possible. >>> >>> Nothing prevents you from calling execute_process to download as extract >>> your toolchain file when it is run. You probably want to check the >>> destination folder for a pre existing download though. >>> >> >> >> If you use file(DOWNLOAD...) for downloading the toolchain files and you >> specify an EXPECTED_HASH, this will also conveniently take care of only >> downloading the file if it isn't already present. Shouldn't need to resort >> to execute_process() to do the download. >> >> >> >> Then, you proceed on configuring Cmake to use it as usual. >>> >>> /Florent >>> >>> On Apr 17, 2017 14:11, "Zabel, Oliver" wrote: >>> >>> Hi, >>> >>> >>> >>> i’m developing Software for embedded Systems and my applications Need to >>> run on different target platforms. Until now we are build our Code with >>> make but i’d like to Switch to cmake. ATM we’re putting our Compiler >>> toolchains in our VCS to be able to produce the same binarys even after >>> years. Until now, there is only one toolchain include in a Project as >>> svn-external/git submodule. But i want to use toolchain-files with cmake. >>> >>> >>> >>> Now here is my idea and i’d like to know whether this is possible with >>> cmake. >>> >>> I have my Project root and in this Folder i’d like to have different >>> toolchain files for different Compilers. I’d like to exclude the Compilers >>> as external. >>> >>> Now i’d like to build the cmake Cache by calling cmake with the required >>> toolchain file. Is it now somehow possible, to download the required >>> toolchain before the Cache is buidl up? If this would be possible, i could >>> dynamicly choose which toolchain i want to have – would be great for >>> Compiler / unit Tests as well. >>> >>> >>> >>> Perhaps someone has a better idea to do this or even i using such a >>> System and give me a hint? >>> >>> >>> >>> Thanks a lot! >>> >>> >>> >>> Best regards, >>> >>> Oliver >>> >>> -- >>> >>> 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 >>> >> >> >> >> -- >> Craig Scott >> Melbourne, Australia >> https://crascit.com >> > > > > -- > Craig Scott > Melbourne, Australia > https://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
Re: [CMake] Predownload
Actually, ExternalProject could even be used to download and unpack the toolchain files in a superbuild arrangement too. Probably makes more sense now that I think about it, since it provides unpacking as well, not just downloading and has a much richer set of download methods. On Tue, Apr 18, 2017 at 8:16 AM, Craig Scottwrote: > One option may be a superbuild arrangement (based on ExternalProject, > online searches should give you details). The only thing the top level > would do is setup the sub builds, including downloading and selecting which > toolchain(s) to use for each sub build. > > > On Tue, Apr 18, 2017 at 8:03 AM, Florent Castelli < > florent.caste...@gmail.com> wrote: > >> It is possible. >> >> Nothing prevents you from calling execute_process to download as extract >> your toolchain file when it is run. You probably want to check the >> destination folder for a pre existing download though. >> > > > If you use file(DOWNLOAD...) for downloading the toolchain files and you > specify an EXPECTED_HASH, this will also conveniently take care of only > downloading the file if it isn't already present. Shouldn't need to resort > to execute_process() to do the download. > > > > Then, you proceed on configuring Cmake to use it as usual. >> >> /Florent >> >> On Apr 17, 2017 14:11, "Zabel, Oliver" wrote: >> >> Hi, >> >> >> >> i’m developing Software for embedded Systems and my applications Need to >> run on different target platforms. Until now we are build our Code with >> make but i’d like to Switch to cmake. ATM we’re putting our Compiler >> toolchains in our VCS to be able to produce the same binarys even after >> years. Until now, there is only one toolchain include in a Project as >> svn-external/git submodule. But i want to use toolchain-files with cmake. >> >> >> >> Now here is my idea and i’d like to know whether this is possible with >> cmake. >> >> I have my Project root and in this Folder i’d like to have different >> toolchain files for different Compilers. I’d like to exclude the Compilers >> as external. >> >> Now i’d like to build the cmake Cache by calling cmake with the required >> toolchain file. Is it now somehow possible, to download the required >> toolchain before the Cache is buidl up? If this would be possible, i could >> dynamicly choose which toolchain i want to have – would be great for >> Compiler / unit Tests as well. >> >> >> >> Perhaps someone has a better idea to do this or even i using such a >> System and give me a hint? >> >> >> >> Thanks a lot! >> >> >> >> Best regards, >> >> Oliver >> >> -- >> >> 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 >> > > > > -- > Craig Scott > Melbourne, Australia > https://crascit.com > -- Craig Scott Melbourne, Australia https://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] Predownload
One option may be a superbuild arrangement (based on ExternalProject, online searches should give you details). The only thing the top level would do is setup the sub builds, including downloading and selecting which toolchain(s) to use for each sub build. On Tue, Apr 18, 2017 at 8:03 AM, Florent Castelli < florent.caste...@gmail.com> wrote: > It is possible. > > Nothing prevents you from calling execute_process to download as extract > your toolchain file when it is run. You probably want to check the > destination folder for a pre existing download though. > If you use file(DOWNLOAD...) for downloading the toolchain files and you specify an EXPECTED_HASH, this will also conveniently take care of only downloading the file if it isn't already present. Shouldn't need to resort to execute_process() to do the download. Then, you proceed on configuring Cmake to use it as usual. > > /Florent > > On Apr 17, 2017 14:11, "Zabel, Oliver"wrote: > > Hi, > > > > i’m developing Software for embedded Systems and my applications Need to > run on different target platforms. Until now we are build our Code with > make but i’d like to Switch to cmake. ATM we’re putting our Compiler > toolchains in our VCS to be able to produce the same binarys even after > years. Until now, there is only one toolchain include in a Project as > svn-external/git submodule. But i want to use toolchain-files with cmake. > > > > Now here is my idea and i’d like to know whether this is possible with > cmake. > > I have my Project root and in this Folder i’d like to have different > toolchain files for different Compilers. I’d like to exclude the Compilers > as external. > > Now i’d like to build the cmake Cache by calling cmake with the required > toolchain file. Is it now somehow possible, to download the required > toolchain before the Cache is buidl up? If this would be possible, i could > dynamicly choose which toolchain i want to have – would be great for > Compiler / unit Tests as well. > > > > Perhaps someone has a better idea to do this or even i using such a System > and give me a hint? > > > > Thanks a lot! > > > > Best regards, > > Oliver > > -- > > 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/opensou > rce/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 > -- Craig Scott Melbourne, Australia https://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] Predownload
It is possible. Nothing prevents you from calling execute_process to download as extract your toolchain file when it is run. You probably want to check the destination folder for a pre existing download though. Then, you proceed on configuring Cmake to use it as usual. /Florent On Apr 17, 2017 14:11, "Zabel, Oliver"wrote: Hi, i’m developing Software for embedded Systems and my applications Need to run on different target platforms. Until now we are build our Code with make but i’d like to Switch to cmake. ATM we’re putting our Compiler toolchains in our VCS to be able to produce the same binarys even after years. Until now, there is only one toolchain include in a Project as svn-external/git submodule. But i want to use toolchain-files with cmake. Now here is my idea and i’d like to know whether this is possible with cmake. I have my Project root and in this Folder i’d like to have different toolchain files for different Compilers. I’d like to exclude the Compilers as external. Now i’d like to build the cmake Cache by calling cmake with the required toolchain file. Is it now somehow possible, to download the required toolchain before the Cache is buidl up? If this would be possible, i could dynamicly choose which toolchain i want to have – would be great for Compiler / unit Tests as well. Perhaps someone has a better idea to do this or even i using such a System and give me a hint? Thanks a lot! Best regards, Oliver -- 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
[Cmake-commits] CMake branch, next, updated. v3.8.0-793-gd9508d2
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, next has been updated via d9508d20bbfe96dcd90d4183867b46288fdecae6 (commit) via e1fb26cc4ed85491bb0b58f0566b2c4bc24561d3 (commit) via 54eb4b7ae819e7f4843808c28e0d780cb8244961 (commit) via b06152a999ba3bc13a3101512957d6af08c2c968 (commit) via 0630596a69dd402b34d063963c480770e974849e (commit) via 11008293a02e140328c5403caa11c4edaa281ff5 (commit) via a61f06761673627658421d20d3db5aa7b712cbc9 (commit) via 227f708bb3e245eef4a1c00cf5dc3e4119820225 (commit) via 58fcdf325b2f1e26c69495f74962a3db6553f062 (commit) via 3ab4681efa6db7339af36218fffea165ad1186f3 (commit) via 128cd8538bae9e9b175b4fff6abfb872081868ec (commit) from ac39cc96d0b4a95c37fbb7b95ed06d7d781e9e04 (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=d9508d20bbfe96dcd90d4183867b46288fdecae6 commit d9508d20bbfe96dcd90d4183867b46288fdecae6 Merge: e1fb26c 128cd85 Author: Brad KingAuthorDate: Mon Apr 17 19:36:16 2017 + Commit: Kitware Robot CommitDate: Mon Apr 17 15:36:21 2017 -0400 Stage topic 'test-CheckIPOSupported' Topic-id: 23653 Topic-url: https://gitlab.kitware.com/cmake/cmake/merge_requests/700 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e1fb26cc4ed85491bb0b58f0566b2c4bc24561d3 commit e1fb26cc4ed85491bb0b58f0566b2c4bc24561d3 Merge: ac39cc9 54eb4b7 Author: Brad King AuthorDate: Mon Apr 17 19:35:20 2017 + Commit: Kitware Robot CommitDate: Mon Apr 17 15:35:24 2017 -0400 Stage topic 'objlib-extend' Topic-id: 23710 Topic-url: https://gitlab.kitware.com/cmake/cmake/merge_requests/712 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=54eb4b7ae819e7f4843808c28e0d780cb8244961 commit 54eb4b7ae819e7f4843808c28e0d780cb8244961 Author: Robert Maynard AuthorDate: Thu Mar 23 09:32:08 2017 -0400 Commit: Brad King CommitDate: Mon Apr 17 13:41:51 2017 -0400 Allow OBJECT libraries to be installed, exported, and imported Teach install() and export() to handle the actual object files. Disallow this on Xcode with multiple architectures because it still cannot be cleanly supported there. Co-Author: Brad King diff --git a/Help/command/add_library.rst b/Help/command/add_library.rst index af75a39..3a76040 100644 --- a/Help/command/add_library.rst +++ b/Help/command/add_library.rst @@ -64,7 +64,7 @@ Imported Libraries :: - add_library( IMPORTED + add_library( IMPORTED [GLOBAL]) An :ref:`IMPORTED library target ` references a library @@ -106,10 +106,9 @@ may contain only sources that compile, header files, and other files that would not affect linking of a normal library (e.g. ``.txt``). They may contain custom commands generating such sources, but not ``PRE_BUILD``, ``PRE_LINK``, or ``POST_BUILD`` commands. Object libraries -cannot be imported, exported, installed, or linked. Some native build -systems may not like targets that have only object files, so consider -adding at least one real source file to any target that references -``$``. +cannot be linked. Some native build systems may not like targets that +have only object files, so consider adding at least one real source file +to any target that references ``$``. Alias Libraries ^^^ diff --git a/Help/command/install.rst b/Help/command/install.rst index 70087a4..58438b7 100644 --- a/Help/command/install.rst +++ b/Help/command/install.rst @@ -73,7 +73,7 @@ Installing Targets :: install(TARGETS targets... [EXPORT ] - [[ARCHIVE|LIBRARY|RUNTIME|FRAMEWORK|BUNDLE| + [[ARCHIVE|LIBRARY|RUNTIME|OBJECTS|FRAMEWORK|BUNDLE| PRIVATE_HEADER|PUBLIC_HEADER|RESOURCE] [DESTINATION ] [PERMISSIONS permissions...] @@ -86,10 +86,10 @@ Installing Targets ) The ``TARGETS`` form specifies rules for installing targets from a -project. There are five kinds of target files that may be installed: -``ARCHIVE``, ``LIBRARY``, ``RUNTIME``, ``FRAMEWORK``, and ``BUNDLE``. -Executables are treated as ``RUNTIME`` targets, except that those -marked with the ``MACOSX_BUNDLE`` property are treated as ``BUNDLE`` +project. There are six kinds of target files that may be installed: +``ARCHIVE``, ``LIBRARY``, ``RUNTIME``, ``OBJECTS``, ``FRAMEWORK``, and +``BUNDLE``. Executables are treated as
[Cmake-commits] CMake branch, next, updated. v3.8.0-782-gac39cc9
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, next has been updated via ac39cc96d0b4a95c37fbb7b95ed06d7d781e9e04 (commit) via 470437f6f93fb7c26afd38176a9779505c7922e5 (commit) from 681c8bc4babcbd5d817c786474e0084c3034de4f (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=ac39cc96d0b4a95c37fbb7b95ed06d7d781e9e04 commit ac39cc96d0b4a95c37fbb7b95ed06d7d781e9e04 Merge: 681c8bc 470437f Author: Brad KingAuthorDate: Mon Apr 17 19:34:21 2017 + Commit: Kitware Robot CommitDate: Mon Apr 17 15:34:25 2017 -0400 Stage topic 'ipo-var-per-config' Topic-id: 23698 Topic-url: https://gitlab.kitware.com/cmake/cmake/merge_requests/709 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=470437f6f93fb7c26afd38176a9779505c7922e5 commit 470437f6f93fb7c26afd38176a9779505c7922e5 Author: Ruslan Baratov AuthorDate: Sun Apr 16 10:24:08 2017 +0800 Commit: Ruslan Baratov CommitDate: Tue Apr 18 03:10:34 2017 +0800 Support CMAKE_INTERPROCEDURAL_OPTIMIZATION_ diff --git a/Help/manual/cmake-variables.7.rst b/Help/manual/cmake-variables.7.rst index 0a68815..7347bcc 100644 --- a/Help/manual/cmake-variables.7.rst +++ b/Help/manual/cmake-variables.7.rst @@ -292,6 +292,7 @@ Variables that Control the Build /variable/CMAKE_INSTALL_RPATH /variable/CMAKE_INSTALL_RPATH_USE_LINK_PATH /variable/CMAKE_INTERPROCEDURAL_OPTIMIZATION + /variable/CMAKE_INTERPROCEDURAL_OPTIMIZATION_CONFIG /variable/CMAKE_IOS_INSTALL_COMBINED /variable/CMAKE_LANG_CLANG_TIDY /variable/CMAKE_LANG_COMPILER_LAUNCHER diff --git a/Help/prop_tgt/INTERPROCEDURAL_OPTIMIZATION_CONFIG.rst b/Help/prop_tgt/INTERPROCEDURAL_OPTIMIZATION_CONFIG.rst index 492fee0..782b0f0 100644 --- a/Help/prop_tgt/INTERPROCEDURAL_OPTIMIZATION_CONFIG.rst +++ b/Help/prop_tgt/INTERPROCEDURAL_OPTIMIZATION_CONFIG.rst @@ -6,3 +6,7 @@ Per-configuration interprocedural optimization for a target. This is a per-configuration version of INTERPROCEDURAL_OPTIMIZATION. If set, this property overrides the generic property for the named configuration. + +This property is initialized by the +:variable:`CMAKE_INTERPROCEDURAL_OPTIMIZATION_` variable if it is set +when a target is created. diff --git a/Help/variable/CMAKE_INTERPROCEDURAL_OPTIMIZATION_CONFIG.rst b/Help/variable/CMAKE_INTERPROCEDURAL_OPTIMIZATION_CONFIG.rst new file mode 100644 index 000..b291102 --- /dev/null +++ b/Help/variable/CMAKE_INTERPROCEDURAL_OPTIMIZATION_CONFIG.rst @@ -0,0 +1,8 @@ +CMAKE_INTERPROCEDURAL_OPTIMIZATION_ +--- + +Default value for :prop_tgt:`INTERPROCEDURAL_OPTIMIZATION_` of targets. + +This variable is used to initialize the :prop_tgt:`INTERPROCEDURAL_OPTIMIZATION_` +property on all the targets. See that target property for additional +information. diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx index d29a8bd..f297988 100644 --- a/Source/cmTarget.cxx +++ b/Source/cmTarget.cxx @@ -291,13 +291,10 @@ cmTarget::cmTarget(std::string const& name, cmStateEnums::TargetType type, if (this->GetType() != cmStateEnums::UTILITY) { const char* configProps[] = { /* clang-format needs this comment to break after the opening brace */ - "ARCHIVE_OUTPUT_DIRECTORY_", - "LIBRARY_OUTPUT_DIRECTORY_", - "RUNTIME_OUTPUT_DIRECTORY_", - "PDB_OUTPUT_DIRECTORY_", - "COMPILE_PDB_OUTPUT_DIRECTORY_", - "MAP_IMPORTED_CONFIG_", - CM_NULLPTR + "ARCHIVE_OUTPUT_DIRECTORY_", "LIBRARY_OUTPUT_DIRECTORY_", + "RUNTIME_OUTPUT_DIRECTORY_", "PDB_OUTPUT_DIRECTORY_", + "COMPILE_PDB_OUTPUT_DIRECTORY_", "MAP_IMPORTED_CONFIG_", + "INTERPROCEDURAL_OPTIMIZATION_", CM_NULLPTR }; for (std::vector::iterator ci = configNames.begin(); ci != configNames.end(); ++ci) { --- Summary of changes: Help/manual/cmake-variables.7.rst |1 + Help/prop_tgt/INTERPROCEDURAL_OPTIMIZATION_CONFIG.rst |4 Help/variable/CMAKE_INTERPROCEDURAL_OPTIMIZATION_CONFIG.rst |8 Source/cmTarget.cxx | 11 --- 4 files changed, 17 insertions(+), 7 deletions(-) create mode 100644 Help/variable/CMAKE_INTERPROCEDURAL_OPTIMIZATION_CONFIG.rst hooks/post-receive -- CMake ___ Cmake-commits mailing list Cmake-commits@cmake.org http://public.kitware.com/mailman/listinfo/cmake-commits
[Cmake-commits] CMake branch, next, updated. v3.8.0-780-g681c8bc
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, next has been updated via 681c8bc4babcbd5d817c786474e0084c3034de4f (commit) via 2a09701e689286eebcf50414c54b22f42f7c531f (commit) via 11ab003b3aa3c7a11ae9f63946e9730c8dfab5d9 (commit) via d9d280f531897aa6a40e315a980052d9352e6e7e (commit) from 5497e9f327cc0768401dac2d15be5241b689f8cf (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=681c8bc4babcbd5d817c786474e0084c3034de4f commit 681c8bc4babcbd5d817c786474e0084c3034de4f Merge: 2a09701 d9d280f Author: Brad KingAuthorDate: Mon Apr 17 18:51:58 2017 + Commit: Kitware Robot CommitDate: Mon Apr 17 14:52:01 2017 -0400 Stage topic 'findmpi-mark-library-advanced' Topic-id: 23697 Topic-url: https://gitlab.kitware.com/cmake/cmake/merge_requests/708 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=2a09701e689286eebcf50414c54b22f42f7c531f commit 2a09701e689286eebcf50414c54b22f42f7c531f Merge: 5497e9f 11ab003 Author: Brad King AuthorDate: Mon Apr 17 18:48:46 2017 + Commit: Kitware Robot CommitDate: Mon Apr 17 14:48:48 2017 -0400 Stage topic 'tcc-enable_exports' Topic-id: 23705 Topic-url: https://gitlab.kitware.com/cmake/cmake/merge_requests/711 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=11ab003b3aa3c7a11ae9f63946e9730c8dfab5d9 commit 11ab003b3aa3c7a11ae9f63946e9730c8dfab5d9 Author: hsc AuthorDate: Mon Apr 17 17:33:17 2017 +0200 Commit: hsc CommitDate: Mon Apr 17 17:34:52 2017 +0200 TinyCC: Support ENABLE_EXPORT property Replace the default -Wl,--export-dynamic with -rdynamic. diff --git a/Modules/Platform/Linux-TinyCC-C.cmake b/Modules/Platform/Linux-TinyCC-C.cmake index f78e708..9409d8b 100644 --- a/Modules/Platform/Linux-TinyCC-C.cmake +++ b/Modules/Platform/Linux-TinyCC-C.cmake @@ -2,3 +2,4 @@ set(CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG "") set(CMAKE_SHARED_LIBRARY_RUNTIME_C_FLAG_SEP "") set(CMAKE_SHARED_LIBRARY_RPATH_LINK_C_FLAG "") set(CMAKE_SHARED_LIBRARY_SONAME_C_FLAG "-soname ") +set(CMAKE_EXE_EXPORTS_C_FLAG "-rdynamic ") https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=d9d280f531897aa6a40e315a980052d9352e6e7e commit d9d280f531897aa6a40e315a980052d9352e6e7e Author: Christian Pfeiffer AuthorDate: Sun Apr 16 00:24:10 2017 +0200 Commit: Christian Pfeiffer CommitDate: Sun Apr 16 00:24:10 2017 +0200 FindMPI: Mark old MPI library entries as advanced diff --git a/Modules/FindMPI.cmake b/Modules/FindMPI.cmake index ff2c4de..b24b5ef 100644 --- a/Modules/FindMPI.cmake +++ b/Modules/FindMPI.cmake @@ -660,6 +660,7 @@ if (MPI_NUMLIBS GREATER 1) else() set(MPI_EXTRA_LIBRARY "MPI_EXTRA_LIBRARY-NOTFOUND" CACHE STRING "Extra MPI libraries to link against" FORCE) endif() +mark_as_advanced(MPI_LIBRARY MPI_EXTRA_LIBRARY) #= # unset these vars to cleanup namespace --- Summary of changes: Modules/FindMPI.cmake |1 + Modules/Platform/Linux-TinyCC-C.cmake |1 + 2 files changed, 2 insertions(+) hooks/post-receive -- CMake ___ Cmake-commits mailing list Cmake-commits@cmake.org http://public.kitware.com/mailman/listinfo/cmake-commits
[Cmake-commits] CMake branch, next, updated. v3.8.0-776-g5497e9f
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, next has been updated via 5497e9f327cc0768401dac2d15be5241b689f8cf (commit) via 58c9c0b2fad8e5684405348abae62767025561fe (commit) via efe85c7f4490fb48d6f52b0b3f7cc03efc6dc02c (commit) via 049be8b95f6ef3ce3add8de841adf0957969306b (commit) via d97978b887c087e5c727de514476e6d9b924d61a (commit) from ccd80a7a9ad29ff9ce9565377b8cc9a8be74edff (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=5497e9f327cc0768401dac2d15be5241b689f8cf commit 5497e9f327cc0768401dac2d15be5241b689f8cf Merge: 58c9c0b efe85c7 Author: Brad KingAuthorDate: Mon Apr 17 18:39:57 2017 + Commit: Kitware Robot CommitDate: Mon Apr 17 14:39:59 2017 -0400 Stage topic 'GNUInstallDirs-add-RUNSTATEDIR' Topic-id: 23693 Topic-url: https://gitlab.kitware.com/cmake/cmake/merge_requests/706 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=58c9c0b2fad8e5684405348abae62767025561fe commit 58c9c0b2fad8e5684405348abae62767025561fe Merge: ccd80a7 049be8b Author: Brad King AuthorDate: Mon Apr 17 18:37:44 2017 + Commit: Kitware Robot CommitDate: Mon Apr 17 14:37:51 2017 -0400 Stage topic 'cpackifw-search-algorithm' Topic-id: 23540 Topic-url: https://gitlab.kitware.com/cmake/cmake/merge_requests/674 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=efe85c7f4490fb48d6f52b0b3f7cc03efc6dc02c commit efe85c7f4490fb48d6f52b0b3f7cc03efc6dc02c Author: Felix Geyer AuthorDate: Sat Apr 15 10:48:29 2017 +0200 Commit: Felix Geyer CommitDate: Sat Apr 15 10:48:29 2017 +0200 GNUInstallDirs: Add RUNSTATEDIR variable diff --git a/Modules/GNUInstallDirs.cmake b/Modules/GNUInstallDirs.cmake index 9599f27..64bd09e 100644 --- a/Modules/GNUInstallDirs.cmake +++ b/Modules/GNUInstallDirs.cmake @@ -45,6 +45,8 @@ # modifiable architecture-independent data (``com``) # ``LOCALSTATEDIR`` # modifiable single-machine data (``var``) +# ``RUNSTATEDIR`` +# run-time variable data (``LOCALSTATEDIR/run``) # ``LIBDIR`` # object code libraries (``lib`` or ``lib64`` # or ``lib/`` on Debian) @@ -75,10 +77,10 @@ # # ``/`` # -# For other than the ``SYSCONFDIR`` and ``LOCALSTATEDIR``, -# the value of ``CMAKE_INSTALL_`` is prefixed with ``usr/`` if -# it is not user-specified as an absolute path. For example, the -# ``INCLUDEDIR`` value ``include`` becomes ``usr/include``. +# For other than the ``SYSCONFDIR``, ``LOCALSTATEDIR`` and +# ``RUNSTATEDIR``, the value of ``CMAKE_INSTALL_`` is prefixed +# with ``usr/`` if it is not user-specified as an absolute path. +# For example, the ``INCLUDEDIR`` value ``include`` becomes ``usr/include``. # This is required by the `GNU Coding Standards`_, which state: # # When building the complete GNU system, the prefix will be empty @@ -86,20 +88,21 @@ # # ``/usr`` # -# For equal to ``SYSCONFDIR`` or ``LOCALSTATEDIR``, the -# ``CMAKE_INSTALL_FULL_`` is computed by prepending just ``/`` -# to the value of ``CMAKE_INSTALL_`` if it is not user-specified -# as an absolute path. For example, the ``SYSCONFDIR`` value ``etc`` -# becomes ``/etc``. This is required by the `GNU Coding Standards`_. +# For equal to ``SYSCONFDIR``, ``LOCALSTATEDIR`` or +# ``RUNSTATEDIR``, the ``CMAKE_INSTALL_FULL_`` is computed by +# prepending just ``/`` to the value of ``CMAKE_INSTALL_`` +# if it is not user-specified as an absolute path. +# For example, the ``SYSCONFDIR`` value ``etc`` becomes ``/etc``. +# This is required by the `GNU Coding Standards`_. # # ``/opt/...`` # -# For equal to ``SYSCONFDIR`` or ``LOCALSTATEDIR``, the -# ``CMAKE_INSTALL_FULL_`` is computed by *appending* the prefix -# to the value of ``CMAKE_INSTALL_`` if it is not user-specified -# as an absolute path. For example, the ``SYSCONFDIR`` value ``etc`` -# becomes ``/etc/opt/...``. This is defined by the -# `Filesystem Hierarchy Standard`_. +# For equal to ``SYSCONFDIR``, ``LOCALSTATEDIR`` or +# ``RUNSTATEDIR``, the ``CMAKE_INSTALL_FULL_`` is computed by +# *appending* the prefix to the value of ``CMAKE_INSTALL_`` +# if it is not user-specified as an absolute path. +# For example, the ``SYSCONFDIR`` value ``etc`` becomes ``/etc/opt/...``. +# This is defined by the `Filesystem Hierarchy Standard`_. # # .. _`Filesystem Hierarchy Standard`: https://refspecs.linuxfoundation.org/FHS_3.0/fhs/index.html # @@ -287,6 +290,9 @@
[Cmake-commits] CMake branch, next, updated. v3.8.0-771-gccd80a7
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, next has been updated via ccd80a7a9ad29ff9ce9565377b8cc9a8be74edff (commit) via 5e616fcf9ac1675fa4f3e7c1dc7f0e3dfb014df3 (commit) from be2c45f2a98d69cc9952b592777bb506f69149a2 (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=ccd80a7a9ad29ff9ce9565377b8cc9a8be74edff commit ccd80a7a9ad29ff9ce9565377b8cc9a8be74edff Merge: be2c45f 5e616fc Author: Brad KingAuthorDate: Mon Apr 17 17:52:11 2017 + Commit: Kitware Robot CommitDate: Mon Apr 17 13:52:15 2017 -0400 Stage topic 'fix-CMP0026-old' Topic-id: 23702 Topic-url: https://gitlab.kitware.com/cmake/cmake/merge_requests/710 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=5e616fcf9ac1675fa4f3e7c1dc7f0e3dfb014df3 commit 5e616fcf9ac1675fa4f3e7c1dc7f0e3dfb014df3 Author: Brad King AuthorDate: Mon Apr 17 09:29:49 2017 -0400 Commit: Brad King CommitDate: Mon Apr 17 10:10:15 2017 -0400 CMP0026: Fix OLD behavior with file written during configure step Refactoring in commit 60307c5056 (cmGeneratorTarget: Replace source classifier implementation, 2017-04-07) accidentally regressed support for CMP0026's OLD behavior in the case of a source file written by project code during the configure step after getting a LOCATION. We should not perform full source classification until the generate step because files written by the project's configure step may not exist yet. Add special logic to support this case. Add a test case for it. Reported-by: David Stoup diff --git a/Source/cmGeneratorTarget.cxx b/Source/cmGeneratorTarget.cxx index 6779641..e84bf4e 100644 --- a/Source/cmGeneratorTarget.cxx +++ b/Source/cmGeneratorTarget.cxx @@ -947,6 +947,26 @@ void cmGeneratorTarget::GetSourceFiles(std::vector& files, void cmGeneratorTarget::GetSourceFiles(std::vector & files, const std::string& config) const { + if (!this->GlobalGenerator->GetConfigureDoneCMP0026()) { +// Since we are still configuring not all sources may exist yet, +// so we need to avoid full source classification because that +// requires the absolute paths to all sources to be determined. +// Since this is only for compatibility with old policies that +// projects should not depend on anymore, just compute the files +// without memoizing them. +std::vector srcs; +this->GetSourceFiles(srcs, config); +std::set emitted; +for (std::vector::const_iterator i = srcs.begin(); + i != srcs.end(); ++i) { + cmSourceFile* sf = this->Makefile->GetOrCreateSource(*i); + if (emitted.insert(sf).second) { +files.push_back(sf); + } +} +return; + } + KindedSources const& kinded = this->GetKindedSources(config); files.reserve(kinded.Sources.size()); for (std::vector::const_iterator si = kinded.Sources.begin(); diff --git a/Tests/RunCMake/CMP0026/CMP0026-OLD.cmake b/Tests/RunCMake/CMP0026/CMP0026-OLD.cmake new file mode 100644 index 000..80497a3 --- /dev/null +++ b/Tests/RunCMake/CMP0026/CMP0026-OLD.cmake @@ -0,0 +1,12 @@ +enable_language(CXX) + +cmake_policy(SET CMP0026 OLD) + +set(out ${CMAKE_CURRENT_BINARY_DIR}/out.txt) + +add_library(somelib empty.cpp ${out}) +get_target_property(_loc somelib LOCATION) + +file(WRITE "${out}" + "source file written by project code after getting target LOCATION\n" + ) diff --git a/Tests/RunCMake/CMP0026/RunCMakeTest.cmake b/Tests/RunCMake/CMP0026/RunCMakeTest.cmake index 6331717..047da28 100644 --- a/Tests/RunCMake/CMP0026/RunCMakeTest.cmake +++ b/Tests/RunCMake/CMP0026/RunCMakeTest.cmake @@ -1,6 +1,7 @@ include(RunCMake) run_cmake(CMP0026-WARN) +run_cmake(CMP0026-OLD) run_cmake(CMP0026-NEW) run_cmake(CMP0026-IMPORTED) run_cmake(CMP0026-CONFIG-LOCATION-NEW) --- Summary of changes: Source/cmGeneratorTarget.cxx | 20 Tests/RunCMake/CMP0026/CMP0026-OLD.cmake | 12 Tests/RunCMake/CMP0026/RunCMakeTest.cmake |1 + 3 files changed, 33 insertions(+) create mode 100644 Tests/RunCMake/CMP0026/CMP0026-OLD.cmake hooks/post-receive -- CMake ___ Cmake-commits mailing list Cmake-commits@cmake.org http://public.kitware.com/mailman/listinfo/cmake-commits
Re: [CMake] Predownload
Instead of trying to do this with the toolchain somehow in cmake I think you might want to look into a meta build system that handles the toolchain and all other dependencies. I listed all I know of a couple months ago in this thread. https://cmake.org/pipermail/cmake/2017-March/065229.html From: CMake [mailto:cmake-boun...@cmake.org] On Behalf Of Zabel, Oliver Sent: Monday, April 17, 2017 8:07 AM To: cmake@cmake.org Subject: [CMake] Predownload Hi, i’m developing Software for embedded Systems and my applications Need to run on different target platforms. Until now we are build our Code with make but i’d like to Switch to cmake. ATM we’re putting our Compiler toolchains in our VCS to be able to produce the same binarys even after years. Until now, there is only one toolchain include in a Project as svn-external/git submodule. But i want to use toolchain-files with cmake. Now here is my idea and i’d like to know whether this is possible with cmake. I have my Project root and in this Folder i’d like to have different toolchain files for different Compilers. I’d like to exclude the Compilers as external. Now i’d like to build the cmake Cache by calling cmake with the required toolchain file. Is it now somehow possible, to download the required toolchain before the Cache is buidl up? If this would be possible, i could dynamicly choose which toolchain i want to have – would be great for Compiler / unit Tests as well. Perhaps someone has a better idea to do this or even i using such a System and give me a hint? Thanks a lot! Best regards, Oliver -- 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-commits] CMake branch, master, updated. v3.8.0-769-gbe2c45f
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 be2c45f2a98d69cc9952b592777bb506f69149a2 (commit) via c003f1b996fdc6ff9e2542c21578d5cf04153247 (commit) via ddd2b02455db9b0ef3604af1b9b10c22af56bff9 (commit) via d4db7a2ec0c4f1ebbfc98984672793f5d9eb2744 (commit) via c0323cbf5f407e9a231c8e7d55801ef3723748bd (commit) via 99b90dbf3c6ddb1093dfd867c6810003a61cdde7 (commit) via dadf1570d919a8dd79547b8a01644d03ae607040 (commit) via ca697bfc264e4058de26942590aeaca25182ce15 (commit) via e44a8d2c322ba82c594740a2d2e49f89afdcc244 (commit) via 97cc29c7662f51f0e532f92e37070f9b44791b88 (commit) via 2f6f6f0c153f19f7efab96b2a4c3c9c05362372b (commit) via 888c8af6cbfcbaffeca2fb65a0da8641417b (commit) via 40aa6c059c3beebabf8fa433b768192300331e50 (commit) via d2b0a47c6fc4f3f4c9c869111c0750f6d5a9d574 (commit) via 9a5dcc32676a24a2dd282330839ce48d84c3da67 (commit) via fee011946e4fe0fc20f2f6bf016851402241d554 (commit) via b80c6d120c4f780d579071545ddc7e642b6e6276 (commit) from eb974170cbfbbc202ba7bd3688879a239544f1e2 (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 - --- Summary of changes: CMakeLists.txt | 11 ++ .../CMAKE_VS_WINDOWS_TARGET_PLATFORM_VERSION.rst |5 + Modules/InstallRequiredSystemLibraries.cmake |6 + Source/cmExportBuildFileGenerator.cxx |4 +- Source/cmFileCommand.cxx | 61 +++-- Source/cmGeneratorTarget.cxx | 54 +++- Source/cmGeneratorTarget.h | 20 +++ Source/cmGlobalVisualStudio14Generator.cxx | 46 +-- Source/cmGlobalXCodeGenerator.cxx | 47 ++- Source/cmLocalVisualStudio7Generator.cxx | 84 +++- Source/cmLocalVisualStudio7Generator.h |3 +- Source/cmVisualStudio10TargetGenerator.cxx | 66 -- Source/cmVisualStudio10TargetGenerator.h |1 + .../INSTALL-FILES_FROM_DIR-bad-result.txt} |0 .../file/INSTALL-FILES_FROM_DIR-bad-stderr.txt | 15 +++ .../RunCMake/file/INSTALL-FILES_FROM_DIR-bad.cmake |5 + .../file/INSTALL-FILES_FROM_DIR-stdout.txt |8 ++ Tests/RunCMake/file/INSTALL-FILES_FROM_DIR.cmake |7 + Tests/RunCMake/file/RunCMakeTest.cmake |2 + .../hello.f => Tests/RunCMake/file/from/a.txt |0 .../hello.f => Tests/RunCMake/file/from/a/b.txt|0 .../hello.f => Tests/RunCMake/file/from/a/b/c.txt |0 Utilities/IWYU/mapping.imp | 136 23 files changed, 472 insertions(+), 109 deletions(-) copy Tests/RunCMake/{Android/BadSYSROOT-result.txt => file/INSTALL-FILES_FROM_DIR-bad-result.txt} (100%) create mode 100644 Tests/RunCMake/file/INSTALL-FILES_FROM_DIR-bad-stderr.txt create mode 100644 Tests/RunCMake/file/INSTALL-FILES_FROM_DIR-bad.cmake create mode 100644 Tests/RunCMake/file/INSTALL-FILES_FROM_DIR-stdout.txt create mode 100644 Tests/RunCMake/file/INSTALL-FILES_FROM_DIR.cmake copy Modules/IntelVSImplicitPath/hello.f => Tests/RunCMake/file/from/a.txt (100%) copy Modules/IntelVSImplicitPath/hello.f => Tests/RunCMake/file/from/a/b.txt (100%) copy Modules/IntelVSImplicitPath/hello.f => Tests/RunCMake/file/from/a/b/c.txt (100%) create mode 100644 Utilities/IWYU/mapping.imp hooks/post-receive -- CMake ___ Cmake-commits mailing list Cmake-commits@cmake.org http://public.kitware.com/mailman/listinfo/cmake-commits
[Cmake-commits] CMake branch, next, updated. v3.8.0-769-gbe2c45f
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, next has been updated discards 81ad2d8a967d4b812520daea37b8c6e7da062493 (commit) discards ce09f773f7fafd604b9f1973b0871091d80fd1c5 (commit) discards 7e57e70127d308457cf2824701d9d283b2ca1e4d (commit) discards 0d4c2fe4930a8e445bf6425769655f6073fa8aa9 (commit) discards 8eae3a742060f36d66310ebd4365b13d0759816e (commit) via be2c45f2a98d69cc9952b592777bb506f69149a2 (commit) via c003f1b996fdc6ff9e2542c21578d5cf04153247 (commit) via ddd2b02455db9b0ef3604af1b9b10c22af56bff9 (commit) via d4db7a2ec0c4f1ebbfc98984672793f5d9eb2744 (commit) via c0323cbf5f407e9a231c8e7d55801ef3723748bd (commit) This update added new revisions after undoing existing revisions. That is to say, the old revision is not a strict subset of the new revision. This situation occurs when you --force push a change and generate a repository containing something like this: * -- * -- B -- O -- O -- O (81ad2d8a967d4b812520daea37b8c6e7da062493) \ N -- N -- N (be2c45f2a98d69cc9952b592777bb506f69149a2) When this happens we assume that you've already had alert emails for all of the O revisions, and so we here report only the revisions in the N branch from the common base, B. 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 - --- Summary of changes: hooks/post-receive -- CMake ___ Cmake-commits mailing list Cmake-commits@cmake.org http://public.kitware.com/mailman/listinfo/cmake-commits
[CMake] System is unknown to cmake message
I am one of the developers for PLPlot and I have been trying different build configurations to check where it does and does not work. When I tried building on Windows 10 using MSYS2, I get the "System is unknown to cmake" message. The cmake identifies the system as "MINGW64_NT-10.0" I managed to get cmake to generate a working Makefile with the following command line cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=/opt/plplot -DPLD_wingdi=ON -DPLD_wingcc=ON -DWIN32=1 -DMINGW=1 -DMINGWLIBPATH=/d/msys64/usr/lib/w32api ../plplot/ &> cmake.log I have attached the cache file per the instructions in the message. Please let me know if you need me to try anything. # This is the CMakeCache file. # For build in directory: /d/plplot/build-mingw # It was generated by CMake: /usr/bin/cmake.exe # You can edit this file to change values found and used by cmake. # If you do not want to change any of the values, simply exit the editor. # If you do want to change a value, simply edit, save, and exit the editor. # The syntax for the file is as follows: # KEY:TYPE=VALUE # KEY is the name of a variable in the cache. # TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!. # VALUE is the current value for the KEY. # EXTERNAL cache entries //Add extra source-tree consistency checking targets that require // special tools ADD_SPECIAL_CONSISTENCY_CHECKING:BOOL=OFF //Enable build of DocBook documentation BUILD_DOC:BOOL=OFF //Build doxygen documentation BUILD_DOX_DOC:BOOL=OFF //Build Hershey fonts? BUILD_HERSHEY_FONTS:BOOL=OFF //Build shared libraries BUILD_SHARED_LIBS:BOOL=ON //Compile examples in the build tree and enable ctest BUILD_TEST:BOOL=OFF //Path to a program. CMAKE_AR:FILEPATH=/usr/bin/ar.exe //Choose the type of build, options are: None(CMAKE_CXX_FLAGS or // CMAKE_C_FLAGS used) Debug Release RelWithDebInfo MinSizeRel. CMAKE_BUILD_TYPE:STRING= //Enable/Disable color output during build. CMAKE_COLOR_MAKEFILE:BOOL=ON //CXX compiler CMAKE_CXX_COMPILER:FILEPATH=/usr/bin/CC.exe //Flags used by the compiler during all build types. CMAKE_CXX_FLAGS:STRING= //Flags used by the compiler during debug builds. CMAKE_CXX_FLAGS_DEBUG:STRING=-g //Flags used by the compiler during release builds for minimum // size. CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG //Flags used by the compiler during release builds. CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG //Flags used by the compiler during release builds with debug info. CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG //C compiler CMAKE_C_COMPILER:FILEPATH=/usr/bin/cc.exe //Flags used by the compiler during all build types. CMAKE_C_FLAGS:STRING= //Flags used by the compiler during debug builds. CMAKE_C_FLAGS_DEBUG:STRING=-g //Flags used by the compiler during release builds for minimum // size. CMAKE_C_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG //Flags used by the compiler during release builds. CMAKE_C_FLAGS_RELEASE:STRING=-O3 -DNDEBUG //Flags used by the compiler during release builds with debug info. CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG //Flags used by the linker. CMAKE_EXE_LINKER_FLAGS:STRING= //Flags used by the linker during debug builds. CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING= //Flags used by the linker during release minsize builds. CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING= //Flags used by the linker during release builds. CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING= //Flags used by the linker during Release with Debug Info builds. CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING= //Enable/Disable output of compile commands during generation. CMAKE_EXPORT_COMPILE_COMMANDS:BOOL=OFF //Fortran compiler CMAKE_Fortran_COMPILER:FILEPATH=/usr/bin/gfortran.exe //Flags for Fortran compiler. CMAKE_Fortran_FLAGS:STRING= //Flags used by the compiler during debug builds. CMAKE_Fortran_FLAGS_DEBUG:STRING=-g //Flags used by the compiler during release builds for minimum // size. CMAKE_Fortran_FLAGS_MINSIZEREL:STRING=-Os //Flags used by the compiler during release builds. CMAKE_Fortran_FLAGS_RELEASE:STRING=-O3 //Flags used by the compiler during release builds with debug info. CMAKE_Fortran_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG //install location for user executables CMAKE_INSTALL_BINDIR:PATH=/d/Nuclear/gnu_x64/bin //install location for read-only architecture-independent data CMAKE_INSTALL_DATADIR:PATH=/d/Nuclear/gnu_x64/share //install location for architecture-dependent files CMAKE_INSTALL_EXEC_PREFIX:PATH=/d/Nuclear/gnu_x64 //install location for C header files CMAKE_INSTALL_INCLUDEDIR:PATH=/d/Nuclear/gnu_x64/include //install location for info documentation CMAKE_INSTALL_INFODIR:PATH=/d/Nuclear/gnu_x64/share/info //install location for object code libraries CMAKE_INSTALL_LIBDIR:PATH=/d/Nuclear/gnu_x64/lib //install location for man documentation CMAKE_INSTALL_MANDIR:PATH=/d/Nuclear/gnu_x64/share/man //install location for pkg-config *.pc files
[CMake] Predownload
Hi, i’m developing Software for embedded Systems and my applications Need to run on different target platforms. Until now we are build our Code with make but i’d like to Switch to cmake. ATM we’re putting our Compiler toolchains in our VCS to be able to produce the same binarys even after years. Until now, there is only one toolchain include in a Project as svn-external/git submodule. But i want to use toolchain-files with cmake. Now here is my idea and i’d like to know whether this is possible with cmake. I have my Project root and in this Folder i’d like to have different toolchain files for different Compilers. I’d like to exclude the Compilers as external. Now i’d like to build the cmake Cache by calling cmake with the required toolchain file. Is it now somehow possible, to download the required toolchain before the Cache is buidl up? If this would be possible, i could dynamicly choose which toolchain i want to have – would be great for Compiler / unit Tests as well. Perhaps someone has a better idea to do this or even i using such a System and give me a hint? Thanks a lot! Best regards, Oliver -- 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