Ugh, CMake is being CMake again. This project depends on ECM 6.0, but how in the fuck do I provide that dependency? All dependencies, no dependency management.
@eschwartz @ShadSterling @xgranade Sincerely: I am so sorry that happened to you
@eschwartz @ShadSterling @xgranade No, it's worse than that. CMake has a dedicated feature intended for downloading and installing dependencies. It's here in the "Using Dependencies Guide".
You've never heard of this because not a lot of people use it, because it's not very good. I used it for a while, and then I stopped, because although it works it's not very good.
@eschwartz @ShadSterling @xgranade "CMakeLists.txt cannot install dependencies" ohhh, never say CMakeLists CANNOT do a thing… things deep, eldritch and unknown lurk at the bottom of the CMake feature set
Like, if your project depends on a specific version of a package, it's helpful if your build actually manages that dependency! I get, though, the C++ world just doesn't give you those tools for the most part. There's conan and vcpkg, but so many things just don't use them.
@xgranade I literally only do this in C++ with git remotes.
CMake has some facilities for specifying URLs of dependency packages and hashes to ensure you got the right contents. It is much more frustrating to use than just using git remotes.
Everyone hates working with my projects, because of the git remotes
@mcc In this case, KDE apps seem to just assume you have the right versions of the KDE CMake integration module somewhere, and let you sort it out on your own.
All I wanted to do was to recompile an app with a feature turned on that's disabled in Flatpak builds.
```
CMake Error at CMakeLists.txt:8 (cmake_minimum_required):
CMake 3.29 or higher is required. You are running version 3.28.3
```
Oh, fuck *me*.
I hate CMake almost as much as I hate using C++ without CMake.