# [PATCH] SunCC default options

- Thread: https://externals.io/message/41683
- Original archive: https://news-web.php.net/php.internals/41683
- Started by David Soria Parra on 2008-11-05T13:37:29+00:00
- Messages: 1
- Reply by email to internals@lists.php.net
- More for agents: search with https://externals.io/search.md?q={query} · JSON API at https://externals.io/api · documentation at https://externals.io/llms.txt

---

## #41683 — David Soria Parra — 2008-11-05T13:37:29+00:00

URL: https://externals.io/message/41683#41683

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"
+    fi
  esac

  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
