Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Get rid of "local" keyword for sh.
authorArnaud Giersch <arnaud.giersch@univ-fcomte.fr>
Tue, 14 May 2019 15:16:22 +0000 (17:16 +0200)
committerArnaud Giersch <arnaud.giersch@univ-fcomte.fr>
Tue, 14 May 2019 19:22:02 +0000 (21:22 +0200)
It's not specified by POSIX and not available on Solaris.
Simply use "local_" prefix for local variables.

For more information, see
https://stackoverflow.com/questions/18597697/posix-compliant-way-to-scope-variables-to-a-function-in-a-shell-script

src/smpi/smpitools.sh
tools/jenkins/build.sh

index 65ef772..9aa0a2a 100644 (file)
@@ -12,42 +12,41 @@ LISTSEP="$(printf '\b')"
 # Create a temporary file, with its name of the form $1_XXX$2, where XXX is replaced by an unique string.
 # $1: prefix, $2: suffix
 mymktemp () {
-    tmp=$(mktemp --suffix="$2" "$1_XXXXXXXXXX" 2> /dev/null)
-    if [ -z "$tmp" ]; then
+    local_tmp=$(mktemp --suffix="$2" "$1_XXXXXXXXXX" 2> /dev/null)
+    if [ -z "$local_tmp" ]; then
         # mktemp failed (unsupported --suffix ?), try unsafe mode
-        tmp=$(mktemp -u "$1_XXXXXXXXXX" 2> /dev/null)
-        if [ -z "$tmp" ]; then
+        local_tmp=$(mktemp -u "$1_XXXXXXXXXX" 2> /dev/null)
+        if [ -z "$local_tmp" ]; then
             # mktemp failed again (doesn't exist ?), try very unsafe mode
             if [ -z "${mymktemp_seq}" ]; then
                 mymktemp_seq=$(date +%d%H%M%S)
             fi
-            tmp="$1_$$x${mymktemp_seq}"
+            local_tmp="$1_$$x${mymktemp_seq}"
             mymktemp_seq=$((mymktemp_seq + 1))
         fi
-        tmp="${tmp}$2"
+        local_tmp="${local_tmp}$2"
         # create temp file, and exit if it existed before
-        sh -C -c "true > \"${tmp}\"" || exit 1
+        sh -C -c "true > \"${local_tmp}\"" || exit 1
     fi
-    echo "${tmp}"
+    echo "${local_tmp}"
 }
 
 # Add a word to the end of a list (words separated by LISTSEP)
 # $1: list, $2...: words to add
 list_add () {
-    local list content newcontent
-    list="$1"
+    local_list="$1"
     shift
     if [ $# -gt 0 ]; then
-        eval content=\"\${$list}\"
+        eval local_content=\"\${$local_list}\"
         IFS="$LISTSEP"
-        newcontent="$*"
+        local_newcontent="$*"
         IFS="$SAVEIFS"
-        if [ -z "$content" ]; then
-            content="$newcontent"
+        if [ -z "$local_content" ]; then
+            local_content="$local_newcontent"
         else
-            content="$content${LISTSEP}$newcontent"
+            local_content="$local_content${LISTSEP}$local_newcontent"
         fi
-        eval $list=\"\${content}\"
+        eval $local_list=\"\${local_content}\"
     fi
 }
 
index 9518ae7..0e66fd6 100755 (executable)
@@ -26,7 +26,7 @@ fi
 
 # usage: die status message...
 die () {
-  local status=${1:-1}
+  status=${1:-1}
   shift
   [ $# -gt 0 ] || set -- "Error - Halting"
   echo "$@" >&2