diff options
67 files changed, 1 insertions, 4069 deletions
diff --git a/app-emulation/spice/spice-scm.ebuild b/app-emulation/spice/spice-scm.ebuild index 692cf7c..16030d2 100644 --- a/app-emulation/spice/spice-scm.ebuild +++ b/app-emulation/spice/spice-scm.ebuild @@ -6,13 +6,12 @@ EAPI=5 PYTHON_COMPAT=( python{2_6,2_7} pypy2_0 ) -inherit eutils python-any-r1 git-2 +inherit eutils python-any-r1 git-r3 DESCRIPTION="SPICE server and client" HOMEPAGE="http://spice-space.org/" EGIT_REPO_URI="git://git.freedesktop.org/git/spice/spice" -EGIT_HAS_SUBMODULES="1" LICENSE="LGPL-2.1" SLOT="0" diff --git a/sys-devel/clang/clang-scm.ebuild b/sys-devel/clang/clang-scm.ebuild deleted file mode 100644 index 256d6c6..0000000 --- a/sys-devel/clang/clang-scm.ebuild +++ /dev/null @@ -1,36 +0,0 @@ -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-devel/clang/clang-9999-r100.ebuild,v 1.5 2013/10/28 00:25:12 ottxor Exp $ - -EAPI=5 - -inherit multilib-build - -DESCRIPTION="C language family frontend for LLVM (meta-ebuild)" -HOMEPAGE="http://clang.llvm.org/" -SRC_URI="" - -LICENSE="UoI-NCSA" -SLOT="0/${PV}" -KEYWORDS="" -IUSE="debug multitarget python +static-analyzer" - -RDEPEND="~sys-devel/llvm-${PV}[clang(-),debug=,multitarget?,python?,static-analyzer,${MULTILIB_USEDEP}]" - -# Please keep this package around since it's quite likely that we'll -# return to separate LLVM & clang ebuilds when the cmake build system -# is complete. - -pkg_postinst() { - if has_version ">=dev-util/ccache-3.1.9-r2" ; then - #add ccache links as clang might get installed after ccache - "${EROOT}"/usr/bin/ccache-config --install-links - fi -} - -pkg_postrm() { - if has_version ">=dev-util/ccache-3.1.9-r2" && [[ -z ${REPLACED_BY_VERSION} ]]; then - # --remove-links would remove all links, --install-links updates them - "${EROOT}"/usr/bin/ccache-config --install-links - fi -} diff --git a/sys-devel/clang/files/cl-patches/clang-0001-Add-r600-TargetInfo.patch b/sys-devel/clang/files/cl-patches/clang-0001-Add-r600-TargetInfo.patch deleted file mode 100644 index 929b5d3..0000000 --- a/sys-devel/clang/files/cl-patches/clang-0001-Add-r600-TargetInfo.patch +++ /dev/null @@ -1,100 +0,0 @@ -From 70cae83ffd093f183dec07c464db3c0bb6b92c10 Mon Sep 17 00:00:00 2001 -From: Tom Stellard <thomas.stellard@amd.com> -Date: Fri, 2 Mar 2012 10:54:52 -0500 -Subject: [PATCH 1/3] Add r600 TargetInfo - ---- - lib/Basic/Targets.cpp | 70 +++++++++++++++++++++++++++++++++++++++++++++++++ - 1 files changed, 70 insertions(+), 0 deletions(-) - -diff --git a/lib/Basic/Targets.cpp b/lib/Basic/Targets.cpp -index 85dfd78..64dc01c 100644 ---- a/lib/Basic/Targets.cpp -+++ b/lib/Basic/Targets.cpp -@@ -1068,6 +1068,73 @@ namespace { - } - - namespace { -+ -+class AMDGPUTargetInfo : public TargetInfo { -+public: -+ -+ AMDGPUTargetInfo(const std::string& triple) : TargetInfo(triple) { } -+ -+ virtual const char * getClobbers() const { -+ return ""; -+ } -+ -+ virtual void getGCCRegNames(const char * const *&Names, -+ unsigned &numNames) const { -+ Names = NULL; -+ numNames = 0; -+ } -+ -+ virtual void getGCCRegAliases(const GCCRegAlias *&Aliases, -+ unsigned &NumAliases) const { -+ Aliases = NULL; -+ NumAliases = 0; -+ } -+ -+ virtual bool validateAsmConstraint(const char *&Name, -+ TargetInfo::ConstraintInfo &info) const { -+ return true; -+ } -+ -+ virtual void getTargetBuiltins(const Builtin::Info *&Records, -+ unsigned &NumRecords) const { -+ Records = NULL; -+ NumRecords = 0; -+ } -+}; -+ -+ -+static const unsigned R600AddrSpaceMap[] = { -+ 1, // opencl_global -+ 3, // opencl_local -+ 2 // opencl_constant -+}; -+ -+class R600TargetInfo : public AMDGPUTargetInfo { -+public: -+ R600TargetInfo(const std::string& triple) : AMDGPUTargetInfo(triple) { -+ DescriptionString = -+ "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16" -+ "-i32:32:32-i64:64:64-f32:32:32-f64:64:64-f80:32:32" -+ "-v16:16:16-v24:32:32-v32:32:32-v48:64:64-v64:64:64" -+ "-v96:128:128-v128:128:128-v192:256:256-v256:256:256" -+ "-v512:512:512-v1024:1024:1024-v2048:2048:2048" -+ "-n8:16:32:64"; -+ AddrSpaceMap = &R600AddrSpaceMap; -+ } -+ -+ virtual void getTargetDefines(const LangOptions &Opts, -+ MacroBuilder &Builder) const { -+ Builder.defineMacro("__R600__"); -+ } -+ -+ virtual const char * getVAListDeclaration() const { -+ return ""; -+ } -+}; -+ -+} // end anonymous namespace -+ -+namespace { - // MBlaze abstract base class - class MBlazeTargetInfo : public TargetInfo { - static const char * const GCCRegNames[]; -@@ -3963,6 +4030,9 @@ static TargetInfo *AllocateTarget(const std::string &T) { - case llvm::Triple::mblaze: - return new MBlazeTargetInfo(T); - -+ case llvm::Triple::r600: -+ return new R600TargetInfo(T); -+ - case llvm::Triple::sparc: - switch (os) { - case llvm::Triple::Linux: --- -1.7.7.6 - diff --git a/sys-devel/clang/files/cl-patches/clang-0002-r600-Add-some-target-builtins.patch b/sys-devel/clang/files/cl-patches/clang-0002-r600-Add-some-target-builtins.patch deleted file mode 100644 index 0003a8d..0000000 --- a/sys-devel/clang/files/cl-patches/clang-0002-r600-Add-some-target-builtins.patch +++ /dev/null @@ -1,111 +0,0 @@ -From a014573ad193775b2301e39275a1ca0ac3bb5847 Mon Sep 17 00:00:00 2001 -From: Tom Stellard <thomas.stellard@amd.com> -Date: Tue, 13 Mar 2012 13:54:51 -0400 -Subject: [PATCH 2/3] r600: Add some target builtins - ---- - include/clang/Basic/BuiltinsR600.def | 32 ++++++++++++++++++++++++++++++++ - include/clang/Basic/TargetBuiltins.h | 10 ++++++++++ - lib/Basic/Targets.cpp | 12 ++++++++++-- - 3 files changed, 52 insertions(+), 2 deletions(-) - create mode 100644 include/clang/Basic/BuiltinsR600.def - -diff --git a/include/clang/Basic/BuiltinsR600.def b/include/clang/Basic/BuiltinsR600.def -new file mode 100644 -index 0000000..ce1f30e ---- /dev/null -+++ b/include/clang/Basic/BuiltinsR600.def -@@ -0,0 +1,32 @@ -+//===--- BuiltinsR600.def - R600 Builtin function database -- --*- C++ -*-===// -+// -+// The LLVM Compiler Infrastructure -+// -+// This file is distributed under the University of Illinois Open Source -+// License. See LICENSE.TXT for details. -+// -+//===----------------------------------------------------------------------===// -+// -+// This file defines the R600-specific builtin function database. Users of -+// this file must define the BUILTIN macro to make use of this information. -+// -+//===----------------------------------------------------------------------===// -+// -+// Authors: Tom Stellard <thomas.stellard@amd.com> -+// -+ -+// The format of this database matches clang/Basic/Builtins.def. -+ -+BUILTIN(__builtin_r600_read_ngroups_x, "z", "nc") -+BUILTIN(__builtin_r600_read_ngroups_y, "z", "nc") -+BUILTIN(__builtin_r600_read_ngroups_z, "z", "nc") -+ -+BUILTIN(__builtin_r600_read_tidig_x, "z", "nc") -+BUILTIN(__builtin_r600_read_tidig_y, "z", "nc") -+BUILTIN(__builtin_r600_read_tidig_z, "z", "nc") -+ -+BUILTIN(__builtin_r600_read_tgid_x, "z", "nc") -+BUILTIN(__builtin_r600_read_tgid_y, "z", "nc") -+BUILTIN(__builtin_r600_read_tgid_z, "z", "nc") -+ -+#undef BUILTIN -diff --git a/include/clang/Basic/TargetBuiltins.h b/include/clang/Basic/TargetBuiltins.h -index 7c04bf7..3460cd5 100644 ---- a/include/clang/Basic/TargetBuiltins.h -+++ b/include/clang/Basic/TargetBuiltins.h -@@ -45,6 +45,16 @@ namespace clang { - }; - } - -+ /// R600 builtins -+ namespace R600 { -+ enum { -+ LastTIBuiltin = clang::Builtin::FirstTSBuiltin-1, -+#define BUILTIN(ID, TYPE, ATTRS) BI##ID, -+#include "clang/Basic/BuiltinsR600.def" -+ LastTSBuiltin -+ }; -+ } -+ - - /// X86 builtins - namespace X86 { -diff --git a/lib/Basic/Targets.cpp b/lib/Basic/Targets.cpp -index 64dc01c..03f1a18 100644 ---- a/lib/Basic/Targets.cpp -+++ b/lib/Basic/Targets.cpp -@@ -1070,6 +1070,7 @@ namespace { - namespace { - - class AMDGPUTargetInfo : public TargetInfo { -+ static const Builtin::Info BuiltinInfo[]; - public: - - AMDGPUTargetInfo(const std::string& triple) : TargetInfo(triple) { } -@@ -1097,8 +1098,8 @@ public: - - virtual void getTargetBuiltins(const Builtin::Info *&Records, - unsigned &NumRecords) const { -- Records = NULL; -- NumRecords = 0; -+ Records = BuiltinInfo; -+ NumRecords = clang::R600::LastTSBuiltin-Builtin::FirstTSBuiltin; - } - }; - -@@ -1132,6 +1133,13 @@ public: - } - }; - -+const Builtin::Info AMDGPUTargetInfo::BuiltinInfo[] = { -+#define BUILTIN(ID, TYPE, ATTRS) { #ID, TYPE, ATTRS, 0, ALL_LANGUAGES }, -+#define LIBBUILTIN(ID, TYPE, ATTRS, HEADER) { #ID, TYPE, ATTRS, HEADER,\ -+ ALL_LANGUAGES }, -+#include "clang/Basic/BuiltinsR600.def" -+}; -+ - } // end anonymous namespace - - namespace { --- -1.7.7.6 - diff --git a/sys-devel/clang/files/cl-patches/clang-0003-r600-Add-read_global_size-and-read_local_size-builti.patch b/sys-devel/clang/files/cl-patches/clang-0003-r600-Add-read_global_size-and-read_local_size-builti.patch deleted file mode 100644 index e0c2d3b..0000000 --- a/sys-devel/clang/files/cl-patches/clang-0003-r600-Add-read_global_size-and-read_local_size-builti.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 2881b8189dcacc8ab6a336f0e107d72752c8c47e Mon Sep 17 00:00:00 2001 -From: Tom Stellard <thomas.stellard@amd.com> -Date: Wed, 14 Mar 2012 11:20:08 -0400 -Subject: [PATCH 3/3] r600: Add read_global_size and read_local_size builtins - ---- - include/clang/Basic/BuiltinsR600.def | 8 ++++++++ - 1 files changed, 8 insertions(+), 0 deletions(-) - -diff --git a/include/clang/Basic/BuiltinsR600.def b/include/clang/Basic/BuiltinsR600.def -index ce1f30e..c81758e 100644 ---- a/include/clang/Basic/BuiltinsR600.def -+++ b/include/clang/Basic/BuiltinsR600.def -@@ -17,6 +17,14 @@ - - // The format of this database matches clang/Basic/Builtins.def. - -+BUILTIN(__builtin_r600_read_global_size_x, "z", "nc") -+BUILTIN(__builtin_r600_read_global_size_y, "z", "nc") -+BUILTIN(__builtin_r600_read_global_size_z, "z", "nc") -+ -+BUILTIN(__builtin_r600_read_local_size_x, "z", "nc") -+BUILTIN(__builtin_r600_read_local_size_y, "z", "nc") -+BUILTIN(__builtin_r600_read_local_size_z, "z", "nc") -+ - BUILTIN(__builtin_r600_read_ngroups_x, "z", "nc") - BUILTIN(__builtin_r600_read_ngroups_y, "z", "nc") - BUILTIN(__builtin_r600_read_ngroups_z, "z", "nc") --- -1.7.7.6 - diff --git a/sys-devel/clang/files/cl-patches/llvm-0001-r600-Add-some-intrinsic-definitions.patch b/sys-devel/clang/files/cl-patches/llvm-0001-r600-Add-some-intrinsic-definitions.patch deleted file mode 100644 index 9d99c9c..0000000 --- a/sys-devel/clang/files/cl-patches/llvm-0001-r600-Add-some-intrinsic-definitions.patch +++ /dev/null @@ -1,64 +0,0 @@ -From e25389b66b5ced3a2b5461077dcc9a505d334e3d Mon Sep 17 00:00:00 2001 -From: Tom Stellard <thomas.stellard@amd.com> -Date: Tue, 13 Mar 2012 14:12:21 -0400 -Subject: [PATCH 1/2] r600: Add some intrinsic definitions - ---- - include/llvm/Intrinsics.td | 1 + - include/llvm/IntrinsicsR600.td | 35 +++++++++++++++++++++++++++++++++++ - 2 files changed, 36 insertions(+), 0 deletions(-) - create mode 100644 include/llvm/IntrinsicsR600.td - -diff --git a/include/llvm/Intrinsics.td b/include/llvm/Intrinsics.td -index 069f907..e90dd85 100644 ---- a/include/llvm/Intrinsics.td -+++ b/include/llvm/Intrinsics.td -@@ -441,3 +441,4 @@ include "llvm/IntrinsicsCellSPU.td" - include "llvm/IntrinsicsXCore.td" - include "llvm/IntrinsicsPTX.td" - include "llvm/IntrinsicsHexagon.td" -+include "llvm/IntrinsicsR600.td" -diff --git a/include/llvm/IntrinsicsR600.td b/include/llvm/IntrinsicsR600.td -new file mode 100644 -index 0000000..789fecb ---- /dev/null -+++ b/include/llvm/IntrinsicsR600.td -@@ -0,0 +1,35 @@ -+//===- IntrinsicsR600.td - Defines R600 intrinsics ---------*- tablegen -*-===// -+// -+// The LLVM Compiler Infrastructure -+// -+// This file is distributed under the University of Illinois Open Source -+// License. See LICENSE.TXT for details. -+// -+//===----------------------------------------------------------------------===// -+// -+// This file defines all of the R600-specific intrinsics. -+// -+//===----------------------------------------------------------------------===// -+// -+// Authors: Tom Stellard <thomas.stellard@amd.com> -+// -+ -+let TargetPrefix = "r600" in { -+ -+class R600ReadPreloadRegisterIntrinsic<string name> -+ : Intrinsic<[llvm_i32_ty], [], [IntrNoMem]>, -+ GCCBuiltin<name>; -+ -+multiclass R600ReadPreloadRegisterIntrinsic_xyz<string prefix> { -+ def _x : R600ReadPreloadRegisterIntrinsic<!strconcat(prefix, "_x")>; -+ def _y : R600ReadPreloadRegisterIntrinsic<!strconcat(prefix, "_y")>; -+ def _z : R600ReadPreloadRegisterIntrinsic<!strconcat(prefix, "_z")>; -+} -+ -+defm int_r600_read_ngroups : R600ReadPreloadRegisterIntrinsic_xyz < -+ "__builtin_r600_read_ngroups">; -+defm int_r600_read_tgid : R600ReadPreloadRegisterIntrinsic_xyz < -+ "__builtin_r600_read_tgid">; -+defm int_r600_read_tidig : R600ReadPreloadRegisterIntrinsic_xyz < -+ "__builtin_r600_read_tidig">; -+} // End TargetPrefix = "r600" --- -1.7.7.6 - diff --git a/sys-devel/clang/files/cl-patches/llvm-0002-r600-Add-get_global_size-and-get_local_size-intrinsi.patch b/sys-devel/clang/files/cl-patches/llvm-0002-r600-Add-get_global_size-and-get_local_size-intrinsi.patch deleted file mode 100644 index db176dd..0000000 --- a/sys-devel/clang/files/cl-patches/llvm-0002-r600-Add-get_global_size-and-get_local_size-intrinsi.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 17667fa3450470f7c89fc2ba4631d908cf510749 Mon Sep 17 00:00:00 2001 -From: Tom Stellard <thomas.stellard@amd.com> -Date: Wed, 14 Mar 2012 11:19:35 -0400 -Subject: [PATCH 2/2] r600: Add get_global_size and get_local_size intrinsics - ---- - include/llvm/IntrinsicsR600.td | 4 ++++ - 1 files changed, 4 insertions(+), 0 deletions(-) - -diff --git a/include/llvm/IntrinsicsR600.td b/include/llvm/IntrinsicsR600.td -index 789fecb..0473acb 100644 ---- a/include/llvm/IntrinsicsR600.td -+++ b/include/llvm/IntrinsicsR600.td -@@ -26,6 +26,10 @@ multiclass R600ReadPreloadRegisterIntrinsic_xyz<string prefix> { - def _z : R600ReadPreloadRegisterIntrinsic<!strconcat(prefix, "_z")>; - } - -+defm int_r600_read_global_size : R600ReadPreloadRegisterIntrinsic_xyz < -+ "__builtin_r600_read_global_size">; -+defm int_r600_read_local_size : R600ReadPreloadRegisterIntrinsic_xyz < -+ "__builtin_r600_read_local_size">; - defm int_r600_read_ngroups : R600ReadPreloadRegisterIntrinsic_xyz < - "__builtin_r600_read_ngroups">; - defm int_r600_read_tgid : R600ReadPreloadRegisterIntrinsic_xyz < --- -1.7.7.6 - diff --git a/sys-devel/clang/files/clang-2.7-fixdoc.patch b/sys-devel/clang/files/clang-2.7-fixdoc.patch deleted file mode 100644 index 8058ec4..0000000 --- a/sys-devel/clang/files/clang-2.7-fixdoc.patch +++ /dev/null @@ -1,53 +0,0 @@ -diff -Naur llvm-2.7.orig//tools/clang/docs/Makefile llvm-2.7/tools/clang/docs/Makefile ---- llvm-2.7.orig//tools/clang/docs/Makefile 2010-04-26 18:38:45.000000000 +0200 -+++ llvm-2.7/tools/clang/docs/Makefile 2010-04-26 18:41:08.000000000 +0200 -@@ -46,13 +46,12 @@ - # 'make generated BUILD_FOR_WEBSITE=1' - generated:: doxygen - --install-html: $(PROJ_OBJ_DIR)/html.tar.gz -+install-html: - $(Echo) Installing HTML documentation - $(Verb) $(MKDIR) $(DESTDIR)$(PROJ_docsdir)/html - $(Verb) $(MKDIR) $(DESTDIR)$(PROJ_docsdir)/html/img - $(Verb) $(DataInstall) $(HTML) $(DESTDIR)$(PROJ_docsdir)/html - # $(Verb) $(DataInstall) $(IMAGES) $(DESTDIR)$(PROJ_docsdir)/html/img -- $(Verb) $(DataInstall) $(PROJ_OBJ_DIR)/html.tar.gz $(DESTDIR)$(PROJ_docsdir) - - $(PROJ_OBJ_DIR)/html.tar.gz: $(HTML) - $(Echo) Packaging HTML documentation -@@ -64,12 +63,11 @@ - install-doxygen: doxygen - $(Echo) Installing doxygen documentation - $(Verb) $(MKDIR) $(DESTDIR)$(PROJ_docsdir)/html/doxygen -- $(Verb) $(DataInstall) $(PROJ_OBJ_DIR)/doxygen.tar.gz $(DESTDIR)$(PROJ_docsdir) - $(Verb) cd $(PROJ_OBJ_DIR)/doxygen && \ - $(FIND) . -type f -exec \ - $(DataInstall) {} $(DESTDIR)$(PROJ_docsdir)/html/doxygen \; - --doxygen: regendoc $(PROJ_OBJ_DIR)/doxygen.tar.gz -+doxygen: regendoc - - regendoc: - $(Echo) Building doxygen documentation -diff -Naur llvm-2.7.orig//tools/clang/docs/tools/Makefile llvm-2.7/tools/clang/docs/tools/Makefile ---- llvm-2.7.orig//tools/clang/docs/tools/Makefile 2010-04-26 18:38:45.000000000 +0200 -+++ llvm-2.7/tools/clang/docs/tools/Makefile 2010-04-26 18:41:29.000000000 +0200 -@@ -24,7 +24,7 @@ - CLANG_VERSION := trunk - - # If we are in BUILD_FOR_WEBSITE mode, default to the all target. --all:: html man ps -+all:: html man - - clean: - rm -f pod2htm*.*~~ $(HTML) $(MAN) $(PS) -@@ -58,7 +58,7 @@ - ifdef ONLY_MAN_DOCS - INSTALL_TARGETS := install-man - else --INSTALL_TARGETS := install-html install-man install-ps -+INSTALL_TARGETS := install-html install-man - endif - - .SUFFIXES: diff --git a/sys-devel/clang/files/clang-2.8-alignof.patch b/sys-devel/clang/files/clang-2.8-alignof.patch deleted file mode 100644 index a15f118..0000000 --- a/sys-devel/clang/files/clang-2.8-alignof.patch +++ /dev/null @@ -1,258 +0,0 @@ -Index: include/llvm/ADT/StringMap.h -=================================================================== ---- include/llvm/ADT/StringMap.h (révision 117773) -+++ include/llvm/ADT/StringMap.h (révision 117774) -@@ -167,7 +167,7 @@ - - unsigned AllocSize = static_cast<unsigned>(sizeof(StringMapEntry))+ - KeyLength+1; -- unsigned Alignment = alignof<StringMapEntry>(); -+ unsigned Alignment = alignOf<StringMapEntry>(); - - StringMapEntry *NewItem = - static_cast<StringMapEntry*>(Allocator.Allocate(AllocSize,Alignment)); -Index: include/llvm/Support/AlignOf.h -=================================================================== ---- include/llvm/Support/AlignOf.h (révision 117773) -+++ include/llvm/Support/AlignOf.h (révision 117774) -@@ -49,12 +49,12 @@ - - }; - --/// alignof - A templated function that returns the mininum alignment of -+/// alignOf - A templated function that returns the mininum alignment of - /// of a type. This provides no extra functionality beyond the AlignOf - /// class besides some cosmetic cleanliness. Example usage: --/// alignof<int>() returns the alignment of an int. -+/// alignOf<int>() returns the alignment of an int. - template <typename T> --static inline unsigned alignof() { return AlignOf<T>::Alignment; } -+static inline unsigned alignOf() { return AlignOf<T>::Alignment; } - - } // end namespace llvm - #endif -Index: include/llvm/Support/Allocator.h -=================================================================== ---- include/llvm/Support/Allocator.h (révision 117773) -+++ include/llvm/Support/Allocator.h (révision 117774) -@@ -201,7 +201,7 @@ - char *End = Slab == Allocator.CurSlab ? Allocator.CurPtr : - (char *)Slab + Slab->Size; - for (char *Ptr = (char*)(Slab+1); Ptr < End; Ptr += sizeof(T)) { -- Ptr = Allocator.AlignPtr(Ptr, alignof<T>()); -+ Ptr = Allocator.AlignPtr(Ptr, alignOf<T>()); - if (Ptr + sizeof(T) <= End) - reinterpret_cast<T*>(Ptr)->~T(); - } -Index: include/llvm/CodeGen/SlotIndexes.h -=================================================================== ---- include/llvm/CodeGen/SlotIndexes.h (révision 117773) -+++ include/llvm/CodeGen/SlotIndexes.h (révision 117774) -@@ -393,7 +393,7 @@ - IndexListEntry *entry = - static_cast<IndexListEntry*>( - ileAllocator.Allocate(sizeof(IndexListEntry), -- alignof<IndexListEntry>())); -+ alignOf<IndexListEntry>())); - - new (entry) IndexListEntry(mi, index); - -Index: tools/clang/lib/Basic/IdentifierTable.cpp -=================================================================== ---- tools/clang/lib/Basic/IdentifierTable.cpp (révision 117774) -+++ tools/clang/lib/Basic/IdentifierTable.cpp (révision 117775) -@@ -390,7 +390,7 @@ - unsigned Size = sizeof(MultiKeywordSelector) + nKeys*sizeof(IdentifierInfo *); - MultiKeywordSelector *SI = - (MultiKeywordSelector*)SelTabImpl.Allocator.Allocate(Size, -- llvm::alignof<MultiKeywordSelector>()); -+ llvm::alignOf<MultiKeywordSelector>()); - new (SI) MultiKeywordSelector(nKeys, IIV); - SelTabImpl.Table.InsertNode(SI, InsertPos); - return Selector(SI); -Index: tools/clang/lib/AST/ExprCXX.cpp -=================================================================== ---- tools/clang/lib/AST/ExprCXX.cpp (révision 117774) -+++ tools/clang/lib/AST/ExprCXX.cpp (révision 117775) -@@ -233,7 +233,7 @@ - if (NumTemplateArgs != 0) - size += ExplicitTemplateArgumentList::sizeFor(NumTemplateArgs); - -- void *Mem = C.Allocate(size, llvm::alignof<UnresolvedLookupExpr>()); -+ void *Mem = C.Allocate(size, llvm::alignOf<UnresolvedLookupExpr>()); - UnresolvedLookupExpr *E = new (Mem) UnresolvedLookupExpr(EmptyShell()); - E->HasExplicitTemplateArgs = NumTemplateArgs != 0; - return E; -@@ -261,7 +261,7 @@ - if (NumResults) { - Results = static_cast<DeclAccessPair *>( - C.Allocate(sizeof(DeclAccessPair) * NumResults, -- llvm::alignof<DeclAccessPair>())); -+ llvm::alignOf<DeclAccessPair>())); - memcpy(Results, &*Begin.getIterator(), - NumResults * sizeof(DeclAccessPair)); - } -@@ -737,7 +737,7 @@ - if (TemplateArgs) - size += ExplicitTemplateArgumentList::sizeFor(*TemplateArgs); - -- void *Mem = C.Allocate(size, llvm::alignof<CXXDependentScopeMemberExpr>()); -+ void *Mem = C.Allocate(size, llvm::alignOf<CXXDependentScopeMemberExpr>()); - return new (Mem) CXXDependentScopeMemberExpr(C, Base, BaseType, - IsArrow, OperatorLoc, - Qualifier, QualifierRange, -@@ -756,7 +756,7 @@ - - std::size_t size = sizeof(CXXDependentScopeMemberExpr) + - ExplicitTemplateArgumentList::sizeFor(NumTemplateArgs); -- void *Mem = C.Allocate(size, llvm::alignof<CXXDependentScopeMemberExpr>()); -+ void *Mem = C.Allocate(size, llvm::alignOf<CXXDependentScopeMemberExpr>()); - CXXDependentScopeMemberExpr *E - = new (Mem) CXXDependentScopeMemberExpr(C, 0, QualType(), - 0, SourceLocation(), 0, -@@ -812,7 +812,7 @@ - if (TemplateArgs) - size += ExplicitTemplateArgumentList::sizeFor(*TemplateArgs); - -- void *Mem = C.Allocate(size, llvm::alignof<UnresolvedMemberExpr>()); -+ void *Mem = C.Allocate(size, llvm::alignOf<UnresolvedMemberExpr>()); - return new (Mem) UnresolvedMemberExpr(C, - Dependent ? C.DependentTy : C.OverloadTy, - Dependent, HasUnresolvedUsing, Base, BaseType, -@@ -826,7 +826,7 @@ - if (NumTemplateArgs != 0) - size += ExplicitTemplateArgumentList::sizeFor(NumTemplateArgs); - -- void *Mem = C.Allocate(size, llvm::alignof<UnresolvedMemberExpr>()); -+ void *Mem = C.Allocate(size, llvm::alignOf<UnresolvedMemberExpr>()); - UnresolvedMemberExpr *E = new (Mem) UnresolvedMemberExpr(EmptyShell()); - E->HasExplicitTemplateArgs = NumTemplateArgs != 0; - return E; -Index: tools/clang/lib/AST/DeclObjC.cpp -=================================================================== ---- tools/clang/lib/AST/DeclObjC.cpp (révision 117774) -+++ tools/clang/lib/AST/DeclObjC.cpp (révision 117775) -@@ -711,7 +711,7 @@ - void ObjCClassDecl::setClassList(ASTContext &C, ObjCInterfaceDecl*const*List, - const SourceLocation *Locs, unsigned Num) { - ForwardDecls = (ObjCClassRef*) C.Allocate(sizeof(ObjCClassRef)*Num, -- llvm::alignof<ObjCClassRef>()); -+ llvm::alignOf<ObjCClassRef>()); - for (unsigned i = 0; i < Num; ++i) - new (&ForwardDecls[i]) ObjCClassRef(List[i], Locs[i]); - -Index: tools/clang/lib/AST/Stmt.cpp -=================================================================== ---- tools/clang/lib/AST/Stmt.cpp (révision 117774) -+++ tools/clang/lib/AST/Stmt.cpp (révision 117775) -@@ -416,7 +416,7 @@ - Stmt *atFinallyStmt) { - unsigned Size = sizeof(ObjCAtTryStmt) + - (1 + NumCatchStmts + (atFinallyStmt != 0)) * sizeof(Stmt *); -- void *Mem = Context.Allocate(Size, llvm::alignof<ObjCAtTryStmt>()); -+ void *Mem = Context.Allocate(Size, llvm::alignOf<ObjCAtTryStmt>()); - return new (Mem) ObjCAtTryStmt(atTryLoc, atTryStmt, CatchStmts, NumCatchStmts, - atFinallyStmt); - } -@@ -426,7 +426,7 @@ - bool HasFinally) { - unsigned Size = sizeof(ObjCAtTryStmt) + - (1 + NumCatchStmts + HasFinally) * sizeof(Stmt *); -- void *Mem = Context.Allocate(Size, llvm::alignof<ObjCAtTryStmt>()); -+ void *Mem = Context.Allocate(Size, llvm::alignOf<ObjCAtTryStmt>()); - return new (Mem) ObjCAtTryStmt(EmptyShell(), NumCatchStmts, HasFinally); - } - -@@ -448,7 +448,7 @@ - std::size_t Size = sizeof(CXXTryStmt); - Size += ((numHandlers + 1) * sizeof(Stmt)); - -- void *Mem = C.Allocate(Size, llvm::alignof<CXXTryStmt>()); -+ void *Mem = C.Allocate(Size, llvm::alignOf<CXXTryStmt>()); - return new (Mem) CXXTryStmt(tryLoc, tryBlock, handlers, numHandlers); - } - -@@ -457,7 +457,7 @@ - std::size_t Size = sizeof(CXXTryStmt); - Size += ((numHandlers + 1) * sizeof(Stmt)); - -- void *Mem = C.Allocate(Size, llvm::alignof<CXXTryStmt>()); -+ void *Mem = C.Allocate(Size, llvm::alignOf<CXXTryStmt>()); - return new (Mem) CXXTryStmt(Empty, numHandlers); - } - -Index: tools/clang/lib/AST/Expr.cpp -=================================================================== ---- tools/clang/lib/AST/Expr.cpp (révision 117774) -+++ tools/clang/lib/AST/Expr.cpp (révision 117775) -@@ -257,7 +257,7 @@ - if (TemplateArgs) - Size += ExplicitTemplateArgumentList::sizeFor(*TemplateArgs); - -- void *Mem = Context.Allocate(Size, llvm::alignof<DeclRefExpr>()); -+ void *Mem = Context.Allocate(Size, llvm::alignOf<DeclRefExpr>()); - return new (Mem) DeclRefExpr(Qualifier, QualifierRange, D, NameInfo, - TemplateArgs, T); - } -@@ -271,7 +271,7 @@ - if (NumTemplateArgs) - Size += ExplicitTemplateArgumentList::sizeFor(NumTemplateArgs); - -- void *Mem = Context.Allocate(Size, llvm::alignof<DeclRefExpr>()); -+ void *Mem = Context.Allocate(Size, llvm::alignOf<DeclRefExpr>()); - return new (Mem) DeclRefExpr(EmptyShell()); - } - -@@ -432,7 +432,7 @@ - // any concatenated string tokens. - void *Mem = C.Allocate(sizeof(StringLiteral)+ - sizeof(SourceLocation)*(NumStrs-1), -- llvm::alignof<StringLiteral>()); -+ llvm::alignOf<StringLiteral>()); - StringLiteral *SL = new (Mem) StringLiteral(Ty); - - // OPTIMIZE: could allocate this appended to the StringLiteral. -@@ -452,7 +452,7 @@ - StringLiteral *StringLiteral::CreateEmpty(ASTContext &C, unsigned NumStrs) { - void *Mem = C.Allocate(sizeof(StringLiteral)+ - sizeof(SourceLocation)*(NumStrs-1), -- llvm::alignof<StringLiteral>()); -+ llvm::alignOf<StringLiteral>()); - StringLiteral *SL = new (Mem) StringLiteral(QualType()); - SL->StrData = 0; - SL->ByteLength = 0; -@@ -714,7 +714,7 @@ - if (targs) - Size += ExplicitTemplateArgumentList::sizeFor(*targs); - -- void *Mem = C.Allocate(Size, llvm::alignof<MemberExpr>()); -+ void *Mem = C.Allocate(Size, llvm::alignOf<MemberExpr>()); - MemberExpr *E = new (Mem) MemberExpr(base, isarrow, memberdecl, nameinfo, ty); - - if (hasQualOrFound) { -Index: tools/clang/lib/AST/DeclCXX.cpp -=================================================================== ---- tools/clang/lib/AST/DeclCXX.cpp (révision 117774) -+++ tools/clang/lib/AST/DeclCXX.cpp (révision 117775) -@@ -1057,7 +1057,7 @@ - unsigned NumIndices) { - void *Mem = Context.Allocate(sizeof(CXXBaseOrMemberInitializer) + - sizeof(VarDecl *) * NumIndices, -- llvm::alignof<CXXBaseOrMemberInitializer>()); -+ llvm::alignOf<CXXBaseOrMemberInitializer>()); - return new (Mem) CXXBaseOrMemberInitializer(Context, Member, MemberLoc, - L, Init, R, Indices, NumIndices); - } -Index: tools/clang/lib/Lex/TokenLexer.cpp -=================================================================== ---- tools/clang/lib/Lex/TokenLexer.cpp (révision 117774) -+++ tools/clang/lib/Lex/TokenLexer.cpp (révision 117775) -@@ -287,7 +287,7 @@ - llvm::BumpPtrAllocator &Alloc = PP.getPreprocessorAllocator(); - Token *Res = - static_cast<Token *>(Alloc.Allocate(sizeof(Token)*ResultToks.size(), -- llvm::alignof<Token>())); -+ llvm::alignOf<Token>())); - if (NumTokens) - memcpy(Res, &ResultToks[0], NumTokens*sizeof(Token)); - Tokens = Res; diff --git a/sys-devel/clang/files/clang-2.8-darwin-prefix.patch b/sys-devel/clang/files/clang-2.8-darwin-prefix.patch deleted file mode 100644 index 555b8ee..0000000 --- a/sys-devel/clang/files/clang-2.8-darwin-prefix.patch +++ /dev/null @@ -1,127 +0,0 @@ -This code looks as if it is written by Apple, lots of assumptions that -only hold for them and their scenario. - ---- tools/clang/lib/Driver/ToolChains.cpp -+++ tools/clang/lib/Driver/ToolChains.cpp -@@ -131,7 +131,7 @@ - GCCVersion[2] = 1; - - // Set up the tool chain paths to match gcc. -- ToolChainDir = "i686-apple-darwin"; -+ ToolChainDir = "@GENTOO_PORTAGE_CHOST@"; - ToolChainDir += llvm::utostr(DarwinVersion[0]); - ToolChainDir += "/"; - ToolChainDir += llvm::utostr(GCCVersion[0]); -@@ -141,9 +141,9 @@ - ToolChainDir += llvm::utostr(GCCVersion[2]); - - // Try the next major version if that tool chain dir is invalid. -- std::string Tmp = "/usr/lib/gcc/" + ToolChainDir; -+ std::string Tmp = "@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir; - if (!llvm::sys::Path(Tmp).exists()) { -- std::string Next = "i686-apple-darwin"; -+ std::string Next = "@GENTOO_PORTAGE_CHOST_ARCH@"; - Next += llvm::utostr(DarwinVersion[0] + 1); - Next += "/"; - Next += llvm::utostr(GCCVersion[0]); -@@ -155,7 +155,7 @@ - // Use that if it exists, otherwise hope the user isn't linking. - // - // FIXME: Drop dependency on gcc's tool chain. -- Tmp = "/usr/lib/gcc/" + Next; -+ Tmp = "@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + Next; - if (llvm::sys::Path(Tmp).exists()) - ToolChainDir = Next; - } -@@ -168,7 +168,7 @@ - Path += "/x86_64"; - getFilePaths().push_back(Path); - -- Path = "/usr/lib/gcc/"; -+ Path = "@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/"; - Path += ToolChainDir; - Path += "/x86_64"; - getFilePaths().push_back(Path); -@@ -179,7 +179,7 @@ - Path += ToolChainDir; - getFilePaths().push_back(Path); - -- Path = "/usr/lib/gcc/"; -+ Path = "@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/"; - Path += ToolChainDir; - getFilePaths().push_back(Path); - -@@ -188,7 +188,7 @@ - Path += ToolChainDir; - getProgramPaths().push_back(Path); - -- Path = "/usr/libexec/gcc/"; -+ Path = "@GENTOO_PORTAGE_EPREFIX@/usr/libexec/gcc/"; - Path += ToolChainDir; - getProgramPaths().push_back(Path); - -@@ -291,14 +291,14 @@ - - // FIXME: Derive these correctly. - if (getArchName() == "x86_64") { -- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/gcc/" + ToolChainDir + -+ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir + - "/x86_64")); - // Intentionally duplicated for (temporary) gcc bug compatibility. -- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/gcc/" + ToolChainDir + -+ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir + - "/x86_64")); - } - -- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/" + ToolChainDir)); -+ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/" + ToolChainDir)); - - Tmp = getDriver().Dir + "/../lib/gcc/" + ToolChainDir; - if (llvm::sys::Path(Tmp).exists()) -@@ -306,18 +306,18 @@ - Tmp = getDriver().Dir + "/../lib/gcc"; - if (llvm::sys::Path(Tmp).exists()) - CmdArgs.push_back(Args.MakeArgString("-L" + Tmp)); -- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/gcc/" + ToolChainDir)); -+ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir)); - // Intentionally duplicated for (temporary) gcc bug compatibility. -- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/gcc/" + ToolChainDir)); -+ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir)); - Tmp = getDriver().Dir + "/../lib/" + ToolChainDir; - if (llvm::sys::Path(Tmp).exists()) - CmdArgs.push_back(Args.MakeArgString("-L" + Tmp)); - Tmp = getDriver().Dir + "/../lib"; - if (llvm::sys::Path(Tmp).exists()) - CmdArgs.push_back(Args.MakeArgString("-L" + Tmp)); -- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/gcc/" + ToolChainDir + -+ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir + - "/../../../" + ToolChainDir)); -- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/gcc/" + ToolChainDir + -+ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir + - "/../../..")); - } - -@@ -386,22 +386,7 @@ - P.eraseComponent(); // .../usr/bin -> ../usr - P.appendComponent("lib"); - P.appendComponent("gcc"); -- switch (getTriple().getArch()) { -- default: -- assert(0 && "Invalid Darwin arch!"); -- case llvm::Triple::x86: -- case llvm::Triple::x86_64: -- P.appendComponent("i686-apple-darwin10"); -- break; -- case llvm::Triple::arm: -- case llvm::Triple::thumb: -- P.appendComponent("arm-apple-darwin10"); -- break; -- case llvm::Triple::ppc: -- case llvm::Triple::ppc64: -- P.appendComponent("powerpc-apple-darwin10"); -- break; -- } -+ P.appendComponent("@GENTOO_PORTAGE_CHOST@"); - P.appendComponent("4.2.1"); - - // Determine the arch specific GCC subdirectory. diff --git a/sys-devel/clang/files/clang-2.8-gcc-4.4.4.patch b/sys-devel/clang/files/clang-2.8-gcc-4.4.4.patch deleted file mode 100644 index f60d051..0000000 --- a/sys-devel/clang/files/clang-2.8-gcc-4.4.4.patch +++ /dev/null @@ -1,16 +0,0 @@ -Index: tools/clang/lib/Frontend/InitHeaderSearch.cpp -=================================================================== ---- tools/clang/lib/Frontend/InitHeaderSearch.cpp (révision 119347) -+++ tools/clang/lib/Frontend/InitHeaderSearch.cpp (révision 119348) -@@ -745,6 +745,11 @@ - "/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.3/include/g++-v4", - "x86_64-pc-linux-gnu", "32", "", triple); - -+ // Gentoo amd64 gcc 4.4.4 -+ AddGnuCPlusPlusIncludePaths( -+ "/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.4/include/g++-v4", -+ "x86_64-pc-linux-gnu", "32", "", triple); -+ - // Gentoo amd64 llvm-gcc trunk - AddGnuCPlusPlusIncludePaths( - "/usr/lib/llvm-gcc-4.2-9999/include/c++/4.2.1", diff --git a/sys-devel/clang/files/clang-2.9-darwin-prefix.patch b/sys-devel/clang/files/clang-2.9-darwin-prefix.patch deleted file mode 100644 index 8f79e7f..0000000 --- a/sys-devel/clang/files/clang-2.9-darwin-prefix.patch +++ /dev/null @@ -1,125 +0,0 @@ ---- tools/clang/lib/Driver/ToolChains.cpp.orig 2011-03-21 22:29:27.000000000 +0100 -+++ tools/clang/lib/Driver/ToolChains.cpp 2011-04-07 10:33:41.771314057 +0200 -@@ -139,7 +139,7 @@ - GCCVersion[2] = 1; - - // Set up the tool chain paths to match gcc. -- ToolChainDir = "i686-apple-darwin"; -+ ToolChainDir = "@GENTOO_PORTAGE_CHOST@"; - ToolChainDir += llvm::utostr(DarwinVersion[0]); - ToolChainDir += "/"; - ToolChainDir += llvm::utostr(GCCVersion[0]); -@@ -149,10 +149,10 @@ - ToolChainDir += llvm::utostr(GCCVersion[2]); - - // Try the next major version if that tool chain dir is invalid. -- std::string Tmp = "/usr/lib/gcc/" + ToolChainDir; -+ std::string Tmp = "@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir; - bool Exists; - if (llvm::sys::fs::exists(Tmp, Exists) || Exists) { -- std::string Next = "i686-apple-darwin"; -+ std::string Next = "@GENTOO_PORTAGE_CHOST_ARCH@"; - Next += llvm::utostr(DarwinVersion[0] + 1); - Next += "/"; - Next += llvm::utostr(GCCVersion[0]); -@@ -164,7 +164,7 @@ - // Use that if it exists, otherwise hope the user isn't linking. - // - // FIXME: Drop dependency on gcc's tool chain. -- Tmp = "/usr/lib/gcc/" + Next; -+ Tmp = "@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + Next; - if (!llvm::sys::fs::exists(Tmp, Exists) && Exists) - ToolChainDir = Next; - } -@@ -177,7 +177,7 @@ - Path += "/x86_64"; - getFilePaths().push_back(Path); - -- Path = "/usr/lib/gcc/"; -+ Path = "@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/"; - Path += ToolChainDir; - Path += "/x86_64"; - getFilePaths().push_back(Path); -@@ -188,7 +188,7 @@ - Path += ToolChainDir; - getFilePaths().push_back(Path); - -- Path = "/usr/lib/gcc/"; -+ Path = "@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/"; - Path += ToolChainDir; - getFilePaths().push_back(Path); - -@@ -197,7 +197,7 @@ - Path += ToolChainDir; - getProgramPaths().push_back(Path); - -- Path = "/usr/libexec/gcc/"; -+ Path = "@GENTOO_PORTAGE_EPREFIX@/usr/libexec/gcc/"; - Path += ToolChainDir; - getProgramPaths().push_back(Path); - -@@ -300,14 +300,14 @@ - - // FIXME: Derive these correctly. - if (getArchName() == "x86_64") { -- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/gcc/" + ToolChainDir + -+ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir + - "/x86_64")); - // Intentionally duplicated for (temporary) gcc bug compatibility. -- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/gcc/" + ToolChainDir + -+ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir + - "/x86_64")); - } - -- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/" + ToolChainDir)); -+ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/" + ToolChainDir)); - - Tmp = getDriver().Dir + "/../lib/gcc/" + ToolChainDir; - bool Exists; -@@ -316,18 +316,18 @@ - Tmp = getDriver().Dir + "/../lib/gcc"; - if (!llvm::sys::fs::exists(Tmp, Exists) && Exists) - CmdArgs.push_back(Args.MakeArgString("-L" + Tmp)); -- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/gcc/" + ToolChainDir)); -+ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir)); - // Intentionally duplicated for (temporary) gcc bug compatibility. -- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/gcc/" + ToolChainDir)); -+ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir)); - Tmp = getDriver().Dir + "/../lib/" + ToolChainDir; - if (!llvm::sys::fs::exists(Tmp, Exists) && Exists) - CmdArgs.push_back(Args.MakeArgString("-L" + Tmp)); - Tmp = getDriver().Dir + "/../lib"; - if (!llvm::sys::fs::exists(Tmp, Exists) && Exists) - CmdArgs.push_back(Args.MakeArgString("-L" + Tmp)); -- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/gcc/" + ToolChainDir + -+ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir + - "/../../../" + ToolChainDir)); -- CmdArgs.push_back(Args.MakeArgString("-L/usr/lib/gcc/" + ToolChainDir + -+ CmdArgs.push_back(Args.MakeArgString("-L@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/" + ToolChainDir + - "/../../..")); - } - -@@ -416,22 +416,7 @@ - P.eraseComponent(); // .../usr/bin -> ../usr - P.appendComponent("lib"); - P.appendComponent("gcc"); -- switch (getTriple().getArch()) { -- default: -- assert(0 && "Invalid Darwin arch!"); -- case llvm::Triple::x86: -- case llvm::Triple::x86_64: -- P.appendComponent("i686-apple-darwin10"); -- break; -- case llvm::Triple::arm: -- case llvm::Triple::thumb: -- P.appendComponent("arm-apple-darwin10"); -- break; -- case llvm::Triple::ppc: -- case llvm::Triple::ppc64: -- P.appendComponent("powerpc-apple-darwin10"); -- break; -- } -+ P.appendComponent("@GENTOO_PORTAGE_CHOST@"); - P.appendComponent("4.2.1"); - - // Determine the arch specific GCC subdirectory. diff --git a/sys-devel/clang/files/clang-2.9-gccversions.patch b/sys-devel/clang/files/clang-2.9-gccversions.patch deleted file mode 100644 index 775a9e6..0000000 --- a/sys-devel/clang/files/clang-2.9-gccversions.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- a/llvm-2.9/tools/clang/lib/Driver/ToolChains.cpp 2011-08-10 15:05:32.969155113 -0400 -+++ a/llvm-2.9/tools/clang/lib/Driver/ToolChains.cpp 2011-08-10 15:06:45.449159147 -0400 -@@ -1449,7 +1449,8 @@ - GccTriple = "i586-suse-linux"; - } - -- const char* GccVersions[] = {"4.5.2", "4.5.1", "4.5", "4.4.5", "4.4.4", -+ const char* GccVersions[] = {"4.6.2", "4.6.1", "4.6", "4.5.3", "4.5.2", -+ "4.5.1", "4.5", "4.4.6", "4.4.5", "4.4.4", - "4.4.3", "4.4", "4.3.4", "4.3.3", "4.3.2", - "4.3", "4.2.4", "4.2.3", "4.2.2", "4.2.1", - "4.2"}; diff --git a/sys-devel/clang/files/clang-3.0-fix_cxx_include_root.patch b/sys-devel/clang/files/clang-3.0-fix_cxx_include_root.patch deleted file mode 100644 index e1beff3..0000000 --- a/sys-devel/clang/files/clang-3.0-fix_cxx_include_root.patch +++ /dev/null @@ -1,21 +0,0 @@ -Bug #387309 - ---- llvm/tools/clang/lib/Driver/ToolChains.cpp.orig 2011-11-09 23:10:04.000000000 +0100 -+++ llvm/tools/clang/lib/Driver/ToolChains.cpp 2011-11-09 23:11:04.000000000 +0100 -@@ -1586,12 +1586,13 @@ - // This is of the form /foo/bar/include/c++/4.5.2/ - if (CxxIncludeRoot.back() == '/') - llvm::sys::path::remove_filename(CxxIncludeRoot); // remove the / -+ llvm::sys::path::remove_filename(CxxIncludeRoot); // remove the g++-v4 -+ llvm::sys::path::remove_filename(CxxIncludeRoot); // remove the include - StringRef Version = llvm::sys::path::filename(CxxIncludeRoot); - llvm::sys::path::remove_filename(CxxIncludeRoot); // remove the version -- llvm::sys::path::remove_filename(CxxIncludeRoot); // remove the c++ -- llvm::sys::path::remove_filename(CxxIncludeRoot); // remove the include -+ llvm::sys::path::remove_filename(CxxIncludeRoot); // remove the ARCH - GccInstallPath = CxxIncludeRoot.str(); -- GccInstallPath.append("/lib/gcc/"); -+ GccInstallPath.append("/"); - GccInstallPath.append(CXX_INCLUDE_ARCH); - GccInstallPath.append("/"); - GccInstallPath.append(Version); diff --git a/sys-devel/clang/files/clang-3.0-freebsd-runtime-gcc-detection.patch b/sys-devel/clang/files/clang-3.0-freebsd-runtime-gcc-detection.patch deleted file mode 100644 index 5c016f5..0000000 --- a/sys-devel/clang/files/clang-3.0-freebsd-runtime-gcc-detection.patch +++ /dev/null @@ -1,20 +0,0 @@ -diff -upNr a/llvm-3.0.src/tools/clang/lib/Driver/ToolChains.cpp b/llvm-3.0.src/tools/clang/lib/Driver/ToolChains.cpp ---- a/llvm-3.0.src/tools/clang/lib/Driver/ToolChains.cpp 2012-05-23 15:45:01.333127000 -0400 -+++ b/llvm-3.0.src/tools/clang/lib/Driver/ToolChains.cpp 2012-05-23 16:16:26.023642076 -0400 -@@ -1215,6 +1215,16 @@ FreeBSD::FreeBSD(const HostInfo &Host, c - } else { - getFilePaths().push_back("/usr/lib"); - } -+ -+ llvm::OwningPtr<llvm::MemoryBuffer> File; -+ if (!llvm::MemoryBuffer::getFile("/etc/env.d/gcc/config-" + getDriver().DefaultHostTriple, File)) -+ { -+ bool Exists; -+ StringRef Version = File.get()->getBuffer().rsplit('-').second.substr(0,5); -+ const std::string GentooPath = "/usr/lib/gcc/" + getDriver().DefaultHostTriple + "/" + Version.str(); -+ if (!llvm::sys::fs::exists(GentooPath + "/crtbegin.o", Exists) && Exists) -+ getFilePaths().push_back(GentooPath); -+ } - } - - Tool &FreeBSD::SelectTool(const Compilation &C, const JobAction &JA, diff --git a/sys-devel/clang/files/clang-3.0-gentoo-binutils-apple.patch b/sys-devel/clang/files/clang-3.0-gentoo-binutils-apple.patch deleted file mode 100644 index 944ccaf..0000000 --- a/sys-devel/clang/files/clang-3.0-gentoo-binutils-apple.patch +++ /dev/null @@ -1,29 +0,0 @@ -http://llvm.org/bugs/show_bug.cgi?id=8339 -https://bugs.gentoo.org/show_bug.cgi?id=395013 -http://llvm.org/viewvc/llvm-project?view=rev&revision=151612 - -Tweak version detection bit to cope with Gentoo's slightly different -output for ld -v. - ---- autoconf/m4/link_options.m4 -+++ autoconf/m4/link_options.m4 -@@ -10,7 +10,7 @@ - - # Check for ld64. - if (echo "$version_string" | grep -q "ld64"); then -- llvm_cv_link_version=$(echo "$version_string" | sed -e "s#.*ld64-\([^ ]*\)#\1#") -+ llvm_cv_link_version=$(echo "$version_string" | sed -e "s#.*ld64-\([^ ]*\)\( (.*)\)\?#\1#") - else - llvm_cv_link_version=$(echo "$version_string" | sed -e "s#[^0-9]*\([0-9.]*\).*#\1#") - fi ---- configure -+++ configure -@@ -7528,7 +7528,7 @@ - - # Check for ld64. - if (echo "$version_string" | grep -q "ld64"); then -- llvm_cv_link_version=$(echo "$version_string" | sed -e "s#.*ld64-\([^ ]*\)#\1#") -+ llvm_cv_link_version=$(echo "$version_string" | sed -e "s#.*ld64-\([^ ]*\)\( (.*)\)\?#\1#") - else - llvm_cv_link_version=$(echo "$version_string" | sed -e "s#[^0-9]*\([0-9.]*\).*#\1#") - fi diff --git a/sys-devel/clang/files/clang-3.0-linux-runtime-gcc-detection.patch b/sys-devel/clang/files/clang-3.0-linux-runtime-gcc-detection.patch deleted file mode 100644 index a1f7ce2..0000000 --- a/sys-devel/clang/files/clang-3.0-linux-runtime-gcc-detection.patch +++ /dev/null @@ -1,43 +0,0 @@ -diff -upNr a/llvm-3.0.src/tools/clang/lib/Driver/ToolChains.cpp b/llvm-3.0.src/tools/clang/lib/Driver/ToolChains.cpp ---- a/llvm-3.0.src/tools/clang/lib/Driver/ToolChains.cpp 2012-05-23 15:39:01.070411000 -0400 -+++ b/llvm-3.0.src/tools/clang/lib/Driver/ToolChains.cpp 2012-05-23 15:39:22.371785000 -0400 -@@ -1382,6 +1382,7 @@ enum LinuxDistro { - DebianSqueeze, - DebianWheezy, - Exherbo, -+ Gentoo, - RHEL4, - RHEL5, - RHEL6, -@@ -1403,6 +1404,10 @@ enum LinuxDistro { - UnknownDistro - }; - -+static bool IsGentoo(enum LinuxDistro Distro) { -+ return Distro == Gentoo; -+} -+ - static bool IsRedhat(enum LinuxDistro Distro) { - return Distro == Fedora13 || Distro == Fedora14 || - Distro == Fedora15 || Distro == FedoraRawhide || -@@ -1433,7 +1438,9 @@ static LinuxDistro DetectLinuxDistro(llv - SmallVector<StringRef, 8> Lines; - Data.split(Lines, "\n"); - for (unsigned int i = 0, s = Lines.size(); i < s; ++ i) { -- if (Lines[i] == "DISTRIB_CODENAME=hardy") -+ if (Lines[i] == "DISTRIB_ID=\"Gentoo\"") -+ return Gentoo; -+ else if (Lines[i] == "DISTRIB_CODENAME=hardy") - return UbuntuHardy; - else if (Lines[i] == "DISTRIB_CODENAME=intrepid") - return UbuntuIntrepid; -@@ -1597,6 +1604,9 @@ Linux::GCCInstallationDetector::GCCInsta - GccInstallPath.append("/"); - GccInstallPath.append(CXX_INCLUDE_ARCH); - GccInstallPath.append("/"); -+ llvm::OwningPtr<llvm::MemoryBuffer> File; -+ if (!llvm::MemoryBuffer::getFile("/etc/env.d/gcc/config-" + D.DefaultHostTriple, File)) -+ Version = File.get()->getBuffer().rsplit('-').second.substr(0,5); - GccInstallPath.append(Version); - GccParentLibPath = GccInstallPath + "/../../.."; - IsValid = true; diff --git a/sys-devel/clang/files/clang-3.0-recognize-amd-k10-enable-sse4a.patch b/sys-devel/clang/files/clang-3.0-recognize-amd-k10-enable-sse4a.patch deleted file mode 100644 index 90f99ab..0000000 --- a/sys-devel/clang/files/clang-3.0-recognize-amd-k10-enable-sse4a.patch +++ /dev/null @@ -1,82 +0,0 @@ ---- llvm.orig/contrib/llvm/tools/clang/lib/Basic/Targets.cpp 2011/10/22 14:08:43 226633 -+++ llvm/contrib/llvm/tools/clang/lib/Basic/Targets.cpp 2011/10/30 22:20:17 226951 -@@ -1282,6 +1282,7 @@ - CK_K8SSE3, - CK_Opteron, - CK_OpteronSSE3, -+ CK_AMDFAM10, - - /// This specification is deprecated and will be removed in the future. - /// Users should prefer \see CK_K8. -@@ -1381,6 +1382,7 @@ - .Case("k8-sse3", CK_K8SSE3) - .Case("opteron", CK_Opteron) - .Case("opteron-sse3", CK_OpteronSSE3) -+ .Case("amdfam10", CK_AMDFAM10) - .Case("x86-64", CK_x86_64) - .Case("geode", CK_Geode) - .Default(CK_Generic); -@@ -1441,6 +1443,7 @@ - case CK_K8SSE3: - case CK_Opteron: - case CK_OpteronSSE3: -+ case CK_AMDFAM10: - case CK_x86_64: - return true; - } -@@ -1459,12 +1462,10 @@ - Features["ssse3"] = false; - Features["sse41"] = false; - Features["sse42"] = false; -+ Features["sse4a"] = false; - Features["aes"] = false; - Features["avx"] = false; - -- // LLVM does not currently recognize this. -- // Features["sse4a"] = false; -- - // FIXME: This *really* should not be here. - - // X86_64 always has SSE2. -@@ -1561,6 +1562,11 @@ - setFeatureEnabled(Features, "sse3", true); - setFeatureEnabled(Features, "3dnowa", true); - break; -+ case CK_AMDFAM10: -+ setFeatureEnabled(Features, "sse3", true); -+ setFeatureEnabled(Features, "sse4a", true); -+ setFeatureEnabled(Features, "3dnowa", true); -+ break; - case CK_C3_2: - setFeatureEnabled(Features, "mmx", true); - setFeatureEnabled(Features, "sse", true); -@@ -1604,6 +1610,8 @@ - else if (Name == "avx") - Features["avx"] = Features["sse"] = Features["sse2"] = Features["sse3"] = - Features["ssse3"] = Features["sse41"] = Features["sse42"] = true; -+ else if (Name == "sse4a") -+ Features["sse4a"] = true; - } else { - if (Name == "mmx") - Features["mmx"] = Features["3dnow"] = Features["3dnowa"] = false; -@@ -1630,6 +1638,8 @@ - Features["aes"] = false; - else if (Name == "avx") - Features["avx"] = false; -+ else if (Name == "sse4a") -+ Features["sse4a"] = false; - } - - return true; -@@ -1826,6 +1836,11 @@ - Builder.defineMacro("__k8__"); - Builder.defineMacro("__tune_k8__"); - break; -+ case CK_AMDFAM10: -+ Builder.defineMacro("__amdfam10"); -+ Builder.defineMacro("__amdfam10__"); -+ Builder.defineMacro("__tune_amdfam10__"); -+ break; - case CK_Geode: - Builder.defineMacro("__geode"); - Builder.defineMacro("__geode__"); diff --git a/sys-devel/clang/files/clang-3.1-gentoo-freebsd-fix-cxx-paths-v2.patch b/sys-devel/clang/files/clang-3.1-gentoo-freebsd-fix-cxx-paths-v2.patch deleted file mode 100644 index 1053bf3..0000000 --- a/sys-devel/clang/files/clang-3.1-gentoo-freebsd-fix-cxx-paths-v2.patch +++ /dev/null @@ -1,188 +0,0 @@ -diff --git a/a/llvm-3.1.src/tools/clang/lib/Driver/ToolChains.cpp b/b/llvm-3.1.src/tools/clang/lib/Driver/ToolChains.cpp -index 1e282f2..1d6835b 100644 ---- a/a/llvm-3.1.src/tools/clang/lib/Driver/ToolChains.cpp -+++ b/b/llvm-3.1.src/tools/clang/lib/Driver/ToolChains.cpp -@@ -2305,6 +2305,162 @@ void Linux::AddClangCXXStdlibIncludeArgs(const ArgList &DriverArgs, - } - } - -+void FreeBSD::AddClangSystemIncludeArgs(const ArgList &DriverArgs, -+ ArgStringList &CC1Args) const { -+ const Driver &D = getDriver(); -+ -+ if (DriverArgs.hasArg(options::OPT_nostdinc)) -+ return; -+ -+ if (!DriverArgs.hasArg(options::OPT_nostdlibinc)) -+ addSystemInclude(DriverArgs, CC1Args, D.SysRoot + "/usr/local/include"); -+ -+ if (!DriverArgs.hasArg(options::OPT_nobuiltininc)) { -+ llvm::sys::Path P(D.ResourceDir); -+ P.appendComponent("include"); -+ addSystemInclude(DriverArgs, CC1Args, P.str()); -+ } -+ -+ if (DriverArgs.hasArg(options::OPT_nostdlibinc)) -+ return; -+ -+ // Check for configure-time C include directories. -+ StringRef CIncludeDirs(C_INCLUDE_DIRS); -+ if (CIncludeDirs != "") { -+ SmallVector<StringRef, 5> dirs; -+ CIncludeDirs.split(dirs, ":"); -+ for (SmallVectorImpl<StringRef>::iterator I = dirs.begin(), E = dirs.end(); -+ I != E; ++I) { -+ StringRef Prefix = llvm::sys::path::is_absolute(*I) ? D.SysRoot : ""; -+ addExternCSystemInclude(DriverArgs, CC1Args, Prefix + *I); -+ } -+ return; -+ } -+ -+ // Lacking those, try to detect the correct set of system includes for the -+ // target triple. -+ -+ // Implement generic Debian multiarch support. -+ const StringRef X86_64MultiarchIncludeDirs[] = { -+ "/usr/include/x86_64-linux-gnu", -+ -+ // FIXME: These are older forms of multiarch. It's not clear that they're -+ // in use in any released version of Debian, so we should consider -+ // removing them. -+ "/usr/include/i686-linux-gnu/64", -+ "/usr/include/i486-linux-gnu/64" -+ }; -+ const StringRef X86MultiarchIncludeDirs[] = { -+ "/usr/include/i386-linux-gnu", -+ -+ // FIXME: These are older forms of multiarch. It's not clear that they're -+ // in use in any released version of Debian, so we should consider -+ // removing them. -+ "/usr/include/x86_64-linux-gnu/32", -+ "/usr/include/i686-linux-gnu", -+ "/usr/include/i486-linux-gnu" -+ }; -+ const StringRef ARMMultiarchIncludeDirs[] = { -+ "/usr/include/arm-linux-gnueabi" -+ }; -+ const StringRef MIPSMultiarchIncludeDirs[] = { -+ "/usr/include/mips-linux-gnu" -+ }; -+ const StringRef MIPSELMultiarchIncludeDirs[] = { -+ "/usr/include/mipsel-linux-gnu" -+ }; -+ const StringRef PPCMultiarchIncludeDirs[] = { -+ "/usr/include/powerpc-linux-gnu" -+ }; -+ const StringRef PPC64MultiarchIncludeDirs[] = { -+ "/usr/include/powerpc64-linux-gnu" -+ }; -+ ArrayRef<StringRef> MultiarchIncludeDirs; -+ if (getTriple().getArch() == llvm::Triple::x86_64) { -+ MultiarchIncludeDirs = X86_64MultiarchIncludeDirs; -+ } else if (getTriple().getArch() == llvm::Triple::x86) { -+ MultiarchIncludeDirs = X86MultiarchIncludeDirs; -+ } else if (getTriple().getArch() == llvm::Triple::arm) { -+ MultiarchIncludeDirs = ARMMultiarchIncludeDirs; -+ } else if (getTriple().getArch() == llvm::Triple::mips) { -+ MultiarchIncludeDirs = MIPSMultiarchIncludeDirs; -+ } else if (getTriple().getArch() == llvm::Triple::mipsel) { -+ MultiarchIncludeDirs = MIPSELMultiarchIncludeDirs; -+ } else if (getTriple().getArch() == llvm::Triple::ppc) { -+ MultiarchIncludeDirs = PPCMultiarchIncludeDirs; -+ } else if (getTriple().getArch() == llvm::Triple::ppc64) { -+ MultiarchIncludeDirs = PPC64MultiarchIncludeDirs; -+ } -+ for (ArrayRef<StringRef>::iterator I = MultiarchIncludeDirs.begin(), -+ E = MultiarchIncludeDirs.end(); -+ I != E; ++I) { -+ if (llvm::sys::fs::exists(D.SysRoot + *I)) { -+ addExternCSystemInclude(DriverArgs, CC1Args, D.SysRoot + *I); -+ break; -+ } -+ } -+ -+ if (getTriple().getOS() == llvm::Triple::RTEMS) -+ return; -+ -+ // Add an include of '/include' directly. This isn't provided by default by -+ // system GCCs, but is often used with cross-compiling GCCs, and harmless to -+ // add even when Clang is acting as-if it were a system compiler. -+ addExternCSystemInclude(DriverArgs, CC1Args, D.SysRoot + "/include"); -+ -+ addExternCSystemInclude(DriverArgs, CC1Args, D.SysRoot + "/usr/include"); -+} -+ -+/// \brief Helper to add the thre variant paths for a libstdc++ installation. -+/*static*/ bool FreeBSD::addLibStdCXXIncludePaths(Twine Base, Twine TargetArchDir, -+ const ArgList &DriverArgs, -+ ArgStringList &CC1Args) { -+ if (!llvm::sys::fs::exists(Base)) -+ return false; -+ addSystemInclude(DriverArgs, CC1Args, Base); -+ addSystemInclude(DriverArgs, CC1Args, Base + "/" + TargetArchDir); -+ addSystemInclude(DriverArgs, CC1Args, Base + "/backward"); -+ return true; -+} -+ -+void FreeBSD::AddClangCXXStdlibIncludeArgs(const ArgList &DriverArgs, -+ ArgStringList &CC1Args) const { -+ if (DriverArgs.hasArg(options::OPT_nostdlibinc) || -+ DriverArgs.hasArg(options::OPT_nostdincxx)) -+ return; -+ -+ // Check if libc++ has been enabled and provide its include paths if so. -+ if (GetCXXStdlibType(DriverArgs) == ToolChain::CST_Libcxx) { -+ // libc++ is always installed at a fixed path on Linux currently. -+ addSystemInclude(DriverArgs, CC1Args, -+ getDriver().SysRoot + "/usr/include/c++/v1"); -+ return; -+ } -+ -+ // We need a detected GCC installation on Linux to provide libstdc++'s -+ // headers. We handled the libc++ case above. -+ if (!GCCInstallation.isValid()) -+ return; -+ -+ // By default, look for the C++ headers in an include directory adjacent to -+ // the lib directory of the GCC installation. Note that this is expect to be -+ // equivalent to '/usr/include/c++/X.Y' in almost all cases. -+ StringRef LibDir = GCCInstallation.getParentLibPath(); -+ StringRef InstallDir = GCCInstallation.getInstallPath(); -+ StringRef Version = GCCInstallation.getVersion(); -+ if (!addLibStdCXXIncludePaths(LibDir + "/../include/c++/" + Version, -+ (GCCInstallation.getTriple().str() + -+ GCCInstallation.getMultiarchSuffix()), -+ DriverArgs, CC1Args)) { -+ // Gentoo is weird and places its headers inside the GCC install, so if the -+ // first attempt to find the headers fails, try this pattern. -+ addLibStdCXXIncludePaths(InstallDir + "/include/g++-v4", -+ (GCCInstallation.getTriple().str() + -+ GCCInstallation.getMultiarchSuffix()), -+ DriverArgs, CC1Args); -+ } -+} -+ - /// DragonFly - DragonFly tool chain which can call as(1) and ld(1) directly. - - DragonFly::DragonFly(const Driver &D, const llvm::Triple& Triple, const ArgList &Args) -diff --git a/a/llvm-3.1.src/tools/clang/lib/Driver/ToolChains.h b/b/llvm-3.1.src/tools/clang/lib/Driver/ToolChains.h -index eaa6be1..bba891e 100644 ---- a/a/llvm-3.1.src/tools/clang/lib/Driver/ToolChains.h -+++ b/b/llvm-3.1.src/tools/clang/lib/Driver/ToolChains.h -@@ -489,6 +489,16 @@ public: - - virtual Tool &SelectTool(const Compilation &C, const JobAction &JA, - const ActionList &Inputs) const; -+ -+ virtual void AddClangSystemIncludeArgs(const ArgList &DriverArgs, -+ ArgStringList &CC1Args) const; -+ virtual void AddClangCXXStdlibIncludeArgs(const ArgList &DriverArgs, -+ ArgStringList &CC1Args) const; -+ -+private: -+ static bool addLibStdCXXIncludePaths(Twine Base, Twine TargetArchDir, -+ const ArgList &DriverArgs, -+ ArgStringList &CC1Args); - }; - - class LLVM_LIBRARY_VISIBILITY NetBSD : public Generic_ELF { diff --git a/sys-devel/clang/files/clang-3.1-gentoo-freebsd-fix-lib-path.patch b/sys-devel/clang/files/clang-3.1-gentoo-freebsd-fix-lib-path.patch deleted file mode 100644 index 702606f..0000000 --- a/sys-devel/clang/files/clang-3.1-gentoo-freebsd-fix-lib-path.patch +++ /dev/null @@ -1,20 +0,0 @@ -This patch causes problem for multilib: GCCInstallation.getInstallPath() is -empty in that case and 'clang -m32 foo.c' will put a -L with nothing after it -but the .o file generated, effectively dropping it. -With recent freebsd-lib versions, it is only needed for c++ with libstdc++, -which is actually broken because clang++ cannot find the headers. it is fine -with clang++ -stdlib=libc++. -aballier@g.o - -diff -upNr a/llvm-3.1.src/tools/clang/lib/Driver/ToolChains.cpp b/llvm-3.1.src/tools/clang/lib/Driver/ToolChains.cpp ---- a/llvm-3.1.src/tools/clang/lib/Driver/ToolChains.cpp 2012-05-24 04:08:48.393073000 -0400 -+++ b/llvm-3.1.src/tools/clang/lib/Driver/ToolChains.cpp 2012-05-24 04:11:38.113153421 -0400 -@@ -1635,6 +1635,8 @@ FreeBSD::FreeBSD(const Driver &D, const - getFilePaths().push_back(getDriver().SysRoot + "/usr/lib32"); - else - getFilePaths().push_back(getDriver().SysRoot + "/usr/lib"); -+ -+ getFilePaths().push_back(GCCInstallation.getInstallPath()); - } - - Tool &FreeBSD::SelectTool(const Compilation &C, const JobAction &JA, diff --git a/sys-devel/clang/files/clang-3.1-gentoo-runtime-gcc-detection-v3.patch b/sys-devel/clang/files/clang-3.1-gentoo-runtime-gcc-detection-v3.patch deleted file mode 100644 index 49f1085..0000000 --- a/sys-devel/clang/files/clang-3.1-gentoo-runtime-gcc-detection-v3.patch +++ /dev/null @@ -1,29 +0,0 @@ -diff -upNr a/llvm-3.1.src/tools/clang/lib/Driver/ToolChains.cpp b/llvm-3.1.src/tools/clang/lib/Driver/ToolChains.cpp ---- a/llvm-3.1.src/tools/clang/lib/Driver/ToolChains.cpp 2012-05-24 03:32:31.593191000 -0400 -+++ b/llvm-3.1.src/tools/clang/lib/Driver/ToolChains.cpp 2012-05-24 03:38:31.733163513 -0400 -@@ -1145,6 +1145,25 @@ Generic_GCC::GCCInstallationDetector::GC - Prefixes.push_back(D.InstalledDir + "/.."); - } - -+ llvm::OwningPtr<llvm::MemoryBuffer> File; -+ for (unsigned k = 0, ke = CandidateTripleAliases.size(); k < ke; ++k) { -+ if (!llvm::MemoryBuffer::getFile(D.SysRoot + "/etc/env.d/gcc/config-" + CandidateTripleAliases[k].str(), File)) -+ { -+ bool Exists; -+ const std::string VersionText = File.get()->getBuffer().rsplit('-').second.substr(0,5).str(); -+ const std::string GentooPath = D.SysRoot + "/usr/lib/gcc/" + CandidateTripleAliases[k].str() + "/" + VersionText; -+ if (!llvm::sys::fs::exists(GentooPath + "/crtbegin.o", Exists) && Exists) -+ { -+ Version = GCCVersion::Parse(VersionText); -+ GCCInstallPath = GentooPath; -+ GCCParentLibPath = GCCInstallPath + "/../../.."; -+ GCCTriple.setTriple(CandidateTripleAliases[k]); -+ IsValid = true; -+ return; -+ } -+ } -+ } -+ - // Loop over the various components which exist and select the best GCC - // installation available. GCC installs are ranked by version number. - Version = GCCVersion::Parse("0.0.0"); diff --git a/sys-devel/clang/files/clang-3.1-increase-parser-recursion-limit.patch b/sys-devel/clang/files/clang-3.1-increase-parser-recursion-limit.patch deleted file mode 100644 index 79f4f9f..0000000 --- a/sys-devel/clang/files/clang-3.1-increase-parser-recursion-limit.patch +++ /dev/null @@ -1,15 +0,0 @@ -Backported from r155737. - -diff --git a/llvm-3.1.src/tools/clang/include/clang/Parse/Parser.h b/llvm-3.1.src/tools/clang/include/clang/Parse/Parser.h -index 0ae5dc8..2a7464f 100644 ---- a/llvm-3.1.src/tools/clang/include/clang/Parse/Parser.h -+++ b/llvm-3.1.src/tools/clang/include/clang/Parse/Parser.h -@@ -451,7 +451,7 @@ private: - } - } - -- enum { MaxDepth = 256 }; -+ enum { MaxDepth = 512 }; - - bool diagnoseOverflow(); - bool diagnoseMissingClose(); diff --git a/sys-devel/clang/metadata.xml b/sys-devel/clang/metadata.xml deleted file mode 100644 index 466ad97..0000000 --- a/sys-devel/clang/metadata.xml +++ /dev/null @@ -1,35 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> -<pkgmetadata> - <maintainer> - <email>clang@gentoo.org</email> - <name>Gentoo clang support project</name> - </maintainer> - <longdescription>The goal of the Clang project is to create a new C, C++, Objective C and Objective C++ front-end for the LLVM compiler. - -Features and Goals - -Some of the goals for the project include the following: - -End-User Features: -Fast compiles and low memory use -Expressive diagnostics -GCC compatibility -Utility and Applications: - -Modular library based architecture -Support diverse clients (refactoring, static analysis, code generation, etc) -Allow tight integration with IDEs -Use the LLVM BSD License -Internal Design and Implementation: - -A real-world, production quality compiler -A simple and hackable code base -A single unified parser for C, Objective C, C++, and Objective C++ -Conformance with C/C++/ObjC and their variants</longdescription> - <use> - <flag name='multitarget'>Build all host targets (default: host only)</flag> - <flag name='static-analyzer'>Install the Clang static analyzer</flag> - <flag name='system-cxx-headers'>By default, clang++ searchs for C++ headers in a series of hardcoded paths. Enabling this flag will force it to use the active gcc profile ones</flag> - </use> -</pkgmetadata> diff --git a/sys-devel/llvm/files/cl-patches/0001-r600-Add-some-intrinsic-definitions.patch b/sys-devel/llvm/files/cl-patches/0001-r600-Add-some-intrinsic-definitions.patch deleted file mode 100644 index 9d99c9c..0000000 --- a/sys-devel/llvm/files/cl-patches/0001-r600-Add-some-intrinsic-definitions.patch +++ /dev/null @@ -1,64 +0,0 @@ -From e25389b66b5ced3a2b5461077dcc9a505d334e3d Mon Sep 17 00:00:00 2001 -From: Tom Stellard <thomas.stellard@amd.com> -Date: Tue, 13 Mar 2012 14:12:21 -0400 -Subject: [PATCH 1/2] r600: Add some intrinsic definitions - ---- - include/llvm/Intrinsics.td | 1 + - include/llvm/IntrinsicsR600.td | 35 +++++++++++++++++++++++++++++++++++ - 2 files changed, 36 insertions(+), 0 deletions(-) - create mode 100644 include/llvm/IntrinsicsR600.td - -diff --git a/include/llvm/Intrinsics.td b/include/llvm/Intrinsics.td -index 069f907..e90dd85 100644 ---- a/include/llvm/Intrinsics.td -+++ b/include/llvm/Intrinsics.td -@@ -441,3 +441,4 @@ include "llvm/IntrinsicsCellSPU.td" - include "llvm/IntrinsicsXCore.td" - include "llvm/IntrinsicsPTX.td" - include "llvm/IntrinsicsHexagon.td" -+include "llvm/IntrinsicsR600.td" -diff --git a/include/llvm/IntrinsicsR600.td b/include/llvm/IntrinsicsR600.td -new file mode 100644 -index 0000000..789fecb ---- /dev/null -+++ b/include/llvm/IntrinsicsR600.td -@@ -0,0 +1,35 @@ -+//===- IntrinsicsR600.td - Defines R600 intrinsics ---------*- tablegen -*-===// -+// -+// The LLVM Compiler Infrastructure -+// -+// This file is distributed under the University of Illinois Open Source -+// License. See LICENSE.TXT for details. -+// -+//===----------------------------------------------------------------------===// -+// -+// This file defines all of the R600-specific intrinsics. -+// -+//===----------------------------------------------------------------------===// -+// -+// Authors: Tom Stellard <thomas.stellard@amd.com> -+// -+ -+let TargetPrefix = "r600" in { -+ -+class R600ReadPreloadRegisterIntrinsic<string name> -+ : Intrinsic<[llvm_i32_ty], [], [IntrNoMem]>, -+ GCCBuiltin<name>; -+ -+multiclass R600ReadPreloadRegisterIntrinsic_xyz<string prefix> { -+ def _x : R600ReadPreloadRegisterIntrinsic<!strconcat(prefix, "_x")>; -+ def _y : R600ReadPreloadRegisterIntrinsic<!strconcat(prefix, "_y")>; -+ def _z : R600ReadPreloadRegisterIntrinsic<!strconcat(prefix, "_z")>; -+} -+ -+defm int_r600_read_ngroups : R600ReadPreloadRegisterIntrinsic_xyz < -+ "__builtin_r600_read_ngroups">; -+defm int_r600_read_tgid : R600ReadPreloadRegisterIntrinsic_xyz < -+ "__builtin_r600_read_tgid">; -+defm int_r600_read_tidig : R600ReadPreloadRegisterIntrinsic_xyz < -+ "__builtin_r600_read_tidig">; -+} // End TargetPrefix = "r600" --- -1.7.7.6 - diff --git a/sys-devel/llvm/files/cl-patches/0002-r600-Add-get_global_size-and-get_local_size-intrinsi.patch b/sys-devel/llvm/files/cl-patches/0002-r600-Add-get_global_size-and-get_local_size-intrinsi.patch deleted file mode 100644 index db176dd..0000000 --- a/sys-devel/llvm/files/cl-patches/0002-r600-Add-get_global_size-and-get_local_size-intrinsi.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 17667fa3450470f7c89fc2ba4631d908cf510749 Mon Sep 17 00:00:00 2001 -From: Tom Stellard <thomas.stellard@amd.com> -Date: Wed, 14 Mar 2012 11:19:35 -0400 -Subject: [PATCH 2/2] r600: Add get_global_size and get_local_size intrinsics - ---- - include/llvm/IntrinsicsR600.td | 4 ++++ - 1 files changed, 4 insertions(+), 0 deletions(-) - -diff --git a/include/llvm/IntrinsicsR600.td b/include/llvm/IntrinsicsR600.td -index 789fecb..0473acb 100644 ---- a/include/llvm/IntrinsicsR600.td -+++ b/include/llvm/IntrinsicsR600.td -@@ -26,6 +26,10 @@ multiclass R600ReadPreloadRegisterIntrinsic_xyz<string prefix> { - def _z : R600ReadPreloadRegisterIntrinsic<!strconcat(prefix, "_z")>; - } - -+defm int_r600_read_global_size : R600ReadPreloadRegisterIntrinsic_xyz < -+ "__builtin_r600_read_global_size">; -+defm int_r600_read_local_size : R600ReadPreloadRegisterIntrinsic_xyz < -+ "__builtin_r600_read_local_size">; - defm int_r600_read_ngroups : R600ReadPreloadRegisterIntrinsic_xyz < - "__builtin_r600_read_ngroups">; - defm int_r600_read_tgid : R600ReadPreloadRegisterIntrinsic_xyz < --- -1.7.7.6 - diff --git a/sys-devel/llvm/files/clang-3.1-gentoo-runtime-gcc-detection-v3.patch b/sys-devel/llvm/files/clang-3.1-gentoo-runtime-gcc-detection-v3.patch deleted file mode 100644 index 49f1085..0000000 --- a/sys-devel/llvm/files/clang-3.1-gentoo-runtime-gcc-detection-v3.patch +++ /dev/null @@ -1,29 +0,0 @@ -diff -upNr a/llvm-3.1.src/tools/clang/lib/Driver/ToolChains.cpp b/llvm-3.1.src/tools/clang/lib/Driver/ToolChains.cpp ---- a/llvm-3.1.src/tools/clang/lib/Driver/ToolChains.cpp 2012-05-24 03:32:31.593191000 -0400 -+++ b/llvm-3.1.src/tools/clang/lib/Driver/ToolChains.cpp 2012-05-24 03:38:31.733163513 -0400 -@@ -1145,6 +1145,25 @@ Generic_GCC::GCCInstallationDetector::GC - Prefixes.push_back(D.InstalledDir + "/.."); - } - -+ llvm::OwningPtr<llvm::MemoryBuffer> File; -+ for (unsigned k = 0, ke = CandidateTripleAliases.size(); k < ke; ++k) { -+ if (!llvm::MemoryBuffer::getFile(D.SysRoot + "/etc/env.d/gcc/config-" + CandidateTripleAliases[k].str(), File)) -+ { -+ bool Exists; -+ const std::string VersionText = File.get()->getBuffer().rsplit('-').second.substr(0,5).str(); -+ const std::string GentooPath = D.SysRoot + "/usr/lib/gcc/" + CandidateTripleAliases[k].str() + "/" + VersionText; -+ if (!llvm::sys::fs::exists(GentooPath + "/crtbegin.o", Exists) && Exists) -+ { -+ Version = GCCVersion::Parse(VersionText); -+ GCCInstallPath = GentooPath; -+ GCCParentLibPath = GCCInstallPath + "/../../.."; -+ GCCTriple.setTriple(CandidateTripleAliases[k]); -+ IsValid = true; -+ return; -+ } -+ } -+ } -+ - // Loop over the various components which exist and select the best GCC - // installation available. GCC installs are ranked by version number. - Version = GCCVersion::Parse("0.0.0"); diff --git a/sys-devel/llvm/files/clang-3.3-gcc-header-path.patch b/sys-devel/llvm/files/clang-3.3-gcc-header-path.patch deleted file mode 100644 index dc9a4f7..0000000 --- a/sys-devel/llvm/files/clang-3.3-gcc-header-path.patch +++ /dev/null @@ -1,90 +0,0 @@ -Backport handling of 'g++-vX.Y' header location. - -Fixes: https://bugs.gentoo.org/show_bug.cgi?id=487584 ---- - tools/clang/lib/Driver/ToolChains.cpp | 20 ++++++++++++-------- - tools/clang/lib/Driver/ToolChains.h | 3 +++ - 2 files changed, 15 insertions(+), 8 deletions(-) - -diff --git a/tools/clang/lib/Driver/ToolChains.cpp b/tools/clang/lib/Driver/ToolChains.cpp -index 7c9e9c0..e38d42d 100644 ---- a/tools/clang/lib/Driver/ToolChains.cpp -+++ b/tools/clang/lib/Driver/ToolChains.cpp -@@ -917,17 +917,19 @@ Darwin_Generic_GCC::ComputeEffectiveClangTriple(const ArgList &Args, - /// This is the primary means of forming GCCVersion objects. - /*static*/ - Generic_GCC::GCCVersion Linux::GCCVersion::Parse(StringRef VersionText) { -- const GCCVersion BadVersion = { VersionText.str(), -1, -1, -1, "" }; -+ const GCCVersion BadVersion = { VersionText.str(), -1, -1, -1, "", "", "" }; - std::pair<StringRef, StringRef> First = VersionText.split('.'); - std::pair<StringRef, StringRef> Second = First.second.split('.'); - -- GCCVersion GoodVersion = { VersionText.str(), -1, -1, -1, "" }; -+ GCCVersion GoodVersion = { VersionText.str(), -1, -1, -1, "", "", "" }; - if (First.first.getAsInteger(10, GoodVersion.Major) || - GoodVersion.Major < 0) - return BadVersion; -+ GoodVersion.MajorStr = First.first.str(); - if (Second.first.getAsInteger(10, GoodVersion.Minor) || - GoodVersion.Minor < 0) - return BadVersion; -+ GoodVersion.MinorStr = Second.first.str(); - - // First look for a number prefix and parse that if present. Otherwise just - // stash the entire patch string in the suffix, and leave the number -@@ -945,7 +947,7 @@ Generic_GCC::GCCVersion Linux::GCCVersion::Parse(StringRef VersionText) { - if (PatchText.slice(0, EndNumber).getAsInteger(10, GoodVersion.Patch) || - GoodVersion.Patch < 0) - return BadVersion; -- GoodVersion.PatchSuffix = PatchText.substr(EndNumber).str(); -+ GoodVersion.PatchSuffix = PatchText.substr(EndNumber); - } - } - -@@ -2590,11 +2592,11 @@ void Linux::AddClangCXXStdlibIncludeArgs(const ArgList &DriverArgs, - // equivalent to '/usr/include/c++/X.Y' in almost all cases. - StringRef LibDir = GCCInstallation.getParentLibPath(); - StringRef InstallDir = GCCInstallation.getInstallPath(); -- StringRef Version = GCCInstallation.getVersion().Text; - StringRef TripleStr = GCCInstallation.getTriple().str(); -+ const GCCVersion &Version = GCCInstallation.getVersion(); - - if (addLibStdCXXIncludePaths(LibDir.str() + "/../include", -- "/c++/" + Version.str(), -+ "/c++/" + Version.Text, - TripleStr, - GCCInstallation.getMultiarchSuffix(), - DriverArgs, CC1Args)) -@@ -2602,10 +2604,12 @@ void Linux::AddClangCXXStdlibIncludeArgs(const ArgList &DriverArgs, - - const std::string IncludePathCandidates[] = { - // Gentoo is weird and places its headers inside the GCC install, so if the -- // first attempt to find the headers fails, try this pattern. -- InstallDir.str() + "/include/g++-v4", -+ // first attempt to find the headers fails, try these patterns. -+ InstallDir.str() + "/include/g++-v" + Version.MajorStr + "." + -+ Version.MinorStr, -+ InstallDir.str() + "/include/g++-v" + Version.MajorStr, - // Android standalone toolchain has C++ headers in yet another place. -- LibDir.str() + "/../" + TripleStr.str() + "/include/c++/" + Version.str(), -+ LibDir.str() + "/../" + TripleStr.str() + "/include/c++/" + Version.Text, - // Freescale SDK C++ headers are directly in <sysroot>/usr/include/c++, - // without a subdirectory corresponding to the gcc version. - LibDir.str() + "/../include/c++", -diff --git a/tools/clang/lib/Driver/ToolChains.h b/tools/clang/lib/Driver/ToolChains.h -index 3afd8dd..04cf467 100644 ---- a/tools/clang/lib/Driver/ToolChains.h -+++ b/tools/clang/lib/Driver/ToolChains.h -@@ -48,6 +48,9 @@ protected: - /// \brief The parsed major, minor, and patch numbers. - int Major, Minor, Patch; - -+ /// \brief The text of the parsed major, and major+minor versions. -+ std::string MajorStr, MinorStr; -+ - /// \brief Any textual suffix on the patch number. - std::string PatchSuffix; - --- -1.8.3.2 - diff --git a/sys-devel/llvm/files/clang-3.3-gentoo-install.patch b/sys-devel/llvm/files/clang-3.3-gentoo-install.patch deleted file mode 100644 index 5519fbc..0000000 --- a/sys-devel/llvm/files/clang-3.3-gentoo-install.patch +++ /dev/null @@ -1,71 +0,0 @@ -From 1a539a8868070e49966c6b5f5e4b9f1257acd7dc Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <gentoo@mgorny.alt.pl> -Date: Fri, 19 Jul 2013 10:23:57 +0200 -Subject: [PATCH] clang gentoo install - ---- - tools/clang/lib/Driver/Tools.cpp | 4 ++-- - tools/clang/tools/scan-build/scan-build | 4 ++-- - tools/clang/tools/scan-view/scan-view | 2 +- - 3 files changed, 5 insertions(+), 5 deletions(-) - -diff --git a/tools/clang/lib/Driver/Tools.cpp b/tools/clang/lib/Driver/Tools.cpp -index e014980..6e60513 100644 ---- a/tools/clang/lib/Driver/Tools.cpp -+++ b/tools/clang/lib/Driver/Tools.cpp -@@ -219,7 +219,7 @@ static void addProfileRT(const ToolChain &TC, const ArgList &Args, - // libprofile_rt.so. We used to use the -l:libprofile_rt.a syntax, but that is - // not supported by old linkers. - std::string ProfileRT = -- std::string(TC.getDriver().Dir) + "/../lib/libprofile_rt.a"; -+ "-l:libprofile_rt.a"; - - CmdArgs.push_back(Args.MakeArgString(ProfileRT)); - } -@@ -6177,7 +6177,7 @@ void gnutools::Link::ConstructJob(Compilation &C, const JobAction &JA, - // forward. - if (D.IsUsingLTO(Args) || Args.hasArg(options::OPT_use_gold_plugin)) { - CmdArgs.push_back("-plugin"); -- std::string Plugin = ToolChain.getDriver().Dir + "/../lib/LLVMgold.so"; -+ std::string Plugin = ToolChain.getDriver().Dir + "/../@libdir@/LLVMgold.so"; - CmdArgs.push_back(Args.MakeArgString(Plugin)); - - // Try to pass driver level flags relevant to LTO code generation down to -diff --git a/tools/clang/tools/scan-build/scan-build b/tools/clang/tools/scan-build/scan-build -index 22d5289..dcb4822 100755 ---- a/tools/clang/tools/scan-build/scan-build -+++ b/tools/clang/tools/scan-build/scan-build -@@ -410,7 +410,7 @@ sub CopyFiles { - - my $Dir = shift; - -- my $JS = Cwd::realpath("$RealBin/sorttable.js"); -+ my $JS = Cwd::realpath("@EPREFIX@/usr/share/llvm/sorttable.js"); - - DieDiag("Cannot find 'sorttable.js'.\n") - if (! -r $JS); -@@ -420,7 +420,7 @@ sub CopyFiles { - DieDiag("Could not copy 'sorttable.js' to '$Dir'.\n") - if (! -r "$Dir/sorttable.js"); - -- my $CSS = Cwd::realpath("$RealBin/scanview.css"); -+ my $CSS = Cwd::realpath("@EPREFIX@/usr/share/llvm/scanview.css"); - - DieDiag("Cannot find 'scanview.css'.\n") - if (! -r $CSS); -diff --git a/tools/clang/tools/scan-view/scan-view b/tools/clang/tools/scan-view/scan-view -index fb27da6..1f8ddb8 100755 ---- a/tools/clang/tools/scan-view/scan-view -+++ b/tools/clang/tools/scan-view/scan-view -@@ -54,7 +54,7 @@ def start_browser(port, options): - webbrowser.open(url) - - def run(port, options, root): -- import ScanView -+ from clang import ScanView - try: - print 'Starting scan-view at: http://%s:%d'%(options.host, - port) --- -1.8.3.2 - diff --git a/sys-devel/llvm/files/clang-3.4-darwin_build_fix.patch b/sys-devel/llvm/files/clang-3.4-darwin_build_fix.patch deleted file mode 100644 index 113b04b..0000000 --- a/sys-devel/llvm/files/clang-3.4-darwin_build_fix.patch +++ /dev/null @@ -1,47 +0,0 @@ -Our (gcc/binutils) toolchain doesn't do ARM targets, hence we will get -"unable to interface with target machine" errors while building if we -attempt to. Disable those targets. - -Patch by Reza Jelveh from -https://github.com/fishman/timebomb-gentoo-osx-overlay/blob/master/sys-devel/llvm/files/llvm-3.4-fix_darwin_build.patch - ---- a/projects/compiler-rt/make/platform/clang_darwin_embedded.mk -+++ b/projects/compiler-rt/make/platform/clang_darwin_embedded.mk -@@ -27,20 +27,20 @@ UniversalArchs := - # Soft-float version of the runtime. No floating-point instructions will be used - # and the ABI (out of necessity) passes floating values in normal registers: - # non-VFP variant of the AAPCS. --Configs += soft_static --UniversalArchs.soft_static := armv6m armv7m armv7em armv7 -+# Configs += soft_static -+# UniversalArchs.soft_static := armv6m armv7m armv7em armv7 - - # Hard-float version of the runtime. On ARM VFP instructions and registers are - # allowed, and floating point values get passed in them. VFP variant of the - # AAPCS. - Configs += hard_static --UniversalArchs.hard_static := armv7em armv7 i386 x86_64 -+UniversalArchs.hard_static := i386 x86_64 - --Configs += soft_pic --UniversalArchs.soft_pic := armv6m armv7m armv7em armv7 -+# Configs += soft_pic -+# UniversalArchs.soft_pic := armv6m armv7m armv7em armv7 - - Configs += hard_pic --UniversalArchs.hard_pic := armv7em armv7 i386 x86_64 -+UniversalArchs.hard_pic := i386 x86_64 - - CFLAGS := -Wall -Werror -Oz -fomit-frame-pointer -ffreestanding - ---- a/tools/clang/runtime/compiler-rt/Makefile -+++ b/tools/clang/runtime/compiler-rt/Makefile -@@ -85,7 +85,7 @@ RuntimeLibrary.darwin.Configs := \ - profile_osx.a profile_ios.a \ - ubsan_osx.a - RuntimeLibrary.darwin_embedded.Configs := \ -- soft_static.a hard_static.a soft_pic.a hard_pic.a -+ hard_static.a hard_pic.a - - # Support building compiler-rt with relocatable SDKs. - # diff --git a/sys-devel/llvm/files/clang-3.4-darwin_prefix-include-paths.patch b/sys-devel/llvm/files/clang-3.4-darwin_prefix-include-paths.patch deleted file mode 100644 index f5f1d9e..0000000 --- a/sys-devel/llvm/files/clang-3.4-darwin_prefix-include-paths.patch +++ /dev/null @@ -1,18 +0,0 @@ ---- tools/clang/lib/Frontend/InitHeaderSearch.cpp -+++ tools/clang/lib/Frontend/InitHeaderSearch.cpp -@@ -233,6 +233,7 @@ - case llvm::Triple::Bitrig: - break; - default: -+ AddPath("@GENTOO_PORTAGE_EPREFIX@/usr/include", System, false); - // FIXME: temporary hack: hard-coded paths. - AddPath("/usr/local/include", System, false); - break; -@@ -505,6 +506,7 @@ - // Add the default framework include paths on Darwin. - if (HSOpts.UseStandardSystemIncludes) { - if (triple.isOSDarwin()) { -+ AddPath("@GENTOO_PORTAGE_EPREFIX@/Frameworks", System, true); - AddPath("/System/Library/Frameworks", System, true); - AddPath("/Library/Frameworks", System, true); - } diff --git a/sys-devel/llvm/files/clang-3.4-gentoo-install.patch b/sys-devel/llvm/files/clang-3.4-gentoo-install.patch deleted file mode 100644 index 0a1d9eb..0000000 --- a/sys-devel/llvm/files/clang-3.4-gentoo-install.patch +++ /dev/null @@ -1,80 +0,0 @@ -From a12fc090b3b43fe25c7de50c09782611e3834aeb Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> -Date: Sat, 14 Jun 2014 19:35:33 +0200 -Subject: [PATCH] clang gentoo fixes - ---- - tools/clang/lib/Driver/Tools.cpp | 6 +++--- - tools/clang/tools/scan-build/scan-build | 4 ++-- - tools/clang/tools/scan-view/scan-view | 2 +- - 3 files changed, 6 insertions(+), 6 deletions(-) - -diff --git a/tools/clang/lib/Driver/Tools.cpp b/tools/clang/lib/Driver/Tools.cpp -index b013eb5..dbbcacb 100644 ---- a/tools/clang/lib/Driver/Tools.cpp -+++ b/tools/clang/lib/Driver/Tools.cpp -@@ -222,7 +222,7 @@ static void addProfileRT(const ToolChain &TC, const ArgList &Args, - // libprofile_rt.so. We used to use the -l:libprofile_rt.a syntax, but that is - // not supported by old linkers. - std::string ProfileRT = -- std::string(TC.getDriver().Dir) + "/../lib/libprofile_rt.a"; -+ "-l:libprofile_rt.a"; - - CmdArgs.push_back(Args.MakeArgString(ProfileRT)); - } -@@ -5911,7 +5911,7 @@ void freebsd::Link::ConstructJob(Compilation &C, const JobAction &JA, - // forward. - if (D.IsUsingLTO(Args)) { - CmdArgs.push_back("-plugin"); -- std::string Plugin = ToolChain.getDriver().Dir + "/../lib/LLVMgold.so"; -+ std::string Plugin = ToolChain.getDriver().Dir + "/../@libdir@/LLVMgold.so"; - CmdArgs.push_back(Args.MakeArgString(Plugin)); - - // Try to pass driver level flags relevant to LTO code generation down to -@@ -6534,7 +6534,7 @@ void gnutools::Link::ConstructJob(Compilation &C, const JobAction &JA, - // forward. - if (D.IsUsingLTO(Args)) { - CmdArgs.push_back("-plugin"); -- std::string Plugin = ToolChain.getDriver().Dir + "/../lib/LLVMgold.so"; -+ std::string Plugin = ToolChain.getDriver().Dir + "/../@libdir@/LLVMgold.so"; - CmdArgs.push_back(Args.MakeArgString(Plugin)); - - // Try to pass driver level flags relevant to LTO code generation down to -diff --git a/tools/clang/tools/scan-build/scan-build b/tools/clang/tools/scan-build/scan-build -index 0f119f6..58f78d9 100755 ---- a/tools/clang/tools/scan-build/scan-build -+++ b/tools/clang/tools/scan-build/scan-build -@@ -419,7 +419,7 @@ sub CopyFiles { - - my $Dir = shift; - -- my $JS = Cwd::realpath("$RealBin/sorttable.js"); -+ my $JS = Cwd::realpath("@EPREFIX@/usr/share/llvm/sorttable.js"); - - DieDiag("Cannot find 'sorttable.js'.\n") - if (! -r $JS); -@@ -429,7 +429,7 @@ sub CopyFiles { - DieDiag("Could not copy 'sorttable.js' to '$Dir'.\n") - if (! -r "$Dir/sorttable.js"); - -- my $CSS = Cwd::realpath("$RealBin/scanview.css"); -+ my $CSS = Cwd::realpath("@EPREFIX@/usr/share/llvm/scanview.css"); - - DieDiag("Cannot find 'scanview.css'.\n") - if (! -r $CSS); -diff --git a/tools/clang/tools/scan-view/scan-view b/tools/clang/tools/scan-view/scan-view -index fb27da6..1f8ddb8 100755 ---- a/tools/clang/tools/scan-view/scan-view -+++ b/tools/clang/tools/scan-view/scan-view -@@ -54,7 +54,7 @@ def start_browser(port, options): - webbrowser.open(url) - - def run(port, options, root): -- import ScanView -+ from clang import ScanView - try: - print 'Starting scan-view at: http://%s:%d'%(options.host, - port) --- -2.0.0 - diff --git a/sys-devel/llvm/files/clang-3.5-gentoo-install.patch b/sys-devel/llvm/files/clang-3.5-gentoo-install.patch deleted file mode 100644 index 5d4261d..0000000 --- a/sys-devel/llvm/files/clang-3.5-gentoo-install.patch +++ /dev/null @@ -1,57 +0,0 @@ ---- - tools/clang/lib/Driver/Tools.cpp | 2 +- - tools/clang/tools/scan-build/scan-build | 4 ++-- - tools/clang/tools/scan-view/scan-view | 2 +- - 3 files changed, 4 insertions(+), 4 deletions(-) - -diff --git a/tools/clang/lib/Driver/Tools.cpp b/tools/clang/lib/Driver/Tools.cpp -index 187ed38..55bcd99 100644 ---- a/tools/clang/lib/Driver/Tools.cpp -+++ b/tools/clang/lib/Driver/Tools.cpp -@@ -1404,7 +1404,7 @@ static void AddGoldPlugin(const ToolChain &ToolChain, const ArgList &Args, - // as gold requires -plugin to come before any -plugin-opt that -Wl might - // forward. - CmdArgs.push_back("-plugin"); -- std::string Plugin = ToolChain.getDriver().Dir + "/../lib/LLVMgold.so"; -+ std::string Plugin = ToolChain.getDriver().Dir + "/../@libdir@/LLVMgold.so"; - CmdArgs.push_back(Args.MakeArgString(Plugin)); - - // Try to pass driver level flags relevant to LTO code generation down to -diff --git a/tools/clang/tools/scan-build/scan-build b/tools/clang/tools/scan-build/scan-build -index 0f119f6..58f78d9 100755 ---- a/tools/clang/tools/scan-build/scan-build -+++ b/tools/clang/tools/scan-build/scan-build -@@ -419,7 +419,7 @@ - - my $Dir = shift; - -- my $JS = Cwd::realpath("$RealBin/sorttable.js"); -+ my $JS = Cwd::realpath("@EPREFIX@/usr/share/llvm/sorttable.js"); - - DieDiag("Cannot find 'sorttable.js'.\n") - if (! -r $JS); -@@ -429,7 +429,7 @@ - DieDiag("Could not copy 'sorttable.js' to '$Dir'.\n") - if (! -r "$Dir/sorttable.js"); - -- my $CSS = Cwd::realpath("$RealBin/scanview.css"); -+ my $CSS = Cwd::realpath("@EPREFIX@/usr/share/llvm/scanview.css"); - - DieDiag("Cannot find 'scanview.css'.\n") - if (! -r $CSS); -diff --git a/tools/clang/tools/scan-view/scan-view b/tools/clang/tools/scan-view/scan-view -index fb27da6..1f8ddb8 100755 ---- a/tools/clang/tools/scan-view/scan-view -+++ b/tools/clang/tools/scan-view/scan-view -@@ -54,7 +54,7 @@ def start_browser(port, options): - webbrowser.open(url) - - def run(port, options, root): -- import ScanView -+ from clang import ScanView - try: - print 'Starting scan-view at: http://%s:%d'%(options.host, - port) --- -1.8.4.4 - diff --git a/sys-devel/llvm/files/clang-3.5-gentoo-runtime-gcc-detection-v3.patch b/sys-devel/llvm/files/clang-3.5-gentoo-runtime-gcc-detection-v3.patch deleted file mode 100644 index 1f81af0..0000000 --- a/sys-devel/llvm/files/clang-3.5-gentoo-runtime-gcc-detection-v3.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 916572e1243633ddf913c8f32771a3a7f70fd853 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> -Date: Fri, 5 Sep 2014 16:49:35 +0200 -Subject: [PATCH] Support obtaining active toolchain from gcc-config. - ---- - tools/clang/lib/Driver/ToolChains.cpp | 19 +++++++++++++++++++ - 1 file changed, 19 insertions(+) - -diff --git a/tools/clang/lib/Driver/ToolChains.cpp b/tools/clang/lib/Driver/ToolChains.cpp -index b46f69d..2d4374d 100644 ---- a/tools/clang/lib/Driver/ToolChains.cpp -+++ b/tools/clang/lib/Driver/ToolChains.cpp -@@ -1253,6 +1253,25 @@ Generic_GCC::GCCInstallationDetector::init( - Prefixes.push_back("/usr"); - } - -+ for (unsigned k = 0, ke = CandidateTripleAliases.size(); k < ke; ++k) { -+ llvm::ErrorOr<std::unique_ptr<llvm::MemoryBuffer>> File = -+ llvm::MemoryBuffer::getFile(D.SysRoot + "/etc/env.d/gcc/config-" + CandidateTripleAliases[k].str()); -+ if (File) -+ { -+ const std::string VersionText = File.get()->getBuffer().rsplit('-').second.substr(0,5).str(); -+ const std::string GentooPath = D.SysRoot + "/usr/lib/gcc/" + CandidateTripleAliases[k].str() + "/" + VersionText; -+ if (llvm::sys::fs::exists(GentooPath + "/crtbegin.o")) -+ { -+ Version = GCCVersion::Parse(VersionText); -+ GCCInstallPath = GentooPath; -+ GCCParentLibPath = GCCInstallPath + "/../../.."; -+ GCCTriple.setTriple(CandidateTripleAliases[k]); -+ IsValid = true; -+ return; -+ } -+ } -+ } -+ - // Loop over the various components which exist and select the best GCC - // installation available. GCC installs are ranked by version number. - Version = GCCVersion::Parse("0.0.0"); --- -2.1.0 - diff --git a/sys-devel/llvm/files/clang-3.6-gentoo-install.patch b/sys-devel/llvm/files/clang-3.6-gentoo-install.patch deleted file mode 100644 index 6d76ba9..0000000 --- a/sys-devel/llvm/files/clang-3.6-gentoo-install.patch +++ /dev/null @@ -1,48 +0,0 @@ ---- - tools/clang/lib/Driver/Tools.cpp | 2 +- - tools/clang/tools/scan-build/scan-build | 4 ++-- - tools/clang/tools/scan-view/scan-view | 2 +- - 3 files changed, 4 insertions(+), 4 deletions(-) - -diff --git a/tools/clang/lib/Driver/Tools.cpp b/tools/clang/lib/Driver/Tools.cpp -index 187ed38..55bcd99 100644 ---- a/tools/clang/lib/Driver/Tools.cpp -+++ b/tools/clang/lib/Driver/Tools.cpp -diff --git a/tools/clang/tools/scan-build/scan-build b/tools/clang/tools/scan-build/scan-build -index 0f119f6..58f78d9 100755 ---- a/tools/clang/tools/scan-build/scan-build -+++ b/tools/clang/tools/scan-build/scan-build -@@ -419,7 +419,7 @@ - - my $Dir = shift; - -- my $JS = Cwd::realpath("$RealBin/sorttable.js"); -+ my $JS = Cwd::realpath("@EPREFIX@/usr/share/llvm/sorttable.js"); - - DieDiag("Cannot find 'sorttable.js'.\n") - if (! -r $JS); -@@ -429,7 +429,7 @@ - DieDiag("Could not copy 'sorttable.js' to '$Dir'.\n") - if (! -r "$Dir/sorttable.js"); - -- my $CSS = Cwd::realpath("$RealBin/scanview.css"); -+ my $CSS = Cwd::realpath("@EPREFIX@/usr/share/llvm/scanview.css"); - - DieDiag("Cannot find 'scanview.css'.\n") - if (! -r $CSS); -diff --git a/tools/clang/tools/scan-view/scan-view b/tools/clang/tools/scan-view/scan-view -index fb27da6..1f8ddb8 100755 ---- a/tools/clang/tools/scan-view/scan-view -+++ b/tools/clang/tools/scan-view/scan-view -@@ -54,7 +54,7 @@ def start_browser(port, options): - webbrowser.open(url) - - def run(port, options, root): -- import ScanView -+ from clang import ScanView - try: - print 'Starting scan-view at: http://%s:%d'%(options.host, - port) --- -1.8.4.4 - diff --git a/sys-devel/llvm/files/llvm-2.6-commandguide-nops.patch b/sys-devel/llvm/files/llvm-2.6-commandguide-nops.patch deleted file mode 100644 index 583fdf9..0000000 --- a/sys-devel/llvm/files/llvm-2.6-commandguide-nops.patch +++ /dev/null @@ -1,30 +0,0 @@ ---- docs/CommandGuide/Makefile.orig 2009-10-26 16:54:33.000000000 +0100 -+++ docs/CommandGuide/Makefile 2009-10-26 17:32:03.000000000 +0100 -@@ -19,7 +19,7 @@ - DST_PS_DIR=ps/ - - # If we are in BUILD_FOR_WEBSITE mode, default to the all target. --all:: html man ps -+all:: html man - - clean: - rm -f pod2htm*.*~~ $(HTML) $(MAN) $(PS) -@@ -81,7 +81,7 @@ - MAN_DIR := $(PROJ_mandir)/man1 - PS_DIR := $(PROJ_docsdir)/ps - --install-local:: $(HTML) $(INSTALL_MANS) $(PS) -+install-local:: $(HTML) $(INSTALL_MANS) - $(Echo) Installing HTML CommandGuide Documentation - $(Verb) $(MKDIR) $(HTML_DIR) - $(Verb) $(DataInstall) $(HTML) $(HTML_DIR) -@@ -90,9 +90,6 @@ - $(Echo) Installing MAN CommandGuide Documentation - $(Verb) $(MKDIR) $(MAN_DIR) - $(Verb) $(DataInstall) $(INSTALL_MANS) $(MAN_DIR) -- $(Echo) Installing PS CommandGuide Documentation -- $(Verb) $(MKDIR) $(PS_DIR) -- $(Verb) $(DataInstall) $(PS) $(PS_DIR) - - uninstall-local:: - $(Echo) Uninstalling CommandGuide Documentation diff --git a/sys-devel/llvm/files/llvm-2.7-nodoctargz.patch b/sys-devel/llvm/files/llvm-2.7-nodoctargz.patch deleted file mode 100644 index cce09eb..0000000 --- a/sys-devel/llvm/files/llvm-2.7-nodoctargz.patch +++ /dev/null @@ -1,47 +0,0 @@ ---- docs/Makefile.orig 2010-04-26 15:00:58.000000000 +0200 -+++ docs/Makefile 2010-04-26 15:03:12.000000000 +0200 -@@ -46,13 +46,12 @@ - # 'make generated BUILD_FOR_WEBSITE=1' - generated:: doxygen ocamldoc - --install-html: $(PROJ_OBJ_DIR)/html.tar.gz -+install-html: - $(Echo) Installing HTML documentation - $(Verb) $(MKDIR) $(DESTDIR)$(PROJ_docsdir)/html - $(Verb) $(MKDIR) $(DESTDIR)$(PROJ_docsdir)/html/img - $(Verb) $(DataInstall) $(HTML) $(DESTDIR)$(PROJ_docsdir)/html - $(Verb) $(DataInstall) $(IMAGES) $(DESTDIR)$(PROJ_docsdir)/html/img -- $(Verb) $(DataInstall) $(PROJ_OBJ_DIR)/html.tar.gz $(DESTDIR)$(PROJ_docsdir) - - $(PROJ_OBJ_DIR)/html.tar.gz: $(HTML) - $(Echo) Packaging HTML documentation -@@ -64,12 +63,11 @@ - install-doxygen: doxygen - $(Echo) Installing doxygen documentation - $(Verb) $(MKDIR) $(DESTDIR)$(PROJ_docsdir)/html/doxygen -- $(Verb) $(DataInstall) $(PROJ_OBJ_DIR)/doxygen.tar.gz $(DESTDIR)$(PROJ_docsdir) - $(Verb) cd $(PROJ_OBJ_DIR)/doxygen && \ - $(FIND) . -type f -exec \ - $(DataInstall) {} $(DESTDIR)$(PROJ_docsdir)/html/doxygen \; - --doxygen: regendoc $(PROJ_OBJ_DIR)/doxygen.tar.gz -+doxygen: regendoc - - regendoc: - $(Echo) Building doxygen documentation -@@ -95,7 +93,6 @@ - install-ocamldoc: ocamldoc - $(Echo) Installing ocamldoc documentation - $(Verb) $(MKDIR) $(DESTDIR)$(PROJ_docsdir)/ocamldoc/html -- $(Verb) $(DataInstall) $(PROJ_OBJ_DIR)/ocamldoc.tar.gz $(DESTDIR)$(PROJ_docsdir) - $(Verb) cd $(PROJ_OBJ_DIR)/ocamldoc && \ - $(FIND) . -type f -exec \ - $(DataInstall) {} $(DESTDIR)$(PROJ_docsdir)/ocamldoc/html \; -@@ -105,7 +102,6 @@ - $(Verb) $(RM) -rf $(PROJ_OBJ_DIR)/ocamldoc.tar* - $(Verb) $(TAR) cf $(PROJ_OBJ_DIR)/ocamldoc.tar ocamldoc - $(Verb) $(GZIP) $(PROJ_OBJ_DIR)/ocamldoc.tar -- $(Verb) $(CP) $(PROJ_OBJ_DIR)/ocamldoc.tar.gz $(PROJ_OBJ_DIR)/ocamldoc/html/ - - regen-ocamldoc: - $(Echo) Building ocamldoc documentation diff --git a/sys-devel/llvm/files/llvm-2.8-alignof.patch b/sys-devel/llvm/files/llvm-2.8-alignof.patch deleted file mode 100644 index ae7f314..0000000 --- a/sys-devel/llvm/files/llvm-2.8-alignof.patch +++ /dev/null @@ -1,59 +0,0 @@ -Index: include/llvm/ADT/StringMap.h -=================================================================== ---- include/llvm/ADT/StringMap.h (révision 117773) -+++ include/llvm/ADT/StringMap.h (révision 117774) -@@ -167,7 +167,7 @@ - - unsigned AllocSize = static_cast<unsigned>(sizeof(StringMapEntry))+ - KeyLength+1; -- unsigned Alignment = alignof<StringMapEntry>(); -+ unsigned Alignment = alignOf<StringMapEntry>(); - - StringMapEntry *NewItem = - static_cast<StringMapEntry*>(Allocator.Allocate(AllocSize,Alignment)); -Index: include/llvm/Support/AlignOf.h -=================================================================== ---- include/llvm/Support/AlignOf.h (révision 117773) -+++ include/llvm/Support/AlignOf.h (révision 117774) -@@ -49,12 +49,12 @@ - - }; - --/// alignof - A templated function that returns the mininum alignment of -+/// alignOf - A templated function that returns the mininum alignment of - /// of a type. This provides no extra functionality beyond the AlignOf - /// class besides some cosmetic cleanliness. Example usage: --/// alignof<int>() returns the alignment of an int. -+/// alignOf<int>() returns the alignment of an int. - template <typename T> --static inline unsigned alignof() { return AlignOf<T>::Alignment; } -+static inline unsigned alignOf() { return AlignOf<T>::Alignment; } - - } // end namespace llvm - #endif -Index: include/llvm/Support/Allocator.h -=================================================================== ---- include/llvm/Support/Allocator.h (révision 117773) -+++ include/llvm/Support/Allocator.h (révision 117774) -@@ -201,7 +201,7 @@ - char *End = Slab == Allocator.CurSlab ? Allocator.CurPtr : - (char *)Slab + Slab->Size; - for (char *Ptr = (char*)(Slab+1); Ptr < End; Ptr += sizeof(T)) { -- Ptr = Allocator.AlignPtr(Ptr, alignof<T>()); -+ Ptr = Allocator.AlignPtr(Ptr, alignOf<T>()); - if (Ptr + sizeof(T) <= End) - reinterpret_cast<T*>(Ptr)->~T(); - } -Index: include/llvm/CodeGen/SlotIndexes.h -=================================================================== ---- include/llvm/CodeGen/SlotIndexes.h (révision 117773) -+++ include/llvm/CodeGen/SlotIndexes.h (révision 117774) -@@ -393,7 +393,7 @@ - IndexListEntry *entry = - static_cast<IndexListEntry*>( - ileAllocator.Allocate(sizeof(IndexListEntry), -- alignof<IndexListEntry>())); -+ alignOf<IndexListEntry>())); - - new (entry) IndexListEntry(mi, index); - diff --git a/sys-devel/llvm/files/llvm-2.8-darwin8.patch b/sys-devel/llvm/files/llvm-2.8-darwin8.patch deleted file mode 100644 index 284ab47..0000000 --- a/sys-devel/llvm/files/llvm-2.8-darwin8.patch +++ /dev/null @@ -1,15 +0,0 @@ -Avoid like in Makefile.rules -ld: -rpath can only be used when targeting Mac OS X 10.5 or later - ---- unittests/Makefile.unittest -+++ unittests/Makefile.unittest -@@ -37,7 +37,9 @@ - ifeq ($(ENABLE_SHARED), 1) - # Add the absolute path to the dynamic library. This is ok because - # we'll never install unittests. -+ifneq ($(DARWIN_MAJVERS),4) - LD.Flags += $(RPATH) -Wl,$(SharedLibDir) -+endif - # Also set {DYLD,LD}_LIBRARY_PATH because OSX ignores the rpath most - # of the time. - Run.Shared := $(SHLIBPATH_VAR)="$(SharedLibDir)$${$(SHLIBPATH_VAR):+:}$$$(SHLIBPATH_VAR)" diff --git a/sys-devel/llvm/files/llvm-2.9-Operator.h-c++0x.patch b/sys-devel/llvm/files/llvm-2.9-Operator.h-c++0x.patch deleted file mode 100644 index b95d7d7..0000000 --- a/sys-devel/llvm/files/llvm-2.9-Operator.h-c++0x.patch +++ /dev/null @@ -1,57 +0,0 @@ ---- llvm/trunk/include/llvm/Operator.h 2011/02/07 16:40:21 125006 -+++ llvm/trunk/include/llvm/Operator.h 2011/05/08 01:59:22 131062 -@@ -186,28 +186,46 @@ - }; - - class AddOperator -- : public ConcreteOperator<OverflowingBinaryOperator, Instruction::Add> {}; -+ : public ConcreteOperator<OverflowingBinaryOperator, Instruction::Add> { -+ ~AddOperator(); // DO NOT IMPLEMENT -+}; - class SubOperator -- : public ConcreteOperator<OverflowingBinaryOperator, Instruction::Sub> {}; -+ : public ConcreteOperator<OverflowingBinaryOperator, Instruction::Sub> { -+ ~SubOperator(); // DO NOT IMPLEMENT -+}; - class MulOperator -- : public ConcreteOperator<OverflowingBinaryOperator, Instruction::Mul> {}; -+ : public ConcreteOperator<OverflowingBinaryOperator, Instruction::Mul> { -+ ~MulOperator(); // DO NOT IMPLEMENT -+}; - class ShlOperator -- : public ConcreteOperator<OverflowingBinaryOperator, Instruction::Shl> {}; -+ : public ConcreteOperator<OverflowingBinaryOperator, Instruction::Shl> { -+ ~ShlOperator(); // DO NOT IMPLEMENT -+}; - - - class SDivOperator -- : public ConcreteOperator<PossiblyExactOperator, Instruction::SDiv> {}; -+ : public ConcreteOperator<PossiblyExactOperator, Instruction::SDiv> { -+ ~SDivOperator(); // DO NOT IMPLEMENT -+}; - class UDivOperator -- : public ConcreteOperator<PossiblyExactOperator, Instruction::UDiv> {}; -+ : public ConcreteOperator<PossiblyExactOperator, Instruction::UDiv> { -+ ~UDivOperator(); // DO NOT IMPLEMENT -+}; - class AShrOperator -- : public ConcreteOperator<PossiblyExactOperator, Instruction::AShr> {}; -+ : public ConcreteOperator<PossiblyExactOperator, Instruction::AShr> { -+ ~AShrOperator(); // DO NOT IMPLEMENT -+}; - class LShrOperator -- : public ConcreteOperator<PossiblyExactOperator, Instruction::LShr> {}; -+ : public ConcreteOperator<PossiblyExactOperator, Instruction::LShr> { -+ ~LShrOperator(); // DO NOT IMPLEMENT -+}; - - - - class GEPOperator - : public ConcreteOperator<Operator, Instruction::GetElementPtr> { -+ ~GEPOperator(); // DO NOT IMPLEMENT -+ - enum { - IsInBounds = (1 << 0) - }; diff --git a/sys-devel/llvm/files/llvm-2.9-gcc4.7.patch b/sys-devel/llvm/files/llvm-2.9-gcc4.7.patch deleted file mode 100644 index a48ad96..0000000 --- a/sys-devel/llvm/files/llvm-2.9-gcc4.7.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- - Intercept.cpp | 1 + - 1 file changed, 1 insertion(+) - ---- a/lib/ExecutionEngine/JIT/Intercept.cpp 2012-05-17 16:11:46.956180361 +0200 -+++ b/lib/ExecutionEngine/JIT/Intercept.cpp 2012-05-17 16:14:35.256184996 +0200 -@@ -52,6 +52,7 @@ - #include <sys/stat.h> - #endif - #include <fcntl.h> -+#include <unistd.h> - /* stat functions are redirecting to __xstat with a version number. On x86-64 - * linking with libc_nonshared.a and -Wl,--export-dynamic doesn't make 'stat' - * available as an exported symbol, so we have to add it explicitly. diff --git a/sys-devel/llvm/files/llvm-2.9-nodoctargz.patch b/sys-devel/llvm/files/llvm-2.9-nodoctargz.patch deleted file mode 100644 index 9507817..0000000 --- a/sys-devel/llvm/files/llvm-2.9-nodoctargz.patch +++ /dev/null @@ -1,39 +0,0 @@ ---- docs/Makefile.orig 2011-02-28 21:30:46.000000000 +0100 -+++ docs/Makefile 2011-02-28 21:35:22.000000000 +0100 -@@ -53,13 +53,12 @@ - # 'make generated BUILD_FOR_WEBSITE=1' - generated:: $(generated_targets) - --install-html: $(PROJ_OBJ_DIR)/html.tar.gz -+install-html: - $(Echo) Installing HTML documentation - $(Verb) $(MKDIR) $(DESTDIR)$(PROJ_docsdir)/html - $(Verb) $(MKDIR) $(DESTDIR)$(PROJ_docsdir)/html/img - $(Verb) $(DataInstall) $(HTML) $(DESTDIR)$(PROJ_docsdir)/html - $(Verb) $(DataInstall) $(IMAGES) $(DESTDIR)$(PROJ_docsdir)/html/img -- $(Verb) $(DataInstall) $(PROJ_OBJ_DIR)/html.tar.gz $(DESTDIR)$(PROJ_docsdir) - - $(PROJ_OBJ_DIR)/html.tar.gz: $(HTML) - $(Echo) Packaging HTML documentation -@@ -71,12 +70,11 @@ - install-doxygen: doxygen - $(Echo) Installing doxygen documentation - $(Verb) $(MKDIR) $(DESTDIR)$(PROJ_docsdir)/html/doxygen -- $(Verb) $(DataInstall) $(PROJ_OBJ_DIR)/doxygen.tar.gz $(DESTDIR)$(PROJ_docsdir) - $(Verb) cd $(PROJ_OBJ_DIR)/doxygen && \ - $(FIND) . -type f -exec \ - $(DataInstall) {} $(DESTDIR)$(PROJ_docsdir)/html/doxygen \; - --doxygen: regendoc $(PROJ_OBJ_DIR)/doxygen.tar.gz -+doxygen: regendoc - - regendoc: - $(Echo) Building doxygen documentation -@@ -102,7 +100,6 @@ - install-ocamldoc: ocamldoc - $(Echo) Installing ocamldoc documentation - $(Verb) $(MKDIR) $(DESTDIR)$(PROJ_docsdir)/ocamldoc/html -- $(Verb) $(DataInstall) $(PROJ_OBJ_DIR)/ocamldoc.tar.gz $(DESTDIR)$(PROJ_docsdir) - $(Verb) cd $(PROJ_OBJ_DIR)/ocamldoc && \ - $(FIND) . -type f -exec \ - $(DataInstall) {} $(DESTDIR)$(PROJ_docsdir)/ocamldoc/html \; diff --git a/sys-devel/llvm/files/llvm-3.0-PPCCompilationCallbackC_static.patch b/sys-devel/llvm/files/llvm-3.0-PPCCompilationCallbackC_static.patch deleted file mode 100644 index 04e4024..0000000 --- a/sys-devel/llvm/files/llvm-3.0-PPCCompilationCallbackC_static.patch +++ /dev/null @@ -1,27 +0,0 @@ -https://bugs.gentoo.org/show_bug.cgi?id=403519 -http://llvm.org/viewvc/llvm-project?view=rev&revision=153938 - ---- llvm/trunk/lib/Target/PowerPC/PPCJITInfo.cpp 2011/06/15 15:29:47 133059 -+++ llvm/trunk/lib/Target/PowerPC/PPCJITInfo.cpp 2012/04/03 06:59:28 153938 -@@ -291,9 +291,10 @@ - } - #endif - --extern "C" void *PPCCompilationCallbackC(unsigned *StubCallAddrPlus4, -- unsigned *OrigCallAddrPlus4, -- bool is64Bit) { -+extern "C" { -+static void* LLVM_ATTRIBUTE_USED PPCCompilationCallbackC(unsigned *StubCallAddrPlus4, -+ unsigned *OrigCallAddrPlus4, -+ bool is64Bit) { - // Adjust the pointer to the address of the call instruction in the stub - // emitted by emitFunctionStub, rather than the instruction after it. - unsigned *StubCallAddr = StubCallAddrPlus4 - 1; -@@ -337,6 +338,7 @@ - // stack after we restore all regs. - return Target; - } -+} - - - diff --git a/sys-devel/llvm/files/llvm-3.0-PPC_macro.patch b/sys-devel/llvm/files/llvm-3.0-PPC_macro.patch deleted file mode 100644 index c485e9b..0000000 --- a/sys-devel/llvm/files/llvm-3.0-PPC_macro.patch +++ /dev/null @@ -1,43 +0,0 @@ -Index: llvm-3.0-3.0/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.h -=================================================================== ---- llvm-3.0-3.0.orig/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.h 2011-07-25 23:24:55.000000000 +0000 -+++ llvm-3.0-3.0/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.h 2011-12-02 13:06:48.000000000 +0000 -@@ -34,6 +34,10 @@ - - } // End llvm namespace - -+// Generated files will use "namespace PPC". To avoid symbol clash, -+// undefine PPC here. PPC may be predefined on some hosts. -+#undef PPC -+ - // Defines symbolic names for PowerPC registers. This defines a mapping from - // register name to register number. - // -Index: llvm-3.0-3.0/lib/Target/PowerPC/MCTargetDesc/PPCPredicates.h -=================================================================== ---- llvm-3.0-3.0.orig/lib/Target/PowerPC/MCTargetDesc/PPCPredicates.h 2011-07-26 00:24:13.000000000 +0000 -+++ llvm-3.0-3.0/lib/Target/PowerPC/MCTargetDesc/PPCPredicates.h 2011-12-02 13:06:48.000000000 +0000 -@@ -14,6 +14,10 @@ - #ifndef LLVM_TARGET_POWERPC_PPCPREDICATES_H - #define LLVM_TARGET_POWERPC_PPCPREDICATES_H - -+// Generated files will use "namespace PPC". To avoid symbol clash, -+// undefine PPC here. PPC may be predefined on some hosts. -+#undef PPC -+ - namespace llvm { - namespace PPC { - /// Predicate - These are "(BI << 5) | BO" for various predicates. -Index: llvm-3.0-3.0/lib/Target/PowerPC/MCTargetDesc/PPCFixupKinds.h -=================================================================== ---- llvm-3.0-3.0.orig/lib/Target/PowerPC/MCTargetDesc/PPCFixupKinds.h 2011-07-25 19:53:23.000000000 +0000 -+++ llvm-3.0-3.0/lib/Target/PowerPC/MCTargetDesc/PPCFixupKinds.h 2011-12-02 16:21:23.000000000 +0000 -@@ -12,6 +12,8 @@ - - #include "llvm/MC/MCFixup.h" - -+#undef PPC -+ - namespace llvm { - namespace PPC { - enum Fixups { diff --git a/sys-devel/llvm/files/llvm-3.0-gold_LTO_link.patch b/sys-devel/llvm/files/llvm-3.0-gold_LTO_link.patch deleted file mode 100644 index 031448d..0000000 --- a/sys-devel/llvm/files/llvm-3.0-gold_LTO_link.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- tools/gold/Makefile 2011/11/23 03:03:21 145094 -+++ tools/gold/Makefile 2011/11/23 03:07:25 145095 -@@ -24,6 +24,6 @@ - # Because off_t is used in the public API, the largefile parts are required for - # ABI compatibility. - CXXFLAGS+=-I$(BINUTILS_INCDIR) -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 --CXXFLAGS+=$(SharedLibDir)/$(SharedPrefix)LTO$(SHLIBEXT) -+CXXFLAGS+=-L$(SharedLibDir)/$(SharedPrefix) -lLTO - - include $(LEVEL)/Makefile.common diff --git a/sys-devel/llvm/files/llvm-3.0-ocaml_install.patch b/sys-devel/llvm/files/llvm-3.0-ocaml_install.patch deleted file mode 100644 index 18f5cf6..0000000 --- a/sys-devel/llvm/files/llvm-3.0-ocaml_install.patch +++ /dev/null @@ -1,16 +0,0 @@ -https://bugs.gentoo.org/show_bug.cgi?id=393023 -http://llvm.org/bugs/show_bug.cgi?id=11177 - -Index: llvm-3.0-3.0/bindings/ocaml/llvm/Makefile -=================================================================== ---- llvm-3.0-3.0.orig/bindings/ocaml/llvm/Makefile 2011-11-15 12:17:02.785987852 +0100 -+++ llvm-3.0-3.0/bindings/ocaml/llvm/Makefile 2011-11-15 12:20:12.661983615 +0100 -@@ -30,7 +30,7 @@ - $(OcamlDir)/META.llvm: META.llvm - $(Verb) $(CP) -f $< $@ - --install-meta:: $(ObjDir)/META.llvm -+install-meta:: $(ObjDir)/../META.llvm - $(Echo) "Install $(BuildMode) $(DestMETA)" - $(Verb) $(MKDIR) $(PROJ_libocamldir) - $(Verb) $(DataInstall) META.llvm "$(DestMETA)" diff --git a/sys-devel/llvm/files/llvm-3.0-set_soname.patch b/sys-devel/llvm/files/llvm-3.0-set_soname.patch deleted file mode 100644 index 69ba74d..0000000 --- a/sys-devel/llvm/files/llvm-3.0-set_soname.patch +++ /dev/null @@ -1,12 +0,0 @@ -https://bugs.gentoo.org/show_bug.cgi?id=409267 -http://llvm.org/bugs/show_bug.cgi?id=12334 ---- tools/llvm-shlib/Makefile.orig 2012-03-26 18:14:13.071797115 +0200 -+++ tools/llvm-shlib/Makefile 2012-03-26 17:31:12.491196254 +0200 -@@ -67,6 +67,7 @@ - # Include everything from the .a's into the shared library. - LLVMLibsOptions := -Wl,--whole-archive $(LLVMLibsOptions) \ - -Wl,--no-whole-archive -+ LLVMLibsOptions += -Wl,--soname,lib$(LIBRARYNAME)$(SHLIBEXT) - endif - - ifeq ($(HOST_OS),Linux) diff --git a/sys-devel/llvm/files/llvm-3.1-ExecutionEngine_tests_xfail_arm.patch b/sys-devel/llvm/files/llvm-3.1-ExecutionEngine_tests_xfail_arm.patch deleted file mode 100644 index 05a20e6..0000000 --- a/sys-devel/llvm/files/llvm-3.1-ExecutionEngine_tests_xfail_arm.patch +++ /dev/null @@ -1,27 +0,0 @@ -diff -Naur llvm-3.1.src/test/ExecutionEngine/2002-12-16-ArgTest.ll llvm.src/test/ExecutionEngine/2002-12-16-ArgTest.ll ---- llvm-3.1.src/test/ExecutionEngine/2002-12-16-ArgTest.ll 2012-04-12 22:13:57.000000000 +0200 -+++ llvm.src/test/ExecutionEngine/2002-12-16-ArgTest.ll 2012-10-08 15:06:30.000000000 +0200 -@@ -1,4 +1,5 @@ - ; RUN: %lli %s > /dev/null -+; XFAIL: arm - - @.LC0 = internal global [10 x i8] c"argc: %d\0A\00" ; <[10 x i8]*> [#uses=1] - -diff -Naur llvm-3.1.src/test/ExecutionEngine/test-fp-no-external-funcs.ll llvm.src/test/ExecutionEngine/test-fp-no-external-funcs.ll ---- llvm-3.1.src/test/ExecutionEngine/test-fp-no-external-funcs.ll 2012-04-12 22:13:57.000000000 +0200 -+++ llvm.src/test/ExecutionEngine/test-fp-no-external-funcs.ll 2012-10-08 15:06:30.000000000 +0200 -@@ -1,4 +1,5 @@ - ; RUN: %lli %s > /dev/null -+; XFAIL: arm - - define double @test(double* %DP, double %Arg) { - %D = load double* %DP ; <double> [#uses=1] -diff -Naur llvm-3.1.src/test/ExecutionEngine/test-fp.ll llvm.src/test/ExecutionEngine/test-fp.ll ---- llvm-3.1.src/test/ExecutionEngine/test-fp.ll 2012-04-12 22:13:57.000000000 +0200 -+++ llvm.src/test/ExecutionEngine/test-fp.ll 2012-10-08 15:06:30.000000000 +0200 -@@ -1,4 +1,5 @@ - ; RUN: %lli %s > /dev/null -+; XFAIL: arm - - define double @test(double* %DP, double %Arg) { - %D = load double* %DP ; <double> [#uses=1] diff --git a/sys-devel/llvm/files/llvm-3.1-docs-pod-markup-fixes.patch b/sys-devel/llvm/files/llvm-3.1-docs-pod-markup-fixes.patch deleted file mode 100644 index cd8a62a..0000000 --- a/sys-devel/llvm/files/llvm-3.1-docs-pod-markup-fixes.patch +++ /dev/null @@ -1,28 +0,0 @@ ---- llvm-3.1.src/docs/CommandGuide/lit.pod~ 2012-03-27 03:01:14.000000000 +0900 -+++ llvm-3.1.src/docs/CommandGuide/lit.pod 2013-01-23 12:47:30.297510832 +0900 -@@ -386,8 +386,6 @@ - ******************** - PASS: D (4 of 4) - --=back -- - =head2 LIT EXAMPLE TESTS - - The B<lit> distribution contains several example implementations of test suites ---- llvm-3.1.src/docs/CommandGuide/llvm-cov.pod~ 2011-11-29 08:39:25.000000000 +0900 -+++ llvm-3.1.src/docs/CommandGuide/llvm-cov.pod 2013-01-23 13:44:32.184212441 +0900 -@@ -18,12 +18,12 @@ - - =over - --=item B<-gcno=filename] -+=item B<-gcno=filename> - - This option selects input description file generated by compiler while instrumenting - program. - --=item B<-gcda=filename] -+=item B<-gcda=filename> - - This option selects coverage data file generated by instrumented compiler. - diff --git a/sys-devel/llvm/files/llvm-3.1-fix_debug_line_info.patch b/sys-devel/llvm/files/llvm-3.1-fix_debug_line_info.patch deleted file mode 100644 index de2d46b..0000000 --- a/sys-devel/llvm/files/llvm-3.1-fix_debug_line_info.patch +++ /dev/null @@ -1,65 +0,0 @@ -From 737fdba46f2b2b7d39bc728d15ea2334c44779e0 Mon Sep 17 00:00:00 2001 -From: Ben Longbons <b.r.longbons@gmail.com> -Date: Fri, 29 Jun 2012 12:58:34 -0700 -Subject: [PATCH] Revert "Patch to set is_stmt a little better for prologue - lines in a function." - -This meants that the debugger could find meaningful line information. - -This reverts commit 60b35f408bc3194e7ea4e96367c0b42dc5e7f850. ---- - lib/CodeGen/AsmPrinter/DwarfDebug.cpp | 7 ++----- - test/DebugInfo/X86/ending-run.ll | 6 ++---- - 2 files changed, 4 insertions(+), 9 deletions(-) - -diff --git a/lib/CodeGen/AsmPrinter/DwarfDebug.cpp b/lib/CodeGen/AsmPrinter/DwarfDebug.cpp -index 3e79a6d..24aedfb 100644 ---- a/lib/CodeGen/AsmPrinter/DwarfDebug.cpp -+++ b/lib/CodeGen/AsmPrinter/DwarfDebug.cpp -@@ -1093,15 +1093,12 @@ void DwarfDebug::beginInstruction(const MachineInstr *MI) { - if (!MI->isDebugValue()) { - DebugLoc DL = MI->getDebugLoc(); - if (DL != PrevInstLoc && (!DL.isUnknown() || UnknownLocations)) { -- unsigned Flags = 0; -+ unsigned Flags = DWARF2_FLAG_IS_STMT; - PrevInstLoc = DL; - if (DL == PrologEndLoc) { - Flags |= DWARF2_FLAG_PROLOGUE_END; - PrologEndLoc = DebugLoc(); - } -- if (PrologEndLoc.isUnknown()) -- Flags |= DWARF2_FLAG_IS_STMT; -- - if (!DL.isUnknown()) { - const MDNode *Scope = DL.getScope(Asm->MF->getFunction()->getContext()); - recordSourceLine(DL.getLine(), DL.getCol(), Scope, Flags); -@@ -1382,7 +1379,7 @@ void DwarfDebug::beginFunction(const MachineFunction *MF) { - MF->getFunction()->getContext()); - recordSourceLine(FnStartDL.getLine(), FnStartDL.getCol(), - FnStartDL.getScope(MF->getFunction()->getContext()), -- 0); -+ DWARF2_FLAG_IS_STMT); - } - } - -diff --git a/test/DebugInfo/X86/ending-run.ll b/test/DebugInfo/X86/ending-run.ll -index 6935c47..0cd3de1 100644 ---- a/test/DebugInfo/X86/ending-run.ll -+++ b/test/DebugInfo/X86/ending-run.ll -@@ -1,11 +1,9 @@ - ; RUN: llc -mtriple=x86_64-apple-darwin %s -o %t -filetype=obj - ; RUN: llvm-dwarfdump %t | FileCheck %s - --; Check that the line table starts at 7, not 4, but that the first --; statement isn't until line 8. -+; Check that the line table starts at 7, not 4. - --; CHECK-NOT: 0x0000000000000000 7 0 1 0 is_stmt --; CHECK: 0x0000000000000000 7 0 1 0 -+; CHECK: 0x0000000000000000 7 0 1 0 is_stmt - ; CHECK: 0x0000000000000004 8 18 1 0 is_stmt prologue_end - - define i32 @callee(i32 %x) nounwind uwtable ssp { --- -1.7.10 - diff --git a/sys-devel/llvm/files/llvm-3.1-ivybridge_support.patch b/sys-devel/llvm/files/llvm-3.1-ivybridge_support.patch deleted file mode 100644 index a03ec42..0000000 --- a/sys-devel/llvm/files/llvm-3.1-ivybridge_support.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- llvm/trunk/lib/Support/Host.cpp 2012/04/23 22:22:46 155401 -+++ llvm/trunk/lib/Support/Host.cpp 2012/04/23 22:41:39 155402 -@@ -230,6 +230,10 @@ - case 45: - return "corei7-avx"; - -+ // Ivy Bridge: -+ case 58: -+ return "core-avx-i"; -+ - case 28: // Intel Atom processor. All processors are manufactured using - // the 45 nm process - return "atom"; diff --git a/sys-devel/llvm/files/llvm-3.2-nodoctargz.patch b/sys-devel/llvm/files/llvm-3.2-nodoctargz.patch deleted file mode 100644 index 3a622b5..0000000 --- a/sys-devel/llvm/files/llvm-3.2-nodoctargz.patch +++ /dev/null @@ -1,45 +0,0 @@ ---- docs/Makefile.orig 2012-04-30 17:00:01.000000000 +0200 -+++ docs/Makefile 2012-04-30 17:15:52.000000000 +0200 -@@ -52,11 +52,10 @@ - # 'make generated BUILD_FOR_WEBSITE=1' - generated:: $(generated_targets) - --install-html: $(PROJ_OBJ_DIR)/html.tar.gz -+install-html: - $(Echo) Installing HTML documentation - $(Verb) $(MKDIR) $(DESTDIR)$(PROJ_docsdir)/html - $(Verb) $(DataInstall) $(HTML) $(DESTDIR)$(PROJ_docsdir)/html -- $(Verb) $(DataInstall) $(PROJ_OBJ_DIR)/html.tar.gz $(DESTDIR)$(PROJ_docsdir) - - $(PROJ_OBJ_DIR)/html.tar.gz: $(HTML) - $(Echo) Packaging HTML documentation -@@ -68,12 +67,11 @@ - install-doxygen: doxygen - $(Echo) Installing doxygen documentation - $(Verb) $(MKDIR) $(DESTDIR)$(PROJ_docsdir)/html/doxygen -- $(Verb) $(DataInstall) $(PROJ_OBJ_DIR)/doxygen.tar.gz $(DESTDIR)$(PROJ_docsdir) - $(Verb) cd $(PROJ_OBJ_DIR)/doxygen && \ - $(FIND) . -type f -exec \ - $(DataInstall) {} $(DESTDIR)$(PROJ_docsdir)/html/doxygen \; - --doxygen: regendoc $(PROJ_OBJ_DIR)/doxygen.tar.gz -+doxygen: regendoc - - regendoc: - $(Echo) Building doxygen documentation -@@ -99,7 +97,6 @@ - install-ocamldoc: ocamldoc - $(Echo) Installing ocamldoc documentation - $(Verb) $(MKDIR) $(DESTDIR)$(PROJ_docsdir)/ocamldoc/html -- $(Verb) $(DataInstall) $(PROJ_OBJ_DIR)/ocamldoc.tar.gz $(DESTDIR)$(PROJ_docsdir) - $(Verb) cd $(PROJ_OBJ_DIR)/ocamldoc && \ - $(FIND) . -type f -exec \ - $(DataInstall) {} $(DESTDIR)$(PROJ_docsdir)/ocamldoc/html \; -@@ -109,7 +106,6 @@ - $(Verb) $(RM) -rf $(PROJ_OBJ_DIR)/ocamldoc.tar* - $(Verb) $(TAR) cf $(PROJ_OBJ_DIR)/ocamldoc.tar ocamldoc - $(Verb) $(GZIPBIN) $(PROJ_OBJ_DIR)/ocamldoc.tar -- $(Verb) $(CP) $(PROJ_OBJ_DIR)/ocamldoc.tar.gz $(PROJ_OBJ_DIR)/ocamldoc/html/ - - regen-ocamldoc: - $(Echo) Building ocamldoc documentation diff --git a/sys-devel/llvm/files/llvm-3.3-R600_debug.patch b/sys-devel/llvm/files/llvm-3.3-R600_debug.patch deleted file mode 100644 index b104273..0000000 --- a/sys-devel/llvm/files/llvm-3.3-R600_debug.patch +++ /dev/null @@ -1,22 +0,0 @@ -Fixes compilation of llvm-3.3 on gcc-4.6 and 4.7 when VIDEO_CARDS=radeon - -This issue is caused because although Q is a multiset the original code tries to get -a set iterator which can't be converted in a multiset one. - -The fix is as simple as just using a multiset iterator. - -Patch by Francisco Blas Izquierdo Riera (klondike) -Consider the changes in the Public Domain -https://bugs.gentoo.org/show_bug.cgi?id=474096 - ---- lib/Target/R600/R600MachineScheduler.cpp -+++ lib/Target/R600/R600MachineScheduler.cpp -@@ -290,7 +290,7 @@ - SUnit *R600SchedStrategy::PopInst(std::multiset<SUnit *, CompareSUnit> &Q) { - if (Q.empty()) - return NULL; -- for (std::set<SUnit *, CompareSUnit>::iterator It = Q.begin(), E = Q.end(); -+ for (std::multiset<SUnit *, CompareSUnit>::iterator It = Q.begin(), E = Q.end(); - It != E; ++It) { - SUnit *SU = *It; - InstructionsGroupCandidate.push_back(SU->getInstr()); diff --git a/sys-devel/llvm/files/llvm-3.3-cmake-modulepath.patch b/sys-devel/llvm/files/llvm-3.3-cmake-modulepath.patch deleted file mode 100644 index 754ae46..0000000 --- a/sys-devel/llvm/files/llvm-3.3-cmake-modulepath.patch +++ /dev/null @@ -1,24 +0,0 @@ ---- cmake/modules/LLVMConfig.cmake.in.old 2013-12-30 14:40:54.888983600 +0100 -+++ cmake/modules/LLVMConfig.cmake.in 2013-12-30 14:44:15.448970509 +0100 -@@ -39,16 +39,10 @@ - set(LLVM_LIBRARY_DIRS ${LLVM_INSTALL_PREFIX}/lib) - set(LLVM_DEFINITIONS "-D__STDC_LIMIT_MACROS" "-D__STDC_CONSTANT_MACROS") - --# We try to include using the current setting of CMAKE_MODULE_PATH, --# which suppossedly was filled by the user with the directory where --# this file was installed: --include( LLVM-Config OPTIONAL RESULT_VARIABLE LLVMCONFIG_INCLUDED ) -- --# If failed, we assume that this is an un-installed build: --if( NOT LLVMCONFIG_INCLUDED ) -- set(CMAKE_MODULE_PATH -+# For some reasons without it it fails on Gentoo, see bug #496480 -+set(CMAKE_MODULE_PATH - ${CMAKE_MODULE_PATH} -- "@LLVM_SOURCE_DIR@/cmake/modules") -- include( LLVM-Config ) --endif() -+ "@LLVM_INSTALL_PREFIX@/share/llvm/cmake") -+ -+include(LLVM-Config) - diff --git a/sys-devel/llvm/files/llvm-3.3-gentoo-install.patch b/sys-devel/llvm/files/llvm-3.3-gentoo-install.patch deleted file mode 100644 index e477be5..0000000 --- a/sys-devel/llvm/files/llvm-3.3-gentoo-install.patch +++ /dev/null @@ -1,141 +0,0 @@ -From 378109dbae7e4772d9b096384904c638a6a34028 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <gentoo@mgorny.alt.pl> -Date: Fri, 19 Jul 2013 10:10:52 +0200 -Subject: [PATCH 1/2] gentoo install fixes - ---- - Makefile.config.in | 6 +++--- - Makefile.rules | 7 +++---- - tools/gold/Makefile | 2 +- - tools/llvm-config/BuildVariables.inc.in | 2 ++ - tools/llvm-config/Makefile | 4 ++++ - tools/llvm-config/llvm-config.cpp | 5 +++-- - utils/FileCheck/Makefile | 2 +- - 7 files changed, 17 insertions(+), 11 deletions(-) - -diff --git a/Makefile.config.in b/Makefile.config.in -index fd4f6ef..5634ecc 100644 ---- a/Makefile.config.in -+++ b/Makefile.config.in -@@ -95,10 +95,10 @@ PROJ_internal_prefix := $(prefix) - endif - - PROJ_bindir := $(PROJ_prefix)/bin --PROJ_libdir := $(PROJ_prefix)/lib -+PROJ_libdir := $(PROJ_prefix)/$(GENTOO_LIBDIR)/llvm - PROJ_datadir := $(PROJ_prefix)/share --PROJ_docsdir := $(PROJ_prefix)/docs/llvm --PROJ_etcdir := $(PROJ_prefix)/etc/llvm -+PROJ_docsdir := $(PROJ_prefix)/share/doc/@PF@ -+PROJ_etcdir := @EPREFIX@/etc/llvm - PROJ_includedir := $(PROJ_prefix)/include - PROJ_infodir := $(PROJ_prefix)/info - PROJ_mandir := $(PROJ_prefix)/share/man -diff --git a/Makefile.rules b/Makefile.rules -index f0c542b..db252f7 100644 ---- a/Makefile.rules -+++ b/Makefile.rules -@@ -276,7 +276,7 @@ ifeq ($(ENABLE_OPTIMIZED),1) - # Don't use -fomit-frame-pointer on Darwin or FreeBSD. - ifneq ($(HOST_OS),FreeBSD) - ifneq ($(HOST_OS),Darwin) -- OmitFramePointer := -fomit-frame-pointer -+ OmitFramePointer := - endif - endif - -@@ -639,7 +638,7 @@ endif - ifneq ($(HOST_OS), $(filter $(HOST_OS), Cygwin MingW)) - ifneq ($(HOST_OS), Darwin) - ifdef TOOLNAME -- LD.Flags += $(RPATH) -Wl,'$$ORIGIN/../lib' -+ LD.Flags += $(RPATH) -Wl,'$$ORIGIN/../lib' $(RPATH) -Wl,'$(PROJ_libdir)' - ifdef EXAMPLE_TOOL - LD.Flags += $(RPATH) -Wl,$(ExmplDir) $(DynamicFlag) - else -@@ -648,7 +647,7 @@ ifneq ($(HOST_OS), $(filter $(HOST_OS), Cygwin MingW)) - endif - else - ifneq ($(DARWIN_MAJVERS),4) -- LD.Flags += $(RPATH) -Wl,@executable_path/../lib -+ LD.Flags += $(RPATH) -Wl,@executable_path/../lib -Wl,'$(PROJ_libdir)' - endif - ifeq ($(RC_XBS),YES) - TempFile := $(shell mkdir -p ${OBJROOT}/dSYMs ; mktemp ${OBJROOT}/dSYMs/llvm-lto.XXXXXX) -diff --git a/tools/gold/Makefile b/tools/gold/Makefile -index 496e31c..d36b340 100644 ---- a/tools/gold/Makefile -+++ b/tools/gold/Makefile -@@ -24,7 +24,7 @@ include $(LEVEL)/Makefile.config - # Because off_t is used in the public API, the largefile parts are required for - # ABI compatibility. - CXXFLAGS += -I$(BINUTILS_INCDIR) -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 --LDFLAGS += -L$(SharedLibDir)/$(SharedPrefix) -+LDFLAGS += -L$(PROJ_libdir) - - include $(LEVEL)/Makefile.common - -diff --git a/tools/llvm-config/BuildVariables.inc.in b/tools/llvm-config/BuildVariables.inc.in -index fe87afb..fd9f2c6 100644 ---- a/tools/llvm-config/BuildVariables.inc.in -+++ b/tools/llvm-config/BuildVariables.inc.in -@@ -25,3 +25,5 @@ - #define LLVM_BUILDMODE "@LLVM_BUILDMODE@" - #define LLVM_TARGETS_BUILT "@LLVM_TARGETS_BUILT@" - #define LLVM_SYSTEM_LIBS "@LLVM_SYSTEM_LIBS@" -+#define LLVM_RPATH "@LLVM_RPATH@" -+#define LLVM_LIBDIR "@LLVM_LIBDIR@" -diff --git a/tools/llvm-config/Makefile b/tools/llvm-config/Makefile -index b20b6bf..fc56781 100644 ---- a/tools/llvm-config/Makefile -+++ b/tools/llvm-config/Makefile -@@ -55,6 +55,10 @@ $(ObjDir)/BuildVariables.inc: $(BUILDVARIABLES_SRCPATH) Makefile $(ObjDir)/.dir - >> temp.sed - $(Verb) $(ECHO) 's/@LLVM_TARGETS_BUILT@/$(subst /,\/,$(TARGETS_TO_BUILD))/' \ - >> temp.sed -+ $(Verb) $(ECHO) 's/@LLVM_RPATH@/$(subst /,\/,$(RPATH))/' \ -+ >> temp.sed -+ $(Verb) $(ECHO) 's/@LLVM_LIBDIR@/$(subst /,\/,$(GENTOO_LIBDIR))/' \ -+ >> temp.sed - $(Verb) $(SED) -f temp.sed < $< > $@ - $(Verb) $(RM) temp.sed - -diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp -index 7edf5ec..4541c28 100644 ---- a/tools/llvm-config/llvm-config.cpp -+++ b/tools/llvm-config/llvm-config.cpp -@@ -250,7 +250,7 @@ int main(int argc, char **argv) { - ActivePrefix = CurrentExecPrefix; - ActiveIncludeDir = ActivePrefix + "/include"; - ActiveBinDir = ActivePrefix + "/bin"; -- ActiveLibDir = ActivePrefix + "/lib"; -+ ActiveLibDir = ActivePrefix + "/" LLVM_LIBDIR "/llvm"; - ActiveIncludeOption = "-I" + ActiveIncludeDir; - } - -@@ -277,7 +277,8 @@ int main(int argc, char **argv) { - } else if (Arg == "--cxxflags") { - OS << ActiveIncludeOption << ' ' << LLVM_CXXFLAGS << '\n'; - } else if (Arg == "--ldflags") { -- OS << "-L" << ActiveLibDir << ' ' << LLVM_LDFLAGS -+ OS << "-L" << ActiveLibDir << ' ' -+ << LLVM_RPATH << " -Wl," << ActiveLibDir << ' ' << LLVM_LDFLAGS - << ' ' << LLVM_SYSTEM_LIBS << '\n'; - } else if (Arg == "--libs") { - PrintLibs = true; -diff --git a/utils/FileCheck/Makefile b/utils/FileCheck/Makefile -index 268b7bc..e7674f9 100644 ---- a/utils/FileCheck/Makefile -+++ b/utils/FileCheck/Makefile -@@ -15,7 +15,7 @@ USEDLIBS = LLVMSupport.a - TOOL_NO_EXPORTS = 1 - - # Don't install this utility --NO_INSTALL = 1 -+#NO_INSTALL = 1 - - include $(LEVEL)/Makefile.common - --- -1.8.3.2 - diff --git a/sys-devel/llvm/files/llvm-3.3-insecure-rpath.patch b/sys-devel/llvm/files/llvm-3.3-insecure-rpath.patch deleted file mode 100644 index 659f237..0000000 --- a/sys-devel/llvm/files/llvm-3.3-insecure-rpath.patch +++ /dev/null @@ -1,30 +0,0 @@ -From d23d21bc76693dd2a43b5d76c68972ac01a055ba Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <gentoo@mgorny.alt.pl> -Date: Sat, 20 Jul 2013 15:56:56 +0200 -Subject: [PATCH] Remove insecure RUNPATHs. - -LLVM seems to build fine without them, and they were removed for 3.4 -already. ---- - Makefile.rules | 5 ----- - 1 file changed, 5 deletions(-) - -diff --git a/Makefile.rules b/Makefile.rules -index db252f7..a29481b 100644 ---- a/Makefile.rules -+++ b/Makefile.rules -@@ -639,11 +639,6 @@ ifneq ($(HOST_OS), $(filter $(HOST_OS), Cygwin MingW)) - ifneq ($(HOST_OS), Darwin) - ifdef TOOLNAME - LD.Flags += $(RPATH) -Wl,'$(PROJ_libdir)' -- ifdef EXAMPLE_TOOL -- LD.Flags += $(RPATH) -Wl,$(ExmplDir) $(DynamicFlag) -- else -- LD.Flags += $(RPATH) -Wl,$(ToolDir) $(DynamicFlag) -- endif - endif - else - ifneq ($(DARWIN_MAJVERS),4) --- -1.8.3.2 - diff --git a/sys-devel/llvm/files/llvm-3.3-r2-gentoo-install.patch b/sys-devel/llvm/files/llvm-3.3-r2-gentoo-install.patch deleted file mode 100644 index c5bd8b8..0000000 --- a/sys-devel/llvm/files/llvm-3.3-r2-gentoo-install.patch +++ /dev/null @@ -1,117 +0,0 @@ -From a554809b6bdbe29b1f775c89104c1088300685ef Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> -Date: Sat, 28 Dec 2013 10:30:28 +0100 -Subject: [PATCH] Update for gentoo install layout. - ---- - Makefile.config.in | 6 +++--- - Makefile.rules | 8 ++++---- - tools/llvm-config/BuildVariables.inc.in | 1 + - tools/llvm-config/Makefile | 2 ++ - tools/llvm-config/llvm-config.cpp | 2 +- - utils/FileCheck/Makefile | 2 +- - 6 files changed, 12 insertions(+), 9 deletions(-) - -diff --git a/Makefile.config.in b/Makefile.config.in -index fd4f6ef..b63786c 100644 ---- a/Makefile.config.in -+++ b/Makefile.config.in -@@ -95,10 +95,10 @@ PROJ_internal_prefix := $(prefix) - endif - - PROJ_bindir := $(PROJ_prefix)/bin --PROJ_libdir := $(PROJ_prefix)/lib -+PROJ_libdir := $(PROJ_prefix)/$(GENTOO_LIBDIR) - PROJ_datadir := $(PROJ_prefix)/share --PROJ_docsdir := $(PROJ_prefix)/docs/llvm --PROJ_etcdir := $(PROJ_prefix)/etc/llvm -+PROJ_docsdir := $(PROJ_prefix)/share/doc/@PF@ -+PROJ_etcdir := @EPREFIX@/etc/llvm - PROJ_includedir := $(PROJ_prefix)/include - PROJ_infodir := $(PROJ_prefix)/info - PROJ_mandir := $(PROJ_prefix)/share/man -diff --git a/Makefile.rules b/Makefile.rules -index f0c542b..6cc19fd 100644 ---- a/Makefile.rules -+++ b/Makefile.rules -@@ -276,7 +276,7 @@ ifeq ($(ENABLE_OPTIMIZED),1) - # Don't use -fomit-frame-pointer on Darwin or FreeBSD. - ifneq ($(HOST_OS),FreeBSD) - ifneq ($(HOST_OS),Darwin) -- OmitFramePointer := -fomit-frame-pointer -+ OmitFramePointer := - endif - endif - -@@ -601,7 +601,7 @@ endif - ifdef SHARED_LIBRARY - ifneq ($(HOST_OS), $(filter $(HOST_OS), Cygwin MingW)) - ifneq ($(HOST_OS),Darwin) -- LD.Flags += $(RPATH) -Wl,'$$ORIGIN' -+ LD.Flags += - endif - endif - endif -@@ -641,9 +641,9 @@ ifneq ($(HOST_OS), $(filter $(HOST_OS), Cygwin MingW)) - ifdef TOOLNAME - LD.Flags += $(RPATH) -Wl,'$$ORIGIN/../lib' - ifdef EXAMPLE_TOOL -- LD.Flags += $(RPATH) -Wl,$(ExmplDir) $(DynamicFlag) -+ LD.Flags += $(DynamicFlag) - else -- LD.Flags += $(RPATH) -Wl,$(ToolDir) $(DynamicFlag) -+ LD.Flags += $(DynamicFlag) - endif - endif - else -diff --git a/tools/llvm-config/BuildVariables.inc.in b/tools/llvm-config/BuildVariables.inc.in -index fe87afb..908acd4 100644 ---- a/tools/llvm-config/BuildVariables.inc.in -+++ b/tools/llvm-config/BuildVariables.inc.in -@@ -25,3 +25,4 @@ - #define LLVM_BUILDMODE "@LLVM_BUILDMODE@" - #define LLVM_TARGETS_BUILT "@LLVM_TARGETS_BUILT@" - #define LLVM_SYSTEM_LIBS "@LLVM_SYSTEM_LIBS@" -+#define LLVM_LIBDIR "@LLVM_LIBDIR@" -diff --git a/tools/llvm-config/Makefile b/tools/llvm-config/Makefile -index b20b6bf..0aeba45 100644 ---- a/tools/llvm-config/Makefile -+++ b/tools/llvm-config/Makefile -@@ -55,6 +55,8 @@ $(ObjDir)/BuildVariables.inc: $(BUILDVARIABLES_SRCPATH) Makefile $(ObjDir)/.dir - >> temp.sed - $(Verb) $(ECHO) 's/@LLVM_TARGETS_BUILT@/$(subst /,\/,$(TARGETS_TO_BUILD))/' \ - >> temp.sed -+ $(Verb) $(ECHO) 's/@LLVM_LIBDIR@/$(subst /,\/,$(GENTOO_LIBDIR))/' \ -+ >> temp.sed - $(Verb) $(SED) -f temp.sed < $< > $@ - $(Verb) $(RM) temp.sed - -diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp -index 7edf5ec..c09b702 100644 ---- a/tools/llvm-config/llvm-config.cpp -+++ b/tools/llvm-config/llvm-config.cpp -@@ -250,7 +250,7 @@ int main(int argc, char **argv) { - ActivePrefix = CurrentExecPrefix; - ActiveIncludeDir = ActivePrefix + "/include"; - ActiveBinDir = ActivePrefix + "/bin"; -- ActiveLibDir = ActivePrefix + "/lib"; -+ ActiveLibDir = ActivePrefix + "/" LLVM_LIBDIR; - ActiveIncludeOption = "-I" + ActiveIncludeDir; - } - -diff --git a/utils/FileCheck/Makefile b/utils/FileCheck/Makefile -index 268b7bc..e7674f9 100644 ---- a/utils/FileCheck/Makefile -+++ b/utils/FileCheck/Makefile -@@ -15,7 +15,7 @@ USEDLIBS = LLVMSupport.a - TOOL_NO_EXPORTS = 1 - - # Don't install this utility --NO_INSTALL = 1 -+#NO_INSTALL = 1 - - include $(LEVEL)/Makefile.common - --- -1.8.5.2 - diff --git a/sys-devel/llvm/files/llvm-3.4-cmake-configparser.patch b/sys-devel/llvm/files/llvm-3.4-cmake-configparser.patch deleted file mode 100644 index cda8bdc..0000000 --- a/sys-devel/llvm/files/llvm-3.4-cmake-configparser.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 773560acfad511769017e971991c0305dbc0323d Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> -Date: Wed, 11 Jun 2014 09:40:26 +0200 -Subject: [PATCH] Avoid using external configparser in favor of built-in - ConfigParser. - -We only support Python 2 anyway, and configparser-3.2 is known to break -the build. Since some packages actually force version 3.2, and we do not -to pull in extra dependencies, forcing built-in seems to be the best -option. - -Fixes: https://bugs.gentoo.org/show_bug.cgi?id=500856 ---- - utils/llvm-build/llvmbuild/componentinfo.py | 5 +---- - 1 file changed, 1 insertion(+), 4 deletions(-) - -diff --git a/utils/llvm-build/llvmbuild/componentinfo.py b/utils/llvm-build/llvmbuild/componentinfo.py -index eda3a48..c963ef1 100644 ---- a/utils/llvm-build/llvmbuild/componentinfo.py -+++ b/utils/llvm-build/llvmbuild/componentinfo.py -@@ -3,10 +3,7 @@ Descriptor objects for entities that are part of the LLVM project. - """ - - from __future__ import absolute_import --try: -- import configparser --except: -- import ConfigParser as configparser -+import ConfigParser as configparser - import sys - - from llvmbuild.util import * --- -2.0.0 - diff --git a/sys-devel/llvm/files/llvm-3.4-fix_varargs.patch b/sys-devel/llvm/files/llvm-3.4-fix_varargs.patch deleted file mode 100644 index 377c4da..0000000 --- a/sys-devel/llvm/files/llvm-3.4-fix_varargs.patch +++ /dev/null @@ -1,148 +0,0 @@ -https://bugs.gentoo.org/show_bug.cgi?id=497298 -http://llvm.org/bugs/show_bug.cgi?id=18346 - -SVN revisions: -http://llvm.org/viewvc/llvm-project?view=revision&revision=197503 -http://llvm.org/viewvc/llvm-project?view=revision&revision=197505 -http://llvm.org/viewvc/llvm-project?view=revision&revision=197520 - -diff -Naur llvm-3.4.orig/lib/Target/X86/X86ISelLowering.cpp llvm-3.4/lib/Target/X86/X86ISelLowering.cpp ---- llvm-3.4.orig/lib/Target/X86/X86ISelLowering.cpp 2014-01-08 11:22:23.373060109 +0100 -+++ llvm-3.4/lib/Target/X86/X86ISelLowering.cpp 2014-01-08 11:23:58.517125907 +0100 -@@ -15226,9 +15226,15 @@ - MBB->addSuccessor(EndMBB); - } - -+ // Make sure the last operand is EFLAGS, which gets clobbered by the branch -+ // that was just emitted, but clearly shouldn't be "saved". -+ assert((MI->getNumOperands() <= 3 || -+ !MI->getOperand(MI->getNumOperands() - 1).isReg() || -+ MI->getOperand(MI->getNumOperands() - 1).getReg() == X86::EFLAGS) -+ && "Expected last argument to be EFLAGS"); - unsigned MOVOpc = Subtarget->hasFp256() ? X86::VMOVAPSmr : X86::MOVAPSmr; - // In the XMM save block, save all the XMM argument registers. -- for (int i = 3, e = MI->getNumOperands(); i != e; ++i) { -+ for (int i = 3, e = MI->getNumOperands() - 1; i != e; ++i) { - int64_t Offset = (i - 3) * 16 + VarArgsFPOffset; - MachineMemOperand *MMO = - F->getMachineMemOperand( -diff -Naur llvm-3.4.orig/lib/Target/X86/X86InstrCompiler.td llvm-3.4/lib/Target/X86/X86InstrCompiler.td ---- llvm-3.4.orig/lib/Target/X86/X86InstrCompiler.td 2014-01-08 11:22:23.374060109 +0100 -+++ llvm-3.4/lib/Target/X86/X86InstrCompiler.td 2014-01-08 11:23:39.654112857 +0100 -@@ -72,7 +72,7 @@ - - - // x86-64 va_start lowering magic. --let usesCustomInserter = 1 in { -+let usesCustomInserter = 1, Defs = [EFLAGS] in { - def VASTART_SAVE_XMM_REGS : I<0, Pseudo, - (outs), - (ins GR8:$al, -@@ -81,7 +81,8 @@ - "#VASTART_SAVE_XMM_REGS $al, $regsavefi, $offset", - [(X86vastart_save_xmm_regs GR8:$al, - imm:$regsavefi, -- imm:$offset)]>; -+ imm:$offset), -+ (implicit EFLAGS)]>; - - // The VAARG_64 pseudo-instruction takes the address of the va_list, - // and places the address of the next argument into a register. -diff -Naur llvm-3.4.orig/test/CodeGen/X86/vaargs.ll llvm-3.4/test/CodeGen/X86/vaargs.ll ---- llvm-3.4.orig/test/CodeGen/X86/vaargs.ll 1970-01-01 01:00:00.000000000 +0100 -+++ llvm-3.4/test/CodeGen/X86/vaargs.ll 2014-01-08 11:23:53.451122402 +0100 -@@ -0,0 +1,67 @@ -+; RUN: llc -mcpu=corei7-avx %s -o - | FileCheck %s --check-prefix=CHECK --check-prefix=NO-FLAGS -+target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128" -+target triple = "x86_64-apple-macosx10.9.0" -+ -+%struct.__va_list_tag = type { i32, i32, i8*, i8* } -+ -+; Check that vastart gets the right thing. -+define i32 @sum(i32 %count, ...) nounwind optsize ssp uwtable { -+; CHECK: testb %al, %al -+; CHECK-NEXT: je -+; CHECK-NEXT: ## BB#{{[0-9]+}}: -+; CHECK-NEXT: vmovaps %xmm0, 48(%rsp) -+; CHECK-NEXT: vmovaps %xmm1, 64(%rsp) -+; CHECK-NEXT: vmovaps %xmm2, 80(%rsp) -+; CHECK-NEXT: vmovaps %xmm3, 96(%rsp) -+; CHECK-NEXT: vmovaps %xmm4, 112(%rsp) -+; CHECK-NEXT: vmovaps %xmm5, 128(%rsp) -+; CHECK-NEXT: vmovaps %xmm6, 144(%rsp) -+; CHECK-NEXT: vmovaps %xmm7, 160(%rsp) -+ -+; Check that [EFLAGS] hasn't been pulled in. -+; NO-FLAGS-NOT: %flags -+ -+ %ap = alloca [1 x %struct.__va_list_tag], align 16 -+ %1 = bitcast [1 x %struct.__va_list_tag]* %ap to i8* -+ call void @llvm.va_start(i8* %1) -+ %2 = icmp sgt i32 %count, 0 -+ br i1 %2, label %.lr.ph, label %._crit_edge -+ -+.lr.ph: ; preds = %0 -+ %3 = getelementptr inbounds [1 x %struct.__va_list_tag]* %ap, i64 0, i64 0, i32 0 -+ %4 = getelementptr inbounds [1 x %struct.__va_list_tag]* %ap, i64 0, i64 0, i32 2 -+ %.pre = load i32* %3, align 16 -+ br label %5 -+ -+; <label>:5 ; preds = %.lr.ph, %13 -+ %6 = phi i32 [ %.pre, %.lr.ph ], [ %14, %13 ] -+ %.01 = phi i32 [ %count, %.lr.ph ], [ %15, %13 ] -+ %7 = icmp ult i32 %6, 41 -+ br i1 %7, label %8, label %10 -+ -+; <label>:8 ; preds = %5 -+ %9 = add i32 %6, 8 -+ store i32 %9, i32* %3, align 16 -+ br label %13 -+ -+; <label>:10 ; preds = %5 -+ %11 = load i8** %4, align 8 -+ %12 = getelementptr i8* %11, i64 8 -+ store i8* %12, i8** %4, align 8 -+ br label %13 -+ -+; <label>:13 ; preds = %10, %8 -+ %14 = phi i32 [ %6, %10 ], [ %9, %8 ] -+ %15 = add nsw i32 %.01, 1 -+ %16 = icmp sgt i32 %15, 0 -+ br i1 %16, label %5, label %._crit_edge -+ -+._crit_edge: ; preds = %13, %0 -+ %.0.lcssa = phi i32 [ %count, %0 ], [ %15, %13 ] -+ call void @llvm.va_end(i8* %1) -+ ret i32 %.0.lcssa -+} -+ -+declare void @llvm.va_start(i8*) nounwind -+ -+declare void @llvm.va_end(i8*) nounwind -diff -Naur llvm-3.4.orig/test/CodeGen/X86/vastart-defs-eflags.ll llvm-3.4/test/CodeGen/X86/vastart-defs-eflags.ll ---- llvm-3.4.orig/test/CodeGen/X86/vastart-defs-eflags.ll 1970-01-01 01:00:00.000000000 +0100 -+++ llvm-3.4/test/CodeGen/X86/vastart-defs-eflags.ll 2014-01-08 11:23:39.654112857 +0100 -@@ -0,0 +1,23 @@ -+; RUN: llc %s -o - | FileCheck %s -+ -+target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128" -+target triple = "x86_64-apple-macosx10.10.0" -+ -+; Check that vastart handling doesn't get between testb and je for the branch. -+define i32 @check_flag(i32 %flags, ...) nounwind { -+entry: -+; CHECK: {{^}} testb $2, %bh -+; CHECK-NOT: test -+; CHECK: {{^}} je -+ %and = and i32 %flags, 512 -+ %tobool = icmp eq i32 %and, 0 -+ br i1 %tobool, label %if.end, label %if.then -+ -+if.then: ; preds = %entry -+ br label %if.end -+ -+if.end: ; preds = %entry, %if.then -+ %hasflag = phi i32 [ 1, %if.then ], [ 0, %entry ] -+ ret i32 %hasflag -+} -+ diff --git a/sys-devel/llvm/files/llvm-3.4-gentoo-install.patch b/sys-devel/llvm/files/llvm-3.4-gentoo-install.patch deleted file mode 100644 index a2ba7de..0000000 --- a/sys-devel/llvm/files/llvm-3.4-gentoo-install.patch +++ /dev/null @@ -1,96 +0,0 @@ -From b8846d389ff5e2b768a114f752cf39788accba26 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> -Date: Mon, 19 Aug 2013 13:22:46 +0200 -Subject: [PATCH] gentoo install fixes - ---- - Makefile.config.in | 6 +++--- - Makefile.rules | 6 +++--- - tools/llvm-config/BuildVariables.inc.in | 2 ++ - tools/llvm-config/Makefile | 4 ++++ - tools/llvm-config/llvm-config.cpp | 5 +++-- - utils/FileCheck/Makefile | 2 +- - 7 files changed, 17 insertions(+), 10 deletions(-) - -diff --git a/Makefile.config.in b/Makefile.config.in -index dcca45f..e75ae2e 100644 ---- a/Makefile.config.in -+++ b/Makefile.config.in -@@ -95,10 +95,10 @@ PROJ_internal_prefix := $(prefix) - endif - - PROJ_bindir := $(PROJ_prefix)/bin --PROJ_libdir := $(PROJ_prefix)/lib -+PROJ_libdir := $(PROJ_prefix)/$(GENTOO_LIBDIR) - PROJ_datadir := $(PROJ_prefix)/share --PROJ_docsdir := $(PROJ_prefix)/docs/llvm --PROJ_etcdir := $(PROJ_prefix)/etc/llvm -+PROJ_docsdir := $(PROJ_prefix)/share/doc/@PF@ -+PROJ_etcdir := @EPREFIX@/etc/llvm - PROJ_includedir := $(PROJ_prefix)/include - PROJ_infodir := $(PROJ_prefix)/info - PROJ_mandir := $(PROJ_prefix)/share/man -diff --git a/Makefile.rules b/Makefile.rules -index e53598b..217f754 100644 ---- a/Makefile.rules -+++ b/Makefile.rules -@@ -275,7 +275,7 @@ ifeq ($(ENABLE_OPTIMIZED),1) - BuildMode := Release - # Don't use -fomit-frame-pointer on Darwin or FreeBSD. - ifneq ($(HOST_OS), $(filter $(HOST_OS), Cygwin Darwin DragonFly FreeBSD GNU/kFreeBSD)) -- OmitFramePointer := -fomit-frame-pointer -+ OmitFramePointer := - endif - - CXX.Flags += $(OPTIMIZE_OPTION) $(OmitFramePointer) -diff --git a/tools/llvm-config/BuildVariables.inc.in b/tools/llvm-config/BuildVariables.inc.in -index fe87afb..fd9f2c6 100644 ---- a/tools/llvm-config/BuildVariables.inc.in -+++ b/tools/llvm-config/BuildVariables.inc.in -@@ -25,3 +25,4 @@ - #define LLVM_BUILDMODE "@LLVM_BUILDMODE@" - #define LLVM_TARGETS_BUILT "@LLVM_TARGETS_BUILT@" - #define LLVM_SYSTEM_LIBS "@LLVM_SYSTEM_LIBS@" -+#define LLVM_LIBDIR "@LLVM_LIBDIR@" -diff --git a/tools/llvm-config/Makefile b/tools/llvm-config/Makefile -index b20b6bf..fc56781 100644 ---- a/tools/llvm-config/Makefile -+++ b/tools/llvm-config/Makefile -@@ -55,6 +55,8 @@ $(ObjDir)/BuildVariables.inc: $(BUILDVARIABLES_SRCPATH) Makefile $(ObjDir)/.dir - >> temp.sed - $(Verb) $(ECHO) 's/@LLVM_TARGETS_BUILT@/$(subst /,\/,$(TARGETS_TO_BUILD))/' \ - >> temp.sed -+ $(Verb) $(ECHO) 's/@LLVM_LIBDIR@/$(subst /,\/,$(GENTOO_LIBDIR))/' \ -+ >> temp.sed - $(Verb) $(SED) -f temp.sed < $< > $@ - $(Verb) $(RM) temp.sed - -diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp -index 3924e2e..f439c60 100644 ---- a/tools/llvm-config/llvm-config.cpp -+++ b/tools/llvm-config/llvm-config.cpp -@@ -250,7 +250,7 @@ int main(int argc, char **argv) { - ActivePrefix = CurrentExecPrefix; - ActiveIncludeDir = ActivePrefix + "/include"; - ActiveBinDir = ActivePrefix + "/bin"; -- ActiveLibDir = ActivePrefix + "/lib"; -+ ActiveLibDir = ActivePrefix + "/" LLVM_LIBDIR; - ActiveIncludeOption = "-I" + ActiveIncludeDir; - } - -diff --git a/utils/FileCheck/Makefile b/utils/FileCheck/Makefile -index 268b7bc..e7674f9 100644 ---- a/utils/FileCheck/Makefile -+++ b/utils/FileCheck/Makefile -@@ -15,7 +15,7 @@ USEDLIBS = LLVMSupport.a - TOOL_NO_EXPORTS = 1 - - # Don't install this utility --NO_INSTALL = 1 -+#NO_INSTALL = 1 - - include $(LEVEL)/Makefile.common - --- -1.8.4.2 - diff --git a/sys-devel/llvm/files/llvm-3.5-gcc-4.9.patch b/sys-devel/llvm/files/llvm-3.5-gcc-4.9.patch deleted file mode 100644 index 7da657f..0000000 --- a/sys-devel/llvm/files/llvm-3.5-gcc-4.9.patch +++ /dev/null @@ -1,43 +0,0 @@ -commit 080fb498017d17af2e4d7563608c7d8a848f20da -Author: Sanjoy Das <sanjoy at azulsystems.com> -Date: Thu Jun 19 15:38:02 2014 -0700 - - Fix the --enable-shared build. - - Currently a build configured with ./configure --enable-shared breaks - with an undefined "llvm::cl::parser<llvm::PassInfo - const*>::getOption(unsigned int) const" symbol when linking opt. This - body for this symbol gets emitted into Pass.o (along with the destructor - for PassNameParser), but gets linked into libLLVM-3.5svn.so with local - visibility, causing the link error. - - This fix uses the existing EXTERN_TEMPLATE machinery to force a globally - visible definition for the functions in parser<const PassInfo *> into - Pass.o. - -diff --git a/include/llvm/IR/LegacyPassNameParser.h b/include/llvm/IR/LegacyPassNameParser.h -index e2e4912..a07e3fd 100644 ---- a/include/llvm/IR/LegacyPassNameParser.h -+++ b/include/llvm/IR/LegacyPassNameParser.h -@@ -95,6 +95,8 @@ private: - } - }; - -+EXTERN_TEMPLATE_INSTANTIATION(class cl::parser<const PassInfo *>); -+ - ///===----------------------------------------------------------------------===// - /// FilteredPassNameParser class - Make use of the pass registration - /// mechanism to automatically add a command line argument to opt for -diff --git a/lib/IR/Pass.cpp b/lib/IR/Pass.cpp -index 91d86ae..00ce223 100644 ---- a/lib/IR/Pass.cpp -+++ b/lib/IR/Pass.cpp -@@ -234,6 +234,8 @@ PassNameParser::~PassNameParser() { - // attempting to remove the registration listener is an error. - } - -+TEMPLATE_INSTANTIATION(class cl::parser<const PassInfo *>); -+ - //===----------------------------------------------------------------------===// - // AnalysisUsage Class Implementation - // diff --git a/sys-devel/llvm/files/llvm-3.5-gentoo-install.patch b/sys-devel/llvm/files/llvm-3.5-gentoo-install.patch deleted file mode 100644 index 7a8c9f7..0000000 --- a/sys-devel/llvm/files/llvm-3.5-gentoo-install.patch +++ /dev/null @@ -1,83 +0,0 @@ -From b8846d389ff5e2b768a114f752cf39788accba26 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> -Date: Mon, 19 Aug 2013 13:22:46 +0200 -Subject: [PATCH] gentoo install fixes - ---- - Makefile.config.in | 6 +++--- - Makefile.rules | 6 +++--- - tools/llvm-config/BuildVariables.inc.in | 2 ++ - tools/llvm-config/Makefile | 4 ++++ - tools/llvm-config/llvm-config.cpp | 5 +++-- - utils/FileCheck/Makefile | 2 +- - 7 files changed, 17 insertions(+), 10 deletions(-) - -diff --git a/Makefile.config.in b/Makefile.config.in -index dcca45f..e75ae2e 100644 ---- a/Makefile.config.in -+++ b/Makefile.config.in -@@ -95,10 +95,10 @@ PROJ_internal_prefix := $(prefix) - endif - - PROJ_bindir := $(PROJ_prefix)/bin --PROJ_libdir := $(PROJ_prefix)/lib -+PROJ_libdir := $(PROJ_prefix)/$(GENTOO_LIBDIR) - PROJ_datadir := $(PROJ_prefix)/share --PROJ_docsdir := $(PROJ_prefix)/docs/llvm --PROJ_etcdir := $(PROJ_prefix)/etc/llvm -+PROJ_docsdir := $(PROJ_prefix)/share/doc/@PF@ -+PROJ_etcdir := @EPREFIX@/etc/llvm - PROJ_includedir := $(PROJ_prefix)/include - PROJ_infodir := $(PROJ_prefix)/info - PROJ_mandir := $(PROJ_prefix)/share/man -diff --git a/Makefile.rules b/Makefile.rules -index e53598b..217f754 100644 ---- a/Makefile.rules -+++ b/Makefile.rules -@@ -275,7 +275,7 @@ ifeq ($(ENABLE_OPTIMIZED),1) - BuildMode := Release - # Don't use -fomit-frame-pointer on Darwin or FreeBSD. - ifneq ($(HOST_OS), $(filter $(HOST_OS), Cygwin Darwin DragonFly FreeBSD GNU/kFreeBSD)) -- OmitFramePointer := -fomit-frame-pointer -+ OmitFramePointer := - endif - - CXX.Flags += $(OPTIMIZE_OPTION) $(OmitFramePointer) -diff --git a/tools/llvm-config/BuildVariables.inc.in b/tools/llvm-config/BuildVariables.inc.in -index fe87afb..fd9f2c6 100644 ---- a/tools/llvm-config/BuildVariables.inc.in -+++ b/tools/llvm-config/BuildVariables.inc.in -@@ -25,3 +25,4 @@ - #define LLVM_BUILDMODE "@LLVM_BUILDMODE@" - #define LLVM_TARGETS_BUILT "@LLVM_TARGETS_BUILT@" - #define LLVM_SYSTEM_LIBS "@LLVM_SYSTEM_LIBS@" -+#define LLVM_LIBDIR "@LLVM_LIBDIR@" -diff --git a/tools/llvm-config/Makefile b/tools/llvm-config/Makefile -index b20b6bf..fc56781 100644 ---- a/tools/llvm-config/Makefile -+++ b/tools/llvm-config/Makefile -@@ -55,6 +55,8 @@ $(ObjDir)/BuildVariables.inc: $(BUILDVARIABLES_SRCPATH) Makefile $(ObjDir)/.dir - >> temp.sed - $(Verb) $(ECHO) 's/@LLVM_TARGETS_BUILT@/$(subst /,\/,$(TARGETS_TO_BUILD))/' \ - >> temp.sed -+ $(Verb) $(ECHO) 's/@LLVM_LIBDIR@/$(subst /,\/,$(GENTOO_LIBDIR))/' \ -+ >> temp.sed - $(Verb) $(SED) -f temp.sed < $< > $@ - $(Verb) $(RM) temp.sed - -diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp -index 3924e2e..f439c60 100644 ---- a/tools/llvm-config/llvm-config.cpp -+++ b/tools/llvm-config/llvm-config.cpp -@@ -250,7 +250,7 @@ int main(int argc, char **argv) { - ActivePrefix = CurrentExecPrefix; - ActiveIncludeDir = ActivePrefix + "/include"; - ActiveBinDir = ActivePrefix + "/bin"; -- ActiveLibDir = ActivePrefix + "/lib"; -+ ActiveLibDir = ActivePrefix + "/" LLVM_LIBDIR; - ActiveIncludeOption = "-I" + ActiveIncludeDir; - } - --- -1.8.4.2 - diff --git a/sys-devel/llvm/files/llvm-3.5.0-fix_LLVMExports_cmake.patch b/sys-devel/llvm/files/llvm-3.5.0-fix_LLVMExports_cmake.patch deleted file mode 100644 index 9fbd7b7..0000000 --- a/sys-devel/llvm/files/llvm-3.5.0-fix_LLVMExports_cmake.patch +++ /dev/null @@ -1,39 +0,0 @@ -Index: cmake/modules/Makefile -=================================================================== ---- cmake/modules/Makefile (revision 217451) -+++ cmake/modules/Makefile (working copy) -@@ -33,6 +33,16 @@ - LLVM_ENABLE_RTTI := 0 - endif - -+LLVM_LIBS_TO_EXPORT := $(subst -l,,$(shell $(LLVM_CONFIG) --libs $(LINK_COMPONENTS) || echo Error)) -+ -+ifeq ($(LLVM_LIBS_TO_EXPORT),Error) -+$(error llvm-config --libs failed) -+endif -+ -+ifndef LLVM_LIBS_TO_EXPORT -+$(error LLVM_LIBS_TO_EXPORT cannot be empty) -+endif -+ - OBJMODS := LLVMConfig.cmake LLVMConfigVersion.cmake LLVMExports.cmake - - $(PROJ_OBJ_DIR)/LLVMConfig.cmake: LLVMConfig.cmake.in $(LLVMBuildCMakeFrag) -@@ -45,7 +55,7 @@ - -e 's/@LLVM_VERSION_PATCH@/'"$(LLVM_VERSION_PATCH)"'/' \ - -e 's/@PACKAGE_VERSION@/'"$(LLVMVersion)"'/' \ - -e 's/@LLVM_COMMON_DEPENDS@//' \ -- -e 's/@LLVM_AVAILABLE_LIBS@/'"$(subst -l,,$(LLVMConfigLibs))"'/' \ -+ -e 's/@LLVM_AVAILABLE_LIBS@/'"$(LLVM_LIBS_TO_EXPORT)"'/' \ - -e 's/@LLVM_ALL_TARGETS@/'"$(ALL_TARGETS)"'/' \ - -e 's/@LLVM_TARGETS_TO_BUILD@/'"$(TARGETS_TO_BUILD)"'/' \ - -e 's/@LLVM_TARGETS_WITH_JIT@/'"$(TARGETS_WITH_JIT)"'/' \ -@@ -83,7 +93,7 @@ - $(Echo) 'Generating LLVM CMake target exports file' - $(Verb) ( \ - echo '# LLVM CMake target exports. Do not include directly.' && \ -- for lib in $(subst -l,,$(LLVMConfigLibs)); do \ -+ for lib in $(LLVM_LIBS_TO_EXPORT); do \ - echo 'add_library('"$$lib"' STATIC IMPORTED)' && \ - echo 'set_property(TARGET '"$$lib"' PROPERTY IMPORTED_LOCATION "'"$(PROJ_libdir)/lib$$lib.a"'")' ; \ - done && \ diff --git a/sys-devel/llvm/files/llvm-3.6-gentoo-install.patch b/sys-devel/llvm/files/llvm-3.6-gentoo-install.patch deleted file mode 100644 index c4d0db2..0000000 --- a/sys-devel/llvm/files/llvm-3.6-gentoo-install.patch +++ /dev/null @@ -1,82 +0,0 @@ -From bb016afeba4d9e886e776565a508634a261111a2 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> -Date: Wed, 31 Dec 2014 11:26:12 +0100 -Subject: [PATCH] gentoo build fixes - ---- - Makefile.config.in | 6 +++--- - Makefile.rules | 2 +- - tools/llvm-config/BuildVariables.inc.in | 1 + - tools/llvm-config/Makefile | 2 ++ - tools/llvm-config/llvm-config.cpp | 2 +- - 5 files changed, 8 insertions(+), 5 deletions(-) - -diff --git a/Makefile.config.in b/Makefile.config.in -index d34a2d5..a26cd08 100644 ---- a/Makefile.config.in -+++ b/Makefile.config.in -@@ -99,10 +99,10 @@ PROJ_internal_prefix := $(prefix) - endif - - PROJ_bindir := $(PROJ_prefix)/bin --PROJ_libdir := $(PROJ_prefix)/lib -+PROJ_libdir := $(PROJ_prefix)/$(GENTOO_LIBDIR) - PROJ_datadir := $(PROJ_prefix)/share --PROJ_docsdir := $(PROJ_prefix)/docs/llvm --PROJ_etcdir := $(PROJ_prefix)/etc/llvm -+PROJ_docsdir := $(PROJ_prefix)/share/doc/@PF@ -+PROJ_etcdir := @EPREFIX@/etc/llvm - PROJ_includedir := $(PROJ_prefix)/include - PROJ_infodir := $(PROJ_prefix)/info - PROJ_mandir := $(PROJ_prefix)/share/man -diff --git a/Makefile.rules b/Makefile.rules -index c8c971f..d1258b1 100644 ---- a/Makefile.rules -+++ b/Makefile.rules -@@ -283,7 +283,7 @@ ifeq ($(ENABLE_OPTIMIZED),1) - BuildMode := Release - # Don't use -fomit-frame-pointer on Darwin or FreeBSD. - ifneq ($(HOST_OS), $(filter $(HOST_OS), Cygwin Darwin DragonFly FreeBSD GNU/kFreeBSD)) -- OmitFramePointer := -fomit-frame-pointer -+ OmitFramePointer := - endif - - CXX.Flags += $(OPTIMIZE_OPTION) $(OmitFramePointer) -diff --git a/tools/llvm-config/BuildVariables.inc.in b/tools/llvm-config/BuildVariables.inc.in -index 3f51f49..513ea89 100644 ---- a/tools/llvm-config/BuildVariables.inc.in -+++ b/tools/llvm-config/BuildVariables.inc.in -@@ -26,3 +26,4 @@ - #define LLVM_LIBDIR_SUFFIX "@LLVM_LIBDIR_SUFFIX@" - #define LLVM_TARGETS_BUILT "@LLVM_TARGETS_BUILT@" - #define LLVM_SYSTEM_LIBS "@LLVM_SYSTEM_LIBS@" -+#define LLVM_LIBDIR "@LLVM_LIBDIR@" -diff --git a/tools/llvm-config/Makefile b/tools/llvm-config/Makefile -index 1ff8b6f..5d73c6e 100644 ---- a/tools/llvm-config/Makefile -+++ b/tools/llvm-config/Makefile -@@ -65,6 +65,8 @@ $(ObjDir)/BuildVariables.inc: $(BUILDVARIABLES_SRCPATH) Makefile $(ObjDir)/.dir - >> temp.sed - $(Verb) $(ECHO) 's/@LLVM_TARGETS_BUILT@/$(subst /,\/,$(TARGETS_TO_BUILD))/' \ - >> temp.sed -+ $(Verb) $(ECHO) 's/@LLVM_LIBDIR@/$(subst /,\/,$(GENTOO_LIBDIR))/' \ -+ >> temp.sed - $(Verb) $(SED) -f temp.sed < $< > $@ - $(Verb) $(RM) temp.sed - -diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp -index 224035a..57180ac 100644 ---- a/tools/llvm-config/llvm-config.cpp -+++ b/tools/llvm-config/llvm-config.cpp -@@ -265,7 +265,7 @@ int main(int argc, char **argv) { - ActivePrefix = CurrentExecPrefix; - ActiveIncludeDir = ActivePrefix + "/include"; - ActiveBinDir = ActivePrefix + "/bin"; -- ActiveLibDir = ActivePrefix + "/lib" + LLVM_LIBDIR_SUFFIX; -+ ActiveLibDir = ActivePrefix + "/" LLVM_LIBDIR; - ActiveIncludeOption = "-I" + ActiveIncludeDir; - } - --- -2.2.1 - diff --git a/sys-devel/llvm/files/llvm-3.6.0-ocaml-ctypes-0.4.0.patch b/sys-devel/llvm/files/llvm-3.6.0-ocaml-ctypes-0.4.0.patch deleted file mode 100644 index 154c9cc..0000000 --- a/sys-devel/llvm/files/llvm-3.6.0-ocaml-ctypes-0.4.0.patch +++ /dev/null @@ -1,35 +0,0 @@ -diff -Naur llvm-3.6.0.src.orig/bindings/ocaml/executionengine/llvm_executionengine.ml llvm-3.6.0.src/bindings/ocaml/executionengine/llvm_executionengine.ml ---- llvm-3.6.0.src.orig/bindings/ocaml/executionengine/llvm_executionengine.ml 2015-03-17 11:49:27.274824345 +0100 -+++ llvm-3.6.0.src/bindings/ocaml/executionengine/llvm_executionengine.ml 2015-03-17 11:49:40.333829421 +0100 -@@ -43,11 +43,11 @@ - = "llvm_ee_run_static_dtors" - external data_layout : llexecutionengine -> Llvm_target.DataLayout.t - = "llvm_ee_get_data_layout" --external add_global_mapping_ : Llvm.llvalue -> int64 -> llexecutionengine -> unit -+external add_global_mapping_ : Llvm.llvalue -> nativeint -> llexecutionengine -> unit - = "llvm_ee_add_global_mapping" --external get_global_value_address_ : string -> llexecutionengine -> int64 -+external get_global_value_address_ : string -> llexecutionengine -> nativeint - = "llvm_ee_get_global_value_address" --external get_function_address_ : string -> llexecutionengine -> int64 -+external get_function_address_ : string -> llexecutionengine -> nativeint - = "llvm_ee_get_function_address" - - let add_global_mapping llval ptr ee = -@@ -55,14 +55,14 @@ - - let get_global_value_address name typ ee = - let vptr = get_global_value_address_ name ee in -- if Int64.to_int vptr <> 0 then -+ if Nativeint.to_int vptr <> 0 then - let open Ctypes in !@ (coerce (ptr void) (ptr typ) (ptr_of_raw_address vptr)) - else - raise (Error ("Value " ^ name ^ " not found")) - - let get_function_address name typ ee = - let fptr = get_function_address_ name ee in -- if Int64.to_int fptr <> 0 then -+ if Nativeint.to_int fptr <> 0 then - let open Ctypes in coerce (ptr void) typ (ptr_of_raw_address fptr) - else - raise (Error ("Function " ^ name ^ " not found")) diff --git a/sys-devel/llvm/files/llvm-3.7-nodoctargz.patch b/sys-devel/llvm/files/llvm-3.7-nodoctargz.patch deleted file mode 100644 index 8690523..0000000 --- a/sys-devel/llvm/files/llvm-3.7-nodoctargz.patch +++ /dev/null @@ -1,49 +0,0 @@ ---- docs/Makefile.orig 2012-04-30 17:00:01.000000000 +0200 -+++ docs/Makefile 2012-04-30 17:15:52.000000000 +0200 -@@ -52,11 +52,10 @@ - # 'make generated BUILD_FOR_WEBSITE=1' - generated:: $(generated_targets) - --install-html: $(PROJ_OBJ_DIR)/html.tar.gz -+install-html: - $(Echo) Installing HTML documentation - $(Verb) $(MKDIR) $(DESTDIR)$(PROJ_docsdir)/html - $(Verb) $(DataInstall) $(HTML) $(DESTDIR)$(PROJ_docsdir)/html -- $(Verb) $(DataInstall) $(PROJ_OBJ_DIR)/html.tar.gz $(DESTDIR)$(PROJ_docsdir) - - $(PROJ_OBJ_DIR)/html.tar.gz: $(HTML) - $(Echo) Packaging HTML documentation -@@ -68,12 +67,11 @@ - - install-doxygen: doxygen - $(Echo) Installing doxygen documentation -- $(Verb) $(DataInstall) $(PROJ_OBJ_DIR)/doxygen.tar.gz $(DESTDIR)$(PROJ_docsdir) - $(Verb) cd $(PROJ_OBJ_DIR)/doxygen/html && \ - for DIR in $$($(FIND) . -type d); do \ - DESTSUB="$(DESTDIR)$(PROJ_docsdir)/html/doxygen/$$(echo $$DIR | cut -c 3-)"; \ - $(MKDIR) $$DESTSUB && \ - $(FIND) $$DIR -maxdepth 1 -type f -exec $(DataInstall) {} $$DESTSUB \; ; \ - if [ $$? != 0 ]; then exit 1; fi \ - done - --doxygen: regendoc $(PROJ_OBJ_DIR)/doxygen.tar.gz -+doxygen: regendoc - - regendoc: - $(Echo) Building doxygen documentation -@@ -99,7 +97,6 @@ - install-ocamldoc: ocamldoc - $(Echo) Installing ocamldoc documentation - $(Verb) $(MKDIR) $(DESTDIR)$(PROJ_docsdir)/ocamldoc/html -- $(Verb) $(DataInstall) $(PROJ_OBJ_DIR)/ocamldoc.tar.gz $(DESTDIR)$(PROJ_docsdir) - $(Verb) cd $(PROJ_OBJ_DIR)/ocamldoc && \ - $(FIND) . -type f -exec \ - $(DataInstall) {} $(DESTDIR)$(PROJ_docsdir)/ocamldoc/html \; -@@ -109,7 +106,6 @@ - $(Verb) $(RM) -rf $(PROJ_OBJ_DIR)/ocamldoc.tar* - $(Verb) $(TAR) cf $(PROJ_OBJ_DIR)/ocamldoc.tar ocamldoc - $(Verb) $(GZIPBIN) $(PROJ_OBJ_DIR)/ocamldoc.tar -- $(Verb) $(CP) $(PROJ_OBJ_DIR)/ocamldoc.tar.gz $(PROJ_OBJ_DIR)/ocamldoc/html/ - - regen-ocamldoc: - $(Echo) Building ocamldoc documentation diff --git a/sys-devel/llvm/llvm-scm.ebuild b/sys-devel/llvm/llvm-scm.ebuild deleted file mode 100644 index 76983ef..0000000 --- a/sys-devel/llvm/llvm-scm.ebuild +++ /dev/null @@ -1,533 +0,0 @@ -# Copyright 1999-2015 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-devel/llvm/llvm-9999.ebuild,v 1.105 2015/05/04 16:01:35 voyageur Exp $ - -EAPI=5 - -PYTHON_COMPAT=( python2_7 pypy ) - -inherit eutils flag-o-matic git-r3 multibuild multilib \ - multilib-minimal python-r1 toolchain-funcs pax-utils check-reqs - -DESCRIPTION="Low Level Virtual Machine" -HOMEPAGE="http://llvm.org/" -SRC_URI="" -EGIT_REPO_URI="http://llvm.org/git/llvm.git - https://github.com/llvm-mirror/llvm.git" - -LICENSE="UoI-NCSA" -SLOT="0/${PV}" -KEYWORDS="" -IUSE="clang debug doc gold libedit +libffi multitarget ncurses ocaml python - +static-analyzer test xml video_cards_radeon - kernel_Darwin" - -COMMON_DEPEND=" - sys-libs/zlib:0= - clang? ( - python? ( ${PYTHON_DEPS} ) - static-analyzer? ( - dev-lang/perl:* - ${PYTHON_DEPS} - ) - xml? ( dev-libs/libxml2:2= ) - ) - gold? ( >=sys-devel/binutils-2.22:*[cxx] ) - libedit? ( dev-libs/libedit:0=[${MULTILIB_USEDEP}] ) - libffi? ( >=virtual/libffi-3.0.13-r1:0=[${MULTILIB_USEDEP}] ) - ncurses? ( >=sys-libs/ncurses-5.9-r3:5=[${MULTILIB_USEDEP}] ) - ocaml? ( dev-lang/ocaml:0= )" -# configparser-3.2 breaks the build (3.3 or none at all are fine) -DEPEND="${COMMON_DEPEND} - dev-lang/perl - dev-python/sphinx - >=sys-devel/make-3.81 - >=sys-devel/flex-2.5.4 - >=sys-devel/bison-1.875d - || ( >=sys-devel/gcc-3.0 >=sys-devel/gcc-apple-4.2.1 - ( >=sys-freebsd/freebsd-lib-9.1-r10 sys-libs/libcxx ) - ) - || ( >=sys-devel/binutils-2.18 >=sys-devel/binutils-apple-5.1 ) - clang? ( xml? ( virtual/pkgconfig ) ) - libffi? ( virtual/pkgconfig ) - !!<dev-python/configparser-3.3.0.2 - ${PYTHON_DEPS}" -RDEPEND="${COMMON_DEPEND} - clang? ( >=sys-devel/clang-scm ) - abi_x86_32? ( !<=app-emulation/emul-linux-x86-baselibs-20130224-r2 - !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)] )" -PDEPEND="clang? ( =sys-devel/clang-scm )" - -# pypy gives me around 1700 unresolved tests due to open file limit -# being exceeded. probably GC does not close them fast enough. -REQUIRED_USE="${PYTHON_REQUIRED_USE} - test? ( || ( $(python_gen_useflags 'python*') ) )" - -# Some people actually override that in make.conf. That sucks since -# we need to run install per-directory, and ninja can't do that... -# so why did it call itself ninja in the first place? -CMAKE_MAKEFILE_GENERATOR=emake - -pkg_pretend() { - # in megs - # !clang !debug !multitarget -O2 400 - # !clang !debug multitarget -O2 550 - # clang !debug !multitarget -O2 950 - # clang !debug multitarget -O2 1200 - # !clang debug multitarget -O2 5G - # clang !debug multitarget -O0 -g 12G - # clang debug multitarget -O2 16G - # clang debug multitarget -O0 -g 14G - - local build_size=550 - use clang && build_size=1200 - - if use debug; then - ewarn "USE=debug is known to increase the size of package considerably" - ewarn "and cause the tests to fail." - ewarn - - (( build_size *= 14 )) - elif is-flagq '-g?(gdb)?([1-9])'; then - ewarn "The C++ compiler -g option is known to increase the size of the package" - ewarn "considerably. If you run out of space, please consider removing it." - ewarn - - (( build_size *= 10 )) - fi - - # Multiply by number of ABIs :). - local abis=( $(multilib_get_enabled_abis) ) - (( build_size *= ${#abis[@]} )) - - local CHECKREQS_DISK_BUILD=${build_size}M - check-reqs_pkg_pretend - - if [[ ${MERGE_TYPE} != binary ]]; then - echo 'int main() {return 0;}' > "${T}"/test.cxx || die - ebegin "Trying to build a C++11 test program" - if ! $(tc-getCXX) -std=c++11 -o /dev/null "${T}"/test.cxx; then - eerror "LLVM-${PV} requires C++11-capable C++ compiler. Your current compiler" - eerror "does not seem to support -std=c++11 option. Please upgrade your compiler" - eerror "to gcc-4.7 or an equivalent version supporting C++11." - die "Currently active compiler does not support -std=c++11" - fi - eend ${?} - fi -} - -pkg_setup() { - pkg_pretend -} - -src_unpack() { - if use clang; then - git-r3_fetch "http://llvm.org/git/compiler-rt.git - https://github.com/llvm-mirror/compiler-rt.git" - git-r3_fetch "http://llvm.org/git/clang.git - https://github.com/llvm-mirror/clang.git" - git-r3_fetch "http://llvm.org/git/clang-tools-extra.git - https://github.com/llvm-mirror/clang-tools-extra.git" - fi - git-r3_fetch - - if use clang; then - git-r3_checkout http://llvm.org/git/compiler-rt.git \ - "${S}"/projects/compiler-rt - git-r3_checkout http://llvm.org/git/clang.git \ - "${S}"/tools/clang - git-r3_checkout http://llvm.org/git/clang-tools-extra.git \ - "${S}"/tools/clang/tools/extra - fi - git-r3_checkout -# rm -f "${S}"/tools/clang "${S}"/projects/compiler-rt \ -# || die "symlinks removal failed" - -# if use clang; then -# mv "${WORKDIR}"/cfe-${PV/_}.src "${S}"/tools/clang \ -# || die "clang source directory move failed" -# mv "${WORKDIR}"/compiler-rt-${PV/_}.src "${S}"/projects/compiler-rt \ -# || die "compiler-rt source directory move failed" -# mv "${WORKDIR}"/clang-tools-extra-${PV/_}.src "${S}"/tools/clang/tools/extra \ -# || die "clang-tools-extra source directory move failed" -# fi -} - -src_prepare() { - epatch "${FILESDIR}"/${PN}-3.7-nodoctargz.patch -# epatch "${FILESDIR}"/${PN}-3.5-gcc-4.9.patch -# epatch "${FILESDIR}"/${PN}-3.6-gentoo-install.patch - # Make ocaml warnings non-fatal, bug #537308 - sed -e "/RUN/s/-warn-error A//" -i test/Bindings/OCaml/*ml || die - - if use clang; then - # Automatically select active system GCC's libraries, bugs #406163 and #417913 - epatch "${FILESDIR}"/clang-3.5-gentoo-runtime-gcc-detection-v3.patch - - epatch "${FILESDIR}"/clang-3.6-gentoo-install.patch - fi - - if use prefix && use clang; then - sed -i -e "/^CFLAGS /s@-Werror@-I${EPREFIX}/usr/include@" \ - projects/compiler-rt/make/platform/clang_*.mk || die - fi - - local sub_files=( - Makefile.config.in - Makefile.rules - tools/llvm-config/llvm-config.cpp - ) - use clang && sub_files+=( - tools/clang/lib/Driver/Tools.cpp - tools/clang/tools/scan-build/scan-build - ) - - # unfortunately ./configure won't listen to --mandir and the-like, so take - # care of this. - # note: we're setting the main libdir intentionally. - # where per-ABI is appropriate, we use $(GENTOO_LIBDIR) make. - einfo "Fixing install dirs" - sed -e "s,@libdir@,$(get_libdir),g" \ - -e "s,@PF@,${PF},g" \ - -e "s,@EPREFIX@,${EPREFIX},g" \ - -i "${sub_files[@]}" \ - || die "install paths sed failed" - - if use clang; then - # constantly fails for a long time, likely due to our patches - rm tools/clang/test/Driver/cross-linux.c || die - fi - - # User patches - epatch_user - - python_setup -} - -multilib_src_configure() { - # disable timestamps since they confuse ccache - local conf_flags=( - --disable-timestamps - --enable-keep-symbols - --enable-shared - --with-optimize-option= - $(tc-is-static-only && echo --disable-shared) - $(use_enable !debug optimized) - $(use_enable debug assertions) - $(use_enable debug expensive-checks) - $(use_enable libedit) - $(use_enable ncurses terminfo) - $(use_enable libffi) - ) - - # well, it's used only by clang executable c-index-test - if multilib_is_native_abi && use clang && use xml; then - conf_flags+=( XML2CONFIG="$(tc-getPKG_CONFIG) libxml-2.0" ) - else - conf_flags+=( ac_cv_prog_XML2CONFIG="" ) - fi - - local targets bindings - if use multitarget; then - targets='all' - else - targets='host,cpp' - use video_cards_radeon && targets+=',r600' - fi - conf_flags+=( --enable-targets=${targets} ) - - if multilib_is_native_abi; then - use gold && conf_flags+=( --with-binutils-include="${EPREFIX}"/usr/include/ ) - # extra commas don't hurt - use ocaml && bindings+=',ocaml' - fi - - [[ ${bindings} ]] || bindings='none' - conf_flags+=( --enable-bindings=${bindings} ) - - if use libffi; then - local CPPFLAGS=${CPPFLAGS} - append-cppflags "$(pkg-config --cflags libffi)" - fi - - # llvm prefers clang over gcc, so we may need to force that - tc-export CC CXX - - ECONF_SOURCE=${S} \ - econf "${conf_flags[@]}" -} - -set_makeargs() { - - MAKEARGS=( - VERBOSE=1 - REQUIRES_RTTI=1 - GENTOO_LIBDIR=$(get_libdir) - ) - if [ $(get_libdir) = "lib32" ]; then - MAKEARGS+=( - CLANG_NO_RUNTIME=1 - ) - fi - - # for tests, we want it all! otherwise, we may use a little filtering... - # adding ONLY_TOOLS also disables unittest building... - if [[ ${EBUILD_PHASE_FUNC} != src_test ]]; then - local tools=( llvm-config ) - use clang && tools+=( clang ) - - if multilib_is_native_abi; then - tools+=( - opt llvm-as llvm-dis llc llvm-ar llvm-nm llvm-link lli - llvm-extract llvm-mc llvm-bcanalyzer llvm-diff macho-dump - llvm-objdump llvm-readobj llvm-rtdyld llvm-dwarfdump llvm-cov - llvm-size llvm-stress llvm-mcmarkup llvm-profdata - llvm-symbolizer obj2yaml yaml2obj lto bugpoint - ) - - # the build system runs explicitly specified tools in parallel, - # so we need to split it into two runs - if [[ ${1} != -1 ]]; then - # those require lto - tools+=( llvm-lto ) - use gold && tools+=( gold ) - - # those require clang :) - # we need to explicitly specify all its tools - # since we're passing BUILD_CLANG_ONLY - use clang && tools+=( - clang/tools/{clang-check,clang-format,extra} - ) - fi - fi - - MAKEARGS+=( - # filter tools + disable unittests implicitly - ONLY_TOOLS="${tools[*]}" - - # this disables unittests & docs from clang - BUILD_CLANG_ONLY=YES - ) - fi -} - -multilib_src_compile() { - local MAKEARGS - set_makeargs -1 - emake "${MAKEARGS[@]}" - - if multilib_is_native_abi; then - set_makeargs - emake -C tools "${MAKEARGS[@]}" - -# emake -C "${S}"/docs -f Makefile.sphinx man -# use clang && emake -C "${S}"/tools/clang/docs/tools \ -# BUILD_FOR_WEBSITE=1 DST_MAN_DIR="${T}"/ man -# use doc && emake -C "${S}"/docs -f Makefile.sphinx html - fi - - if use debug; then - pax-mark m Debug+Asserts+Checks/bin/llvm-rtdyld - pax-mark m Debug+Asserts+Checks/bin/lli - pax-mark m Debug+Asserts+Checks/bin/lli-child-target - else - pax-mark m Release/bin/llvm-rtdyld - pax-mark m Release/bin/lli - pax-mark m Release/bin/lli-child-target - fi -} - -multilib_src_test() { - local MAKEARGS - set_makeargs - - # build the remaining tools & unittests - emake "${MAKEARGS[@]}" - - pax-mark m unittests/ExecutionEngine/JIT/Release/JITTests - pax-mark m unittests/ExecutionEngine/MCJIT/Release/MCJITTests - pax-mark m unittests/Support/Release/SupportTests - - # respect TMPDIR! - local -x LIT_PRESERVES_TMP=1 - emake "${MAKEARGS[@]}" check - use clang && emake "${MAKEARGS[@]}" -C tools/clang test -} - -src_install() { - local MULTILIB_CHOST_TOOLS=( - /usr/bin/llvm-config - ) - - local MULTILIB_WRAPPED_HEADERS=( - /usr/include/llvm/Config/config.h - /usr/include/llvm/Config/llvm-config.h - ) - - if use clang; then - # note: magic applied below - MULTILIB_CHOST_TOOLS+=( - /usr/bin/clang - /usr/bin/clang++ - /usr/bin/clang-${PV} - /usr/bin/clang++-${PV} - ) - - MULTILIB_WRAPPED_HEADERS+=( - /usr/include/clang/Config/config.h - ) - fi - - multilib-minimal_src_install -} - -multilib_src_install() { - local MAKEARGS - set_makeargs - - local root=${D}/_${ABI} - - emake "${MAKEARGS[@]}" DESTDIR="${root}" install - multibuild_merge_root "${root}" "${D}" - - if ! multilib_is_native_abi; then - # Backwards compat, will be happily removed someday. - dosym "${CHOST}"-llvm-config /usr/bin/llvm-config.${ABI} - else - # Install docs. -# doman "${S}"/docs/_build/man/*.1 -# use clang && doman "${T}"/clang.1 -# use doc && dohtml -r "${S}"/docs/_build/html/ - - # Symlink the gold plugin. - if use gold; then - dodir /usr/${CHOST}/binutils-bin/lib/bfd-plugins - dosym ../../../../$(get_libdir)/LLVMgold.so \ - /usr/${CHOST}/binutils-bin/lib/bfd-plugins/LLVMgold.so - fi - fi - - # apply CHOST and PV to clang executables - # they're statically linked so we don't have to worry about the lib - if use clang; then - local clang_tools=( clang clang++ ) - local i - - # append ${PV} and symlink back - # TODO: use alternatives.eclass? does that make any sense? - # maybe with USE=-clang on :0 and USE=clang on older - for i in "${clang_tools[@]}"; do - mv "${ED%/}/usr/bin/${i}"{,-${PV}} || die - dosym "${i}"-${PV} /usr/bin/${i} - done - - # now prepend ${CHOST} and let the multilib-build.eclass symlink it - if ! multilib_is_native_abi; then - # non-native? let's replace it with a simple wrapper - for i in "${clang_tools[@]}"; do - rm "${ED%/}/usr/bin/${i}-${PV}" || die - cat > "${T}"/wrapper.tmp <<-_EOF_ - #!${EPREFIX}/bin/sh - exec "${i}-${PV}" $(get_abi_CFLAGS) "\${@}" - _EOF_ - newbin "${T}"/wrapper.tmp "${i}-${PV}" - done - fi - fi - - # Fix install_names on Darwin. The build system is too complicated - # to just fix this, so we correct it post-install - local lib= f= odylib= ndylib= libpv=${PV} - if [[ ${CHOST} == *-darwin* ]] ; then - eval $(grep PACKAGE_VERSION= configure) - [[ -n ${PACKAGE_VERSION} ]] && libpv=${PACKAGE_VERSION} - libpvminor=${libpv%.[0-9]*} - for lib in lib{EnhancedDisassembly,LLVM-${libpv},LTO,profile_rt,clang}.dylib LLVMHello.dylib clang/${libpv}/lib/darwin/libclang_rt.asan_{osx,iossim}_dynamic.dylib; do - # libEnhancedDisassembly is Darwin10 only, so non-fatal - # + omit clang libs if not enabled - [[ -f ${ED}/usr/lib/${lib} ]] || continue - - ebegin "fixing install_name of $lib" - install_name_tool \ - -id "${EPREFIX}"/usr/lib/${lib} \ - "${ED}"/usr/lib/${lib} - eend $? - done - for f in "${ED}"/usr/bin/* "${ED}"/usr/lib/lib*.dylib "${ED}"/usr/lib/clang/${libpv}/lib/darwin/*.dylib ; do - # omit clang libs if not enabled - [[ -f "${f}" ]] || continue - - scanmacho -BF'%n#f' "${f}" | tr ',' '\n' | \ - while read odylib ; do - ndylib= - case ${odylib} in - */libclang.dylib) - ndylib="${EPREFIX}"/usr/lib/libclang.dylib - ;; - */libLLVM-${libpv}.dylib) - ndylib="${EPREFIX}"/usr/lib/libLLVM-${libpv}.dylib - ;; - */libLLVM-${libpvminor}.dylib) - ndylib="${EPREFIX}"/usr/lib/libLLVM-${libpvminor}.dylib - ;; - */libLTO.dylib) - ndylib="${EPREFIX}"/usr/lib/libLTO.dylib - ;; - esac - if [[ -n ${ndylib} ]] ; then - ebegin "fixing install_name reference to ${odylib} of ${f##*/}" - install_name_tool \ - -change "${odylib}" "${ndylib}" \ - "${f}" - eend $? - fi - done - done - fi -} - -multilib_src_install_all() { -#insinto /usr/share/vim/vimfiles/syntax -#doins utils/vim/*.vim - - if use clang; then - cd tools/clang || die - - if use static-analyzer ; then - dobin tools/scan-build/ccc-analyzer - dosym ccc-analyzer /usr/bin/c++-analyzer - dobin tools/scan-build/scan-build - - insinto /usr/share/${PN} - doins tools/scan-build/scanview.css - doins tools/scan-build/sorttable.js - fi - - python_inst() { - if use static-analyzer ; then - pushd tools/scan-view >/dev/null || die - - python_doscript scan-view - - touch __init__.py || die - python_moduleinto clang - python_domodule __init__.py Reporter.py Resources ScanView.py startfile.py - - popd >/dev/null || die - fi - - if use python ; then - pushd bindings/python/clang >/dev/null || die - - python_moduleinto clang - python_domodule __init__.py cindex.py enumerations.py - - popd >/dev/null || die - fi - - # AddressSanitizer symbolizer (currently separate) - python_doscript "${S}"/projects/compiler-rt/lib/asan/scripts/asan_symbolize.py - } - python_foreach_impl python_inst - fi -} diff --git a/sys-devel/llvm/metadata.xml b/sys-devel/llvm/metadata.xml deleted file mode 100644 index 1a63066..0000000 --- a/sys-devel/llvm/metadata.xml +++ /dev/null @@ -1,28 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> -<pkgmetadata> - <maintainer> - <email>voyageur@gentoo.org</email> - <name>Bernard Cafarelli</name> - </maintainer> - <maintainer> - <email>mgorny@gentoo.org</email> - <name>Michał Górny</name> - </maintainer> - <longdescription>Low Level Virtual Machine (LLVM) is: - 1. A compilation strategy designed to enable effective program optimization across the entire lifetime of a program. LLVM supports effective optimization at compile time, link-time (particularly interprocedural), run-time and offline (i.e., after software is installed), while remaining transparent to developers and maintaining compatibility with existing build scripts. - 2. A virtual instruction set - LLVM is a low-level object code representation that uses simple RISC-like instructions, but provides rich, language-independent, type information and dataflow (SSA) information about operands. This combination enables sophisticated transformations on object code, while remaining light-weight enough to be attached to the executable. This combination is key to allowing link-time, run-time, and offline transformations. - 3. A compiler infrastructure - LLVM is also a collection of source code that implements the language and compilation strategy. The primary components of the LLVM infrastructure are a GCC-based C and C++ front-end, a link-time optimization framework with a growing set of global and interprocedural analyses and transformations, static back-ends for many popular (and some obscure) architectures, a back-end which emits portable C code, and a Just-In-Time compilers for several architectures. - 4. LLVM does not imply things that you would expect from a high-level virtual machine. It does not require garbage collection or run-time code generation (In fact, LLVM makes a great static compiler!). Note that optional LLVM components can be used to build high-level virtual machines and other systems that need these services.</longdescription> - <use> - <flag name='clang'>Build the clang C/C++ compiler</flag> - <flag name='cmake'>Enable cmake support (experimental)</flag> - <flag name='doc'>Build and install the HTML documentation and regenerate the man pages</flag> - <flag name='gold'>Build the gold linker plugin</flag> - <flag name='llvm-gcc'>Build LLVM with <pkg>sys-devel/llvm-gcc</pkg></flag> - <flag name='multitarget'>Build all host targets (default: host only)</flag> - <flag name='ncurses'>Support querying terminal properties using ncurses' terminfo</flag> - <flag name='static-analyzer'>Install the Clang static analyzer (requires USE=clang)</flag> - <flag name='udis86'>Enable support for <pkg>dev-libs/udis86</pkg> disassembler library</flag> - </use> -</pkgmetadata> |