Intégration de la branche release-9.10.0
This commit is contained in:
commit
337f24c447
17
CHANGES.md
17
CHANGES.md
|
@ -1,3 +1,20 @@
|
||||||
|
## Version 9.10.0 du 12/11/2020-23:05
|
||||||
|
|
||||||
|
* `24d0519` dk: support merge .shared_env et .machine_env
|
||||||
|
* `45c40d7` dk: support de --pull
|
||||||
|
* `c921d2a` pff: support de NOUPSTREAM
|
||||||
|
* `edf956f` dk: BRANCH peut aussi être un ^COMMIT
|
||||||
|
* `85842f3` renommer start-screen en Sscreen
|
||||||
|
* `e395720` maj doc
|
||||||
|
* `4603b1a` bug
|
||||||
|
* `a91542b` maj .gitattributes par défaut
|
||||||
|
* `51c4c33` support sélection java 11
|
||||||
|
* `82a7952` dm: support des aliases pour ssh aussi
|
||||||
|
* `d1d32de` dk: bug avec update-devel
|
||||||
|
* `037cb1a` maj template sql
|
||||||
|
* `04d037f` support rhel8 / ol8
|
||||||
|
* `725ba6d` cssh: donner un nom à la session
|
||||||
|
|
||||||
## Version 9.9.0 du 21/09/2020-18:08
|
## Version 9.9.0 du 21/09/2020-18:08
|
||||||
|
|
||||||
* `2ec6c21` support gros doigt de python2 sur les systèmes modernes
|
* `2ec6c21` support gros doigt de python2 sur les systèmes modernes
|
||||||
|
|
|
@ -33,8 +33,9 @@ function __auto_screen() {
|
||||||
|
|
||||||
local msgprefix
|
local msgprefix
|
||||||
local screens count
|
local screens count
|
||||||
|
local session_name="nutools-$USER"
|
||||||
|
|
||||||
screens="$(LANG=C screen -ls | grep -Ei "attached|detached")"
|
screens="$(LANG=C screen -ls | grep -Ei "${session_name}.*attached|detached")"
|
||||||
if [ -n "$screens" ]; then
|
if [ -n "$screens" ]; then
|
||||||
count="$(echo "$screens" | wc -l)"
|
count="$(echo "$screens" | wc -l)"
|
||||||
else
|
else
|
||||||
|
@ -52,14 +53,14 @@ La première session"
|
||||||
if __ask "
|
if __ask "
|
||||||
$msgprefix sera reconnectée automatiquent dans 2 secondes
|
$msgprefix sera reconnectée automatiquent dans 2 secondes
|
||||||
Voulez-vous reconnecter la session screen? [On] "; then
|
Voulez-vous reconnecter la session screen? [On] "; then
|
||||||
exec screen -q -s -/bin/bash -xRR
|
exec screen -q -s -/bin/bash -xRR -S "$session_name"
|
||||||
else
|
else
|
||||||
exec /bin/bash -l
|
exec /bin/bash -l
|
||||||
fi
|
fi
|
||||||
elif __ask "
|
elif __ask "
|
||||||
Une ${COULEUR_VERTE}nouvelle session screen${COULEUR_NORMALE} sera lancée automatiquement dans 2 secondes
|
Une ${COULEUR_VERTE}nouvelle session screen${COULEUR_NORMALE} sera lancée automatiquement dans 2 secondes
|
||||||
Voulez-vous lancer une session screen? [On] "; then
|
Voulez-vous lancer une session screen? [On] "; then
|
||||||
exec screen -q -s -/bin/bash -RR
|
exec screen -q -s -/bin/bash -RR -S "$session_name"
|
||||||
else
|
else
|
||||||
exec /bin/bash -l
|
exec /bin/bash -l
|
||||||
fi
|
fi
|
|
@ -1 +1 @@
|
||||||
9.9.0
|
9.10.0
|
||||||
|
|
6
cssh
6
cssh
|
@ -24,15 +24,15 @@ eval "$vars"
|
||||||
[ "${#hosts[*]}" -gt 0 ] || die "Vous devez spécifier l'hôte sur lequel se connecter"
|
[ "${#hosts[*]}" -gt 0 ] || die "Vous devez spécifier l'hôte sur lequel se connecter"
|
||||||
|
|
||||||
[ ${#args[*]} -gt 0 ] && cmd="$(qvals "${args[@]}"); " || cmd=
|
[ ${#args[*]} -gt 0 ] && cmd="$(qvals "${args[@]}"); " || cmd=
|
||||||
cmd="$cmd$(<"$scriptdir/start-screen")"
|
cmd="$cmd$(<"$scriptdir/Sscreen")"
|
||||||
cmd="'${cmd//\'/\'\\\'\'}'"
|
cmd="'${cmd//\'/\'\\\'\'}'"
|
||||||
|
|
||||||
for host in "${hosts[@]}"; do
|
for host in "${hosts[@]}"; do
|
||||||
"$ssh" \
|
"$ssh" \
|
||||||
"${options[@]}" -qt "$host" -- \
|
"${options[@]}" -qt "$host" -- \
|
||||||
"[ -x /usr/local/nutools/start-screen ] && exec /usr/local/nutools/start-screen $(qvals "${args[@]}") || exit 123"
|
"[ -x /usr/local/nutools/Sscreen ] && exec /usr/local/nutools/Sscreen $(qvals "${args[@]}") || exit 123"
|
||||||
if [ $? -eq 123 ]; then
|
if [ $? -eq 123 ]; then
|
||||||
# pas de start-screen en face, le faire à la main
|
# pas de Sscreen en face, le faire à la main
|
||||||
${exec:+exec} \
|
${exec:+exec} \
|
||||||
"$ssh" "${options[@]}" -t "$host" -- \
|
"$ssh" "${options[@]}" -t "$host" -- \
|
||||||
/bin/bash -c "$cmd"
|
/bin/bash -c "$cmd"
|
||||||
|
|
61
dk
61
dk
|
@ -18,7 +18,7 @@ Certaines commandes ci-dessous ont le même nom que des commandes docker, et
|
||||||
nécessitent un projet docker ou docker-compose. Si ces commandes sont lancées
|
nécessitent un projet docker ou docker-compose. Si ces commandes sont lancées
|
||||||
alors qu'on n'est pas dans un projet docker, alors elles sont passées telle
|
alors qu'on n'est pas dans un projet docker, alors elles sont passées telle
|
||||||
quelles à docker. ATTENTION: comme la commande est exécutée par docker, cela
|
quelles à docker. ATTENTION: comme la commande est exécutée par docker, cela
|
||||||
veut dire qu'elle n'aura pas la même sématique.
|
veut dire qu'elle n'aura pas la même sémantique.
|
||||||
|
|
||||||
COMMANDES
|
COMMANDES
|
||||||
get-profile
|
get-profile
|
||||||
|
@ -273,7 +273,7 @@ OPTIONS générales
|
||||||
Spécifier l'hôte pour la commande systemd-unit
|
Spécifier l'hôte pour la commande systemd-unit
|
||||||
|
|
||||||
OPTIONS build
|
OPTIONS build
|
||||||
(ces options ne sont valides que pour les commandes build, brd, bs, bd, bpd)
|
(ces options ne sont valides que pour les commandes build, brd, bs, by, bpy)
|
||||||
--stack
|
--stack
|
||||||
Indiquer que le build est fait pour un déploiement avec deploy.
|
Indiquer que le build est fait pour un déploiement avec deploy.
|
||||||
S'il existe un fichier docker-stack.yml, il est utilisé de préférence à
|
S'il existe un fichier docker-stack.yml, il est utilisé de préférence à
|
||||||
|
@ -281,9 +281,11 @@ OPTIONS build
|
||||||
forme docker-stack.PROFILE.yml sont utilisés de préférence aux fichiers
|
forme docker-stack.PROFILE.yml sont utilisés de préférence aux fichiers
|
||||||
docker-compose.PROFILE.yml
|
docker-compose.PROFILE.yml
|
||||||
Cette option n'est nécessaire qu'avec build puisque les commandes
|
Cette option n'est nécessaire qu'avec build puisque les commandes
|
||||||
deploy, bd, bpd et update impliquent --stack
|
deploy, by, bpy et update impliquent --stack
|
||||||
-j, --no-cache
|
-j, --no-cache
|
||||||
Ne pas utiliser le cache lors du build
|
Ne pas utiliser le cache lors du build
|
||||||
|
-U, --pull
|
||||||
|
Essayer de récupérer une version plus récente de l'image source
|
||||||
-g, --ug, --no-update-apps
|
-g, --ug, --no-update-apps
|
||||||
ne pas mettre à jour les dépôts dépendants. ces dépôts sont définis dans
|
ne pas mettre à jour les dépôts dépendants. ces dépôts sont définis dans
|
||||||
le fichier update-apps.conf qui a le format suivant:
|
le fichier update-apps.conf qui a le format suivant:
|
||||||
|
@ -342,6 +344,8 @@ VARIABLES de update-apps.conf
|
||||||
vaut 'origin' par défaut
|
vaut 'origin' par défaut
|
||||||
BRANCH
|
BRANCH
|
||||||
vaut 'develop' par défaut
|
vaut 'develop' par défaut
|
||||||
|
Pour toutes les variables de type BRANCH, utiliser la syntaxe ^COMMIT
|
||||||
|
pour ignorer ORIGIN et sélectionner un commit en particulier
|
||||||
TYPE
|
TYPE
|
||||||
vaut 'composer' par défaut si le fichier composer.json existe à la
|
vaut 'composer' par défaut si le fichier composer.json existe à la
|
||||||
racine du projet. sinon vaut 'none' par défaut
|
racine du projet. sinon vaut 'none' par défaut
|
||||||
|
@ -447,10 +451,6 @@ function docker_set_env_args() {
|
||||||
[ -n "$PROFILE" -a -f ".build.$PROFILE.env" ] && source "./.build.$PROFILE.env"
|
[ -n "$PROFILE" -a -f ".build.$PROFILE.env" ] && source "./.build.$PROFILE.env"
|
||||||
[ -n "$PROFILE" -a -f "build.$PROFILE.env" ] && source "./build.$PROFILE.env"
|
[ -n "$PROFILE" -a -f "build.$PROFILE.env" ] && source "./build.$PROFILE.env"
|
||||||
}
|
}
|
||||||
function docker_set_run_args() {
|
|
||||||
replace_run_args+=(--env-file "$1")
|
|
||||||
source "$1"
|
|
||||||
}
|
|
||||||
function docker_check_name() {
|
function docker_check_name() {
|
||||||
[ -n "$NAME" ] || die "Vous devez définir NAME dans .build.env"
|
[ -n "$NAME" ] || die "Vous devez définir NAME dans .build.env"
|
||||||
|
|
||||||
|
@ -765,7 +765,9 @@ function build_update_apps() {
|
||||||
fi
|
fi
|
||||||
|
|
||||||
DEVEL_SRCDIR="${var}_DEVEL_SRCDIR"; DEVEL_SRCDIR="${!DEVEL_SRCDIR}"
|
DEVEL_SRCDIR="${var}_DEVEL_SRCDIR"; DEVEL_SRCDIR="${!DEVEL_SRCDIR}"
|
||||||
[ -n "$DEVEL_SRCDIR" ] || DEVEL_SRCDIR="$DEFAULT_DEVEL_SRCDIR/${URL##*/}"
|
if [ -z "$DEVEL_SRCDIR" -a -n "$URL" ]; then
|
||||||
|
DEVEL_SRCDIR="$DEFAULT_DEVEL_SRCDIR/${URL##*/}"
|
||||||
|
fi
|
||||||
|
|
||||||
DEST="${var}_DEST"; DEST="${!DEST}"
|
DEST="${var}_DEST"; DEST="${!DEST}"
|
||||||
[ -n "$DEST" ] || DEST="$app/b"
|
[ -n "$DEST" ] || DEST="$app/b"
|
||||||
|
@ -792,7 +794,7 @@ function build_update_apps() {
|
||||||
# calculer le type maintenant, on en a besoin pour le mode devel
|
# calculer le type maintenant, on en a besoin pour le mode devel
|
||||||
TYPE="${var}_TYPE"; TYPE="${!TYPE}"
|
TYPE="${var}_TYPE"; TYPE="${!TYPE}"
|
||||||
|
|
||||||
if [ -n "$BUILD_UPDATE_DEVEL" ]; then
|
if [ -n "$BUILD_UPDATE_DEVEL" -a -n "$DEVEL_SRCDIR" ]; then
|
||||||
mkdir -p "$DEST" || { eend; return 1; }
|
mkdir -p "$DEST" || { eend; return 1; }
|
||||||
DEST="$DEST/$NAME"
|
DEST="$DEST/$NAME"
|
||||||
|
|
||||||
|
@ -831,15 +833,27 @@ function build_update_apps() {
|
||||||
setx cwd=pwd
|
setx cwd=pwd
|
||||||
cd "$DEST"
|
cd "$DEST"
|
||||||
git fetch --all -p -f || { eend; return 1; }
|
git fetch --all -p -f || { eend; return 1; }
|
||||||
git reset --hard "$ORIGIN/$BRANCH" || { eend; return 1; }
|
if [ "${BRANCH#^}" != "$BRANCH" ]; then
|
||||||
|
git reset --hard "${BRANCH#^}" || { cd "$cwd"; eend; return 1; }
|
||||||
|
else
|
||||||
|
git reset --hard "$ORIGIN/$BRANCH" || { cd "$cwd"; eend; return 1; }
|
||||||
|
fi
|
||||||
cd "$cwd"
|
cd "$cwd"
|
||||||
else
|
else
|
||||||
# reliquat mode devel?
|
# reliquat mode devel?
|
||||||
[ -d "$DEST" ] && rm -rf "$DEST"
|
[ -d "$DEST" ] && rm -rf "$DEST"
|
||||||
# clonage initial
|
# clonage initial
|
||||||
estep "Clonage $URL:$BRANCH --> $DEST"
|
estep "Clonage $URL:$BRANCH --> $DEST"
|
||||||
|
if [ "${BRANCH#^}" != "$BRANCH" ]; then
|
||||||
|
git clone -o "$ORIGIN" "$URL" "$DEST" || { eend; return 1; }
|
||||||
|
setx cwd=pwd
|
||||||
|
cd "$DEST"
|
||||||
|
git reset --hard "${BRANCH#^}" || { cd "$cwd"; eend; return 1; }
|
||||||
|
cd "$cwd"
|
||||||
|
else
|
||||||
git clone -o "$ORIGIN" -b "$BRANCH" "$URL" "$DEST" || { eend; return 1; }
|
git clone -o "$ORIGIN" -b "$BRANCH" "$URL" "$DEST" || { eend; return 1; }
|
||||||
fi
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
if [ -z "$TYPE" ]; then
|
if [ -z "$TYPE" ]; then
|
||||||
# possible de détecter le type quand on a le projet
|
# possible de détecter le type quand on a le projet
|
||||||
|
@ -965,6 +979,27 @@ function build_update_apps() {
|
||||||
eend
|
eend
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function build_merge_env() {
|
||||||
|
# si les fichiers .env-all et/ou .env-machine-$MACHINE existent, où $MACHINE
|
||||||
|
# est la machine actuellement sélectionnée, alors les merger pour créer le
|
||||||
|
# fichier .env
|
||||||
|
# Si DOCKER_MACHINE n'est pas défini, prendre par défaut HOSTNAME
|
||||||
|
local machine="${DOCKER_MACHINE_NAME:-$HOSTNAME}"
|
||||||
|
local shared=.shared_env for_machine=".${machine}_env"
|
||||||
|
[ -f "$shared" -o -f "$for_machine" ] || return 0
|
||||||
|
|
||||||
|
echo >.env "## fichier auto-généré. ne pas modifier ##"
|
||||||
|
|
||||||
|
if [ -f "$shared" ]; then
|
||||||
|
echo "## $shared ##" >>.env
|
||||||
|
cat "$shared" >>.env
|
||||||
|
fi
|
||||||
|
if [ -f "$for_machine" ]; then
|
||||||
|
echo "## $for_machine ##" >>.env
|
||||||
|
cat "$for_machine" >>.env
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
function initialize_build_env() {
|
function initialize_build_env() {
|
||||||
CTXDIR=.
|
CTXDIR=.
|
||||||
NAME=
|
NAME=
|
||||||
|
@ -993,6 +1028,7 @@ function default_compose_build() {
|
||||||
"${replace_env_args[@]}" "${env_args[@]}" \
|
"${replace_env_args[@]}" "${env_args[@]}" \
|
||||||
build \
|
build \
|
||||||
${NO_CACHE:+--no-cache} \
|
${NO_CACHE:+--no-cache} \
|
||||||
|
${PULL:+--pull} \
|
||||||
"${replace_build_args[@]}" "${build_args[@]}" \
|
"${replace_build_args[@]}" "${build_args[@]}" \
|
||||||
"$@"
|
"$@"
|
||||||
}
|
}
|
||||||
|
@ -1003,6 +1039,7 @@ function default_docker_build() {
|
||||||
done
|
done
|
||||||
${FAKE:+qvals} "$DOCKER" build \
|
${FAKE:+qvals} "$DOCKER" build \
|
||||||
${NO_CACHE:+--no-cache} \
|
${NO_CACHE:+--no-cache} \
|
||||||
|
${PULL:+--pull} \
|
||||||
"${replace_env_args[@]}" "${env_args[@]}" \
|
"${replace_env_args[@]}" "${env_args[@]}" \
|
||||||
"${replace_build_args[@]}" "${build_args[@]}" \
|
"${replace_build_args[@]}" "${build_args[@]}" \
|
||||||
"$@" "$CTXDIR"
|
"$@" "$CTXDIR"
|
||||||
|
@ -1036,6 +1073,7 @@ function auto_build() {
|
||||||
compose_set_env_args
|
compose_set_env_args
|
||||||
update_build_env "${bargs[@]}"
|
update_build_env "${bargs[@]}"
|
||||||
build_update_apps || return 1
|
build_update_apps || return 1
|
||||||
|
build_merge_env
|
||||||
compose_build "$@"
|
compose_build "$@"
|
||||||
elif [ -f Dockerfile ]; then
|
elif [ -f Dockerfile ]; then
|
||||||
docker_parse_env_args
|
docker_parse_env_args
|
||||||
|
@ -1050,6 +1088,7 @@ function auto_build() {
|
||||||
done
|
done
|
||||||
${FAKE:+qvals} "$DOCKER" build \
|
${FAKE:+qvals} "$DOCKER" build \
|
||||||
${NO_CACHE:+--no-cache} \
|
${NO_CACHE:+--no-cache} \
|
||||||
|
${PULL:+--pull} \
|
||||||
"${replace_build_args[@]}" "$@"
|
"${replace_build_args[@]}" "$@"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
@ -1939,6 +1978,7 @@ FAKE=
|
||||||
VARS=()
|
VARS=()
|
||||||
FORCE=
|
FORCE=
|
||||||
NO_CACHE=
|
NO_CACHE=
|
||||||
|
PULL=
|
||||||
HOST=
|
HOST=
|
||||||
WITH_REGISTRY_AUTH=1
|
WITH_REGISTRY_AUTH=1
|
||||||
update_apps_mode=ub
|
update_apps_mode=ub
|
||||||
|
@ -1960,6 +2000,7 @@ args=(
|
||||||
-e:,--build-arg:,--env: VARS
|
-e:,--build-arg:,--env: VARS
|
||||||
-f,--force FORCE=1
|
-f,--force FORCE=1
|
||||||
-j,--no-cache NO_CACHE=1
|
-j,--no-cache NO_CACHE=1
|
||||||
|
-U,--pull PULL=1
|
||||||
-h:,--host: HOST=
|
-h:,--host: HOST=
|
||||||
-g,--ug,--no-update-apps update_apps_mode=b
|
-g,--ug,--no-update-apps update_apps_mode=b
|
||||||
-u,--uu,--update-apps-only update_apps_mode=u
|
-u,--uu,--update-apps-only update_apps_mode=u
|
||||||
|
|
|
@ -7,9 +7,12 @@ if [ -n "$UTOOLS_DOCKER_ALIASES" ]; then
|
||||||
# alias dm=docker-machine
|
# alias dm=docker-machine
|
||||||
#fi
|
#fi
|
||||||
function dm() {
|
function dm() {
|
||||||
if [ "$1" == use -a -n "$2" -a -f ~/etc/default/dk ]; then
|
case "$1" in
|
||||||
|
use|ssh)
|
||||||
|
if [ -n "$2" -a -f ~/etc/default/dk ]; then
|
||||||
# chercher les aliases éventuels
|
# chercher les aliases éventuels
|
||||||
local machine="$2"; shift; shift
|
local cmd="$1"; shift
|
||||||
|
local machine="$1"; shift
|
||||||
machine="$(
|
machine="$(
|
||||||
CLUSTERDIRS=()
|
CLUSTERDIRS=()
|
||||||
DM_ALIASES=()
|
DM_ALIASES=()
|
||||||
|
@ -34,8 +37,10 @@ if [ -n "$UTOOLS_DOCKER_ALIASES" ]; then
|
||||||
done
|
done
|
||||||
echo "$machine"
|
echo "$machine"
|
||||||
)"
|
)"
|
||||||
set -- use "$machine" "$@"
|
set -- "$cmd" "$machine" "$@"
|
||||||
fi
|
fi
|
||||||
|
;;
|
||||||
|
esac
|
||||||
if [ "$DOCKER_MACHINE_WRAPPED" == true ]; then
|
if [ "$DOCKER_MACHINE_WRAPPED" == true ]; then
|
||||||
__docker_machine_wrapper "$@"
|
__docker_machine_wrapper "$@"
|
||||||
else
|
else
|
||||||
|
|
|
@ -86,7 +86,13 @@ function generate_sql() {
|
||||||
|
|
||||||
check_overwrite "$1" || return
|
check_overwrite "$1" || return
|
||||||
estep "$(ppath "$file")"
|
estep "$(ppath "$file")"
|
||||||
echo >"$file" "-- -*- coding: $encoding ${mode:+mode: $mode }-*- vim:sw=4:sts=4:et:ai:si:sta:fenc=$encoding"
|
echo >"$file" "\
|
||||||
|
-- -*- coding: $encoding ${mode:+mode: $mode }-*- vim:sw=4:sts=4:et:ai:si:sta:fenc=$encoding
|
||||||
|
-- @database xxx
|
||||||
|
|
||||||
|
start transaction;
|
||||||
|
|
||||||
|
commit;"
|
||||||
[ -n "$2" ] && array_add "$2" "$file"
|
[ -n "$2" ] && array_add "$2" "$file"
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
|
|
177
lib/ulib/java
177
lib/ulib/java
|
@ -8,24 +8,27 @@ urequire base sysinfos
|
||||||
|
|
||||||
################################################################################
|
################################################################################
|
||||||
# versions installées sur le système
|
# versions installées sur le système
|
||||||
JAVA_VMS13=(); JAVA_HOMES13=()
|
JAVA_VMS1_3=(); JAVA_HOMES1_3=()
|
||||||
JAVA_VMS14=(); JAVA_HOMES14=()
|
JAVA_VMS1_4=(); JAVA_HOMES1_4=()
|
||||||
JAVA_VMS5=(); JAVA_HOMES5=()
|
JAVA_VMS5=(); JAVA_HOMES5=()
|
||||||
JAVA_VMS6=(); JAVA_HOMES6=()
|
JAVA_VMS6=(); JAVA_HOMES6=()
|
||||||
JAVA_VMS7=(); JAVA_HOMES7=()
|
JAVA_VMS7=(); JAVA_HOMES7=()
|
||||||
JAVA_VMS8=(); JAVA_HOMES8=()
|
JAVA_VMS8=(); JAVA_HOMES8=()
|
||||||
|
JAVA_VMS11=(); JAVA_HOMES11=()
|
||||||
# versions locales 32 bits
|
# versions locales 32 bits
|
||||||
JAVA32_VMS13=(); JAVA32_HOMES13=()
|
JAVA32_VMS1_3=(); JAVA32_HOMES1_3=()
|
||||||
JAVA32_VMS14=(); JAVA32_HOMES14=()
|
JAVA32_VMS1_4=(); JAVA32_HOMES1_4=()
|
||||||
JAVA32_VMS5=(); JAVA32_HOMES5=()
|
JAVA32_VMS5=(); JAVA32_HOMES5=()
|
||||||
JAVA32_VMS6=(); JAVA32_HOMES6=()
|
JAVA32_VMS6=(); JAVA32_HOMES6=()
|
||||||
JAVA32_VMS7=(); JAVA32_HOMES7=()
|
JAVA32_VMS7=(); JAVA32_HOMES7=()
|
||||||
JAVA32_VMS8=(); JAVA32_HOMES8=()
|
JAVA32_VMS8=(); JAVA32_HOMES8=()
|
||||||
|
JAVA32_VMS11=(); JAVA32_HOMES11=()
|
||||||
# versions locales 64 bits
|
# versions locales 64 bits
|
||||||
JAVA64_VMS5=(); JAVA64_HOMES5=()
|
JAVA64_VMS5=(); JAVA64_HOMES5=()
|
||||||
JAVA64_VMS6=(); JAVA64_HOMES6=()
|
JAVA64_VMS6=(); JAVA64_HOMES6=()
|
||||||
JAVA64_VMS7=(); JAVA64_HOMES7=()
|
JAVA64_VMS7=(); JAVA64_HOMES7=()
|
||||||
JAVA64_VMS8=(); JAVA64_HOMES8=()
|
JAVA64_VMS8=(); JAVA64_HOMES8=()
|
||||||
|
JAVA64_VMS11=(); JAVA64_HOMES11=()
|
||||||
# version sélectionnée
|
# version sélectionnée
|
||||||
SELECTED_JAVA_VM=; SELECTED_JAVA_HOME=
|
SELECTED_JAVA_VM=; SELECTED_JAVA_HOME=
|
||||||
SELECTED_JAVA=; SELECTED_JAVAC=
|
SELECTED_JAVA=; SELECTED_JAVAC=
|
||||||
|
@ -37,7 +40,7 @@ function __java_add() {
|
||||||
|
|
||||||
function __java_compute_vms() {
|
function __java_compute_vms() {
|
||||||
# calculer la liste de VMs disponibles et initialiser les tableaux
|
# calculer la liste de VMs disponibles et initialiser les tableaux
|
||||||
# JAVA{,32,64}_{VMS,HOMES}{13,14,5,6,7,8}
|
# JAVA{,32,64}_{VMS,HOMES}{1_3,1_4,5,6,7,8}
|
||||||
[ -z "$__COMPUTED_JAVA_VMS" ] || return
|
[ -z "$__COMPUTED_JAVA_VMS" ] || return
|
||||||
|
|
||||||
local vms vm v
|
local vms vm v
|
||||||
|
@ -48,8 +51,8 @@ function __java_compute_vms() {
|
||||||
for vm in "${vms[@]}"; do
|
for vm in "${vms[@]}"; do
|
||||||
v="${vm#sun-jdk-}"
|
v="${vm#sun-jdk-}"
|
||||||
if [ "$v" == 1.4 ]; then
|
if [ "$v" == 1.4 ]; then
|
||||||
__java_add VMS14 "$vm" 32
|
__java_add VMS1_4 "$vm" 32
|
||||||
__java_add HOMES14 "$HOME/opt/jvm32/$vm" 32
|
__java_add HOMES1_4 "$HOME/opt/jvm32/$vm" 32
|
||||||
elif [ "$v" == 1.5 ]; then
|
elif [ "$v" == 1.5 ]; then
|
||||||
__java_add VMS5 "$vm" 32
|
__java_add VMS5 "$vm" 32
|
||||||
__java_add HOMES5 "$HOME/opt/jvm32/$vm" 32
|
__java_add HOMES5 "$HOME/opt/jvm32/$vm" 32
|
||||||
|
@ -66,8 +69,8 @@ function __java_compute_vms() {
|
||||||
done
|
done
|
||||||
array_from_lines vms "$(list_dirs "$HOME/opt/jvm32" "j2sdk1.4.2*" | LANG=C sort -r)"
|
array_from_lines vms "$(list_dirs "$HOME/opt/jvm32" "j2sdk1.4.2*" | LANG=C sort -r)"
|
||||||
for vm in "${vms[@]}"; do
|
for vm in "${vms[@]}"; do
|
||||||
__java_add VMS14 "$vm" 32
|
__java_add VMS1_4 "$vm" 32
|
||||||
__java_add HOMES14 "$HOME/opt/jvm32/$vm" 32
|
__java_add HOMES1_4 "$HOME/opt/jvm32/$vm" 32
|
||||||
done
|
done
|
||||||
array_from_lines vms "$(list_dirs "$HOME/opt/jvm32" "jdk1.5.*" | LANG=C sort -r)"
|
array_from_lines vms "$(list_dirs "$HOME/opt/jvm32" "jdk1.5.*" | LANG=C sort -r)"
|
||||||
for vm in "${vms[@]}"; do
|
for vm in "${vms[@]}"; do
|
||||||
|
@ -106,6 +109,14 @@ function __java_compute_vms() {
|
||||||
__java_add HOMES8 "$HOME/opt/jvm64/$vm" 64
|
__java_add HOMES8 "$HOME/opt/jvm64/$vm" 64
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
array_from_lines vms "$(list_dirs "$HOME/opt/jvm64" jdk11)"
|
||||||
|
for vm in "${vms[@]}"; do
|
||||||
|
v="${vm#jdk}"
|
||||||
|
if [ "$v" == 11 ]; then
|
||||||
|
__java_add VMS11 "$vm" 64
|
||||||
|
__java_add HOMES11 "$HOME/opt/jvm64/$vm" 64
|
||||||
|
fi
|
||||||
|
done
|
||||||
array_from_lines vms "$(list_dirs "$HOME/opt/jvm64" "jdk1.5.*" | LANG=C sort -r)"
|
array_from_lines vms "$(list_dirs "$HOME/opt/jvm64" "jdk1.5.*" | LANG=C sort -r)"
|
||||||
for vm in "${vms[@]}"; do
|
for vm in "${vms[@]}"; do
|
||||||
__java_add VMS5 "$vm" 64
|
__java_add VMS5 "$vm" 64
|
||||||
|
@ -126,13 +137,18 @@ function __java_compute_vms() {
|
||||||
__java_add VMS8 "$vm" 64
|
__java_add VMS8 "$vm" 64
|
||||||
__java_add HOMES8 "$HOME/opt/jvm64/$vm" 64
|
__java_add HOMES8 "$HOME/opt/jvm64/$vm" 64
|
||||||
done
|
done
|
||||||
|
array_from_lines vms "$(list_dirs "$HOME/opt/jvm64" "jdk-11.*" | LANG=C sort -r)"
|
||||||
|
for vm in "${vms[@]}"; do
|
||||||
|
__java_add VMS11 "$vm" 64
|
||||||
|
__java_add HOMES11 "$HOME/opt/jvm64/$vm" 64
|
||||||
|
done
|
||||||
# Puis chercher dans les JVMs installées manuellement dans ~/opt
|
# Puis chercher dans les JVMs installées manuellement dans ~/opt
|
||||||
array_from_lines vms "$(list_dirs "$HOME/opt" "sun-jdk-*")"
|
array_from_lines vms "$(list_dirs "$HOME/opt" "sun-jdk-*")"
|
||||||
for vm in "${vms[@]}"; do
|
for vm in "${vms[@]}"; do
|
||||||
v="${vm#sun-jdk-}"
|
v="${vm#sun-jdk-}"
|
||||||
if [ "$v" == 1.4 ]; then
|
if [ "$v" == 1.4 ]; then
|
||||||
__java_add VMS14 "$vm"
|
__java_add VMS1_4 "$vm"
|
||||||
__java_add HOMES14 "$HOME/opt/$vm"
|
__java_add HOMES1_4 "$HOME/opt/$vm"
|
||||||
elif [ "$v" == 1.5 ]; then
|
elif [ "$v" == 1.5 ]; then
|
||||||
__java_add VMS5 "$vm"
|
__java_add VMS5 "$vm"
|
||||||
__java_add HOMES5 "$HOME/opt/$vm"
|
__java_add HOMES5 "$HOME/opt/$vm"
|
||||||
|
@ -147,10 +163,18 @@ function __java_compute_vms() {
|
||||||
__java_add HOMES8 "$HOME/opt/$vm"
|
__java_add HOMES8 "$HOME/opt/$vm"
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
array_from_lines vms "$(list_dirs "$HOME/opt" jdk11)"
|
||||||
|
for vm in "${vms[@]}"; do
|
||||||
|
v="${vm#jdk}"
|
||||||
|
if [ "$v" == 11 ]; then
|
||||||
|
__java_add VMS11 "$vm"
|
||||||
|
__java_add HOMES11 "$HOME/opt/$vm"
|
||||||
|
fi
|
||||||
|
done
|
||||||
array_from_lines vms "$(list_dirs "$HOME/opt" "j2sdk1.4.2*" | LANG=C sort -r)"
|
array_from_lines vms "$(list_dirs "$HOME/opt" "j2sdk1.4.2*" | LANG=C sort -r)"
|
||||||
for vm in "${vms[@]}"; do
|
for vm in "${vms[@]}"; do
|
||||||
__java_add VMS14 "$vm"
|
__java_add VMS1_4 "$vm"
|
||||||
__java_add HOMES14 "$HOME/opt/$vm"
|
__java_add HOMES1_4 "$HOME/opt/$vm"
|
||||||
done
|
done
|
||||||
array_from_lines vms "$(list_dirs "$HOME/opt" "jdk1.5.*" | LANG=C sort -r)"
|
array_from_lines vms "$(list_dirs "$HOME/opt" "jdk1.5.*" | LANG=C sort -r)"
|
||||||
for vm in "${vms[@]}"; do
|
for vm in "${vms[@]}"; do
|
||||||
|
@ -172,13 +196,18 @@ function __java_compute_vms() {
|
||||||
__java_add VMS8 "$vm"
|
__java_add VMS8 "$vm"
|
||||||
__java_add HOMES8 "$HOME/opt/$vm"
|
__java_add HOMES8 "$HOME/opt/$vm"
|
||||||
done
|
done
|
||||||
|
array_from_lines vms "$(list_dirs "$HOME/opt" "jdk-11.*" | LANG=C sort -r)"
|
||||||
|
for vm in "${vms[@]}"; do
|
||||||
|
__java_add VMS11 "$vm"
|
||||||
|
__java_add HOMES11 "$HOME/opt/$vm"
|
||||||
|
done
|
||||||
# Puis chercher dans les JVMs installées manuellement dans /opt
|
# Puis chercher dans les JVMs installées manuellement dans /opt
|
||||||
array_from_lines vms "$(list_dirs "/opt" "sun-jdk-*")"
|
array_from_lines vms "$(list_dirs "/opt" "sun-jdk-*")"
|
||||||
for vm in "${vms[@]}"; do
|
for vm in "${vms[@]}"; do
|
||||||
v="${vm#sun-jdk-}"
|
v="${vm#sun-jdk-}"
|
||||||
if [ "$v" == 1.4 ]; then
|
if [ "$v" == 1.4 ]; then
|
||||||
__java_add VMS14 "$vm"
|
__java_add VMS1_4 "$vm"
|
||||||
__java_add HOMES14 "/opt/$vm"
|
__java_add HOMES1_4 "/opt/$vm"
|
||||||
elif [ "$v" == 1.5 ]; then
|
elif [ "$v" == 1.5 ]; then
|
||||||
__java_add VMS5 "$vm"
|
__java_add VMS5 "$vm"
|
||||||
__java_add HOMES5 "/opt/$vm"
|
__java_add HOMES5 "/opt/$vm"
|
||||||
|
@ -193,10 +222,18 @@ function __java_compute_vms() {
|
||||||
__java_add HOMES8 "/opt/$vm"
|
__java_add HOMES8 "/opt/$vm"
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
array_from_lines vms "$(list_dirs "/opt" jdk11)"
|
||||||
|
for vm in "${vms[@]}"; do
|
||||||
|
v="${vm#jdk}"
|
||||||
|
if [ "$v" == 11 ]; then
|
||||||
|
__java_add VMS11 "$vm"
|
||||||
|
__java_add HOMES11 "/opt/$vm"
|
||||||
|
fi
|
||||||
|
done
|
||||||
array_from_lines vms "$(list_dirs "/opt" "j2sdk1.4.2*" | LANG=C sort -r)"
|
array_from_lines vms "$(list_dirs "/opt" "j2sdk1.4.2*" | LANG=C sort -r)"
|
||||||
for vm in "${vms[@]}"; do
|
for vm in "${vms[@]}"; do
|
||||||
__java_add VMS14 "$vm"
|
__java_add VMS1_4 "$vm"
|
||||||
__java_add HOMES14 "/opt/$vm"
|
__java_add HOMES1_4 "/opt/$vm"
|
||||||
done
|
done
|
||||||
array_from_lines vms "$(list_dirs "/opt" "jdk1.5.*" | LANG=C sort -r)"
|
array_from_lines vms "$(list_dirs "/opt" "jdk1.5.*" | LANG=C sort -r)"
|
||||||
for vm in "${vms[@]}"; do
|
for vm in "${vms[@]}"; do
|
||||||
|
@ -218,6 +255,11 @@ function __java_compute_vms() {
|
||||||
__java_add VMS8 "$vm"
|
__java_add VMS8 "$vm"
|
||||||
__java_add HOMES8 "/opt/$vm"
|
__java_add HOMES8 "/opt/$vm"
|
||||||
done
|
done
|
||||||
|
array_from_lines vms "$(list_dirs "/opt" "jdk-11.*" | LANG=C sort -r)"
|
||||||
|
for vm in "${vms[@]}"; do
|
||||||
|
__java_add VMS11 "$vm"
|
||||||
|
__java_add HOMES11 "/opt/$vm"
|
||||||
|
done
|
||||||
# Puis chercher dans les JVMs installées par le système dans
|
# Puis chercher dans les JVMs installées par le système dans
|
||||||
# /usr/lib/jvm
|
# /usr/lib/jvm
|
||||||
if check_sysinfos -d gentoo; then
|
if check_sysinfos -d gentoo; then
|
||||||
|
@ -226,8 +268,8 @@ function __java_compute_vms() {
|
||||||
for vm in "${vms[@]}"; do
|
for vm in "${vms[@]}"; do
|
||||||
v="${vm#sun-jdk-}"
|
v="${vm#sun-jdk-}"
|
||||||
if [ "$v" == 1.4 ]; then
|
if [ "$v" == 1.4 ]; then
|
||||||
__java_add VMS14 "$vm"
|
__java_add VMS1_4 "$vm"
|
||||||
__java_add HOMES14 "/usr/lib/jvm/$vm"
|
__java_add HOMES1_4 "/usr/lib/jvm/$vm"
|
||||||
elif [ "$v" == 1.5 ]; then
|
elif [ "$v" == 1.5 ]; then
|
||||||
__java_add VMS5 "$vm"
|
__java_add VMS5 "$vm"
|
||||||
__java_add HOMES5 "/usr/lib/jvm/$vm"
|
__java_add HOMES5 "/usr/lib/jvm/$vm"
|
||||||
|
@ -246,12 +288,15 @@ function __java_compute_vms() {
|
||||||
# sur debian
|
# sur debian
|
||||||
array_from_lines vms "$(list_dirs /usr/lib/jvm)"
|
array_from_lines vms "$(list_dirs /usr/lib/jvm)"
|
||||||
for vm in "${vms[@]}"; do
|
for vm in "${vms[@]}"; do
|
||||||
v="${vm%-sun}"
|
v="$vm"
|
||||||
|
v="${v%-sun}"
|
||||||
|
v="${v%-amd64}"
|
||||||
|
v="${v%-openjdk}"
|
||||||
v="${v#java-}"
|
v="${v#java-}"
|
||||||
v="${v#j2sdk}"
|
v="${v#j2sdk}"
|
||||||
if [ "$v" == 1.4 ]; then
|
if [ "$v" == 1.4 ]; then
|
||||||
__java_add VMS14 "$vm"
|
__java_add VMS1_4 "$vm"
|
||||||
__java_add HOMES14 "/usr/lib/jvm/$vm"
|
__java_add HOMES1_4 "/usr/lib/jvm/$vm"
|
||||||
elif [ "$v" == 1.5 -o "$v" == 1.5.0 ]; then
|
elif [ "$v" == 1.5 -o "$v" == 1.5.0 ]; then
|
||||||
__java_add VMS5 "$vm"
|
__java_add VMS5 "$vm"
|
||||||
__java_add HOMES5 "/usr/lib/jvm/$vm"
|
__java_add HOMES5 "/usr/lib/jvm/$vm"
|
||||||
|
@ -264,11 +309,14 @@ function __java_compute_vms() {
|
||||||
elif [ "$v" == 8 -o "$v" == 1.8 ]; then
|
elif [ "$v" == 8 -o "$v" == 1.8 ]; then
|
||||||
__java_add VMS8 "$vm"
|
__java_add VMS8 "$vm"
|
||||||
__java_add HOMES8 "/usr/lib/jvm/$vm"
|
__java_add HOMES8 "/usr/lib/jvm/$vm"
|
||||||
|
elif [ "$v" == 11 ]; then
|
||||||
|
__java_add VMS11 "$vm"
|
||||||
|
__java_add HOMES11 "/usr/lib/jvm/$vm"
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
if [ -d /usr/lib/j2sdk1.4-sun ]; then
|
if [ -d /usr/lib/j2sdk1.4-sun ]; then
|
||||||
__java_add VMS14 j2sdk1.4-sun
|
__java_add VMS1_4 j2sdk1.4-sun
|
||||||
__java_add HOMES14 /usr/lib/j2sdk1.4-sun
|
__java_add HOMES1_4 /usr/lib/j2sdk1.4-sun
|
||||||
fi
|
fi
|
||||||
elif check_sysinfos -d redhatlike; then
|
elif check_sysinfos -d redhatlike; then
|
||||||
# XXX sur redhat
|
# XXX sur redhat
|
||||||
|
@ -276,12 +324,12 @@ function __java_compute_vms() {
|
||||||
fi
|
fi
|
||||||
elif check_sysinfos -s macosx; then
|
elif check_sysinfos -s macosx; then
|
||||||
if [ -d "/System/Library/Frameworks/JavaVM.framework/Versions/1.3" ]; then
|
if [ -d "/System/Library/Frameworks/JavaVM.framework/Versions/1.3" ]; then
|
||||||
__java_add VMS13 "1.3"
|
__java_add VMS1_3 "1.3"
|
||||||
__java_add HOMES13 "/System/Library/Frameworks/JavaVM.framework/Versions/1.3/Home"
|
__java_add HOMES1_3 "/System/Library/Frameworks/JavaVM.framework/Versions/1.3/Home"
|
||||||
fi
|
fi
|
||||||
if [ -d "/System/Library/Frameworks/JavaVM.framework/Versions/1.4" ]; then
|
if [ -d "/System/Library/Frameworks/JavaVM.framework/Versions/1.4" ]; then
|
||||||
__java_add VMS14 "1.4"
|
__java_add VMS1_4 "1.4"
|
||||||
__java_add HOMES14 "/System/Library/Frameworks/JavaVM.framework/Versions/1.4/Home"
|
__java_add HOMES1_4 "/System/Library/Frameworks/JavaVM.framework/Versions/1.4/Home"
|
||||||
fi
|
fi
|
||||||
if [ -d "/System/Library/Frameworks/JavaVM.framework/Versions/1.5" ]; then
|
if [ -d "/System/Library/Frameworks/JavaVM.framework/Versions/1.5" ]; then
|
||||||
__java_add VMS5 "1.5"
|
__java_add VMS5 "1.5"
|
||||||
|
@ -305,7 +353,7 @@ function __java_compute_vms() {
|
||||||
|
|
||||||
function __java_dump_vms() {
|
function __java_dump_vms() {
|
||||||
local v b i vms homes
|
local v b i vms homes
|
||||||
for v in 13 14 5 6 7 8; do
|
for v in 1_3 1_4 5 6 7 8 11; do
|
||||||
for b in "" 32 64; do
|
for b in "" 32 64; do
|
||||||
vms="JAVA${b}_VMS${v}[@]"; vms=("${!vms}")
|
vms="JAVA${b}_VMS${v}[@]"; vms=("${!vms}")
|
||||||
homes="JAVA${b}_HOMES${v}[@]"; homes=("${!homes}")
|
homes="JAVA${b}_HOMES${v}[@]"; homes=("${!homes}")
|
||||||
|
@ -336,7 +384,7 @@ function __java_select_vms() {
|
||||||
}
|
}
|
||||||
|
|
||||||
function __java_select() {
|
function __java_select() {
|
||||||
# Sélectionner la version de java $1 (qui peut être 13, 14, 5, 6, 7 ou 8)
|
# Sélectionner la version de java $1 (qui peut être 1_3, 1_4, 5, 6, 7, 8 ou 11)
|
||||||
# Si $2 est défini, il peut s'agit de 32 ou 64 selon que l'on requière la
|
# Si $2 est défini, il peut s'agit de 32 ou 64 selon que l'on requière la
|
||||||
# version 32bits ou 64 bits. Sinon, la version sélectionnée peut être 32bits
|
# version 32bits ou 64 bits. Sinon, la version sélectionnée peut être 32bits
|
||||||
# ou 64bits selon ce qui est disponible.
|
# ou 64bits selon ce qui est disponible.
|
||||||
|
@ -380,8 +428,8 @@ function __java_select() {
|
||||||
|
|
||||||
function __java_select_default() {
|
function __java_select_default() {
|
||||||
# Sélectionner la version de java par défaut. Si JAVA_HOME est défini,
|
# Sélectionner la version de java par défaut. Si JAVA_HOME est défini,
|
||||||
# prendre cette valeur. Sinon, essayer dans l'ordre 5, 6, 7, 8, puis 14
|
# prendre cette valeur. Sinon, essayer dans l'ordre 5, 6, 7, 8, 11 puis 1_4
|
||||||
# la version 13 n'est jamais sélectionnée automatiquement
|
# la version 1_3 n'est jamais sélectionnée automatiquement
|
||||||
if [ -n "$JAVA_HOME" ]; then
|
if [ -n "$JAVA_HOME" ]; then
|
||||||
export JAVA_HOME # s'assurer que cette variable est exportée
|
export JAVA_HOME # s'assurer que cette variable est exportée
|
||||||
export JAVA="$JAVA_HOME/bin/java"
|
export JAVA="$JAVA_HOME/bin/java"
|
||||||
|
@ -392,7 +440,7 @@ function __java_select_default() {
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
local vm
|
local vm
|
||||||
for vm in 5 6 7 8 14; do
|
for vm in 5 6 7 8 11 1_4; do
|
||||||
__java_select "$vm" && return 0
|
__java_select "$vm" && return 0
|
||||||
done
|
done
|
||||||
return 1
|
return 1
|
||||||
|
@ -400,39 +448,44 @@ function __java_select_default() {
|
||||||
|
|
||||||
function select_java() {
|
function select_java() {
|
||||||
# sélectionner la version *minimum* de java correspondant à $1
|
# sélectionner la version *minimum* de java correspondant à $1
|
||||||
# $1== 1.3|1.3+|1.4|1.4+|1.5|1.5+|1.6|1.6+|1.7|1.7+|1.8|1.8+
|
# $1 == 1.3|1.3+|1.4|1.4+|1.5|1.5+|1.6|1.6+|1.7|1.7+|1.8|1.8+|11|11+
|
||||||
# Si $2 est défini, il peut s'agit de 32 ou 64 selon que l'on requière la
|
# Si $2 est défini, il peut s'agit de 32 ou 64 selon que l'on requière la
|
||||||
# version 32bits ou 64 bits
|
# version 32bits ou 64 bits
|
||||||
local v vms homes
|
local v vms homes
|
||||||
|
|
||||||
case "$1" in
|
case "$1" in
|
||||||
1.3|1.3+|13|13+)
|
1.3|1.3+)
|
||||||
for v in 13 14 5 6 7 8; do
|
for v in 1_3 1_4 5 6 7 8 11; do
|
||||||
__java_select "$v" "$2" && return 0
|
__java_select "$v" "$2" && return 0
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
1.4|1.4+|14|14+)
|
1.4|1.4+)
|
||||||
for v in 14 5 6 7 8; do
|
for v in 1_4 5 6 7 8 11; do
|
||||||
__java_select "$v" "$2" && return 0
|
__java_select "$v" "$2" && return 0
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
1.5|1.5+|5|5+)
|
1.5|1.5+|5|5+)
|
||||||
for v in 5 6 7 8; do
|
for v in 5 6 7 8 11; do
|
||||||
__java_select "$v" "$2" && return 0
|
__java_select "$v" "$2" && return 0
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
1.6|1.6+|6|6+)
|
1.6|1.6+|6|6+)
|
||||||
for v in 6 7 8; do
|
for v in 6 7 8 11; do
|
||||||
__java_select "$v" "$2" && return 0
|
__java_select "$v" "$2" && return 0
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
1.7|1.7+|7|7+)
|
1.7|1.7+|7|7+)
|
||||||
for v in 7 8; do
|
for v in 7 8 11; do
|
||||||
__java_select "$v" "$2" && return 0
|
__java_select "$v" "$2" && return 0
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
1.8|1.8+|8|8+)
|
1.8|1.8+|8|8+)
|
||||||
for v in 8; do
|
for v in 8 11; do
|
||||||
|
__java_select "$v" "$2" && return 0
|
||||||
|
done
|
||||||
|
;;
|
||||||
|
11|11+)
|
||||||
|
for v in 11; do
|
||||||
__java_select "$v" "$2" && return 0
|
__java_select "$v" "$2" && return 0
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
|
@ -442,26 +495,26 @@ function select_java() {
|
||||||
|
|
||||||
function select_java_exact() {
|
function select_java_exact() {
|
||||||
# sélectionner la version *exacte* de java correspondant à $1
|
# sélectionner la version *exacte* de java correspondant à $1
|
||||||
# $1== 1.3|1.4|1.5|1.6|1.7|1.8 pour une correspondance exacte
|
# $1 == 1.3|1.4|1.5|1.6|1.7|1.8|11 pour une correspondance exacte
|
||||||
# $1== 1.3+|1.4+|1.5+|1.6+|1.7+|1.8+ pour une version minimum
|
# $1 == 1.3+|1.4+|1.5+|1.6+|1.7+|1.8+|11+ pour une version minimum
|
||||||
# Si $2 est défini, il peut s'agit de 32 ou 64 selon que l'on requière la
|
# Si $2 est défini, il peut s'agit de 32 ou 64 selon que l'on requière la
|
||||||
# version 32bits ou 64 bits
|
# version 32bits ou 64 bits
|
||||||
local v vms homes
|
local v vms homes
|
||||||
|
|
||||||
case "$1" in
|
case "$1" in
|
||||||
1.3|13)
|
1.3)
|
||||||
__java_select 13 && return 0
|
__java_select 1_3 && return 0
|
||||||
;;
|
;;
|
||||||
1.3+|13+)
|
1.3+)
|
||||||
for v in 13 14 5 6 7 8; do
|
for v in 1_3 1_4 5 6 7 8 11; do
|
||||||
__java_select "$v" "$2" && return 0
|
__java_select "$v" "$2" && return 0
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
1.4|14)
|
1.4)
|
||||||
__java_select 14 && return 0
|
__java_select 1_4 && return 0
|
||||||
;;
|
;;
|
||||||
1.4+|14+)
|
1.4+)
|
||||||
for v in 14 5 6 7 8; do
|
for v in 1_4 5 6 7 8 11; do
|
||||||
__java_select "$v" "$2" && return 0
|
__java_select "$v" "$2" && return 0
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
|
@ -469,7 +522,7 @@ function select_java_exact() {
|
||||||
__java_select 5 "$2" && return 0
|
__java_select 5 "$2" && return 0
|
||||||
;;
|
;;
|
||||||
1.5+|5+)
|
1.5+|5+)
|
||||||
for v in 5 6 7 8; do
|
for v in 5 6 7 8 11; do
|
||||||
__java_select "$v" "$2" && return 0
|
__java_select "$v" "$2" && return 0
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
|
@ -477,7 +530,7 @@ function select_java_exact() {
|
||||||
__java_select 6 "$2" && return 0
|
__java_select 6 "$2" && return 0
|
||||||
;;
|
;;
|
||||||
1.6+|6+)
|
1.6+|6+)
|
||||||
for v in 6 7 8; do
|
for v in 6 7 8 11; do
|
||||||
__java_select "$v" "$2" && return 0
|
__java_select "$v" "$2" && return 0
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
|
@ -485,7 +538,7 @@ function select_java_exact() {
|
||||||
__java_select 7 "$2" && return 0
|
__java_select 7 "$2" && return 0
|
||||||
;;
|
;;
|
||||||
1.7+|7+)
|
1.7+|7+)
|
||||||
for v in 7 8; do
|
for v in 7 8 11; do
|
||||||
__java_select "$v" "$2" && return 0
|
__java_select "$v" "$2" && return 0
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
|
@ -493,7 +546,15 @@ function select_java_exact() {
|
||||||
__java_select 8 "$2" && return 0
|
__java_select 8 "$2" && return 0
|
||||||
;;
|
;;
|
||||||
1.8+|8+)
|
1.8+|8+)
|
||||||
for v in 8; do
|
for v in 8 11; do
|
||||||
|
__java_select "$v" "$2" && return 0
|
||||||
|
done
|
||||||
|
;;
|
||||||
|
11)
|
||||||
|
__java_select 11 "$2" && return 0
|
||||||
|
;;
|
||||||
|
11+)
|
||||||
|
for v in 11; do
|
||||||
__java_select "$v" "$2" && return 0
|
__java_select "$v" "$2" && return 0
|
||||||
done
|
done
|
||||||
;;
|
;;
|
||||||
|
@ -505,9 +566,9 @@ function select_java_any() {
|
||||||
# Sélectionner la version exacte de java correspondant aux arguments, dans
|
# Sélectionner la version exacte de java correspondant aux arguments, dans
|
||||||
# l'ordre, jusqu'à ce qu'un argument corresponde. DEFAULT correspond à la
|
# l'ordre, jusqu'à ce qu'un argument corresponde. DEFAULT correspond à la
|
||||||
# valeur actuelle de JAVA_HOME, si elle est définie.
|
# valeur actuelle de JAVA_HOME, si elle est définie.
|
||||||
# Si aucun argument n'est défini, on assume "DEFAULT 5 6 7 8 1.4"
|
# Si aucun argument n'est défini, on assume "DEFAULT 5 6 7 8 11 1.4"
|
||||||
local v
|
local v
|
||||||
[ -n "$*" ] || set -- DEFAULT 5 6 7 8 1.4
|
[ -n "$*" ] || set -- DEFAULT 5 6 7 8 11 1.4
|
||||||
for v in "$@"; do
|
for v in "$@"; do
|
||||||
if [ "$v" == DEFAULT ]; then
|
if [ "$v" == DEFAULT ]; then
|
||||||
if [ -n "$JAVA_HOME" ]; then
|
if [ -n "$JAVA_HOME" ]; then
|
||||||
|
|
|
@ -28,8 +28,8 @@ debianlike_SYSVERS=()
|
||||||
debian_SYSVERS=(buster stretch jessie wheezy squeeze lenny etch)
|
debian_SYSVERS=(buster stretch jessie wheezy squeeze lenny etch)
|
||||||
ubuntu_SYSVERS=(oneiric natty maverick lucid karmic jaunty intrepid hardy)
|
ubuntu_SYSVERS=(oneiric natty maverick lucid karmic jaunty intrepid hardy)
|
||||||
redhatlike_SYSVERS=()
|
redhatlike_SYSVERS=()
|
||||||
ol_SYSVERS=(ol7 ol6 redhat7 redhat6)
|
ol_SYSVERS=(ol8 ol7 ol6 redhat8 redhat7 redhat6)
|
||||||
rhel_SYSVERS=(rhel7 rhel6 rhel5 rhel4 redhat7 redhat6 redhat5 redhat4)
|
rhel_SYSVERS=(rhel8 rhel7 rhel6 rhel5 rhel4 redhat8 redhat7 redhat6 redhat5 redhat4)
|
||||||
fedora_SYSVERS=(fedora14 fedora13 fedora12 fedora11)
|
fedora_SYSVERS=(fedora14 fedora13 fedora12 fedora11)
|
||||||
centos_SYSVERS=(centos7 centos6 centos5 centos4 redhat7 redhat6 redhat5 redhat4)
|
centos_SYSVERS=(centos7 centos6 centos5 centos4 redhat7 redhat6 redhat5 redhat4)
|
||||||
suse_SYSVERS=()
|
suse_SYSVERS=()
|
||||||
|
@ -157,6 +157,7 @@ function __compute_sysinfos() {
|
||||||
elif [ -n "$oracle_release" ]; then
|
elif [ -n "$oracle_release" ]; then
|
||||||
MYSYSDIST=(ol rhel redhatlike)
|
MYSYSDIST=(ol rhel redhatlike)
|
||||||
case "$oracle_release" in
|
case "$oracle_release" in
|
||||||
|
Oracle*Linux*release\ 8*) MYSYSVER=(ol8 rhel8 redhat8);;
|
||||||
Oracle*Linux*release\ 7*) MYSYSVER=(ol7 rhel7 redhat7);;
|
Oracle*Linux*release\ 7*) MYSYSVER=(ol7 rhel7 redhat7);;
|
||||||
Oracle*Linux*release\ 6*) MYSYSVER=(ol6 rhel6 redhat6);;
|
Oracle*Linux*release\ 6*) MYSYSVER=(ol6 rhel6 redhat6);;
|
||||||
esac
|
esac
|
||||||
|
@ -172,10 +173,12 @@ function __compute_sysinfos() {
|
||||||
Fedora*13*) MYSYSVER=(fedora13);;
|
Fedora*13*) MYSYSVER=(fedora13);;
|
||||||
Fedora*12*) MYSYSVER=(fedora12);;
|
Fedora*12*) MYSYSVER=(fedora12);;
|
||||||
Fedora*11*) MYSYSVER=(fedora11);;
|
Fedora*11*) MYSYSVER=(fedora11);;
|
||||||
|
Red*Hat*Enterprise*Linux*release\ 8*) MYSYSVER=(rhel8 redhat8);;
|
||||||
Red*Hat*Enterprise*Linux*release\ 7*) MYSYSVER=(rhel7 redhat7);;
|
Red*Hat*Enterprise*Linux*release\ 7*) MYSYSVER=(rhel7 redhat7);;
|
||||||
Red*Hat*Enterprise*Linux*release\ 6*) MYSYSVER=(rhel6 redhat6);;
|
Red*Hat*Enterprise*Linux*release\ 6*) MYSYSVER=(rhel6 redhat6);;
|
||||||
Red*Hat*Enterprise*Linux*release\ 5*) MYSYSVER=(rhel5 redhat5);;
|
Red*Hat*Enterprise*Linux*release\ 5*) MYSYSVER=(rhel5 redhat5);;
|
||||||
Red*Hat*Enterprise*Linux*release\ 4*) MYSYSVER=(rhel4 redhat4);;
|
Red*Hat*Enterprise*Linux*release\ 4*) MYSYSVER=(rhel4 redhat4);;
|
||||||
|
CentOS*release\ 8*) MYSYSVER=(centos8 redhat8);;
|
||||||
CentOS*release\ 7*) MYSYSVER=(centos7 redhat7);;
|
CentOS*release\ 7*) MYSYSVER=(centos7 redhat7);;
|
||||||
CentOS*release\ 6*) MYSYSVER=(centos6 redhat6);;
|
CentOS*release\ 6*) MYSYSVER=(centos6 redhat6);;
|
||||||
CentOS*release\ 5*) MYSYSVER=(centos5 redhat5);;
|
CentOS*release\ 5*) MYSYSVER=(centos5 redhat5);;
|
||||||
|
|
23
pff
23
pff
|
@ -30,6 +30,7 @@ PFFCONFVARS=(
|
||||||
"MKDIRS//Répertoires qui doivent toujours exister"
|
"MKDIRS//Répertoires qui doivent toujours exister"
|
||||||
"FILTERS//Filtres appliqués aux fichiers lors de l'intégration, de la forme 'filespec:filter'. Cf la doc pour le détail du format"
|
"FILTERS//Filtres appliqués aux fichiers lors de l'intégration, de la forme 'filespec:filter'. Cf la doc pour le détail du format"
|
||||||
"NOMERGES=//Fichiers qu'il ne faut pas chercher à fusionner. Cf la doc pour le détail du format"
|
"NOMERGES=//Fichiers qu'il ne faut pas chercher à fusionner. Cf la doc pour le détail du format"
|
||||||
|
"NOUPSTREAM=//Indiquer qu'il n'y a pas de fichiers upstream. pff est uniquement utilisé pour gérer des profils de fichiers"
|
||||||
)
|
)
|
||||||
|
|
||||||
if [ "$#" -eq 1 -a "$1" == --nutools-makelinks ]; then
|
if [ "$#" -eq 1 -a "$1" == --nutools-makelinks ]; then
|
||||||
|
@ -190,6 +191,13 @@ pff:
|
||||||
que les fichiers ayant l'extension .c situés dans le répertoire du
|
que les fichiers ayant l'extension .c situés dans le répertoire du
|
||||||
projet
|
projet
|
||||||
|
|
||||||
|
NOUPSTREAM -- indiquer qu'il n'y a pas de distribution upstream ni de
|
||||||
|
fichiers origine. pff est alors uniquement utilisé pour gérer des
|
||||||
|
profils de fichier.
|
||||||
|
Pour le moment, la seule différence est que le mode des fichiers de
|
||||||
|
pff/Base n'est pas forcé à 0444. Ainsi, ces fichiers sont traités au
|
||||||
|
même titre que ceux du répertoire pff/Common
|
||||||
|
|
||||||
COMMANDES / OPTIONS
|
COMMANDES / OPTIONS
|
||||||
Les arguments du script dépendent de la commande utilisée. Les commandes
|
Les arguments du script dépendent de la commande utilisée. Les commandes
|
||||||
supportées sont:
|
supportées sont:
|
||||||
|
@ -571,8 +579,11 @@ function autoinit() {
|
||||||
local pffdir="$1" profile mkdir
|
local pffdir="$1" profile mkdir
|
||||||
[ -d "$pffdir/pff/Current" ] || mkdir -p "$pffdir/pff/Current"
|
[ -d "$pffdir/pff/Current" ] || mkdir -p "$pffdir/pff/Current"
|
||||||
[ -d "$pffdir/pff/Base" ] || mkdir -p "$pffdir/pff/Base"
|
[ -d "$pffdir/pff/Base" ] || mkdir -p "$pffdir/pff/Base"
|
||||||
# tous les fichiers du profil Base doivent être en lecture seule
|
# tous les fichiers du profil Base doivent être en lecture seule, sauf si
|
||||||
|
# NOUPSTREAM=1
|
||||||
|
if [ -z "$NOUPSTREAM" ]; then
|
||||||
find "$pffdir/pff/Base" -type f -perm /222 -exec chmod a-w '{}' +
|
find "$pffdir/pff/Base" -type f -perm /222 -exec chmod a-w '{}' +
|
||||||
|
fi
|
||||||
# Créer les répertoires de MKDIRS
|
# Créer les répertoires de MKDIRS
|
||||||
for mkdir in "${MKDIRS[@]}"; do
|
for mkdir in "${MKDIRS[@]}"; do
|
||||||
mkdir -p "$pffdir/$mkdir"
|
mkdir -p "$pffdir/$mkdir"
|
||||||
|
@ -1144,7 +1155,7 @@ function patch_cmd() {
|
||||||
setx rfile=get_rfile "$bfile" "$pffdir"
|
setx rfile=get_rfile "$bfile" "$pffdir"
|
||||||
mkdirof "$rfile"
|
mkdirof "$rfile"
|
||||||
cp -a "$bfile" "$rfile"
|
cp -a "$bfile" "$rfile"
|
||||||
chmod +w "$rfile"
|
[ -z "$NOUPSTREAM" ] && chmod +w "$rfile"
|
||||||
done
|
done
|
||||||
git add -A
|
git add -A
|
||||||
[ -n "$(git status --porcelain)" ] && git commit -qm "Base"
|
[ -n "$(git status --porcelain)" ] && git commit -qm "Base"
|
||||||
|
@ -1249,9 +1260,9 @@ $(qvals eimportant "Sinon, tapez ${COULEUR_ROUGE}Abort${COULEUR_NORMALE} pour ar
|
||||||
etitle "Finaliser intégration de la version $version"
|
etitle "Finaliser intégration de la version $version"
|
||||||
for vlfile in "${vlfiles[@]}"; do
|
for vlfile in "${vlfiles[@]}"; do
|
||||||
bfile="${vlfile%__pv-${version}__}"
|
bfile="${vlfile%__pv-${version}__}"
|
||||||
chmod +w "$bfile"
|
[ -z "$NOUPSTREAM" ] && chmod +w "$bfile"
|
||||||
mv "$vlfile" "$bfile"
|
mv "$vlfile" "$bfile"
|
||||||
chmod a-w "$bfile"
|
[ -z "$NOUPSTREAM" ] && chmod a-w "$bfile"
|
||||||
done
|
done
|
||||||
eop_version=1
|
eop_version=1
|
||||||
VERSION="$version"
|
VERSION="$version"
|
||||||
|
@ -1308,7 +1319,9 @@ function add_global__link() {
|
||||||
# Création des liens pour $rfile
|
# Création des liens pour $rfile
|
||||||
mkdirof "$bfile" || return
|
mkdirof "$bfile" || return
|
||||||
mv "$pfile" "$bfile" || return
|
mv "$pfile" "$bfile" || return
|
||||||
|
if [ -z "$NOUPSTREAM" ]; then
|
||||||
chmod a-w "$bfile" || return
|
chmod a-w "$bfile" || return
|
||||||
|
fi
|
||||||
[ -L "$pfile" ] || ln -sf "$plink" "$pfile" || return
|
[ -L "$pfile" ] || ln -sf "$plink" "$pfile" || return
|
||||||
mkdirof "$cfile" || return
|
mkdirof "$cfile" || return
|
||||||
[ -L "$cfile" ] || ln -sf "$clink" "$cfile" || return
|
[ -L "$cfile" ] || ln -sf "$clink" "$cfile" || return
|
||||||
|
@ -1412,7 +1425,7 @@ function add_local__link() {
|
||||||
cp "$Cfile" "$Pfile"
|
cp "$Cfile" "$Pfile"
|
||||||
else
|
else
|
||||||
cp "$bfile" "$Pfile"
|
cp "$bfile" "$Pfile"
|
||||||
chmod +w "$Pfile"
|
[ -z "$NOUPSTREAM" ] && chmod +w "$Pfile"
|
||||||
fi
|
fi
|
||||||
# mettre à jour le profil courant
|
# mettre à jour le profil courant
|
||||||
setx cfile=get_cfile "$pfile" "$pffdir"
|
setx cfile=get_cfile "$pfile" "$pffdir"
|
||||||
|
|
1
uproject
1
uproject
|
@ -613,6 +613,7 @@ result: $result"
|
||||||
elif ask_yesno "Voulez-vous créer le fichier initial .gitattributes?" N; then
|
elif ask_yesno "Voulez-vous créer le fichier initial .gitattributes?" N; then
|
||||||
echo >"$destdir/.gitattributes" "\
|
echo >"$destdir/.gitattributes" "\
|
||||||
*.zip -delta
|
*.zip -delta
|
||||||
|
*.jar -delta
|
||||||
*.gz -delta
|
*.gz -delta
|
||||||
*.bz2 -delta
|
*.bz2 -delta
|
||||||
*.whl -delta
|
*.whl -delta
|
||||||
|
|
Loading…
Reference in New Issue