From 79aea805a8fbfd9b5ded89f437c5eed4e63e10c2 Mon Sep 17 00:00:00 2001 From: Kevin Lo Date: Tue, 3 Sep 2013 09:49:17 +0000 Subject: [PATCH] Get rid of /proc dependency. PR: ports/181659 Submitted by: Jan Beich --- devel/android-tools-adb/Makefile | 1 + .../files/patch-get_my_path_freebsd.c | 30 +++++++++++++++++++ 2 files changed, 31 insertions(+) create mode 100644 devel/android-tools-adb/files/patch-get_my_path_freebsd.c diff --git a/devel/android-tools-adb/Makefile b/devel/android-tools-adb/Makefile index 9e0d315e0dc9..d50400f3833c 100644 --- a/devel/android-tools-adb/Makefile +++ b/devel/android-tools-adb/Makefile @@ -2,6 +2,7 @@ PORTNAME= android-tools-adb PORTVERSION= 4.3 +PORTREVISION= 1 CATEGORIES= devel DISTNAME= android-platform_system_core-${GH_COMMIT} diff --git a/devel/android-tools-adb/files/patch-get_my_path_freebsd.c b/devel/android-tools-adb/files/patch-get_my_path_freebsd.c new file mode 100644 index 000000000000..6a212df3f0ed --- /dev/null +++ b/devel/android-tools-adb/files/patch-get_my_path_freebsd.c @@ -0,0 +1,30 @@ +--- get_my_path_freebsd.c.orig 2013-09-03 17:33:27.000000000 +0800 ++++ get_my_path_freebsd.c 2013-09-03 17:41:13.000000000 +0800 +@@ -18,19 +18,18 @@ + */ + + #include ++#include + #include +-#include +-#include + + void + get_my_path(char *exe, size_t maxLen) + { +- char proc[64]; ++ int mib[4] = { ++ CTL_KERN, ++ KERN_PROC, ++ KERN_PROC_PATHNAME, ++ getpid() ++ }; + +- snprintf(proc, sizeof(proc), "/proc/%d/file", getpid()); +- +- int err = readlink(proc, exe, maxLen - 1); +- +- exe[err > 0 ? err : 0] = '\0'; ++ sysctl(mib, 4, exe, &maxLen, NULL, 0); + } +-