diff options
Diffstat (limited to 'sys-devel/llvm')
44 files changed, 0 insertions, 2625 deletions
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> |