summaryrefslogtreecommitdiff
path: root/scripts/addToolVersion.sh
diff options
context:
space:
mode:
authorYann E. MORIN" <yann.morin.1998@anciens.enib.fr>2009-02-02 21:56:30 (GMT)
committerYann E. MORIN" <yann.morin.1998@anciens.enib.fr>2009-02-02 21:56:30 (GMT)
commitcb8cfd3d80fa3419cae04fc47da2ffd276e416a7 (patch)
tree46304a09df41bfc712f2edea54e942479f292a08 /scripts/addToolVersion.sh
parent910188cea6c553d926eb27f2b3870393bf4cb710 (diff)
Don't add versions that already exist.
/trunk/scripts/addToolVersion.sh | 15 14 1 0 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-)
Diffstat (limited to 'scripts/addToolVersion.sh')
-rwxr-xr-xscripts/addToolVersion.sh15
1 files changed, 14 insertions, 1 deletions
diff --git a/scripts/addToolVersion.sh b/scripts/addToolVersion.sh
index d0a76c6..1fa6c13 100755
--- a/scripts/addToolVersion.sh
+++ b/scripts/addToolVersion.sh
@@ -52,6 +52,7 @@ EOF
addToolVersion() {
local version="$1"
local file
+ local config_ver_option
local exp_obs_prompt
local deps v ver_M ver_m
local SedExpr1 SedExpr2
@@ -59,7 +60,19 @@ addToolVersion() {
file="config/${tool_prefix}/${tool}.in"
v=$(echo "${version}" |"${sed}" -r -e 's/-/_/g; s/\./_/g;')
- SedExpr1="${SedExpr1}config ${cat}_V_${v}\n"
+ config_ver_option="${cat}_V_${v}"
+
+ # Check for existing version: it can be legitimitate for an end-user
+ # to try adding a new version if the one he/she wants is not listed.
+ # But it can be the case where the version is hidden behind either one
+ # of EXPERIMENTAL or OBSOLETE, so warn if the version is already listed.
+ if (GREP_OPTIONS= grep -E "^config ${config_ver_option}$" "${file}" >/dev/null 2>&1); then
+ echo "'${tool}': version '${version}' already present:"
+ GREP_OPTIONS= grep -A3 -B0 -E "^config ${config_ver_option}$" "${file}"
+ return 0
+ fi
+
+ SedExpr1="${SedExpr1}config ${config_ver_option}\n"
SedExpr1="${SedExpr1} bool\n"
SedExpr1="${SedExpr1} prompt \"${version}"
case "${EXP},${OBS}" in