diff options
author | Liang Qi <liang.qi@qt.io> | 2017-02-24 19:57:17 +0100 |
---|---|---|
committer | Liang Qi <liang.qi@qt.io> | 2017-02-24 20:01:42 +0100 |
commit | de49839df8abfba1f3ed3c36ef3177e4a9d6ef00 (patch) | |
tree | 71e777ca1e33c58edd9149821e970495ef4b75b2 /mkspecs | |
parent | e6234535929c67e7fbfa1ad7ce88f37df0b68d45 (diff) | |
parent | 4d3781b640e8fb0a04e96b2d05199247556b8d86 (diff) |
Merge remote-tracking branch 'origin/5.8' into 5.9
Conflicts:
mkspecs/features/moc.prf
Change-Id: Ia71c8e3b3185f7c999bf226d0675051b10b8740b
Diffstat (limited to 'mkspecs')
-rw-r--r-- | mkspecs/features/data/configure.json | 5 | ||||
-rw-r--r-- | mkspecs/features/moc.prf | 2 | ||||
-rw-r--r-- | mkspecs/features/qmake_use.prf | 22 | ||||
-rw-r--r-- | mkspecs/features/qt_configure.prf | 282 | ||||
-rw-r--r-- | mkspecs/features/qt_helper_lib.prf | 1 | ||||
-rw-r--r-- | mkspecs/features/qt_module_pris.prf | 2 | ||||
-rw-r--r-- | mkspecs/linux-icc/qmake.conf | 2 | ||||
-rw-r--r-- | mkspecs/macx-icc/qmake.conf | 4 |
8 files changed, 252 insertions, 68 deletions
diff --git a/mkspecs/features/data/configure.json b/mkspecs/features/data/configure.json index 98ccde1ee3..38623d46a4 100644 --- a/mkspecs/features/data/configure.json +++ b/mkspecs/features/data/configure.json @@ -12,7 +12,10 @@ "recheck": { "type": "void", "name": "cache_use", "value": "positive" }, "recheck-all": { "type": "void", "name": "cache_use", "value": "none" }, - "redo": { "type": "redo" } + "redo": { "type": "redo" }, + + "list-features": "void", + "list-libraries": "void" } } } diff --git a/mkspecs/features/moc.prf b/mkspecs/features/moc.prf index 9719241612..15eb38af31 100644 --- a/mkspecs/features/moc.prf +++ b/mkspecs/features/moc.prf @@ -27,7 +27,7 @@ win32:count(MOC_INCLUDEPATH, 40, >) { # QNX's compiler sets "gcc" config, but does not support the -dM option; # UIKit builds are always multi-arch due to simulator_and_device (unless # -sdk is used) so this feature cannot possibly work. -if(gcc|intel_icl|msvc):!rim_qcc:!uikit:if(!macos|count(QMAKE_APPLE_DEVICE_ARCHS, 1)) { +if(gcc|intel_icl|msvc):!rim_qcc:!uikit:!no_moc_predefs:if(!macos|count(QMAKE_APPLE_DEVICE_ARCHS, 1)) { moc_predefs.name = "Generate moc_predefs.h" moc_predefs.CONFIG = no_link gcc: moc_predefs.commands = $$QMAKE_CXX $$QMAKE_CXXFLAGS -dM -E -o ${QMAKE_FILE_OUT} ${QMAKE_FILE_IN} diff --git a/mkspecs/features/qmake_use.prf b/mkspecs/features/qmake_use.prf index 9b6c67ccc2..f81d1cece4 100644 --- a/mkspecs/features/qmake_use.prf +++ b/mkspecs/features/qmake_use.prf @@ -5,25 +5,19 @@ for(ever) { use = $$split(use, /) name = $$take_first(use) nu = $$upper($$name) - debug: \ - libs = $$eval(QMAKE_LIBS_$${nu}_DEBUG) - else: \ - libs = $$eval(QMAKE_LIBS_$${nu}_RELEASE) - libs += $$eval(QMAKE_LIBS_$$nu) - libdir = $$eval(QMAKE_LIBDIR_$$nu) - defines = $$eval(QMAKE_DEFINES_$${nu}) - includes = $$eval(QMAKE_INCDIR_$${nu}) - - isEmpty(libs):isEmpty(defines):isEmpty(includes): \ + !defined(QMAKE_LIBS_$$nu, var): \ error("Library '$$name' is not defined.") !contains(use, nolink) { - QMAKE_LIBDIR += $$libdir - LIBS$${suffix} += $$libs + QMAKE_LIBDIR += $$eval(QMAKE_LIBDIR_$$nu) + debug: \ + LIBS$${suffix} += $$eval(QMAKE_LIBS_$${nu}_DEBUG) $$eval(QMAKE_LIBS_$$nu) + else: \ + LIBS$${suffix} += $$eval(QMAKE_LIBS_$${nu}_RELEASE) $$eval(QMAKE_LIBS_$$nu) } !contains(use, linkonly) { - DEFINES += $$defines - INCLUDEPATH += $$includes + DEFINES += $$eval(QMAKE_DEFINES_$${nu}) + INCLUDEPATH += $$eval(QMAKE_INCDIR_$${nu}) } } !isEmpty(suffix): break() diff --git a/mkspecs/features/qt_configure.prf b/mkspecs/features/qt_configure.prf index 78731595b0..e2e1a5a762 100644 --- a/mkspecs/features/qt_configure.prf +++ b/mkspecs/features/qt_configure.prf @@ -401,6 +401,7 @@ defineReplace(qtConfPrepareArgs) { } defineTest(qtConfSetupLibraries) { + asspfx = $${currentConfig}.commandline.assignments for (l, $${currentConfig}.libraries._KEYS_) { lpfx = $${currentConfig}.libraries.$${l} # 'export' may be omitted, in which case it falls back to the library's name @@ -408,6 +409,15 @@ defineTest(qtConfSetupLibraries) { $${lpfx}.export = $$l export($${lpfx}.export) } + # 'export' may also be empty, but we need a derived identifier + alias = $$eval($${lpfx}.export) + isEmpty(alias): alias = $$l + $${lpfx}.alias = $$alias + export($${lpfx}.alias) + # make it easy to refer to the library by its export name. + $${currentConfig}.exports._KEYS_ += $$alias + $${currentConfig}.exports.$$alias += $$l + export($${currentConfig}.exports.$$alias) isEmpty($${lpfx}.sources._KEYS_): \ error("Library $$l defines no sources") for (s, $${lpfx}.sources._KEYS_) { @@ -427,10 +437,33 @@ defineTest(qtConfSetupLibraries) { } } } + $${currentConfig}.exports._KEYS_ = $$unique($${currentConfig}.exports._KEYS_) + export($${currentConfig}.exports._KEYS_) + + for (alias, $${currentConfig}.exports._KEYS_) { + ua = $$upper($$alias) + $${asspfx}._KEYS_ += \ + $${ua}_PREFIX $${ua}_INCDIR $${ua}_LIBDIR \ + $${ua}_LIBS $${ua}_LIBS_DEBUG $${ua}_LIBS_RELEASE + uapfx = $${asspfx}.$${ua} + $${uapfx}_PREFIX = $${alias}.prefix + $${uapfx}_INCDIR = $${alias}.incdir + $${uapfx}_LIBDIR = $${alias}.libdir + $${uapfx}_LIBS = $${alias}.libs + $${uapfx}_LIBS_DEBUG = $${alias}.libs.debug + $${uapfx}_LIBS_RELEASE = $${alias}.libs.release + export($${uapfx}_PREFIX) + export($${uapfx}_INCDIR) + export($${uapfx}_LIBDIR) + export($${uapfx}_LIBS) + export($${uapfx}_LIBS_DEBUG) + export($${uapfx}_LIBS_RELEASE) + } + export($${asspfx}._KEYS_) # reverse mapping for assignments on command line. - for (a, $${currentConfig}.commandline.assignments._KEYS_) { - apfx = $${currentConfig}.commandline.assignments.$${a} + for (a, $${asspfx}._KEYS_) { + apfx = $${asspfx}.$${a} ra = config.commandline.rev_assignments.$$eval($$apfx) $$ra = $$a export($$ra) @@ -444,9 +477,13 @@ defineTest(qtConfLibrary_inline) { !defined($${1}.libs, var): \ error("'inline' source in library '$$lib' does not specify 'libs'.") + # if multiple libraries provide the same export, it makes sense + # to make them recognize the same input variables. + input = $$eval($${2}.alias) + # direct libs. overwrites inline libs. - defined(config.input.$${lib}.libs, var) { - $${1}.libs = $$eval(config.input.$${lib}.libs) + defined(config.input.$${input}.libs, var) { + $${1}.libs = $$eval(config.input.$${input}.libs) export($${1}.libs) } @@ -455,7 +492,7 @@ defineTest(qtConfLibrary_inline) { any = false all = true for (b, $${1}.builds._KEYS_) { - iv = $${lib}.libs.$${b} + iv = $${input}.libs.$${b} vars += $$eval(config.commandline.rev_assignments.$${iv}) defined(config.input.$${iv}, var) { $${1}.builds.$${b}.libs = $$eval(config.input.$${iv}) @@ -471,7 +508,7 @@ defineTest(qtConfLibrary_inline) { } # prefix. prepends to (possibly overwritten) inline libs. - prefix = $$val_escape(config.input.$${lib}.prefix) + prefix = $$val_escape(config.input.$${input}.prefix) !isEmpty(prefix) { $${1}.includedir = $$prefix/include export($${1}.includedir) @@ -479,6 +516,18 @@ defineTest(qtConfLibrary_inline) { export($${1}.libs) } + incdir = $$val_escape(config.input.$${input}.incdir) + !isEmpty(incdir) { + $${1}.includedir = $$incdir + export($${1}.includedir) + } + + libdir = $$val_escape(config.input.$${input}.libdir) + !isEmpty(libdir) { + $${1}.libs = "-L$$libdir $$eval($${1}.libs)" + export($${1}.libs) + } + return(true) } @@ -562,14 +611,20 @@ defineReplace(qtConfLibraryArgs) { } defineTest(qtConfExportLibrary) { - isEmpty(2): return() - !$$qtConfEvaluate($$eval($${1}.export)): return() + lpfx = $${currentConfig}.libraries.$$1 + alias = $$eval($${lpfx}.alias) + $${currentConfig}.found.$$alias = $$1 + export($${currentConfig}.found.$$alias) + name = $$eval($${lpfx}.export) + isEmpty(name): return() + spfx = $${lpfx}.sources.$$eval($${lpfx}.source) + !$$qtConfEvaluate($$eval($${spfx}.export)): return() output = privatePro - eval(libs = $$eval($${1}.libs)) - eval(cflags = $$eval($${1}.cflags)) - eval(includes = $$eval($${1}.includedir)) + eval(libs = $$eval($${spfx}.libs)) + eval(cflags = $$eval($${spfx}.cflags)) + eval(includes = $$eval($${spfx}.includedir)) # Split $$cflags into stuff that goes into DEFINES, INCLUDEPATH, and other stuff. defines = @@ -588,30 +643,46 @@ defineTest(qtConfExportLibrary) { } } !isEmpty(ignored): \ - qtConfAddNote("Dropped compiler flags '$$ignored' when detecting library '$$2'.") + qtConfAddNote("Dropped compiler flags '$$ignored' when detecting library '$$name'.") - NAME = $$upper($$2) - !isEmpty(libs): qtConfOutputVar(assign, $$output, QMAKE_LIBS_$$NAME, $$libs) - for (b, $${1}.builds._KEYS_): \ + NAME = $$upper($$name) + # LIBS is emitted even if empty, as this allows the library to be "seen". + qtConfOutputVar(assign, $$output, QMAKE_LIBS_$$NAME, $$libs) + for (b, $${spfx}.builds._KEYS_): \ qtConfOutputVar(assign, $$output, QMAKE_LIBS_$${NAME}_$$upper($$b), \ - $$eval($${1}.builds.$${b})) + $$eval($${spfx}.builds.$${b})) !isEmpty(defines): qtConfOutputVar(assign, $$output, QMAKE_DEFINES_$$NAME, $$defines) !isEmpty(includes): qtConfOutputVar(assign, $$output, QMAKE_INCDIR_$$NAME, $$includes) !isEmpty($${currentConfig}.module): \ - qtConfExtendVar($$output, "QT.$${currentModule}_private.libraries", $$2) + qtConfExtendVar($$output, "QT.$${currentModule}_private.libraries", $$name) } defineTest(qtConfHandleLibrary) { lpfx = $${currentConfig}.libraries.$$1 defined($${lpfx}.result, var): return() + alias = $$eval($${lpfx}.alias) + !isEmpty($${currentConfig}.found.$$alias) { + # this happening indicates a logic error in the conditions + # of the feature(s) referring to this library. + # note that this does not look across module boundaries, as + # multiple modules may know the same libraries; de-duplication + # happens via the cache (obviously, this assumes identical + # definitions and logic). + error("A library exporting '$$alias' was already found.") + } + qtConfEnsureTestTypeDeps("library") - qtConfTestPrepare_compile($$lpfx) + !qtConfTestPrepare_compile($$lpfx) { + $${lpfx}.result = false + export($${lpfx}.result) + return() + } use_args = $$eval($${lpfx}.literal_args) qtConfLoadResult($${lpfx}, $$1) { $$eval($${lpfx}.result): \ - qtConfExportLibrary($${lpfx}.sources.$$eval($${lpfx}.source), $$eval($${lpfx}.export)) + qtConfExportLibrary($$1) return() } @@ -634,14 +705,14 @@ defineTest(qtConfHandleLibrary) { next() } - !$${call}($$spfx) { + !$${call}($$spfx, $$lpfx) { qtLog(" => source produced no result.") next() } # if the library defines a test, use it to verify the source. !isEmpty($${lpfx}.test) { - $${lpfx}.literal_args = $$use_args $$qtConfLibraryArgs($$spfx) + $${lpfx}.literal_args = $$qtConfLibraryArgs($$spfx) $$use_args $${lpfx}.host = $$eval($${spfx}.host) !qtConfTest_compile($$lpfx) { qtLog(" => source failed verification.") @@ -657,11 +728,12 @@ defineTest(qtConfHandleLibrary) { for (b, $${spfx}.builds._KEYS_): \ $${lpfx}.cache += sources.$${s}.builds.$${b} - # immediately output the library as well. - qtConfExportLibrary($${spfx}, $$eval($${lpfx}.export)) - $${lpfx}.source = $$s export($${lpfx}.source) + + # immediately output the library as well. + qtConfExportLibrary($$1) + result = true break() } @@ -679,27 +751,76 @@ defineTest(qtConfTest_library) { } defineTest(qtConfTestPrepare_compile) { - for (u, $$list($$eval($${1}.use))) { + !isEmpty($${1}.use._KEYS_) { + uses = + for (k, $${1}.use._KEYS_) { + use = $$eval($${1}.use.$${k}.lib) + isEmpty(use): \ + error("'use' entry $$k in test $$1 lacks 'lib' field.") + !$$qtConfEvaluate($$eval($${1}.use.$${k}.condition)): \ + next() + uses += $$use + } + } else { + uses = $$split($${1}.use) + } + for (u, uses) { libConfig = - contains($${currentConfig}.libraries._KEYS_, $$u) { - libConfig = $${currentConfig} + exports = $$eval($${currentConfig}.exports.$$u) + !isEmpty(exports) { + # using a local library by exported name. + ru = $$eval($${currentConfig}.found.$$u) + !isEmpty(ru) { + # if it was already found, all is good. + u = $$ru + } else: count(exports, 1) { + # otherwise, if there is only one option, ensure it's resolved. + u = $$exports + qtConfHandleLibrary($$u) + } else { + # otherwise, verify that all options were resolved. + for (x, exports) { + isEmpty($${currentConfig}.libraries.$${x}.result) { + # the higher-level logic is in the features, which we cannot + # infer from here. so the only option is failing. + error("Test $$1 refers to yet unresolved library export '$$u'") + } + } + return(false) + } + libConfig = $$currentConfig + } else: contains($${currentConfig}.libraries._KEYS_, $$u) { + # using a local library by real name. this should be the exception. qtConfHandleLibrary($$u) + libConfig = $$currentConfig } else { - for (d, QMAKE_CONFIG_DEPS) { - contains($${d}.libraries._KEYS_, $$u) { - libConfig = $$d - break() + for (d, QMAKE_LIBRARY_DEPS) { + exports = $$eval($${d}.exports.$$u) + !isEmpty(exports) { + # using a foreign library by exported name. + # foreign libraries may be external (if they are from a different + # repository and the build is modular), and using these by real + # name is impossible. so for consistency, uses by real name are + # limited to local libraries. + ru = $$eval($${d}.found.$$u) + !isEmpty(ru) { + u = $$ru + libConfig = $$d + break() + } + for (x, exports) { + isEmpty($${d}.libraries.$${x}.result): \ + error("Test $$1 refers to unresolved library export '$$u' in '$$d'") + } + return(false) } } } isEmpty(libConfig) { nu = $$upper($$u) - libs = $$eval(QMAKE_LIBS_$$nu) $$eval(QMAKE_LIBS_$${nu}_DEBUG) $$eval(QMAKE_LIBS_$${nu}_RELEASE) - defines = $$eval(QMAKE_DEFINES_$${nu}) - includes = $$eval(QMAKE_INCDIR_$${nu}) - - isEmpty(libs):isEmpty(defines):isEmpty(includes): \ + !defined(QMAKE_LIBS_$$nu, var): \ error("Test $$1 tries to use undeclared library '$$u'") + # using an external library by exported name. $${1}.literal_args += $$system_quote(QMAKE_USE += $$u) } else { lpfx = $${libConfig}.libraries.$${u} @@ -1252,14 +1373,14 @@ defineTest(qtConfProcessFeatures) { # reporting # -QT_CONF_REPORT_PADDING = "........................................" - -defineTest(qtConfReportPadded) { - pad = $$num_add($$str_size($$QT_CONF_REPORT_PADDING), -$$str_size($${1})) +defineReplace(qtConfPadCols) { + pad = $$num_add($$str_size($$2), -$$str_size($${1})) lessThan(pad, 0): pad = 0 - str = "$$1 $$str_member($$QT_CONF_REPORT_PADDING, 0, $$pad)" + return("$$1 $$str_member($$2, 0, $$pad) $$3") +} - qtConfAddReport("$$str $${2}") +defineTest(qtConfReportPadded) { + qtConfAddReport($$qtConfPadCols($$1, "........................................", $$2)) } defineReplace(qtConfCollectFeatures) { @@ -1749,8 +1870,6 @@ for(ever) { jsonFile = $$thisDir/configure.json priFile = $$thisDir/configure.pri - allConfigs += $$currentConfig - # load configuration data configure_data = $$cat($$jsonFile, blob) !parseJson(configure_data, $$currentConfig): \ @@ -1758,25 +1877,88 @@ for(ever) { exists($$priFile): \ !include($$priFile): error() + # only configs which contain more than just subconfigs are saved for later. + $${currentConfig}._KEYS_ -= subconfigs + !isEmpty($${currentConfig}._KEYS_) { + allConfigs += $$currentConfig + contains($${currentConfig}._KEYS_, libraries) { + qtConfSetupLibraries() + # this ensures that references in QMAKE_LIBRARY_DEPS are unique. + qtConfSetModuleName() + ex = $$eval(config.modules.$${currentModule}) + !isEmpty(ex): \ + error("Module $$currentModule is claimed by both $$currentConfig and $${ex}.") + config.modules.$${currentModule} = $$currentConfig + } + } + # prepend all subconfigs to files to keep a depth first search order subconfigs = for(n, $${currentConfig}.subconfigs._KEYS_) { subconfig = $$eval($${currentConfig}.subconfigs.$${n}) name = $$basename(subconfig) + ex = $$eval(config.$${name}.dir) + !isEmpty(ex): \ + error("Basename clash between $$thisDir/$$subconfig and $${ex}.") config.$${name}.dir = $$thisDir/$$subconfig subconfigs += $$name } configsToProcess = $$subconfigs $$configsToProcess } -for (currentConfig, allConfigs): \ - qtConfSetupLibraries() - QMAKE_SAVED_ARGS = $$QMAKE_EXTRA_ARGS QMAKE_REDO_CONFIG = false qtConfParseCommandLine() qtConfCheckErrors() +!isEmpty(config.input.list-features) { + all_ft = + for (currentConfig, allConfigs) { + for (k, $${currentConfig}.features._KEYS_) { + pp = $$eval($${currentConfig}.features.$${k}.purpose) + !isEmpty(pp) { + all_ft += $$qtConfPadCols($$k, ".......................", \ + $$section(pp, $$escape_expand(\\n), 0, 0)) + } + } + } + all_ft = $$sorted(all_ft) + logn() + for (ft, all_ft): \ + logn($$ft) + error() +} + +!isEmpty(config.input.list-libraries) { + logn() + for (currentConfig, allConfigs) { + !isEmpty($${currentConfig}.exports._KEYS_) { + !isEmpty($${currentConfig}.module): \ + logn($$eval($${currentConfig}.module):) + else: \ + logn($$section(currentConfig, ., -1):) + all_xp = + for (xport, $${currentConfig}.exports._KEYS_) { + libs = $$eval($${currentConfig}.exports.$$xport) + isEqual($${currentConfig}.libraries.$$first(libs).export, "") { # not isEmpty()! + !isEmpty(config.input.verbose): \ + all_xp += "$$xport!" + } else { + out = "$$xport" + !isEmpty(config.input.verbose):!isEqual(xport, $$libs): \ + out += "($$libs)" + all_xp += "$$out" + } + } + all_xp = $$sorted(all_xp) + all_xp ~= s,^([^!]*)!$,(\\1),g + for (xp, all_xp): \ + logn(" $$xp") + } + } + error() +} + for (currentConfig, allConfigs) { qtConfSetModuleName() qtConfSetupModuleOutputs() @@ -1833,11 +2015,15 @@ for (currentConfig, allConfigs) { # correctly setup dependencies QMAKE_CONFIG_DEPS = global global_private + QMAKE_LIBRARY_DEPS = $$eval(config.modules.global) !isEmpty($${currentConfig}.module) { for (d, $${currentConfig}.depends._KEYS_) { dep = $$replace($${currentConfig}.depends.$$d, -private$, _private) - dep *= $$replace(dep, _private$, ) + gdep = $$replace(dep, _private$, ) + dep *= $$gdep QMAKE_CONFIG_DEPS += $$dep + !isEqual(gdep, $$dep): \ # libraries are in the private module. + QMAKE_LIBRARY_DEPS += $$eval(config.modules.$$gdep) } } diff --git a/mkspecs/features/qt_helper_lib.prf b/mkspecs/features/qt_helper_lib.prf index 99ba0c6877..b3e49e4626 100644 --- a/mkspecs/features/qt_helper_lib.prf +++ b/mkspecs/features/qt_helper_lib.prf @@ -42,6 +42,7 @@ THE_TARGET = $$qt5LibraryTarget($$TARGET) darwin: MODULE_DEBUG_LIBS = -L$$DESTDIR -l$${TARGET}_debug MODULE_RELEASE_LIBS = -L$$DESTDIR -l$$TARGET MODULE_PRI_CONT += \ + "QMAKE_LIBS_$${ucmodule} =" \ # Needed for the module to be recognized. "QMAKE_LIBS_$${ucmodule}_DEBUG = $$val_escape(MODULE_DEBUG_LIBS)" \ "QMAKE_LIBS_$${ucmodule}_RELEASE = $$val_escape(MODULE_RELEASE_LIBS)" } else { diff --git a/mkspecs/features/qt_module_pris.prf b/mkspecs/features/qt_module_pris.prf index 77bedb1d7f..72d676da6f 100644 --- a/mkspecs/features/qt_module_pris.prf +++ b/mkspecs/features/qt_module_pris.prf @@ -59,7 +59,7 @@ defineReplace(qtExportLibsForModule) { QMAKE_LIBS_$$NAME QMAKE_LIBS_$${NAME}_DEBUG QMAKE_LIBS_$${NAME}_RELEASE \ QMAKE_DEFINES_$$NAME QMAKE_INCDIR_$$NAME for (var, vars) { - !isEmpty($$var): \ + defined($$var, var): \ result += "$$var = $$val_escape($$var)" } } diff --git a/mkspecs/linux-icc/qmake.conf b/mkspecs/linux-icc/qmake.conf index 4822d2a0e0..196e33432c 100644 --- a/mkspecs/linux-icc/qmake.conf +++ b/mkspecs/linux-icc/qmake.conf @@ -16,7 +16,7 @@ QMAKE_CFLAGS_APP = -fPIC QMAKE_CFLAGS_DEPS = -M QMAKE_CFLAGS_WARN_ON = -w1 -Wall -Wcheck -wd1572,873,2259,2261,3373 QMAKE_CFLAGS_WARN_OFF = -w -QMAKE_CFLAGS_RELEASE = -O2 -ansi-alias -fstrict-aliasing +QMAKE_CFLAGS_RELEASE = -O2 QMAKE_CFLAGS_DEBUG = -O0 -g QMAKE_CFLAGS_SHLIB = -fPIC QMAKE_CFLAGS_STATIC_LIB = $$QMAKE_CFLAGS_SHLIB diff --git a/mkspecs/macx-icc/qmake.conf b/mkspecs/macx-icc/qmake.conf index 533f9cd86d..bb454377ef 100644 --- a/mkspecs/macx-icc/qmake.conf +++ b/mkspecs/macx-icc/qmake.conf @@ -16,8 +16,8 @@ QMAKE_CFLAGS = QMAKE_CFLAGS_DEPS = -M QMAKE_CFLAGS_WARN_ON = -w1 -Wcheck -wd654,1572,411,873,1125,2259,2261,3280,3373 QMAKE_CFLAGS_WARN_OFF = -w -QMAKE_CFLAGS_RELEASE = -QMAKE_CFLAGS_DEBUG = -g +QMAKE_CFLAGS_RELEASE = -O2 +QMAKE_CFLAGS_DEBUG = -g -O0 QMAKE_CFLAGS_SHLIB = -fPIC QMAKE_CFLAGS_STATIC_LIB = $$QMAKE_CFLAGS_SHLIB QMAKE_CFLAGS_YACC = -Wno-unused -Wno-parentheses |