-
Notifications
You must be signed in to change notification settings - Fork 6.7k
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
[sdl2-mixer]Remove useless dependency link libraries. #7720
Conversation
@lethal-guitar Can you test this? Thanks. |
@JackBoosY Will do, thanks! |
@lethal-guitar Does this PR fix this issue? |
@JackBoosY sorry, I didn't have a chance to test this yet. I'll get back to you as soon as I can! Sometime this week should be doable. |
@JackBoosY sorry for the delay! I finally found the time to test this properly, and I'm somewhat puzzled. I have a version of I have tested the
But the resulting Do you know if I might be missing a step in my testing? If not, I think we can close this PR as well as close #7356, as it seems the problem is already fixed on |
@lethal-guitar I think you missed these features in the installation list. |
@JackBoosY I see, thanks! I'll give it another try tonight. |
@JackBoosY @cbezault I was finally able to get back to this (apologies again for the delay). I can confirm that the changes on this branch result in a I have also tested the resulting DLL with my project, and found that it works fine. What I don't know is how this change affects users who need these additional features, so it might be worth confirming with someone else that they still work as expected. Dependency WalkerCurrent This branch: |
@lethal-guitar Thanks for testing. |
This absolutely doesn't work for me for mpg123.
Am I doing smth wrong? |
Okay so I compared with the commit prior to this one, and yeah, it impacts things. It doesn't build the parts of the code that links against those dlls. So if the dll linking is not acceptable to you, maybe we can revert to the previous stage and remove only the
|
@Vermeille As @lethal-guitar said, even with some features, we should NOT add these dependent ports to the static link list of sdl2-mixer. |
@JackBoosY If I understand correctly, what @Vermeille is saying is that at the moment, it's not possible at all to use these features, since the code that dynamically loads the libraries seems to be excluded from the build. It's true that the libraries shouldn't be linked at compile time, but the library should still be able to dynamically load them. As I mentioned in my comment:
Seems that this PR did indeed break the usage of these features. I don't use these optional features myself, so I didn't test how this PR affects the usage of them, hence my comment. In an ideal world, we would keep the behavior of copying the DLLs into the installation directory when the corresponding features are enabled, but avoid linking to these DLLs at compile time to avoid the hard requirement. |
@lethal-guitar Absolutely. It doesn't build the code looking for those dlls. So I guess we should go back to the previous build file, but exclude the |
@Vermeille I know what you said, we should not link these dependencies to sdl2-mixer, but we need to add these header files to compile them, right? |
@JackBoosY Absolutely. |
Since the library method using features in sdl2-mixer is dynamically loaded (using the function
SDL_LoadFunction
), remove all links that depend on the feature library.Related: #7356.