(not ready) Add debug variant of "bundled" (try #2)#1092
(not ready) Add debug variant of "bundled" (try #2)#1092waych wants to merge 8 commits intoRust-SDL2:masterfrom
Conversation
This adds back the ability to compile the debug version of SDL2 when the cargo build is a debug build. Previous attempt (PR Rust-SDL2#1081) broke dynamic linking bundled builds on Windows, forgetting to copy the resulting DLL correctly and misspecifying the name of the library in that case.
It isn't just Windows anymore.
|
@waych What further work do you think is needed? I encountered an issue of copying dll because |
|
@TonalidadeHidrica Unfortunately it has been a long time since I looked at this. I think my main hangup with release vs not release is that the linkage on Windows in particular is messy, depending on what other C++/C dependencies you are linking into your app. Some crates will always link the release version of their C++/C deps, whereas others will seemingly change depending on whether it was a debug or release build in progress. These cannot be mixed in practice, at least on Windows. I haven't found a good way in the cargo community for how this should be resolved (as it needs to be uniform across all linked dependencies). I think maybe people care less about this because this is more a Windows problem than anything else. The off chance that this change breaks stuff as-is for people I think was the main reason I was hesitant to go ahead and request the pull. Perhaps better, would be for this functionality to be hidden behind yet another feature flag, something along the lines of sys_dep_debug_is_debug or something, so that the linkage behavior becomes an opt in. |
Includes CI testing for Windows bundled builds (both dynamic and static-link).
This re-enables "debug" build of "bundled" variants, for both static and dynamic link "bundled" builds.
Status: