summaryrefslogtreecommitdiffstats
path: root/mkspecs
Commit message (Collapse)AuthorAgeFilesLines
* WinRT: Refactor icon specification usageMaurice Kalinowski2015-01-139-6/+24
| | | | | | | | | | | | | | | | Naming for different logo sizes on WinRT has been varying in the past and evolved from using small/medium/large to some being explicit (71x71). Add new values introduced by 8.1 (310x150, 310x310,...) and clean up mixed usage. Detailed pixel versions overrule general specification and latter ones stay mostly for compatibility reasons. Still the preferred way is to use explicit pixel values. Task-number: QTBUG-43644 Change-Id: I9173ec2951a82e5eac9d8c9956bfb0bb4d1a2459 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
* Clean up ltcg.prf with variables, including a new static modeThiago Macieira2015-01-114-18/+35
| | | | | | | | | | By using the special "ar" and "ranlib" tools, the symbol table is made visible, so we don't need fat LTO binaries. Since we need to store the new tool names, we may as well clean up ltcg.prf with variable names for the fat mode too. Change-Id: I7e53af0c74a3d069313f38500b72538af1d61128 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* Let qmake find the number of processors onlineThiago Macieira2015-01-111-8/+2
| | | | | | | Instead of trying to load in ltcg.prf and cache the value. Change-Id: If485ff68fc6ff9d9cf7009cd72d5e702d0199c7f Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* MSVC: Disable compiler warning 4996 for debug buildsKai Koehne2015-01-091-1/+1
| | | | | | | | | | | | | | | | | | | | Move compiler warning 4996 from level 3 to 4. This is needed to avoid warnings about the use of C++ standard library functions like std::copy, which is used e.g. in qvector.h (since c6752c5aa19): 'std::copy': Function call with parameters that may be unsafe - this call relies on the caller to check that the passed values are correct. To disable this warning, use -D_SCL_SECURE_NO_WARNINGS. See documentation on how to use Visual C++ 'Checked Iterators' Because the warning has to be disabled before any standard C++ header is included one cannot just fix this locally in qvector.h. Change-Id: I929f1535656bca9f5beb7fd0d557178370c232c6 Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* Merge "Merge remote-tracking branch 'origin/5.4' into dev" into refs/staging/devSimon Hausmann2014-12-301-3/+0
|\
| * Merge remote-tracking branch 'origin/5.4' into devFrederik Gladhorn2014-12-291-3/+0
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/tools/qbytearray.cpp src/gui/kernel/qplatformsystemtrayicon.cpp src/gui/kernel/qplatformsystemtrayicon.h src/plugins/platforms/xcb/xcb-plugin.pro Change-Id: I00355d3908b678af8a61c38f9e814a63df808c79
| | * Use the GCC and Clang __builtin_bswap intrinsics in qbswapThiago Macieira2014-12-201-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Glibc will use the intrinsics for 32- and 64-bit, but didn't for 16-bit (probably because GCC didn't document it until version 4.8), so this commit will make us access the intrinsics directly the intrisincs for all type sizes. Additionally, this will get us access to the compiler intrisics even without Glibc, such as when building against uclibc or Bionic. Another benefit is that both Clang and ICC will use the MOVBE instruction on Atom and Haswell architectures. Change-Id: I39d1891f479887d719d69ebe4ac92ac9bfeda8af Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
* | | small improvements to the hurd-g++ mkspecPino Toscano2014-12-291-5/+10
|/ / | | | | | | | | | | | | | | | | | | | | - remove the X11R6 paths, since they were gone for years, and their lack may cause build issues with CMake config files - add empty QMAKE_*_XCB variables, as done in the common linux.conf - add to QMAKE_PLATFORM, not just reset it (just done in other mkspecs) - borrow QMAKE_LFLAGS_GCSECTIONS from the common linux.conf Change-Id: I94e05032f8195bbda73dffe1da02eec7ac679045 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Haiku: Add support for Haiku to build systemTobias Koenig2014-12-213-0/+106
| | | | | | | | | | | | | | | | Change-Id: I12afaeb53a7f35c3f02776d28dad96107f3c5819 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Augustin Cavalier <waddlesplash@gmail.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* | remove unsupported winrt mkspecsAndrew Knight2014-12-1616-348/+1
| | | | | | | | | | | | | | | | | | These mkspecs are not supported and no longer compile. Related support in qmake has also been removed. Change-Id: I7706dcfa5471e55e2ae3d580d65e9371e2c652d5 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com> Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
* | Add detection of and support for Visual Studio 2015Thiago Macieira2014-12-133-4/+61
| | | | | | | | | | | | | | | | | | | | | | | | | | Tested with the Preview release of November 2014. Differences to the 2013 detection and support: - Option -Zc:strictStrings is present in both debug and release mode and is passed to qmake's own build - New warnings 4456, 4457 and 4458 (shadowing) are disabled - Compiler supports -arch:AVX2 Change-Id: I9572ff4d4aded4004c1fa5d6f13ffee5462043d6 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | Create a common qmake configuration for all MSVC versionsThiago Macieira2014-12-136-444/+142
| | | | | | | | | | | | | | | | | | | | | | | | Most files are exactly the same, so it's silly to duplicate this all over. The differences could have been kept in each of the qmake.conf files, but I preferred to centralize because they apply to each newer version and, soon enough, version-specific configuration would grow again. Change-Id: I5c5ed58055c954acf4851d87c70cc5af49c98738 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | Remove mkspecs and detection of Visual Studio .NET 2003Thiago Macieira2014-12-132-210/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This compiler is no longer supported, as the mkspec was moved to unsupported/ on commit 55c3799bd32d6fd8ec4b5fa26ebe3e5fdbbc91b3, but the MSVC support in qmake and in configure depend on an exact string match. So remove the remaining bits. No changelog because the actual removal happened in an earlier Qt release. Change-Id: I538345f4184a6af2ea7449052c161afe4eac625c Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.4' into devSimon Hausmann2014-12-108-31/+45
|\| | | | | | | | | | | | | | | Conflicts: doc/global/template/style/online.css mkspecs/android-g++/qmake.conf Change-Id: Ib39ea7bd42f5ae12e82a3bc59a66787a16bdfc61
| * Make no_debug_info also strip out -gstabsAllan Sandfeld Jensen2014-12-051-4/+4
| | | | | | | | | | | | | | | | | | | | | | Since QtWebKit started using stabs on some platforms to reducing memory pressure during linking, the tricks to strip out debug-info in the internals no longer worked because no-debug-info doesn't strip the -gstabs compiler and linker flags. Change-Id: I151088f29058b8fe50cba9aa3ec8ecd84b85d7d8 Reviewed-by: Jocelyn Turcotte <jocelyn.turcotte@digia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
| * Android: Enable -fno-builtin-memmove in arm buildsEskil Abrahamsen Blomfeldt2014-12-051-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On some devices, a miscompilation of libc.so has caused it to return the wrong value. Instead of returning the dest pointer, it returns dest + n. When compiling with optimizations turned on, gcc may use this return value for subsequent accesses to dest after the memmove() call, causing memory corruption. This caused problems e.g. in QVector::prepend() which would overwrite the whole vector with the new value. Setting -fno-builtin-memmove disables the optimization and works around this bug with very little risk or impact. More information in: http://code.google.com/p/android/issues/detail?id=81692 [ChangeLog][Android] Fixed device-specific crash on Samsung Galaxy Tab 3 Lite 7" and some other devices. Task-number: QTBUG-34984 Change-Id: I0c1347149eb5fe1c298758fe7de81aca4137f652 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
| * iOS: Use DISTCLEAN_DEPS instead of custom distclean targetTor Arne Vestbø2014-12-021-2/+1
| | | | | | | | | | Change-Id: I1fb6dc4c9ef3623f58a9c8412499df7b9f9ff9bf Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
| * Fix linking of sources without LTCG to a static lib with LTCGThiago Macieira2014-12-014-17/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Whenever a binary is created and linked against a static lib that was compiled with LTCG, the final linking step requires the compiler flags so that the pre-compiled data in the shared library can get properly compiled. This could happen for a static build of Qt with LTCG, but also happens frequently for Qt's own build when linking regular libraries and applications against QtBootstrap or QtPlatformSupport. The linking fails when the target is a shared library (example: QtWaylandClient linking against QtPlatformSupport). The .prl file actually contains the "ltcg" flag, so the best solution would actually be to process that flag there and add link_ltcg if any dependent .prl has "ltcg", but I couldn't find out how to do that. Change-Id: I4a75a14d1dcb8c2089a427285e25d5555df7d7d3 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
| * Make sure plugins under LTCG get the right flags too.Thiago Macieira2014-12-011-0/+2
| | | | | | | | | | Change-Id: I51384b4c3ceca25b6e010ccf67fa0f1995cfa557 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
| * Decouple caching of iOS/OSX SDK path and version in sdk.prfTor Arne Vestbø2014-12-011-1/+5
| | | | | | | | | | | | | | | | | | Combining them could lead to intermediate builds having cached the path, but not the version, resulting in later version checks failing. Change-Id: Ia10f4268ce7b9e82c81627970236d68c00b80391 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@theqtcompany.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
| * macx-ios-clang: only provide default LaunchScreen.xib if using Xcode 6Richard Moe Gustavsen2014-11-281-7/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If using an older version of Xcode, Xcode will sometimes complain that LaunchScreen.xib uses auto layout while the project at the same time has deployment target set to 5.0 (where auto layout is not supported). This is a bug in Xcode really, since LaunchScreen.xib will only be used when running on iOS 7 (otherwise a LaunchImage will be used). This has been fixed in Xcode 6. This patch adds a check for this early on. Change-Id: Ie612c25b413add23e15fc3cb4f9e30bb5292369d Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* | Pluginize the eglfs hooksLaszlo Agocs2014-12-081-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Following the principle of device integrations in QtWayland and soon xcb, a plugin interface is being introduced to gradually replace the statically compiled-in hooks. The interface is same as before for the time being, for compatibility with the existing device-specific hooks. QEglFSHooks is now just a dummy subclass for QEGLDeviceIntegration to support the legacy, compiled-in, device-specific hooks. When -device is not used with configure and so there is no hook active, the new plugin-based approach kicks in. The environment variable QT_QPA_EGLFS_INTEGRATION can be set to indicate the preferred integration name (e.g. eglfs_x11, eglfs_kms). It can also be set to "none", indicating that no plugins should be considered and the default, non-specialized integration is to be used. (this is for devices, like Beagleboard|bone, that do not need any special code to set up EGL) Device makespecs can set EGLFS_DEVICE_INTEGRATION. The value is then used as the default, preferred plugin name when QT_QPA_EGLFS_INTEGRATION is not set. In the future device makespecs are expected to set a plugin name instead of relying on the traditional EGLFS_PLATFORM_HOOKS_*. When neither the QT_QPA_EGLFS_INTEGRATION nor EGLFS_DEVICE_INTEGRATION are set, all plugins will be tried in an unspecified order. The first one that succeeds to load is used. If all fails or there are no plugins, the built-in, non-specialized integration is used. To debug what integration is being used, enable the logging category qt.qpa.egldeviceintegration. There is some built-in logic for desktop/Mesa based systems: Under X, eglfs_x11 is preferred, otherwise eglfs_kms is prioritized. This, assuming sufficient permissions to video and input devices, allows simply launching apps with -platform eglfs. No more editing of eglfs.pri. [ChangeLog][QtGui] Added support for device-specific backend plugins in eglfs. Change-Id: Ia2ddcddac014c25817171dc140cd8cf913784ac6 Reviewed-by: Louai Al-Khanji <louai.al-khanji@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.4' into devFrederik Gladhorn2014-11-2432-34/+188
|\| | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/io/qiodevice.cpp src/plugins/bearer/linux_common/qofonoservice_linux.cpp src/plugins/bearer/linux_common/qofonoservice_linux_p.h src/plugins/platforms/android/qandroidplatformtheme.cpp src/tools/bootstrap/bootstrap.pro src/widgets/styles/qmacstyle_mac.mm Change-Id: Ia02aab6c4598ce74e9c30bb4666d5e2ef000f99b
| * Work around ICC compatibility problem with Apple headersThiago Macieira2014-11-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Apple uses __OSX_AVAILABLE_STARTING in enum values too, which ICC doesn't like. We need to force at least OS X 10.9 so we don't run into build errors. FSEvents.h(279): error: expected a "}" kFSEventStreamCreateFlagMarkSelf __OSX_AVAILABLE_STARTING(__MAC_10_9, __IPHONE_7_0) = 0x00000020 ^ Intel issue ID: 6000071924 Change-Id: Iae1abb8e8e92f228571c5064d96e9d33d3e35173 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * Merge remote-tracking branch 'origin/5.4.0' into 5.4Frederik Gladhorn2014-11-2120-18/+117
| |\ | | | | | | | | | Change-Id: I95f235a66ce2e9b1fa435c0f911c6f7e811755f0
| | * iOS: Tell Xcode to not build universal app binaries for debug buildsTor Arne Vestbø2014-11-171-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | You're likely to only target/develop on one device at a time, so we only need to build for one architecture at a time. Switching device in Xcode will switch the active architecture as well, so the only case where you'll need a universal debug build is if you are creating a debug package for testers. Change-Id: I4f37f5c982082c42836749d1e9fbe5ef91138912 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@theqtcompany.com>
| | * Set CFBundleIdentifier prefix for Qt frameworksMorten Johan Sørvig2014-11-171-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This sets the prefix for frameworks to "org.qt-project". Applications keep using the default Xcode preferences prefix. Task-number: QTBUG-32896 Change-Id: I67384f643888f2de3dd8e36b9bce0f04ca4e16dd Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
| | * Revert "Build Qt for OS X and iOS with relative rpath"Morten Johan Sørvig2014-11-172-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The change was made too late in the 5.4.0 release cycle, and broke the Qt build and deployment in several areas: - macdeployqt - OS X 10.7 builds - shadow builds This reverts commit c0a54efc4091b365ffac09fc2827cf92f849d698. Change-Id: I1c1ad4901228f5516352ccdfa963e8ea2b5013b6 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com> Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com>
| | * rcc: Change two-pass feature from opt-out to opt-inhjk2014-11-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This makes the 'big-data' feature introduced and made mandatory with commit 5395180 opt-in trough CONFIG += resources_big. Since the feature has been introduced several setups have been found where the feature cannot be used, or not be used out-of-the-box. Using the traditional default behavior lowers the risk of further breakages. Change-Id: Ifd04204adadeec539e962d6a9a6955f63781bd36 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Fawzi Mohamed <fawzi.mohamed@theqtcompany.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com>
| | * iOS: Enable fat builds containing both armv7 and arm64 slicesTor Arne Vestbø2014-11-133-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Apple will from February 1, 2015, require all applications uploaded to the App Store to be built for both 32-bit (armv7/s) and 64-bit (arm64). https://developer.apple.com/news/?id=10202014a We enable fat Qt binaries by passing both -arch armv7 and -arch arm64 to clang, which takes care of lipoing together the two slices for each object file. This unfortunately means twice the build time and twice the binary size for our libraries. Since precompiled headers are architecture specific, and the -Xarch option can't be used with -include-pch, we need to disable precompiled headers globally. This can be improved in the future by switching to pretokenized headers (http://clang.llvm.org/docs/PTHInternals.html). Since we're enabling 64-bit ARM builds, we're also switching the simulator builds from i386 to fat i386 and x86_64 builds, so that we are able to test 64-bit builds using the simulator, but we're keeping i386 as the architecture Qt is aware of when it's building for simulator, as we need the CPU features to match the lowest common denominator. Change-Id: I277e60bddae549d24ca3c6301d842405180aded6 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
| | * iOS: Allow ARCHS to be specified at build time for multi-arch buildsTor Arne Vestbø2014-11-131-5/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Building all architectures of a multi-arch build during Qt development is in most cases not needed, so we expose a way to limit the archs we build by passing ARCHS="subset of archs" to make, similar to how you can pass ARCHS to xcodebuild. If the subset doesn't match any of the valid architectures for the target, it will fall back to the default architectures, so it's safe to pass eg. ARCHS="armv7 i386" to make, even if building for both simulator and device. The variable may also be exported to the environment for more persistent limits on which architectures to build. Change-Id: I47b10bc9d743f0301efff4181d6881ae140d557f Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
| | * iOS: Ensure that the rename-main logic works for multi-arch buildsTor Arne Vestbø2014-11-133-6/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We need to tell Xcode which architectures it should set up pre-link dependencies for, as well as run the rename script in the root object file directory. We pass it the current architectures so that we only rename main() for simulator or device, not both. Change-Id: I095d7c8a22ff0cb2ce872c9a86c93a070c1fcc65 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@digia.com>
| | * iOS: let qmake generate default LaunchScreen.xibRichard Moe Gustavsen2014-11-113-0/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | iOS8 will check if the app has a LaunchScreen.xib to determine if it supports iPhone6/6+ (scale factor and resolution). So we follow the same pattern as we do with the launch image for iPhone5, and generate a default LaunchScreen.xib. The xib file in this patch is a copy of a default file generated by a native Xcode project (with quotes escaped), but with the text label set to be $$TARGET. Change-Id: I163ab48b6f4edea4cc1f6840a1f3d8b3cc0326db Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
| | * Merge "Merge remote-tracking branch 'origin/5.4' into 5.4.0" into ↵Jani Heikkinen2014-11-114-3/+23
| | |\ | | | | | | | | | | | | refs/staging/5.4.0
| | | * Merge remote-tracking branch 'origin/5.4' into 5.4.0Oswald Buddenhagen2014-11-104-3/+23
| | | |\ | | | | | | | | | | | | | | | Change-Id: I85e3dfa62f217b76447276dd7cce6b9eac3a144e
| | * | | Add CFBundleIdentifier to the bundle Info.plist'sMorten Johan Sørvig2014-11-108-0/+16
| | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Refactor the current app CFBundleIdentifier support: handle frameworks as well. Add @BUNDLEIDENTIFIER@ placeholder to the OS X info.plist.lib templates. This means the Qt frameworks will now get a valid CFBundleIdentifier entry the same way as app bundles: by extracting the identifier prefix from Xcode settings and appending framework name. Task-number: QTBUG-32896 Change-Id: Ica8f28332a88e37a823c46fca7a2c373157af020 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
| | * | Merge remote-tracking branch 'origin/5.3' into 5.4.0Oswald Buddenhagen2014-11-102-1/+4
| | |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/plugins/platforms/xcb/qxcbwindow.cpp Change-Id: Iad9ef6bf7d6111efba8232a7d9b46bb9974912f5
| | | * | Stop including g++-unix.conf in the freebsd-clang mkspec.Raphael Kubo da Costa2014-11-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Most of the settings there end up overwritten by the clang.conf include that comes afterwards, except for a few things such as QMAKE_LINK_C, which remains set to "gcc" and breaks things when one uses CONFIG=use_c_linker. QMAKE_LFLAGS_NOUNDEF was coming from g++-unix.conf, though, so we now manually set it in freebsd-clang's qmake.conf. Change-Id: Ibd16f59d43eb19e72adf4919da9ce3007100b60f Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
| | | * | Set the _C variants of QMAKE_LINK and QMAKE_LINK_SHLIB in clang.conf.Raphael Kubo da Costa2014-11-051-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | While it does not look like the clang-based mkspecs had any problems so far with not having QMAKE_LINK_C and QMAKE_LINK_C_SHLIB defined, it makes sense to set them to $$QMAKE_CC just like the GCC-based ones so CONFIG=use_c_linker works as expected. Change-Id: Ib660d12b001dd7a877b6f03e79715db08a272968 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
| * | | | mkspec macx-ios-clang: ensure SDK version is validRichard Moe Gustavsen2014-11-112-0/+8
| | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Ensure the sdk is of recent enough version since: 1. we build Qt with the latest sdk version, so the app needs to do the same to avoid compatibility problems e.g when linking. 2. using a launch screen to support iphone6 depends on sdk 8 3. Apple requires apps that are pushed to appstore to use the latest version of the sdk. Ideally we should store the sdk version used to build Qt, and require that apps use the same version or newer. But this patch will do until that is in place. Change-Id: I18b06d09c1eda15122975b7169ca7a3372df6054 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
| * | | Fix release-with-debuginfo flags for QCCMatt Fischer2014-11-071-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Due to the way that the QCC mkspecs are structured, the recent change to add full optimization support causes the -O2 flag to be completely dropped from QCC builds in release-with-debuginfo mode, since the QMAKE_CFLAGS_OPTIMIZE variable is not declared in any configuration file included by QCC toolchains. This patch adds the necessary flags to make the QCC toolchain operate correctly. Change-Id: I4cd93442d59fae7c92fc5219cddb16f367447203 Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
| * | | WinRT: Add missing manifest specifier for rotationMaurice Kalinowski2014-11-073-2/+17
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | Add WINRT_MANIFEST.rotation_preference as description which orientation is allowed or preferred by the app. Valid values for Windows Phone are portrait, landscape, landscapeFlipped. WinRT also allows portraitFlipped Task-number: QTBUG-40830 Change-Id: I6b11afcdb72c2c158dadddafc5d90c1d18ab9d8b Reviewed-by: Andrew Knight <andrew.knight@theqtcompany.com>
| * | Build Qt for OS X and iOS with relative rpathAdam Strzelecki2014-11-012-6/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Defaulting to absolute_library_soname on configure -rpath is no longer necessary as now we support @rpath install name ids on OS X and iOS. This also sets QMAKE_SONAME_PREFIX to @rpath for Qt modules when built with rpath configuration. This makes Qt libraries relocatable on OS X. Qt SDK is not yet relocatable though, because plugin location (including cocoa plugin) is still resolved using absolute path (see QTBUG-14150), also there are several absolute paths hardcoded in qmake mkspecs pri files. Task-number: QTBUG-31814 Change-Id: Ie9dffefcd2a946c1580293d433621c1adb7e06c4 Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
| * | Add rpath pointing to Qt libraries in OS X and iOSAdam Strzelecki2014-11-011-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is triggered only when app is using Qt and Qt was built with "rpath" configuration and project does not specify QMAKE_RPATHDIR explicitly. Added rpath is made relative to app binary location if target path lies inside Qt SDK, so all SDK bundled tools and examples will work automatically without any changes. Tests are an exception here, since they are being run from their build location by CI, we may not use relative rpath that work only in install location. Task-number: QTBUG-31814 Change-Id: I3690f29d2b5396a19c1dbc92ad05e6c028f8515b Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
| * | Reenable C++11 for ICC on OS XThiago Macieira2014-10-311-2/+1
| | | | | | | | | | | | | | | | | | | | | It's fixed for the Intel Composer XE 2015 (compiler version 15.0). Change-Id: I7960b2128743081e905d4b96acf55360f744fc69 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
| * | Enable the latest versions of GCC, Clang and ICC with -WerrorThiago Macieira2014-10-311-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Tested with GCC 4.9, Clang from XCode 5.1 and ICC 15 beta. Clang 3.5 (pre-release) cannot compile qtdeclarative yet with -Werror due to invalid C++ code there that calls member functions on null pointers. Change-Id: Ic2845371a1899716985bc0813dfb820fa418e207 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * | Raspi: default platform plugin is eglfsLaszlo Agocs2014-10-301-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Not wayland. Use the default of eglfs coming from linux_device_pre.conf. Qt 5.4 includes QtWayland and the platform plugin from there may get built unexpectedly. The result is that the Pi setup that worked with 5.3 and eglfs stops functioning. Task-number: QTBUG-40538 Change-Id: If894c7ddd7b40a22272797d94ce1a545b7ab43f2 Reviewed-by: Louai Al-Khanji <louai.al-khanji@theqtcompany.com> Reviewed-by: Andy Nichols <andy.nichols@digia.com>
| * | add support for explicitly declaring the module master headerOswald Buddenhagen2014-10-292-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | when a module delegates to another module (as the activeqt ones do), it doesn't have a master header to be included. we could derive the real master header by doing a transitive dependency resolution and some filtering, but that seems unnecessarily complex. Task-number: QTBUG-41892 Change-Id: Ie7ce51a837ac06e929b204ec734206c11b3ae241 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
| * | Merge "Merge remote-tracking branch 'origin/5.3' into 5.4" into refs/staging/5.4Oswald Buddenhagen2014-10-291-1/+4
| |\ \
| | * | Merge remote-tracking branch 'origin/5.3' into 5.4Oswald Buddenhagen2014-10-281-1/+4
| | |\| | | | | | | | | | | | | Change-Id: I224e44a9df314b9a99d33148b6cf400fcbc9de8e