summaryrefslogtreecommitdiffstats
path: root/src/corelib/global/qsystemdetection.h
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote-tracking branch 'origin/5.6' into devLiang Qi2015-09-251-1/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/io/io.pri src/corelib/io/qdatastream.cpp src/corelib/io/qdatastream.h src/network/socket/qabstractsocket.cpp src/plugins/platforminputcontexts/ibus/qibusplatforminputcontext.cpp src/plugins/platforms/cocoa/qcocoaaccessibilityelement.h src/widgets/styles/qgtkstyle.cpp tests/auto/corelib/mimetypes/qmimedatabase/qmimedatabase-cache/qmimedatabase-cache.pro tests/auto/corelib/mimetypes/qmimedatabase/qmimedatabase-xml/qmimedatabase-xml.pro tests/auto/dbus/qdbusconnection/qdbusconnection.pro tests/auto/dbus/qdbuspendingcall/tst_qdbuspendingcall.cpp tests/auto/network/access/qnetworkreply/tst_qnetworkreply.cpp Change-Id: I347549a024eb5bfa986699e0a11f96cc55c797a7
| * Use the proper macro to detect the compiler as part of the NDKAleix Pol2015-09-151-1/+1
| | | | | | | | | | | | | | | | | | | | The correct macros can be easily checked by running: .../arm-linux-androideabi-gcc -E -dM - < /dev/null | grep -i ANDR Otherwise we're just relying on the user to set up explicitly the toolchain to target Android Change-Id: I7b68521f43031c13da99b07626360d0702bff4ca Reviewed-by: BogDan Vatra <bogdan@kde.org>
* | Introduce Q_OS macros for watchOS and tvOS.Jake Petroules2015-09-151-9/+19
| | | | | | | | | | | | | | | | As a useful side effect, watchOS and tvOS won't be detected as iOS, leading to another confusing Q_OS_MAC situation. Change-Id: I00fc0c7088dbc091c4638b6937a7b378d7569cec Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@theqtcompany.com>
* | Deprecate Q_OS_MAC.Jake Petroules2015-09-151-18/+27
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Justification: intuition indicates that Q_OS_MAC refers to OS X. Reality indicates it refers to OS X, iOS, watchOS, and tvOS. Technical correctness requires that it match reality. Backwards compatibility dictates it can't be changed anyways. Conclusion: an extremely confusing macro that no one knows how to use properly. When Q_OS_MACX was repurposed for OS X (and later, Q_OS_OSX introduced), Q_OS_MAC was kept around to allow differentation between Q_OS_DARWIN (the grandfather OS of everything - OS X, iOS, watchOS, tvOS, and theoretically "open source Darwin derivative"). However, given that every attempt at a non-Apple Darwin based operating system has failed and sees virtually no interest at scale, this distinction is not useful in Qt for the confusion it causes in return, especially considering that there are several cases in Qt where Q_OS_MAC should be Q_OS_DARWIN or vice versa, and sometimes the correct macro is not even entirely clear. Therefore, Q_OS_MAC can be deprecated. In the extremely unlikely case that differentiation between Darwin core, and commercial Darwin-based operating systems from Apple is required, I suggest introducing Q_OS_APPLE (a superset of Q_OS_DARWIN, and subset of Q_OS_OSX, Q_OS_IOS, Q_OS_WATCHOS, and Q_OS_TVOS). Until it is needed, Darwin, OS X, iOS, watchOS, and tvOS defines should be perfectly sufficient for every real-world use case. Change-Id: Id6df8c1102010b61cfe001ed41a76809bc166863 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@theqtcompany.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
* Update for the newest Darwin-family operating systems.Jake Petroules2015-06-101-0/+21
| | | | | | | Change-Id: I5ea44a720e01e388a8d219a89c5b0ccd8fd23146 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com> Reviewed-by: Liang Qi <liang.qi@theqtcompany.com> Reviewed-by: Jani Heikkinen <jani.heikkinen@theqtcompany.com>
* qsystemdetection.h: Check existence of define WINAPI_FAMILY_PHONE_APP.Friedemann Kleint2015-04-221-1/+1
| | | | | | | | | | It is missing in MinGW and causes warnings like: src/corelib/global/qsystemdetection.h:109:24: error: "WINAPI_FAMILY_PHONE_APP" is not defined [-Werror=undef] in QtScript and headersclean failures in Active Qt. Task-number: QTBUG-45666 Change-Id: I167d9d5b33faddfbbcf44bdcce5e86fb43614fa9 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Update copyright headersJani Heikkinen2015-02-111-7/+7
| | | | | | | | | | | | | | | | | | Qt copyrights are now in The Qt Company, so we could update the source code headers accordingly. In the same go we should also fix the links to point to qt.io. Outdated header.LGPL removed (use header.LGPL21 instead) Old header.LGPL3 renamed to header.LGPL3-COMM to match actual licensing combination. New header.LGPL-COMM taken in the use file which were using old header.LGPL3 (src/plugins/platforms/android/extract.cpp) Added new header.LGPL3 containing Commercial + LGPLv3 + GPLv2 license combination Change-Id: I6f49b819a8a20cc4f88b794a8f6726d975e8ffbe Reviewed-by: Matti Paaso <matti.paaso@theqtcompany.com>
* Haiku: Make corelib compile on HaikuTobias Koenig2015-01-101-0/+3
| | | | | Change-Id: I66bc492390eedd723ab7866d3c7a38539d708727 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* Update license headers and add new license filesMatti Paaso2014-09-241-19/+11
| | | | | | | | | - Renamed LICENSE.LGPL to LICENSE.LGPLv21 - Added LICENSE.LGPLv3 - Removed LICENSE.GPL Change-Id: Iec3406e3eb3f133be549092015cefe33d259a3f2 Reviewed-by: Iikka Eklund <iikka.eklund@digia.com>
* Update for the newest Darwin-family operating systems.Jake Petroules2014-06-031-0/+12
| | | | | Change-Id: Ieca4b3841d0d652b5e9b819209f883773c2e7c74 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Don't define MAC_OS_X_VERSION_MIN_REQUIRED on iOSTor Arne Vestbø2014-01-061-7/+10
| | | | | | | | | | Lack of the define is commonly used (and recommended by Apple) as a way to distinguish iOS from OS X. Task-number: QTBUG-35888 Change-Id: I5f3327e001c0af630984fbfde780d9b0c3e30754 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com> Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
* WinRT: Basic global supportAndrew Knight2013-09-201-2/+12
| | | | | | | | Various global changes, primarily preprocessor flow, to support the WinRT platform. Change-Id: I3fa9cf91d5fb24019362e88fcf205e31b4f810b5 Reviewed-by: Andrew Knight <andrew.knight@digia.com>
* Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-08-141-9/+16
|\ | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: configure mkspecs/macx-xcode/Info.plist.app mkspecs/macx-xcode/Info.plist.lib qmake/doc/qmake.qdocconf src/corelib/global/qglobal.h tests/auto/other/exceptionsafety/exceptionsafety.pro tests/auto/widgets/widgets/qcombobox/tst_qcombobox.cpp Change-Id: I3c769a4a82dc2e99a12c69123fbf17613fd2ac2a
| * Remove OS X unsupported warning.Jake Petroules2013-08-101-4/+0
| | | | | | | | | | | | | | No other platform has such a warning and it really is not important. Change-Id: Ib85a536b6fcf9d7f15cd8b0779db7f6cfaec339a Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
| * Add support for Q_OS_FREEBSD_KERNEL and documentThiago Macieira2013-07-301-5/+16
| | | | | | | | | | | | | | | | | | | | Also clarify documentation for OSes with variants. Q_OS_ANDROID should have been called Q_OS_LINUX_ANDROID and Q_OS_BLACKBERRY should have been Q_OS_QNX_BLACKBERRY. Task-number: QTBUG-15402 Change-Id: I3a34d52a1c0ebb8eb73284bdf198443c209a5fd4 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* | Add Q_OS_OSX and update the documentation to reflect usage intent.Jake Petroules2013-07-041-5/+6
|/ | | | | | Change-Id: I7f089109d7357995b65f6a012f705a6c3cac12ff Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com> Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Update for the newest Darwin-family operating systems.Jake Petroules2013-06-251-1/+10
| | | | | Change-Id: Ib90296e35f8aa8d63692cf03ba9ffcb94a1a7687 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* Repurpose the former Q_OS_MAC synonym "Q_OS_MACX" to mean "OS X".Jake Petroules2013-05-091-3/+5
| | | | | | | | | | | | | | The equivalent was done earlier for qmake, and this will enable developers writing OS X-specific code to use #ifdef Q_OS_MACX as opposed to overly verbose #if defined(Q_OS_MAC) && !defined(Q_OS_IOS). The sole usage of Q_OS_MACX within qtbase has been changed to the now appropriate value and documentation has been updated. Change-Id: I2c59eea02e94b691b705170b2f96a97940fdc756 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Introducing the Qt Android portPaul Olav Tvete2013-03-051-0/+4
| | | | | | | | | | | | | | | | | | | | | Based on the Necessitas project by Bogdan Vatra. Contributors to the Qt5 project: BogDan Vatra <bogdan@kde.org> Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com> hjk <hjk121@nokiamail.com> Oswald Buddenhagen <oswald.buddenhagen@digia.com> Paul Olav Tvete <paul.tvete@digia.com> Robin Burchell <robin+qt@viroteck.net> Samuel Rødal <samuel.rodal@digia.com> Yoann Lopes <yoann.lopes@digia.com> The full history of the Qt5 port can be found in refs/old-heads/android, SHA-1 249ca9ca2c7d876b91b31df9434dde47f9065d0d Change-Id: Iff1a7b2dbb707c986f2639e65e39ed8f22430120 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* iOS: Add potentially undefined version defines to qsystemdetection.hTor Arne Vestbø2013-02-271-0/+16
| | | | | | | | | Unless we're building on the 6.1 SDK some of the version defines will not be defined in Availability.h, so we define them ourselves so that Qt can still use them. Change-Id: Ibb45e9f8f4e888fc57e35286bf15d2fee2c1a217 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* iOS: Move Q_OS_IOS out of makesespec to qsystemdetection.hTor Arne Vestbø2013-02-261-0/+6
| | | | | | | | | We treat iOS as a variant of Mac OS, so for iOS both Q_OS_MAC and Q_OS_IOS will be defined. This matches what Apple assumes in the header file TargetConditionals.h Change-Id: I55cc851401b748297478e4c32e84e0f6e1fdfc28 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Start using Availability.h over AvailabilityMacros.h on Mac OSTor Arne Vestbø2013-02-181-13/+16
| | | | | | | | | | | | | | | | | | | The former was introduced with Mac OS 10.6 and can also be used for checking iOS versions, so it's preferable. We still include the old availability header, and use it in various places in Qt, and so does the Mac OS frameworks, so there's no need to phase it out, but for new platform checks we want to use the updated macros of the form: #if __MAC_OS_X_VERSION_MAX_ALLOWED > __MAC_10_7 Ideally you should not use the named version macro, and use 1070 instead, in case you build against an SDK that does not define the named version yet, but we take care of defining these in qsystemdetection.h for convenience. Change-Id: I9cfa72e37816583f28ff9643793f111e155b7789 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Don't override OS X deployment target unconditionally in qsystemdetection.hTor Arne Vestbø2013-02-181-4/+5
| | | | | | | | | | | | | | AvailabilityMacros.h will pick up the MACOSX_DEPLOYMENT_TARGET environment variable, as well as the -mmacosx-min-version= command line flag, and set the MAC_OS_X_VERSION_MIN_REQUIRED based on that. By setting the define before including AvailabilityMacros.h we essentially skipped that whole logic and always set it to 10.6. Only in the case where there's no deployment target specified on the command line do we want to ensure that it's at least 10.6 Change-Id: Ic558ff4deb77937ea805b048d83949815b273bcc Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Remove ifdefs for supporting Mac OS <= 10.5Tor Arne Vestbø2013-02-181-1/+1
| | | | | | | | Qt5 requires Mac OS 10.6, so we can remove checks such as if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6 Change-Id: Iea21727a277291148704ecf9677ed0b68c24920f Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Update copyright year in Digia's license headersSergio Ahumada2013-01-181-1/+1
| | | | | Change-Id: Ic804938fc352291d011800d21e549c10acac66fb Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Change copyrights from Nokia to DigiaIikka Eklund2012-09-221-24/+24
| | | | | | | | Change copyrights and license headers from Nokia to Digia Change-Id: If1cc974286d29fd01ec6c19dd4719a67f4c3f00e Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
* Ensure that qXXXdetection.h can be included directlyThiago Macieira2012-04-211-0/+4
| | | | | | | | | Those files might have dependency on one another, on qconfig.h and on early qglobal.h definitions, so ensure that the only correct include order is that of qglobal.h. Change-Id: I89098bacaf16353ee8b51604ee885508dc8e201a Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
* Add Mac OS 10.8 define.Morten Sorvig2012-03-301-1/+4
| | | | | | Change-Id: Ief687d3d6188b11c39d9ac4879928b35d8b467d0 Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Make syncqt ignore qsystemdetection.h and qcompilerdetection.hBradley T. Hughes2012-02-071-14/+0
| | | | | | | | | | Remove the #if 0'd blocks and instead add these headers to sync.profile's @ignore_for_include_check, as documented at http://wiki.qt-project.org/Creating_a_new_module_or_tool_for_Qt#other_fields Change-Id: I3bd6e8cb21eca139fdca10fe970eeaf2e4e77c24 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* Move operating system detection from qglobal.h to a separate headerBradley T. Hughes2012-02-061-0/+222
qsystemdetection.h is included from qglobal.h, and does all Q_OS_* detection A side-effect of this change is that QT_BEGIN_HEADER and QT_END_HEADER started being defined on Mac OS X, which ends up breaking the build in some cases. Since QT_BEGIN_HEADER and QT_END_HEADER have been defined to nothing in the past, even on Mac OS X, change these 2 to be unconditionally defined to nothing. Change-Id: Ibc8a0aa2207664741c25627d7621e006c2ce80d3 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>