diff --git a/README.md b/README.md index 8d14bff..c91a000 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,4 @@ # lld17 +Linker from the LLVM project. + diff --git a/lld17.spec b/lld17.spec new file mode 100644 index 0000000..70992eb --- /dev/null +++ b/lld17.spec @@ -0,0 +1,307 @@ +%define gccver %(gcc -dumpversion) +%define majver %(echo %version | cut -d. -f1-2) +Name: lld17 +Version: 17.0.6 +Release: 2mamba +Summary: Linker from the LLVM project +Group: Development/Languages +Vendor: openmamba +Distribution: openmamba +Packager: Silvan Calarco +URL: https://llvm.org/ +Source0: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{version}/lld-%{version}.src.tar.xz +Source1: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{version}/libunwind-%{version}.src.tar.xz +Source2: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{version}/cmake-%{version}.src.tar.xz +Source3: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{version}/llvm-%{version}.src.tar.xz +License: NCSA +## AUTOBUILDREQ-BEGIN +BuildRequires: glibc-devel +BuildRequires: libgcc +BuildRequires: libllvm17-devel +BuildRequires: libstdc++6-devel +BuildRequires: libz-devel +BuildRequires: libzstd-devel +## AUTOBUILDREQ-END +BuildRequires: llvm17 +Requires: lib%{name} = %{?epoch:%epoch:}%{version}-%{release} + +%description +Linker from the LLVM project. + +%package -n lib%{name} +Group: System/Libraries +Summary: Shared libraries for %{name} + +%description -n lib%{name} +This package contains shared libraries for %{name}. + +%package -n lib%{name}-devel +Summary: Libraries and header files for LLVM +Group: Development/Languages +Requires: lib%{name} = %{?epoch:%epoch:}%{version}-%{release} + +%description -n lib%{name}-devel +This package contains library and header files needed to develop new native programs that use LLD libraries. + +%package -n lib%{name}-apidocs +Group: Documentation +Summary: lib%{name} API documentation +Requires: lib%{name}-devel = %{?epoch:%epoch:}%{version}-%{release} +Requires: gtk-doc + +%description -n lib%{name}-apidocs +This package includes the lib%{name} API documentation. + +%debug_package + +%prep +%setup -q -c -a1 -a2 -a3 +#% setup -q -c -D -T +#:<< _EOF + +mv lld-%{version}.src lld +mv libunwind-%{version}.src libunwind +mv cmake-%{version}.src cmake +mv llvm-%{version}.src llvm + +%build +#:<< _EOF +mkdir -p build +cd build + +cmake -G Ninja \ + -DCMAKE_BUILD_TYPE=Release \ + -DBUILD_SHARED_LIBS=ON \ + -DCMAKE_INSTALL_PREFIX=%{_libdir}/llvm17 \ + -DLLVM_CMAKE_DIR=%{_libdir}/llvm17/lib/cmake \ + -DLLVM_CONFIG=%{_libdir}/llvm17/bin/llvm-config \ + -DLLVM_LINK_LLVM_DYLIB=ON \ + -DLLVM_INCLUDE_TESTS=OFF \ + -DLLVM_BUILD_TESTS=ON \ + -DLLVM_BUILD_DOCS=ON \ + -DLLVM_ENABLE_SPHINX=ON \ + -DSPHINX_WARNINGS_AS_ERRORS=OFF \ + -DLLVM_EXTERNAL_LIT=%{_bindir}/lit \ + -Wno-dev \ + ../lld + +# -DLLVM_MAIN_SRC_DIR="%{_builddir}/%{name}-%{version}/llvm-%{version}.src/" \ + +ninja + +%install +[ "%{buildroot}" != / ] && rm -rf "%{buildroot}" +cd build +export DESTDIR=%{buildroot} +ninja install + +for _libname in COFF Common ELF MachO MinGW Wasm; do + _lib=liblld${_libname}.so.17 + mv %{buildroot}%{_libdir}/{llvm17/lib/,}$_lib + ln -s ../../$_lib %{buildroot}%{_libdir}/llvm17/lib/$_lib +done + +%clean +[ "%{buildroot}" != / ] && rm -rf "%{buildroot}" + +%post -n lib%{name} -p /sbin/ldconfig +%postun -n lib%{name} -p /sbin/ldconfig + +%files +%defattr(-,root,root) +%{_libdir}/llvm17/bin/wasm-ld +%{_libdir}/llvm17/bin/ld64.lld +%{_libdir}/llvm17/bin/ld.lld +%{_libdir}/llvm17/bin/lld +%{_libdir}/llvm17/bin/lld-link + +%files -n lib%{name} +%defattr(-,root,root) +%{_libdir}/liblld*.so.* +%doc lld/LICENSE.TXT + +%files -n lib%{name}-devel +%defattr(-,root,root) +%{_libdir}/llvm17/lib/liblld*.so* +%dir %{_libdir}/llvm17/include/lld +%{_libdir}/llvm17/include/lld/* +%dir %{_libdir}/llvm17/lib/cmake/lld +%{_libdir}/llvm17/lib/cmake/lld/LLD*.cmake + +%files -n lib%{name}-apidocs +%defattr(-,root,root) +%dir %{_libdir}/llvm17/share/doc/lld +%{_libdir}/llvm17/share/doc/lld/* + +%changelog +* Mon Mar 18 2024 Silvan Calarco 17.0.6-2mamba +- legacy package + +* Wed Nov 29 2023 Automatic Build System 17.0.6-1mamba +- automatic version update by autodist + +* Tue Nov 14 2023 Automatic Build System 17.0.5-1mamba +- automatic version update by autodist + +* Fri Nov 03 2023 Automatic Build System 17.0.4-1mamba +- automatic version update by autodist + +* Wed Jun 14 2023 Automatic Build System 16.0.6-1mamba +- automatic version update by autodist + +* Sat Jun 03 2023 Automatic Build System 16.0.5-1mamba +- automatic version update by autodist + +* Mon May 22 2023 Automatic Build System 16.0.4-1mamba +- automatic version update by autodist + +* Thu Jan 12 2023 Automatic Build System 15.0.7-1mamba +- automatic version update by autodist + +* Tue Nov 29 2022 Automatic Build System 15.0.6-1mamba +- automatic version update by autodist + +* Fri Nov 18 2022 Automatic Build System 15.0.5-1mamba +- automatic version update by autodist + +* Sat Jun 25 2022 Automatic Build System 14.0.6-1mamba +- automatic version update by autodist + +* Sat Jun 11 2022 Automatic Build System 14.0.5-1mamba +- automatic version update by autodist + +* Wed May 25 2022 Automatic Build System 14.0.4-1mamba +- automatic version update by autodist + +* Sun May 01 2022 Automatic Build System 14.0.3-1mamba +- automatic version update by autodist + +* Sat Feb 05 2022 Automatic Build System 13.0.1-1mamba +- automatic version update by autodist + +* Mon Nov 01 2021 Silvan Calarco 13.0.0-1mamba +- update to 13.0.0 + +* Thu Mar 25 2021 Silvan Calarco 11.1.0-1mamba +- update to 11.1.0 + +* Mon Jan 11 2021 Automatic Build System 11.0.1-1mamba +- automatic version update by autodist + +* Mon Oct 12 2020 Automatic Build System 11.0.0-1mamba +- automatic version update by autodist + +* Sat Jul 25 2020 Automatic Build System 10.0.1-1mamba +- automatic version update by autodist + +* Mon Mar 30 2020 Automatic Build System 10.0.0-1mamba +- automatic version update by autodist + +* Sat Feb 08 2020 Silvan Calarco 9.0.1-3mamba +- lld standalone package from llvm + +* Tue Jan 07 2020 Silvan Calarco 9.0.1-2mamba +- rebuild with -DLLVM_ENABLE_LTO=Thin + +* Mon Dec 30 2019 Silvan Calarco 9.0.1-1mamba +- update to 9.0.1 + +* Thu Mar 28 2019 Automatic Build System 8.0.0-1mamba +- automatic version update by autodist + +* Sat Jan 26 2019 Silvan Calarco 7.0.1-4mamba +- bump release + +* Sat Jan 26 2019 Silvan Calarco 7.0.1-3mamba +- move *.so from libllvm-devel to libllvm + +* Mon Jan 21 2019 Silvan Calarco 7.0.1-2mamba +- rebuilt with binutils plugin LLVMgold.so + +* Sat Dec 22 2018 Automatic Build System 7.0.1-1mamba +- automatic version update by autodist + +* Sun Oct 14 2018 Automatic Build System 7.0.0-1mamba +- automatic version update by autodist + +* Sun Sep 02 2018 Silvan Calarco 6.0.1-4mamba +- remove building with libc++ to fix e.g. Mesa build + +* Sat Jul 14 2018 Silvan Calarco 6.0.1-3mamba +- rebuilt wth LLVM_ENABLE_LIBCXX=ON + +* Sat Jul 14 2018 Silvan Calarco 6.0.1-2mamba +- rebuilt with libc++ + +* Sat Jul 07 2018 Automatic Build System 6.0.1-1mamba +- automatic version update by autodist + +* Mon Jun 25 2018 Silvan Calarco 6.0.0-4mamba +- rebuilt with gcc 8.1.0 + +* Sun Jun 24 2018 Silvan Calarco 6.0.0-3mamba +- apply patches from Arch to possibly fix lld segfault + +* Sat Jun 23 2018 Silvan Calarco 6.0.0-2mamba +- rebuilt with standard target libdir and other changes to try fixing lld crash with at least chromium build + +* Tue Jun 19 2018 Automatic Build System 6.0.0-1mamba +- automatic version update by autodist + +* Mon Dec 25 2017 Automatic Build System 5.0.1-1mamba +- automatic version update by autodist + +* Tue Nov 28 2017 Silvan Calarco 5.0.0-2mamba +- fix link against libllvm by changing and extending build arguments and external llvm subpackages + +* Tue Nov 28 2017 Silvan Calarco 5.0.0-1mamba +- update to 5.0.0 + +* Wed Jul 13 2016 Automatic Build System 3.8.1-1mamba +- automatic version update by autodist + +* Sat Jun 11 2016 Silvan Calarco 3.8.0-3mamba +- rebuilt using cmake + +* Sat May 28 2016 Silvan Calarco 3.8.0-2mamba +- rebuilt + +* Thu May 26 2016 Automatic Build System 3.8.0-1mamba +- automatic version update by autodist + +* Sun Jan 18 2015 Automatic Build System 3.5.1-1mamba +- automatic version update by autodist + +* Fri Sep 19 2014 Silvan Calarco 3.5.0-2mamba +- patch llvm-config for x86_64 support and %{_libdir}/llvm + +* Wed Sep 10 2014 Silvan Calarco 3.5.0-1mamba +- update to 3.5.0 + +* Thu Jul 10 2014 Silvan Calarco 3.4.2-1mamba +- update to 3.4.2 + +* Sun Feb 16 2014 Silvan Calarco 3.4-2mamba +- fix configure settings and add --with-extra-ld-options to correctly link and + pass --with-arch=%{_target_cpu} to fix penmamba bug #000163 + +* Sun Jan 12 2014 Silvan Calarco 3.4-1mamba +- update to 3.4 + +* Thu Jun 20 2013 Automatic Build System 3.3-1mamba +- update to 3.3 + +* Sat Dec 22 2012 Automatic Build System 3.2-1mamba +- automatic version update by autodist + +* Fri Jul 20 2012 Silvan Calarco 3.1-1mamba +- update to 3.1 + +* Thu Feb 23 2012 Ercole 'ercolinux' Carpanetto 3.0.-1mamba +- update to 3.0 + +* Sun Jul 10 2011 Silvan Calarco 2.9-1mamba +- update to 2.9 + +* Sat Jan 01 2011 Davide Madrisan 2.8-1mamba +- package created by autospec