Hi! In f42 the main llvm package switched to installing all files under a /usr/lib{64}/llvmN prefix and providing symlinks in the default prefix, to align the contents between the versioned and unversioned packages. What we were not aware of at the time is that rpm's support for symlinks is very bad.
The latest issue we've run into is multilib installations. On f42, it's no longer possible to install llvm-devel.x86_64 and llvm-devel.i686 at the same time, because they have conflicts at paths like /usr/bin/opt. These conflicts previously existed as well, but while rpm will happily ignore multilib file conflicts (resolving in favor of x86_64), having a symlink conflict is a hard error. (The symlink will point to /usr/lib/llvmN/bin/opt on i686 and /usr/lib64/llvmN/bin/opt on x86_64.) An elegant way to avoid the multilib conflict is to just not ship symlinks on i686. However, doing this would also break all i686 rpm builds that depend on llvm or clang, because they would now require adding something like "export PATH=/usr/lib/llvmN:$PATH" to the build. I'd appreciate some advice on what we can do to support both i686 rpm builds and conflict-free multilib installs at the same time. For example, is there some way (e.g. via a macros file shipped with the i686 llvm package) we could automatically inject into PATH for rpm builds only? Regards, Nikita
-- _______________________________________________ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-le...@lists.fedoraproject.org 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@lists.fedoraproject.org Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue