Skip to content

Commit

Permalink
The old Darwin hack is BROKEN and INCORRECT. It works only for Darwin…
Browse files Browse the repository at this point in the history
… 9, not 10, and uses an ugly CFLAGS hack that messes with the entire build. This version sets one cached value to the correct result for Darwin 9 and 10. It's cleaner, has no side effects, has nothing to do with Autoconf versions, and works for everyone.
  • Loading branch information
Gwynne Raskind committed Nov 30, 2009
1 parent 50a2439 commit b2cc8c6
Showing 1 changed file with 8 additions and 24 deletions.
32 changes: 8 additions & 24 deletions configure.in
Original file line number Diff line number Diff line change
Expand Up @@ -122,21 +122,6 @@ dnl or the contents of libs.
$php_shtool mkdir -p libs
rm -f libs/*

dnl Darwin 9 hack
dnl Because the default debugging format used by Apple's GCC on Mac OS 10.5
dnl causes errors in all current and past versions of Autoconf, we do a little
dnl messing with the CFLAGS here to trick it.
php_did_darwin9_cheat=0
case $host_alias in
*darwin9*)
hasg=`echo $CFLAGS | grep -E '(^-g)|([[:space:]]-g)'`
if test x"$hasg" = "x"; then
php_did_darwin9_cheat=1
CFLAGS="$CFLAGS -gstabs"
fi
;;
esac

dnl Checks for programs.
dnl -------------------------------------------------------------------------

Expand Down Expand Up @@ -1339,6 +1324,14 @@ PHP_CONFIGURE_PART(Configuring libtool)

LDFLAGS="$LDFLAGS $PHP_AIX_LDFLAGS"

dnl Autoconf 2.13's libtool checks go slightly nuts on Mac OS X 10.5 and 10.6.
dnl This hack works around it. Ugly.
case $host_alias in
*darwin9*|*darwin10*)
ac_cv_exeext=
;;
esac

dnl Only allow AC_PROG_CXX and AC_PROG_CXXCPP if they are explicitly called (by PHP_REQUIRE_CXX).
dnl Otherwise AC_PROG_LIBTOOL fails if there is no working C++ compiler.
AC_PROVIDE_IFELSE([PHP_REQUIRE_CXX], [], [
Expand All @@ -1362,15 +1355,6 @@ SHARED_LIBTOOL='$(LIBTOOL)'

CC=$old_CC

dnl Finish the Darwin hack
if test "$php_did_darwin9_cheat" -eq 1; then
if test "$PHP_DEBUG" = "1"; then
CFLAGS=`echo "$CFLAGS" | $SED -e 's/-gstabs/-g/g'`
else
CFLAGS=`echo "-O2 $CFLAGS" | $SED -e 's/-gstabs//g'`
fi
fi

PHP_CONFIGURE_PART(Generating files)

CXXFLAGS_CLEAN=$CXXFLAGS
Expand Down

0 comments on commit b2cc8c6

Please sign in to comment.