unicorn: rc3 bump, wrapped bindings

This commit is contained in:
blshkv 2020-05-10 10:02:24 +08:00
parent 79248b9268
commit 015b6cf556
No known key found for this signature in database
GPG key ID: 273E3E90D1A6294F
4 changed files with 42 additions and 81 deletions

View file

@ -1,3 +1,2 @@
DIST unicorn-1.0.1.tar.gz 3241225 BLAKE2B 977349ee9f98d63a93d67ed9f1e8c4fd7fc6a5bf43285baf011624ddb4b801bdaf61879ddaec1310d84a23151e16af95af0eb3396e22895d4067396f1426ea1e SHA512 edfe1f7bfbc1d20f5b62232057e194a937bc09db686ef2efadb33a54605029a53426432cdb2a29511385aacdb9343b3b3091af50a1909098d7cf6db3429eb966
DIST unicorn-1.0.2_rc1.tar.gz 3340182 BLAKE2B b5845b7111b7d3657a6c0f509f63067cd6ead20a2792dd3695484e90e48453e78af17faaddb84951a8c3d69b536444f5f506766af01dfb4946fdd860cd246d0e SHA512 c710b4a6c24a2b51def4a732a2186dd774e111287950f80fccb01cd0a9dc9788302e15bc55146df298412a824123b862ddde3a9de3627d7912dea9bc29ee27d3
DIST unicorn-1.0.2_rc2.tar.gz 3746757 BLAKE2B fa5e4f998de7836c4ed2bb704f9c9a898b0baaa4e55f2734bed7797667b75050e3267bc2f85f5899265e5beecf0d400c9b5432fe973c68fe2a6974dd61db06ba SHA512 170021813c665f6489a8f158148dcc1f08bb1dbe51640b1f53c1530d44921b9761f177cd30e6fc6dac0102f60c8787cb37fb13cc0afc1085fc2d5599d1cf13c3

View file

@ -1,66 +0,0 @@
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
MY_PV=${PV/_/-}
PYTHON_COMPAT=( python{2_7,3_{4,5,6,7}} )
inherit multilib distutils-r1
DESCRIPTION="Unicorn bindings"
HOMEPAGE="http://www.unicorn-engine.org"
SRC_URI="https://github.com/unicorn-engine/unicorn/archive/${MY_PV}.tar.gz -> unicorn-${PV}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="python"
RDEPEND="~dev-util/unicorn-${PV}"
DEPEND="${RDEPEND}
virtual/pkgconfig
python? ( dev-python/setuptools[${PYTHON_USEDEP}] )
"
# go? ( dev-lang/go )
# ruby? ( dev-lang/ruby:* )
S="${WORKDIR}/unicorn-${MY_PV}"/bindings
pkg_setup() {
python_setup
}
src_prepare(){
#do not compile C extensions
export LIBUNICORN_PATH=1
# use go || sed -i -e '/go gen_const/d' Makefile
# use java || sed -i -e '/java gen_const/d' Makefile
# use python || sed -i -e '/python gen_const/d' Makefile
# use ruby || sed -i -e '/ruby gen_const/d' Makefile
sed -i -e '/const_generator.py dotnet/d' Makefile
#fix python2 install
sed -i "s|python setup.py install|python2 setup.py install|" python/Makefile || die
eapply_user
}
src_compile(){
einfo "Nothing to compile"
}
src_install(){
if use python; then
myinstall_python() {
if python_is_python3; then
emake -C python DESTDIR="${D}" install3
else
emake -C python DESTDIR="${D}" install
fi
python_optimize
}
python_foreach_impl myinstall_python
fi
}

View file

