ulib/sysinfos: implémenter dump_sysinfos, unsupported_system, require_sysinfos
This commit is contained in:
parent
a8fa7227b8
commit
67f29ddea4
|
@ -331,16 +331,17 @@ function ensure_sysinfos() {
|
|||
__fix_sysinfos_downward
|
||||
}
|
||||
|
||||
function dump_sysinfos_desc() {
|
||||
function dump_sysinfos() {
|
||||
# Afficher les valeurs de SYSNAME, SYSDIST, SYSVER qui décrivent le système
|
||||
# actuel
|
||||
local sysname_="${1:-MYSYSNAME}[*]"
|
||||
local sysdist_="${2:-MYSYSDIST}[*]"
|
||||
local sysver_="${3:-MYSYSVER}[*]"
|
||||
echo "\
|
||||
sysname: ${!sysname_}
|
||||
sysdist: ${!sysdist_}
|
||||
sysver: ${!sysver_}"
|
||||
sysname=(${!sysname_})
|
||||
sysdist=(${!sysdist_})
|
||||
sysver=(${!sysver_})
|
||||
bits=$MYBITS"
|
||||
}
|
||||
|
||||
function get_sysinfos_desc() {
|
||||
|
@ -507,6 +508,32 @@ function check_sysinfos() {
|
|||
return $r_
|
||||
}
|
||||
|
||||
function unsupported_system() {
|
||||
# Afficher un message d'erreur indiquant que le système actuel n'est pas
|
||||
# supporté, et quitter le script
|
||||
local msg="Ce script n'est pas supporté sur $(get_sysinfos_desc)"
|
||||
[ -n "$*" ] && msg="$msg
|
||||
Il faut au moins l'un des systèmes suivants: $*"
|
||||
die "$msg"
|
||||
}
|
||||
|
||||
function require_sysinfos() {
|
||||
# Vérifier le système actuel avec check_sysinfos(), et afficher un message
|
||||
# d'erreur avec unsupported_system() s'il ne correspond pas à la requête
|
||||
check_sysinfos "$@" && return 0
|
||||
# Construire une description du type de système attendu en fonction des
|
||||
# arguments. Actuellement, on se contente de copier la ligne de commande, en
|
||||
# sautant les options.
|
||||
# XXX améliorer l'algorithme pour décrire précisément le système attendu
|
||||
local -a infos; local info
|
||||
for info in "$@"; do
|
||||
if ! [[ "$info" == -* ]]; then
|
||||
infos=("${infos[@]}" "$info")
|
||||
fi
|
||||
done
|
||||
unsupported_system "${infos[@]}"
|
||||
}
|
||||
|
||||
# fonctions de support pour tester certaines versions de debian
|
||||
# utilisation:
|
||||
# on_debian
|
||||
|
|
Loading…
Reference in New Issue