On 6/26/23 10:02, Fabio Valentini wrote:
On Mon, Jun 26, 2023 at 6:13 PM Aoife Moloney <amoloney@xxxxxxxxxx> wrote:
https://fedoraproject.org/wiki/Changes/LLVM-17
This document represents a proposed Change. As part of the Changes
process, proposals are publicly announced in order to receive
community feedback. This proposal will only be implemented if approved
by the Fedora Engineering Steering Committee.
== Summary ==
Update all llvm sub-projects in Fedora Linux to version 17.
== Owner ==
* Name: [[User:tstellar| Tom Stellard]]
* Email: <tstellar@xxxxxxxxxx>
== Detailed Description ==
All llvm sub-projects in Fedora will be updated to version 17, and
there will be a soname version change for the llvm libraries.
Compatibility packages clang16, llvm16, and lld16 will be added to
ensure that packages that currently depend on clang and llvm version
16 libraries will continue to work.
Other notable changes:
* The Clang Resource Directory will be moved from /usr/lib64/clang/17/
to /usr/lib/clang/17/ this is the location of clang's internal headers
and runtime libraries like libomp and compiler-rt. Package owners of
packages that read or write this directory will need to update their
packages when rebuilding against/with LLVM 17. The
%clang_resource_dir helper macro can be used to make this transition
smoother, and packages are encouraged to update to use this macro even
before the LLVM 17 update.
* Along with the Clang Resource Directory change, compiler-rt will now
install its libraries into /usr/lib/clang/17/lib/$TRIPLE/ instead of
/usr/lib64/clang/17/lib/
Isn't installing architecture-specific binaries into /usr/lib a bit
broken (and against Packaging Guidelines)?
If this is intended to make it possible to have parallel installable
toolchains for different $TRIPLEs, it might be a better idea to
install files for the "host triple" in the current location, and only
add symlinks for thise in the "new" location.
We're trying to be more consistent with gcc and also upstream clang.
gcc installs some of these same libraries and some equivalent ones
into /usr/lib as well (/usr/lib/gcc/$TRIPLE/$MAJOR_VERSON).
This also fixes problems we have with clang being unable to find 32-bit
libraries. clang expects 32-bit and 64-bit libraries to be within the
same Clang Resource Directory, so it searches for the 32-bit libraries
in /usr/lib64/clang/17/lib, and they are installed in /usr/lib/clang/17/lib.
We do currently have symlinks for the 32-bit libraries installed in /usr/lib64/clang/17/lib,
but this is not very robust and still has some bugs. Moving the Resource
Directory to match upstream is the most simple solution for us and it should
help prevent issues in the future too.
-Tom
Fabio
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue