commit 974695de0c4203253e3d69693fbfb96831322799 Author: Rosa Date: Wed Feb 1 14:58:10 2012 +0400 Automatic import for version 2.9 diff --git a/.abf.yml b/.abf.yml new file mode 100644 index 0000000..f306813 --- /dev/null +++ b/.abf.yml @@ -0,0 +1,2 @@ +sources: + "llvm-2.9.tgz": 500f587f840199ac53c4fc7572839d08fa9d9123 diff --git a/llvm-2.9-gcc46.patch b/llvm-2.9-gcc46.patch new file mode 100644 index 0000000..acd05a0 --- /dev/null +++ b/llvm-2.9-gcc46.patch @@ -0,0 +1,57 @@ +--- llvm/trunk/include/llvm/Operator.h 2011/05/08 00:56:32 131061 ++++ llvm/trunk/include/llvm/Operator.h 2011/05/08 01:59:22 131062 +@@ -186,28 +186,46 @@ + }; + + class AddOperator +- : public ConcreteOperator {}; ++ : public ConcreteOperator { ++ ~AddOperator(); // DO NOT IMPLEMENT ++}; + class SubOperator +- : public ConcreteOperator {}; ++ : public ConcreteOperator { ++ ~SubOperator(); // DO NOT IMPLEMENT ++}; + class MulOperator +- : public ConcreteOperator {}; ++ : public ConcreteOperator { ++ ~MulOperator(); // DO NOT IMPLEMENT ++}; + class ShlOperator +- : public ConcreteOperator {}; ++ : public ConcreteOperator { ++ ~ShlOperator(); // DO NOT IMPLEMENT ++}; + + + class SDivOperator +- : public ConcreteOperator {}; ++ : public ConcreteOperator { ++ ~SDivOperator(); // DO NOT IMPLEMENT ++}; + class UDivOperator +- : public ConcreteOperator {}; ++ : public ConcreteOperator { ++ ~UDivOperator(); // DO NOT IMPLEMENT ++}; + class AShrOperator +- : public ConcreteOperator {}; ++ : public ConcreteOperator { ++ ~AShrOperator(); // DO NOT IMPLEMENT ++}; + class LShrOperator +- : public ConcreteOperator {}; ++ : public ConcreteOperator { ++ ~LShrOperator(); // DO NOT IMPLEMENT ++}; + + + + class GEPOperator + : public ConcreteOperator { ++ ~GEPOperator(); // DO NOT IMPLEMENT ++ + enum { + IsInBounds = (1 << 0) + }; diff --git a/llvm.spec b/llvm.spec new file mode 100644 index 0000000..47ae88b --- /dev/null +++ b/llvm.spec @@ -0,0 +1,254 @@ +%define _disable_ld_no_undefined 0 + +%define compile_apidox 0 +%{?_with_apidox: %{expand: %%global compile_apidox 1}} + +Name: llvm +Version: 2.9 +Release: %mkrel 3 +Summary: Low Level Virtual Machine (LLVM) +License: NCSA +Group: Development/Other +URL: http://llvm.org/ +Source0: http://llvm.org/releases/%{version}/llvm-%{version}.tgz +Patch0: llvm-2.9-gcc46.patch +BuildRoot: %_tmppath/%name-%version-%release-root +Obsoletes: llvm-devel +Obsoletes: llvm-ocaml +Requires: libstdc++-devel +BuildRequires: bison +BuildRequires: groff +BuildRequires: chrpath +BuildRequires: ocaml +BuildRequires: tcl +%if %{compile_apidox} +BuildRequires: doxygen +%endif +BuildRequires: flex +BuildRequires: sed +BuildRequires: graphviz +BuildRequires: libstdc++-devel +BuildRequires: libtool +BuildRequires: zip + +%description +LVM is a robust system, particularly well suited for developing new mid-level +language-independent analyses and optimizations of all sorts, including those +that require extensive interprocedural analysis. LLVM is also a great target +for front-end development for conventional or research programming languages, +including those which require compile-time, link-time, or run-time optimization +for effective implementation, proper tail calls or garbage collection. + +%files +%defattr(-,root,root,-) +%doc LICENSE.TXT +%{_bindir}/bugpoint +%{_bindir}/llc +%{_bindir}/lli +%{_bindir}/opt +%{_bindir}/llvm-ar +%{_bindir}/llvm-as +%{_bindir}/llvm-bcanalyzer +%{_bindir}/llvm-diff +%{_bindir}/llvm-dis +%{_bindir}/llvm-extract +%{_bindir}/llvm-ld +%{_bindir}/llvm-link +%{_bindir}/llvm-mc +%{_bindir}/llvm-nm +%{_bindir}/llvm-objdump +%{_bindir}/llvm-prof +%{_bindir}/llvm-ranlib +%{_bindir}/llvm-stub +%{_bindir}/llvmc +%{_bindir}/macho-dump +%{_bindir}/tblgen +%{_mandir}/man1/* +%{_libdir}/ocaml/* +%{_bindir}/llvm-config +%{_includedir}/* +%{_libdir}/%{name} + +#----------------------------------------------------------- + +%package doc +Summary: Documentation for LLVM +Group: Books/Computer books +Requires: %{name} = %{version} +Obsoletes: llvm-doc-evel + +%description doc +Documentation for the LLVM compiler infrastructure. + +%files doc +%defattr(-,root,root,-) +%doc README.txt +%doc docs/*.css +%doc docs/*.html +%doc docs/img +%doc docs/tutorial +%doc docs/ocamldoc +%doc examples +%if %{compile_apidox} +%doc docs/doxygen +%endif + +#----------------------------------------------------------- + +%prep +%setup -q +%patch0 -p2 + +%build +%configure2_5x \ + --libdir=%{_libdir}/%{name} \ + --datadir=%{_datadir}/%{name} \ + --enable-shared \ + --enable-jit \ + --enable-optimized \ + --enable-targets=host-only \ + --disable-expensive-checks \ + --enable-debug-runtime \ + --disable-assertions \ + --enable-threads \ +%if %{compile_apidox} + --enable-doxygen \ +%endif +%if "%{_lib}" == "lib64" + --enable-pic +%else + --enable-pic=no +%endif + +%make + +%install +%__rm -rf %buildroot + + +%makeinstall_std \ + KEEP_SYMBOLS=1 \ + PROJ_docsdir=%{_docdir}/%{name} \ + PROJ_etcdir=%{_sysconfdir}/%{name} \ + PROJ_libdir=%{_libdir}/%{name} + +# Invalid dir +rm -rf %buildroot%_bindir/.dir + +# adjust library path +sed -i -e 's|ABS_RUN_DIR/lib.*"|ABS_RUN_DIR/%{_lib}/%{name}"|' %{buildroot}%_bindir/llvm-config + +%clean +%__rm -rf %buildroot + + + +%changelog +* Wed May 18 2011 Funda Wang 2.9-3mdv2011.0 ++ Revision: 675990 +- rebuild +- add upstream patch to deal with -std=c++0x flag used in lightspark (upstream bug#9869) + +* Tue Apr 26 2011 Funda Wang 2.9-1 ++ Revision: 659078 +- update file list +- new version 2.9 + +* Sun Dec 26 2010 Funda Wang 2.8-3mdv2011.0 ++ Revision: 625147 +- fix config script + +* Sun Dec 26 2010 Funda Wang 2.8-2mdv2011.0 ++ Revision: 625136 +- add upstream patch to fix downstream program compiling +- fix linking problem when building with cmake + +* Sun Oct 24 2010 Funda Wang 2.8-1mdv2011.0 ++ Revision: 588692 +- update file list +- new version 2.8 + +* Sat Oct 02 2010 Anssi Hannula 2.7-3mdv2011.0 ++ Revision: 582535 +- rebuild for new ocaml +- fix license tag to adhere policy + +* Sat Sep 04 2010 Emmanuel Andry 2.7-2mdv2011.0 ++ Revision: 575900 +- rebuild + +* Tue Jul 27 2010 John Balcaen 2.7-1mdv2011.0 ++ Revision: 561372 +- Update to 2.7 +- fix %%files list +- fix %%makeinstall_std installation path + +* Thu Jan 28 2010 Funda Wang 2.6-2mdv2010.1 ++ Revision: 497583 +- rebuild for new ocaml + +* Tue Nov 24 2009 Funda Wang 2.6-1mdv2010.1 ++ Revision: 469643 +- update file list +- new version 2.6 + +* Sun Sep 27 2009 Olivier Blin 2.5-8mdv2010.0 ++ Revision: 450115 +- make the configure stuff know about mips and mipsel + (rediffed patch from Arnaud Patard) + + + Nicolas Lécureuil + - Fix macro + +* Thu Sep 17 2009 Nicolas Lécureuil 2.5-7mdv2010.0 ++ Revision: 443995 +- Fix build +- Fix build on 64 bit arch + +* Thu Sep 17 2009 Nicolas Lécureuil 2.5-6mdv2010.0 ++ Revision: 443921 +- Do not use Pic on i586 + +* Wed Sep 16 2009 Nicolas Lécureuil 2.5-5mdv2010.0 ++ Revision: 443651 +- Really disable assertions + +* Wed Sep 16 2009 Nicolas Lécureuil 2.5-4mdv2010.0 ++ Revision: 443345 +- Do not build with assert ( openctl does not support it) + +* Wed Jul 29 2009 Funda Wang 2.5-3mdv2010.0 ++ Revision: 403563 +- bump rel +- fix build with gcc4.4 +- rebuild for new ocaml + +* Wed May 27 2009 Eugeni Dodonov 2.5-1mdv2010.0 ++ Revision: 380082 +- Updated to 2.5. + Dropped P0 and P2 (integrated upstream). + +* Fri Apr 10 2009 Funda Wang 2.3-5mdv2009.1 ++ Revision: 365764 +- fix str fmt + +* Thu Sep 18 2008 Helio Chissini de Castro 2.3-5mdv2009.0 ++ Revision: 285655 +- Yeah, bad idea let devel doc enabled by default + +* Tue Sep 16 2008 Helio Chissini de Castro 2.3-4mdv2009.0 ++ Revision: 285358 +- Simplify package which is a compiler and never was suppose to be splitted at begin. Doc is integrated in one only package too + +* Fri Jul 04 2008 Helio Chissini de Castro 2.3-2mdv2009.0 ++ Revision: 231722 +- Fix llvm-config to match lib dir + +* Tue Jul 01 2008 Helio Chissini de Castro 2.3-1mdv2009.0 ++ Revision: 230557 +- import llvm + + +* Tue Jul 1 2008 Helio Chissini de Castro - 2.3 +- initial build version 2.3 +- Based on fedora-llvm package 2.2-4