[all-commits] [llvm/llvm-project] 461e58: Introduce symbol versioning for clang-cpp (#116556)

Aaron Puchert via All-commits all-commits at lists.llvm.org
Tue Nov 19 18:30:24 PST 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 461e58e75dc3e2a0d6e0448c1ebcb8bd14e3d65c
      https://github.com/llvm/llvm-project/commit/461e58e75dc3e2a0d6e0448c1ebcb8bd14e3d65c
  Author: Aaron Puchert <aaronpuchert at alice-dsl.net>
  Date:   2024-11-20 (Wed, 20 Nov 2024)

  Changed paths:
    M clang/tools/clang-shlib/CMakeLists.txt
    A clang/tools/clang-shlib/simple_version_script.map.in
    M llvm/CMakeLists.txt

  Log Message:
  -----------
  Introduce symbol versioning for clang-cpp (#116556)

The situation that required symbol versions on the LLVM shared library
can also happen for clang-cpp, although it is less common: different
tools require different versions of the library, and through transitive
dependencies a process ends up with multiple copies of clang-cpp. This
causes havoc with ELF, because calls meant to go one version of the
library end up with another.

I've also considered introducing a symbol version globally, but for
example the clang (C) library and other targets outside of LLVM/Clang,
e.g. libc++, would not want that. So it's probably best if we keep it to
those libraries.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list