aboutsummaryrefslogtreecommitdiff
path: root/lang/halide/files/patch-src_Util.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lang/halide/files/patch-src_Util.cpp')
-rw-r--r--lang/halide/files/patch-src_Util.cpp23
1 files changed, 23 insertions, 0 deletions
diff --git a/lang/halide/files/patch-src_Util.cpp b/lang/halide/files/patch-src_Util.cpp
new file mode 100644
index 000000000000..4ae01a38de0d
--- /dev/null
+++ b/lang/halide/files/patch-src_Util.cpp
@@ -0,0 +1,23 @@
+--- src/Util.cpp.orig 2022-01-22 10:03:14 UTC
++++ src/Util.cpp
+@@ -32,6 +32,11 @@
+ #include <linux/limits.h> // For PATH_MAX
+ #include <ucontext.h> // For swapcontext
+ #endif
++#ifdef __FreeBSD__
++#define CAN_GET_RUNNING_PROGRAM_NAME
++#include <sys/limits.h> // For PATH_MAX
++#include <ucontext.h> // For swapcontext
++#endif
+ #if defined(_MSC_VER) && !defined(NOMINMAX)
+ #define NOMINMAX
+ #endif
+@@ -141,6 +146,8 @@ string running_program_name() {
+ uint32_t size = sizeof(path);
+ #if defined(__linux__)
+ ssize_t len = ::readlink("/proc/self/exe", path, size - 1);
++#elif defined(__FreeBSD__)
++ ssize_t len = ::readlink("/proc/curproc/file", path, size - 1);
+ #elif defined(__APPLE__)
+ ssize_t len = ::_NSGetExecutablePath(path, &size);
+ #endif