import UBI lld-18.1.8-1.el9

This commit is contained in:
eabdullin 2024-11-12 10:24:27 +00:00
parent e854a73c86
commit a91dbb955f
4 changed files with 47 additions and 41 deletions

4
.gitignore vendored
View File

@ -1,2 +1,2 @@
SOURCES/lld-17.0.6.src.tar.xz
SOURCES/lld-17.0.6.src.tar.xz.sig
SOURCES/lld-18.1.8.src.tar.xz
SOURCES/lld-18.1.8.src.tar.xz.sig

View File

@ -1,2 +1,2 @@
abe5d45ebea2b9994a5e6ed31268a2114f4fa14f SOURCES/lld-17.0.6.src.tar.xz
849136b25fe7afb56131cdb31ffb08593b6ed997 SOURCES/lld-17.0.6.src.tar.xz.sig
1cf1fa9848b05a07d3d52e69949d44003f2ab2af SOURCES/lld-18.1.8.src.tar.xz
b73ca3f2724b4b930cb7e2c06ea16fb17ce19e30 SOURCES/lld-18.1.8.src.tar.xz.sig

View File

@ -1,18 +1,17 @@
From 43dfe54ce017c8d37eaec480a2f13a492bbc4203 Mon Sep 17 00:00:00 2001
From 9df81767571465ef1f2e7370299e21c64fe34f40 Mon Sep 17 00:00:00 2001
From: serge-sans-paille <sguelton@redhat.com>
Date: Thu, 25 Feb 2021 14:24:14 +0100
Subject: [PATCH 2/2] [PATCH][lld] Import compact_unwind_encoding.h from
libunwind
Subject: [PATCH][lld] Import compact_unwind_encoding.h from libunwind
This avoids an implicit cross package dependency
---
lld/include/mach-o/compact_unwind_encoding.h | 477 +++++++++++++++++++++++++++
lld/include/mach-o/compact_unwind_encoding.h | 477 +++++++++++++++++++
1 file changed, 477 insertions(+)
create mode 100644 lld/include/mach-o/compact_unwind_encoding.h
diff --git a/lld/include/mach-o/compact_unwind_encoding.h b/lld/include/mach-o/compact_unwind_encoding.h
new file mode 100644
index 0000000..5301b10
index 000000000000..5301b1055ef9
--- /dev/null
+++ b/lld/include/mach-o/compact_unwind_encoding.h
@@ -0,0 +1,477 @@
@ -494,5 +493,5 @@ index 0000000..5301b10
+#endif
+
--
1.8.3.1
2.30.2

View File

