From 9689d93c1717c05f042fec90e7bffa4ad43fbb05 Mon Sep 17 00:00:00 2001
From: Kostyantyn Vorobyov <kostyantyn.vorobyov@cea.fr>
Date: Mon, 29 Aug 2016 16:29:17 +0200
Subject: [PATCH] [scripts] Disable optimisations in debug mode

---
 src/plugins/e-acsl/scripts/e-acsl-gcc.sh | 17 +++++++++++------
 1 file changed, 11 insertions(+), 6 deletions(-)

diff --git a/src/plugins/e-acsl/scripts/e-acsl-gcc.sh b/src/plugins/e-acsl/scripts/e-acsl-gcc.sh
index 9c1366f7221..bb072d04987 100755
--- a/src/plugins/e-acsl/scripts/e-acsl-gcc.sh
+++ b/src/plugins/e-acsl/scripts/e-acsl-gcc.sh
@@ -427,10 +427,9 @@ GCCMACHDEP="-m$MACHDEPFLAGS"
 EACSL_MACRO_ID="__E_ACSL__"
 
 # Frama-C and related flags
-FRAMAC_CPP_EXTRA="
-  $OPTION_FRAMAC_CPP_EXTRA
-  -D$EACSL_MACRO_ID
-  -I$FRAMAC_SHARE/libc
+FRAMAC_CPP_EXTRA="$OPTION_FRAMAC_CPP_EXTRA \
+  -I$FRAMAC_SHARE/libc \
+  -D__NO_CTYPE \
   $CPPMACHDEP"
 EACSL_MMODEL="$OPTION_EACSL_MMODEL"
 
@@ -481,7 +480,7 @@ done
 # Gcc and related flags
 CC="$OPTION_CC"
 CFLAGS="$OPTION_CFLAGS
-  -std=c99 $GCCMACHDEP -g3 -O2 -fno-builtin -fno-merge-constants
+  -std=c99 $GCCMACHDEP -g3 -fno-builtin -fno-merge-constants
   -Wall \
   -Wno-long-long \
   -Wno-attributes \
@@ -496,6 +495,12 @@ CFLAGS="$OPTION_CFLAGS
   -Wno-implicit-function-declaration \
   -Wno-empty-body"
 
+if test -z "$OPTION_DEBUG_MACRO"; then
+  CFLAGS="-O2 $CFLAGS"
+else
+  CFLAGS="-O0 $CFLAGS"
+fi
+
 # Disable extra warning for clang
 if [ "`basename $CC`" = 'clang' ]; then
   CFLAGS="-Wno-unknown-warning-option \
@@ -546,7 +551,7 @@ if [ -n "$OPTION_INSTRUMENT" ]; then
     $FRAMAC \
     $FRAMAC_FLAGS \
     $MACHDEP \
-    -cpp-extra-args="$OPTION_FRAMAC_CPP_EXTRA" \
+    -cpp-extra-args="$FRAMAC_CPP_EXTRA" \
     -e-acsl-share=$EACSL_SHARE \
     $OPTION_FRAMA_STDLIB \
     $OPTION_VERBOSE \
-- 
GitLab