]> code.delx.au - gnu-emacs/blobdiff - build-aux/msys-to-w32
Update copyright year to 2016
[gnu-emacs] / build-aux / msys-to-w32
index 1f9fda49fff2115f95143895819b35e4ad79c737..8b1c970b99666fdce648b0f1a9b7b0eaa02d37d5 100755 (executable)
@@ -1,8 +1,8 @@
 #!/bin/bash
-# Convert a MSYS path list to absolute, Windows-native format.
+# Convert a MSYS path list to Windows-native format.
 # Status is zero if successful, nonzero otherwise.
 
-# Copyright (C) 2013-2014 Free Software Foundation, Inc.
+# Copyright (C) 2013-2016 Free Software Foundation, Inc.
 
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -25,21 +25,14 @@ usage="usage: ${me} PATHLIST"
 help="$usage
   or:  ${me} OPTION
 
-Convert a MSYS path list to absolute, Windows-native format.
+Convert a MSYS path list to Windows-native format.
 
 PATHLIST should be a colon-separated list of MSYS paths, which will be
 written to the standard output after performing these transformations:
 
 1. Discard empty paths.
 2. Replace: '\' with '/', '//' with '/' and ':' with ';'.
-3. Translate each path to absolute, Windows-native format.
-
-Paths starting with '%emacs_dir%' will be passed verbatim to the
-standard output.
-
-Each non existing path will be translated by looking for its deepest
-existing directory, which will be translated and the remainder
-appended.
+3. Translate absolute paths to Windows-native format.
 
 Options:
   --help     display this help and exit
@@ -78,7 +71,7 @@ for p
 do
     [ -z "$p" ] && continue
 
-    if [ "${p:0:11}" = "%emacs_dir%" ]
+    if [ "${p:0:1}" != "/" ]
     then
        w32p=$p
     elif [ -d "$p" ]
@@ -92,24 +85,18 @@ do
        p=${p//\/\///}
        p=${p%/}
 
-       p1=$p # last candidate tried
+       p1=$p
        while :
        do
-           p2=${p1%/*} # next candidate to try
-           [ "$p2" = "$p1" ] && {
-               # No more candidates to try
-               echo "Invalid path '$p'." >&2
-               exit 1
-           }
-           [ -z "$p2" ] && p2="/" && break
-           [ -d "$p2" ] && break
-           p1=$p2
+           p1=${p1%/*}
+           [ -z "$p1" ] && p1="/" && break
+           [ -d "$p1" ] && break
        done
 
        # translate the existing part and append the rest
-       w32p=$(cd "${p2}" && pwd -W)
-       remainder=${p#$p2}
-       w32p+=/${remainder#/}
+       w32p=$(cd "${p1}" && pwd -W)
+       remainder=${p#$p1}
+       w32p=${w32p%/}/${remainder#/}
     fi
 
     w32pathlist="${w32pathlist};${w32p}"