[PATCH] SunCC default options
| From: | David Soria Parra | Date: | Wed, 05 Nov 2008 13:37:29 +0000 |
| Subject: | [PATCH] SunCC default options | ||
| Groups: | php.internals | ||
| Request: | Send a blank email to internals+get-41683@lists.php.net to get a copy of this message | ||
I recently noticed if you want to compile PHP using the suncc compiler, there are no useful default flags set by configure. Therefore if there are no objections I want to commit the following patch that introduces usefull cflags (actually those used by php distributed by sun) for the suncc compiler if the user didn't provide his own cflags. In addition it makes sure that --enable-debug works for suncc. I tested the patch with sunstudio 11 and sunstudio 12 c compilers. The patch is for 5.3 so I won't commit this to 5.2.
David
Set default flags for suncc compiler
Index: php53/acinclude.m4
===================================================================
--- php53.orig/acinclude.m4 2008-09-08 12:24:25.000000000 +0200
+++ php53/acinclude.m4 2008-11-05 01:22:40.403777976 +0100
@@ -2766,6 +2766,22 @@
)
])
+dnl PHP_DETECT_SUNCC
+dnl Detect if the systems default compiler is suncc.
+dnl We also set some usefull CFLAGS if the user didn't set any
+AC_DEFUN([PHP_DETECT_SUNCC],[
+ SUNCC="no"
+ AC_MSG_CHECKING([for suncc])
+ AC_EGREP_CPP([^__SUNPRO_C], [__SUNPRO_C],
+ SUNCC="no" + AC_MSG_RESULT([no]), + SUNCC="yes" + test -n "$auto_cflags" && CFLAGS="-fsimple=2 -xnorunpath -xO4 -xalias_level=basic -xipo=1 -xlibmopt -xprefetch_level=1 -xprefetch=auto -xstrconst -xtarget=native -zlazyload" + GCC="" + AC_MSG_RESULT([yes])+ ) +]) + dnl dnl PHP_CRYPT_R_STYLE dnl detect the style of crypt_r() is any is available Index: php53/configure.in =================================================================== --- php53.orig/configure.in 2008-09-01 22:51:57.000000000 +0200 +++ php53/configure.in 2008-11-05 01:22:40.404329417 +0100 @@ -142,6 +142,7 @@ AC_PROG_CC PHP_DETECT_ICC +PHP_DETECT_SUNCC AC_PROG_CC_C_O dnl Change to AC_PROG_CC_STDC when we start requiring a post-2.13 autoconf dnl AC_PROG_CC_STDC @@ -214,6 +215,10 @@
CFLAGS="$CFLAGS -ieee"
fi
;;
+ sparc*)
+ if test "$SUNCC" = "yes"; then + CFLAGS="$CFLAGS -xmemalign=8s" + fiesac dnl activate some gcc specific optimizations for gcc >= 4 @@ -788,6 +793,15 @@
CFLAGS="$CFLAGS -O0"
CXXFLAGS="$CXXFLAGS -O0"
fi
+ if test "$SUNCC" = "yes"; then
+ if -n "$auto_cflags"; then + CFLAGS="-g" + CXXFLAGS="-g" + else + CFLAGS="$CFLAGS -g" + CXXFLAGS="$CFLAGS -g" + fi+ fi else PHP_DEBUG=0 ZEND_DEBUG=no