mirror of
https://github.com/pentoo/pentoo-overlay
synced 2026-05-09 04:51:27 +02:00
lief-0.16.2.ebuild
This commit is contained in:
parent
c1d23f34d6
commit
9bd68991cc
2 changed files with 112 additions and 1 deletions
|
|
@ -1,2 +1,2 @@
|
|||
DIST lief-0.16.0.tar.gz 16420210 BLAKE2B ff5c230ba6c1ee472ddfad31669ed33a39283f73026cf66b2078e81b924948685d0e027b13930cbad962a4055599d46dfb52a851626efef34683e3d66947da5c SHA512 7df75fab6c7023e37a6a4d27fac8dcb4200e0235625fc5952bb23cedb2e582a37fb67ee471c1ae953c0b205fd9cca5538a835f65ef80a771f72dc7ff68000ed9
|
||||
DIST lief-0.16.1.tar.gz 16420382 BLAKE2B 5de2b12370c4f6b5aee3bfc242fc407435fb83d44d5be444130ba32501f2b15aeb01339fe9f35726a657d61bec176e094da6fdf783a73269b891d41e0454f43a SHA512 776d26bc5d8ec7bca823d1c0fc821b0efc2411976901e1fca0ffecbc64591798e9e21a483c1637e9877bdd921dc463ffaef4eeb6a76d9dd8463c97c5f50834d4
|
||||
DIST lief-0.16.2.tar.gz 16420540 BLAKE2B bed62c9da829d4de2872733f2f92f6f06206bc19407ba1cabb6df453e8df0cd496ea3328cb7b8269b2e344b3dd0b95a375ac593b5b3b262fcf4e50553e80b0bd SHA512 cd2e2d5e2914aa85d2293288180f24bc1189a6b04ce573e5c8ae27e2da280559b8ace3d06a998da72adbb139039cd644f34f35b029759a40cdc0273c50c0b829
|
||||
|
|
|
|||
111
dev-util/lief/lief-0.16.2.ebuild
Normal file
111
dev-util/lief/lief-0.16.2.ebuild
Normal file
|
|
@ -0,0 +1,111 @@
|
|||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
DISTUTILS_OPTIONAL=1
|
||||
#DISTUTILS_USE_PEP517=scikit-build-core
|
||||
DISTUTILS_USE_PEP517=standalone
|
||||
DISTUTILS_EXT=1
|
||||
PYTHON_COMPAT=( python3_{10..12} )
|
||||
inherit distutils-r1 cmake
|
||||
|
||||
DESCRIPTION="Library to instrument executable formats"
|
||||
HOMEPAGE="https://lief.quarkslab.com/"
|
||||
SRC_URI="https://github.com/lief-project/LIEF/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
# https://files.pythonhosted.org/packages/cp311/${P:0:1}/${PN}/${P}-cp311-cp311-manylinux_2_28_x86_64.manylinux_2_27_x86_64.whl -> ${P}_x86_64.zip"
|
||||
# whl: https://pypi.org/pypi/lief/json
|
||||
S=${WORKDIR}/LIEF-${PV}
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
|
||||
KEYWORDS="amd64 x86"
|
||||
|
||||
IUSE="examples +python static-libs"
|
||||
|
||||
# lief requires a forked version of nanobind, see LIEF-0.15.1/api/python/CMakeLists.txt
|
||||
# So don't try to use a standard one
|
||||
RDEPEND="python? ( ${PYTHON_DEPS}
|
||||
dev-python/pydantic[${PYTHON_USEDEP}]
|
||||
dev-python/pydantic-core[${PYTHON_USEDEP}]
|
||||
dev-python/tomli[${PYTHON_USEDEP}]
|
||||
dev-python/xtract[${PYTHON_USEDEP}]
|
||||
)"
|
||||
DEPEND="${RDEPEND}
|
||||
python? ( dev-python/scikit-build-core[${PYTHON_USEDEP}] )"
|
||||
BDEPEND="${DISTUTILS_DEPS}"
|
||||
|
||||
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
|
||||
#FIXME: LIEF_TESTS
|
||||
RESTRICT="test"
|
||||
|
||||
QA_PRESTRIPPED="/usr/lib/python3.*/site-packages/lief/_lief.so"
|
||||
|
||||
wrap_python() {
|
||||
if use python; then
|
||||
pushd "./api/python" >/dev/null || die
|
||||
distutils-r1_${1} "$@"
|
||||
popd >/dev/null
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
#fix multilib
|
||||
sed -i "s|CMAKE_INSTALL_LIBDIR \"lib\"|CMAKE_INSTALL_LIBDIR \"$(get_libdir)\"|" CMakeLists.txt || die
|
||||
# sed -i '/COMMAND ${CMAKE_STRIP}/d' CMakeLists.txt || die
|
||||
# sed -i "s|\"setup\"|\"scikit_build_core.build\"|" api/python/pyproject.toml || die
|
||||
|
||||
cmake_src_prepare
|
||||
wrap_python ${FUNCNAME}
|
||||
eapply_user
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
#cmake/LIEFOptions.cmake
|
||||
local FORCE32=NO
|
||||
use x86 && FORCE32=YES
|
||||
|
||||
local PYTHON_API=NO
|
||||
# local NANOBIND_DIR
|
||||
|
||||
if use python; then
|
||||
#set EPYTHON variable for python_get_sitedir
|
||||
python_setup
|
||||
PYTHON_API=YES
|
||||
# NANOBIND_DIR=$(python_get_sitedir)/nanobind/cmake
|
||||
fi
|
||||
|
||||
local mycmakeargs=(
|
||||
-DBUILD_SHARED_LIBS="$(usex static-libs OFF ON)"
|
||||
-DLIEF_EXAMPLES="$(usex examples ON OFF)"
|
||||
-DLIEF_PYTHON_API="$PYTHON_API"
|
||||
|
||||
-DLIEF_MACHO=OFF
|
||||
|
||||
# -DLIEF_PY_LIEF_EXT=ON
|
||||
# -DLIEF_PYTHON_STATIC=OFF
|
||||
# -DLIEF_PY_LIEF_EXT_SHARED=ON
|
||||
# -DBUILD_SHARED_LIBS=ON
|
||||
# -DLIEF_FORCE_API_EXPORTS=ON
|
||||
|
||||
-DLIEF_FORCE32="$FORCE32"
|
||||
)
|
||||
# use python && mycmakeargs+=(
|
||||
# -DLIEF_OPT_NANOBIND_EXTERNAL=1
|
||||
# -Dnanobind_DIR="${NANOBIND_DIR}"
|
||||
# )
|
||||
|
||||
cmake_src_configure
|
||||
wrap_python ${FUNCNAME}
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
cmake_src_compile
|
||||
wrap_python ${FUNCNAME}
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake_src_install
|
||||
wrap_python ${FUNCNAME}
|
||||
}
|
||||
Loading…
Reference in a new issue