Doing so works fine on Linux as g++ version there silently ignores
this. However, the qcc toolchain for QNX barfs.
Change-Id: Ia236910adc09dc1653e4169e20476b69c2de62ab
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
qmake uses the variable name verbatim, which makes the generated
makefile look "interesting" without this cleanup.
Change-Id: If6c4f12563a0ee6429513fbfac534f40bb7c0b97
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
this makes the "sysrootable" properties more magic, with the raw
versions being omitted from the qmake -query output and automatically
falling back to the "cooked" variant if there is no sysroot set.
this makes the "normal" qmake -query less noisy. this will become even
more obvious when i add more "overloads" of the properties.
Change-Id: I08000986427264ec6238c8fe0a77f5cecdbf1201
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
syncqt may generate that file also as a result of configure tests. so
just check for the file's existence instead of trying to reproduce under
which circumstances it should appear.
Change-Id: Ia24f96b05fc70e104f7be19d08cea614ffb505be
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
the problem this (probably) tried to solve has been solved via ordered
builds a *long* time ago.
Change-Id: I84c58076c864735eea4210ec60aa060fe3e5d97e
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
it seems to be a no-op. presumably it was meant to be an auto-rebuild
hack like in moc.prf, but it wasn't really "wired".
Change-Id: I914456f5f5a63a06c2004b16edcf2e2ade448270
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
otherwise we need the nasty hack for includes, and CONFIGs and DEFINES
from dependencies are not included at all.
Change-Id: I7eaee761161a6e8fbac8e9237d26559aa11a88a1
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
otherwise we are breaking the "less hacky" configurations. whoops.
Change-Id: Ibb037753fbaf30beae3d30173be77d48b978b60b
Reviewed-by: Caroline Chao <caroline.chao@nokia.com>
instead of being a variable added to the makespec (via qconfig.pri),
QT_SYSROOT is now a property.
the QT_INSTALL_... properties are now automatically prefixed with the
sysroot; the raw values are available as QT_RAW_INSTALL_... - this is
expected to cause the least migration effort for existing projects.
-hostprefix and the new -hostbindir & -hostdatadir now feed the new
QT_HOST_... properties.
adapted the qmake feature files and the qtbase build system accordingly.
Change-Id: Iaa9b65bc10d9fe9c4988d620c70a8ce72177f8d4
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
moving the detection of .qmake.cache to the qmake startup had the side
effect that a suddenly popping up cache would not be picked up by
nested projects any more.
this is not supposed to work in the first place, but the syncqt hack for
building against non-installed modules relies on it. until we have
cleaned that up properly, we need a way to notify qmake about the
appearance of the cache file.
Change-Id: I450646b936e3bb2ef2ed3aba05df58e521ccdc61
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
Currently only a small fraction of all the headers are included since only
the headers found in the pro file folder are included.
This is confusing and arbitrary. With this change all the headers are now
excluded from the instrumentation.
Change-Id: If4322421f3b3e5fcd45f006421690eaa6bf645e0
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
This is a convenience to make it easy for applications to simply add:
CONFIG += opengles1
To their .pro file to link against OpenGL ES 1.1 instead of OpenGL ES V2
Change-Id: I48605f5f69f83d99cfb2ad6dbb4b318d41e00128
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
This allows us to create correct CMake config files when Qt is
configured with directories outside of the prefix (which Qt allows),
and also allows us to use correct values when a 'longer' relative
lib directory is used such as lib/x86_64-linux-gnu.
Change-Id: I6f88255a23752dc5b84cb20ce13fdeeee9d5ad51
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Alexander Neundorf <neundorf@kde.org>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
the earlier done topological sort already removes duplicates and only
works with lower-cased names anyway, so we can remove the overhead here.
Change-Id: I44fc39af9e94662717e1c8cfb0ddb87d2f597935
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
it's rather pointless to first query the variable's presence in the
file. instead, just fetch it and see what is in there.
for this to work cleanly we defer the concatenation of the filename.
Change-Id: I322db8ae897272fae049074d8b7676787286aedd
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
The code previously exported by the declarative library has been
migrated to the qml and quick libraries, and the symbol names have been
changed accordingly. To allow existing projects to continue to build,
the declarative module now contains a set of definitions redefining the
deprecated class names to their replacement names.
To make this work, a dependency on the declarative module now
automatically adds a dependency on the qml module in order to make the
new library available for linking.
This is a temporary change to prevent breaking existing projects
that depend on the declarative module. After clients have had an
opportunity to update their code to the use the new interfaces,
it can be removed.
Task-number: QTBUG-23737
Change-Id: Idee6ac627858856802bb1be29e9a4a079da73688
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Martin Jones <martin.jones@nokia.com>
Change-Id: I6c2008a0e7a07ca0603b8aa9362d31fa4ef7310a
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Change-Id: Iff8b9bdd4b069721103e1cd5854e56b6116d7549
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Alexander Neundorf <neundorf@kde.org>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
The "check" target always depended on debug-check on projects that
explicitly loaded the testcase.prf, even if Qt was configured with
-release parameter. This obviously caused build failure. Changed the
testcase.prf to check which configuration is preferred using
CONFIG(debug, debug|release) like is done with similar cases in other
.prf files.
Task-number: QTBUG-24332
Change-Id: Ib5140b106e99efe51932bdd5a48914786de23230
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
The architecture is detected at compile time based on the predefined
macros from the compiler. Don't use QT_ARCH in .pro, .pri, or .prf
files. The PNG_NO_ASSEMBLER_CODE define from libpng.pri is not present
in the current copy of src/3rdparty/libpng, so no change in
functionality is expected.
The conditional for the SUPPORT_JIT define in pcre.pri is moved to
src/3rdparty/pcre/config.h, again so that we can use the compiler's
predefined macros to detect the architecture at compile time.
Replace QT_ARCH_ARM, QT_ARCH_MIPS, and QT_ARCH_SPARC with their
Q_PROCESSOR_* equivalents.
Replace QT_ARCH_INTEGRITY, QT_ARCH_VXWORKS, and QT_ARCH_WINDOWSCE with
their Q_OS_* equivalents.
Note that this commit also effectively disables the SPARC atomic
implementation. An inline implementation for SPARC needs to be added,
or we remove the current code and instead rely on the GCC intrinsic or
C++11 std::atomic support on SPARC.
Note also that this commit does not remove QT_ARCH from configure or
qconfig.h. This will continue to be set until all Qt 5 projects can be
moved away from using QT_ARCH.
Change-Id: I5de747cc4436d21941329974cff3016970f497b8
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Use the new QMAKE_SUBSTITUTES.config = vebatim feature.
Change-Id: I4c08bd4694c11d48434eb225fc6902e69a4cdec2
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Qt requires this since 482d96a0c5
Change-Id: Iba783e283b17654abf46f11b81cc1641c3ce7d83
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Reviewed-by: Clinton Stimpson <clinton@elemtech.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
QtUITools is a static library, so we need to mark that in its
CMakeConfig.cmake file.
Change-Id: I4e3684f7c62f4af28956a6e8f58edce7724f50dd
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Handle the case of an empty DESTDIR.
(cherry picked from commit 122fa6b53c33364a4687919191e55899acb43797)
Change-Id: I0c2eec5736d0944b8ee97abdfa3f1121e7d8db4b
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Unlike for libraries, $(TARGET) already contains $(DESTDIR).
Changing to $(DESTDIR) does break the command in that case.
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
(cherry picked from commit 7eb770aed35fee50ff98c12e390dcb02c72b5132)
Change-Id: Idd0f30d52db432062917a1c956c3af73e6c8a6a4
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
The tiff plugin and bundled libtiff is moving to the qtimageformats
project on Gerrit.
Task-number: QTBUG-23887
Change-Id: I4c848232fdccddd7e7f54215f9eaa78dc4c3a53d
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
The MNG file format is generally abandoned, and libmng has been
unmaintained for several years.
The MNG plugin and bundled libmng has been moved to the
qtimageformats project on Gerrit.
Task-number: QTBUG-21869
Change-Id: I946432347014ffde2b72307a5f8b166ca5553602
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Qtopia was killed some time ago and these files do not have a direct
use. Qt was embedded into the Qtopia sourcetree and it would be in the
hands of the Qt Extended fork to move to Qt5 and update the buildsystem.
It is unlikely that a Qt5 qmake will be used to build the Qt extended fork
as a copy of Qt is embedded in the source tree.
Change-Id: I2ef309c381aaf1d265ef385e85fd5c72d6205765
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
When Qt is configured for static build, importing static plugins is
supposed to work as described in docs:
http://doc.qt.nokia.com/latest/qtplugin.html#Q_IMPORT_PLUGIN
This commit updates the qmake mapping for predefined Qt plugins, so
that Qt plugins are automatically found when QTPLUGIN keyword is used.
Task-number: QTBUG-18609
Merge-request: 1391
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
(cherry picked from commit 0d0c1082f74888044713d96deca2d510951d018a)
Change-Id: I0d0c1082f74888044713d96deca2d510951d018a
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
This reverts commit 613183ff8c
("Automatically add QtQuick module if only QtDeclarative is specified").
The QtQuick module has been around for a while now, and the need to
port to it has been duly announced.
After this commit, projects that use the QtQuick 2 API (QQuickItem
and friends) will explicitly have to add QT += quick.
Change-Id: Ie5e6d438431a0c736e214c28c0d1ba1189b4ee06
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Denis Dzyubenko <denis.dzyubenko@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Change 1fb5600c5e already added
declarative-debug as a way to include declarative, but nowadays
there's also qquick, and qquick-private ...
Just always set the define. The user has choosen to write
CONFIG+=declarative_debug in the first place and an additional
define if declarative isn't used does no harm.
Change-Id: Ica6142e70b12950fc1d9e0bf7b94f747c843a17f
Reviewed-by: Michael Brasser <michael.brasser@nokia.com>
- All subprograms installed as part of test instead of separate installs
- Added installTestHelperApp() to testcase.prf
Change-Id: I02fbbb299f095054c9216ad0e5f91f574fb0fe3d
Reviewed-by: Kurt Korbatits <kurt.korbatits@nokia.com>
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
qttest_p4.prf was added as a convenience for Qt's own autotests in Qt4.
It enables various crufty undocumented magic, of dubious value.
Stop using it, and explicitly enable the things from it which we want.
Most autotest .pro files should look like this:
CONFIG += testcase
TARGET = tst_something
QT = core testlib
SOURCES = tst_something.cpp
Change-Id: I051b230c5c4fd56dc6eae2b9b7bdff6c033248fd
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Change-Id: I3864017df6fc0daeb31b389c8883401d344730bf
Reviewed-by: Alexander Neundorf <neundorf@kde.org>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Remove the (-no)-qt3support options from configure, and remove the last
remaining references to Qt3Support, QT3_SUPPORT, and
QEvent::ChildInserted.
The compatibilityChildInsertEvents() tests in tst_QObject and
tst_QWidget have been renamed to childEvents(), which is a more
appropriate name.
Change-Id: Id0b45e9b177efcc8dceee8c9ed8afafedeeace2f
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Reviewed-by: David Faure <faure@kde.org>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
On Windows, qmake searches for and uses the highest numbered available
version of each requested library, or a version with no number if no
libraries were found. This meant that qmaking a library's consumer
before qmaking the library itself could result in the consumer
incorrectly attempting to link against $${LIB}.lib rather than the
correct $${LIB}5.lib (for example).
QMAKE_$${LIB}_VERSION_OVERRIDE is the way to work around this.
Previously, a hardcoded list of libraries had version overrides set up
on Windows, but the qmake order issue affects all libraries, not just
these. Therefore, handle it for all modules.
Change-Id: I83b4646e3819f525193d1fc065b0d0e65b3be99f
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
These are no longer used. Qt 3.x used them to enable thread support
(which was optional at the time), but starting with 4.0, thread support
is always enabled, and these defines were removed from the code.
Change-Id: I4d1c75171c263383fc055d2a7fe52ca0501acd7a
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
QtQuick and related APIs (QQuickItem, SceneGraph, et al), which
used to live in the QtDeclarative module, have moved to a new
module, QtQuick.
Existing projects that use QtQuick-specific APIs should add "quick"
to their project's QT variable, and update their include statements.
E.g.,
QT += declarative
should be changed to
QT += declarative quick
and
#include <QtDeclarative/qquickitem.h>
should be changed to
#include <QtQuick/qquickitem.h>
and similarly for the other QtQuick classes.
In order to give existing projects a chance to migrate smoothly, we
should issue a warning and automatically add the QtQuick module if
only the QtDeclarative module was specified. (If a project doesn't
use any QtQuick APIs, the warning can be ignored -- but there is no
way to disable it.)
This change, along with the compatibility headers in QtDeclarative,
make it possible to build existing projects without any modifications
on the project's side.
This change will be removed at a later time; when that happens,
existing projects that did not port to the QtQuick module will no
longer build.
Change-Id: I56abcadc1e5c74490527fc03646310d801bfc084
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>