41 lines
1.4 KiB
Bash
41 lines
1.4 KiB
Bash
##@cooked comments # -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
|
|
## Charger si possible les librairies de ulib depuis /etc/ulib. Sinon, charger
|
|
## la librairie depuis le répertoire courant. Nécessite bash.
|
|
##@cooked nocomments
|
|
|
|
# Ce fichier doit être *sourcé* depuis un répertoire ulib créé par ulibsync. Si
|
|
# ce fichier n'est pas sourcé, alors le répertoire ulib doit être placé dans le
|
|
# répertoire du script qui inclue ce fichier.
|
|
|
|
ULIBDIR="${BASH_SOURCE[0]}"
|
|
if [ -n "$ULIBDIR" -a -f "$ULIBDIR" ]; then
|
|
# Fichier sourcé
|
|
ULIBDIR="$(dirname "$ULIBDIR")"
|
|
else
|
|
# Fichier non sourcé. Tout exprimer par rapport au script courant
|
|
ULIBDIR="$(dirname "$0")/ulib"
|
|
fi
|
|
|
|
function __check_ulib_version() {
|
|
# tester si la version ulib du système est plus récente que la version ulib
|
|
# du répertoire courant
|
|
local thisver=0 sysver=0
|
|
[ -f "$ULIBDIR/.ulib_version" ] && thisver="$(<"$ULIBDIR/.ulib_version")"
|
|
[ -f "/etc/.ulib_version" ] && sysver="$(<"/etc/.ulib_version")"
|
|
[ $sysver -gt $thisver ]
|
|
}
|
|
|
|
if [ -f /etc/ulib ] && __check_ulib_version; then
|
|
unset -f __check_ulib_version
|
|
. /etc/ulib
|
|
elif [ -f "$ULIBDIR/ulib" ]; then
|
|
unset -f __check_ulib_version
|
|
. "$ULIBDIR/ulib"
|
|
else
|
|
echo "error: Unable to find neither $ULIBDIR/ulib nor /etc/ulib" 1>&2
|
|
exit 1
|
|
fi
|
|
|
|
uprovide auto
|
|
urequire DEFAULTS
|