From 948d557b4a61dc14722668b6b11a4cf3cee07b01 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Fri, 13 Sep 2019 17:56:30 +0100 Subject: gentoo resync : 13.09.2019 --- sys-libs/libhugetlbfs/Manifest | 6 +- sys-libs/libhugetlbfs/libhugetlbfs-2.20.ebuild | 166 ------------------------- sys-libs/libhugetlbfs/libhugetlbfs-2.22.ebuild | 158 +++++++++++++++++++++++ sys-libs/libhugetlbfs/metadata.xml | 3 - 4 files changed, 161 insertions(+), 172 deletions(-) delete mode 100644 sys-libs/libhugetlbfs/libhugetlbfs-2.20.ebuild create mode 100644 sys-libs/libhugetlbfs/libhugetlbfs-2.22.ebuild (limited to 'sys-libs/libhugetlbfs') diff --git a/sys-libs/libhugetlbfs/Manifest b/sys-libs/libhugetlbfs/Manifest index 3e42c146d085..b5bb23971b29 100644 --- a/sys-libs/libhugetlbfs/Manifest +++ b/sys-libs/libhugetlbfs/Manifest @@ -1,8 +1,8 @@ AUX libhugetlbfs-2.20-noexec-stack.patch 3513 BLAKE2B b33aa3f5891e1c55c00c61e7d7232504466dc78c6b4d232f64ec5047c45c6044058bdebea02ddb1f67deb20f298e970d96d2fe8a76a017984d46863c179c0924 SHA512 b8146512167da9530f107d3db4695d8e1174568c2f10bab41c3c3f8dff27b1357cef409e95cea75fbce177366a84904d80a7f1cfb7653dc6e8e10c0abfd8ef0b AUX libhugetlbfs-2.6-fixup-testsuite.patch 1231 BLAKE2B e49ac448b4ac17a6ce9c32543e3ad7391bc8525e147d7a5100ef7ae15e4b0cf48b58ff1fe62d9a0fa61f142b7b8366228974c6628999edaa61d96114371bc09d SHA512 af9ee541ac4a30260e17baab1616cee13fdcc679ae3fdceed29ca6282c12a6b60d24b04bb61e3aa5f42092e017eb3bae59a56fd2b03954e40803f9f6f2cc4f80 AUX libhugetlbfs-2.9-build.patch 1163 BLAKE2B 782c802c12ba86c637fa693dda3d8fb618068f156ccaae5a60623d077997d4dcc7a27e3b2fa4e3b7ec0a34ae8db2e9571bad077de103ca6b65de533b6fc896c9 SHA512 d6443875d2dd2e44abfd470ec793b70d0cf5a69931e2c2889a7b204d1c27bc2abc3b0c7149a495845e080cb797b759844c330ad5c467aed7dae0669b7f5b7ff2 -DIST libhugetlbfs-2.20.tar.gz 186750 BLAKE2B 758482a41254d6d14795efdfb2959248af2ff00bc6cafbae9b2002b7eaa50921a72ef928910bc0d2061a414e9c73346848eead108af077c96429870c734495aa SHA512 817fca3f8e3b127b9b877e0a03d0a94bf0c3ec481d3becf995986ce6ae0532629c5460100eb9f2ef3452ed59a3b9d3ac8362df8f87b387803c36d35ab7af0902 DIST libhugetlbfs-2.21.tar.gz 173052 BLAKE2B a65fdeee3ed9ad8cb69f772847646befbf5deef0b82d6cb7338e5ff448d5c2461ceb1e381b9515e79f4243482589bb0203874cc52e5c8c6d98667df4eacffa8b SHA512 87fd95a826bedc2c53b1aa440f5db7ff3ece482d520545b597d4d1231cf84276103c312899b812166872444331bc7b6f1692f0d3b7cbff691efdcf9c2e99b1d0 -EBUILD libhugetlbfs-2.20.ebuild 4461 BLAKE2B 4ba750e430f3c3de3282fe628a3229d58af3f2af9ed2f795e5584e967d34b6a3ef5158cd0f29c2f78d5400ed1ddaff391847b3b180687e21957880f03731868e SHA512 c8db19646892d790c08abd9e577c96bbfcb52de3e45087782a4019f0f5fffe0311079b5d8e61e96a75e5af56d3e9b0961e6a3d0b43f3d29ecf57c85fc12ce108 +DIST libhugetlbfs-2.22.tar.gz 175099 BLAKE2B e67a6a678065b10492d510b733b7c6e2926f4f01dd741d49f6e76cedde002fa81d7dad6a6fd8922443c6aacd527c9b3df35f84b8da7332c04e3fcf8c52e23084 SHA512 7f38f9fa576841f36c7cd5192a9ee3f79b275b7b64d7e2a838a43636489cf88627bdba3a045d6b3302a4a509cf64627972b569b4c2c3c4fe05d5aa4ae1d66fd8 EBUILD libhugetlbfs-2.21.ebuild 4068 BLAKE2B 903b0db5f72e4926e8185d15bc4ad970fc77926381bdb6ad0205aa9bcbb7fe6a8936f38a4b783d2a418ad0523ca045cca45db7ed1650e892edd58db1f04de233 SHA512 9df56b646c5df82903a03562e7de61b019d3182a9b8d9b24506ad3bd0edf2ba68b4cd00ba5c47410c8f60876d0fe79b360b50d6c40f6a08d9db6c688cfbfc36d -MISC metadata.xml 484 BLAKE2B 8f4e5877068e5af69e5a53695d10c44fbc899eb53f3128c41a4cef162ce3c0213002c169c6d7e89fff6a39126b3e387f565480e1ef2323b354a2c6181ecb8167 SHA512 0dee09cbd2ca1a730dbe2a3c62ef1099959ab307c96f3106c483854310430dd59b45a7135a2db56a28684b0a4245898341527b1f67bb335456c8cdc14ae611fd +EBUILD libhugetlbfs-2.22.ebuild 4153 BLAKE2B 3079451b1dd71059eb955d6ff8a3c08986176fdaeadfce9358b56deedd011a23a301cf80eff014960103a08802a77ef8327f0394e38c9c94a89550a45bb876a1 SHA512 a77ab0a980a286945b1082cbcfa02a7c984d16be555bcfc50b9b2f2bc4a4c1cae45bb93e304ad9b3970e59624d52624be9806c20d576ab41d791d916ae7a2e56 +MISC metadata.xml 396 BLAKE2B 261776d0894dc66459b99826ce4721148b0916cacca7fa4cadf70eef720c19a0d8fbd9e3a5e63323ba98778843e715e3e493645de701f2276259ebfaa6ae9e87 SHA512 95adcf5f0a47473f679d37ba1a6559b45681f288f7c4c70a8b9dd18c67eab3b4c222df996c3eb83d1317aa9a8a2710dc788ebc23e1255713ed81db33f57df3b8 diff --git a/sys-libs/libhugetlbfs/libhugetlbfs-2.20.ebuild b/sys-libs/libhugetlbfs/libhugetlbfs-2.20.ebuild deleted file mode 100644 index c3c800361c4d..000000000000 --- a/sys-libs/libhugetlbfs/libhugetlbfs-2.20.ebuild +++ /dev/null @@ -1,166 +0,0 @@ -# Copyright 1999-2015 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI="5" - -PYTHON_COMPAT=( python2_7 ) - -inherit eutils multilib toolchain-funcs perl-functions python-any-r1 - -DESCRIPTION="easy hugepage access" -HOMEPAGE="https://github.com/libhugetlbfs/libhugetlbfs" -SRC_URI="https://github.com/libhugetlbfs/libhugetlbfs/archive/${PV}.tar.gz -> ${P}.tar.gz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~s390 ~x86" -IUSE="perl static-libs test" - -DEPEND="test? ( ${PYTHON_DEPS} )" -RDEPEND="perl? ( dev-lang/perl:= )" - -src_prepare() { - perl_set_version - - epatch "${FILESDIR}"/${PN}-2.9-build.patch #332517 - epatch "${FILESDIR}"/${PN}-2.20-noexec-stack.patch - epatch "${FILESDIR}"/${PN}-2.6-fixup-testsuite.patch - sed -i \ - -e '/^PREFIX/s:/local::' \ - -e '1iBUILDTYPE = NATIVEONLY' \ - -e '1iV = 1' \ - -e '/gzip.*MANDIR/d' \ - -e "/^LIB\(32\)/s:=.*:= $(get_libdir):" \ - -e '/^CC\(32\|64\)/s:=.*:= $(CC):' \ - -e "/^PMDIR = .*\/perl5\/TLBC/s::PMDIR = ${VENDOR_LIB}\/TLBC:" \ - Makefile || die "sed failed" - if [ "$(get_libdir)" == "lib64" ]; then - sed -i \ - -e "/^LIB\(32\)/s:=.*:= lib32:" \ - Makefile - fi - - # Tarballs from github don't have the version set. - # https://github.com/libhugetlbfs/libhugetlbfs/issues/7 - [[ -f version ]] || echo "${PV}" > version -} - -src_compile() { - tc-export AR - emake CC="$(tc-getCC)" libs tools -} - -src_install() { - default - use static-libs || rm -f "${ED}"/usr/$(get_libdir)/*.a - rm "${ED}"/usr/bin/oprofile* || die - if ! use perl ; then - rm -r \ - "${ED}"/usr/bin/cpupcstat \ - "${ED}"/usr/share/man/man8/cpupcstat.8 \ - "${ED}/${VENDOR_LIB}" \ - || die - fi -} - -src_test_alloc_one() { - hugeadm="$1" - sign="$2" - pagesize="$3" - pagecount="$4" - ${hugeadm} \ - --pool-pages-max ${pagesize}:${sign}${pagecount} \ - && \ - ${hugeadm} \ - --pool-pages-min ${pagesize}:${sign}${pagecount} - return $? -} - -# die is NOT allowed in this src_test block after the marked point, so that we -# can clean up memory allocation. You'll leak at LEAST 64MiB per run otherwise. -src_test() { - [[ $UID -eq 0 ]] || die "Need FEATURES=-userpriv to run this testsuite" - einfo "Building testsuite" - emake -j1 tests || die "Failed to build tests" - - hugeadm='obj/hugeadm' - allocated='' - rc=0 - # the testcases need 64MiB per pagesize. - MIN_HUGEPAGE_RAM=$((64*1024*1024)) - - einfo "Planning allocation" - PAGESIZES="$(${hugeadm} --page-sizes-all)" - - # Need to do this before we can create the mountpoints. - for pagesize in ${PAGESIZES} ; do - # The kernel depends on the location :-( - mkdir -p /var/lib/hugetlbfs/pagesize-${pagesize} - addwrite /var/lib/hugetlbfs/pagesize-${pagesize} - done - addwrite /proc/sys/vm/ - addwrite /proc/sys/kernel/shmall - addwrite /proc/sys/kernel/shmmax - addwrite /proc/sys/kernel/shmmni - - einfo "Checking HugeTLB mountpoints" - ${hugeadm} --create-mounts || die "Failed to set up hugetlb mountpoints." - - # ----------------------------------------------------- - # --------- die is unsafe after this point. ----------- - # ----------------------------------------------------- - - einfo "Starting allocation" - for pagesize in ${PAGESIZES} ; do - pagecount=$((${MIN_HUGEPAGE_RAM}/${pagesize})) - einfo " ${pagecount} @ ${pagesize}" - addwrite /var/lib/hugetlbfs/pagesize-${pagesize} - src_test_alloc_one "$hugeadm" "+" "${pagesize}" "${pagecount}" - rc=$? - if [[ $rc -eq 0 ]]; then - allocated="${allocated} ${pagesize}:${pagecount}" - else - eerror "Failed to add ${pagecount} pages of size ${pagesize}" - fi - done - - einfo "Allocation status" - ${hugeadm} --pool-list - - if [[ -n "${allocated}" ]]; then - # All our allocations worked, so time to run. - einfo "Starting tests" - cd "${S}"/tests - TESTOPTS="-t func" - case $ARCH in - amd64|ppc64) - TESTOPTS="${TESTOPTS} -b 64" - ;; - x86) - TESTOPTS="${TESTOPTS} -b 32" - ;; - esac - # This needs a bit of work to give a nice exit code still. - ./run_tests.py ${TESTOPTS} - rc=$? - else - eerror "Failed to make HugeTLB allocations." - rc=1 - fi - - einfo "Cleaning up memory" - cd "${S}" - # Cleanup memory allocation - for alloc in ${allocated} ; do - pagesize="${alloc/:*}" - pagecount="${alloc/*:}" - einfo " ${pagecount} @ ${pagesize}" - src_test_alloc_one "$hugeadm" "-" "${pagesize}" "${pagecount}" - done - - # --------------------------------------------------------- - # --------- die is safe again after this point. ----------- - # --------------------------------------------------------- - - return $rc -} diff --git a/sys-libs/libhugetlbfs/libhugetlbfs-2.22.ebuild b/sys-libs/libhugetlbfs/libhugetlbfs-2.22.ebuild new file mode 100644 index 000000000000..34b969c3fe3d --- /dev/null +++ b/sys-libs/libhugetlbfs/libhugetlbfs-2.22.ebuild @@ -0,0 +1,158 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{5,6,7} ) + +inherit multilib toolchain-funcs python-any-r1 + +DESCRIPTION="easy hugepage access" +HOMEPAGE="https://github.com/libhugetlbfs/libhugetlbfs" +SRC_URI="https://github.com/libhugetlbfs/libhugetlbfs/archive/${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~s390 ~x86" +IUSE="static-libs test" + +DEPEND="test? ( ${PYTHON_DEPS} )" + +PATCHES=( + "${FILESDIR}"/${PN}-2.6-fixup-testsuite.patch +) + +src_prepare() { + default + sed -i \ + -e '/^PREFIX/s:/local::' \ + -e '1iBUILDTYPE = NATIVEONLY' \ + -e '1iV = 1' \ + -e '/gzip.*MANDIR/d' \ + -e "/^LIB\(32\)/s:=.*:= $(get_libdir):" \ + -e '/^CC\(32\|64\)/s:=.*:= $(CC):' \ + -e 's@^\(ARCH\) ?=@\1 =@' \ + Makefile || die "sed failed" + if [ "$(get_libdir)" == "lib64" ]; then + sed -i \ + -e "/^LIB\(32\)/s:=.*:= lib32:" \ + Makefile + fi + + # Tarballs from github don't have the version set. + # https://github.com/libhugetlbfs/libhugetlbfs/issues/7 + [[ -f version ]] || echo "${PV}" > version +} + +src_compile() { + tc-export AR + emake CC="$(tc-getCC)" libs tools +} + +src_install() { + default + use static-libs || rm -f "${ED}"/usr/$(get_libdir)/*.a +} + +src_test_alloc_one() { + hugeadm="$1" + sign="$2" + pagesize="$3" + pagecount="$4" + ${hugeadm} \ + --pool-pages-max ${pagesize}:${sign}${pagecount} \ + && \ + ${hugeadm} \ + --pool-pages-min ${pagesize}:${sign}${pagecount} + return $? +} + +# die is NOT allowed in this src_test block after the marked point, so that we +# can clean up memory allocation. You'll leak at LEAST 64MiB per run otherwise. +src_test() { + [[ $UID -eq 0 ]] || die "Need FEATURES=-userpriv to run this testsuite" + einfo "Building testsuite" + emake -j1 tests || die "Failed to build tests" + + local hugeadm='obj/hugeadm' + local allocated='' + local rc=0 + # the testcases need 64MiB per pagesize. + local MIN_HUGEPAGE_RAM=$((64*1024*1024)) + + einfo "Planning allocation" + local PAGESIZES="$(${hugeadm} --page-sizes-all)" + + # Need to do this before we can create the mountpoints. + local pagesize pagecount + for pagesize in ${PAGESIZES} ; do + # The kernel depends on the location :-( + mkdir -p /var/lib/hugetlbfs/pagesize-${pagesize} + addwrite /var/lib/hugetlbfs/pagesize-${pagesize} + done + addwrite /proc/sys/vm/ + addwrite /proc/sys/kernel/shmall + addwrite /proc/sys/kernel/shmmax + addwrite /proc/sys/kernel/shmmni + + einfo "Checking HugeTLB mountpoints" + ${hugeadm} --create-mounts || die "Failed to set up hugetlb mountpoints." + + # ----------------------------------------------------- + # --------- die is unsafe after this point. ----------- + # ----------------------------------------------------- + + einfo "Starting allocation" + for pagesize in ${PAGESIZES} ; do + pagecount=$((${MIN_HUGEPAGE_RAM}/${pagesize})) + einfo " ${pagecount} @ ${pagesize}" + addwrite /var/lib/hugetlbfs/pagesize-${pagesize} + src_test_alloc_one "${hugeadm}" "+" "${pagesize}" "${pagecount}" + rc=$? + if [[ ${rc} -eq 0 ]]; then + allocated="${allocated} ${pagesize}:${pagecount}" + else + eerror "Failed to add ${pagecount} pages of size ${pagesize}" + fi + done + + einfo "Allocation status" + ${hugeadm} --pool-list + + if [[ -n "${allocated}" ]]; then + # All our allocations worked, so time to run. + einfo "Starting tests" + cd "${S}"/tests || die + local TESTOPTS="-t func" + case ${ARCH} in + amd64|ppc64) + TESTOPTS="${TESTOPTS} -b 64" + ;; + x86) + TESTOPTS="${TESTOPTS} -b 32" + ;; + esac + # This needs a bit of work to give a nice exit code still. + ./run_tests.py ${TESTOPTS} + rc=$? + else + eerror "Failed to make HugeTLB allocations." + rc=1 + fi + + einfo "Cleaning up memory" + cd "${S}" || die + # Cleanup memory allocation + for alloc in ${allocated} ; do + pagesize="${alloc/:*}" + pagecount="${alloc/*:}" + einfo " ${pagecount} @ ${pagesize}" + src_test_alloc_one "$hugeadm" "-" "${pagesize}" "${pagecount}" + done + + # --------------------------------------------------------- + # --------- die is safe again after this point. ----------- + # --------------------------------------------------------- + + return ${rc} +} diff --git a/sys-libs/libhugetlbfs/metadata.xml b/sys-libs/libhugetlbfs/metadata.xml index 534f22e29cc0..bf4a9ce74b49 100644 --- a/sys-libs/libhugetlbfs/metadata.xml +++ b/sys-libs/libhugetlbfs/metadata.xml @@ -5,9 +5,6 @@ base-system@gentoo.org Gentoo Base System - - Install the cpupcstat tool and some perl modules - libhugetlbfs/libhugetlbfs libhugetlbfs -- cgit v1.2.3