um: fix UML_LIB_PATH
Richard Weinberger [Wed, 25 May 2011 00:13:00 +0000 (17:13 -0700)]
UML_LIB_PATH is hardcoded to /usr/lib/uml/, on 64bit systems UML_LIB_PATH
needs to be /usr/lib64/uml/.

Signed-off-by: Richard Weinberger <richard@nod.at>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

arch/um/drivers/xterm.c
arch/um/include/shared/os.h
arch/um/os-Linux/main.c

index da2caa5..8ac7146 100644 (file)
@@ -90,7 +90,7 @@ static int xterm_open(int input, int output, int primary, void *d,
        int pid, fd, new, err;
        char title[256], file[] = "/tmp/xterm-pipeXXXXXX";
        char *argv[] = { terminal_emulator, title_switch, title, exec_switch,
-                        "/usr/lib/uml/port-helper", "-uml-socket",
+                        OS_LIB_PATH "/uml/port-helper", "-uml-socket",
                         file, NULL };
 
        if (access(argv[4], X_OK) < 0)
index c4617ba..f06a5da 100644 (file)
 #define OS_ACC_R_OK    4       /* Test for read permission.  */
 #define OS_ACC_RW_OK   (OS_ACC_W_OK | OS_ACC_R_OK) /* Test for RW permission */
 
+#ifdef CONFIG_64BIT
+#define OS_LIB_PATH    "/usr/lib64/"
+#else
+#define OS_LIB_PATH    "/usr/lib/"
+#endif
+
 /*
  * types taken from stat_file() in hostfs_user.c
  * (if they are wrong here, they are wrong there...).
index eee69b9..39613ea 100644 (file)
@@ -78,7 +78,7 @@ static void install_fatal_handler(int sig)
        }
 }
 
-#define UML_LIB_PATH   ":/usr/lib/uml"
+#define UML_LIB_PATH   ":" OS_LIB_PATH "/uml"
 
 static void setup_env_path(void)
 {