ERROR: Unsupported linker, only bfd, gold, and lld are supported, not ld.bfd.

Fucking buildsystems (meson this time), none of them are good.

Consider:
- Be as agnostic as possible: Don't hardcode, use pkg-config or environment variables on pretty much everything
- Don't test if the OS works, that's not our problem
- Strongly avoid workarounds, OS should be fixed instead or more portable methods should be used
Show thread

checking for glGetString in -lGL... no configure: error: Unable to locate required GL library

How many fucking things will I have to fix in the very same way…

Show thread
> Project 'GNOME/cogl' was moved to 'Archive/cogl'. Please update any links and bookmarks that may still have the old path.
> Clutter still depends on it

What the fuck are you doing GNOME.
Show thread
Looks like clutter might also be going the way of the dodo anyway.

> Clutter is in deep maintenance mode; only micro releases addressing bug fixes
are planned from now on. Additionally, the API and features are frozen.
> The planned replacement for Clutter is GTK 4.0.

> https://gitlab.gnome.org/GNOME/clutter/-/merge_requests/5
> been broken in wlroots for several years
Show thread
Also funny thing, their domain expired and got replaced by some japanese thing.
Which has a page about La+, so Yeet My Dark.

https://cogl3d.org/ymd/
Show thread
@kirby I guess someone fav'd one of the posts in there or something.
@m0xee @kirby
Well it's more like, good ones:
- straightforward Makefile
- simple configure script (as seen in musl, vis, some portable BSD software, …) + static Makefile

Meanwhile:
- meson: Occasionally a pain but usually fixable, good enough for me to recommend it
- CMake: Impossible to debug, out
- autotools: Not only the artifacts are a proven vector for malware, even the actual sources are a PITA to read (Imagine adding more complexity to raw m4)
- scons, waf, …: Basically autotools but in other languages
- premake: vendored curl+mbedtls? Without proper security updates? Nope. (see https://bugs.gentoo.org/773475)

@lanodan @kirby
meson is as good as autotools, except it's python instead of m4. With both I can see why things break and fix it, would that be idiomatic? Not so sure. I don't get why people hate autotools — sure, it's lots of generated boilerplate code, but you can figure out what ti does just by looking at it. Unlike CMake — which is pure evil!

@m0xee @kirby Nah the python part of meson is mostly an implementation detail, the m4 part of autotools in an integral part of it.

Like here's a meson implementation without python: https://muon.build/
@m0xee @kirby And while autotools is somewhat debuggable in it's simplest bugs, that quite quickly degrades into "Okay… where's even the bug".
And it's non-reviewable, even the autotools-m4 files are arcane enough that I'd say it's a delusion if you think you can review this stuff without wasting hours each time. Worst part is how it's not something like libraries where it's somewhat isolated, it's collections of templates.

@lanodan @kirby
Yes, that is so! It's only "fixable" in a sense that you can make some software get built right here right now, finding fundamental flaws and submitting the fix upstream would sure take a lot of effort, but with CMke even that is impossible, because I just don't understand how it works under the hood, it's just a black box.

Follow

@lanodan @kirby
Not quite a black box, as I still have it's source, but that would be fixing CMake, installing fixed CMake, it would have nothing to do with software itself 🤷

@m0xee @kirby Well could be fixing cmake modules and in a way that could be better than autotools where bugs in autotools-m4 modules effectively stay unless you always autoreconf, which you sometime can't do because nearly no one except the upstream dev does that, sometimes even purposefully broken (which in this case I'd say it's proprietary).
Sign in to participate in the conversation
Librem Social

Librem Social is an opt-in public network. Messages are shared under Creative Commons BY-SA 4.0 license terms. Policy.

Stay safe. Please abide by our code of conduct.

(Source code)

image/svg+xml Librem Chat image/svg+xml