From: Benjamin Reed Date: Mon, 28 Jan 2008 18:25:56 +0000 (-0500) Subject: Platform build fixes for Mac OS X X-Git-Tag: dbus-1.2.1~12 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ee4a0dce33a556bac188cc382c28e2acb75b1a5d;p=thirdparty%2Fdbus.git Platform build fixes for Mac OS X - the Darwin linker does not understand the -z option; wrap it in a check for $with_gnu_ld. - environ is only available at runtime, so you need to make a reference to _NSGetEnviron instead for symbols to resolve properly. --- diff --git a/configure.in b/configure.in index 53fa59e5e..bb28708c6 100644 --- a/configure.in +++ b/configure.in @@ -214,7 +214,9 @@ if test "x$GCC" = "xyes"; then *[\ \ ]-fPIC[\ \ ]*) ;; *) if cc_supports_flag -fPIC; then PIC_CFLAGS="-fPIC" - PIC_LDFLAGS="-Wl,-z,relro" + if [ "x$with_gnu_ld" = "xyes" ]; then + PIC_LDFLAGS="-Wl,-z,relro" + fi fi ;; esac @@ -223,7 +225,11 @@ if test "x$GCC" = "xyes"; then *[\ \ ]-fPIE[\ \ ]*) ;; *) if cc_supports_flag -fPIE; then PIE_CFLAGS="-fPIE" - PIE_LDFLAGS="-pie -Wl,-z,relro" + if [ "x$with_gnu_ld" = "xyes" ]; then + PIE_LDFLAGS="-pie -Wl,-z,relro" + else + PIE_LDFLAGS="-pie" + fi fi ;; esac @@ -1273,6 +1279,18 @@ AC_SUBST(DBUS_SESSION_SOCKET_DIR) AC_DEFINE_UNQUOTED(DBUS_UNIX, "1", [Defined on UNIX and Linux systems and not on Windows]) +# darwin needs this to initialize the environment +AC_CHECK_HEADERS(crt_externs.h) +AC_CHECK_FUNC(_NSGetEnviron, [AC_DEFINE(HAVE_NSGETENVIRON, 1, [Define if your system needs _NSGetEnviron to set up the environment])]) +AH_VERBATIM(_DARWIN_ENVIRON, +[ +#if defined(HAVE_NSGETENVIRON) && defined(HAVE_CRT_EXTERNS_H) +# include +# include +# define environ (*_NSGetEnviron()) +#endif +]) + AC_OUTPUT([ Doxyfile dbus/dbus-arch-deps.h