commit:     daf9eab9a7d7834f98dbe348a9714c5609a6797f
Author:     Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com>
AuthorDate: Sat Mar 26 07:28:19 2022 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Sat Mar 26 07:28:19 2022 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=daf9eab9

dev-libs/memkind: add 1.13.0

Signed-off-by: Alessandro Barbieri <lssndrbarbieri <AT> gmail.com>

 dev-libs/memkind/Manifest              |  1 +
 dev-libs/memkind/memkind-1.13.0.ebuild | 83 ++++++++++++++++++++++++++++++++++
 dev-libs/memkind/metadata.xml          |  1 +
 3 files changed, 85 insertions(+)

diff --git a/dev-libs/memkind/Manifest b/dev-libs/memkind/Manifest
index ccd278dda..a753c820a 100644
--- a/dev-libs/memkind/Manifest
+++ b/dev-libs/memkind/Manifest
@@ -1 +1,2 @@
 DIST memkind-1.11.0.tar.gz 1072455 BLAKE2B 
2de2cf053687ba2150f694e8c4143eeca74fc377feee2b6892067b661d8c58d7d5fcacb021fc92a47dad27f52aa4cbc6408cfede3141ab1f8ae81147b49aa6a7
 SHA512 
0b5bde35b3565c730fa954aebfe2ccbecd1e120c920d05acdbc0a74914731a90aeef8d57101f1f47bd35fd310bc143fa517bc871b32e592b8412384ff652fc05
+DIST memkind-1.13.0.tar.gz 1111767 BLAKE2B 
fb2b0ca70b6da32b2bf42cba68f549c279f301f2c9b2eb2f7dfcb2909105bb1eb84bd6abdf15dfcb5f45a5e0bab7fbd0aef95ce090b06b02bc8ae099bdf1b0ca
 SHA512 
509d49e3c67321496b322469d4bb13aa8b9038e94dc9bdfb379c38e86a5705ba13bc015443da8291be49711e14bce9845b697f62cfcc981168f255f9fb515b0e

diff --git a/dev-libs/memkind/memkind-1.13.0.ebuild 
b/dev-libs/memkind/memkind-1.13.0.ebuild
new file mode 100644
index 000000000..ac1b42959
--- /dev/null
+++ b/dev-libs/memkind/memkind-1.13.0.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..10} pypy3 )
+
+inherit autotools linux-info python-any-r1 toolchain-funcs
+
+DESCRIPTION="user extensible heap manager built on top of jemalloc"
+HOMEPAGE="https://memkind.github.io/memkind";
+SRC_URI="https://github.com/memkind/memkind/archive/v${PV}.tar.gz -> 
${P}.tar.gz"
+KEYWORDS="~amd64"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="+daxctl debug decorators filelog +heap-manager hwloc initial-exec-tls 
openmp secure test +tls"
+
+RDEPEND="
+       daxctl? ( sys-block/ndctl )
+       hwloc? ( sys-apps/hwloc )
+       sys-process/numactl
+"
+DEPEND="
+       ${RDEPEND}
+       ${PYTHON_DEPS}
+"
+
+PATCHES=( "${FILESDIR}/${PN}-respect-ar.patch" )
+RESTRICT="test" # ERROR: ./test/test.sh requires a NUMA enabled system with 
more than one node.
+#RESTRICT="!test? ( test )"
+
+pkg_pretend() {
+       linux-info_pkg_setup
+       CONFIG_CHECK_MODULES=""
+       if use daxctl; then
+               CONFIG_CHECK_MODULES+="DEV_DAX_KMEM "
+       fi
+       if linux_config_exists; then
+               for module in ${CONFIG_CHECK_MODULES}; do
+                       linux_chkconfig_present ${module} || ewarn "${module} 
needs to be enabled"
+               done
+       fi
+}
+
+src_prepare() {
+       default
+       eautoreconf
+       cd jemalloc && eautoreconf
+}
+
+src_configure() {
+       tc-export AR
+       local myconf=(
+               --disable-debug
+               --disable-gcov
+               --enable-shared
+               --enable-static
+               $(use_enable daxctl)
+               $(use_enable decorators)
+               $(use_enable debug debug-jemalloc)
+               $(use_enable heap-manager)
+               $(use_enable hwloc)
+               $(use_enable initial-exec-tls memkind-initial-exec-tls)
+               $(use_enable logging-to-file filelog)
+               $(use_enable openmp)
+               $(use_enable secure)
+               $(use_enable tls)
+       )
+       econf "${myconf[@]}"
+}
+
+src_install() {
+       default
+       find "${ED}" -name '*.la' -delete || die
+       find "${ED}" -name '*.a' -delete || die
+}
+
+src_test() {
+       addwrite /proc/sys/vm/nr_hugepages
+       echo 3000 > /proc/sys/vm/nr_hugepages
+       emake check
+}

diff --git a/dev-libs/memkind/metadata.xml b/dev-libs/memkind/metadata.xml
index 1c0d07d52..c063cd6ec 100644
--- a/dev-libs/memkind/metadata.xml
+++ b/dev-libs/memkind/metadata.xml
@@ -19,6 +19,7 @@ The memkind library is a user extensible heap manager built 
on top of jemalloc w
                <flag name="decorators">Enable decorators</flag>
                <flag name="heap-manager">Allow switching allocator at 
runtime</flag>
                <flag name="hwloc">Build library with hwloc support</flag>
+               <flag name="filelog">Log to file for each process</flag>
                <flag name="initial-exec-tls">Build library with 
initial-exec-tls support</flag>
                <flag name="secure">Build libraries with security 
enhancements</flag>
                <flag name="tls">Enable thread local storage</flag>

Reply via email to