diff options
Diffstat (limited to 'mkspecs')
-rw-r--r-- | mkspecs/common/gcc-base.conf | 2 | ||||
-rw-r--r-- | mkspecs/features/qt.prf | 7 | ||||
-rw-r--r-- | mkspecs/features/unix/mno_extern_direct_access.prf | 2 |
3 files changed, 10 insertions, 1 deletions
diff --git a/mkspecs/common/gcc-base.conf b/mkspecs/common/gcc-base.conf index 1c27f34441..ae58326289 100644 --- a/mkspecs/common/gcc-base.conf +++ b/mkspecs/common/gcc-base.conf @@ -45,7 +45,7 @@ QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -g QMAKE_CFLAGS_DEBUG += -g QMAKE_CFLAGS_SHLIB += $$QMAKE_CFLAGS_PIC QMAKE_CFLAGS_STATIC_LIB += $$QMAKE_CFLAGS_PIC -QMAKE_CFLAGS_APP += $$QMAKE_CFLAGS_PIC +QMAKE_CFLAGS_APP += QMAKE_CFLAGS_YACC += -Wno-unused -Wno-parentheses QMAKE_CFLAGS_HIDESYMS += -fvisibility=hidden QMAKE_CFLAGS_EXCEPTIONS_OFF += -fno-exceptions diff --git a/mkspecs/features/qt.prf b/mkspecs/features/qt.prf index 6fb657e6f2..0e03027bc3 100644 --- a/mkspecs/features/qt.prf +++ b/mkspecs/features/qt.prf @@ -58,6 +58,13 @@ qaxserver { !force_import_plugins:!contains(TEMPLATE, ".*app"):!if(contains(TEMPLATE, ".*lib"):dll): \ CONFIG -= import_plugins +unix { + contains(QT_CONFIG, no_extern_direct_access): CONFIG += mno_extern_direct_access + else:contains(QT_CONFIG, reduce_relocations):!contains(TEMPLATE, .*lib): { + QMAKE_CFLAGS += $$QMAKE_CFLAGS_PIC + QMAKE_CXXFLAGS += $$QMAKE_CFLAGS_PIC + } +} # qmake variables cannot contain dashes, so normalize the names first CLEAN_QT = $$replace(QT, -private$, _private) diff --git a/mkspecs/features/unix/mno_extern_direct_access.prf b/mkspecs/features/unix/mno_extern_direct_access.prf new file mode 100644 index 0000000000..816e28bb43 --- /dev/null +++ b/mkspecs/features/unix/mno_extern_direct_access.prf @@ -0,0 +1,2 @@ +QMAKE_CFLAGS += -mno-direct-extern-access +QMAKE_CXXFLAGS += -mno-direct-extern-access |