We need to move adding ucrt(d).lib out of the various qmake.conf as
qmake.conf is only parsed once by qmake and does not differentiate
between debug and release.
Hence use default_pre.prf which is the earliest prf to use. This one
also is being parsed multiple times and does what it is supposed to do.
This allows API certification tests for Win10 to suceed, another
sideeffect is that it is much cleaner at a single location now.
Change-Id: Id899f4bbd063a3191c8f139857abf90efa827ffc
Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
The architecture needs to be specified to be properly used inside Visual
Studio and for winrtrunner to parse dependencies.
Change-Id: I218100f33efcba9f78199cbd1e48089269648e61
Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
bf24838c33 introduced a hard dependency on
kernel32.lib, which needs to be added for the msvc2015 mkspecs.
As the library differs for Windows Phone / Windows 10 Mobile, this most
likely has the side-effect that we will need to introduce winphone-xxx-
msvc2015 at a later stage.
Change-Id: I8fa2a68d421345c14ba90efc6faa5eea1ad457e1
Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
So far the dependency keyword has been ignored for the new Windows 10
mkspecs. The difference to older manifest files is that there is already
a <Dependency> section and hence we embed dependencies inside this one,
as the format standard does not allow to have multiple of those.
Change-Id: I1bf25979cc28d5c153215de5bb9cd6f37e9c50aa
Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
This enables to create fully functional packages from the output of
'nmake install'.
Change-Id: Ief83532cdfc4575f7c42f5bb6a3cee4c9f0ecbd3
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
Since libstdc++ builds on OS X and QNX 6.5 are no longer supported,
simply require <initializer_list> and std::move in order to claim C++11
support works.
The minimum OS X versions need to be fixed elsewhere.
Change-Id: Ib056b47dde3341ef9a52ffff13ef1d2ac3923f5c
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
Instead of going to qmake to generate the makefile that we want, we write
the makefile directly and include it from the generated makefile. This
leaves us with a single top level makefile for handling exclusive builds
through xcodebuild, and covers all the various build configurations in
a unified manner. It also allows for improved test device handling.
Change-Id: I66851f181ac4da2c8938645e0aa95ffa0fee33c7
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
The logic was lumped together in one big file. Now that things are more
stable and the logic has proven to work over time we can split it out
into the more appropriate sub-prfs.
Change-Id: I9a40ad72ad9d7550b609e7f50fade1049dfa3ac1
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
Fix the flood of warnings:
src/corelib/global/qflags.h(52): warning C4577: 'noexcept' used with no exception handling mode specified; termination on exception is not guaranteed. Specify /EHsc
now occurring since we don't have exception handling enabled.
Change-Id: I05d12ee6303b4f9fceb48507fadfd7d1a5604ea4
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
lex.prf was trying to be halfway between the standard POSIX lex
requirements and those of GNU flex. So fix it to work with both, more or
less, by noticing when lex is actually flex and using the extended GNU
options. Note that POSIX lex is untested and may still not work.
Change-Id: Ib306f8f647014b399b87ffff13f1e8e43fb68b3c
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
Consider a project that does the following:
launch_images.files = $$PWD/LaunchImage.xib
QMAKE_BUNDLE_DATA += launch_images
In that case we end up overwriting launch_images.files in default_post, and
at the same time, add launch_images a second time to QMAKE_BUNDLE_DATA.
The result will be that we copy our own launch image twize into the bundle.
To prevent this, prepend our internal variables with qmake_
Change-Id: I24f870874017b5388248e3bfadecd461422ffe35
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
These macros are not defined unless a desktop or standalone SDK is
installed.
Change-Id: I4c600ddca5944cc5fde310e4fbe0866a7250d36b
Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
yacc.prf was mostly working, so this commit simply makes it slightly
better by using the -p and -b options that POSIX requires and avoid
having a common intermediate file.
Change-Id: Ib306f8f647014b399b87ffff13f1e8e74ad4db1d
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Most people's yacc are actually a symlink to bison. On Windows, where
symlinks don't usually exist, we can use bison -y.
This was tested with MSYS Bison.
Change-Id: I913745d48af30f9ef7b846b6438500261dd6022d
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Prefer -std=gnu++11 unless strict_c++11 is defined. You can enable
strict C++11/C++14 mode by using
CONFIG += strict_c++
That is enabled for Qt's own code, so we we don't accidentally use GNU
extensions in portable code.
There's no support for strict C++98 mode (that is, the -ansi option).
[ChangeLog][qmake] By default, GNU extensions are now enabled with
Clang, GCC and ICC even in C++11 and C++14 modes. To disable the GNU
extensions, add to your .pro file: CONFIG += strict_c++.
Change-Id: Ib056b47dde3341ef9a52ffff13ef14de2169bef5
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Clang does not recognize the compiler flag 'no-arc-abi' anymore.
This causes a warning, which will fail the build. Not sure
what the flag does, as I cannot find any documentation for it, even
after grep-ing through the sources (both clang-600.0.57 and
clang-503.0.38)
Change-Id: I39fae3fd108a8edb978f4264935a069cce4c302a
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
With iOS 6.0 and above the LC_MAIN load command is available, which allows
dyld to call the application entrypoint directly instead of going through
_start in crt.o. By passing -e to the linker we can change this entrypoint
to our wrapper that sets up the separate stack before entering the native
iOS runloop through UIApplicationMain. As before, we call the user's main()
from applicationDidFinishLaunching.
By using LC_MAIN instead of messing with the object files we open up the
possibility of generating Bitcode instead of object code, which can be
useful for link-time optimizations, either locally or by Apple.
Change-Id: If2153bc919581cd93dfa10fb6ff1c305b3e39a52
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@theqtcompany.com>
Use hard float. This has already been the case for the commercial Beaglebone
reference images, it's time to fix the old specs too.
Change-Id: Ic9007285f64a3055fb637e7eacead17cbad1cad4
Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
Reviewed-by: Louai Al-Khanji <louai.al-khanji@theqtcompany.com>
Conflicts:
src/plugins/platforms/cocoa/qcocoafiledialoghelper.h
Manually fixed src/testlib/qtestcase.cpp to return the right type.
Change-Id: Id1634dbe3d73fefe9431b9f5378846cb187624e4
Commit 3ce99adf replaced DEPLOYMENT with INSTALLS and introduced
the "install target not created" warning when running qmake on
WinRt projects.
The code path in qt.prf that was responsible for filling the
DEPLOYMENT variable was never functional in Qt5. We're turning
the code path off until this is properly fixed.
Change-Id: If836ef648f9fb601b7597d39e3d00665d4cf01b0
Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
There is no test for gold linker and new dtags support for the host build
(only for the target compiler/build) which leads to trouble in some cross
compiling environments (see [1] for details).
So disable gold linker/new dtags support unconditionally for host builds.
[1] http://lists.busybox.net/pipermail/buildroot/2015-May/128303.html
Task-number: QTBUG-46125
Change-Id: Ic62828704dcce461487d63860705158cce3e4af8
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
On Windows, we set VERSION for QML plugins, because this embeds a
VERSIONINFO resource into the DLL that can be inspected by the user.
Change-Id: Ifb42efed6ceee05d05f61a271e028776cac6a3a2
Task-number: QTBUG-46473
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Deprecate the qmake variable DEPLOYMENT that was used for installing
files on remote devices for Windows RT and Windows CE Visual Studio
projects. Use INSTALLS for both nmake and Visual Studio projects.
[ChangeLog][core][qmake] Deprecated the qmake variable DEPLOYMENT in
favor of INSTALLS.
Task-number: QTBUG-21854
Change-Id: Ia9d2c69feb7d87b0b9dc69ff7c0a68be35a57acd
Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
... by implementing a fake ln in qmake.
symlinks are supported only since vista (we officially still support
xp), and even there are permission-restricted (MS being (rightfully)
afraid of symlink attacks). so we fake the links by copying the files
instead.
the previous hack was a bit naive, simply using cp/copy instead of ln.
this didn't work with relative paths, as real symlinks are resolved
against their parent directory, not the working directory of the "ln"
command. the new fake does this correctly.
Change-Id: Ia2f5d68a39d6ffcc8a4383f9d0fc63a9da0a05c3
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
Check for a valid license not only in configure, but also in qmake.
To limit the runtime overhead we cache the day of the last run in
a .stash file. This allows us to run licheck only for the top-level
qmake call, and only once per day.
This requires an updated licheck executable that supports the new
check mode.
[ChangeLog][Tools][qmake] For commercial builds, qmake now checks for
a valid Qt license. This requires setting up a Qt Account (or
.qt-license file) on the development machine.
Change-Id: I2c2a05a4602cc661560568b76ddf520cb8134769
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
This allows creation of applications for
- x86
- x64
- arm
While the arm build theoretically also allows to launch on
a mobile, it currently asserts on runtime. Either we will
create a new mkspec for Windows 10 Mobile in the future,
or do runtime checks for the environment. That also depends
on whether there will be a separate SDK by Microsoft.
Change-Id: I510bfc88410a5b5a1eb7c37f7f43888d1e5dda0d
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
Reviewed-by: Andrew Knight <andrew.knight@intopalo.com>
The makespec inits QMAKE_LFLAGS_PLUGIN to the same as QMAKE_LFLAGS_SHLIB,
which will create a dynamic library by passing -dynamiclib. The advantage of
creating a proper bundle (MH_BUNDLE) instead of a dynamic library (MH_DYLIB)
is that bundles can be unloaded completely by the host application.
Change-Id: I03b39b704c09213f40a4cb84f5794bf6b3669fc0
Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
As the defines looked like -DQT_TESTCASE_BUILDDIR=""C:\..."" compilation
from Visual Studio (vcxproj) failed due to the two quotation marks at
the beginning/end of the actual path. So for the vc(x)proj we do not use
shell_quote but add the quotes manually.
Change-Id: I186258d82a56928cd0316bff1ec9f60147044165
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
On desktop windows we define _HAS_EXCEPTIONS=0 to also forward this
option. Hence harmonize this with WinRT builds as well.
As a side-effect qtdeclarative now compiles without warnings on WinRT.
Change-Id: I8e343f172160991ffb2ede01303802f321de82b5
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
Standalone files are added by using RESOURCES += file.txt, while
collections of files are defined as collection.files = f1.txt f2.txt
and then added using RESOURCES += collection. For collections a prefix
can also be set using collection.prefix = /foo. The standalone files
are not prefixed.
Change-Id: I8236808238414da05e744f799a1bb15a72f4a46f
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
Including /usr/include and lib can cause cryptic failures if there is
already a Qt installed to /usr.
Having standard locations listed should not be necessary at all.
Change-Id: I08a15a064cc1aec126733f7e1962a2fa2ec38fcb
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
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 locations (including cocoa plugin)
are 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: I36b9384cd69ac609608acbe2b3d5e0512317e0d6
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
there is no need to make exceptions for install targets now, so instead
of abusing qt_no_install_library, introduce a new header_module flag.
Change-Id: I4ad7e301d1b60938b17e1dea732b1dbe3ff88a1a
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
GCC 5 combined with a recent binutils have a new optimization that
allows them to generate copy relocations even in -fPIE code. Clang has
the same functionality when compiling an executable with -flto. We need
to let the compilers know that they cannot use copy relocations, so they
need to use really position-independent code.
Position independent code throughout is not really required. We just
need the compilers to use position-independent access to symbols coming
from the Qt libraries, but there's currently no other way of doing that.
Task-number: QTBUG-45755
Change-Id: I0d4913955e3745b69672ffff13db5df7377398c5
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
this allows LD_LIBRARY_PATH to take precedence over the hard-coded
rpath, which is the only sane thing to do (which is also why i'm not
adding an option to disable it).
this behavior is consistent with non-linux systems.
the windows version has no auto-detection, just like for gold linker
usage.
Task-number: QTBUG-3069
Change-Id: Ief9ba032291c898d75d76ecc740390954382a804
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
The flags are the same across all GCC flavors so put the definition
in the common gcc-base.conf instead of duplicating it in g++-base.conf
and clang.conf
Change-Id: I1ba2c3c314d3a02b559c384aecef74240f69f659
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
CMake INTERFACE targets may only have whitelisted properties, and
FRAMEWORK is not in the whitelist in released CMake versions.
Change-Id: I27cd0cfbe1b52f25c91bf1b3c0d55879bed91bdf
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Stephen Kelly <steveire@gmail.com>
this makes the distclean targets work throughout qt.
the dreaded confclean target is aliased to distclean.
Task-number: QTBUG-8202
Task-number: QTBUG-20566
Change-Id: I7ac8e3b5b0110825dc93e4fa885281db91c6cf83
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
automatically set TEMPLATE=aux if qt_no_install_library is set.
Change-Id: Iccceda468da762b181fdd5c8e511bf6ed19af599
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
just like in qt_plugin.prf, the DESTDIR setting is actually fixed per
module type.
Change-Id: I5837b5884699f0d50e4067733af8aacbab93bc42
Reviewed-by: Stephen Kelly <ske@ableton.com>
As these are a new type, there is no legacy code to support.
Change-Id: Ie5abd353563d68d0449a07e06065f34db805f710
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
there is neither a point in building a PCH that will never be used, nor
does it even work with the aux TEMPLATE.
Change-Id: I2fe11f951f81adf5e15066ed60f983003c76b451
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
automatically append the .exe extension. this is done unconditionally,
which means that providing it in the spec is wrong by definition.
don't use system("which") (which won't do what we want in a windows
shell), but scan PATH ourselves. as a bonus, this is also faster.
to avoid fetching and splitting the path multiple times, factor out a
function in spec_pre.prf.
Change-Id: I95f0fa285c158b347d45422111f91540e3a595fd
Reviewed-by: Jochen Seemann <seemann.jochen@gmail.com>
Reviewed-by: David Schulz <david.schulz@theqtcompany.com>
Test each include file directly, instead of doing a large #include. This
verifies that each header is compilable on its own. One big advantage of
doing it via a special compiler in qmake is that we skip pre-compiled
headers, which has hidden build errors in the past.
This solution is implemented by making syncqt produce a second list of
headers. This list is the same as the list of headers in the source
code to be installed, minus the headers that declare themselves to be
unclean, via the pragma:
#pragma qt_sync_skip_header_check
This mechanism is applied only for public libraries (skipping
QtPlatformSupport, an internal_module).
This test is enabled only for -developer-builds of Qt because it
increases the compilation time.
On QtTest: the library only links to QtCore, but it has two headers that
provide inline-only functionality by including QtGui and QtWidgets
headers (namely, qtest_gui.h and qtest_widget.h). If those two modules
aren't getting compiled due to -no-gui or -no-widgets to configure, we
need to remove the respective headers from the list of headers to be
checked. If they are being built, then we need to make QtTest's build
wait for the headers to be generated and that happens when qmake is
first run inside the src/gui and src/widgets directories.
Change-Id: I57d64bd697a92367c8464c073a42e4d142a9a15f
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Require CMake 3.0 if an attempt is made to use a cmake file containing
an INTERFACE library.
If the user is using a CMake version older than 3.0, then exclude INTERFACE
libraries from dependencies of Qt modules. The Qt CI system is running
CMake versions as old as 2.8.11, which makes that the current minimum version.
The only header-only module existing so far is the QtUiPlugin module, which
has been split out from the QtDesigner module. If using CMake 2.8, the
forwarding headers in the QtDesigner module will be used, and the effect
of the split out library will not be seen. If using CMake 3.0, the
split out library is listed as a dependency and its transitive usage
requirements such as the QT_UIPLUGIN_LIB definition are made available.
Change-Id: Iecee3bbc440842dca27dc067f2a31e3526efa01b
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
We have configure -headersclean now
Change-Id: Iaf576b16d7c756a08ec5c3dfa32deaa343e5e029
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
This aligns with Chromium branch 2356.
This version brings more complete OpenGL ES 3 support as well as various
bug fixes and performance improvements.
The following changes were made to earlier patches:
-0000-General-fixes-for-ANGLE-2.1
Removed. All changes are now handled elsewhere.
+0001-ANGLE-Improve-Windows-Phone-support
Consolidated remaining parts from 0009/0010.
+0002-ANGLE-Fix-compilation-with-MinGW
Remaining issues from patch 0016.
+0003-ANGLE-Fix-compilation-with-MSVC2010
Remaining issues from patch 0015.
+0004-ANGLE-Dynamically-load-D3D-compiler-from-list
Renamed from patch 0008.
+0005-ANGLE-Add-support-for-querying-platform-device
Renamed from patch 0013.
-0004-Make-it-possible-to-link-ANGLE-statically-for-single
Removed. Fixed by adding defines to project files.
-0008-ANGLE-Dynamically-load-D3D-compiler-from-a-list-or-t
Renamed to patch 0005.
-0009-ANGLE-Support-WinRT
Removed. Mostly fixed upstream; remaining parts in patch 0001.
-0010-ANGLE-Enable-D3D11-for-feature-level-9-cards
Removed. Mostly fixed upstream; remaining parts in patch 0001.
-0012-ANGLE-fix-semantic-index-lookup
Removed. Fixed upstream.
-0013-ANGLE-Add-support-for-querying-platform-device
Renamed to patch 0005.
-0014-Let-ANGLE-use-multithreaded-devices-if-necessary
Removed. No longer needed.
-0015-ANGLE-Fix-angle-d3d11-on-MSVC2010
Moved remaining parts to patch 0003.
-0016-ANGLE-Fix-compilation-with-MinGW-D3D11
Moved remaining parts to patch 0002.
-0017-ANGLE-Fix-compilation-with-D3D9
Removed. Fixed upstream.
-0018-ANGLE-Fix-releasing-textures-after-we-kill-D3D11
Removed. Fixed upstream.
-0019-ANGLE-Fix-handling-of-shader-source-with-fixed-lengt
Removed. Fixed upstream.
-0020-ANGLE-Do-not-use-std-strlen
Removed. Fixed upstream.
-0020-ANGLE-Fix-compilation-with-MSVC2013-Update4
Removed. Fixed upstream.
[ChangeLog][Third-party libraries] ANGLE was updated to Chromium branch
2356 (2.1~99f075dade7c).
Change-Id: I32ccbfe95e10986bd94be7191dfd53445ea09158
Task-number: QTBUG-44815
Task-number: QTBUG-37660
Task-number: QTBUG-44694
Task-number: QTBUG-42443
Reviewed-by: Andrew Knight <qt@panimo.net>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
QT_INSTALL_LIBS is not the right place to check for Qt dlls, as they
cannot be found there in a non-developer build. In order to be able
to find the dlls and make adding dll locations easier for the user,
QMAKE_DLLS_PATHS was added. On Windows, the variable points to Qt's
bin directory by default.
Task-number: QTBUG-44960
Change-Id: Ie4e5beeaadee798a055599387e842d7c0502c27a
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Dependencies to all header files generated by dumpcpp are now added to
every object file. This fixes parallel builds of projects that use
TYPELIBS.
Change-Id: I3c0456c7b182a42296ec6999aa86d1293ffd2e42
Task-number: QTBUG-45118
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
The variables used for release with debuginfo was set in g++-base.conf
which is not included by clang builds.
Change-Id: Iec3b23c371c113ff934d2c7f5134ef78b1cf939e
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Applications built using the regular makefile generator also need to
link to XCTest, as the library is referenced from qxctestlogger.mm
Change-Id: Iedbb5c6a2811fd904d75abc20f4e39440e44e748
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
This issue had been fixed by SHA: a12a2fdf68
but re-introduced by SHA: c23d1c7695 again.
Task-number: QTBUG-45085
Change-Id: If98ee108335d80035179a83b1b28f384395d8373
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Will be active when running test apps through Xcode's 'test' action,
and reports QtTestLib test objects and functions to Xcode as XCTest
cases.
This allows running tests on both iOS Simulator and iOS devices from
the command line, through xcodebuild, without relying on any 3rd party
tools. It also integrates Qt test failures and passes into the Xcode
IDE, which may be useful for closer investigation of test failures.
The feature is limited to Xcode 6.x.
Change-Id: I33d39edbabdbaebef48d2d0eb7e08a1ffb72c397
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
while every "real" module has private headers, a very small headers-only
module could reasonably have none. entirely hypothetically, of course. ;)
Change-Id: Ib51a66858fb7d62f45fe2928625c25aa1ffc2827
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
they have no library to link against, obviously.
Change-Id: I721670382c1ec56e19130f0a0ecef616e101b885
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
Likely culprit for issues in the CI when building iOS tests.
This reverts commit 9a7564edee.
Change-Id: I02ac77a305b5863c9533c97ba06aaafe8f176a22
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Thumb instructions trigger a compiler bug in e.g. Qt Script
when used with armv5 in the recent versions of the toolchain.
We already disabled this for the 4.8 toolchain, but the bug
is also present in 4.9, so we need to disable it there as
well.
Change-Id: I6cadc7efd2b59b9a2ffec038559edd0e7782a4b9
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Change-Id: Iaf65acfee523e401ed973869b364301b08dc1520
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@theqtcompany.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
Don't clear QMAKE_EXTRA_TARGETS when creating makefiles.
Clearing it seems unnecessary, since it doesn't cause any
harm to make the functionality available to projects.
Change-Id: I470106b28124baf9df7000a7a70ee7159236c77a
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
To make echo hide all the commands of making the debug file it needs
to use && to separate commands instead of newline.
Change-Id: I6c9b408b897a285b769a402fa4d923c110334504
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Since quoting was fixed, separate debug info has no longer installed
correctly because it relied on executing shell commands in the target
name.
This cleans up the generation and installation of separate debug info
by using resolve_target.prf.
Change-Id: I3ee47c0e4dc3de600c42f56b17315a69925c4724
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
When building a module for the first time the paths won't exist as they
are only created when you run "make". However, if you run qmake with
'-r' you need the compiler flags to be available already before that.
Task-number: QTBUG-43175
Change-Id: Ib784c432f29bb8c62b9ef23e59ccb515e1d96f28
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
We now have support for more complex exclusive builds configurations,
e.g., on iOS with simulator and device configurations, so we can't hard
code the logic for choosing the right exclusive build to test.
Change-Id: I358687b297b7bf1eb28eef0ef0aaf44b89860404
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
It's pretty easy to forget to run qmake from a vcvars prompt. Doing so
causes the UUID to get persistently written as empty, breaking the
vc project.
Change-Id: I5badb31ad4f606abbe8c71979019e097c748e07a
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Peng Wu <peng.wu@intopalo.com>
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@theqtcompany.com>
Support statically linking the MSVC/mingw runtime libraries without
manually tweaking mkspecs. This is helpful for projects like the
installer framework.
MSVC does not support mixing MT[d]/MD[d] flags in different
compilation units. The static_runtime option is therefore added
to both QT_CONFIG and CONFIG.
Change-Id: Ifd6dc9c362090457de8e2c62477d0445f9479722
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Neon detection in configure does not work unless correct
flags are passed to compiler.
Task-number: QTBUG-44690
Change-Id: If119cc9ed80275aaa8796c1be8853559a7670d6a
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
Xcode has a setting for script phases to filter out the environment
variables, so we don't need to use grep.
Change-Id: Ica1c64321385ab3e3b47cf6f8f4d4191bd963540
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@theqtcompany.com>
Change-Id: I1692cf3eb34726c15eaa969a369bb97a89773bfd
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@theqtcompany.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
The Xcode project generator doesn't support exclusive builds, and always
runs as the default debug/release config, and with iPhoneOS as the target
platform. This means we need to parameterize the QMAKE_MAC_SDK_* build
settings to depend on the currently active SDK in Xcode, so that the
paths, when used in eg. linker flags, are up to date.
Change-Id: I9ca10f794e14ab440d98820657758b3fd8a7cdb0
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@theqtcompany.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>