rebuilt wth LLVM_ENABLE_LIBCXX=ON [release 6.0.1-3mamba;Sat Jul 14 2018]

This commit is contained in:
Silvan Calarco 2024-01-06 06:26:10 +01:00
parent aff4345020
commit 6e5c54107f

149
llvm.spec
View File

@ -2,20 +2,22 @@
%define majver %(echo %version | cut -d. -f1-2) %define majver %(echo %version | cut -d. -f1-2)
Name: llvm Name: llvm
Version: 6.0.1 Version: 6.0.1
Release: 1mamba Release: 3mamba
Summary: The Low Level Virtual Machine Summary: The Low Level Virtual Machine
Group: Development/Languages Group: Development/Languages
Vendor: openmamba Vendor: openmamba
Distribution: openmamba Distribution: openmamba
Packager: Davide Madrisan <davide.madrisan@gmail.com> Packager: Davide Madrisan <davide.madrisan@gmail.com>
URL: http://llvm.org/ URL: https://llvm.org/
Source0: http://releases.llvm.org/%{version}/llvm-%{version}.src.tar.xz Source0: https://releases.llvm.org/%{version}/llvm-%{version}.src.tar.xz
Source1: http://releases.llvm.org/%{version}/cfe-%{version}.src.tar.xz Source1: https://releases.llvm.org/%{version}/cfe-%{version}.src.tar.xz
Source2: http://releases.llvm.org/%{version}/compiler-rt-%{version}.src.tar.xz Source2: https://releases.llvm.org/%{version}/compiler-rt-%{version}.src.tar.xz
Source3: http://releases.llvm.org/%{version}/clang-tools-extra-%{version}.src.tar.xz Source3: https://releases.llvm.org/%{version}/clang-tools-extra-%{version}.src.tar.xz
Source4: http://releases.llvm.org/%{version}/lld-%{version}.src.tar.xz Source4: https://releases.llvm.org/%{version}/lld-%{version}.src.tar.xz
Source5: http://releases.llvm.org/%{version}/lldb-%{version}.src.tar.xz Source5: https://releases.llvm.org/%{version}/lldb-%{version}.src.tar.xz
Source6: llvm-6.0.0-llvm-config.patch Source6: llvm-6.0.0-llvm-config.patch
Source7: https://releases.llvm.org/%{version}/libcxx-%{version}.src.tar.xz
Source8: https://releases.llvm.org/%{version}/libcxxabi-%{version}.src.tar.xz
Patch0: %{name}-3.1-llvm-config.patch Patch0: %{name}-3.1-llvm-config.patch
Patch1: llvm-3.4-default-to-i586.patch Patch1: llvm-3.4-default-to-i586.patch
Patch2: llvm-5.0.0-openmamba-triplet.patch Patch2: llvm-5.0.0-openmamba-triplet.patch
@ -72,23 +74,21 @@ Group: Development/Languages
Requires: lib%{name} = %{?epoch:%epoch:}%{version}-%{release} Requires: lib%{name} = %{?epoch:%epoch:}%{version}-%{release}
Provides: llvm-devel Provides: llvm-devel
Obsoletes: llvm-devel Obsoletes: llvm-devel
Requires: libstdc++6-devel Requires: libc++-devel
%description -n lib%{name}-devel %description -n lib%{name}-devel
The LLVM Project is a collection of modular and reusable compiler and toolchain technologies. The LLVM Project is a collection of modular and reusable compiler and toolchain technologies.
Despite its name, LLVM has little to do with traditional virtual machines, though it does provide helpful libraries that can be used to build them. Despite its name, LLVM has little to do with traditional virtual machines, though it does provide helpful libraries that can be used to build them.
This package contains library and header files needed to develop new native programs that use the LLVM infrastructure. This package contains library and header files needed to develop new native programs that use the LLVM infrastructure.
%package devel %package -n lib%{name}-apidocs
Summary: Libraries and header files for LLVM Group: Documentation
Group: Development/Languages Summary: lib%{name} API documentation
Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release} Requires: lib%{name}-devel = %{?epoch:%epoch:}%{version}-%{release}
Requires: libstdc++6-devel Requires: gtk-doc
%description devel %description -n lib%{name}-apidocs
The LLVM Project is a collection of modular and reusable compiler and toolchain technologies. This package includes the lib%{name} API documentation.
Despite its name, LLVM has little to do with traditional virtual machines, though it does provide helpful libraries that can be used to build them.
This package contains library and header files needed to develop new native programs that use the LLVM infrastructure.
%package tools %package tools
Summary: Additional LLVM tools Summary: Additional LLVM tools
@ -100,6 +100,30 @@ The LLVM Project is a collection of modular and reusable compiler and toolchain
Despite its name, LLVM has little to do with traditional virtual machines, though it does provide helpful libraries that can be used to build them. Despite its name, LLVM has little to do with traditional virtual machines, though it does provide helpful libraries that can be used to build them.
This package contains additional LLVM tools. This package contains additional LLVM tools.
%package -n libc++
Group: System/Libraries
Summary: libc++ shared library for %{name}
%description -n libc++
This package contains the libc++ shared library for %{name}.
%package -n libc++-devel
Summary: Libraries and header files for libc++
Group: Development/Languages
Requires: libc++ = %{?epoch:%epoch:}%{version}-%{release}
%description -n libc++-devel
This package contains libc++ library and header files needed to develop new native programs that use the LLVM infrastructure.
%package -n libc++-apidocs
Group: Documentation
Summary: libc++ API documentation
Requires: libc++-devel = %{?epoch:%epoch:}%{version}-%{release}
Requires: gtk-doc
%description -n libc++-apidocs
This package includes the libc++ API documentation.
%package -n clang %package -n clang
Summary: LLVM native C/C++/Objective-C compiler Summary: LLVM native C/C++/Objective-C compiler
Group: Development/Languages Group: Development/Languages
@ -125,6 +149,15 @@ Cfe is an "LLVM native" C/C++/Objective-C compiler, which aims to deliver amazin
The Cfe Static Analyzer is a tool automatically finds bugs in your code, and is a great example of the sort of tool that can be built using the Cfe frontend as a library to parse C/C++ code. The Cfe Static Analyzer is a tool automatically finds bugs in your code, and is a great example of the sort of tool that can be built using the Cfe frontend as a library to parse C/C++ code.
This package contains header files for the Cfe compiler. This package contains header files for the Cfe compiler.
%package -n clang-apidocs
Group: Documentation
Summary: clang API documentation
Requires: clang-devel = %{?epoch:%epoch:}%{version}-%{release}
Requires: gtk-doc
%description -n clang-apidocs
This package includes the clang API documentation.
%package ocaml %package ocaml
Summary: OCaml binding for LLVM Summary: OCaml binding for LLVM
Group: Development/Libraries Group: Development/Libraries
@ -141,13 +174,23 @@ Requires: %{name}-devel = %{?epoch:%epoch:}%{version}-%{release}
Requires: %{name}-ocaml = %{?epoch:%epoch:}%{version}-%{release} Requires: %{name}-ocaml = %{?epoch:%epoch:}%{version}-%{release}
Requires: ocaml Requires: ocaml
%description ocaml-devel %description ocaml-devel
The %{name}-ocaml-devel package contains libraries and signature files for developing applications that use %{name}-ocaml. The %{name}-ocaml-devel package contains libraries and signature files for developing applications that use %{name}-ocaml.
%package ocaml-apidocs
Group: Documentation
Summary: LLVM ocaml API documentation
Requires: %{name}-ocaml-devel = %{?epoch:%epoch:}%{version}-%{release}
Requires: gtk-doc
%description ocaml-apidocs
This package includes the LLVM ocaml API documentation.
%prep %prep
%setup -q -a1 -a2 -a3 -a4 -a5 -n %{name}-%{version}.src %setup -q -a1 -a2 -a3 -a4 -a5 -a7 -a8 -n %{name}-%{version}.src
#-D -T #% setup -q -n %{name}-%{version}.src -D -T
#:<< __EOF #:<< __EOF
#%patch0 -p1 #%patch0 -p1
#%patch1 -p1 #%patch1 -p1
mv cfe-%{version}.src tools/clang mv cfe-%{version}.src tools/clang
@ -155,6 +198,8 @@ mv compiler-rt-%{version}.src projects/compiler-rt
mv clang-tools-extra-%{version}.src tools/clang/tools/extra mv clang-tools-extra-%{version}.src tools/clang/tools/extra
mv lld-%{version}.src tools/lld mv lld-%{version}.src tools/lld
mv lldb-%{version}.src tools/lldb mv lldb-%{version}.src tools/lldb
mv libcxx-%{version}.src projects/libcxx
mv libcxxabi-%{version}.src projects/libcxxabi
%patch2 -p1 %patch2 -p1
#%patch3 -p1 #%patch3 -p1
@ -183,6 +228,13 @@ mkdir -p build
cd build cd build
cmake \ cmake \
-G Ninja \ -G Ninja \
%ifarch x86_64
-DCMAKE_C_COMPILER=clang \
-DCMAKE_CXX_COMPILER=clang++ \
%else
-DCMAKE_C_COMPILER=gcc \
-DCMAKE_CXX_COMPILER=g++ \
%endif
-DCMAKE_INSTALL_PREFIX=%{_prefix} \ -DCMAKE_INSTALL_PREFIX=%{_prefix} \
-DLLVM_HOST_TRIPLE="%{_target_platform}" \ -DLLVM_HOST_TRIPLE="%{_target_platform}" \
-DLLVM_DEFAULT_TARGET_TRIPLE="%{_target_platform}" \ -DLLVM_DEFAULT_TARGET_TRIPLE="%{_target_platform}" \
@ -195,8 +247,12 @@ cmake \
-DLLDB_DISABLE_PYTHON=ON \ -DLLDB_DISABLE_PYTHON=ON \
-DLLVM_INSTALL_UTILS=ON \ -DLLVM_INSTALL_UTILS=ON \
-DLLVM_ENABLE_SPHINX=ON \ -DLLVM_ENABLE_SPHINX=ON \
-DLLVM_ENABLE_LIBCXX=ON \
-DLLVM_ENABLE_LIBCXXABI=ON \
%ifarch x86_64 %ifarch x86_64
-DLLVM_LIBDIR_SUFFIX="64" \ -DLLVM_LIBDIR_SUFFIX="64" \
-DLIBCXX_LIBDIR_SUFFIX="64" \
-DLIBCXXABI_LIBDIR_SUFFIX="64" \
%endif %endif
-DSPHINX_WARNINGS_AS_ERRORS=OFF \ -DSPHINX_WARNINGS_AS_ERRORS=OFF \
%ifnarch arm %ifnarch arm
@ -259,10 +315,6 @@ rm -f %{buildroot}%{_datadir}/doc/llvm/html/.buildinfo
%{_bindir}/lli %{_bindir}/lli
#%{_bindir}/lli-child-target #%{_bindir}/lli-child-target
%{_bindir}/llvm* %{_bindir}/llvm*
%{_bindir}/ld64.lld
%{_bindir}/ld.lld
%{_bindir}/lld
%{_bindir}/lld-link
#%{_bindir}/macho-dump #%{_bindir}/macho-dump
#%{_bindir}/c-index-test #%{_bindir}/c-index-test
%{_bindir}/obj2yaml %{_bindir}/obj2yaml
@ -318,6 +370,10 @@ rm -f %{buildroot}%{_datadir}/doc/llvm/html/.buildinfo
%{_bindir}/clangd %{_bindir}/clangd
%{_bindir}/count %{_bindir}/count
%{_bindir}/find-all-symbols %{_bindir}/find-all-symbols
%{_bindir}/ld64.lld
%{_bindir}/ld.lld
%{_bindir}/lld
%{_bindir}/lld-link
%{_bindir}/lldb %{_bindir}/lldb
%{_bindir}/lldb-argdumper %{_bindir}/lldb-argdumper
%{_bindir}/lldb-mi %{_bindir}/lldb-mi
@ -348,9 +404,6 @@ rm -f %{buildroot}%{_datadir}/doc/llvm/html/.buildinfo
%{_includedir}/lld/* %{_includedir}/lld/*
%dir %{_includedir}/lldb %dir %{_includedir}/lldb
%{_includedir}/lldb/* %{_includedir}/lldb/*
#%{_libdir}/%{name}/*.a
%dir %{_datadir}/doc/llvm/html/
%{_datadir}/doc/llvm/html/*
%{_libdir}/*.a %{_libdir}/*.a
%{_libdir}/*.so %{_libdir}/*.so
%exclude %{_libdir}/libLLVM-%{majver}.so %exclude %{_libdir}/libLLVM-%{majver}.so
@ -358,9 +411,13 @@ rm -f %{buildroot}%{_datadir}/doc/llvm/html/.buildinfo
%{_libdir}/cmake/llvm/*.cmake %{_libdir}/cmake/llvm/*.cmake
%doc README.txt %doc README.txt
%files -n libllvm-apidocs
%defattr(-,root,root)
%dir %{_datadir}/doc/llvm/html/
%{_datadir}/doc/llvm/html/*
%files -n clang %files -n clang
%defattr(-,root,root) %defattr(-,root,root)
#%{_bindir}/FileCheck
%{_bindir}/c-index-test %{_bindir}/c-index-test
%{_bindir}/clang %{_bindir}/clang
%{_bindir}/clang++ %{_bindir}/clang++
@ -394,8 +451,31 @@ rm -f %{buildroot}%{_datadir}/doc/llvm/html/.buildinfo
%dir %{_libdir}/cmake/clang %dir %{_libdir}/cmake/clang
%{_libdir}/cmake/clang/*.cmake %{_libdir}/cmake/clang/*.cmake
%doc tools/clang/{NOTES.txt,README.txt} %doc tools/clang/{NOTES.txt,README.txt}
%files -n clang-apidocs
%defattr(-,root,root)
%doc tools/clang/docs %doc tools/clang/docs
%files -n libc++
%defattr(-,root,root)
%{_libdir}/libc++.so.*
%{_libdir}/libc++abi.so.*
%files -n libc++-devel
%defattr(-,root,root)
%dir %{_includedir}/c++
%{_includedir}/c++/*
%{_libdir}/libc++.a
%{_libdir}/libc++.so
%{_libdir}/libc++abi.a
%{_libdir}/libc++abi.so
%{_libdir}/libc++experimental.a
%files -n libc++-apidocs
%defattr(-,root,root)
%dir %{_datadir}/doc/libcxx
%{_datadir}/doc/libcxx/*
%files ocaml %files ocaml
%defattr(-,root,root) %defattr(-,root,root)
%{_libdir}/ocaml/llvm/*.cma %{_libdir}/ocaml/llvm/*.cma
@ -407,12 +487,19 @@ rm -f %{buildroot}%{_datadir}/doc/llvm/html/.buildinfo
%defattr(-,root,root) %defattr(-,root,root)
%{_libdir}/ocaml/llvm/*.a %{_libdir}/ocaml/llvm/*.a
%{_libdir}/ocaml/llvm/*.cmx* %{_libdir}/ocaml/llvm/*.cmx*
#%{_libdir}/ocaml/*.mli
%files ocaml-apidocs
%defattr(-,root,root)
%dir %{_docdir}/llvm/ocaml-html %dir %{_docdir}/llvm/ocaml-html
%{_docdir}/llvm/ocaml-html/* %{_docdir}/llvm/ocaml-html/*
#%doc llvm-extradocs/ocamldoc/html
%changelog %changelog
* 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 * Sat Jul 07 2018 Automatic Build System <autodist@mambasoft.it> 6.0.1-1mamba
- automatic version update by autodist - automatic version update by autodist