Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
cleanup, deal with optimization flags the same way than warning and pedentic
authormquinson <mquinson@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Wed, 18 Aug 2004 20:36:14 +0000 (20:36 +0000)
committermquinson <mquinson@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Wed, 18 Aug 2004 20:36:14 +0000 (20:36 +0000)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@385 48e7efb5-ca39-0410-a469-dd3cf9ba447f

acmacro/gnome-warnings.m4

index 0345211..01bd8fb 100644 (file)
@@ -7,52 +7,65 @@ AC_DEFUN([GNOME_COMPILE_WARNINGS],[
   AC_ARG_ENABLE(compile-warnings, 
     [  --enable-compile-warnings=[no/minimum/yes]       Turn on compiler warnings.],,enable_compile_warnings=yes)
 
-  AC_MSG_CHECKING(what warning flags to pass to the C compiler)
+  AC_MSG_CHECKING(the warning flags for this compiler)
   warnCFLAGS=
-  if test "x$GCC" != xyes; then
-    enable_compile_warnings=no
-  fi
-
-  if test "x$enable_compile_warnings" != "xno"; then
-    if test "x$GCC" = "xyes"; then
-      case " $CFLAGS " in
-      *-Wall*) ;;
-      *) warnCFLAGS="-g -Wall -Wunused" ;;
-      esac
+  if test "x$GCC" = "xyes"; then
+    case " $CFLAGS " in
+    *-Wall*) ;;
+    *) warnCFLAGS="-g -Wall -Wunused" ;;
+    esac
 
-      ## -W is not all that useful.  And it cannot be controlled
-      ## with individual -Wno-xxx flags, unlike -Wall
-      if test "x$enable_compile_warnings" = "xyes"; then
-        warnCFLAGS="$warnCFLAGS  -Wmissing-prototypes -Wmissing-declarations \
-                   -finline-functions  -Wshadow -Wpointer-arith -Wchar-subscripts \
-                   -Wformat=2 -Wno-unused-variable -Wno-unused-function -Wwrite-strings -Werror"
-      fi
+    ## -W is not all that useful.  And it cannot be controlled
+    ## with individual -Wno-xxx flags, unlike -Wall
+    if test "x$enable_compile_warnings" = "xyes"; then
+      warnCFLAGS="$warnCFLAGS  -Wmissing-prototypes -Wmissing-declarations \
+ -finline-functions  -Wshadow -Wpointer-arith -Wchar-subscripts \
+ -Wformat=2 -Wno-unused-variable -Wno-unused-function -Wwrite-strings -Werror"
     fi
   fi
+
   AC_MSG_RESULT($warnCFLAGS)
 
   AC_ARG_ENABLE(iso-c,
     [  --enable-iso-c          Try to warn if code is not ISO C ],,
     enable_iso_c=no)
 
-  AC_MSG_CHECKING(what language compliance flags to pass to the C compiler)
+  AC_MSG_CHECKING(the language compliance flags for this compiler)
   complCFLAGS=
-  if test "x$enable_iso_c" != "xno"; then
-    if test "x$GCC" = "xyes"; then
-      case " $CFLAGS " in
-      *-ansi*) ;;
-      *) complCFLAGS="$complCFLAGS -ansi" ;;
-      esac
+  if test "x$GCC" = "xyes"; then
+    case " $CFLAGS " in
+    *-ansi*) ;;
+    *) complCFLAGS="$complCFLAGS -ansi" ;;
+    esac
 
+    case " $CFLAGS " in
+    *-pedantic*) ;;
+    *) complCFLAGS="$complCFLAGS -pedantic" ;;
+    esac
+  fi
+  AC_MSG_RESULT($complCFLAGS)
+  
+  
+  AC_MSG_CHECKING(the optimization flags for this compiler)
+  optCFLAGS=
+  if test "x$GCC" = "xyes" ; then
+      optCFLAGS="-ffast-math -funroll-loops -fno-strict-aliasing"
       case " $CFLAGS " in
-      *-pedantic*) ;;
-      *) complCFLAGS="$complCFLAGS -pedantic" ;;
+      *-O*) ;;
+      *) optCFLAGS="-03" ;;
       esac
-    fi
   fi
   AC_MSG_RESULT($complCFLAGS)
-  if test "x$cflags_set" != "xyes"; then
-    CFLAGS="$CFLAGS $warnCFLAGS $complCFLAGS"
+
+  # Take the right flags
+  if test "x$cflags_set" != "xyes" ; then  
+    if test "x$enable_iso_c" != "xno"; then
+      CFLAGS="$CFLAGS $complCFLAGS"
+    fi
+    if test "x$enable_compile_warnings" != "xno" ; then
+      CFLAGS="$CFLAGS $warnCFLAGS"
+    fi  
+    
     cflags_set=yes
     AC_SUBST(cflags_set)
   fi