[WIP] some libraries export <PackageName>LibraryDepends.cmake which needs fixing#4782
[WIP] some libraries export <PackageName>LibraryDepends.cmake which needs fixing#4782Neumann-A wants to merge 3 commits intomicrosoft:masterfrom
Conversation
instead of <PackageName>Targets.cmake. Those file also need the fix of microsoft#1044 should close microsoft#4753
hopefully solved the issue within microsoft#4150 replaced the regex with something more readable (also ident is lost) should close: microsoft#4753 microsoft#4633 microsoft#4150 and maybe more
|
lattest comit uses the general solution and fixes a few more issues |
|
vcpkg_fixup_cmake_targets still has issues It changes to only
which causes #4895
|
|
hmm different hdf5-targets for dbg and rel build ...... release build it only states: vcpkg is simply overwriting the correct target file due to release being build after debug. which means on the other hand that this pr is working as intended. |
|
I've been testing these changes for the past weeks and it causes a bunch of regressions. Changing the |
|
@vicroms: since I don't know which packages fail the simplest solution is just to reverse it back to use regex replace as done by the lattest commit. |
|
I've been working on this PR from the shadows for a while, and I'm confident that now it won't cause regressions. Because the change to But, I would like you to review the code changes I made, before pushing to your branch. |
|
@vicroms Since it is not yet a PR I cannot directly comment within the code: here are my comments: Looks like the bug I encountered with HDF5 where the Targets.cmake is for some reason different for between Debug and Release builds and the Release version is missing the information for the Debug Targets. (see. #4782 (comment)) Maybe patching the *.cmake install location would be a better fix, since you are undoing changes done by vcpkg_fixup_cmake_targets. Maybe vcpkg_fixup_cmake_targets can detect those cases and conditionally change the files? But if it works its ok. Until now I was just assuming that all *.cmake files should go directly into share/<packagename> without any additional subfolders Why is this required? I looked at different package with -targets.cmake and see this: So it shouldn't do any harm. The rest of the changes seem unrelated |
|
Closed in favor of #5459 |
instead of Targets.cmake.
Those file also need the fix of #1044
should close #4753 and maybe others.
related: #4622
Maybe just use the suggestion in #4622 and be done with it instead of having the same code 3 times for different *.cmake and other headaches if a package renames the config or target file.
related to the above is : #4633 (....targets-wt.cmake)
Bonus mention: #4150