-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[cmake] use the vendor-provided pkgconfig for libuuid #16957
base: master
Are you sure you want to change the base?
Conversation
I guess |
And if it's only needed for UUID, should it be required globally? (Not sure if UUID is supported on Windows, but Davix for sure is not) |
BTW, there is apparently a FindLibUUID.cmake in CMake |
This PR also fixes my local build (failing due to the missing variables mentioned in the descriptions).
Do we know which version of CMake it first appeared in? |
Test Results 16 files 16 suites 4d 3h 53m 1s ⏱️ For more details on these failures, see this check. Results for commit cd55a1a. ♻️ This comment has been updated with latest results. |
2017 AFAICS, but let see this next week |
CMakeLists.txt
Outdated
@@ -34,6 +34,7 @@ foreach(policy ${policy_old}) | |||
endforeach() | |||
|
|||
include(cmake/modules/CaptureCommandLine.cmake) | |||
find_package(PkgConfig REQUIRED) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
find_package(PkgConfig REQUIRED) | |
if(NOT MSVC) | |
find_package(PkgConfig REQUIRED) | |
endif() |
09c762e
to
f0248dd
Compare
Our own FindLibuuid.cmake is flawed in several ways: - it doesn't set the variables it advertises to set - it doesn't always find libuuid in the system - it improperly sets libuuid_FOUND if it only finds the include dir but not the libraries, which can lead to linking errors NOTE: pkg-config won't be used on mac/windows as it's usually not available
f0248dd
to
cd55a1a
Compare
Our own FindLibuuid.cmake is flawed in several ways:
These linking errors are affecting Davix and daos/daos_mock (thus the ROOTNTuple lib).
Using the pkgconfig file provided with libuuid (or rather with util-linux) should be the most robust way to find libuuid and it's a quite straightforward change to our cmake infrastructure.