FS#73333 - [zstd] Wrong pkgconfig information

Attached to Project: Arch Linux
Opened by Bernd Amend (ptb) - Tuesday, 11 January 2022, 16:52 GMT
Last edited by David Thurstenson (thurstylark) - Saturday, 12 March 2022, 18:57 GMT
Task Type Bug Report
Category Packages: Core
Status Closed
Assigned To Jelle van der Waa (jelly)
Levente Polyak (anthraxx)
Giancarlo Razzolini (grazzolini)
Architecture All
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 6
Private No


The file /usr/lib/pkgconfig/libzstd.pc sets the prefix to /usr/local, but it should be set to /usr.
This breaks packages that depend on pkgconf.

Additional info:
* package version(s) 1.5.1-2
* config and/or log files etc.
* link to upstream bug report, if any

Steps to reproduce:
check the output of "pkgconf libzstd --libs"
This task depends upon

Closed by  David Thurstenson (thurstylark)
Saturday, 12 March 2022, 18:57 GMT
Reason for closing:  Fixed
Additional comments about closing:  zstd 1.5.2-3
Comment by loqs (loqs) - Wednesday, 12 January 2022, 00:19 GMT
`PREFIX=/usr make` should solve the issue.
Comment by Christian Salvasohn (CSalve) - Wednesday, 12 January 2022, 06:58 GMT
Change is required due to this pull request: https://github.com/facebook/zstd/pull/2659
Comment by Bernd Amend (ptb) - Sunday, 23 January 2022, 16:57 GMT
Still broken in 1.5.2-1.
Comment by Ruijie Yu (ruijieyu) - Monday, 24 January 2022, 12:49 GMT
If the intended solution is to change the PKGBUILD file, are we still waiting for anything? According to this PR (https://github.com/facebook/zstd/pull/2912), which builds upon #2659, the changes have been merged into the dev branch, and should be already included in the release 1.5.2.

Or does CSalve mean that this is should be a non-issue from Arch Linux's standpoint and upstream should fix it?

And I can also confirm that the pkg-config information is still incorrect as of 1.5.2-1 as ptb has pointed out.
Comment by Louis R. Marascio (lrm) - Tuesday, 01 March 2022, 22:52 GMT
This is still busted and has the side effect that when trying to build against Apache Arrow (which depends on zstd), Arrow will fail to find libzstd because it is using the wrong package config information.
Comment by Jelle van der Waa (jelly) - Thursday, 10 March 2022, 08:10 GMT
zstd-1.5.2-3-x86_64.pkg.tar.zst is now in [testing].
Comment by Marcell Meszaros (MarsSeed) - Thursday, 10 March 2022, 19:13 GMT
After installing the testing version (zstd-1.5.2-3), pkgconfig is correct:

$ pkgconf libzstd --libs --keep-system-libs
-L/usr/lib -lzstd

$ pkgconf libzstd --variable=libdir

$ pkgconf libzstd --variable=includedir
Comment by Marcell Meszaros (MarsSeed) - Saturday, 12 March 2022, 12:49 GMT
Fixed in 1.5.2-3 (testing).
Safe to move this to core repo, as it's only a minor change.

I use zstd for initrd compression by mkinitcpio and I have no issues with boot.
(Updated to latest linux kernel today).