$OpenBSD$

Index: host/lib/utils/pathslib.cpp
--- host/lib/utils/pathslib.cpp.orig
+++ host/lib/utils/pathslib.cpp
@@ -9,6 +9,8 @@
 
 #ifdef BOOST_MSVC
 #  include <windows.h>
+#elif __OpenBSD__
+#  include <glob.h>
 #else
 #  include <wordexp.h>
 #endif
@@ -30,6 +32,16 @@ std::string uhd::path_expandvars(const std::string& pa
         return path;
     }
     return std::string(result, result+result_len);
+#elif __OpenBSD__
+    glob_t p;
+    std::string return_value;
+    if (glob(path.c_str(), 0, NULL, &p) == 0 && p.gl_pathc > 0) {
+        return_value = std::string(p.gl_pathv[0]);
+    } else {
+        return_value = path;
+    }
+    globfree(&p);
+    return return_value;
 #else
     wordexp_t p;
     std::string return_value;
@@ -42,4 +54,3 @@ std::string uhd::path_expandvars(const std::string& pa
     return return_value;
 #endif
 }
-
