patch 8.0.0464: can't find executable name on Solaris and FreeBSD

Problem:    Can't find executable name on Solaris and FreeBSD.
Solution:   Check for "/proc/self/path/a.out". (Danek Duvall) And for
            "/proc/curproc/file".
diff --git a/src/main.c b/src/main.c
index aa5a1a2..29ab3c6 100644
--- a/src/main.c
+++ b/src/main.c
@@ -3539,11 +3539,11 @@
 {
     char_u *val = argv0;
 
-# ifdef HAVE_PROC_SELF_EXE
+# ifdef PROC_EXE_LINK
     char    buf[PATH_MAX + 1];
     ssize_t len;
 
-    len = readlink("/proc/self/exe", buf, PATH_MAX);
+    len = readlink(PROC_EXE_LINK, buf, PATH_MAX);
     if (len > 0)
     {
 	buf[len] = NUL;