Overview

Request 797873 superseded

Libraries start to require this, first one is the current release of OpenImageDenoise,
as found in https://build.opensuse.org/package/show/home:frispete:blender/OpenImageDenoise

Now as full llvm build, thanks to Ismail.

Loading...

Ismail Dönmez's avatar

@frispete This is quite cool! But I wonder why do you force to compile with gcc instead of clang?


Hans-Peter Jansen's avatar

Hi Ismail,

thanks for the flowers. ;-)

In short, I didn't manage to compile with clang last time.

It started with failing the compiler test due to clang not supporting -flto=auto. After redefinition of _lto_cflags, it failed with some obscure cmake error:

[    3s] CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
[    3s] Please set them or make sure they are set and tested correctly in the CMake files:
[    3s] clangASTPath
[    3s]     linked by target "ispc" in directory /home/abuild/rpmbuild/BUILD/ispc-1.13.0
[    3s] clangAnalysisPath
[    3s]     linked by target "ispc" in directory /home/abuild/rpmbuild/BUILD/ispc-1.13.0
[    3s] clangBasicPath
[    3s]     linked by target "ispc" in directory /home/abuild/rpmbuild/BUILD/ispc-1.13.0
[    3s] clangDriverPath
[    3s]     linked by target "ispc" in directory /home/abuild/rpmbuild/BUILD/ispc-1.13.0
[    3s] clangEditPath
[    3s]     linked by target "ispc" in directory /home/abuild/rpmbuild/BUILD/ispc-1.13.0
[    3s] clangFrontendPath
[    3s]     linked by target "ispc" in directory /home/abuild/rpmbuild/BUILD/ispc-1.13.0
[    3s] clangLexPath
[    3s]     linked by target "ispc" in directory /home/abuild/rpmbuild/BUILD/ispc-1.13.0
[    3s] clangParsePath
[    3s]     linked by target "ispc" in directory /home/abuild/rpmbuild/BUILD/ispc-1.13.0
[    3s] clangSemaPath
[    3s]     linked by target "ispc" in directory /home/abuild/rpmbuild/BUILD/ispc-1.13.0
[    3s] clangSerializationPath
[    3s]     linked by target "ispc" in directory /home/abuild/rpmbuild/BUILD/ispc-1.13.0

At that point, I consulted the oracle, which uncovered https://src.fedoraproject.org/rpms/ispc. But, thanks to your reminder, I tackled it again, and succeeded!

This package build still reveals two questions.

Other distributions seem to provide libcurses compatibility stubs.

Why don't we?

And even more interesting, our llvm is built with assertions disabled. (At least, ispc's build is claiming that). While I understand this makes sense during llvm bootstrap, shouldn't we (try to) enable them for the full build?

Thanks for the reminder, Ismail. Much appreciated.

Cheers, Pete


Ismail Dönmez's avatar

If you want something cool with llvm you could do -flto=thin and it'd give you slim and fast LTO. I don't understand the question about curses stubs, what kind of stubs?

The reason llvm has assertions disabled is that, back in the day I was maintaining llvm, assertions did have a runtime cost which we didn't want the user to suffer from.


Hans-Peter Jansen's avatar

If you want something cool with llvm you could do -flto=thin and it'd give you slim and fast LTO.

Will do.

I don't understand the question about curses stubs, what kind of stubs?

If ispc is able to link with curses and doesn't need a test for {n,}curses, I wonder, why this succeeds, while we need to patch in linking with ncurses. Guess, this is related to

https://src.fedoraproject.org/rpms/ncurses/blob/master/f/ncurses.spec#_221

but I never saw such a construct in any openSUSE package.

The reason llvm has assertions disabled is that, back in the day I was maintaining llvm, assertions did have a runtime cost which we didn't want the user to suffer from.

Sure, understood. Question is, is that still the case with 10.0.0?

This package seems to be able to make use of it. Glad, it's optional.


Ismail Dönmez's avatar

The point about curses looks valid, I guess it's for *BSD compat. Makes sense. For llvm+asserts, someone needs to check it :-)

Request History
Hans-Peter Jansen's avatar

frispete created request

Libraries start to require this, first one is the current release of OpenImageDenoise,
as found in https://build.opensuse.org/package/show/home:frispete:blender/OpenImageDenoise

Now as full llvm build, thanks to Ismail.


Factory Auto's avatar

factory-auto added opensuse-review-team as a reviewer

Please review sources


Factory Auto's avatar

factory-auto accepted review

Check script succeeded


openSUSE Build Service is sponsored by