@ -1,3 +1,3 @@
DIST unicorn-1.0.1.tar.gz 3241225 BLAKE2B 977349ee9f98d63a93d67ed9f1e8c4fd7fc6a5bf43285baf011624ddb4b801bdaf61879ddaec1310d84a23151e16af95af0eb3396e22895d4067396f1426ea1e SHA512 edfe1f7bfbc1d20f5b62232057e194a937bc09db686ef2efadb33a54605029a53426432cdb2a29511385aacdb9343b3b3091af50a1909098d7cf6db3429eb966
DIST unicorn-1.0.2_rc1.tar.gz 3340182 BLAKE2B b5845b7111b7d3657a6c0f509f63067cd6ead20a2792dd3695484e90e48453e78af17faaddb84951a8c3d69b536444f5f506766af01dfb4946fdd860cd246d0e SHA512 c710b4a6c24a2b51def4a732a2186dd774e111287950f80fccb01cd0a9dc9788302e15bc55146df298412a824123b862ddde3a9de3627d7912dea9bc29ee27d3
DIST unicorn-1.0.2_rc2.tar.gz 3746757 BLAKE2B fa5e4f998de7836c4ed2bb704f9c9a898b0baaa4e55f2734bed7797667b75050e3267bc2f85f5899265e5beecf0d400c9b5432fe973c68fe2a6974dd61db06ba SHA512 170021813c665f6489a8f158148dcc1f08bb1dbe51640b1f53c1530d44921b9761f177cd30e6fc6dac0102f60c8787cb37fb13cc0afc1085fc2d5599d1cf13c3
DIST unicorn-1.0.2_rc3.tar.gz 3747400 BLAKE2B 863dbead1cb08467298082fe8845741485ed6c1549ef846d30cde6b225fcd1cd955c5b2773ff78df8271304595f9559118ce41b3f993bd9cd1e5e47abaeb8a51 SHA512 6d27fa74504fe2c3d9292b4f67634042ac87015c203dfa0085d17d0efb82c12d0084bb5bd3f96200fb0c861820d499f09fa2e9e2a27addb68e1ba3bf2c7fea37

View file

@ -1,11 +1,12 @@
# Copyright 1999-2019 Gentoo Authors
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
EAPI=7
MY_PV=${PV/_/-}
PYTHON_COMPAT=( python2_7 python3_{6,7} )
DISTUTILS_OPTIONAL=1
PYTHON_COMPAT=( python3_{6,7,8} )
inherit multilib distutils-r1
DESCRIPTION="A lightweight multi-platform, multi-architecture CPU emulator framework"
@ -14,23 +15,43 @@ SRC_URI="https://github.com/unicorn-engine/unicorn/archive/${MY_PV}.tar.gz -> ${
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86 ~m68k ~arm ~arm64 ~mips ~sparc"
IUSE="python static-libs"
KEYWORDS="~amd64 ~arm ~arm64 ~m68k ~mips ~sparc ~x86"
IUSE_UNICORN_TARGETS="x86 m68k arm aarch64 mips sparc"
use_unicorn_targets=$(printf ' unicorn_targets_%s' ${IUSE_UNICORN_TARGETS})
IUSE+=" ${use_unicorn_targets}"
IUSE="python ${use_unicorn_targets} static-libs"
REQUIRED_USE="|| ( ${use_unicorn_targets} )
python? ( ${PYTHON_REQUIRED_USE} )"
DEPEND="dev-libs/glib:2
${PYTHON_DEPS}"
RDEPEND="${DEPEND}
virtual/pkgconfig"
PDEPEND="dev-libs/unicorn-bindings[python?]"
REQUIRED_USE="|| ( ${use_unicorn_targets} )"
virtual/pkgconfig
python? ( ${PYTHON_DEPS} )"
S="${WORKDIR}/${PN}-${MY_PV}"
wrap_python() {
if use python; then
#src_prepare
#do not compile C extensions
export LIBUNICORN_PATH=1
pushd bindings/python >/dev/null || die
distutils-r1_${1} "$@"
popd >/dev/null
fi
}
src_prepare() {
#build from sources
rm -r bindings/python/prebuilt || die "failed to remove prebuild"
default
wrap_python ${FUNCNAME}
}
src_configure(){
local target
unicorn_softmmu_targets=""
@ -44,18 +65,25 @@ src_configure(){
#the following variable is getting recreated using UNICORN_ARCHS below
UNICORN_TARGETS=""
default
wrap_python ${FUNCNAME}
}
src_compile() {
export CC INSTALL_BIN PREFIX PKGCFGDIR LIBDIRARCH LIBARCHS CFLAGS LDFLAGS
UNICORN_QEMU_FLAGS="--python=/usr/bin/python2" \
UNICORN_QEMU_FLAGS="--python=/usr/bin/python3" \
UNICORN_ARCHS="${unicorn_targets}" \
UNICORN_STATIC="$(use static-libs && echo yes || echo no)" \
emake
# echo $PWD
# UNICORN_QEMU_FLAGS="--python=/usr/bin/python2" UNICORN_ARCHS="${unicorn_targets}" UNICORN_STATIC="$(use static-libs && echo yes || echo no)" ./make.sh --python=/usr/bin/python2
wrap_python ${FUNCNAME}
}
src_test() {
default
wrap_python ${FUNCNAME}
}
src_install() {
emake DESTDIR="${D}" LIBDIR="/usr/$(get_libdir)" UNICORN_STATIC="$(use static-libs && echo yes || echo no)" install
wrap_python ${FUNCNAME}
}