Make possible disable Address Sanitizer.

--HG--
branch : develop
This commit is contained in:
Roman Telezhynskyi 2015-05-11 10:10:25 +03:00
parent c73b2f51e1
commit c1980cc7aa
10 changed files with 118 additions and 74 deletions

View File

@ -168,8 +168,7 @@ GCC_DEBUG_CXXFLAGS += \
-Wstrict-overflow=5 \ -Wstrict-overflow=5 \
-Wundef \ -Wundef \
-Wno-unused \ -Wno-unused \
-ftrapv \ -ftrapv
-fsanitize=address #gccs 4.8.0 Address Sanitizer
# Usefull Clang warnings keys. # Usefull Clang warnings keys.
CLANG_DEBUG_CXXFLAGS += \ CLANG_DEBUG_CXXFLAGS += \

View File

@ -81,17 +81,22 @@ CONFIG(debug, debug|release){
unix { unix {
#Turn on compilers warnings. #Turn on compilers warnings.
*-g++{ *-g++{
QMAKE_CXXFLAGS += \ QMAKE_CXXFLAGS += \
# Key -isystem disable checking errors in system headers. # Key -isystem disable checking errors in system headers.
-isystem "$${OUT_PWD}/$${UI_DIR}" \ -isystem "$${OUT_PWD}/$${UI_DIR}" \
-isystem "$${OUT_PWD}/$${MOC_DIR}" \ -isystem "$${OUT_PWD}/$${MOC_DIR}" \
-isystem "$${OUT_PWD}/$${RCC_DIR}" \ -isystem "$${OUT_PWD}/$${RCC_DIR}" \
$$GCC_DEBUG_CXXFLAGS # See Valentina.pri for more details. $$GCC_DEBUG_CXXFLAGS # See Valentina.pri for more details.
#gccs 4.8.0 Address Sanitizer noAddressSanitizer{
#http://blog.qt.digia.com/blog/2013/04/17/using-gccs-4-8-0-address-sanitizer-with-qt/ # do nothing
QMAKE_CFLAGS+=-fsanitize=address -fno-omit-frame-pointer } else {
QMAKE_LFLAGS+=-fsanitize=address #gccs 4.8.0 Address Sanitizer
#http://blog.qt.digia.com/blog/2013/04/17/using-gccs-4-8-0-address-sanitizer-with-qt/
QMAKE_CXXFLAGS += -fsanitize=address -fno-omit-frame-pointer
QMAKE_CFLAGS += -fsanitize=address -fno-omit-frame-pointer
QMAKE_LFLAGS += -fsanitize=address
}
} }
clang*{ clang*{
QMAKE_CXXFLAGS += \ QMAKE_CXXFLAGS += \

View File

@ -59,15 +59,20 @@ CONFIG(debug, debug|release){
unix { unix {
#Turn on compilers warnings. #Turn on compilers warnings.
*-g++{ *-g++{
QMAKE_CXXFLAGS += \ QMAKE_CXXFLAGS += \
# Key -isystem disable checking errors in system headers. # Key -isystem disable checking errors in system headers.
-isystem "$${OUT_PWD}/$${MOC_DIR}" \ -isystem "$${OUT_PWD}/$${MOC_DIR}" \
$$GCC_DEBUG_CXXFLAGS # See Valentina.pri for more details. $$GCC_DEBUG_CXXFLAGS # See Valentina.pri for more details.
#gccs 4.8.0 Address Sanitizer noAddressSanitizer{
#http://blog.qt.digia.com/blog/2013/04/17/using-gccs-4-8-0-address-sanitizer-with-qt/ # do nothing
QMAKE_CFLAGS+=-fsanitize=address -fno-omit-frame-pointer } else {
QMAKE_LFLAGS+=-fsanitize=address #gccs 4.8.0 Address Sanitizer
#http://blog.qt.digia.com/blog/2013/04/17/using-gccs-4-8-0-address-sanitizer-with-qt/
QMAKE_CXXFLAGS += -fsanitize=address -fno-omit-frame-pointer
QMAKE_CFLAGS += -fsanitize=address -fno-omit-frame-pointer
QMAKE_LFLAGS += -fsanitize=address
}
} }
clang*{ clang*{
QMAKE_CXXFLAGS += \ QMAKE_CXXFLAGS += \

View File

@ -70,15 +70,20 @@ CONFIG(debug, debug|release){
unix { unix {
#Turn on compilers warnings. #Turn on compilers warnings.
*-g++{ *-g++{
QMAKE_CXXFLAGS += \ QMAKE_CXXFLAGS += \
# Key -isystem disable checking errors in system headers. # Key -isystem disable checking errors in system headers.
-isystem "$${OUT_PWD}/$${MOC_DIR}" \ -isystem "$${OUT_PWD}/$${MOC_DIR}" \
$$GCC_DEBUG_CXXFLAGS # See Valentina.pri for more details. $$GCC_DEBUG_CXXFLAGS # See Valentina.pri for more details.
#gccs 4.8.0 Address Sanitizer noAddressSanitizer{
#http://blog.qt.digia.com/blog/2013/04/17/using-gccs-4-8-0-address-sanitizer-with-qt/ # do nothing
QMAKE_CFLAGS+=-fsanitize=address -fno-omit-frame-pointer } else {
QMAKE_LFLAGS+=-fsanitize=address #gccs 4.8.0 Address Sanitizer
#http://blog.qt.digia.com/blog/2013/04/17/using-gccs-4-8-0-address-sanitizer-with-qt/
QMAKE_CXXFLAGS += -fsanitize=address -fno-omit-frame-pointer
QMAKE_CFLAGS += -fsanitize=address -fno-omit-frame-pointer
QMAKE_LFLAGS += -fsanitize=address
}
} }
clang*{ clang*{
QMAKE_CXXFLAGS += \ QMAKE_CXXFLAGS += \

View File

@ -49,15 +49,20 @@ CONFIG(debug, debug|release){
unix { unix {
#Turn on compilers warnings. #Turn on compilers warnings.
*-g++{ *-g++{
QMAKE_CXXFLAGS += \ QMAKE_CXXFLAGS += \
# Key -isystem disable checking errors in system headers. # Key -isystem disable checking errors in system headers.
-isystem "$${OUT_PWD}/$${MOC_DIR}" \ -isystem "$${OUT_PWD}/$${MOC_DIR}" \
$$GCC_DEBUG_CXXFLAGS # See Valentina.pri for more details. $$GCC_DEBUG_CXXFLAGS # See Valentina.pri for more details.
#gccs 4.8.0 Address Sanitizer noAddressSanitizer{
#http://blog.qt.digia.com/blog/2013/04/17/using-gccs-4-8-0-address-sanitizer-with-qt/ # do nothing
QMAKE_CFLAGS+=-fsanitize=address -fno-omit-frame-pointer } else {
QMAKE_LFLAGS+=-fsanitize=address #gccs 4.8.0 Address Sanitizer
#http://blog.qt.digia.com/blog/2013/04/17/using-gccs-4-8-0-address-sanitizer-with-qt/
QMAKE_CXXFLAGS += -fsanitize=address -fno-omit-frame-pointer
QMAKE_CFLAGS += -fsanitize=address -fno-omit-frame-pointer
QMAKE_LFLAGS += -fsanitize=address
}
} }
clang*{ clang*{
QMAKE_CXXFLAGS += \ QMAKE_CXXFLAGS += \

View File

@ -51,15 +51,20 @@ CONFIG(debug, debug|release){
unix { unix {
#Turn on compilers warnings. #Turn on compilers warnings.
*-g++{ *-g++{
QMAKE_CXXFLAGS += \ QMAKE_CXXFLAGS += \
# Key -isystem disable checking errors in system headers. # Key -isystem disable checking errors in system headers.
-isystem "$${OUT_PWD}/$${MOC_DIR}" \ -isystem "$${OUT_PWD}/$${MOC_DIR}" \
$$GCC_DEBUG_CXXFLAGS # See Valentina.pri for more details. $$GCC_DEBUG_CXXFLAGS # See Valentina.pri for more details.
#gccs 4.8.0 Address Sanitizer noAddressSanitizer{
#http://blog.qt.digia.com/blog/2013/04/17/using-gccs-4-8-0-address-sanitizer-with-qt/ # do nothing
QMAKE_CFLAGS+=-fsanitize=address -fno-omit-frame-pointer } else {
QMAKE_LFLAGS+=-fsanitize=address #gccs 4.8.0 Address Sanitizer
#http://blog.qt.digia.com/blog/2013/04/17/using-gccs-4-8-0-address-sanitizer-with-qt/
QMAKE_CXXFLAGS += -fsanitize=address -fno-omit-frame-pointer
QMAKE_CFLAGS += -fsanitize=address -fno-omit-frame-pointer
QMAKE_LFLAGS += -fsanitize=address
}
} }
clang*{ clang*{
QMAKE_CXXFLAGS += \ QMAKE_CXXFLAGS += \

View File

@ -49,15 +49,20 @@ CONFIG(debug, debug|release){
unix { unix {
#Turn on compilers warnings. #Turn on compilers warnings.
*-g++{ *-g++{
QMAKE_CXXFLAGS += \ QMAKE_CXXFLAGS += \
# Key -isystem disable checking errors in system headers. # Key -isystem disable checking errors in system headers.
-isystem "$${OUT_PWD}/$${MOC_DIR}" \ -isystem "$${OUT_PWD}/$${MOC_DIR}" \
$$GCC_DEBUG_CXXFLAGS # See Valentina.pri for more details. $$GCC_DEBUG_CXXFLAGS # See Valentina.pri for more details.
#gccs 4.8.0 Address Sanitizer noAddressSanitizer{
#http://blog.qt.digia.com/blog/2013/04/17/using-gccs-4-8-0-address-sanitizer-with-qt/ # do nothing
QMAKE_CFLAGS+=-fsanitize=address -fno-omit-frame-pointer } else {
QMAKE_LFLAGS+=-fsanitize=address #gccs 4.8.0 Address Sanitizer
#http://blog.qt.digia.com/blog/2013/04/17/using-gccs-4-8-0-address-sanitizer-with-qt/
QMAKE_CXXFLAGS += -fsanitize=address -fno-omit-frame-pointer
QMAKE_CFLAGS += -fsanitize=address -fno-omit-frame-pointer
QMAKE_LFLAGS += -fsanitize=address
}
} }
clang*{ clang*{
QMAKE_CXXFLAGS += \ QMAKE_CXXFLAGS += \

View File

@ -68,20 +68,25 @@ CONFIG(debug, debug|release){
unix { unix {
#Turn on compilers warnings. #Turn on compilers warnings.
*-g++{ *-g++{
QMAKE_CXXFLAGS += \ QMAKE_CXXFLAGS += \
-isystem "$${OUT_PWD}/$${MOC_DIR}" \ -isystem "$${OUT_PWD}/$${MOC_DIR}" \
# Key -isystem disable checking errors in system headers. # Key -isystem disable checking errors in system headers.
$$GCC_DEBUG_CXXFLAGS \ # See Valentina.pri for more details. $$GCC_DEBUG_CXXFLAGS \ # See Valentina.pri for more details.
# -isystem key works only for headers. In some cases it's not enough. But we can't delete this warnings and # -isystem key works only for headers. In some cases it's not enough. But we can't delete this warnings and
# want them in global list. Compromise decision delete them from local list. # want them in global list. Compromise decision delete them from local list.
QMAKE_CXXFLAGS -= \ QMAKE_CXXFLAGS -= \
-Wswitch-default -Wswitch-default
#gccs 4.8.0 Address Sanitizer noAddressSanitizer{
#http://blog.qt.digia.com/blog/2013/04/17/using-gccs-4-8-0-address-sanitizer-with-qt/ # do nothing
QMAKE_CFLAGS+=-fsanitize=address -fno-omit-frame-pointer } else {
QMAKE_LFLAGS+=-fsanitize=address #gccs 4.8.0 Address Sanitizer
#http://blog.qt.digia.com/blog/2013/04/17/using-gccs-4-8-0-address-sanitizer-with-qt/
QMAKE_CXXFLAGS += -fsanitize=address -fno-omit-frame-pointer
QMAKE_CFLAGS += -fsanitize=address -fno-omit-frame-pointer
QMAKE_LFLAGS += -fsanitize=address
}
} }
clang*{ clang*{

View File

@ -51,13 +51,18 @@ CONFIG(debug, debug|release){
unix { unix {
#Turn on compilers warnings. #Turn on compilers warnings.
*-g++{ *-g++{
QMAKE_CXXFLAGS += \ QMAKE_CXXFLAGS += \
$$GCC_DEBUG_CXXFLAGS # See Valentina.pri for more details. $$GCC_DEBUG_CXXFLAGS # See Valentina.pri for more details.
#gccs 4.8.0 Address Sanitizer noAddressSanitizer{
#http://blog.qt.digia.com/blog/2013/04/17/using-gccs-4-8-0-address-sanitizer-with-qt/ # do nothing
QMAKE_CFLAGS+=-fsanitize=address -fno-omit-frame-pointer } else {
QMAKE_LFLAGS+=-fsanitize=address #gccs 4.8.0 Address Sanitizer
#http://blog.qt.digia.com/blog/2013/04/17/using-gccs-4-8-0-address-sanitizer-with-qt/
QMAKE_CXXFLAGS += -fsanitize=address -fno-omit-frame-pointer
QMAKE_CFLAGS += -fsanitize=address -fno-omit-frame-pointer
QMAKE_LFLAGS += -fsanitize=address
}
} }
clang*{ clang*{
QMAKE_CXXFLAGS += \ QMAKE_CXXFLAGS += \

View File

@ -58,10 +58,15 @@ CONFIG(debug, debug|release){
-isystem "$${OUT_PWD}/$${RCC_DIR}" \ -isystem "$${OUT_PWD}/$${RCC_DIR}" \
$$GCC_DEBUG_CXXFLAGS # See Valentina.pri for more details. $$GCC_DEBUG_CXXFLAGS # See Valentina.pri for more details.
#gccs 4.8.0 Address Sanitizer noAddressSanitizer{
#http://blog.qt.digia.com/blog/2013/04/17/using-gccs-4-8-0-address-sanitizer-with-qt/ # do nothing
QMAKE_CFLAGS+=-fsanitize=address -fno-omit-frame-pointer } else {
QMAKE_LFLAGS+=-fsanitize=address #gccs 4.8.0 Address Sanitizer
#http://blog.qt.digia.com/blog/2013/04/17/using-gccs-4-8-0-address-sanitizer-with-qt/
QMAKE_CXXFLAGS += -fsanitize=address -fno-omit-frame-pointer
QMAKE_CFLAGS += -fsanitize=address -fno-omit-frame-pointer
QMAKE_LFLAGS += -fsanitize=address
}
} }
clang*{ clang*{
QMAKE_CXXFLAGS += \ QMAKE_CXXFLAGS += \