summaryrefslogtreecommitdiffstats
path: root/mkspecs/common/gcc-base-mac.conf
Commit message (Collapse)AuthorAgeFilesLines
* MinGW: reuse gcc-base.conf and g++-base.confEric Lemanissier2016-11-291-0/+2
| | | | | | | | | it allows using optimize_full, ltcg and sanitizers Change-Id: I3ccf8257145c7d8800c2ebe98c5ac5adcec0dc9d Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Fix warning about headerpad_max_install_names ignored when using bitcodeJake Petroules2016-08-311-2/+1
| | | | | | | | Actually enables headerpad_max_install_names in the darwin-g++ mkspec as previously it was (presumably accidentally) cleared. Change-Id: I4b2e5a0dcf38658cfe35bc0e5f24769c80f4d877 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* Distinguish between Objective-C and Objective-C++ sourcesTor Arne Vestbø2015-10-091-8/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of lumping both Objective-C (.m) and Objective-C++ (.mm) sources into the same pile, passing them on to the same compiler as for C++ (CXX), with the C++ flags (CXXFLAGS), we follow Apple's lead and treat them as variants of the C and C++ languages separately, so that Objective-C sources are built with CC and with CFLAGS, and Objective-C++ sources with CXX, and CXXFLAGS. This lets us remove a lot of duplicated flags and definitions from the QMAKE_OBJECTIVE_CFLAGS variable, which in 99% of the cases just matched the C++ equivalent. The remaining Objective-C/C++ flags are added to CFLAGS/CXXFLAGS, as the compiler will just ignore them when running in C/C++ mode. This matches Xcode, which also doesn't have a separate build setting for Objective-C/C++ flags. The Makefile qmake generator has been rewritten to support Objective-C/C++ fully, by not assuming that we're just iterating over the C and C++ extensions when dealing with compilation rules, precompiled headers, etc. There's some duplicated logic in this code, as inherent by qmake's already duplicated code paths, but this can be cleaned up when C++11 support is mandatory and we can use lambda functions. Task-number: QTBUG-36575 Change-Id: I4f06576d5f49e939333a2e03d965da54119e5e31 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
* Add __APPLE_CC_ to QMAKE_COMPILER_DEFINES for moc.prfTor Arne Vestbø2015-03-041-1/+1
| | | | | | | | | Moc doesn't have the built in defines that clang has, so we need to hard-code some of these so that moc resolves the Q_OS_IOS define in the end, based on qsystemdetection.h and TargetConditionals.h Change-Id: Id9a7f870b940f99f27c55a2a887d0ce93217b821 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* make -force-debug-info work for objective COswald Buddenhagen2014-09-261-0/+1
| | | | | | Task-number: QTBUG-35776 Change-Id: Idb96108963e9330dd62c7878457c30bd74dc79a0 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Do not limit clang generated debug info to dwarf-2 on mac.Erik Verbruggen2014-01-211-4/+0
| | | | | | | | | | | Dwarf-2 is treated as deprecated (at best) by llvm, and does not support a lot of C++ language features. Most notably, it does not support namespaces and template parameters. By not specifying the dwarf version, the compiler can decide which version to use. Change-Id: Ic32f9101c4db0f06a8ace8f5e04af9236d01598e Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* Refer to Apple products by their actual names.Jake Petroules2013-07-101-1/+1
| | | | | | | This is a comment-only change. Change-Id: I2432b1135ef21d781c9486df06699710f2696ee3 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* Fix '=' alignment and replace tabs in *.conf (whitespace only change)Axel Waggershauser2013-03-271-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replace all tabs with proper space characters and consistently align the '=' characters. The default alignment for the '=' of 25 characters has been left as is to get a minimal diff. Lines with the '=' further to the right and those belonging to 'proper code (TM)' have not been touched. The work was mostly done using the following python script (might come in handy again...): import sys, re indent_eq = 25 + 0*4 # 25 characters was the most widely used indentation for the '=' character p = re.compile(r'(\w+)[ \t]*([\-\+]?)(=$|= )[ \t]*(.*$)') for fn in sys.argv[1:]: with open(fn, 'r+') as f: lines = [] nl_count = 0 continuity_indent = None for l in f: m = p.match(l) nl = l if m: n_spaces = max(m.start(3), indent_eq - 1) - len(m.group(2)) - len(m.group(1)) if m.group(2) and m.start(2) >= indent_eq-1 and m.start(2) % 4 == 0: n_spaces -= 1 # left-shift '+=' by one if the '+' is aligned to a multiple of 4 n_spaces = max(1, n_spaces) # we want at least one space before '='/'+=' nl = m.group(1) + ' '*n_spaces + ''.join(m.group(2,3,4)) + '\n' continuity_indent = nl.find('= ') + 2 if l[-2] == '\\' else None # remember indent on '\\$' elif continuity_indent: nl = ' '*continuity_indent + l.lstrip() if l[-2] != '\\': # check when to stop the continuation continuity_indent = None elif l.startswith('#'): nl = l.expandtabs(2) if l != nl: nl_count += 1 lines.append(nl) if nl_count > 0: print fn, nl_count, len(lines) f.seek(0) f.writelines(lines) f.truncate() Change-Id: I1d2870d0a2fe2e30d398c140fe523e69dd20c81b Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Rename gcc-base-macx.conf to gcc-base-mac.conf and use it for iOS as wellTor Arne Vestbø2013-03-051-0/+34
The only difference between the two is that iOS append @executable_path/ to QMAKE_LFLAGS_SONAME, but since shared libraries are not supported on iOS anyways, this is not really something we have to care about. Change-Id: I4797a4dfb94d9b3af03af22618351b98b48f8255 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>