[wxwidgets] fix wxWidgets_LIBRARIES for windows, incl. static builds#23980
[wxwidgets] fix wxWidgets_LIBRARIES for windows, incl. static builds#23980jjYBdx4IL wants to merge 7 commits intomicrosoft:masterfrom jjYBdx4IL:master
Conversation
…tl32 etc.) * add wxbase to list of debug libs
|
appending to a file provided by vcpkg itself is not so nice. isn’t it better to make it a configurable file and copy it through a configure_file “@only” with appropriate variables? |
Indeed. I wasn't aware of that mechanism, yet. |
There was a problem hiding this comment.
Basing the link libraries on globbing will break most static non-MSVC cases because the order of libraries matters for these linkers.
Unfortunately, we lack some CI coverage here, due to WxWidgets' dependency on gtk3 for Linux. There must be manual testing on x64-linux with some port that uses this wrapper.
(wxwidgets:x64-linux was fixed only recently, and a immediate regression must be avoided.)
|
Better? Works for me [tm] on Linux64, OSX64, Win64. |
There was a problem hiding this comment.
This is a new experimental fast check for PR issues. Please let us know if this bot is helpful!
After committing all other changes, the version database must be updated
git add -u && git commit
git checkout 01d6f6ff1e5332b926099f0c23bda996940ad4e8 -- versions
./vcpkg x-add-version --allDiff
diff --git a/versions/w-/wxwidgets.json b/versions/w-/wxwidgets.json
old mode 100755
new mode 100644|
@dg0yt Could you please review this PR again? Thanks in advance. |
where is the test case? Can we have a test case repository please? |
|
Problem is, the MSVC port currently is totally broken for me. Static builds outright fail compilation because debug and release code is mixed. And even if I set dynamic linking in my custom triplet for wxWidgets, it won't pull debug libs and instead link against the release libs which also won't be copied into the output directory. |
|
I wish I could name a test port... It is probably easier to create a minimal testproject yourself. @talregev Can you test this PR with your Linux project? |
The port has some history of problems and draft PRs. Some outside triggers have been fixed IIRC, and it would be good to resolve the remaining issues. CC @JackBoosY Maybe it would be good to (at least temporarily) add a I'm willing to test, too. But wxwidgets is not very high on my list, and I use MSVC only in CI. |
How would that work without gtk3? How about one (optional) repository on github for each port and which runs against github workflows that allow for more customization? |
@dg0yt Sounds reasonable? |
It wouldn't work now in CI, but a) we could use it locally, and b) there is a gtk3 PR.
When you want to talk about "for each port" or about more GH workflows, you are leaving the scope of this PR. I would avoid it for now. |
|
@dg0yt how about simply avoiding the external dependencies and using the builtin ones? Maybe enable the external dependencies only through a feature? |
Well, we could start with a single, simple repo for wxwidgets test cases. Having a well-defined test suite would make all of this A LOT more efficient. And in future one could simply refuse bug reports without attached test cases.... |
|
I moved the code to a cmake file in my own repository. If someone needs it, here it is. Maybe include it in a macro that's optional to execute after find_package? |
|
@jjYBdx4IL I really wanted to test locally, but with your fork removed, this probably won't happen. |
|
@jjYBdx4IL Not sure why you close the PR. |
I pasted the relevant code here. just insert it after your find_package in your CMakeLists. I won't waste weeks on this crap. |
It doesn't work like this, we don't work like this, open source projects doesn't work like this. |
What currently doesn't work is your CI system. |
I mean the way of work. We want your contribution, and it slow process. |
|
I know what you meant. But this process isn't a "process". It's nonsense. |
This is what is not working on my CI: |
What does your PR fix?
Which triplets are supported/not supported? Have you updated the CI baseline?
only changed windows stuff, except for the added wxbase debug lib. Is there any convenient CI system available to test the other platforms/triplets before creating a pull request?
Does your PR follow the maintainer guide?
Yes. Think so.
If you have added/updated a port: Have you run
./vcpkg x-add-version --alland committed the result?Yes
If you are still working on the PR, open it as a Draft: https://github.blog/2019-02-14-introducing-draft-pull-requests/
No.