diff --git a/Valentina.pri b/Valentina.pri index a45483bcc..7db3548de 100644 --- a/Valentina.pri +++ b/Valentina.pri @@ -145,12 +145,13 @@ GCC_DEBUG_CXXFLAGS += \ -Wstrict-overflow=5 \ -Wundef \ -Wno-unused \ - -ftrapv + -ftrapv \ + -fsanitize=address #gcc’s 4.8.0 Address Sanitizer # Usefull Clang warnings keys. CLANG_DEBUG_CXXFLAGS += \ -O0 \ # Turn off oprimization. - $$ISYSTEM \ # Ignore warnings Qt headers. + $$ISYSTEM \ # Ignore warnings in Qt headers. # Last gdb doesn't show debug symbols with Qt Creator (issue with Python 3 and debug scripts that use Python 2.7). # Solution to use older version gdb, that's why we use old standard of debug information. -gdwarf-3 \ diff --git a/src/app/app.pro b/src/app/app.pro index 177f47d79..d4520737e 100644 --- a/src/app/app.pro +++ b/src/app/app.pro @@ -82,6 +82,11 @@ CONFIG(debug, debug|release){ -isystem "$${OUT_PWD}/$${MOC_DIR}" \ -isystem "$${OUT_PWD}/$${RCC_DIR}" \ $$GCC_DEBUG_CXXFLAGS # See Valentina.pri for more details. + + #gcc’s 4.8.0 Address Sanitizer + #http://blog.qt.digia.com/blog/2013/04/17/using-gccs-4-8-0-address-sanitizer-with-qt/ + QMAKE_CFLAGS+=-fsanitize=address -fno-omit-frame-pointer + QMAKE_LFLAGS+=-fsanitize=address } clang*{ QMAKE_CXXFLAGS += \ diff --git a/src/libs/ifc/ifc.pro b/src/libs/ifc/ifc.pro index 411f569c5..721b84034 100644 --- a/src/libs/ifc/ifc.pro +++ b/src/libs/ifc/ifc.pro @@ -58,6 +58,11 @@ CONFIG(debug, debug|release){ # Key -isystem disable checking errors in system headers. -isystem "$${OUT_PWD}/$${MOC_DIR}" \ $$GCC_DEBUG_CXXFLAGS # See Valentina.pri for more details. + + #gcc’s 4.8.0 Address Sanitizer + #http://blog.qt.digia.com/blog/2013/04/17/using-gccs-4-8-0-address-sanitizer-with-qt/ + QMAKE_CFLAGS+=-fsanitize=address -fno-omit-frame-pointer + QMAKE_LFLAGS+=-fsanitize=address } clang*{ QMAKE_CXXFLAGS += \ diff --git a/src/libs/qmuparser/qmuparser.pro b/src/libs/qmuparser/qmuparser.pro index 8f63b8347..1c1e32709 100644 --- a/src/libs/qmuparser/qmuparser.pro +++ b/src/libs/qmuparser/qmuparser.pro @@ -65,6 +65,11 @@ CONFIG(debug, debug|release){ # Key -isystem disable checking errors in system headers. -isystem "$${OUT_PWD}/$${MOC_DIR}" \ $$GCC_DEBUG_CXXFLAGS # See Valentina.pri for more details. + + #gcc’s 4.8.0 Address Sanitizer + #http://blog.qt.digia.com/blog/2013/04/17/using-gccs-4-8-0-address-sanitizer-with-qt/ + QMAKE_CFLAGS+=-fsanitize=address -fno-omit-frame-pointer + QMAKE_LFLAGS+=-fsanitize=address } clang*{ QMAKE_CXXFLAGS += \ diff --git a/src/libs/vobj/vobj.pro b/src/libs/vobj/vobj.pro index 44f8d37ad..8e08053b3 100644 --- a/src/libs/vobj/vobj.pro +++ b/src/libs/vobj/vobj.pro @@ -48,6 +48,11 @@ CONFIG(debug, debug|release){ # Key -isystem disable checking errors in system headers. -isystem "$${OUT_PWD}/$${MOC_DIR}" \ $$GCC_DEBUG_CXXFLAGS # See Valentina.pri for more details. + + #gcc’s 4.8.0 Address Sanitizer + #http://blog.qt.digia.com/blog/2013/04/17/using-gccs-4-8-0-address-sanitizer-with-qt/ + QMAKE_CFLAGS+=-fsanitize=address -fno-omit-frame-pointer + QMAKE_LFLAGS+=-fsanitize=address } clang*{ QMAKE_CXXFLAGS += \ diff --git a/src/libs/vpropertyexplorer/vpropertyexplorer.pro b/src/libs/vpropertyexplorer/vpropertyexplorer.pro index 64de63e2a..ab891e859 100644 --- a/src/libs/vpropertyexplorer/vpropertyexplorer.pro +++ b/src/libs/vpropertyexplorer/vpropertyexplorer.pro @@ -63,6 +63,11 @@ CONFIG(debug, debug|release){ # Key -isystem disable checking errors in system headers. -isystem "$${OUT_PWD}/$${MOC_DIR}" \ $$GCC_DEBUG_CXXFLAGS # See Valentina.pri for more details. + + #gcc’s 4.8.0 Address Sanitizer + #http://blog.qt.digia.com/blog/2013/04/17/using-gccs-4-8-0-address-sanitizer-with-qt/ + QMAKE_CFLAGS+=-fsanitize=address -fno-omit-frame-pointer + QMAKE_LFLAGS+=-fsanitize=address } clang*{ QMAKE_CXXFLAGS += \ diff --git a/src/test/ParserTest/ParserTest.pro b/src/test/ParserTest/ParserTest.pro index 7417bf98b..7a6b30b4e 100644 --- a/src/test/ParserTest/ParserTest.pro +++ b/src/test/ParserTest/ParserTest.pro @@ -53,6 +53,11 @@ CONFIG(debug, debug|release){ *-g++{ QMAKE_CXXFLAGS += \ $$GCC_DEBUG_CXXFLAGS # See Valentina.pri for more details. + + #gcc’s 4.8.0 Address Sanitizer + #http://blog.qt.digia.com/blog/2013/04/17/using-gccs-4-8-0-address-sanitizer-with-qt/ + QMAKE_CFLAGS+=-fsanitize=address -fno-omit-frame-pointer + QMAKE_LFLAGS+=-fsanitize=address } clang*{ QMAKE_CXXFLAGS += \