FS#74679 - [libjpeg-turbo] Provided CMake package is nonfunctional
Attached to Project:
Arch Linux
Opened by Ivan Shapovalov (intelfx) - Sunday, 08 May 2022, 07:54 GMT
Last edited by David Runge (dvzrv) - Friday, 20 May 2022, 19:14 GMT
Opened by Ivan Shapovalov (intelfx) - Sunday, 08 May 2022, 07:54 GMT
Last edited by David Runge (dvzrv) - Friday, 20 May 2022, 19:14 GMT
|
Details
Description:
Any attempt to use the CMake package files (`/usr/lib/cmake/libjpeg-turbo`) provided with libjpeg-turbo package results in a CMake configuration error: ``` $ mkcd build && cmake .. -- The C compiler identification is GNU 11.2.0 -- The CXX compiler identification is GNU 11.2.0 -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working C compiler: /usr/bin/cc - skipped -- Detecting C compile features -- Detecting C compile features - done -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: /usr/bin/c++ - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done CMake Error at /usr/lib64/cmake/libjpeg-turbo/libjpeg-turboTargets.cmake:89 (message): The imported target "libjpeg-turbo::turbojpeg-static" references the file "/usr/lib/libturbojpeg.a" but this file does not exist. Possible reasons include: * The file was deleted, renamed, or moved to another location. * An install or uninstall procedure did not complete successfully. * The installation package was faulty and contained "/usr/lib64/cmake/libjpeg-turbo/libjpeg-turboTargets.cmake" but not all the files it references. Call Stack (most recent call first): /usr/lib64/cmake/libjpeg-turbo/libjpeg-turboConfig.cmake:37 (include) CMakeLists.txt:5 (find_package) -- Configuring incomplete, errors occurred! See also "/home/intelfx/libjpeg-turbo-bug/build/CMakeFiles/CMakeOutput.log". ``` This happens because CMake generates imported targets for both shared and static libraries, but static libraries are not part of the package (despite being built and installed during `make install`). If this is intended (I guess it is, given `OPTIONS=(... !staticlibs ...)` in devtools makepkg.conf, then `-DENABLE_STATIC=OFF` needs to be passed to CMake to prevent generation of (broken) imported targets for static libraries. Additional info: * libjpeg-turbo 2.1.3-1 * attached patch against the PKGBUILD fixes the issue Steps to reproduce: * build the attached project |
This task depends upon
Closed by David Runge (dvzrv)
Friday, 20 May 2022, 19:14 GMT
Reason for closing: Fixed
Additional comments about closing: Fixed with libjpeg-turbo 2.1.3-2
Friday, 20 May 2022, 19:14 GMT
Reason for closing: Fixed
Additional comments about closing: Fixed with libjpeg-turbo 2.1.3-2
I'll fix this in a pkgrel bump by disabling the static libs.