@ -15,9 +15,9 @@
%bcond_without check
%bcond_with compat_build
%global maj_ver 17
%global min_ver 0
%global patch_ver 6
%global maj_ver 18
%global min_ver 1
%global patch_ver 8
#global rc_ver 4
%if %{with snapshot_build}
@ -37,12 +37,14 @@
%global install_includedir %{install_prefix}/include
%global install_libdir %{install_prefix}/lib
%global install_datadir %{install_prefix}/share
%global install_bindir %{install_prefix}/bin
%else
%global pkg_name lld
%global install_prefix /usr
%global install_includedir %{_includedir}
%global install_libdir %{_libdir}
%global install_datadir %{_datadir}
%global install_bindir %{_bindir}
%endif
Name: %{pkg_name}
@ -61,8 +63,6 @@ Source1: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{maj_ve
Source2: release-keys.asc
%endif
ExcludeArch: s390x
# Bundle libunwind header need during build for MachO support
Patch1: 0002-PATCH-lld-Import-compact_unwind_encoding.h-from-libu.patch
@ -93,8 +93,6 @@ Requires(preun): %{_sbindir}/update-alternatives
Requires: %{name}-libs = %{version}-%{release}
Obsoletes: lld-test < 15.0.7
%description
The LLVM project linker.
@ -106,6 +104,7 @@ Requires: %{name}-libs%{?_isa} = %{version}-%{release}
# dependency.
Requires: %{name}%{?_isa} = %{version}-%{release}
%endif
Provides: %{name}-devel(major) = %{maj_ver}
%description devel
This package contains library and header files needed to develop new native
@ -124,15 +123,6 @@ Shared libraries for LLD.
%autosetup -n %{lld_srcdir} -p2
%if %{with compat_build}
# For compat builds, we don't want to build the actual lld binary. While there is an
# LLD_BUILD_TOOLS cmake option, it is incomplete in various ways (e.g. still leaves install
# targets and symlinks), so instead skip the tools/lld build entirely.
# We can't simply delete the binaries after the fact, because this would leave checks for
# their existence in the cmake exports.
sed 's/add_subdirectory(tools\/lld)//' -i CMakeLists.txt
%endif
%build
%cmake \
@ -144,17 +134,16 @@ sed 's/add_subdirectory(tools\/lld)//' -i CMakeLists.txt
-DLLVM_COMMON_CMAKE_UTILS=%{install_datadir}/llvm/cmake \
-DCMAKE_SKIP_RPATH:BOOL=ON \
-DPYTHON_EXECUTABLE=%{__python3} \
%if %{with compat_build}
-DLLVM_CMAKE_DIR=%{install_libdir}/cmake/llvm \
-DLLVM_INCLUDE_TESTS=OFF \
%else
%if %{with snapshot_build}
-DLLVM_VERSION_SUFFIX="%{llvm_snapshot_version_suffix}" \
%endif
-DLLVM_INCLUDE_TESTS=ON \
-DLLVM_EXTERNAL_LIT=%{_bindir}/lit \
-DLLVM_LIT_ARGS="-sv \
--path %{_libdir}/llvm" \
%if %{with snapshot_build}
-DLLVM_VERSION_SUFFIX="%{llvm_snapshot_version_suffix}" \
%endif
%if %{with compat_build}
-DLLVM_CMAKE_DIR=%{install_libdir}/cmake/llvm \
%else
%if 0%{?__isa_bits} == 64
-DLLVM_LIBDIR_SUFFIX=64 \
%else
@ -173,13 +162,21 @@ sed 's/add_subdirectory(tools\/lld)//' -i CMakeLists.txt
# This is generated by Patch1 during build and (probably) must be removed afterward
rm %{buildroot}%{install_includedir}/mach-o/compact_unwind_encoding.h
%if %{without compat_build}
%if %{with compat_build}
# Add version suffix to binaries
mkdir -p %{buildroot}%{_bindir}
for f in %{buildroot}/%{install_bindir}/*; do
filename=`basename $f`
ln -s ../../%{install_bindir}/$filename %{buildroot}/%{_bindir}/$filename-%{maj_ver}
done
%else
# Required when using update-alternatives:
# https://docs.fedoraproject.org/en-US/packaging-guidelines/Alternatives/
touch %{buildroot}%{_bindir}/ld
install -D -m 644 -t %{buildroot}%{_mandir}/man1/ docs/ld.lld.1
%post
%{_sbindir}/update-alternatives --install %{_bindir}/ld ld %{_bindir}/ld.lld 1
@ -191,23 +188,26 @@ fi
%check
%if %{without compat_build}
%if %{with check}
export LD_LIBRARY_PATH=%{buildroot}/%{install_libdir}
%cmake_build --target check-lld
%endif
%if %{without compat_build}
%ldconfig_scriptlets libs
%endif
%if %{without compat_build}
%files
%license LICENSE.TXT
%ghost %{_bindir}/ld
%{_bindir}/lld*
%{_bindir}/ld.lld
%{_bindir}/ld64.lld
%{_bindir}/wasm-ld
%{install_bindir}/lld*
%{install_bindir}/ld.lld
%{install_bindir}/ld64.lld
%{install_bindir}/wasm-ld
%if %{without compat_build}
%{_mandir}/man1/ld.lld.1*
%else
%{_bindir}/*-%{maj_ver}
%endif
%files devel
@ -219,7 +219,14 @@ fi
%{install_libdir}/liblld*.so.*
%changelog
%{?llvm_snapshot_changelog_entry}
* Wed Jul 17 2024 Konrad Kleine <kkleine@redhat.com> - 18.1.8-1
- Update to 18.1.8
* Wed Jun 05 2024 Konrad Kleine <kkleine@redhat.com> - 18.1.6-3
- Rebuild against clang-18.1.6-2 which defaults to DWARF4
* Mon Jun 03 2024 Konrad Kleine <kkleine@redhat.com> - 18.1.6-1
- Update to 18.1.6
* Mon Dec 11 2023 Timm Bäder <tbaeder@redhat.com> - 17.0.6-1
- Update to 17.0.6