diff options
| author | eroen | 2013-02-17 21:10:21 +0100 |
|---|---|---|
| committer | eroen | 2013-02-17 21:10:21 +0100 |
| commit | eecc1442acbcb1aef866f5cb39653090942fcec1 (patch) | |
| tree | b6131acbfb093bd2de03897adbca173cfe257955 /app-arch/lld/lld-9999.ebuild | |
| parent | a18f71cb86d5466988ecdfd6e5f776fb718544a1 (diff) | |
| download | eroen-overlay-eecc1442acbcb1aef866f5cb39653090942fcec1.tar.gz eroen-overlay-eecc1442acbcb1aef866f5cb39653090942fcec1.tar.bz2 eroen-overlay-eecc1442acbcb1aef866f5cb39653090942fcec1.tar.xz | |
lld: live ebuild, patched to d54c783c
Diffstat (limited to 'app-arch/lld/lld-9999.ebuild')
| -rw-r--r-- | app-arch/lld/lld-9999.ebuild | 85 |
1 files changed, 85 insertions, 0 deletions
diff --git a/app-arch/lld/lld-9999.ebuild b/app-arch/lld/lld-9999.ebuild new file mode 100644 index 00000000..a185cf74 --- /dev/null +++ b/app-arch/lld/lld-9999.ebuild @@ -0,0 +1,85 @@ +# By Eroen, 2013 +# Distributed under the terms of the ISC License +# $Header: $ + +EAPI=5 + +inherit eutils flag-o-matic cmake-utils subversion + +DESCRIPTION="The LLVM Linker" +HOMEPAGE="http://lld.llvm.org/" +ESVN_REPO_URI="http://llvm.org/svn/llvm-project/lld/trunk" +SRC_URI="" + +LICENSE="UoI-NCSA" +SLOT="0" +KEYWORDS="~amd64" +IUSE="" + +LIBDEPEND=" + || ( ( >=sys-devel/clang-3.1 + sys-libs/libcxx ) + >=sys-devel/gcc-4.7 ) +" +RDEPEND="${LIBDEPEND}" +DEPEND="${LIBDEPEND}" +HDEPEND=" + >=dev-util/cmake-2.8 + " + +src_unpack() { + ESVN_PROJECT=llvm \ + subversion_fetch \ + "http://llvm.org/svn/llvm-project/llvm/trunk" + ESVN_PROJECT=lld \ + S="${S}"/tools/lld \ + subversion_fetch \ + "http://llvm.org/svn/llvm-project/lld/trunk" +} + +src_prepare() { + cd "${S}"/tools/lld + # Patches from https://github.com/Bigcheese/lold (dynamic branch) + EPATCH_FORCE=yes \ + EPATCH_SUFFIX=patch \ + epatch "${FILESDIR}"/patches-0/ + default + epatch_user +} + +src_configure() { + append-cxxflags -std=c++11 + append-ldflags -L/usr/lib64/llvm + # Shared libraries needs a release, so we can have corresponding libs + # installed. + mycmakeargs=( + -DBUILD_SHARED_LIBS=OFF + -DLLVM_BUILD_RUNTIME=OFF + -DLLVM_INCLUDE_RUNTIME=OFF + -DLLVM_ENABLE_ASSERTIONS=ON + -DLLVM_ENABLE_BACKTRACES=ON + -DLLVM_LIT_ARGS=-v + ) + #Debug use flag? + #-DLLVM_ENABLE_ASSERTIONS=OFF + #-DLLVM_ENABLE_BACKTRACES=OFF + #Figure out how targets are set in cmake + #-DLLVM_TARGETS_TO_BUILD=host:cpp + tc-export CC CXX + cmake-utils_src_configure +} + +src_compile() { + cmake-utils_src_compile lld +} + +src_test() { + # This builds (most?) of llvm too. + cd "${BUILD_DIR}" + emake check-lld +} + +src_install() { + cd "${BUILD_DIR}"/tools/lld + emake DESTDIR="${D}" install +} |
