clang/clang.spec

321 lines
9.9 KiB
RPMSpec
Raw Normal View History

%define gccver %(gcc -dumpversion)
%define MAJver %(echo %version | cut -d. -f1)
%define majver %(echo %version | cut -d. -f1-2)
Name: clang
Version: 13.0.0
Release: 1mamba
Summary: C language family frontend for LLVM
Group: Development/Languages
Vendor: openmamba
Distribution: openmamba
Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
URL: https://llvm.org/
Source0: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{version}/clang-%{version}.src.tar.xz
Source1: https://github.com/llvm/llvm-project/releases/download/llvmorg-%{version}/clang-tools-extra-%{version}.src.tar.xz
Patch0: clang-13.0.0-arm-add-latomic.patch
License: NCSA
## AUTOBUILDREQ-BEGIN
BuildRequires: glibc-devel
BuildRequires: libgcc
BuildRequires: libllvm-devel
BuildRequires: libperl
BuildRequires: libstdc++6-devel
BuildRequires: libxml2-devel
BuildRequires: perl-devel
## AUTOBUILDREQ-END
BuildRequires: llvm = %{version}
Requires: lib%{name} = %{?epoch:%epoch:}%{version}-%{release}
%description
C language family frontend for LLVM.
%package -n lib%{name}
Group: System/Libraries
Summary: Shared libraries for %{name}
%ifarch x86_64 aarch64
Provides: libclang.so.%{MAJver}()(64bit)
Provides: libclang.so.%{MAJver}(LLVM_%{MAJver})(64bit)
%else
Provides: libclang.so.%{MAJver}
Provides: libclang.so.%{MAJver}(LLVM_%{MAJver})
%endif
%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}
Provides: clang-devel
Obsoletes: clang-devel < 11.1.0
%description -n lib%{name}-devel
C language family frontend for LLVM.
This package contains library and header files needed to develop new native programs that use the LLVM infrastructure.
%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 -a1 -n %{name}-%{version}.src
#% setup -q -n %{name}-%{version}.src -D -T
#:<< _EOF
mv clang-tools-extra-%{version}.src tools/extra
%ifarch arm
%patch0 -p1
%endif
%build
#:<< __EOF
mkdir -p build
cd build
cmake .. -G Ninja \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=%{_prefix} \
-DPYTHON_EXECUTABLE=/usr/bin/python \
-DBUILD_SHARED_LIBS=ON \
-DLLVM_LINK_LLVM_DYLIB=ON \
-DCLANG_LINK_CLANG_DYLIB=ON \
-DCLANG_DEFAULT_CXX_STDLIB=libstdc++ \
%ifnarch arm
-DLLVM_ENABLE_RTTI=ON \
%endif
-DLLVM_INCLUDE_DOCS=ON \
-DLLVM_BUILD_DOCS=ON \
-DLLVM_ENABLE_SPHINX=ON \
-DSPHINX_WARNINGS_AS_ERRORS=OFF
#-DLLVM_MAIN_SRC_DIR="$srcdir/llvm-$pkgver.src"
:<< __EOF
ninja %{_smp_mflags}
%install
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
cd build
export DESTDIR=%{buildroot}
ninja install
rm -f %{buildroot}%{_datadir}/doc/clang/html/.buildinfo
## legacy libclang.so.11 symlink to libclang.so.11.1
#ln -s libclang.so.%{majver} %{buildroot}%{_libdir}/libclang.so.%{MAJver}
%clean
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%post -n lib%{name} -p /sbin/ldconfig
%postun -n lib%{name} -p /sbin/ldconfig
%files
%defattr(-,root,root)
%{_bindir}/analyze-build
%{_bindir}/c-index-test
%{_bindir}/clang
%{_bindir}/clang++
%{_bindir}/clang-*
%{_bindir}/clangd
%{_bindir}/diagtool
%{_bindir}/find-all-symbols
%{_bindir}/git-clang-format
%{_bindir}/hmaptool
%{_bindir}/intercept-build
%{_bindir}/modularize
%{_bindir}/pp-trace
%{_bindir}/run-clang-tidy
%{_bindir}/scan-build
%{_bindir}/scan-build-py
%{_bindir}/scan-view
%dir %{_prefix}/lib/libear
%{_prefix}/lib/libear/*
%dir %{_prefix}/lib/libscanbuild
%{_prefix}/lib/libscanbuild/*
# FIXME: should be libexec64 on 64 bits archs
%{_prefix}/libexec/*
%dir %{_datadir}/clang/
%{_datadir}/clang/*
%dir %{_datadir}/scan-build
%{_datadir}/scan-build/*
%dir %{_datadir}/scan-view
%{_datadir}/scan-view/*
%{_mandir}/man1/clang.1*
%{_mandir}/man1/diagtool.1*
%{_mandir}/man1/extraclangtools.1*
%{_mandir}/man1/scan-build.1*
%files -n lib%{name}
%defattr(-,root,root)
%{_libdir}/libclang*.so.*
%{_libdir}/libfindAllSymbols.so.*
%doc LICENSE.TXT
%files -n lib%{name}-devel
%defattr(-,root,root)
%dir %{_includedir}/clang-c
%{_includedir}/clang-c/*.h
%dir %{_includedir}/clang
%{_includedir}/clang/*
%dir %{_includedir}/clang-tidy
%{_includedir}/clang-tidy/*
%{_libdir}/libclang*.so
%{_libdir}/libfindAllSymbols.so
%dir %{_libdir}/clang
%dir %{_libdir}/clang/%{version}
%dir %{_libdir}/clang/%{version}/include
%{_libdir}/clang/%{version}/include/*
%dir %{_libdir}/cmake/clang
%{_libdir}/cmake/clang/*.cmake
%doc NOTES.txt README.txt
%files -n lib%{name}-apidocs
%defattr(-,root,root)
%dir %{_datadir}/doc/clang/html/
%{_datadir}/doc/clang/html/*
%dir %{_docdir}/clang-tools
%{_docdir}/clang-tools/*
%changelog
* Fri Oct 22 2021 Silvan Calarco <silvan.calarco@mambasoft.it> 13.0.0-1mamba
- update to 13.0.0
* Mon May 17 2021 Silvan Calarco <silvan.calarco@mambasoft.it> 11.1.0-3mamba
- rebuilt with -DCLANG_LINK_CLANG_DYLIB=ON
* Thu Mar 25 2021 Silvan Calarco <silvan.calarco@mambasoft.it> 11.1.0-2mamba
- add legacy provide for libclang.so.11
* Tue Mar 16 2021 Automatic Build System <autodist@mambasoft.it> 11.1.0-1mamba
- automatic version update by autodist
* Mon Jan 11 2021 Automatic Build System <autodist@mambasoft.it> 11.0.1-1mamba
- automatic version update by autodist
* Tue Oct 13 2020 Automatic Build System <autodist@mambasoft.it> 11.0.0-1mamba
- automatic version update by autodist
* Sun Jul 26 2020 Automatic Build System <autodist@mambasoft.it> 10.0.1-1mamba
- automatic version update by autodist
* Mon Mar 30 2020 Automatic Build System <autodist@mambasoft.it> 10.0.0-1mamba
- automatic version update by autodist
* Sun Feb 09 2020 Silvan Calarco <silvan.calarco@mambasoft.it> 9.0.1-3mamba
- rebuilt apart from llvm
* Tue Jan 07 2020 Silvan Calarco <silvan.calarco@mambasoft.it> 9.0.1-2mamba
- rebuild with -DLLVM_ENABLE_LTO=Thin
* Mon Dec 30 2019 Silvan Calarco <silvan.calarco@mambasoft.it> 9.0.1-1mamba
- update to 9.0.1
* Thu Mar 28 2019 Automatic Build System <autodist@mambasoft.it> 8.0.0-1mamba
- automatic version update by autodist
* Sat Jan 26 2019 Silvan Calarco <silvan.calarco@mambasoft.it> 7.0.1-4mamba
- bump release
* Sat Jan 26 2019 Silvan Calarco <silvan.calarco@mambasoft.it> 7.0.1-3mamba
- move *.so from libllvm-devel to libllvm
* Mon Jan 21 2019 Silvan Calarco <silvan.calarco@mambasoft.it> 7.0.1-2mamba
- rebuilt with binutils plugin LLVMgold.so
* Sat Dec 22 2018 Automatic Build System <autodist@mambasoft.it> 7.0.1-1mamba
- automatic version update by autodist
* Sun Oct 14 2018 Automatic Build System <autodist@mambasoft.it> 7.0.0-1mamba
- automatic version update by autodist
* Sun Sep 02 2018 Silvan Calarco <silvan.calarco@mambasoft.it> 6.0.1-4mamba
- remove building with libc++ to fix e.g. Mesa build
* Sat Jul 14 2018 Silvan Calarco <silvan.calarco@mambasoft.it> 6.0.1-3mamba
- rebuilt wth LLVM_ENABLE_LIBCXX=ON
* Sat Jul 14 2018 Silvan Calarco <silvan.calarco@mambasoft.it> 6.0.1-2mamba
- rebuilt with libc++
* Sat Jul 07 2018 Automatic Build System <autodist@mambasoft.it> 6.0.1-1mamba
- automatic version update by autodist
* Mon Jun 25 2018 Silvan Calarco <silvan.calarco@mambasoft.it> 6.0.0-4mamba
- rebuilt with gcc 8.1.0
* Sun Jun 24 2018 Silvan Calarco <silvan.calarco@mambasoft.it> 6.0.0-3mamba
- apply patches from Arch to possibly fix lld segfault
* Sat Jun 23 2018 Silvan Calarco <silvan.calarco@mambasoft.it> 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 <autodist@mambasoft.it> 6.0.0-1mamba
- automatic version update by autodist
* Mon Dec 25 2017 Automatic Build System <autodist@mambasoft.it> 5.0.1-1mamba
- automatic version update by autodist
* Tue Nov 28 2017 Silvan Calarco <silvan.calarco@mambasoft.it> 5.0.0-2mamba
- fix link against libllvm by changing and extending build arguments and external llvm subpackages
* Tue Nov 28 2017 Silvan Calarco <silvan.calarco@mambasoft.it> 5.0.0-1mamba
- update to 5.0.0
* Wed Jul 13 2016 Automatic Build System <autodist@mambasoft.it> 3.8.1-1mamba
- automatic version update by autodist
* Sat Jun 11 2016 Silvan Calarco <silvan.calarco@mambasoft.it> 3.8.0-3mamba
- rebuilt using cmake
* Sat May 28 2016 Silvan Calarco <silvan.calarco@mambasoft.it> 3.8.0-2mamba
- rebuilt
* Thu May 26 2016 Automatic Build System <autodist@mambasoft.it> 3.8.0-1mamba
- automatic version update by autodist
* Sun Jan 18 2015 Automatic Build System <autodist@mambasoft.it> 3.5.1-1mamba
- automatic version update by autodist
* Fri Sep 19 2014 Silvan Calarco <silvan.calarco@mambasoft.it> 3.5.0-2mamba
- patch llvm-config for x86_64 support and %{_libdir}/llvm
* Wed Sep 10 2014 Silvan Calarco <silvan.calarco@mambasoft.it> 3.5.0-1mamba
- update to 3.5.0
* Thu Jul 10 2014 Silvan Calarco <silvan.calarco@mambasoft.it> 3.4.2-1mamba
- update to 3.4.2
* Sun Feb 16 2014 Silvan Calarco <silvan.calarco@mambasoft.it> 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 <silvan.calarco@mambasoft.it> 3.4-1mamba
- update to 3.4
* Thu Jun 20 2013 Automatic Build System <autodist@mambasoft.it> 3.3-1mamba
- update to 3.3
* Sat Dec 22 2012 Automatic Build System <autodist@mambasoft.it> 3.2-1mamba
- automatic version update by autodist
* Fri Jul 20 2012 Silvan Calarco <silvan.calarco@mambasoft.it> 3.1-1mamba
- update to 3.1
* Thu Feb 23 2012 Ercole 'ercolinux' Carpanetto <ercole69@gmail.com> 3.0.-1mamba
- update to 3.0
* Sun Jul 10 2011 Silvan Calarco <silvan.calarco@mambasoft.it> 2.9-1mamba
- update to 2.9
* Sat Jan 01 2011 Davide Madrisan <davide.madrisan@gmail.com> 2.8-1mamba
- package created by autospec