diff --git a/debian/changelog b/debian/changelog index a11e20ad..591545ff 100644 --- a/debian/changelog +++ b/debian/changelog @@ -73,6 +73,9 @@ llvm-toolchain-snapshot (1:16~++20220731055325+02b3a358926e-1~exp1) experimental llvm-toolchain-15 (1:15.0.7-2) UNRELEASED; urgency=medium * Adjust some lintian overrides + * Disable flang on s390x. Seems that it is breaking + * Update print lldb python patch, following what was done + in automake for newer python -- Sylvestre Ledru Sun, 15 Jan 2023 10:54:41 +0100 diff --git a/debian/patches/lldb/print-lldb-path.patch b/debian/patches/lldb/print-lldb-path.patch new file mode 100644 index 00000000..1b11531f --- /dev/null +++ b/debian/patches/lldb/print-lldb-path.patch @@ -0,0 +1,48 @@ +Author: Gianfranco Costamagna +Last-Update: 2023-01-19 + +Index: llvm-toolchain-15-15.0.6/lldb/bindings/python/get-python-config.py +=================================================================== +--- llvm-toolchain-15-15.0.6.orig/lldb/bindings/python/get-python-config.py ++++ llvm-toolchain-15-15.0.6/lldb/bindings/python/get-python-config.py +@@ -15,6 +15,7 @@ + return rel + + def main(): ++ import sysconfig + parser = argparse.ArgumentParser(description="extract cmake variables from python") + parser.add_argument("variable_name") + args = parser.parse_args() +@@ -31,7 +32,19 @@ + # If not, you'll have to use lldb -P or lldb -print-script-interpreter-info + # to figure out where it is. + try: +- print(relpath_nodots(sysconfig.get_path("platlib"), sys.prefix)) ++ if hasattr(sysconfig, 'get_default_scheme'): ++ scheme = sysconfig.get_default_scheme() ++ else: ++ scheme = sysconfig._get_default_scheme() ++ if scheme == 'posix_local': ++ # Debian's default scheme installs to /usr/local/ but we want to find headers in /usr/ ++ scheme = 'posix_prefix' ++ path = sysconfig.get_path('purelib', scheme) ++ else: ++ from distutils import sysconfig ++ path = sysconfig.get_python_lib(0, 0) ++ ++ print(relpath_nodots(path, sys.prefix)) + except ValueError: + # Try to fall back to something reasonable if sysconfig's platlib + # is outside of sys.prefix +Index: llvm-toolchain-15-15.0.6/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp +=================================================================== +--- llvm-toolchain-15-15.0.6.orig/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp ++++ llvm-toolchain-15-15.0.6/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp +@@ -238,6 +238,7 @@ + // the real python interpreter uses. (e.g. lib for most, lib64 on RHEL + // x86_64, or bin on Windows). + llvm::sys::path::remove_filename(path); ++ llvm::sys::path::append(path, "/llvm-" + std::to_string(LLVM_VERSION_MAJOR)); + llvm::sys::path::append(path, LLDB_PYTHON_RELATIVE_LIBDIR); + + #if defined(_WIN32) diff --git a/debian/patches/series b/debian/patches/series index 875a634e..f2744617 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -119,6 +119,7 @@ bootstrap-fix-include-next.diff #D67877-cmake-clang-example.patch python3-shebang.patch +lldb/print-lldb-path.patch lower-python-dep.diff scan-build-py-fix-default-bin.diff