Apply a patch from Kees van Reeuwijk to add support for Minix.
authorDan Gohman <gohman@apple.com>
Thu, 2 Sep 2010 18:24:46 +0000 (18:24 +0000)
committerDan Gohman <gohman@apple.com>
Thu, 2 Sep 2010 18:24:46 +0000 (18:24 +0000)
Minix apparently doesn't like double-slash separators, and there's
no apparent need for them here.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112844 91177308-0d34-0410-b5e6-96231b3b80d8

lib/System/Unix/Path.inc

index 44cb0081c50a7036b502d51adc79b78a2e74c9dd..47e4d1ac3c6b5124a329e6f54c446166ebddd1f0 100644 (file)
@@ -282,14 +282,14 @@ Path::GetCurrentDirectory() {
   return Path(pathname);
 }
 
-#if defined(__FreeBSD__) || defined (__NetBSD__)
+#if defined(__FreeBSD__) || defined (__NetBSD__) || defined(__minix)
 static int
 test_dir(char buf[PATH_MAX], char ret[PATH_MAX],
     const char *dir, const char *bin)
 {
   struct stat sb;
 
-  snprintf(buf, PATH_MAX, "%s//%s", dir, bin);
+  snprintf(buf, PATH_MAX, "%s/%s", dir, bin);
   if (realpath(buf, ret) == NULL)
     return (1);
   if (stat(buf, &sb) != 0)
@@ -350,7 +350,7 @@ Path Path::GetMainExecutable(const char *argv0, void *MainAddr) {
     if (realpath(exe_path, link_path))
       return Path(std::string(link_path));
   }
-#elif defined(__FreeBSD__) || defined (__NetBSD__)
+#elif defined(__FreeBSD__) || defined (__NetBSD__) || defined(__minix)
   char exe_path[PATH_MAX];
 
   if (getprogpath(exe_path, argv0) != NULL)