summaryrefslogtreecommitdiff
path: root/libgo/go/os/executable.go
diff options
context:
space:
mode:
Diffstat (limited to 'libgo/go/os/executable.go')
-rw-r--r--libgo/go/os/executable.go23
1 files changed, 23 insertions, 0 deletions
diff --git a/libgo/go/os/executable.go b/libgo/go/os/executable.go
new file mode 100644
index 0000000000..8c21246f5a
--- /dev/null
+++ b/libgo/go/os/executable.go
@@ -0,0 +1,23 @@
+// Copyright 2016 The Go Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+package os
+
+// Executable returns the path name for the executable that started
+// the current process. There is no guarantee that the path is still
+// pointing to the correct executable. If a symlink was used to start
+// the process, depending on the operating system, the result might
+// be the symlink or the path it pointed to. If a stable result is
+// needed, path/filepath.EvalSymlinks might help.
+//
+// Executable returns an absolute path unless an error occurred.
+//
+// The main use case is finding resources located relative to an
+// executable.
+//
+// Executable is not supported on nacl or OpenBSD (unless procfs is
+// mounted.)
+func Executable() (string, error) {
+ return executable()
+}