summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBernard Cafarelli <voyageur@gentoo.org>2009-09-14 09:58:44 +0000
committerBernard Cafarelli <voyageur@gentoo.org>2009-09-14 09:58:44 +0000
commitb1a94caaf643d6e08ec518da6b0a9c1560a5147b (patch)
tree20ce717c5b43d283ec2bf9a2c1737e66a22f0e43
parentDepend on new libmp4v2, fix compilation with it (diff)
downloadgnustep-b1a94caaf643d6e08ec518da6b0a9c1560a5147b.tar.gz
gnustep-b1a94caaf643d6e08ec518da6b0a9c1560a5147b.tar.bz2
gnustep-b1a94caaf643d6e08ec518da6b0a9c1560a5147b.zip
Update llvm to pre 2.6, I should move this to portage...
svn path=/overlay/; revision=409
-rw-r--r--gnustep-libs/sope/Manifest2
-rw-r--r--metadata/cache/gnustep-apps/melodie-0.4.122
-rw-r--r--metadata/cache/gnustep-apps/melodie-0.4.1-r122
-rw-r--r--metadata/cache/gnustep-apps/stepchat-0.4.12
-rw-r--r--metadata/cache/gnustep-apps/typewriter-0.4.12
-rw-r--r--metadata/cache/gnustep-libs/smalltalkkit-0.4.12
-rw-r--r--metadata/cache/sys-devel/llvm-2.422
-rw-r--r--metadata/cache/sys-devel/llvm-2.6_pre22
-rw-r--r--sys-devel/llvm/Manifest5
-rw-r--r--sys-devel/llvm/files/llvm-2.3-64bits-pic.patch40
-rw-r--r--sys-devel/llvm/llvm-2.4.ebuild187
-rw-r--r--sys-devel/llvm/llvm-2.6_pre.ebuild170
12 files changed, 221 insertions, 277 deletions
diff --git a/gnustep-libs/sope/Manifest b/gnustep-libs/sope/Manifest
index c27f2b1..7a0e974 100644
--- a/gnustep-libs/sope/Manifest
+++ b/gnustep-libs/sope/Manifest
@@ -4,4 +4,6 @@ AUX sope-nsexception.patch 1139 RMD160 08268926bb3a54408f493637afe196be3788429b
AUX sope-patchset-r1621.diff 72909 RMD160 82fc9162f5892aa907355e860d59f7a4b6ffec91 SHA1 70bf987c82fe3943b2b53522d099e8157326969d SHA256 eb86e3ca689beb188d832021bcd854cbcbdee2d36618ee060ec08db9e75920e2
AUX sope-use_system_root.patch 548 RMD160 add8b03f06b20ae96676b4efe17af08e024eae4c SHA1 86d50d562f5a94d3ffbd408fd59cbec288c17eb6 SHA256 6ac0f18cd2b39ae40b490f0e61952f6c7eccdc7939a4c7f844d2a3967abf2e64
DIST sope-trunk-r1621-200805211100.tar.gz 4223699 RMD160 9b09c70577e32fb94daced41853a1c30c1d3ed8c SHA1 1d152ff065146cb10e4cfd80523ddb21bddc52d2 SHA256 fc6516599e3c292b2c08989bb274d6ccadb036b8bd1fe550f33774f3b7ed9ada
+DIST sope-trunk-r1660-200906161500.tar.gz 4262397 RMD160 8f4c6236a9214462e371b4119d0cbbb1f8810a86 SHA1 d5c3da0325a23454878b8d782818324808809793 SHA256 479e8ab86a058c8e0e0ddcf636745be77a0b676a888318da19a8852875c35658
EBUILD sope-4.7_pre20080521.ebuild 1561 RMD160 0c9d4706ca41730ecbaea725422bef3001191de2 SHA1 7f8bbe0528fb1cec2f60e649edc889bb86c04fc2 SHA256 9ca5a8977c0d6d3afff7d6a2e010e94369d8b19b4d08bfca96f2804a89f2bd7e
+EBUILD sope-4.7_pre20090616.ebuild 1555 RMD160 18ed224a0e5494003b692b73c478c37bad2de07e SHA1 ed13b376d03a063f629a3c2b28e32a3c2b3f50b1 SHA256 e94f341cb9692f9b525a452351c84a59f287c82f1ffa1e70fdb07ba8168e5b64
diff --git a/metadata/cache/gnustep-apps/melodie-0.4.1 b/metadata/cache/gnustep-apps/melodie-0.4.1
deleted file mode 100644
index 2f64bbf..0000000
--- a/metadata/cache/gnustep-apps/melodie-0.4.1
+++ /dev/null
@@ -1,22 +0,0 @@
->=gnustep-base/gnustep-gui-0.16.0 media-libs/libmp4v2 media-libs/taglib >=gnustep-libs/coreobject-0.4.1 >=gnustep-libs/etoile-ui-0.4.1 >=gnustep-libs/iconkit-0.4.1 >=gnustep-libs/mediakit-0.4.1 >=gnustep-libs/scriptkit-0.4.1 >=gnustep-libs/smalltalkkit-0.4.1 >=gnustep-base/gnustep-make-2.0 virtual/gnustep-back
->=gnustep-base/gnustep-gui-0.16.0 media-libs/libmp4v2 media-libs/taglib >=gnustep-libs/coreobject-0.4.1 >=gnustep-libs/etoile-ui-0.4.1 >=gnustep-libs/iconkit-0.4.1 >=gnustep-libs/mediakit-0.4.1 >=gnustep-libs/scriptkit-0.4.1 >=gnustep-libs/smalltalkkit-0.4.1 >=gnustep-base/gnustep-make-2.0 virtual/gnustep-back debug? ( >=sys-devel/gdb-6.0 )
-0
-http://download.gna.org/etoile/etoile-0.4.1.tar.bz2
-
-http://www.etoile-project.org
-BSD
-Melodie is a music player for Etoile
-~amd64 ~ppc ~x86
-eutils flag-o-matic gnustep-2 gnustep-base multilib portability toolchain-funcs
-debug doc
-
-
-
-2
-
-compile configure install postinst prepare setup unpack
-
-
-
-
-
diff --git a/metadata/cache/gnustep-apps/melodie-0.4.1-r1 b/metadata/cache/gnustep-apps/melodie-0.4.1-r1
new file mode 100644
index 0000000..dd8290a
--- /dev/null
+++ b/metadata/cache/gnustep-apps/melodie-0.4.1-r1
@@ -0,0 +1,22 @@
+>=gnustep-base/gnustep-gui-0.16.0 >=media-libs/libmp4v2-1.9.0 media-libs/taglib >=gnustep-libs/coreobject-0.4.1 >=gnustep-libs/etoile-ui-0.4.1 >=gnustep-libs/iconkit-0.4.1 >=gnustep-libs/mediakit-0.4.1 >=gnustep-libs/scriptkit-0.4.1 >=gnustep-libs/smalltalkkit-0.4.1 >=gnustep-base/gnustep-make-2.0 virtual/gnustep-back
+>=gnustep-base/gnustep-gui-0.16.0 >=media-libs/libmp4v2-1.9.0 media-libs/taglib >=gnustep-libs/coreobject-0.4.1 >=gnustep-libs/etoile-ui-0.4.1 >=gnustep-libs/iconkit-0.4.1 >=gnustep-libs/mediakit-0.4.1 >=gnustep-libs/scriptkit-0.4.1 >=gnustep-libs/smalltalkkit-0.4.1 >=gnustep-base/gnustep-make-2.0 virtual/gnustep-back debug? ( >=sys-devel/gdb-6.0 )
+0
+http://download.gna.org/etoile/etoile-0.4.1.tar.bz2
+
+http://www.etoile-project.org
+BSD
+Melodie is a music player for Etoile
+~amd64 ~ppc ~x86
+eutils flag-o-matic gnustep-2 gnustep-base multilib portability toolchain-funcs
+debug doc
+
+
+
+2
+
+compile configure install postinst prepare setup unpack
+
+
+
+
+
diff --git a/metadata/cache/gnustep-apps/stepchat-0.4.1 b/metadata/cache/gnustep-apps/stepchat-0.4.1
index 0b3631e..7af59ee 100644
--- a/metadata/cache/gnustep-apps/stepchat-0.4.1
+++ b/metadata/cache/gnustep-apps/stepchat-0.4.1
@@ -5,7 +5,7 @@ http://download.gna.org/etoile/etoile-0.4.1.tar.bz2
http://www.etoile-project.org
BSD
-Etoil\ufffd\ufffd instant messenger for jabber
+Etoilé instant messenger for jabber
~amd64 ~ppc ~x86
eutils flag-o-matic gnustep-2 gnustep-base multilib portability toolchain-funcs
debug doc
diff --git a/metadata/cache/gnustep-apps/typewriter-0.4.1 b/metadata/cache/gnustep-apps/typewriter-0.4.1
index 1b28d18..2d7453c 100644
--- a/metadata/cache/gnustep-apps/typewriter-0.4.1
+++ b/metadata/cache/gnustep-apps/typewriter-0.4.1
@@ -5,7 +5,7 @@ http://download.gna.org/etoile/etoile-0.4.1.tar.bz2
http://www.etoile-project.org
BSD
-Etoil\ufffd\ufffd general text editor for plain and rich format text
+Etoilé general text editor for plain and rich format text
~amd64 ~ppc ~x86
eutils flag-o-matic gnustep-2 gnustep-base multilib portability toolchain-funcs
debug doc
diff --git a/metadata/cache/gnustep-libs/smalltalkkit-0.4.1 b/metadata/cache/gnustep-libs/smalltalkkit-0.4.1
index ac140ee..d7c2e19 100644
--- a/metadata/cache/gnustep-libs/smalltalkkit-0.4.1
+++ b/metadata/cache/gnustep-libs/smalltalkkit-0.4.1
@@ -5,7 +5,7 @@ http://download.gna.org/etoile/etoile-0.4.1.tar.bz2 http://www.sqlite.org/sqlite
http://www.etoile-project.org
BSD
-\ufffd\ufffdtoil\ufffd\ufffd's Pragmatic Smalltalk, a Smalltalk JIT compiler which generates code binary-compatible with Objective-C
+Étoilé's Pragmatic Smalltalk, a Smalltalk JIT compiler which generates code binary-compatible with Objective-C
~amd64 ~ppc ~x86
eutils flag-o-matic gnustep-2 gnustep-base multilib portability toolchain-funcs
debug doc
diff --git a/metadata/cache/sys-devel/llvm-2.4 b/metadata/cache/sys-devel/llvm-2.4
deleted file mode 100644
index 119d3ba..0000000
--- a/metadata/cache/sys-devel/llvm-2.4
+++ /dev/null
@@ -1,22 +0,0 @@
-dev-lang/perl >=sys-devel/make-3.79 >=sys-devel/flex-2.5.4 >=sys-devel/bison-1.28 >=sys-devel/gcc-3.0
-dev-lang/perl
-0
-http://llvm.org/releases/2.4/llvm-2.4.tar.gz
-mirror
-http://llvm.org/
-LLVM
-Low Level Virtual Machine
-~amd64 ~ppc ~x86
-eutils multilib portability toolchain-funcs
-debug alltargets pic
-
-
-
-
-
-compile install setup unpack
-
-
-
-
-
diff --git a/metadata/cache/sys-devel/llvm-2.6_pre b/metadata/cache/sys-devel/llvm-2.6_pre
new file mode 100644
index 0000000..1c5ddec
--- /dev/null
+++ b/metadata/cache/sys-devel/llvm-2.6_pre
@@ -0,0 +1,22 @@
+dev-lang/perl >=sys-devel/make-3.79 >=sys-devel/flex-2.5.4 >=sys-devel/bison-1.28 !~sys-devel/bison-1.85 !~sys-devel/bison-1.875 >=sys-devel/gcc-3.0 >=sys-devel/binutils-2.18
+dev-lang/perl
+0
+http://llvm.org/prereleases/2.6/llvm-2.6.tar.gz
+
+http://llvm.org/
+LLVM
+Low Level Virtual Machine
+~amd64 ~ppc ~x86
+eutils multilib portability toolchain-funcs
+debug pic alltargets
+
+
+
+
+
+compile install setup
+
+
+
+
+
diff --git a/sys-devel/llvm/Manifest b/sys-devel/llvm/Manifest
index 0b2da10..01acb8a 100644
--- a/sys-devel/llvm/Manifest
+++ b/sys-devel/llvm/Manifest
@@ -1,7 +1,6 @@
-AUX llvm-2.3-64bits-pic.patch 1603 RMD160 2fa3108f714496b4b80088ac1cf3a66851490ead SHA1 58cbc7eedac1b4e1d1b864d40117ba9d00f67458 SHA256 e5657d36d9277249e9178b674dbb29277c07234bc417710191bcfa071ea2846a
AUX llvm-2.3-disable-strip.patch 529 RMD160 f422ef955e196291dfdb9b44e8920e25b54a8dce SHA1 9e182792d2a5dac3fd541a3e6462399322ce31cd SHA256 d6409688ca95689bcf27b5c1ba290b65485d77fb207c0f83883e9c62caa1780f
AUX llvm-2.3-dont-build-hello.patch 392 RMD160 c76b0bebd54cf41e43c3a19aa39db0348d56cd33 SHA1 a41937d986a48cd55c0b1f5465a81689e6890f51 SHA256 72bb268722d280d3bef338f3f9d125786cdf6a4912acf9151e376a1e904a9cfa
-DIST llvm-2.4.tar.gz 6344417 RMD160 a1f23490f4c110133afbcf7e96fe0aa9d29d1de2 SHA1 8496fe06de1e622bfcfc84eac3c649b5333a241b SHA256 5fc295b3cf3de019962aee3be1c5efb49d6bf5041dae59451f6c0f544eb36bdc
DIST llvm-2.5.tar.gz 6660609 RMD160 2c904b8d0bcce565ed11114b921321a0404e23fe SHA1 67f4bace9e64cc39255583aa837470d9b9de0aa5 SHA256 8f3d69e63bc5d1ee2c2ee49ff07ccb7e070070a0e937813d2a6179b9e2e173ed
-EBUILD llvm-2.4.ebuild 5576 RMD160 a6a0175b8f60dcad2b546c8997f460e10c5eb813 SHA1 3ad0437909e4cf6e2a711ca0ff7653155cd4148f SHA256 95293653bf7bada49d24a97273ee5325100e2eb8fb2d12033e36b60a51292e2e
+DIST llvm-2.6.tar.gz 7776874 RMD160 f8ddbb155ae479ebb51c05f281e16bff78d13590 SHA1 0196659ceaf81ef903b832de6a336c4924a79892 SHA256 fe463b3d74f4fecdbbcd2252024d0122464e1dd90ad63fd409c64010affa725e
EBUILD llvm-2.5.ebuild 5576 RMD160 a6a0175b8f60dcad2b546c8997f460e10c5eb813 SHA1 3ad0437909e4cf6e2a711ca0ff7653155cd4148f SHA256 95293653bf7bada49d24a97273ee5325100e2eb8fb2d12033e36b60a51292e2e
+EBUILD llvm-2.6_pre.ebuild 5692 RMD160 b9fde9e426719101dfbc28091c8ae0496e7e1863 SHA1 0e4cbba7b742277d75c5bab951e4728b92cc6e5f SHA256 a1f835dcfc8b721190694384c13ffd0185489c22a56ee07675b50bab06557abc
diff --git a/sys-devel/llvm/files/llvm-2.3-64bits-pic.patch b/sys-devel/llvm/files/llvm-2.3-64bits-pic.patch
deleted file mode 100644
index 1fd5e98..0000000
--- a/sys-devel/llvm/files/llvm-2.3-64bits-pic.patch
+++ /dev/null
@@ -1,40 +0,0 @@
---- lib/Target/X86/X86JITInfo.cpp.orig 2008-07-02 09:41:02.000000000 +0200
-+++ lib/Target/X86/X86JITInfo.cpp 2008-07-02 09:41:51.000000000 +0200
-@@ -25,8 +25,10 @@
- // Determine the platform we're running on
- #if defined (__x86_64__) || defined (_M_AMD64)
- # define X86_64_JIT
-+# define ASMSUFFIX "@PLT"
- #elif defined(__i386__) || defined(i386) || defined(_M_IX86)
- # define X86_32_JIT
-+# define ASMSUFFIX
- #endif
-
- void X86JITInfo::replaceMachineCodeForFunction(void *Old, void *New) {
-@@ -112,7 +114,7 @@
- // JIT callee
- "movq %rbp, %rdi\n" // Pass prev frame and return address
- "movq 8(%rbp), %rsi\n"
-- "call " ASMPREFIX "X86CompilationCallback2\n"
-+ "call " ASMPREFIX "X86CompilationCallback2" ASMSUFFIX "\n"
- // Restore all XMM arg registers
- "movaps 112(%rsp), %xmm7\n"
- "movaps 96(%rsp), %xmm6\n"
-@@ -186,7 +188,7 @@
- "movl 4(%ebp), %eax\n" // Pass prev frame and return address
- "movl %eax, 4(%esp)\n"
- "movl %ebp, (%esp)\n"
-- "call " ASMPREFIX "X86CompilationCallback2\n"
-+ "call " ASMPREFIX "X86CompilationCallback2" ASMSUFFIX "\n"
- "movl %ebp, %esp\n" // Restore ESP
- CFI(".cfi_def_cfa_register %esp\n")
- "subl $12, %esp\n"
-@@ -240,7 +242,7 @@
- "movl 4(%ebp), %eax\n" // Pass prev frame and return address
- "movl %eax, 4(%esp)\n"
- "movl %ebp, (%esp)\n"
-- "call " ASMPREFIX "X86CompilationCallback2\n"
-+ "call " ASMPREFIX "X86CompilationCallback2" ASMSUFFIX "\n"
- "addl $16, %esp\n"
- "movaps 48(%esp), %xmm3\n"
- CFI(".cfi_restore %xmm3\n")
diff --git a/sys-devel/llvm/llvm-2.4.ebuild b/sys-devel/llvm/llvm-2.4.ebuild
deleted file mode 100644
index dc94a63..0000000
--- a/sys-devel/llvm/llvm-2.4.ebuild
+++ /dev/null
@@ -1,187 +0,0 @@
-# Copyright 1999-2007 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: $
-
-inherit eutils toolchain-funcs
-
-DESCRIPTION="Low Level Virtual Machine"
-HOMEPAGE="http://llvm.org/"
-SRC_URI="http://llvm.org/releases/${PV}/llvm-${PV}.tar.gz"
-
-LICENSE="LLVM"
-# most part of LLVM fall under the "University of Illinois Open Source License"
-# which doesn't seem to exist in portage yet, so I call it 'LLVM' for now. it
-# can be read from llvm/LICENSE.TXT in the source tarball.
-
-# the directory llvm/runtime/GCCLibraries/libc contains a stripped down C
-# library licensed under the LGPL 2.1 with some third party copyrights, see the
-# two LICENCE* files in that directory. Those parts do *not* get built, so
-# we omit LGPL in ${LICENCE}
-
-SLOT="0"
-
-KEYWORDS="~amd64 ~ppc ~x86"
-
-IUSE="debug alltargets pic"
-# 'jit' is not a flag anymore. at least on x86, disabling it saves nothing
-# at all, so having it always enabled for platforms that support it is fine
-
-# we're not mirrored, fetch from homepage
-RESTRICT="mirror"
-
-DEPEND="dev-lang/perl
- >=sys-devel/make-3.79
- >=sys-devel/flex-2.5.4
- >=sys-devel/bison-1.28
- >=sys-devel/gcc-3.0
- "
-RDEPEND="dev-lang/perl"
-PDEPEND=""
-# note that app-arch/pax is no longer a dependency
-
-S="${WORKDIR}/llvm-${PV}"
-
-pkg_setup() {
-
- 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`
-
- for version in ${broken_gcc[@]}
- do
- if [ "$gcc_vers" = "$version" ]; then
- elog "Your version of gcc is known to miscompile llvm"
- elog "check http://www.llvm.org/docs/GettingStarted.html for \
-possible solutions"
- die "Your version of gcc is known to miscompile llvm"
- fi
- done
-
- if use x86; then
- for version in ${broken_gcc_x86[@]}
- do
- if [ "$gcc_vers" = "$version" ]; then
- elog "Your version of gcc is known to miscompile llvm in x86 \
-architectures"
- elog "check http://www.llvm.org/docs/GettingStarted.html for \
-possible solutions"
- die "Your version of gcc is known to miscompile llvm"
- fi
- done
- fi
-
- if use amd64; then
- for version in ${broken_gcc_amd64[@]}
- do
- if [ "$gcc_vers" = "$version" ]; then
- elog "Your version of gcc is known to miscompile llvm in amd64 \
-architectures"
- elog "check http://www.llvm.org/docs/GettingStarted.html for \
-possible solutions"
- die "Your version of gcc is known to miscompile llvm"
- fi
- done
- fi
-
- broken_bison=( 1.85 1.875 )
-
- for version in ${broken_bison[@]}
- do
- if [ $(bison --version | head -n1 | cut -f4 -d" ") = "$version" ]; then
- elog "Your version of Bison is known not to work with llvm, please \
-upgrade to a newer version"
- die "Your version of Bison is known not to work with llvm"
- fi
- done
-
-
- buggy_ld=( 2.16 2.17 )
-
- for version in ${buggy_ld[@]}
- do
- if [ $(ld --version | head -n1 | cut -f5 -d" ") = "$version" ]; then
- ewarn "Your version of Binutils is known to be problematic with \
-llvm -> llvm team recommends upgrading"
- fi
- done
-}
-
-src_unpack() {
- unpack ${A}
- cd "${S}"
-
- # 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 := $(DESTDIR)$(PROJ_prefix)/share/doc/'${PF}, \
- -e 's,^PROJ_etcdir.*,PROJ_etcdir := $(DESTDIR)/etc/llvm,' \
- -i Makefile.config.in || die "sed failed"
-
- # fix gccld and gccas, which would otherwise point to the build directory
- einfo "Fixing gccld and gccas"
- sed -e 's,^TOOLDIR.*,TOOLDIR=/usr/bin,' \
- -i tools/gccld/gccld.sh tools/gccas/gccas.sh || die "sed failed"
-
- # all binaries get rpath'd to a dir in the temporary tree that doesn't
- # contain libraries anyway; can safely remove those to avoid QA warnings
- # (the exception would be if we build shared libraries, which we don't)
- einfo "Fixing rpath"
- sed -e 's,-rpath \$(ToolDir),,g' -i Makefile.rules || die "sed failed"
-
- epatch "${FILESDIR}"/llvm-2.3-dont-build-hello.patch
- epatch "${FILESDIR}"/llvm-2.3-disable-strip.patch
-}
-
-
-src_compile() {
- local CONF_FLAGS=""
-
- if use debug; then
- CONF_FLAGS="${CONF_FLAGS} --disable-optimized"
- einfo "Note: Compiling LLVM in debug mode will create huge and slow binaries"
- # ...and you probably shouldn't use tmpfs, unless it can hold 900MB
- else
- CONF_FLAGS="${CONF_FLAGS} --enable-optimized --disable-assertions \
---disable-expensive-checks"
- fi
-
- if use alltargets; then
- CONF_FLAGS="${CONF_FLAGS} --enable-targets=all"
- else
- CONF_FLAGS="${CONF_FLAGS} --enable-targets=host-only"
- fi
-
- if use amd64 || use pic; then
- CONF_FLAGS="${CONF_FLAGS} --enable-pic"
- fi
-
- # a few minor things would be built a bit differently depending on whether
- # llvm-gcc is already present on the system or not. let's avoid that by
- # not letting it find llvm-gcc. llvm-gcc isn't required for anything
- # anyway. this dummy path will get spread to a few places, but none where
- # it really matters.
- CONF_FLAGS="${CONF_FLAGS} --with-llvmgccdir=/dev/null"
-
- econf ${CONF_FLAGS} || die "econf failed"
- emake || die "emake failed"
-}
-
-src_install()
-{
- make DESTDIR="${D}" install || die "make install failed"
-
- # for some reason, LLVM creates a few .dir files. remove them
- find "${D}" -name .dir -print0 | xargs -r0 rm
-
- # tblgen does not get installed and wouldn't be very useful anyway
- # so remove their man pages. llvmgcc.1 and llvmgxx.1 are present here for
- # unknown reasons. llvm-gcc will install proper man pages for itself, so
- # remove them here
- einfo "Removing unnecessary man pages"
- rm "${D}"/usr/share/man/man1/{tblgen,llvmgcc,llvmgxx}.1
-
-}
-
-
diff --git a/sys-devel/llvm/llvm-2.6_pre.ebuild b/sys-devel/llvm/llvm-2.6_pre.ebuild
new file mode 100644
index 0000000..6216a97
--- /dev/null
+++ b/sys-devel/llvm/llvm-2.6_pre.ebuild
@@ -0,0 +1,170 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header:
+
+inherit eutils toolchain-funcs multilib
+
+DESCRIPTION="Low Level Virtual Machine"
+HOMEPAGE="http://llvm.org/"
+#SRC_URI="http://llvm.org/releases/${PV}/${P}.tar.gz"
+SRC_URI="http://llvm.org/prereleases/${PV/_pre}/${PN}-${PV/_pre}.tar.gz"
+
+LICENSE="LLVM"
+# most part of LLVM fall under the "University of Illinois Open Source License"
+# which doesn't seem to exist in portage yet, so I call it 'LLVM' for now. it
+# can be read from llvm/LICENSE.TXT in the source tarball.
+
+# the directory llvm/runtime/GCCLibraries/libc contains a stripped down C
+# library licensed under the LGPL 2.1 with some third party copyrights, see the
+# two LICENCE* files in that directory. Those parts do *not* get built, so
+# we omit LGPL in ${LICENCE}
+
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+
+IUSE="debug pic alltargets"
+
+DEPEND="dev-lang/perl
+ >=sys-devel/make-3.79
+ >=sys-devel/flex-2.5.4
+ >=sys-devel/bison-1.28
+ !~sys-devel/bison-1.85
+ !~sys-devel/bison-1.875
+ >=sys-devel/gcc-3.0
+ >=sys-devel/binutils-2.18
+ "
+RDEPEND="dev-lang/perl"
+PDEPEND=""
+
+S=${WORKDIR}/${PN}-${PV/_pre}
+
+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_compile() {
+ # 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 := $(DESTDIR)$(PROJ_prefix)/share/doc/'${PF}, \
+ -e 's,^PROJ_etcdir.*,PROJ_etcdir := $(DESTDIR)/etc/llvm,' \
+ -i Makefile.config.in || die "sed failed"
+
+ # fix gccld and gccas, which would otherwise point to the build directory
+ einfo "Fixing gccld and gccas"
+ sed -e 's,^TOOLDIR.*,TOOLDIR=/usr/bin,' \
+ -i tools/gccld/gccld.sh tools/gccas/gccas.sh || die "sed failed"
+
+ # all binaries get rpath'd to a dir in the temporary tree that doesn't
+ # contain libraries anyway; can safely remove those to avoid QA warnings
+ # (the exception would be if we build shared libraries, which we don't)
+ einfo "Fixing rpath"
+ sed -e 's,-rpath \$(ToolDir),,g' -i Makefile.rules || die "sed failed"
+
+ epatch "${FILESDIR}"/llvm-2.3-dont-build-hello.patch
+ epatch "${FILESDIR}"/llvm-2.3-disable-strip.patch
+ local CONF_FLAGS=""
+
+ if use debug; then
+ CONF_FLAGS="${CONF_FLAGS} --disable-optimized"
+ einfo "Note: Compiling LLVM in debug mode will create huge and slow binaries"
+ # ...and you probably shouldn't use tmpfs, unless it can hold 900MB
+ else
+ CONF_FLAGS="${CONF_FLAGS} \
+ --enable-optimized \
+ --disable-assertions \
+ --disable-expensive-checks"
+ fi
+
+ if use alltargets; then
+ CONF_FLAGS="${CONF_FLAGS} --enable-targets=all"
+ else
+ CONF_FLAGS="${CONF_FLAGS} --enable-targets=host-only"
+ fi
+
+ if use amd64 || use pic; then
+ CONF_FLAGS="${CONF_FLAGS} --enable-pic"
+ fi
+
+ # things would be built differently depending on whether llvm-gcc is
+ # already present on the system or not. When not bootstapping we make sure
+ # that no llvm-gcc is found
+ local LLVM_GCC_DIR=/dev/null
+ local LLVM_GCC_DRIVER=nope ; local LLVM_GPP_DRIVER=nope
+ if has_version sys-devel/llvm-gcc; then
+ # when bootstapping, make sure configure will find installed llvm-gcc
+ if [[ -z ${LLVM_GCC_PREFIX} ]] ; then
+ local here=/usr/$(get_libdir)/llvm-gcc/
+ # this is scary
+ local LLVM_GCC_PREFIX=${here}$(ls $here | head -1)
+ fi
+
+ [[ -z $(ls ${LLVM_GCC_PREFIX}/bin/*-gcc 2> /dev/null) ]] && \
+ die "failed to find installed llvm-gcc, LLVM_GCC_PREFIX=${LLVM_GCC_PREFIX}"
+
+ for driver in ${LLVM_GCC_PREFIX}/bin/*-gcc ; do
+ LLVM_GCC_DRIVER=${driver##*/}
+ break;
+ done
+
+ LLVM_GCC_DIR=${LLVM_GCC_PREFIX}
+
+ [[ -z ${LLVM_GCC_DRIVER} ]] && \
+ die "failed to find installed llvm-gcc, LLVM_GCC_PREFIX=${LLVM_GCC_PREFIX}"
+
+ einfo "using $LLVM_GCC_DRIVER residing in $LLVM_GCC_DIR"
+ LLVM_GPP_DRIVER=${LLVM_GCC_DRIVER/%-gcc/-g++}
+ fi
+
+ CONF_FLAGS="${CONF_FLAGS} \
+ --with-llvmgccdir=${LLVM_GCC_DIR} \
+ --with-llvmgcc=${LLVM_GCC_DRIVER} \
+ --with-llvmgxx=${LLVM_GPP_DRIVER}"
+
+ econf ${CONF_FLAGS} || die "econf failed"
+ emake || die "emake failed"
+}
+
+src_install() {
+ make DESTDIR="${D}" install || die "make install failed"
+
+ # don't install html.tar.gz in /usr/share/doc -- FIXME: USE=doc
+ einfo "Removing archived html documentation"
+ rm "${D}"/usr/share/doc/${PF}/*tar.gz \
+ || die "no such file ${D}/usr/share/doc/${PF}/*tar.gz"
+
+ # tblgen does not get installed, so remove its man page.
+ # llvmgcc.1 and llvmgxx.1 are present here for unknown reasons. But, since
+ # llvm-gcc installs bad man pages, keep the 2 files alive
+ rm "${D}"/usr/share/man/man1/tblgen.1
+}