Timeline for answer to How to use c++20 modules with CMake? by ComicSansMS
Current License: CC BY-SA 4.0
Post Revisions
27 events
| when toggle format | what | by | license | comment | |
|---|---|---|---|---|---|
| Feb 14, 2024 at 14:55 | comment | added | ComicSansMS | @AnatolyBugakov gcc 14 has not been released at the time of this writing, but you can compile the current gcc 14 development branch from source on your own to get a working compiler with all the relevant features. That's obviously not a great idea for production environments, but if you want to start playing around with the feature already, that's the way to do it. | |
| Feb 14, 2024 at 14:24 | comment | added | Anatoly Bugakov | sorry for a dumb question, but how do you get gcc 14, currently latest is 13.2: gcc.gnu.org/releases.html | |
| Jan 6, 2024 at 10:49 | comment | added | Dean | Note: regarding Clang 17, clang-scan-deps is required but on Macs, I can't find it on Macports. Not sure with Homebrew. | |
| Dec 15, 2023 at 8:28 | history | edited | ComicSansMS | CC BY-SA 4.0 |
added compiler explorer link
|
| Dec 15, 2023 at 7:16 | history | edited | ComicSansMS | CC BY-SA 4.0 |
added link to cppcon video
|
| Dec 13, 2023 at 14:12 | history | edited | ComicSansMS | CC BY-SA 4.0 |
updated answer for cmake 3.28
|
| Nov 3, 2023 at 3:36 | comment | added | Joey Sabey |
This config doesn't quite work for me, unfortunately. If I add in add_compile_options(-fmodules) it stops failing saying it can't find the module, though unfortunately then clang-scan-deps shits the bed (total crash with a stack dump) unless I also add in add_compile_options(-fno-implicit-module-maps)... I honestly don't really know the ramifications of doing this, and information around it seems scant and arcane and even contradictory, but it does appear to work with at least this kind of very minimal test.
|
|
| Aug 5, 2023 at 9:47 | history | edited | ComicSansMS | CC BY-SA 4.0 |
rephrased original answer into the intro section
|
| Aug 5, 2023 at 9:34 | history | edited | ComicSansMS | CC BY-SA 4.0 |
updated for CMake 3.27
|
| Jun 3, 2023 at 4:40 | history | edited | ComicSansMS | CC BY-SA 4.0 |
updated issue link
|
| Jun 2, 2023 at 16:16 | comment | added | Splines | With Ninja 1.10.0, I get an error suggesting that "Ninja 1.11 or higher is required" ("The Ninja generator does not support C++20 modules using Ninja version 1.10.0 due to lack of required features.") | |
| Jun 2, 2023 at 15:59 | comment | added | Splines | (Note that at least that's the date the commit was pushed, don't know in which CMake version this will be reflected). | |
| Jun 2, 2023 at 15:51 | comment | added | Splines |
Note that as of 1st June 2023, the CMAKE_EXPERIMENTAL_CXX_MODULE_DYNDEP flag is not necessary anymore and got removed from CMake here.
|
|
| May 15, 2023 at 17:33 | comment | added | Tsyvarev | But your first part is titled "Experimental Modules Support" and you intend to update it regularly. It looks like the better place for the issue link and explanations why modules support is currently experimental. | |
| May 15, 2023 at 15:05 | comment | added | Tsyvarev | Does the last part - "Original answer" - have any value except historical one? If no, then it could be safely removed: the edit history already incorporates that info. | |
| May 13, 2023 at 11:05 | history | edited | ComicSansMS | CC BY-SA 4.0 |
current status of header units
|
| Apr 9, 2023 at 12:52 | history | edited | ComicSansMS | CC BY-SA 4.0 |
corrected paragraph about implementation units
|
| Apr 2, 2023 at 12:54 | history | edited | ComicSansMS | CC BY-SA 4.0 |
added note about internal partitions
|
| Apr 2, 2023 at 12:40 | history | edited | ComicSansMS | CC BY-SA 4.0 |
fixed youtube link to point to the correct talk
|
| Apr 1, 2023 at 22:33 | history | edited | ComicSansMS | CC BY-SA 4.0 |
additional reference; removed cmake 3.20 update
|
| Apr 1, 2023 at 12:17 | history | edited | ComicSansMS | CC BY-SA 4.0 |
expanded the answer to reflect the latest developments
|
| Nov 2, 2022 at 21:07 | comment | added | adentinger | The CppCon channel just released a talk of one of the Kitware founders sharing an update on C++20 modules support. Basically: it's coming. | |
| Jul 19, 2022 at 1:12 | comment | added | Lothar | So now 3 and a half years later there is still no support for modules and everything is still experimental (based on gitlab.kitware.com/cmake/cmake/-/issues/18355) . So sad. | |
| Feb 8, 2021 at 6:40 | history | edited | ComicSansMS | CC BY-SA 4.0 |
added update about experimental ninja support
|
| Sep 27, 2020 at 13:36 | comment | added | ComicSansMS | @Lothar MSVC is now shipping a much more capable Modules implementation than before on version 16.8 and higher. However, this version is currently still in preview and not available on the main release channel. It is also unclear at the moment, whether that implementation already provides everything that would be needed for a proper build system integration with CMake. In general, due to the deep impact of the feature for the overall build process, I expect it will take a couple of more years (!) before this issue is resolved to a level where you can use it for a productive code base. | |
| Sep 27, 2020 at 10:51 | comment | added | Lothar | Did anything change in the last 18 month? | |
| Apr 16, 2020 at 6:55 | history | answered | ComicSansMS | CC BY-SA 4.0 |