Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines
Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.
REPEAT: Do NOT report bugs for outdated packages!
https://wiki.archlinux.org/title/Bug_reporting_guidelines
Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.
REPEAT: Do NOT report bugs for outdated packages!
FS#77678 - [libxi] Missing dependency: libxfixes
Attached to Project:
Arch Linux
Opened by Balló György (City-busz) - Tuesday, 28 February 2023, 19:49 GMT
Last edited by Andreas Radke (AndyRTR) - Friday, 03 March 2023, 14:50 GMT
Opened by Balló György (City-busz) - Tuesday, 28 February 2023, 19:49 GMT
Last edited by Andreas Radke (AndyRTR) - Friday, 03 March 2023, 14:50 GMT
|
Detailsxfixes is defined in xi.pc, which means the header file of libxfixes is needed to build anything based on libxi.
Please move libxfixes from makedepends=() to depends=() of libxi. |
This task depends upon
Closed by Andreas Radke (AndyRTR)
Friday, 03 March 2023, 14:50 GMT
Reason for closing: Fixed
Additional comments about closing: 1.8-3
Friday, 03 March 2023, 14:50 GMT
Reason for closing: Fixed
Additional comments about closing: 1.8-3
"build anything" implies makedep. There is no runtime dep on libfixes. There is nothing in the packaging guidelines justifying this so could you please reassess?
FS#76959And we have other packages in the repository, which are not linked to libxfixes, but specified in their *.pc file:
- libxcomposite
- libxdamage
- libxpresent
So if you say it should be a makedep, then it should be removed from these three packages. But I don't think it would be good. And we have xorgproto dependency of libx11 for the same reason. xorgproto is a build time dependency of anything which depend on X11 libraries.
Maybe we could mention in the guidelines that dependencies from *.pc files might be declared as dependencies.
$ pkg-config --cflags xi
Package xfixes was not found in the pkg-config search path.
Perhaps you should add the directory containing `xfixes.pc'
to the PKG_CONFIG_PATH environment variable
Package 'xfixes', required by 'xi', not found
- depends -> "run time"
- makedepends -> "build time"
.pc files and header files only matter at "build time" (with a few exceptions). I believe you are overthinking things and therefore creating confusion. Can we please just keep things simple? Probably too much staring at namcap code :)
I prefer a pragmatic way to only add header packages to the depends when a large group of packages would need to add it to the makedepends otherwise like we do with xorgproto.
https://gitlab.archlinux.org/pacman/namcap/-/merge_requests/28
And I posted about it on arch-dev-public mailing list:
https://lists.archlinux.org/archives/list/arch-dev-public%40lists.archlinux.org/thread/A2MV7T3NDHVHWX6WHIHH2DKH4YSWSIIX/
The new namcap rule can be tested with my namcap-improved package from AUR:
https://aur.archlinux.org/packages/namcap-improved
After all, "Keep It Simple" is literally in the first sentence on the Arch front page and is a foundation principle. Please let's not over-complicate things and become another Debian.
But I do agree with your point in the mailing list posting about systemd and pkg-config and have whinged about it in the past [1].
[1] https://bugs.archlinux.org/task/75194#comment209572