mirror of
https://github.com/gentoo-mirror/guru.git
synced 2026-07-09 15:13:31 -04:00
app-benchmarks/phoronix-test-suite: add 10.8.4
Signed-off-by: David Roman <davidroman96@gmail.com>
This commit is contained in:
1
app-benchmarks/phoronix-test-suite/Manifest
Normal file
1
app-benchmarks/phoronix-test-suite/Manifest
Normal file
@@ -0,0 +1 @@
|
||||
DIST phoronix-test-suite-10.8.4.gh.tar.gz 4256978 BLAKE2B 48cac4c6cc97ab2c441638d97c81e14b4632206d5ad15828cfa6b93c1af385344796a57335b3ca5b3b0d2ae65d20516a6869ae32a06da8bd8d643f7056bd6235 SHA512 59c416540d2ece85748d4c645972fcc2058c58f961d31c8b4c916351df027fa0fb69dc18dbf8b20bc22bed34bb424944226dc89423e2ec5f84ca6d890881e845
|
||||
@@ -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
|
||||
}
|
||||
Reference in New Issue
Block a user