diff options
-rw-r--r-- | src/ChangeLog | 2 | ||||
-rw-r--r-- | src/aclocal.m4 | 16 |
2 files changed, 18 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index e3119ee..7306fd0 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -5,6 +5,8 @@ corresponding getsockname arg types. (KRB5_GETSOCKNAME_ARGS): If nothing matches, assume struct sockaddr and socklen_t. + (WITH_CC): Add -fno-common to CFLAGS on Darwin, unless -fcommon or + -fno-common is already given. 2004-02-12 Tom Yu <tlyu@mit.edu> diff --git a/src/aclocal.m4 b/src/aclocal.m4 index 3418761..0bcefa3 100644 --- a/src/aclocal.m4 +++ b/src/aclocal.m4 @@ -485,6 +485,22 @@ if test "$GCC" = yes ; then CFLAGS="$CFLAGS -pedantic" fi fi + if test "`uname -s`" = Darwin ; then + # Someday this should be a feature test. + # One current (Jaguar = OS 10.2) problem: + # Archive library with foo.o undef sym X and bar.o common sym X, + # if foo.o is pulled in at link time, bar.o may not be, causing + # the linker to complain. + # Dynamic library problems too? + case "$CC $CFLAGS" in + *-fcommon*) ;; # why someone would do this, I don't know + *-fno-common*) ;; # okay, they're already doing the right thing + *) + AC_MSG_NOTICE(disabling the use of common storage on Darwin) + CFLAGS="$CFLAGS -fno-common" + ;; + esac + fi fi ])dnl dnl |