summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2016-01-07 15:12:21 +0100
committerMichał Górny <mgorny@gentoo.org>2016-01-07 23:09:41 +0100
commite6337c4fed1e26111f0f8cb3cbeee486c3c8db77 (patch)
treef7b844e799a9c0cc895f2f0b929f1df1d7b1ff10 /sys-devel
parentsys-devel/clang: Remove ancient 3.1 version (diff)
downloadgentoo-e6337c4fed1e26111f0f8cb3cbeee486c3c8db77.tar.gz
gentoo-e6337c4fed1e26111f0f8cb3cbeee486c3c8db77.tar.bz2
gentoo-e6337c4fed1e26111f0f8cb3cbeee486c3c8db77.zip
sys-devel/llvm: Remove ancient 3.1 version
Diffstat (limited to 'sys-devel')
-rw-r--r--sys-devel/llvm/Manifest1
-rw-r--r--sys-devel/llvm/files/cl-patches/0001-r600-Add-some-intrinsic-definitions.patch64
-rw-r--r--sys-devel/llvm/files/cl-patches/0002-r600-Add-get_global_size-and-get_local_size-intrinsi.patch27
-rw-r--r--sys-devel/llvm/files/llvm-2.6-commandguide-nops.patch30
-rw-r--r--sys-devel/llvm/files/llvm-3.1-ExecutionEngine_tests_xfail_arm.patch27
-rw-r--r--sys-devel/llvm/files/llvm-3.1-docs-pod-markup-fixes.patch28
-rw-r--r--sys-devel/llvm/files/llvm-3.1-fix_debug_line_info.patch65
-rw-r--r--sys-devel/llvm/files/llvm-3.1-ivybridge_support.patch13
-rw-r--r--sys-devel/llvm/llvm-3.1-r2.ebuild191
9 files changed, 0 insertions, 446 deletions
diff --git a/sys-devel/llvm/Manifest b/sys-devel/llvm/Manifest
index 90b47c421ff..b0970e7c16b 100644
--- a/sys-devel/llvm/Manifest
+++ b/sys-devel/llvm/Manifest
@@ -20,7 +20,6 @@ DIST compiler-rt-3.7.0.src.tar.xz 1192832 SHA256 227fa998520bc94974a428dc8e7654d
DIST compiler-rt-3.7.1.src.tar.xz 1181772 SHA256 9d4769e4a927d3824bcb7a9c82b01e307c68588e6de4e7f04ab82d82c5af8181 SHA512 bf434519ea0838264c30de1e1e8681320aa868df0ecc825a45c659077b963a4120c18216946558cbf8aea24a8ac8ec39af2066dab906bc7cabc0894d51d61325 WHIRLPOOL 0bea047e48622884a6fc6bb3826046e9de5b3192006cc41c0ccd9d6c611674869c3c15988b531a0f7d9fea2cf951b90ecef385b85db765c6f99a48692fdcf223
DIST lldb-3.7.0.src.tar.xz 10649660 SHA256 f4d7505bc111044eaa4033af012221e492938405b62522b8e3e354c20c4b71e9 SHA512 52157782ef13e2c8b7b35ff3ccc05887195fe46ddb6bafcf0707a3c46c1e034734b55342b8dbfc46cae7a8c3cb1012345284e4bedb2344c5016b8d19a12e90df WHIRLPOOL 8c0803a51820ec67944e27061c858e95a92aefa38a1540241fead2b63c5b065c1268cf958b14d8841f62fc8aea5da1e20204704426598bfc2c4e61bcda135c43
DIST lldb-3.7.1.src.tar.xz 10650524 SHA256 9a0bc315ef55f44c98cdf92d064df0847f453ed156dd0ef6a87e04f5fd6a0e01 SHA512 d2d3e1052026edd6ef9113ff5362acb4a32cef598098b4031c35e389301130ef2e1bda594f30de4d65c9fdc0beaecdd35afcf36676eb540baad34015aca294d1 WHIRLPOOL bba9c700788f0cf86ac1de51383a223e1c92f724719cdd327d83189cb77714c1e10fb78569aeed3b3c639062a3410bb114f646a271fd0d9e8c9a8e45d090330a
-DIST llvm-3.1.src.tar.gz 11077429 SHA256 1ea05135197b5400c1f88d00ff280d775ce778f8f9ea042e25a1e1e734a4b9ab SHA512 fb941094601043e405ccc57473414ef92437b09c200e71614f93d8e93b2a58cca8d78c385be037e064b0711cd6268802c774ce4a40fc0ea17bf576305304d2aa WHIRLPOOL c5c72e139296e1c186131f991010f52f958063a4fcfcb1f8527b53a2aaa7edcaca70ab6cf86c25d08640dcf6d720a865fda7dc7eb06cf1ce9c23fd37b5d597ef
DIST llvm-3.2-manpages.tar.bz2 25962 SHA256 159eaaaf59a2cee66f6aa0bbc93ca4c9fa37a9a25d4116f085556cdbc32f75ca SHA512 75ce41827f99b9e08f0c3e374c49f8a231653bca28bea158ece551e5934bc61ae21bfaf158490f83b05c1a7926b95c8832c0eb023280dcafa671e7d551efa17e WHIRLPOOL 58382b3e92b2ef8b1f5a7ebf2d893852253976b781b2b2acd11dfd914fad9776f59ddc5559d3986832a00fde88539db6a5882aa69a6f3ceca90337a59420acc1
DIST llvm-3.2.src.tar.gz 12275252 SHA256 125090c4d26740f1d5e9838477c931ed7d9ad70d599ba265f46f3a42cb066343 SHA512 cc66171322dbbe40bcac0e0ea5b09df8ff52df63ded304f841f32f702270d6ab1512216413ee52498c3ebee8cd39c4cd23e3855d591944bc2ac0ae76f5be62cc WHIRLPOOL c3a39b2426293d0251b7769607ade873bb6bf8d54e7c8055773a9b75742bc8e39049fb71409a258c6f3d98775b78c280d4bfe4223ba91e5ed6ecae0eddf910e5
DIST llvm-3.3-manpages.tar.bz2 27098 SHA256 46bb22d63d5fe7dd04e1a7bb7e16c03d93f2ed51d31540cfb9d97ed70059aa77 SHA512 6f24b66b13025d0606908f91ad9b4fc6de1b4aac2d97d261f6b989065476cf153d2f84792f8dd4972b95fb1a45a3931c328df3bcf8ce5ab21170a7a912a39783 WHIRLPOOL 31b9c3635b698f404b75b87c7891b4b6be9cbeb6062bcb6fba5476b0b3069a486ba60c27ab2b12b8a2da9404f666617162041860f023951050a9fc4c7d27748a
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 9d99c9cff35..00000000000
--- 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 db176dd56a1..00000000000
--- 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/llvm-2.6-commandguide-nops.patch b/sys-devel/llvm/files/llvm-2.6-commandguide-nops.patch
deleted file mode 100644
index 583fdf95f95..00000000000
--- 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-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 05a20e673a8..00000000000
--- 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 cd8a62a037d..00000000000
--- 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 de2d46b618c..00000000000
--- 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 a03ec422467..00000000000
--- 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/llvm-3.1-r2.ebuild b/sys-devel/llvm/llvm-3.1-r2.ebuild
deleted file mode 100644
index fd9ce132d8e..00000000000
--- a/sys-devel/llvm/llvm-3.1-r2.ebuild
+++ /dev/null
@@ -1,191 +0,0 @@
-# Copyright 1999-2015 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI="4"
-PYTHON_DEPEND="2"
-inherit eutils flag-o-matic multilib toolchain-funcs python pax-utils
-
-DESCRIPTION="Low Level Virtual Machine"
-HOMEPAGE="http://llvm.org/"
-SRC_URI="http://llvm.org/releases/${PV}/${P}.src.tar.gz"
-
-LICENSE="UoI-NCSA"
-SLOT="0"
-KEYWORDS="amd64 arm ppc x86 ~amd64-fbsd ~x86-fbsd ~x64-freebsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
-IUSE="debug gold +libffi multitarget ocaml test udis86 vim-syntax"
-
-DEPEND="dev-lang/perl
- >=sys-devel/make-3.79
- >=sys-devel/flex-2.5.4
- >=sys-devel/bison-1.875d
- || ( >=sys-devel/gcc-3.0 >=sys-devel/gcc-apple-4.2.1 )
- || ( >=sys-devel/binutils-2.18 >=sys-devel/binutils-apple-3.2.3 )
- gold? ( >=sys-devel/binutils-2.22[cxx] )
- libffi? ( virtual/pkgconfig
- virtual/libffi )
- ocaml? ( dev-lang/ocaml )
- udis86? ( dev-libs/udis86[pic(+)] )"
-RDEPEND="dev-lang/perl
- libffi? ( virtual/libffi )
- vim-syntax? ( || ( app-editors/vim app-editors/gvim ) )"
-
-S=${WORKDIR}/${P}.src
-
-pkg_setup() {
- # Required for test and build
- python_set_active_version 2
- python_pkg_setup
-
- # need to check if the active compiler is ok
-
- broken_gcc=" 3.2.2 3.2.3 3.3.2 4.1.1 "
- broken_gcc_x86=" 3.4.0 3.4.2 "
- broken_gcc_amd64=" 3.4.6 "
-
- gcc_vers=$(gcc-fullversion)
-
- if [[ ${broken_gcc} == *" ${version} "* ]] ; then
- elog "Your version of gcc is known to miscompile llvm."
- elog "Check http://www.llvm.org/docs/GettingStarted.html for"
- elog "possible solutions."
- die "Your currently active version of gcc is known to miscompile llvm"
- fi
-
- if [[ ${CHOST} == i*86-* && ${broken_gcc_x86} == *" ${version} "* ]] ; then
- elog "Your version of gcc is known to miscompile llvm on x86"
- elog "architectures. Check"
- elog "http://www.llvm.org/docs/GettingStarted.html for possible"
- elog "solutions."
- die "Your currently active version of gcc is known to miscompile llvm"
- fi
-
- if [[ ${CHOST} == x86_64-* && ${broken_gcc_amd64} == *" ${version} "* ]];
- then
- elog "Your version of gcc is known to miscompile llvm in amd64"
- elog "architectures. Check"
- elog "http://www.llvm.org/docs/GettingStarted.html for possible"
- elog "solutions."
- die "Your currently active version of gcc is known to miscompile llvm"
- fi
-}
-
-src_prepare() {
- # unfortunately ./configure won't listen to --mandir and the-like, so take
- # care of this.
- einfo "Fixing install dirs"
- sed -e 's,^PROJ_docsdir.*,PROJ_docsdir := $(PROJ_prefix)/share/doc/'${PF}, \
- -e 's,^PROJ_etcdir.*,PROJ_etcdir := '"${EPREFIX}"'/etc/llvm,' \
- -e 's,^PROJ_libdir.*,PROJ_libdir := $(PROJ_prefix)/'$(get_libdir)/${PN}, \
- -i Makefile.config.in || die "Makefile.config sed failed"
- sed -e "/ActiveLibDir = ActivePrefix/s/lib/$(get_libdir)\/${PN}/" \
- -i tools/llvm-config/llvm-config.cpp || die "llvm-config sed failed"
-
- einfo "Fixing rpath and CFLAGS"
- sed -e 's,\$(RPATH) -Wl\,\$(\(ToolDir\|LibDir\)),$(RPATH) -Wl\,'"${EPREFIX}"/usr/$(get_libdir)/${PN}, \
- -e '/OmitFramePointer/s/-fomit-frame-pointer//' \
- -i Makefile.rules || die "rpath sed failed"
- if use gold; then
- sed -e 's,\$(SharedLibDir),'"${EPREFIX}"/usr/$(get_libdir)/${PN}, \
- -i tools/gold/Makefile || die "gold rpath sed failed"
- fi
-
- # Specify python version
- python_convert_shebangs -r 2 test/Scripts
-
- epatch "${FILESDIR}"/${PN}-2.6-commandguide-nops.patch
- epatch "${FILESDIR}"/${PN}-2.9-nodoctargz.patch
- epatch "${FILESDIR}"/${PN}-3.0-PPC_macro.patch
- epatch "${FILESDIR}"/${P}-ivybridge_support.patch
- epatch "${FILESDIR}"/${P}-fix_debug_line_info.patch
- epatch "${FILESDIR}"/${P}-ExecutionEngine_tests_xfail_arm.patch
- epatch "${FILESDIR}"/${P}-docs-pod-markup-fixes.patch
-
- # Apply r600 OpenCL-related patches, bug #425688
- epatch "${FILESDIR}"/cl-patches/*.patch
-
- # User patches
- epatch_user
-}
-
-src_configure() {
- local CONF_FLAGS="--enable-shared
- --with-optimize-option=
- $(use_enable !debug optimized)
- $(use_enable debug assertions)
- $(use_enable debug expensive-checks)"
-
- if use multitarget; then
- CONF_FLAGS="${CONF_FLAGS} --enable-targets=all"
- else
- CONF_FLAGS="${CONF_FLAGS} --enable-targets=host,cpp"
- fi
-
- if use amd64; then
- CONF_FLAGS="${CONF_FLAGS} --enable-pic"
- fi
-
- if use gold; then
- CONF_FLAGS="${CONF_FLAGS} --with-binutils-include=${EPREFIX}/usr/include/"
- fi
- if use ocaml; then
- CONF_FLAGS="${CONF_FLAGS} --enable-bindings=ocaml"
- else
- CONF_FLAGS="${CONF_FLAGS} --enable-bindings=none"
- fi
-
- if use udis86; then
- CONF_FLAGS="${CONF_FLAGS} --with-udis86"
- fi
-
- if use libffi; then
- append-cppflags "$(pkg-config --cflags libffi)"
- fi
- CONF_FLAGS="${CONF_FLAGS} $(use_enable libffi)"
-
- # llvm prefers clang over gcc, so we may need to force that
- tc-export CC CXX
- econf ${CONF_FLAGS}
-}
-
-src_compile() {
- emake VERBOSE=1 KEEP_SYMBOLS=1 REQUIRES_RTTI=1
-
- pax-mark m Release/bin/lli
- if use test; then
- pax-mark m unittests/ExecutionEngine/JIT/Release/JITTests
- fi
-}
-
-src_install() {
- emake KEEP_SYMBOLS=1 DESTDIR="${D}" install
-
- if use vim-syntax; then
- insinto /usr/share/vim/vimfiles/syntax
- doins utils/vim/*.vim
- 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=
- if [[ ${CHOST} == *-darwin* ]] ; then
- for lib in lib{EnhancedDisassembly,LLVM-${PV},LTO,profile_rt}.dylib {BugpointPasses,LLVMHello}.dylib ; do
- # libEnhancedDisassembly is Darwin10 only, so non-fatal
- [[ -f ${ED}/usr/lib/${PN}/${lib} ]] || continue
- ebegin "fixing install_name of $lib"
- install_name_tool \
- -id "${EPREFIX}"/usr/lib/${PN}/${lib} \
- "${ED}"/usr/lib/${PN}/${lib}
- eend $?
- done
- for f in "${ED}"/usr/bin/* "${ED}"/usr/lib/${PN}/libLTO.dylib ; do
- odylib=$(scanmacho -BF'%n#f' "${f}" | tr ',' '\n' | grep libLLVM-${PV}.dylib)
- ebegin "fixing install_name reference to ${odylib} of ${f##*/}"
- install_name_tool \
- -change "${odylib}" \
- "${EPREFIX}"/usr/lib/${PN}/libLLVM-${PV}.dylib \
- "${f}"
- eend $?
- done
- fi
-}