eupolicy.social is one of the many independent Mastodon servers you can use to participate in the fediverse.
This Mastodon server is a friendly and respectful discussion space for people working in areas related to EU policy. When you request to create an account, please tell us something about you.

Server stats:

208
active users

#cmake

0 posts0 participants0 posts today
oblate<p>I have a long-standing project which I am converting to use C++ modules. I've decided that using <a href="https://mastodon.social/tags/perl" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>perl</span></a> to generate the Makefile is vastly easier than using <a href="https://mastodon.social/tags/autotools" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>autotools</span></a> and <a href="https://mastodon.social/tags/cmake" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cmake</span></a>. </p><p>At least I can understand WTF is going on.</p><p>In the end, programmatical beats automagical.</p>
Matěj Cepl 🇪🇺 🇨🇿 🇺🇦<p><span class="h-card" translate="no"><a href="https://social.treehouse.systems/@mgorny" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>mgorny</span></a></span> </p><p>I wanted to say that “of course, <a href="https://en.osm.town/tags/openSUSE" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>openSUSE</span></a> uses <a href="https://en.osm.town/tags/CMake" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>CMake</span></a>, because we do The Right Thing™”, but then I had a look at our SPEC <a href="https://build.opensuse.org/projects/openSUSE:Factory/packages/hdf5/files/hdf5.spec?expand=1" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">build.opensuse.org/projects/op</span><span class="invisible">enSUSE:Factory/packages/hdf5/files/hdf5.spec?expand=1</span></a> … yes, we use CMake, but that’s A LOT of hand-waving around it to make it work!</p>
mgorny-nyan (he) :autism:🙀🚂🐧<p><a href="https://social.treehouse.systems/tags/HDF5" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>HDF5</span></a> is doing great. So basically:</p><p>1. Originally, upstream used autotools. The build system installed a h5cc wrapper which — besides being a compiler wrapper — had a few config-tool style options.<br>2. Then, upstream added <a href="https://social.treehouse.systems/tags/CMake" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>CMake</span></a> build system as an alternative. It installed a different h5cc wrapper that did not have the config-tool style options anymore.<br>3. Downstreams that tried CMake quickly discovered that the new wrapper broke a lot of packages, so they reverted to autotools and reported a bug.<br>4. Upstream closed the bug, handwaving it as "CMake h5cc changes have been noted in the Release.txt at the time of change - archived copy should exist in the history files."<br>5. Upstream announced the plans to remove autotools support.</p><p>So, to summarize the current situation:</p><p>1. Pretty much everyone (at least <a href="https://social.treehouse.systems/tags/Arch" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Arch</span></a>, <a href="https://social.treehouse.systems/tags/Conda" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Conda</span></a>-forge, <a href="https://social.treehouse.systems/tags/Debian" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Debian</span></a>, <a href="https://social.treehouse.systems/tags/Fedora" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Fedora</span></a>, <a href="https://social.treehouse.systems/tags/Gentoo" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Gentoo</span></a>) is building using autotools, because CMake builds cause too much breakage.<br>2. Downstreams originally judged this to be a HDF5 issue, so they didn't report bugs to affected packages. Not sure if they're even aware that HDF5 upstream rejected the report.<br>3. All packages remain "broken", and I'm guessing their authors may not even be aware of the problem, because, well, as I pointed out, everyone is still using autotools, and nobody reported the issues during initial CMake testing.<br>4. I'm not even sure if there is a good "fix" here. I honestly don't know the package, but it really sounds like the config-tool was removed with no replacement, so the only way forward might be for people to switch over to CMake (sigh) — which would of course break the packages almost everywhere, unless people also add fallbacks for compatibility with autotools builds.<br>5. The upstream's attitude suggests that HDF5 is pretty much a project unto itself, and doesn't care about its actual users.</p><p><a href="https://github.com/HDFGroup/hdf5/issues/1814" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">github.com/HDFGroup/hdf5/issue</span><span class="invisible">s/1814</span></a></p>
The Last Psion | Alex<p>Mini-rant ahead:</p><p>I'm delving into <a href="https://oldbytes.space/tags/cmake" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cmake</span></a> to try to make it build a <code>compile_commands.json</code> file to work with <a href="https://oldbytes.space/tags/retrocomputing" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>retrocomputing</span></a> C header files, specifically the <a href="https://oldbytes.space/tags/Psion" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Psion</span></a> SIBO C SDK (from the early 90s).</p><p>I don't actually want cmake to do anything but tell clangd what to do, so that I've got a working language server in NeoVim.</p><p>I don't need it to build any Makefiles, I don't need it to tell a compiler what to do. I just want clangd to treat my old 16-bit real mode code correctly, and that the header files are in <code>~/dosbox/sibo-c/SIBOSDK/include/</code>.</p><p>Note that I can't point it at the compiler, because the compiler (TopSpeed) runs in DOSBox. There is no modern compiler that will work.</p><p>So... Do I have to fake it somehow? For example, do I have to tell cmake that it's actually using a different compiler (e.g. <a href="https://oldbytes.space/tags/Watcom" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Watcom</span></a>) to make it behave correctly?</p>
Reto<p>Kenntnisse im Umgang mit dem "CMake Compiler"</p><p>Das is bestimmt ein Traumjob. 🙃</p><p><a href="https://careers.thalesgroup.com/de/de/job/R0263142/Software-Real-Time-Embedded-Engineer-100-m-w-d" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">careers.thalesgroup.com/de/de/</span><span class="invisible">job/R0263142/Software-Real-Time-Embedded-Engineer-100-m-w-d</span></a></p><p><a href="https://swiss.social/tags/FOSS" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>FOSS</span></a> <a href="https://swiss.social/tags/Linux" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Linux</span></a> <a href="https://swiss.social/tags/CMake" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>CMake</span></a></p>
chn<p>The <a href="https://mastodon.art/tags/github" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>github</span></a> repository of my <a href="https://mastodon.art/tags/sega" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>sega</span></a> <a href="https://mastodon.art/tags/mastersystem" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>mastersystem</span></a> and <a href="https://mastodon.art/tags/gamegear" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>gamegear</span></a> <a href="https://mastodon.art/tags/emulator" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>emulator</span></a> called "Masterlator" is now public 🙂 I've rewritten the code in proper C++, use <a href="https://mastodon.art/tags/cmake" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cmake</span></a> as the build system, utilize <a href="https://mastodon.art/tags/sdl2" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>sdl2</span></a> and added a new <a href="https://mastodon.art/tags/debugger" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>debugger</span></a> with <a href="https://mastodon.art/tags/wladx" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>wladx</span></a> compatible *.sym file support, memory viewer and tile/sprite viewer. It's rather basic now but will hopefully be a good tool for <a href="https://mastodon.art/tags/homebrew" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>homebrew</span></a> game <a href="https://mastodon.art/tags/development" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>development</span></a> in the future.</p><p><a href="https://github.com/chn-dev/MasterlatorSDL/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">github.com/chn-dev/Masterlator</span><span class="invisible">SDL/</span></a></p><p><a href="https://www.chn-dev.net/Projects/Masterlator/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">chn-dev.net/Projects/Masterlat</span><span class="invisible">or/</span></a></p>
Ludovic Courtès<p>Did it find it or did it not?</p><p><a href="https://toot.aquilenet.fr/tags/CMake" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>CMake</span></a> ❤</p>
Linux Magazine<p>From the Linux Update newsletter: If you're looking for a C/C++ package manager, learn about Microsoft's platform-independent vcpkg for managing libraries and their dependencies <a href="https://www.linux-magazine.com/Issues/2024/280/vcpkg" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">linux-magazine.com/Issues/2024</span><span class="invisible">/280/vcpkg</span></a><br><a href="https://fosstodon.org/tags/vpkg" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>vpkg</span></a> <a href="https://fosstodon.org/tags/GitHub" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>GitHub</span></a> <a href="https://fosstodon.org/tags/OpenSource" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>OpenSource</span></a> <a href="https://fosstodon.org/tags/CMake" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>CMake</span></a> <a href="https://fosstodon.org/tags/libraries" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>libraries</span></a> <a href="https://fosstodon.org/tags/PackageManager" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>PackageManager</span></a></p>
technomancy<p>I'm not like ... a <em>frequent</em> contributor to <a href="https://hey.hagelb.org/tags/tic80" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>tic80</span></a>; I submit patches maybe once or twice a year</p><p>that said, ever since my first contribution, I can't remember a SINGLE time I've pulled down the latest main and had it actually build successfully; every single time, <a href="https://hey.hagelb.org/tags/cmake" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cmake</span></a> finds some new way to screw things up</p><p>today after working thru some bullshit I finally got it to build successfully, but my build knows no languages despite me passing the cmake flag to build all languages</p>
Harry Sintonen<p><a href="https://infosec.exchange/tags/GCC14" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>GCC14</span></a> promoted some warnings to errors. This can break <a href="https://infosec.exchange/tags/autoconf" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>autoconf</span></a>, <a href="https://infosec.exchange/tags/CMake" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>CMake</span></a>, <a href="https://infosec.exchange/tags/Meson" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>Meson</span></a> or other build environments autoprobing for features, resulting in code built with missing or altered functionality. This could even lead to security impact, if some security related feature is unexpectedly not enabled.</p><p>Passing CC as "gcc -fpermissive" should fix this. If this is not an option there's even the nuclear option of adding a gcc wrapper script that does:</p><p>#!/bin/sh<br>exec /usr/bin/gcc -fpermissive "$@"</p><p>EDIT: I do not mean to say that these new options should blanket-disabled globally. There however are currently some packages that have problems with GCC 14 (missing features or existing functions not being used, or just failing to build). Naturally these packages should be fixed themselves. Meanwhile -fpermissive will allow building most of these troublesome packages.</p>
RainTechnology/Programs that are black magic to me and I will never understand how to properly use them no matter how bad i want to. (In no special order)<br><br>- <a class="hashtag" href="https://melonbread.dev/tag/blender" rel="nofollow noopener" target="_blank">#Blender</a> (3D Modeling in general)<br>- <a class="hashtag" href="https://melonbread.dev/tag/cmake" rel="nofollow noopener" target="_blank">#CMake</a><br>- <a class="hashtag" href="https://melonbread.dev/tag/dwarffortress" rel="nofollow noopener" target="_blank">#DwarfFortress</a><br>- <a class="hashtag" href="https://melonbread.dev/tag/freecad" rel="nofollow noopener" target="_blank">#freeCAD</a> (or cad in general)<br>- <a class="hashtag" href="https://melonbread.dev/tag/rust" rel="nofollow noopener" target="_blank">#Rust</a>-lang (I can run `cargo install` just fine)<br>- <a class="hashtag" href="https://melonbread.dev/tag/powershell" rel="nofollow noopener" target="_blank">#PowerShell</a> (eh, don't care that I don't get this one)<br>- <a class="hashtag" href="https://melonbread.dev/tag/secureboot" rel="nofollow noopener" target="_blank">#SecureBoot</a><br>- <a class="hashtag" href="https://melonbread.dev/tag/treafik" rel="nofollow noopener" target="_blank">#Treafik</a> <br><br>This is probably more but man it kills me I can not wrap my head around these.
Cr0ydon<p>When you use <a href="https://mastodon.social/tags/CMake" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>CMake</span></a> with the Visual Studio Generator and you tell it explicitly BUILD_SHARED_LIBS=ON it will build shared AND static, but if you don't specify this variable it will only build a static build?</p><p>?????????????</p>
Markus Werle<p><span class="h-card" translate="no"><a href="https://hachyderm.io/@Di4na" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>Di4na</span></a></span> And now I have to put more work into it because <a href="https://nrw.social/tags/CMake" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>CMake</span></a> continues (!) to refine how dependencies can me managed. </p><p><a href="https://www.youtube.com/watch?v=s0q6s5XzIrA" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">youtube.com/watch?v=s0q6s5XzIr</span><span class="invisible">A</span></a></p>
Markus Werle<p><span class="h-card" translate="no"><a href="https://hachyderm.io/@Di4na" class="u-url mention" rel="nofollow noopener" target="_blank">@<span>Di4na</span></a></span> Nice and efficient build system that are humane to use:</p><p>Well, this is the topic that most work went into. Look at what happened to <a href="https://nrw.social/tags/CMake" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>CMake</span></a> within the past ten years. This is a completely different system now. </p><p>To catch up I highly recommend Craig Scott's seminal book:<br><a href="https://crascit.com/professional-cmake/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">crascit.com/professional-cmake</span><span class="invisible">/</span></a></p><p>In contrast to 2018, I consider CMake now something that humans can use without losing their minds. </p><p>Some recent changes indicate that the travel is not over:</p><p><a href="https://cpp-aachen.github.io/archive/2024-04-10/2024_04_10_CMake_File_Sets.pdf" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">cpp-aachen.github.io/archive/2</span><span class="invisible">024-04-10/2024_04_10_CMake_File_Sets.pdf</span></a></p>