diff options
author | Michał Górny <mgorny@gentoo.org> | 2016-10-17 10:24:01 +0200 |
---|---|---|
committer | Michał Górny <mgorny@gentoo.org> | 2016-11-01 00:17:26 +0100 |
commit | ab09f94849c34893e8f13e58a3ba2cc6740fd5e3 (patch) | |
tree | 00fe1950ffc044f09d833bcc9199b2889e0d6e8e /dev-util/lldb | |
parent | app-emulation/docker: sync live ebuild (diff) | |
download | gentoo-ab09f94849c34893e8f13e58a3ba2cc6740fd5e3.tar.gz gentoo-ab09f94849c34893e8f13e58a3ba2cc6740fd5e3.tar.bz2 gentoo-ab09f94849c34893e8f13e58a3ba2cc6740fd5e3.zip |
dev-util/lldb: Introduce the initial live version
Introduce an initial live ebuild for split LLVM debugger package.
The version should build and work fine to the degree of old LLVM
ebuilds. Tests are not yet implemented, Python readline module needs to
be thought over and static libraries need to be replaced with shared.
Diffstat (limited to 'dev-util/lldb')
-rw-r--r-- | dev-util/lldb/lldb-9999.ebuild | 80 | ||||
-rw-r--r-- | dev-util/lldb/metadata.xml | 7 |
2 files changed, 87 insertions, 0 deletions
diff --git a/dev-util/lldb/lldb-9999.ebuild b/dev-util/lldb/lldb-9999.ebuild new file mode 100644 index 000000000000..87afff9c00fb --- /dev/null +++ b/dev-util/lldb/lldb-9999.ebuild @@ -0,0 +1,80 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=6 + +: ${CMAKE_MAKEFILE_GENERATOR:=ninja} +CMAKE_MIN_VERSION=3.4.3 +PYTHON_COMPAT=( python2_7 ) + +inherit cmake-utils git-r3 python-single-r1 toolchain-funcs + +DESCRIPTION="The LLVM debugger" +HOMEPAGE="http://llvm.org/" +SRC_URI="" +EGIT_REPO_URI="http://llvm.org/git/lldb.git + https://github.com/llvm-mirror/lldb.git" + +LICENSE="UoI-NCSA" +SLOT="0" +KEYWORDS="" +IUSE="libedit ncurses python" + +RDEPEND=" + libedit? ( dev-libs/libedit:0= ) + ncurses? ( >=sys-libs/ncurses-5.9-r3:0= ) + python? ( dev-python/six[${PYTHON_USEDEP}] + ${PYTHON_DEPS} ) + ~sys-devel/clang-${PV}[xml] + ~sys-devel/llvm-${PV} + !<sys-devel/llvm-4.0" +DEPEND="${RDEPEND} + python? ( dev-lang/swig ) + ${PYTHON_DEPS}" + +REQUIRED_USE=${PYTHON_REQUIRED_USE} + +src_configure() { + local libdir=$(get_libdir) + local mycmakeargs=( + # used to find cmake modules + -DLLVM_LIBDIR_SUFFIX="${libdir#lib}" + + -DLLDB_DISABLE_CURSES=$(usex !ncurses) + -DLLDB_DISABLE_LIBEDIT=$(usex !libedit) + -DLLDB_DISABLE_PYTHON=$(usex !python) + -DLLVM_ENABLE_TERMINFO=$(usex ncurses) + + # TODO: fix upstream to detect this properly + -DHAVE_LIBDL=ON + -DHAVE_LIBPTHREAD=ON + + # normally we'd have to set LLVM_ENABLE_TERMINFO, HAVE_TERMINFO + # and TERMINFO_LIBS... so just force FindCurses.cmake to use + # ncurses with complete library set (including autodetection + # of -ltinfo) + -DCURSES_NEED_NCURSES=ON + ) + + cmake-utils_src_configure +} + +src_install() { + cmake-utils_src_install + + # oh my... + if use python; then + # remove bundled six module + rm "${D}$(python_get_sitedir)/six.py" || die + + # remove custom readline.so for now + # TODO: figure out how to deal with it + # upstream is basically building a custom readline.so with -ledit + # to avoid symbol collisions between readline and libedit... + rm "${D}$(python_get_sitedir)/readline.so" || die + + # byte-compile the modules + python_optimize + fi +} diff --git a/dev-util/lldb/metadata.xml b/dev-util/lldb/metadata.xml new file mode 100644 index 000000000000..89c4bdb96049 --- /dev/null +++ b/dev-util/lldb/metadata.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>llvm@gentoo.org</email> + </maintainer> +</pkgmetadata> |