commit: 702b7bba86ac86a7e90b6c8dfa37d90ae9ae4f16 Author: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org> AuthorDate: Fri Jun 19 00:57:27 2020 +0000 Commit: Georgy Yakovlev <gyakovlev <AT> gentoo <DOT> org> CommitDate: Fri Jun 19 01:33:05 2020 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=702b7bba
dev-libs/keystone: rework live ebuild bump to EAPI=7 migrate to cmake.eclass honor Gentoo CMAKE_BUILD_TYPE make python truly optional bump python targets use llvm.eclass (limit to llvm10 for now) keyword on ~ppc64 Issue: https://github.com/gentoo/gentoo/pull/11828 Bug: https://bugs.gentoo.org/685000 Bug: https://bugs.gentoo.org/712354 Bug: https://bugs.gentoo.org/718276 Bug: https://bugs.gentoo.org/652440 Package-Manager: Portage-2.3.101, Repoman-2.3.22 Signed-off-by: Georgy Yakovlev <gyakovlev <AT> gentoo.org> dev-libs/keystone/keystone-9999.ebuild | 41 +++++++++++++++++++++------------- 1 file changed, 26 insertions(+), 15 deletions(-) diff --git a/dev-libs/keystone/keystone-9999.ebuild b/dev-libs/keystone/keystone-9999.ebuild index dba275576be..a4863b0bced 100644 --- a/dev-libs/keystone/keystone-9999.ebuild +++ b/dev-libs/keystone/keystone-9999.ebuild @@ -1,13 +1,12 @@ # Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 +EAPI=7 DISTUTILS_OPTIONAL=1 -CMAKE_MIN_VERSION=3.8.7 -PYTHON_COMPAT=( python3_6 ) +PYTHON_COMPAT=( python3_{6,7,8} ) -inherit cmake-utils distutils-r1 +inherit cmake distutils-r1 llvm DESCRIPTION="assembly/assembler framework + bindings" HOMEPAGE="http://www.keystone-engine.org/" @@ -18,7 +17,7 @@ if [[ ${PV} == 9999* ]]; then KEYWORDS="" else SRC_URI="https://github.com/keystone-engine/keystone/archive/${PV/_rc/-rc}.tar.gz -> ${P}.tar.gz" - KEYWORDS="~amd64 ~arm ~x86" + KEYWORDS="~amd64 ~arm ~ppc64 ~x86" fi LICENSE="GPL-2" @@ -30,19 +29,28 @@ ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" ) LLVM_TARGET_USEDEPS=${ALL_LLVM_TARGETS[@]/%/?} IUSE="python ${ALL_LLVM_TARGETS[*]}" -RDEPEND="sys-devel/llvm:=[${LLVM_TARGET_USEDEPS// /,}] - ${PYTHON_DEPS} + +LLVM_MAX_SLOT=10 + +RDEPEND=" + <sys-devel/llvm-11:= + || ( + sys-devel/llvm:8[${LLVM_TARGET_USEDEPS// /,}] + sys-devel/llvm:9[${LLVM_TARGET_USEDEPS// /,}] + sys-devel/llvm:10[${LLVM_TARGET_USEDEPS// /,}] + ) + python? ( ${PYTHON_DEPS} ) " + DEPEND="${RDEPEND}" + REQUIRED_USE=" - ${PYTHON_REQUIRED_USE} || ( ${ALL_LLVM_TARGETS[*]} ) + python? ( ${PYTHON_REQUIRED_USE} ) " S=${WORKDIR}/${P/_rc/-rc} -CMAKE_BUILD_TYPE=RelWithDebInfo - wrap_python() { if use python; then pushd bindings/python >/dev/null || die @@ -53,29 +61,32 @@ wrap_python() { src_prepare() { default - cmake-utils_src_prepare + sed -i '/NOT uppercase_CMAKE_BUILD_TYPE MATCHES/ s/DEBUG/GENTOO|DEBUG/' \ + llvm/CMakeLists.txt || die + cmake_src_prepare wrap_python ${FUNCNAME} } src_configure() { + local libdir="$(get_libdir)" local mycmakeargs=( + -DCMAKE_CONFIGURATION_TYPES="Gentoo" -DLLVM_LIBDIR_SUFFIX=${libdir#lib} - -DBUILD_SHARED_LIBS=ON -DLLVM_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}" -DLLVM_HOST_TRIPLE="${CHOST}" ) - cmake-utils_src_configure + cmake_src_configure wrap_python ${FUNCNAME} } src_compile() { - cmake-utils_src_compile + cmake_src_compile wrap_python ${FUNCNAME} } src_install() { - cmake-utils_src_install + cmake_src_install wrap_python ${FUNCNAME} }
