Merge ../llvm-toolchain-18 into trixie-staging archive/raspbian/1%19.1.3-1+rpi1 raspbian/1%19.1.3-1+rpi1
authorPeter Michael Green <plugwash@raspbian.org>
Tue, 12 Nov 2024 13:37:59 +0000 (13:37 +0000)
committerPeter Michael Green <plugwash@raspbian.org>
Tue, 12 Nov 2024 13:37:59 +0000 (13:37 +0000)
1  2 
compiler-rt/cmake/base-config-ix.cmake
debian/changelog
debian/control
debian/control.in
debian/patches/series
debian/rules

index 6f8ed481e3db418691d29990c9600d1e98a18ffc,50d8bb4cac2c768de727cde2702f76e6779c9d5d..96a4943b4cb13287483bc398ca0ea3c3c12fee5f
 -llvm-toolchain-18 (1:18.1.8-12+rpi1) trixie-staging; urgency=medium
++llvm-toolchain-19 (1:19.1.3-1+rpi1) trixie-staging; urgency=medium
+   [changes brought forward from llvm-toolchain-3.8 1:3.8-2+rpi1 by Peter Michael Green <plugwash@raspbian.org> at Sat, 14 May 2016 21:43:35 +0000]
+   * Cleanup .pyc files in clean target.
+   * Add a hack to the cmake based build to force armv6 (unfortunately the cmake
+     based build relies on config.guess which assumes you want to build for the
+     hardware you are running on).
+   * Add -DCOMPILER_RT_BUILD_BUILTINS=OFF to disable parts of compiler-rt that
+     are broken on lower arm architectures.
+   [changes introduced in llvm-toolchain-3.9 1:3.9.1-1 by Peter Michael Green]
+   * disable testsuite (using a method that is hopefully less likely to cause diff conflicts than previously).
+   * Remove -march=armv7-a in compiler-rt/cmake/config-ix-base.cmake
+   * Clean up debian/usr in clean target.
+   * Clean up clang/tools/*-3.9 in clean target.
+   * Clean up stray *3.9.vim files
+   * Clean up clang/tools/scan-build/man/scan-build-3.9.1 and utils/vim/llvm-3.9-vimrc
+   * Clean up debian/*.install
+   [changes introduced in llvm-toolchain-6.0 1:6.0-1+rpi1 by Peter michael green]
+   * create build-llvm/docs/ocamldoc/html/ so the install target doesn't complain
+     about it not existing.
+   * clean up more crap left behind by build process.
+   [changes introduced in llvm-toolchain-6.0 1:6.0-3+rpi1 by Peter Michael Green]
+   * Remove debian/man in clean target.
+   [changes introduced in llvm-toolchain-7 1:7-6+rpi1 by Peter Michael Green]
+   * Use libatomic on armhf
+   * Set cmake/config.guess.hack back to mode 644 in clean target to keep
+     git/dgit happy.
+   * Yet more clean target fixes.
+   [changes introduced in llvm-toolchain-7 1:7.0.1-1+rpi2 by Peter Michael Green]
+   * Change triplet in debian/rules to use armv6k rather than armv7l
+   [changes introduced in llvm-toolchain-12 1:12.0.1-16 by Peter Michael Green]
+   * Disable llvm libunwind on armhf, it seems to come out armv7 contaminated.
+   [changes introduced in llvm-toolchain-13 (1:13.0.0-9+rpi1 by Peter Michael Green]
+   * Disable scudo on armhf, it needs atomics which we do not want to enable.
+   [changes brought forward from 1:13.0.0-9+rpi2 by Peter Michael Green <plugwash@raspbian.org> at Tue, 23 Nov 2021 22:37:30 +0000]
+   * Remove armhf from architecture list for libunwind-13-dev dependency.
 - -- Peter Michael Green <plugwash@debian.org>  Thu, 30 May 2024 19:02:37 +0000
++ -- Peter Michael Green <plugwash@debian.org>  Tue, 12 Nov 2024 13:29:35 +0000
 -llvm-toolchain-18 (1:18.1.8-12) unstable; urgency=medium
 +llvm-toolchain-19 (1:19.1.3-1) unstable; urgency=medium
  
 -  * Ensure that at least 1 CPU is used for build
 -    Thanks to Santiago Vila for the patch
 -    (Closes: #1082359)
 -  * Don't enable intel-pt on Ubuntu Bionic
 -  * Backport a miscompilation fix (Closes: #1082727)
 -  * Fix the bootstrapping (Closes: #1082610)
 -    Thanks to Andrey Feofilaktov for the patch
 -  * clang provides objc++-compiler (Closes: #1082744)
 -  * Update Standards version to 4.7.0
 -
 - -- Sylvestre Ledru <sylvestre@debian.org>  Mon, 23 Sep 2024 13:23:31 +0200
 -
 -llvm-toolchain-18 (1:18.1.8-11) unstable; urgency=medium
 -
 -  * Drop ocaml on armhf, ocamlopt disappeared making build ftbfs
 -  * Drop extra space in changelog
 -  * Sync spirv architectures with sid builds
 -  * Fix x32 build failure due to orc library not being installed
 -  * Add back LLVM_EXPERIMENTAL_TARGETS_TO_BUILD to PASSTHROUGH variables, to help m68k
 +  * New release
  
 - -- Gianfranco Costamagna <locutusofborg@debian.org>  Mon, 09 Sep 2024 08:42:27 +0200
 + -- Sylvestre Ledru <sylvestre@debian.org>  Wed, 30 Oct 2024 21:56:13 +0100
  
 -llvm-toolchain-18 (1:18.1.8-10) unstable; urgency=medium
 +llvm-toolchain-19 (1:19.1.2-2) unstable; urgency=medium
  
 -  [ Matthias Klose ]
 -  * ld.lld: When no package-metadata option is given, fall-back
 -    to the envvar ELF_PACKAGE_METADATA.
 +  [ Samuel Thibault ]
 +  * Disable time64_t ABI on hurd-i386 too.
  
 -  [ Emanuele Rocca ]
 -  * Enable bolt on arm64, now supported upstream.
 +  [ Sylvestre Ledru ]
 +  * Use the | hello trick for g++-multilib for s390x / Ubuntu Oracular
 +  * Enable compiler-rt runtime again for 32bit time_t64 architectures.
 +    (Closes: #1085853)
 +  * Backport Ubuntu 25.04 - Plucky Puffin support
  
 -  [ Bo YU ]
 -  * Backport two commits to fix riscv64 issue. (Closes: #1080435)
 + -- Sylvestre Ledru <sylvestre@debian.org>  Sun, 27 Oct 2024 21:05:41 +0100
  
 - -- Sylvestre Ledru <sylvestre@debian.org>  Sat, 07 Sep 2024 23:08:26 +0200
 +llvm-toolchain-19 (1:19.1.2-1) unstable; urgency=medium
  
 -llvm-toolchain-18 (1:18.1.8-9) unstable; urgency=medium
 +  [ Samuel Thibault ]
 +  * patches/hurd/hurd-f_type.diff: Fix hurd build against glibc ≥ 2.39.
 +  * libomp-X.Y-dev.install.in: Don't try to ship ompd gdb plugin on
 +    hurd-amd64 ; ship libomptarget.
 +  * libomp5-X.Y.install.in: Ship libomptarget.
 +  * libomp5-X.Y.symbols.in: Fix symbols on hurd-any.
 +  * rules: Fix syntax on non-linux.
  
 -  [ Gianfranco Costamagna ]
 -  * Mention in changelog also the SVE fixes from llvm-17
 -  * Drop mips D154390 patch, already upstream
 +  [ John Paul Adrian Glaubitz ]
 +  * Don't try to install xray and profile headers on powerpc
  
    [ Sylvestre Ledru ]
 -  * Really fix breaks/replaces (Closes: #1077587)
 +  * New release
 +  * Update Standards version to 4.7.0
  
 - -- Sylvestre Ledru <sylvestre@debian.org>  Sat, 03 Aug 2024 20:07:17 +0200
 + -- Sylvestre Ledru <sylvestre@debian.org>  Tue, 15 Oct 2024 15:11:47 +0200
  
 -llvm-toolchain-18 (1:18.1.8-8) unstable; urgency=medium
 +llvm-toolchain-19 (1:19.1.1-1) unstable; urgency=medium
  
    [ Sylvestre Ledru ]
 -  * Fix breaks/replaces (Closes: #1077587)
 -
 -  [ Gianfranco Costamagna ]
 -  * Merge llvm-toolchain-17 1:17.0.6-13 into llvm-18 branch
 -    - Make SVE types available in device targets (Closes: #1076578)
 -
 - -- Sylvestre Ledru <sylvestre@debian.org>  Tue, 30 Jul 2024 10:48:59 +0200
 -
 -llvm-toolchain-18 (1:18.1.8-7) unstable; urgency=medium
 -
 -  * Unbreak the cmake tools
 -
 - -- Sylvestre Ledru <sylvestre@debian.org>  Sun, 28 Jul 2024 09:49:06 +0200
 -
 -llvm-toolchain-18 (1:18.1.8-6) unstable; urgency=medium
 -
 -  * Make libllvm multi arch ready again ... (Closes: #1076131)
 -  * bring back spirv
 -
 - -- Sylvestre Ledru <sylvestre@debian.org>  Fri, 26 Jul 2024 17:34:31 +0200
 -
 -llvm-toolchain-18 (1:18.1.8-5) unstable; urgency=medium
 -
 -  * Fix the broken Breaks/replaces for apt.llvm.org
 -    Closes: https://github.com/llvm/llvm-project/issues/99502
 -  * Bring back libLLVM.so.18.1 as symlink library
 -    (LP: #2073604)
 -  * temporary disable spirv to unbreak the build
 +  * Don't enable intel-pt on Ubuntu Bionic
 +  * Add disabled info in the build log
 +  * Disable LLVM libc on bionic
 +  * Fix the bootstrapping (Closes: #1082610)
 +    Thanks to Andrey Feofilaktov for the patch
 +  * clang provides objc++-compiler (Closes: #1082744)
  
 -  [ John Paul Adrian Glaubitz ]
 -  * Make regexp to grep for LLVM_DEFAULT_TARGET_TRIPLE less ambigious
 +  [ Matthias Klose ]
 +  * New upstream release
 +  * Update watch file and add .git* files to exclude in the tarball.
  
 - -- Sylvestre Ledru <sylvestre@debian.org>  Wed, 24 Jul 2024 11:54:39 +0200
 + -- Matthias Klose <doko@debian.org>  Wed, 02 Oct 2024 06:11:01 +0200
  
 -llvm-toolchain-18 (1:18.1.8-4) unstable; urgency=medium
 +llvm-toolchain-19 (1:19.1.0-4) unstable; urgency=medium
  
 -  * fix the symlinks after LLVM_ENABLE_PER_TARGET_RUNTIME_DIR=OFF
 -    Probably caused
 -    https://github.com/llvm/llvm-project/issues/99017
 -  * Move back /usr/lib/llvm-18/lib/libLLVM-18.so.1 to libllvm18 (Closes: #1076469)
 -    And add breaks/replaces to make sure the upgrade goes smoothly
 +  [ Sylvestre Ledru ]
 +  * Adjust the workaround for apt.llvm.org version upgrades
 +    https://github.com/llvm/llvm-project/issues/109276
 +  * Ensure that at least 1 CPU is used for build
 +    Thanks to Santiago Vila for the patch
 +    (Closes: #1082360)
  
    [ Matthias Klose ]
 -  * Construct the --package-metadata option just from ELF_PACKAGE_METADATA.
 +  * Don't relax versioned shlibs dependencies for snapshot builds and
 +    prerelease versions.
 +  * libllvm19: No symlinks in the llvm-19 subdir. Closes: #1081192, #1082495.
  
 - -- Sylvestre Ledru <sylvestre@debian.org>  Tue, 16 Jul 2024 18:02:17 +0200
 + -- Matthias Klose <doko@debian.org>  Sun, 22 Sep 2024 16:36:31 +0200
  
 -llvm-toolchain-18 (1:18.1.8-3) unstable; urgency=medium
 +llvm-toolchain-19 (1:19.1.0-3) unstable; urgency=medium
  
 -  [ Sylvestre Ledru ]
 -  * Revert LLVM_ENABLE_PER_TARGET_RUNTIME_DIR=ON
 -    9ca35f30383d89e4fdd45d15e0eb82c832df4b8c
 -    For causing https://github.com/llvm/llvm-project/issues/96210
 -  * Disable LLDB_BUILD_INTEL_PT on Ubuntu bionic
 -  * Make libllvm co-installable again (Closes: #1076131)
 -
 - -- Sylvestre Ledru <sylvestre@debian.org>  Mon, 15 Jul 2024 09:49:47 +0200
 +  * Fix typo in dh_makeshlibs calls.
  
 -llvm-toolchain-18 (1:18.1.8-2) unstable; urgency=medium
 + -- Matthias Klose <doko@debian.org>  Wed, 18 Sep 2024 17:26:29 +0200
  
 -  [ Matthias Klose ]
 -  * Pass --package-metadata on distros with supporting linkers (starting
 -    with Debian trixie and Ubuntu noble).
 -    The package metadata is constructed from the environment variables
 -    DEB_BUILD_OS_RELEASE_ID, DEB_SOURCE, DEB_VERSION and DEB_HOST_ARCH.
 -    Setting NO_PKG_METADATA=1 disables the generation of the package metadata.
 +llvm-toolchain-19 (1:19.1.0-2) unstable; urgency=medium
  
 -  [ Sylvestre Ledru ]
 -  * Try to unbreak powerpc & sparc64
 +  * Call dh_makeshlibs with the version of the first upstream
 +    release (1:19.1.0). Looking back at the 1.18 release cycle,
 +    these libraries didn't see any instability in the ABIs.
 +  * debian/qualify-clang.sh: Fix typo.
  
 - -- Sylvestre Ledru <sylvestre@debian.org>  Sun, 07 Jul 2024 22:01:17 +0200
 + -- Matthias Klose <doko@debian.org>  Wed, 18 Sep 2024 10:29:19 +0200
  
 -llvm-toolchain-17 (1:17.0.6-13) unstable; urgency=medium
 +llvm-toolchain-19 (1:19.1.0-1) unstable; urgency=medium
  
 -  [ Emanuele Rocca ]
 -  * Make SVE types available in device targets (Closes: #1076578)
 +  * New upstream release 19.1.0.
  
    [ Matthias Klose ]
 -  * Pass --package-metadata on distros with supporting linkers (starting
 -    with Debian trixie and Ubuntu noble).
 -    The package metadata is constructed from the environment variables
 -    DEB_BUILD_OS_RELEASE_ID, DEB_SOURCE, DEB_VERSION and DEB_HOST_ARCH.
 -    Setting NO_PKG_METADATA=1 disables the generation of the package metadata.
 -
 - -- Gianfranco Costamagna <locutusofborg@debian.org>  Tue, 30 Jul 2024 09:15:47 +0200
 +  * debian/qualify-clang.sh: Skip llvmlibc test, if libllvmlibc-dev is not
 +    available.
 +  * Build-depend on llvm-spirv-19.
  
 -llvm-toolchain-18 (1:18.1.8-2~exp2) experimental; urgency=medium
 +  [ YunQiang Su ]
 +  * also pass -mxgot in LDFLAGS.
 +  * d/p/mips-mlir-xgot.diff: Pass -mxgot for mlir.
  
 -  * Change the LLVM_HOST_TRIPLE option from i386-linux-gnu to
 -    i386-pc-linux-gnu
 -    and arm-linux-gnueabihf to arm-pc-linux-gnueabihf
 -    Otherwise, it will fail with:
 -    Cannot find builtins library for the target architecture
 + -- Matthias Klose <doko@debian.org>  Tue, 17 Sep 2024 18:04:21 +0200
  
 - -- Sylvestre Ledru <sylvestre@debian.org>  Sun, 07 Jul 2024 00:38:27 +0200
 +llvm-toolchain-19 (1:19.1.0~++rc4-5) unstable; urgency=medium
  
 -llvm-toolchain-18 (1:18.1.8-2~exp1) experimental; urgency=medium
 +  * Move the libLLVM.so.1 symlink into llvm-19-dev. Closes: #1081192.
  
 -  [ Sylvestre Ledru ]
 -  * Enable LLVM_ENABLE_PER_TARGET_RUNTIME_DIR
 -    to move the libraries into multi archi directories
 -  * Bring back libLLVM to be installed in /usr/lib/llvm-18/lib/libLLVM-18.so
 -    instead of /usr/lib/llvm-18/lib/libLLVM.so
 -    Same for libclang (remove usr/lib/llvm-18/lib/libclang.so.1
 -    This should make the packages multiarch co installable again
 -    (Closes: #1067699, #1067005)
 -    (LP: #2063207)
 -  * Introduce the new variable @DEB_HOST_MULTIARCH_LLVM@ in the build system
 -    because the LLVM triple is different than Debian
 -    x86_64-pc-linux-gnu instead of x86_64-linux-gnu
 -  * autopkgtest: only run libllvmlibc test on supported archs
 + -- Matthias Klose <doko@debian.org>  Mon, 09 Sep 2024 11:20:16 +0200
  
 -  [ John Paul Adrian Glaubitz ]
 -  * Don't install Gold plugin on sparc64
 -  * Disable LLVM testsuite on x32
 -  * Install liborc_rt-x86_64.a on x32
 -  * Install hwasan_symbolize on x32
 +llvm-toolchain-19 (1:19.1.0~++rc4-4) unstable; urgency=medium
  
 -  [ Norbert Lange ]
 -  * build lldb with Intel PT support on x86, amd64
 +  [ Matthias Klose ]
 +  * Consolidate disabling CMake's package validation checks a bit.
 +  * debian/qualify-clang.sh: Skip OpenMP test, if libomp-dev is not available.
 +  * Disable CMake's package validation check for libLLVM.so.1.
 +  * Limit lldb autopkg test to the lldb architectures.
 +  * Generate debian/tests/* files.
 +  * Disable the usage-wrapper/memory tracking by default.
 +  * Replace LLDB_DISABLE_ARCHS macro with LLDB_ARCHS macro.
 +  * Remove unused kfreebsd patches, and remove references to kfreebsd and s390.
 +  * Remove references to alpha, hppa, powerpcspe and sh4.
 +  * Fix usage-wrapper build dependency.
  
    [ Aurelien Jarno ]
    * Enable lldb on riscv64.
diff --cc debian/control
index 3df5c4926797b9f2da0d3e91ad1edb221da8e1df,14f4c96c228db22c1ab0a3e0a8ad0fc3c3289628..c476fe0d7a0b37622b757a5e9f18a7acc9476a3b
@@@ -845,9 -849,9 +845,9 @@@ Description: production-quality unwinde
   or to operate on another process (aka remote), but only the local path has
   been implemented. Remote unwinding remains as future work.
  
 -Package: libunwind-18-dev
 +Package: libunwind-19-dev
  Section: libdevel
- Architecture: amd64 arm64 armhf i386 loong64 ppc64el ppc64 riscv64
+ Architecture: amd64 arm64 i386 loong64 ppc64el ppc64 riscv64
  Multi-Arch: same
  Depends:
   ${misc:Depends},
Simple merge
index d4651b9cd3055e0882c7ff8e4d82f86ed9a1c2ab,a062cbfbbd53bf0b50e43ded10c55ec422bd7730..6a39bfd88c0b47224e21efbbe31b653924911cd8
@@@ -16,12 -14,10 +14,10 @@@ symbolizer-path.dif
  clang-tidy-run-bin.diff
  0001-tools-clang-cmake-resolve-symlinks-in-ClangConfig.cmake.patch
  debug-jit-path.diff
  # commented because of bug 903709
  #force-gcc-header-obj.diff
  do-not-fail-on-unexpected-pass.diff
 -disable-display-PASS-UNSUPPORTED-XFAIL.diff
 +
  # Lib names
  0044-soname.diff
  lldb/lldb-soname.diff
@@@ -87,14 -74,25 +74,12 @@@ clangd-atomic-cmake.patc
  #  https://reviews.llvm.org/D60380
  remove-apple-clang-manpage.diff
  0049-Use-Debian-provided-MathJax-everywhere.patch
  # Hurd port
  hurd/hurd-pathmax.diff
 -# kfreebsd
 -# kfreebsd/clang_lib_Basic_Targets.diff
 -# kfreebsd/CMakeLists.txt.diff
 -# kfreebsd/compiler-rt_lib.diff
 -# kfreebsd/include_llvm_ADT_Triple.h.diff
 -# kfreebsd/kfreebsd-libcxx-threads-detection.diff
 -# kfreebsd/kfreebsd-openmp.diff
 -# kfreebsd/kfreebsd-threads-build.diff
 -# kfreebsd/kfreebsd-triple-clang.diff
 -# kfreebsd/kfreebsd-triple.diff
 -# kfreebsd/lib_Support.diff
 -# kfreebsd/lib_Target_X86.diff
 -# kfreebsd/lldb_source_Host_freebsd_Host.cpp.diff
 -# kfreebsd/lldb_source_Plugins_Process_FreeBSD.diff
 -# kfreebsd/tools_llvm-shlib_CMakeLists.txt.diff
 +hurd/hurd-f_type.diff
 +
  930008-arm.diff
  bootstrap-fix-include-next.diff
  # bug 939472
  #try-to-unbreak-thinlto.diff
  #D67877-cmake-clang-example.patch
@@@ -103,9 -100,9 +87,8 @@@ python3-shebang.patc
  lldb/print-lldb-path.patch
  lower-python-dep.diff
  scan-build-py-fix-default-bin.diff
  omp-riscv64.patch
  lldb/test-disable-lldb-i386.diff
 -unbreak-atomic-mips.diff
  llvm-fix-lld-linker-check.diff
  openmp-fix-runtimes-build.diff
  libclc-fix-prepare_builtins-rpath.diff
@@@ -122,9 -119,7 +105,8 @@@ compiler-rt/compilerrt-build-scudo-stan
  wasm/wasm-ld-path.diff
  wasm/wasm-compiler-rt-default.diff
  wasm/wasm-sysroot-usr.diff
  revert-update-doc.diff
 +
  unwind-force-pthread-dl.diff
  force-sse2-compiler-rt.diff
  bolt-disable-emit-relocs.patch
@@@ -132,9 -127,15 +114,10 @@@ link-grpc.dif
  libclang-major-version-only.diff
  D148945-revert.diff
  arm32-defaults.diff
 -libsanitizer-timebits.diff
 -ubuntu-releases.patch
 -clang-record-gcc-switches-by-default.patch
 -rename-libllvm.diff
 +disable-openmp-per-target.diff
 +offload-disable-static-assert.diff
  link-with-package-metadata.diff
 -llvm-toolchain-17-sve-types-aux-target.diff
  env-lld-package-metadata.diff
 -
 -rv64-fix-PCREL_HI20-issue.diff
 -rv64-fix-mm-leak.diff
 -backport-miscompile-floating-point.diff
 +mips-mlir-xgot.diff
 +ubuntu-plucky.patch
+ raspbian-triplet.patch
diff --cc debian/rules
index c0f5c7528e41fb4eca60a7652808f77944fa05cb,d14089e834db59dc1db60f7d488c11c81cf5bead..68e483b8eb8416715683f0949311b000bf7387d0
@@@ -183,7 -139,7 +183,7 @@@ ifneq (,$(filter $(DEB_HOST_ARCH),spar
  STAGE_1_CMAKE_EXTRA += -DLLVM_PARALLEL_LINK_JOBS=4
  endif
  
- ifneq (,$(filter $(DEB_HOST_ARCH),i386 hurd-i386 armel mipsel mips64el powerpc riscv64))
 -ifneq (,$(filter $(DEB_HOST_ARCH),i386 hurd-i386 kfreebsd-i386 armel armhf mipsel powerpc powerpcspe riscv64))
++ifneq (,$(filter $(DEB_HOST_ARCH),i386 hurd-i386 kfreebsd-i386 armel mipsel powerpc powerpcspe riscv64))
  # For some reason, in the stage2 build, when clang is used to compile
  # itself. The atomic detection is failing on armel and riscv64. Forcing the inclusion
  # everywhere and in all stages
@@@ -246,11 -197,18 +246,18 @@@ ifneq (,$(findstring $(DEB_HOST_ARCH),a
  endif
  
  ifneq (,$(findstring $(DEB_HOST_ARCH),armhf))
 -  STAGE_ALL_CMAKE_EXTRA += -DLLVM_HOST_TRIPLE=arm-pc-linux-gnueabihf
 +  STAGE_ALL_CMAKE_EXTRA += -DLLVM_HOST_TRIPLE=arm-linux-gnueabihf
  # align arch profile with debian baseline
  # https://wiki.debian.org/ArmHardFloatPort#Minimum_CPU_.26_FPU
-   CFLAGS_EXTRA += -march=armv7-a -mfpu=vfpv3-d16
-   CXXFLAGS_EXTRA += -march=armv7-a -mfpu=vfpv3-d16
+   CFLAGS_EXTRA += -march=armv6 -mfpu=vfpv2
+   CXXFLAGS_EXTRA += -march=armv6 -mfpu=vfpv2
+   STAGE_ALL_CMAKE_EXTRA += -DCOMPILER_RT_BUILD_BUILTINS=OFF
+   COMPILER_RT_USE_BUILTINS_LIBRARY := OFF
+   LIBCXX_USE_COMPILER_RT := OFF
+ # disable scudo standalone (not supported for baseline armel arch: armv6)
+ # note: we don't build with "k" in raspbian even though the CPU supports
+ # it because armv6k atomics have forward-compatibility problems.
+   STAGE_ALL_CMAKE_EXTRA += -DCOMPILER_RT_BUILD_SCUDO_STANDALONE=OFF
  endif
  
  ifneq (,$(filter $(DEB_HOST_ARCH),i386))
@@@ -409,8 -382,7 +416,8 @@@ els
  endif
  
  # Enable libunwind (or not)
 -ifneq (,$(filter $(DEB_HOST_ARCH), s390x armel armhf m68k mipsel mips64el hurd-i386 powerpc sparc sparc64 x32))
 +LIBUNWIND_ENABLE=yes
- ifneq (,$(filter $(DEB_HOST_ARCH), s390x armel m68k mipsel mips64el hurd-i386 hurd-amd64 powerpc sparc sparc64 x32))
++ifneq (,$(filter $(DEB_HOST_ARCH), s390x armel armhf m68k mipsel mips64el hurd-i386 hurd-amd64 powerpc sparc sparc64 x32))
    LIBUNWIND_ENABLE=no
  # do not use compiler-rt builtins for libcxx (libcxxabi) when libunwind is
  # disabled since the gnu implementation in libgcc_s will then be required
@@@ -696,8 -657,17 +703,14 @@@ stamps/preconfigure
        @echo "LLVM_SPIRV=$(LLVM_SPIRV)"
        @echo "LLVM_SPIRV_INSTALLED=$(LLVM_SPIRV_INSTALLED)"
        @echo "DOC_GENERATION=$(DOC_GENERATION)"
 -      @echo "control_vars=$(control_vars)"
  
 -      for f in debian/*.in; do \
+       # add executable flag to script we added as part of triplet hack
+       # --plugwash
+       chmod 755 llvm/cmake/config.guess.hack
+       # also make sure config.guess is executable
+       chmod 755 llvm/cmake/config.guess
+       
 +      for f in debian/*.in debian/tests/*.in; do \
                f2=$$(echo $$f | sed 's/\.in$$//;s/X\.Y/$(LLVM_VERSION)/'); \
                echo "$$f => $$f2"; \
                sed -e 's|@DEB_HOST_MULTIARCH@|$(DEB_HOST_MULTIARCH)|g' \