Todo List: Remove libjpeg from depends/makedepends/optdepends and use shared object dependency

2020-10-18 - David Runge

The libjpeg-turbo package provides libjpeg.so.

In the past this has been reflected by a "libjpeg=major.minor.patch" entry in
the provides array. This approach requires manual intervention in the
libjpeg-turbo PKGBUILD and is less useful than a shared object provides as that
automatically exposes the shared object version [1].

The libjpeg-turbo package now has "libjpeg.so" and "libturbojpeg.so" in the
provides array, which makes the entry for "libjpeg=major.minor.patch" obsolete.

Please replace a "libjpeg-turbo" or "libjpeg" in depends with a shared object
depends [2] (if your package in fact links against it), and a "libjpeg" in
makedepends or optdepends with "libjpeg-turbo".
Afterwards push a rebuilt package to the respective stable repository.

Note in regards to depends array:
* If you would like to only have the respective shared object in the eventual
depends array, add "libjpeg-turbo" to makedepends and add "libjpeg.so" (or
"libturbojpeg.so" depending on your requirement) in the package() function
(e.g. by `depends+=('libjpeg.so')`).
* If you would like to have both the package and the shared object in the
depends array, add "libjpeg-turbo" first and then the shared object.

Note in regards to the package list in the TODO:
All packages that directly link against libjpeg.so or libturbojpeg.so are
considered.
If your package does not yet have a direct dependency on libjpeg-turbo's shared
objects but is in the list, please add it, as transitive dependencies are
discouraged [2].

If you are unsure of what this all means, please get in touch via mail or IRC!
:)

[1] https://wiki.archlinux.org/index.php/Arch_package_guidelines#Package_relations
[2] https://wiki.archlinux.org/index.php/Arch_package_guidelines#Package_dependencies

Link to lists of pkgbase values:

Filter Todo List Packages

Select filter criteria
0 packages displayed out of 0 total packages.
Arch Repository Name Current Version Staging Version Maintainers Status Last Touched By