Commit Graph

5 Commits

Author SHA1 Message Date
Bartłomiej Dach 0fd6a6c930
Enable dynamic support for `libdecor` inside SDL3
Done by locally building & installing `libdecor` before building SDL3.

Note that the `libdecor` binaries aren't shipped here, because I can't
make them work inside C# apps. It looks like both SDL and `libdecor`
do some level of automagic lookup of shared objects; SDL does it to find
`libdecor`, and `libdecor` does it to find its "plugins" which are
really implementations of the window decoration (if it fails to find
any, it just disables itself).

So this is just going to depend on system-ambient `libdecor` to be
present, and if there is none, then it'll fail to work. See if I care.

At this point I would like to extend my thanks to the gnome team for
wasting a day of my life on all this.

Note that x86 SDL binaries will not have this `libdecor` support enabled,
because SDL uses cmake and `libdecor` uses meson, and there is no
portable way to tell them both to build a 32-bit binary. Well, that's a
half-truth; you can pass CFLAGS to meson via envvars, *but* the install
script later will just install the resulting binaries as if they were
x64, which leads SDL cmake to not find them, and therefore not enable
dynamic `libdecor` support. So let's just not bother.
2024-05-22 15:29:24 +02:00
Kevin Pfeifer 453df16b5e remove quotes 2024-05-17 21:33:53 +00:00
Kevin Pfeifer a7cbefc5e6 move cmake flags to os matrix 2024-05-15 19:43:25 +00:00
Kevin Pfeifer 515cd199e3 make build.sh executable 2024-05-15 19:32:52 +00:00
Kevin Pfeifer f6677bde9f
Create build.sh 2024-05-15 17:29:10 +02:00