Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Linux: Link libsquish directly when unbundling, .pc file unreliable #79105

Merged

Conversation

akien-mga
Copy link
Member

@akien-mga akien-mga commented Jul 6, 2023

For the record, I have the pkgconfig file installed on Mageia, but I had to fix it and install it manually:
http://svnweb.mageia.org/packages/cauldron/libsquish/current/SPECS/libsquish.spec?view=markup

Fedora doesn't do that so they don't have it: https://src.fedoraproject.org/rpms/libsquish/blob/rawhide/f/libsquish.spec

@akien-mga akien-mga added this to the 4.2 milestone Jul 6, 2023
@akien-mga akien-mga requested a review from a team as a code owner July 6, 2023 13:33
@Riteo
Copy link
Contributor

Riteo commented Jul 6, 2023

That's weird. From what I can see, Arch Linux has it and it looks like they don't copy it manually, although they use a newer version.

https://archlinux.org/packages/extra/x86_64/libsquish/files/

https://gitlab.archlinux.org/archlinux/packaging/packages/libsquish/-/blob/b447f8fb87185fead8252c7bfdf7f6a4687f14e8/PKGBUILD

Edit: posted too early. I wanted to add: Is there a reason that you're both using 1.14 instead of 1.15?

@akien-mga
Copy link
Member Author

Edit: posted too early. I wanted to add: Is there a reason that you're both using 1.14 instead of 1.15?

You must have misread, both Fedora and Mageia use 1.15. libsquish hasn't had a new release since 2017.

Not sure how the Arch package gets the .pc file installed properly, I'll experiment. Still, it's probably not just Fedora lacking the file and until all distros have it properly packaged, we should probably not assume that it's there.

@capnm
Copy link
Contributor

capnm commented Jul 7, 2023

That's weird. From what I can see, Arch Linux has it and it looks like they don't copy it manually, ...

No problem under Debian either https://packages.debian.org/bookworm/libsquish-dev

@akien-mga
Copy link
Member Author

The Arch package does some pretty weird stuff, building first with CMake, but then installing the CMake things manually and running the squish original Makefile (which does install the .pc file), instead of using the upstream CMake.

Debian only uses the Makefile and doesn't use their CMake at all.

Fedora and Mageia fixed up the CMake but did not add the pkgconfig handling code so it needs to be installed manually.

All distros have to patch the .pc file anyway because it's broken by default... It's a mess :)

@Riteo
Copy link
Contributor

Riteo commented Jul 7, 2023

@akien-mga yup, I shomehow misread. Oops.

Thanks for investigating! Yeah, the situation looks very messy. I agree that it makes sense to directly link at this point.

@akien-mga akien-mga merged commit 79b31a8 into godotengine:master Jul 8, 2023
@akien-mga akien-mga deleted the linux-libsquish-lacks-pkgconfig branch July 8, 2023 16:26
@YuriSizov YuriSizov removed the cherrypick:4.1 Considered for cherry-picking into a future 4.1.x release label Jul 10, 2023
@YuriSizov
Copy link
Contributor

Cherry-picked for 4.1.1.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants