]> Savannah Git Hosting - gnulib.git/commitdiff
relocatable-prog: Use Linux code on Android.
authorBruno Haible <bruno@clisp.org>
Sun, 27 Jan 2019 10:37:46 +0000 (11:37 +0100)
committerBruno Haible <bruno@clisp.org>
Sun, 27 Jan 2019 10:37:46 +0000 (11:37 +0100)
* lib/progreloc.c: Treat Android like Linux.

ChangeLog
lib/progreloc.c

index 80aeb34f13341b33576be0118a62267468df2d4f..82fc48fa87efaf91ca8cd40aa3c0525a204007dd 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2019-01-27  Bruno Haible  <bruno@clisp.org>
+
+       relocatable-prog: Use Linux code on Android.
+       * lib/progreloc.c: Treat Android like Linux.
+
 2019-01-26  Bruno Haible  <bruno@clisp.org>
 
        getloadavg: Add support for Android.
index 5cec3106c72db1044d749fbc2395b0c8c5ab2e38..1c4db0c6f175f9a9d5feae8093e1c60d8a448def 100644 (file)
@@ -102,7 +102,7 @@ extern char * canonicalize_file_name (const char *name);
 
 #if ENABLE_RELOCATABLE
 
-#if defined __linux__ || defined __CYGWIN__
+#if defined __linux__ || defined __ANDROID__ || defined __CYGWIN__
 /* File descriptor of the executable.
    (Only used to verify that we find the correct executable.)  */
 static int executable_fd = -1;
@@ -118,7 +118,7 @@ maybe_executable (const char *filename)
     return false;
 #endif
 
-#if defined __linux__ || defined __CYGWIN__
+#if defined __linux__ || defined __ANDROID__ || defined __CYGWIN__
   if (executable_fd >= 0)
     {
       /* If we already have an executable_fd, check that filename points to
@@ -180,7 +180,7 @@ find_executable (const char *argv0)
 
   return xstrdup (location);
 #else /* Unix */
-# ifdef __linux__
+# if defined __linux__ || defined __ANDROID__
   /* The executable is accessible as /proc/<pid>/exe.  In newer Linux
      versions, also as /proc/self/exe.  Linux >= 2.1 provides a symlink
      to the true pathname; older Linux versions give only device and ino,