diff --git a/sys-apps/intel-cmt-cat/Manifest b/sys-apps/intel-cmt-cat/Manifest index 59cfff0d6b..8820d1e5a1 100644 --- a/sys-apps/intel-cmt-cat/Manifest +++ b/sys-apps/intel-cmt-cat/Manifest @@ -1 +1,2 @@ DIST intel-cmt-cat-4.2.0.tar.gz 470596 BLAKE2B 781e69a7019a27e87b6b6c8d2c914305a837d019cadf8d1b6221942c631e0e46531a292379d7979ae88e7a590b155bc4e5a62777bdd9ebfb2881471ef64bfa32 SHA512 ccfae2e3fa5bb8b7dfe5ed39ab20a8526eb759378aeb14fb7ed79f4f94820cd69e497c9e7d411f1d9ec40c07ca4c7c4f2db6ff1e034a8517c01c06bd8a70d4b6 +DIST intel-cmt-cat-4.3.0.tar.gz 478547 BLAKE2B 09dc746f9861dd1db5bdf7a46c469b57dbcf5215a9b418207581d4fe5abcdc4157169ace781f34f17228a5b4ad130af3a01f760d2c679be4c7d4efd3fc8208e4 SHA512 8229af3e931d7f32f1723c38cea9d3197554c076d64030256b05d44c2f1e6c3271501352ed4a8a8f4027a7c196f0a1fcf45fff48cb6f0f14c1d1ef45f7784fcd diff --git a/sys-apps/intel-cmt-cat/intel-cmt-cat-4.3.0.ebuild b/sys-apps/intel-cmt-cat/intel-cmt-cat-4.3.0.ebuild new file mode 100644 index 0000000000..7e8662eb67 --- /dev/null +++ b/sys-apps/intel-cmt-cat/intel-cmt-cat-4.3.0.ebuild @@ -0,0 +1,139 @@ +# Copyright 2020-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{8..10} ) #pypy3 has warnings + +inherit distutils-r1 perl-module + +DESCRIPTION="User space software for Intel(R) Resource Director Technology" +HOMEPAGE=" + https://www.intel.com/content/www/us/en/architecture-and-technology/resource-director-technology.html + https://github.com/intel/intel-cmt-cat +" +SRC_URI="https://github.com/intel/intel-cmt-cat/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64" +IUSE="appqos perl" + +RDEPEND=" + ${PYTHON_DEPS} + appqos? ( + dev-python/flask[${PYTHON_USEDEP}] + dev-python/flask-restful[${PYTHON_USEDEP}] + dev-python/gevent[${PYTHON_USEDEP}] + dev-python/jsonschema[${PYTHON_USEDEP}] + dev-python/pexpect[${PYTHON_USEDEP}] + dev-python/psutil[${PYTHON_USEDEP}] + sys-apps/CommsPowerManagement[${PYTHON_USEDEP}] + ) + perl? ( dev-lang/perl:= ) +" +DEPEND=" + ${RDEPEND} + test? ( appqos? ( dev-python/mock[${PYTHON_USEDEP}] ) ) +" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" +PATCHES=( + "${FILESDIR}/${PN}-perl-makefile.patch" + "${FILESDIR}/${PN}-do-not-strip.patch" + "${FILESDIR}/${PN}-respect-flags.patch" +) + +distutils_enable_tests unittest +distutils_enable_tests pytest + +src_prepare() { + mkdir -p "${T}/prefix" || die + + distutils-r1_python_prepare_all +} + +src_compile() { + emake all PREFIX="${T}/prefix" + + pushd "lib/python" || die + python_foreach_impl distutils-r1_python_compile + popd || die + + if use perl; then + pushd "lib/perl" || die + perl-module_src_configure + perl-module_src_compile + popd || die + fi +} + +src_install() { + emake install PREFIX="${T}/prefix" + + dobin "${T}"/prefix/bin/* + doheader "${T}"/prefix/include/* + doman "${T}"/prefix/man/man*/* + dolib.so "${T}"/prefix/lib/* + + dobin tools/membw/membw + dobin snmp/rdt-agentx.pl + + dodoc ChangeLog README + docinto membw + dodoc tools/membw/README + docinto pqos + dodoc -r pqos/README pqos/configs + docinto lib + dodoc lib/README + docinto lib/python + dodoc lib/python/README.txt + docinto snmp + dodoc snmp/README + docinto rdtset + dodoc rdtset/README + + if use appqos; then + docinto appqos + dodoc appqos/README.md + fi + + unset DOCS + python_foreach_impl python_install + + if use perl ; then + pushd "lib/perl" || die + unset DOCS + myinst=( DESTDIR="${D}" ) + perl-module_src_install + popd || die + docinto lib/perl + dodoc lib/perl/README + fi +} + +src_test() { + python_foreach_impl python_test +} + +python_install() { + pushd "lib/python" || die + distutils-r1_python_install + popd || die + + if use appqos; then + python_domodule appqos + fi +} + +python_test() { + pushd "lib/python" || die + eunittest + popd || die + + if use appqos; then + pushd "appqos" || die + epytest -vv tests + popd || die + fi +}