Merge Thomason's cork patch.
[awesomized/libmemcached] / m4 / pandora_optimize.m4
index c255f2586abcd2b17b8402e717db866d60f64307..65f9cdc80692be2464362195d5e71312ada77051 100644 (file)
@@ -6,9 +6,7 @@ dnl with or without modifications, as long as this notice is preserved.
 AC_DEFUN([PANDORA_OPTIMIZE],[
   dnl Build optimized or debug version ?
   dnl First check for gcc and g++
-  AS_IF([test "$GCC" = "yes"],[
-
-    AC_DEFINE([_GNU_SOURCE],[1],[Fix problem with S_ISLNK() on Linux])
+  AS_IF([test "$GCC" = "yes" -a "$INTELCC" = "no"],[
 
     dnl The following is required for portable results of floating point 
     dnl calculations on PowerPC. The same must also be done for IA-64, but 
@@ -32,6 +30,20 @@ AC_DEFUN([PANDORA_OPTIMIZE],[
     OPTIMIZE_CFLAGS="-O3"
     OPTIMIZE_CXXFLAGS="-O3"
   ])
+  AS_IF([test "$INTELCC" = "yes"],[
+    dnl Once we can use a modern autoconf, we can replace the std=gnu99 here
+    dnl with using AC_CC_STD_C99 above
+    CC="${CC} -std=c99"
+
+    AM_CPPFLAGS="-g ${AM_CPPFLAGS}"
+
+    DEBUG_CFLAGS="-O0"
+    DEBUG_CXXFLAGS="-O0"
+
+    OPTIMIZE_CFLAGS="-xHOST -O3 -no-prec-div -static"
+    OPTIMIZE_CXXFLAGS="${OPTIMIZE_CFLAGS}"
+
+  ])
   AS_IF([test "$SUNCC" = "yes"],[
     dnl Once we can use a modern autoconf, we can replace the -xc99=all here
     dnl with using AC_CC_STD_C99 above
@@ -39,12 +51,15 @@ AC_DEFUN([PANDORA_OPTIMIZE],[
     CXX="${CXX} -xlang=c99"
 
     AM_CFLAGS="-g -mt -xstrconst -Xa ${AM_CFLAGS}"
-    AM_CXXFLAGS="-g -mt -compat=5 -library=stlport4 -template=no%extdef ${AM_CXXFLAGS}"
+    AM_CXXFLAGS="-mt -compat=5 -library=stlport4 -library=Crun -template=no%extdef ${AM_CXXFLAGS}"
+
+    DEBUG_CXXFLAGS="-g"
 
     dnl TODO: Make a test for -xO4 usability here
     OPTIMIZE_FLAGS="-xO3 -xlibmil -xdepend -xbuiltin"
     OPTIMIZE_CFLAGS="${OPTIMIZE_FLAGS}"
-    OPTIMIZE_CXXFLAGS="${OPTIMIZE_FLAGS}"
+    OPTIMIZE_CXXFLAGS="-g0 ${OPTIMIZE_FLAGS}"
+
   ])
 
   AC_ARG_WITH([debug],