diff options
author | Christopher Faylor <me@cgf.cx> | 2010-12-27 00:11:38 +0300 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2010-12-27 00:11:38 +0300 |
commit | 589e430baaacf262a725154b4c437387f4ac2160 (patch) | |
tree | 9d807912daf81427f5ac936ab5439eddf5749d22 /winsup/cygwin | |
parent | d64bda8409e7f670fb5782cf7e9505a48504c8ef (diff) |
cygwin:
* cygwin.din: Export program_invocation_name and
program_invocation_short_name.
* dcrt0.cc: Set program_invocation*name to correct values, based on
argv[0].
* globals.cc (program_invocation_name): Define.
(program_invocation_short_name): Ditto
newlib:
* libc/include/sys/errno.h (program_invocation_name): Declare.
(program_invocation_short_name): Ditto.
Diffstat (limited to 'winsup/cygwin')
-rw-r--r-- | winsup/cygwin/ChangeLog | 8 | ||||
-rw-r--r-- | winsup/cygwin/cygwin.din | 2 | ||||
-rw-r--r-- | winsup/cygwin/dcrt0.cc | 2 | ||||
-rw-r--r-- | winsup/cygwin/globals.cc | 2 |
4 files changed, 14 insertions, 0 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 823d7d2f5..dd1feef15 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,11 @@ +2010-12-26 Christopher Faylor <me+cygwin@cgf.cx> + + * cygwin.din: Export program_invocation_name and program_invocation_short_name. + * dcrt0.cc: Set program_invocation*name to correct values, based on + argv[0]. + * globals.cc (program_invocation_name): Define. + (program_invocation_short_name): Ditto. + 2010-12-16 Corinna Vinschen <corinna@vinschen.de> * security.cc (alloc_sd): Really fix erroneous inheritence entry diff --git a/winsup/cygwin/cygwin.din b/winsup/cygwin/cygwin.din index 4de550fcc..3ebba1c67 100644 --- a/winsup/cygwin/cygwin.din +++ b/winsup/cygwin/cygwin.din @@ -1161,6 +1161,8 @@ powf NOSIGFE _powf = powf NOSIGFE pread SIGFE printf SIGFE +program_invocation_name DATA +program_invocation_short_name DATA _printf = printf SIGFE pselect SIGFE pthread_atfork SIGFE diff --git a/winsup/cygwin/dcrt0.cc b/winsup/cygwin/dcrt0.cc index 4aca47495..4c2a66936 100644 --- a/winsup/cygwin/dcrt0.cc +++ b/winsup/cygwin/dcrt0.cc @@ -915,6 +915,8 @@ dll_crt0_1 (void *) ++__progname; else __progname = __argv[0]; + program_invocation_name = __argv[0]; + program_invocation_short_name = __progname; if (__progname) { char *cp = strchr (__progname, '\0') - 4; diff --git a/winsup/cygwin/globals.cc b/winsup/cygwin/globals.cc index 801ae742d..f04c8e3ea 100644 --- a/winsup/cygwin/globals.cc +++ b/winsup/cygwin/globals.cc @@ -138,6 +138,8 @@ extern "C" char ***main_environ = &__cygwin_environ; /* __progname used in getopt error message */ char *__progname; + char *program_invocation_name; + char *program_invocation_short_name; static MTinterface _mtinterf; struct per_process __cygwin_user_data = {/* initial_sp */ 0, /* magic_biscuit */ 0, |