Silvan Calarco
cc8c9317cf
also try to add a patch to fix bug #163 (http://bugs.openmamba.org/view.php?id=163) [release 3.1-2mamba;Tue Apr 29 2014]
235 lines
7.4 KiB
RPMSpec
235 lines
7.4 KiB
RPMSpec
Name: llvm
|
|
Version: 3.1
|
|
Release: 2mamba
|
|
Summary: The Low Level Virtual Machine
|
|
Group: Development/Languages
|
|
Vendor: openmamba
|
|
Distribution: openmamba
|
|
Packager: Davide Madrisan <davide.madrisan@gmail.com>
|
|
URL: http://llvm.org/
|
|
Source0: http://llvm.org/releases/%{version}/llvm-%{version}.src.tar.gz
|
|
Source1: http://llvm.org/releases/%{version}/clang-%{version}.src.tar.gz
|
|
Patch0: %{name}-3.1-llvm-config.patch
|
|
Patch1: llvm-3.1-openmamba-triplet.patch
|
|
License: NCSA
|
|
## AUTOBUILDREQ-BEGIN
|
|
BuildRequires: gcc-c++
|
|
BuildRequires: glibc-devel
|
|
BuildRequires: libgcc
|
|
BuildRequires: libstdc++6-devel
|
|
BuildRequires: ocaml
|
|
BuildRequires: perl-devel
|
|
## AUTOBUILDREQ-END
|
|
BuildRequires: ocaml
|
|
Requires: lib%{name} = %{?epoch:%epoch:}%{version}-%{release}
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-root
|
|
|
|
%description
|
|
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.
|
|
|
|
%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}
|
|
Provides: llvm-devel
|
|
Obsoletes: llvm-devel
|
|
Requires: libstdc++6-devel
|
|
|
|
%description -n lib%{name}-devel
|
|
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.
|
|
This package contains library and header files needed to develop new native programs that use the LLVM infrastructure.
|
|
|
|
%package clang
|
|
Summary: LLVM native C/C++/Objective-C compiler
|
|
Group: Development/Languages
|
|
Requires: gcc-c++
|
|
|
|
%description clang
|
|
Clang is an "LLVM native" C/C++/Objective-C compiler, which aims to deliver amazingly fast compiles, extremely useful error and warning messages and to provide a platform for building great source level tools.
|
|
The Clang 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 Clang frontend as a library to parse C/C++ code.
|
|
|
|
%package clang-devel
|
|
Summary: Libraries and header files for LLVM clang
|
|
Group: Development/Languages
|
|
Requires: %{name}-clang = %{?epoch:%epoch:}%{version}-%{release}
|
|
|
|
%description clang-devel
|
|
Clang is an "LLVM native" C/C++/Objective-C compiler, which aims to deliver amazingly fast compiles, extremely useful error and warning messages and to provide a platform for building great source level tools.
|
|
The Clang 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 Clang frontend as a library to parse C/C++ code.
|
|
This package contains header files for the Clang compiler.
|
|
|
|
%package ocaml
|
|
Summary: OCaml binding for LLVM
|
|
Group: Development/Libraries
|
|
Requires: %{name} = %{version}-%{release}
|
|
#Requires: ocaml-runtime
|
|
|
|
%description ocaml
|
|
OCaml binding for LLVM.
|
|
|
|
%package ocaml-devel
|
|
Summary: Development files for %{name}-ocaml
|
|
Group: Development/Libraries
|
|
Requires: lib%{name}-devel = %{?epoch:%epoch:}%{version}-%{release}
|
|
Requires: %{name}-ocaml = %{?epoch:%epoch:}%{version}-%{release}
|
|
Requires: ocaml
|
|
|
|
%description ocaml-devel
|
|
The %{name}-ocaml-devel package contains libraries and signature files
|
|
for developing applications that use %{name}-ocaml.
|
|
|
|
%prep
|
|
%setup -q -a1 -n llvm-%{version}.src
|
|
%patch0 -p1
|
|
%ifarch x86_64
|
|
sed -i "s|/lib/llvm|/%{_lib}/llvm|" tools/llvm-config/llvm-config.cpp
|
|
%endif
|
|
mv clang-%{version}.src tools/clang
|
|
%patch1 -p1
|
|
|
|
%build
|
|
%configure \
|
|
--libdir=%{_libdir}/%{name} \
|
|
--datadir=%{_libdir}/%{name} \
|
|
--disable-assertions \
|
|
--enable-debug-runtime \
|
|
--enable-jit \
|
|
--enable-shared \
|
|
--with-c-include-dirs=%{_includedir}:$(find %{_prefix}/lib/gcc/*/* -maxdepth 0 -type d)/include \
|
|
--with-cxx-include-root=$(find %{_includedir}/c++/* -maxdepth 0 -type d) \
|
|
--with-cxx-include-arch=%{_arch}-%{_vendor}-%{_os}
|
|
# --enable-doxygen
|
|
|
|
sed -i 's|(PROJ_prefix)/lib|(PROJ_prefix)/%{_lib}/%{name}|g' Makefile.config
|
|
|
|
%make
|
|
|
|
%install
|
|
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
|
|
%makeinstall
|
|
|
|
install -d %{buildroot}%{_sysconfdir}/ld.so.conf.d
|
|
cat >> %{buildroot}%{_sysconfdir}/ld.so.conf.d/llvm-%{_arch}.conf << EOF
|
|
%{_libdir}/llvm
|
|
EOF
|
|
|
|
# Static analyzer not installed by default:
|
|
# http://clang-analyzer.llvm.org/installation#OtherPlatforms
|
|
install -d %{buildroot}%{_libdir}/clang-analyzer
|
|
# create launchers
|
|
for f in scan-{build,view}; do
|
|
ln -s %{_libdir}/clang-analyzer/$f/$f %{buildroot}%{_bindir}/$f
|
|
done
|
|
|
|
( cd tools/clang/tools &&
|
|
cp -pr scan-{build,view} %{buildroot}%{_libdir}/clang-analyzer/ )
|
|
|
|
mv %{buildroot}%{_prefix}/docs/llvm ./llvm-extradocs
|
|
rm -f ./llvm-extradocs/*.tar.gz
|
|
rm -f ./llvm-extradocs/ocamldoc/html/*.tar.gz
|
|
|
|
install -d clang-extradocs
|
|
for f in LICENSE.TXT NOTES.txt README.txt; do
|
|
cp tools/clang/$f clang-extradocs/
|
|
done
|
|
#rm -rf tools/clang/docs/{doxygen*,Makefile*,*.graffle,tools}
|
|
|
|
rm %{buildroot}%{_libdir}/%{name}/*LLVMHello.*
|
|
|
|
find examples -name 'Makefile' | xargs -0r rm -f
|
|
|
|
%clean
|
|
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
|
|
|
|
%post -p /sbin/ldconfig
|
|
%postun -p /sbin/ldconfig
|
|
|
|
%files
|
|
%defattr(-,root,root)
|
|
%{_bindir}/bugpoint
|
|
%{_bindir}/llc
|
|
%{_bindir}/lli
|
|
%{_bindir}/llvm*
|
|
%{_bindir}/macho-dump
|
|
%{_bindir}/c-index-test
|
|
%{_libdir}/ocaml/META.llvm
|
|
%exclude %{_bindir}/llvm-config
|
|
%{_bindir}/opt
|
|
%{_mandir}/man1/*
|
|
%exclude %{_mandir}/man1/clang.1.*
|
|
#%exclude %{_mandir}/man1/llvmg??.1.*
|
|
%doc CREDITS.TXT LICENSE.TXT
|
|
#doc llvm-testlog.txt
|
|
|
|
%files -n libllvm
|
|
%defattr(-,root,root)
|
|
%{_sysconfdir}/ld.so.conf.d/llvm-%{_arch}.conf
|
|
%dir %{_libdir}/llvm
|
|
%{_libdir}/llvm/*.so
|
|
|
|
%files -n libllvm-devel
|
|
%defattr(-,root,root)
|
|
%{_bindir}/llvm-config
|
|
%{_includedir}/%{name}
|
|
%{_includedir}/%{name}-c
|
|
%{_libdir}/%{name}/*.a
|
|
%doc llvm-extradocs/html
|
|
%doc README.txt
|
|
|
|
%files clang
|
|
%defattr(-,root,root)
|
|
%{_bindir}/clang*
|
|
#%{_bindir}/c-index-test
|
|
%{_bindir}/scan-build
|
|
%{_bindir}/scan-view
|
|
#%{_bindir}/tblgen
|
|
%{_prefix}/lib/clang
|
|
%{_libdir}/clang-analyzer
|
|
%{_mandir}/man1/clang.1.*
|
|
%doc tools/clang/LICENSE.TXT
|
|
|
|
%files clang-devel
|
|
%defattr(-,root,root)
|
|
%{_includedir}/clang
|
|
%{_includedir}/clang-c
|
|
%doc tools/clang/{NOTES.txt,README.txt}
|
|
%doc tools/clang/docs
|
|
|
|
%files ocaml
|
|
%defattr(-,root,root)
|
|
%{_libdir}/ocaml/*.cma
|
|
%{_libdir}/ocaml/*.cmi
|
|
|
|
%files ocaml-devel
|
|
%defattr(-,root,root)
|
|
%{_libdir}/ocaml/*.a
|
|
%{_libdir}/ocaml/*.cmx*
|
|
%{_libdir}/ocaml/*.mli
|
|
%doc llvm-extradocs/ocamldoc/html
|
|
|
|
%changelog
|
|
* Tue Apr 29 2014 Silvan Calarco <silvan.calarco@mambasoft.it> 3.1-2mamba
|
|
- move libraries to libllvm and rename llvm-devel to libllvm-devel
|
|
- also try to add a patch to fix bug #163 (http://bugs.openmamba.org/view.php?id=163)
|
|
|
|
* 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
|