+ String argv0_abs = p.find (argv0);
+ if (argv0_abs.is_empty ())
+ {
+ File_name name (argv0);
+ /* If NAME contains slashes and its DIR is not absolute, it can
+ only be referenced from CWD. */
+ if (name.to_string ().index ('/') >= 0 && name.dir_[0] != DIRSEP)
+ {
+ char cwd[PATH_MAX];
+ getcwd (cwd, PATH_MAX);
+ argv0_abs = String (cwd) + "/" + argv0;
+ }
+ else
+ programming_error ("can't find absolute argv0");
+ }
+
+ String bindir = dir_name (argv0_abs);