FS#43788 - [libical] Build of static libraries causes included CMake module to fail

Attached to Project: Arch Linux
Opened by Jakob Gahde (J5lx) - Wednesday, 11 February 2015, 19:48 GMT
Last edited by Felix Yan (felixonmars) - Friday, 13 February 2015, 03:17 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Felix Yan (felixonmars)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No

Details

Package version: 1.0.1-1

Description: This package builds both shared and static libraries while the static ones are automatically removed by the ABS. However the build of the static libraries apparently also affects the generation of the CMake module (/usr/lib/cmake/LibIcal/LibIcal*.cmake) so the module causes an error because the built static libs were removed during packaging and cannot be found for that reason:

CMake Error at /usr/lib64/cmake/LibIcal/LibIcalTargets.cmake:70 (message):
The imported target "ical-static" references the file
"/usr/lib/libical.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/LibIcal/LibIcalTargets.cmake"
but not all the files it references.
Call Stack (most recent call first):
/usr/lib64/cmake/LibIcal/LibIcalConfig.cmake:40 (include)
src/CMakeLists.txt:8 (find_Package)

Steps to reproduce: Try to run CMake on a CMakeLists.txt using `find_package(LibIcal REQUIRED)`. CMake should throw the above error due to the missing static libs.

Solution: Add -DSHARED_ONLY=true to the cmake call. This causes the static libraries not to be build and apparently also changes the generation of the CMake module, so CMake doesn't search for the static libraries.
This task depends upon

Closed by  Felix Yan (felixonmars)
Friday, 13 February 2015, 03:17 GMT
Reason for closing:  Implemented
Additional comments about closing:  1.0.1-2
Comment by Doug Newgard (Scimmia) - Thursday, 12 February 2015, 18:10 GMT
The only two things in the repos that depend on this and use cmake are kdepimlibs and cairo-dock-plugins. Since cairo-dock-plugins is maintained by a TU, you're nominated on this one, Felix.

Loading...