Mesa (master): util: implement GET_PROGRAM_NAME for Haiku

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Sun Jan 10 03:13:33 UTC 2021


Module: Mesa
Branch: master
Commit: 71f4a743686dbbbe51213fee1489dfecf35b079d
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=71f4a743686dbbbe51213fee1489dfecf35b079d

Author: X512 <danger_mail at list.ru>
Date:   Mon Jan  4 22:04:39 2021 -0600

util: implement GET_PROGRAM_NAME for Haiku

Reviewed-by: Alexander von Gluck IV <kallisti5 at unixzen.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8323>

---

 src/util/u_process.c | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/src/util/u_process.c b/src/util/u_process.c
index 9f847d1cc02..231286061b0 100644
--- a/src/util/u_process.c
+++ b/src/util/u_process.c
@@ -152,6 +152,25 @@ __getProgramName()
    return progname;
 }
 #        define GET_PROGRAM_NAME() __getProgramName()
+#elif defined(__HAIKU__)
+#    include <libgen.h>
+extern char **__libc_argv;
+extern int __libc_argc;
+
+static const char *
+__getProgramName()
+{
+    static const char *progname;
+
+    if (progname == NULL) {
+        char *n = strdup(__libc_argv[0]);
+        if (n != NULL) {
+            progname = basename(n);
+        }
+    }
+    return progname;
+}
+#    define GET_PROGRAM_NAME() __getProgramName()
 #endif
 
 #if !defined(GET_PROGRAM_NAME)



More information about the mesa-commit mailing list