formula: Cyan4973/xxHash - #511
Conversation
There was a problem hiding this comment.
The version-specific build recipes, patches, pkg-config metadata, selection floor, default tag, Linux shared/utility matrices, and cache-hit consumer path were reviewed against the linked Conan snapshot and LLAR commit 9c062aa5c4b1724bfd30cb72f7e0bda136f9c078. The Linux formula behavior passed focused validation, but the change currently conflicts with the repository's changed-module test gate and the pre-0.8.3 recipes omit the Darwin shared-library relocation policy retained by Conan.
|
|
||
| id "Cyan4973/xxHash" | ||
|
|
||
| fromVer "v0.8.1" |
There was a problem hiding this comment.
[P1] Avoid changing multiple Formula directories in one PR
Adding this second threshold (together with v0.8.2 and v0.8.3) makes the repository's find_changed_modules.gsh collect four Formula directories for Cyan4973/xxHash; that script explicitly panics whenever a module changes more than one directory because CI can test only one fromVer range. Consequently the required Find changed modules job cannot produce a test matrix for this diff. Please either land the thresholds in sequential PRs or first extend the validation workflow so every changed range is exercised.
| installDir, | ||
| ) | ||
| c.define "CMAKE_INSTALL_LIBDIR", "lib" | ||
| c.define "CMAKE_POLICY_VERSION_MINIMUM", "3.5" |
There was a problem hiding this comment.
[P1] Preserve CMP0042 for pre-0.8.3 shared Darwin builds
For v0.8.0 through v0.8.2, upstream declares CMake 2.8.12, so under CMake 3.x CMP0042 remains OLD; CMAKE_POLICY_VERSION_MINIMUM is ignored there (the focused build emits the unused-variable warning). With shared=ON on Darwin this disables the @rpath install name and embeds the build machine's absolute install prefix in the dylib. LLAR archives that output and restores it under another user's workspace, so cached/shared consumers can no longer load the library. The pinned Conan recipe sets CMAKE_POLICY_DEFAULT_CMP0042=NEW for this reason; add that definition to the v0.8.0, v0.8.1, and v0.8.2 recipes (v0.8.3's CMake 3.10 minimum already selects NEW behavior).
Summary
Validation
Closes #244