SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
It was brought to my attention that lightspark from SBo no longer builds in Slackware 14.2 due to the llvm-6.0.1 update, but it still builds fine in current with the same llvm version. In 14.2 it will fail with several errors from missing headers such as.
Code:
/tmp/SBo/lightspark/src/scripting/abc.cpp:38:27: fatal error: llvm/Module.h: No such file or directory
However lightspark does have checks for the newer header locations already as can be seen in these lines.
This reveals that 'check_include_file_cxx' in cmake-3.5.2 does not actually work, but I built cmake-3.12.2 from current in 14.2 without issues and found that lightspark now builds fine again.
Would it be possible to update cmake in 14.2 too given that the newer llvm has revealed this to be a problem with at least one program? Or suppose there is a better solution? I would prefer to not hack lightspark if possible.
the newer cmake actually introduces some regressions for other packages (consider I'm saying this having tested it only for the third party ones), I'm not that sure that it could be the best solution to push it in 14.2...
I realize that is likely, however this slippery slope was already started with llvm, rust and firefox. I think the correct solution is to either revert this whole mess or finish what was started and update cmake as well as resolve anything else that reveals itself afterwards...
I realize that is likely, however this slippery slope was already started with llvm, rust and firefox. I think the correct solution is to either revert this whole mess or finish what was started and update cmake as well as resolve anything else that reveals itself afterwards...
Rust and LLVM were provided in case you wanted to compile Firefox or Thunderbird locally. The correct solution is to not install those otherwise.
Rust and LLVM were provided in case you wanted to compile Firefox or Thunderbird locally. The correct solution is to not install those otherwise.
That sounds fine to me, but these updates are in patches and people can update them with slackpkg without fully appreciating the consequences. Maybe it would be better if they were in extra instead? Or am I not understanding something?
Quote:
Originally Posted by 55020
You can just add these definitions to the cmake invocation in lightspark.SlackBuild
That sounds fine to me, but these updates are in patches and people can update them with slackpkg without fully appreciating the consequences. Maybe it would be better if they were in extra instead? Or am I not understanding something?
I considered the fact that there had been no previous updates in /patches to either of these, so reverting is still possible.
I would prefer that -stable 14.2 is not hacked to provide a fix for "an open source Flash player implementation". There are people who rely on -stable for production systems. Security based updates are expected, but changing the build chain to address a failure in support for a third party package is a bridge too far. It is much better to just hack the SlackBuild script.
I accept that 14.2 is halfway to EOL and that -stable is in need of renewal, but I have not seen a sweet spot that would have allowed this to occur.
There are people who rely on -stable for production systems. Security based updates are expected, but changing the build chain to address a failure in support for a third party package is a bridge too far. It is much better to just hack the SlackBuild script.
I agree with this, but the problem is the build chain was already changed with llvm and now a previously unexposed cmake bug is now exposed. This was the whole point of making this thread, if this was just a lightspark bug I would of fixed it in lightspark or worked around it the slackbuild.
I'm certainly fine with the solution of just not installing the newer llvm, but since its in patches I am not sure that will fly with SBo.
Telling lightspark where the includes are, using the config variables provided by lightspark for the exact purpose of telling lightspark where the includes are, is pretty damn innocuous IMO. Maybe it could use a bit of if-then-elseness in case someone's still got the old llvm, but basically we're done.
Out of 7254 SlackBuilds on SBo, lightspark is the only one that's got b0rkenated by the new-llvm + old-cmake combo. I know cos I've checked. We don't, at this time, need a more general solution.
Did any other packages break from llvm at all? I suppose its possible that even if they did not break during compile time they may of broken more subtly during runtime.
That said the current lightspark upstream maintainer proposed the best solution, apparently the llvm parser does not actually work and he is not knowledgeable enough about llvm to fix it besides making sure it compiles. So he said he plans to make llvm an optional compile time dependency and default it to off in case someone wants to fix it in the future. When this is ready I plan to either backport it or update to a git snapshot again...
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.