diff options
author | David Roman <davidroman96@gmail.com> | 2024-09-10 12:30:23 +0200 |
---|---|---|
committer | David Roman <davidroman96@gmail.com> | 2024-09-10 12:30:23 +0200 |
commit | 006d0fa9dcb43d525e921396120b9c83336def3a (patch) | |
tree | 937493f6075c32d73f786e4a8aa79e0682414794 /app-benchmarks | |
parent | app-admin/pass-audit: drop myself as a maintainer (diff) | |
download | guru-006d0fa9dcb43d525e921396120b9c83336def3a.tar.gz guru-006d0fa9dcb43d525e921396120b9c83336def3a.tar.bz2 guru-006d0fa9dcb43d525e921396120b9c83336def3a.zip |
app-benchmarks/phoronix-test-suite: add 10.8.4
Signed-off-by: David Roman <davidroman96@gmail.com>
Diffstat (limited to 'app-benchmarks')
-rw-r--r-- | app-benchmarks/phoronix-test-suite/Manifest | 1 | ||||
-rw-r--r-- | app-benchmarks/phoronix-test-suite/phoronix-test-suite-10.8.4.ebuild | 138 |
2 files changed, 139 insertions, 0 deletions
diff --git a/app-benchmarks/phoronix-test-suite/Manifest b/app-benchmarks/phoronix-test-suite/Manifest new file mode 100644 index 000000000..ccf730961 --- /dev/null +++ b/app-benchmarks/phoronix-test-suite/Manifest @@ -0,0 +1 @@ +DIST phoronix-test-suite-10.8.4.gh.tar.gz 4256978 BLAKE2B 48cac4c6cc97ab2c441638d97c81e14b4632206d5ad15828cfa6b93c1af385344796a57335b3ca5b3b0d2ae65d20516a6869ae32a06da8bd8d643f7056bd6235 SHA512 59c416540d2ece85748d4c645972fcc2058c58f961d31c8b4c916351df027fa0fb69dc18dbf8b20bc22bed34bb424944226dc89423e2ec5f84ca6d890881e845 diff --git a/app-benchmarks/phoronix-test-suite/phoronix-test-suite-10.8.4.ebuild b/app-benchmarks/phoronix-test-suite/phoronix-test-suite-10.8.4.ebuild new file mode 100644 index 000000000..547f9e272 --- /dev/null +++ b/app-benchmarks/phoronix-test-suite/phoronix-test-suite-10.8.4.ebuild @@ -0,0 +1,138 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# shellcheck disable=SC2034 + +EAPI=8 + +inherit bash-completion-r1 xdg-utils + +DESCRIPTION="Phoronix's comprehensive, cross-platform testing and benchmark suite" +HOMEPAGE="https://www.phoronix-test-suite.com" + +if [[ ${PV} == *9999 ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/${PN}/${PN}.git" + EGIT3_STORE_DIR="${T}" +else + SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.gz -> ${P}.gh.tar.gz" + KEYWORDS="~amd64" + + S="${WORKDIR}/${PN}" +fi + +LICENSE="GPL-3" +SLOT="0" + +IUSE="sdl" + +RDEPEND="${DEPEND} + app-arch/p7zip + media-libs/libpng + >=dev-lang/php-5.3[cli,curl,gd,posix,pcntl,simplexml,sockets,ssl,truetype,xml,zip,zlib] + www-servers/apache + x11-base/xorg-server + sdl? ( + media-libs/libsdl + media-libs/sdl-net + media-libs/sdl-image + media-libs/libsdl2 + media-libs/sdl2-net + media-libs/sdl2-image + media-libs/sdl2-mixer + + )" + +check_php_config() +{ + local slot + for slot in $(eselect --brief php list cli); do + local php_dir="/etc/php/cli-${slot}" + + if [[ -f "${EROOT%}/${php_dir}/php.ini" ]]; then + dodir "${php_dir}" + cp -f "${EROOT%}/${php_dir}/php.ini" "${ED%}/${php_dir}/php.ini" \ + || die "cp failed: copy php.ini file" + sed -i -e 's|^allow_url_fopen .*|allow_url_fopen = On|g' "${ED%}/${php_dir}/php.ini" \ + || die "sed failed: modify php.ini file" + elif [[ "$(eselect php show cli)" == "${slot}" ]]; then + ewarn "${slot} does not have a php.ini file." + ewarn "${PN} needs the 'allow_url_fopen' option set to \"On\"" + ewarn "for downloading to work properly." + ewarn + else + elog "${slot} does not have a php.ini file." + elog "${PN} may need the 'allow_url_fopen' option set to \"On\"" + elog "for downloading to work properly if you switch to ${slot}" + elog + fi + done +} + +get_optional_dependencies() +{ + (($# == 1)) || die "${FUNCNAME[0]}(): invalid number of arguments: ${#} (1)" + + local -a array_package_names + local field_value ifield package_generic_name optional_packages_xmlline packages installable_packages="" + local package_close_regexp="</Package>" \ + package_generic_name_regexp="^.*<GenericName>|</GenericName>.*$" \ + package_names_regexp="^.*<PackageName>|</PackageName>.*$" + reg='s@(^[[:blank:]]+|[[:blank:]]+$)$@@g' + + line=0 + while IFS=$'\n' read -r optional_packages_xmlline; do + if [[ "${optional_packages_xmlline}" =~ ${package_generic_name_regexp} ]]; then + package_generic_name="$(echo "${optional_packages_xmlline}" | sed -r "s@${package_generic_name_regexp}@@g")" + elif [[ "${optional_packages_xmlline}" =~ ${package_names_regexp} ]]; then + packages="$(echo "${optional_packages_xmlline}" | sed -r -e "s@${package_names_regexp}@@g" -e "${reg}" )" + ifield=0 + # shellcheck disable=SC2206 + array_package_names=( ${packages} ) + for (( ifield=0 ; ifield < ${#array_package_names[@]} ; ++ifield )); do + field_value="${array_package_names[ifield]}" + [[ ${field_value} =~ ^.+/.+$ ]] || continue # skip invalid package atoms + + if ! has_version "${field_value}"; then + installable_packages="${installable_packages}${installable_packages:+ }${field_value}" + fi + done + elif [[ "${optional_packages_xmlline}" =~ ${package_close_regexp} && -n "${installable_packages}" ]]; then + ewarn " ${package_generic_name}: ${installable_packages}" + installable_packages="" + fi + done <<< "${1}" +} + +src_prepare() { + # BASH completion helper function "have" test is depreciated + sed -i -e '/^have phoronix-test-suite &&$/d' "${S}/pts-core/static/bash_completion" \ + || die "sed failed: remove PTS bash completion have test" + # Remove all dependency resolving shell scripts - security vulnerability + rm -rf "${S}/pts-core/external-test-dependencies/scripts" + eapply_user +} + +src_install() { + # Store the contents of this file - since it will be installed / deleted before we need it. + GENTOO_OPTIONAL_PKGS_XML="$(cat "${S}/pts-core/external-test-dependencies/xml/gentoo-packages.xml")" + newbashcomp pts-core/static/bash_completion "${PN}" + DESTDIR="${D}" "${S}/install-sh" "${EPREFIX%}/usr" + + # Fix the cli-php config for downloading to work. + check_php_config +} + +pkg_postinst() { + xdg_icon_cache_update + xdg_mimeinfo_database_update + xdg_desktop_database_update + + ewarn "${PN} has the following optional package dependencies:" + get_optional_dependencies "${GENTOO_OPTIONAL_PKGS_XML}" + unset -v GENTOO_OPTIONAL_PKGS_XML +} + +pkg_postrm() { + xdg_desktop_database_update +} |