4.4.2 breaks kio 5.116.0 on some platforms

The timing fits, so I suspect that the update from 4.4.0 to 4.4.2 in pkgsrc broke the build of kio 5.116.0 on a couple platforms.

Here’s an example build log:

https://releng.netbsd.org/pkgreports/shadow/HEAD/NetBSD-11.0-x86_64/20260802.1144/kio-5.116.0nb12/configure.log

from a NetBSD 11.0/x86_64 build; I see the same on 11.99.7, and here’s a build on SmartOS:

https://reports.pkgci.org/SmartOS/upstream/trunk/20260802T225326Z/kio-5.116.0nb12/configure.log

All the places I could find in the code look like this:

if(ACL_FOUND)
target_link_libraries(KF5KIOCore PRIVATE ${ACL_LIBS})
endif()

which I thought should be safe. Any ideas?

Thanks,
Thomas

I can reproduce this by building kio’s v5.116.0tag on Debian with the libacl1-dev package not installed. I’ve narrowed the problem to a simple example and opened CMake Issue 28026. Please follow that for further updates.

FWIW, kio 5.116.0 also has a bug in cmake/FindACL.cmake that helps trigger the failure. The find module leaks CMAKE_REQUIRED_LIBRARIES to its caller. The problem persists in kio master.

Also, kio’s FindACL module shouldn’t bother with check_symbol_exists calls on a library that wasn’t found.

Seconded. It happens the check should at least not throw an error if you try to feed it <name>-NOTFOUND in CMAKE_REQUIRED_LIBRARIES, but I suspect that breaks if there’s more than one library. Regardless, looking for symbols in a not-found library is indeed silly. :slightly_smiling_face: