libutil: rip out GNU Hurd support code

Nobody has stepped up to add further support for Hurd since this code
appeared in 2010 or 2014. We don't need it.

Change-Id: I400b2031a225551ea3c71a3ef3ea9fdb599dfba3
This commit is contained in:
jade 2024-07-23 20:52:04 +02:00
parent 73c013a5df
commit 916b5c68fb

View file

@ -21,23 +21,15 @@ Path absPath(Path path, std::optional<PathView> dir, bool resolveSymlinks)
{ {
if (path.empty() || path[0] != '/') { if (path.empty() || path[0] != '/') {
if (!dir) { if (!dir) {
#ifdef __GNU__
/* GNU (aka. GNU/Hurd) doesn't have any limitation on path
lengths and doesn't define `PATH_MAX'. */
char *buf = getcwd(NULL, 0);
if (buf == NULL)
#else
char buf[PATH_MAX]; char buf[PATH_MAX];
if (!getcwd(buf, sizeof(buf))) if (!getcwd(buf, sizeof(buf))) {
#endif
throw SysError("cannot get cwd"); throw SysError("cannot get cwd");
}
path = concatStrings(buf, "/", path); path = concatStrings(buf, "/", path);
#ifdef __GNU__ } else {
free(buf);
#endif
} else
path = concatStrings(*dir, "/", path); path = concatStrings(*dir, "/", path);
} }
}
return canonPath(path, resolveSymlinks); return canonPath(path, resolveSymlinks);
} }