From: Guillem Jover Date: Wed, 6 Jul 2011 14:29:26 +0000 (+0200) Subject: Use system __progname variable in progname module if available X-Git-Tag: 0.4.0~25 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=87232260404f10c6884756796306f270a527628e;p=thirdparty%2Flibbsd.git Use system __progname variable in progname module if available --- diff --git a/configure.ac b/configure.ac index c9cf0a4..ab7f96a 100644 --- a/configure.ac +++ b/configure.ac @@ -37,6 +37,15 @@ AC_TYPE_SIZE_T AC_TYPE_SSIZE_T # Checks for library functions. +AC_MSG_CHECKING([for __progname]) +AC_LINK_IFELSE( + [AC_LANG_PROGRAM([[]], + [[extern char *__progname; + const char *p = __progname;]])], + [AC_DEFINE([HAVE___PROGNAME], [1], [Define to 1 if you have __progname]) + AC_MSG_RESULT([yes])], + [AC_MSG_RESULT([no])]) + AC_CHECK_FUNCS([getexecname]) AC_CONFIG_FILES([ diff --git a/src/progname.c b/src/progname.c index b5132d8..4d0fee7 100644 --- a/src/progname.c +++ b/src/progname.c @@ -33,7 +33,11 @@ #include #include +#ifdef HAVE___PROGNAME +extern const char *__progname; +#else static const char *__progname = NULL; +#endif const char * getprogname(void)