@ -29,7 +29,9 @@ contains(RELEASE, 1) {
! win32 : ! macx {
! win32 : ! macx {
# Linux : static link
# Linux : static link
LIBS += - Wl , - Bstatic
LIBS += - Wl , - Bstatic - Wl , - z , relro - Wl , - z , now
# for extra security ( see : https : // wiki . debian . org / Hardening )
QMAKE_CXXFLAGS *= - D_FORTIFY_SOURCE = 2
}
}
}
}
@ -37,11 +39,9 @@ contains(RELEASE, 1) {
# for extra security against potential buffer overflows : enable GCCs Stack Smashing Protection
# for extra security against potential buffer overflows : enable GCCs Stack Smashing Protection
QMAKE_CXXFLAGS *= - fstack - protector - all
QMAKE_CXXFLAGS *= - fstack - protector - all
QMAKE_LFLAGS *= - fstack - protector - all
QMAKE_LFLAGS *= - fstack - protector - all
# We need to exclude this for Windows cross compile with MinGW 4.2 . x , as it will result in a non - working executable !
# Exclude on Windows cross compile with MinGW 4.2 . x , as it will result in a non - working executable !
# This can be enabled for Windows , when we switch to MinGW >= 4.4 . x .
# This can be enabled for Windows , when we switch to MinGW >= 4.4 . x .
}
}
# for extra security ( see : https : // wiki . debian . org / Hardening )
QMAKE_CXXFLAGS *= - D_FORTIFY_SOURCE = 2 - Wl , - z , relro - Wl , - z , now
# for extra security on Windows : enable ASLR and DEP via GCC linker flags
# for extra security on Windows : enable ASLR and DEP via GCC linker flags
win32 : QMAKE_LFLAGS *= - Wl , -- dynamicbase - Wl , -- nxcompat
win32 : QMAKE_LFLAGS *= - Wl , -- dynamicbase - Wl , -- nxcompat
# on Windows : enable GCC large address aware linker flag
# on Windows : enable GCC large address aware linker flag