diff options
author | Stef Walter <stefw@gnome.org> | 2012-05-01 10:38:58 +0200 |
---|---|---|
committer | Stef Walter <stefw@gnome.org> | 2012-05-01 10:38:58 +0200 |
commit | fed549ee2049a318081cfce3fde01ae625263d98 (patch) | |
tree | cc23dd39240091aeee0b45b17064abfd31e0a1ae /p11-kit | |
parent | a3bcb9037ddf6657f79f0aae42aa83dd2b8f6b14 (diff) |
Provide compat getprogname() implementations on other OS's
* And use them in our replacement err() and p11_kit_set_progname()
Diffstat (limited to 'p11-kit')
-rw-r--r-- | p11-kit/Makefile.am | 7 | ||||
-rw-r--r-- | p11-kit/util.c | 38 |
2 files changed, 8 insertions, 37 deletions
diff --git a/p11-kit/Makefile.am b/p11-kit/Makefile.am index b855fb7..b1243c1 100644 --- a/p11-kit/Makefile.am +++ b/p11-kit/Makefile.am @@ -2,6 +2,7 @@ NULL = INCLUDES = \ -I$(top_srcdir) \ + -I$(top_srcdir)/common \ -DP11_KIT_FUTURE_UNSTABLE_API \ $(NULL) @@ -25,6 +26,8 @@ MODULE_SRCS = \ ptr-array.c ptr-array.h \ messages.c \ uri.c \ + $(top_srcdir)/common/compat.c \ + $(top_srcdir)/common/compat.h \ $(inc_HEADERS) lib_LTLIBRARIES = \ @@ -65,7 +68,9 @@ libp11_kit_testable_la_CFLAGS = \ $(NULL) libp11_kit_compat_la_SOURCES = \ - util.c util.h + util.c util.h \ + $(top_srcdir)/common/compat.c \ + $(top_srcdir)/common/compat.h pkgconfigdir = $(libdir)/pkgconfig pkgconfig_DATA = p11-kit-1.pc diff --git a/p11-kit/util.c b/p11-kit/util.c index 63183b1..033c775 100644 --- a/p11-kit/util.c +++ b/p11-kit/util.c @@ -37,6 +37,7 @@ #include "config.h" +#include "compat.h" #define DEBUG_FLAG DEBUG_LIB #include "debug.h" #include "p11-kit.h" @@ -316,41 +317,6 @@ _p11_mutex_init (mutex_t *mutex) pthread_mutexattr_destroy (&attr); } -#if defined (HAVE_PROGRAM_INVOCATION_SHORT_NAME) && !HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME -extern char *program_invocation_short_name; -#endif - -#if defined (HAVE___PROGNAME) && !HAVE_DECL___PROGNAME -extern char *__progname; -#endif - -static char * -get_default_progname (void) -{ - const char *name; - -#if defined (HAVE_GETPROGNAME) - name = getprogname(); -#elif defined (HAVE_GETEXECNAME) - const char *p; - name = getexecname(); - p = strrchr (name ? name : "", '/'); - if (p != NULL) - name = p + 1; -#elif defined (HAVE_PROGRAM_INVOCATION_SHORT_NAME) - name = program_invocation_short_name; -#elif defined (HAVE___PROGNAME) - name = __progname; -#else - #error No way to retrieve program name from p11-kit library -#endif - - if (name == NULL) - return NULL; - - return strdup (name); -} - #endif /* OS_UNIX */ #ifdef OS_WIN32 @@ -562,6 +528,6 @@ const char * _p11_get_progname_unlocked (void) { if (_p11_my_progname == NULL) - _p11_my_progname = get_default_progname (); + _p11_set_progname_unlocked (getprogname ()); return _p11_my_progname; } |