Skip to content
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

plugins/LadspaEffect/swh/ladspa-util.c is unused and has build problems with new gcc #5434

Closed
plater opened this issue Apr 1, 2020 · 4 comments
Assignees
Labels

Comments

@plater
Copy link

plater commented Apr 1, 2020

I maintain lmms for openSUSE and found an irritating problem with ladspa-util.c, regardless of flags used to link it, it ends up as a static library. This is gcc-9.2.1+git1192 and binutils-2.34.
During my 1 days head scratch I thought that sed'ing out the -Wl,--as-needed flag fixed the problem but it still happened with a cloud build service build, it causes a warning because of the .so extension.
At the end of the day I searched for usages and found none, I now delete it pre build. I see that you use Ladspa's git for master and Ladspa-util.c doesn't exist in Ladspa only Ladspa-util.h, maybe it should be removed from the 1.2 branch. The decision is yours.

@plater plater added the bug label Apr 1, 2020
@JohannesLorenz JohannesLorenz self-assigned this Apr 12, 2020
@JohannesLorenz
Copy link
Contributor

@plater Thanks for your efforts and sorry for our later answer. I use gcc-9.3.0 and binutils-2.34 (same version as yours). On my machine, it all compiles fine.

What exactly do you delete pre build? The plugins/LadspaEffect/swh/ladspa-util.h on branch stable-1.2? This file seems to be required.

All files I found:

$ find {master,stable-1.2}/plugins/ -iname "*ladspa-util*"
master/plugins/LadspaEffect/swh/ladspa/ladspa-util.h
stable-1.2/plugins/LadspaEffect/swh/ladspa-util.c
stable-1.2/plugins/LadspaEffect/swh/ladspa-util.h
stable-1.2/plugins/LadspaEffect/swh/ladspa/ladspa-util.h # somehow not under version control

@plater
Copy link
Author

plater commented Apr 13, 2020

ladspa-util.h is part of the current ladspa headers but I can't find ladspa-util.c anywhere and it fails to build under gcc9. I suspect that it comes from an older release of ladspa.
I remove stable-1.2/plugins/LadspaEffect/swh/ladspa-util.c pre build.
Another question, could you possibly allow an external ladspa for the build to replace the third party ladspa?

@JohannesLorenz
Copy link
Contributor

ladspa-util.h is part of the current ladspa headers but I can't find ladspa-util.c anywhere and it fails to build under gcc9. I suspect that it comes from an older release of ladspa.
I remove stable-1.2/plugins/LadspaEffect/swh/ladspa-util.c pre build.

I was just thinking "How can you remove it if you cannot find it?" 😃 But I think you mean you can't find it in swh/ladspa, so you remove it in LMMS, too? I just tried that and LMMS still compiles. The file seems useless. I'll remove the file in PR #5451 - thanks for the report.

Another question, could you possibly allow an external ladspa for the build to replace the third party ladspa?

On stable-1.2, no chance. On master, we'll do this for the next release. For some LADSPA, like CALF and CAPS, using their exact master won't be possible (they introduced backwards incompatibility, so we wrote our own versions), we had to fork them. So you can't always use the system LADSPA library. We'll know more when the next LMMS master release will come.

@JohannesLorenz
Copy link
Contributor

Fixed in #5451

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants