summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Smith <psmith@gnu.org>2012-01-16 21:29:44 +0000
committerPaul Smith <psmith@gnu.org>2012-01-16 21:29:44 +0000
commit9fb4cdeedb2fb7e1a3dd19f2ce77fc5e0022d904 (patch)
tree3afbdc99a583050905e03f3661773fb7ba81886e
parent0bdc1915017d91fb8e5474a4bec80f79eb207cff (diff)
downloadgunmake-9fb4cdeedb2fb7e1a3dd19f2ce77fc5e0022d904.tar.gz
Fix an issue with PATH_SEPARATOR_CHAR when cross-compiling for Windows.
Fixes Savannah bug #34818.
-rw-r--r--ChangeLog6
-rw-r--r--make.h14
2 files changed, 15 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog
index f58922e..6fdc292 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2012-01-16 Paul Smith <psmith@gnu.org>
+
+ * make.h (PATH_SEPARATOR_CHAR): Allow resetting for crosscompiling
+ for Windows. Patch by Chris Sutcliffe <ir0nh34d@gmail.com>
+ Fixes Savannah bug #34818.
+
2012-01-15 Paul Smith <psmith@gnu.org>
* variable.h: Prototype an interface for defining new make functions.
diff --git a/make.h b/make.h
index 8caf14a..b6956f7 100644
--- a/make.h
+++ b/make.h
@@ -315,11 +315,15 @@ char *strsignal (int signum);
#define N_(msgid) gettext_noop (msgid)
#define S_(msg1,msg2,num) ngettext (msg1,msg2,num)
-/* Handle other OSs. */
-#ifndef PATH_SEPARATOR_CHAR
-# if defined(HAVE_DOS_PATHS)
-# define PATH_SEPARATOR_CHAR ';'
-# elif defined(VMS)
+/* Handle other OSs.
+ To overcome an issue parsing paths in a DOS/Windows environment when
+ built in a unix based environment, override the PATH_SEPARATOR_CHAR
+ definition unless being built for Cygwin. */
+#if defined(HAVE_DOS_PATHS) && !defined(__CYGWIN__)
+# undef PATH_SEPARATOR_CHAR
+# define PATH_SEPARATOR_CHAR ';'
+#elif !defined(PATH_SEPARATOR_CHAR)
+# if defined (VMS)
# define PATH_SEPARATOR_CHAR ','
# else
# define PATH_SEPARATOR_CHAR ':'