Commit Graph

85 Commits

Author SHA1 Message Date
Oswald Buddenhagen d38ffb6b58 qmake: make QMakeEvaluator::isActiveConfig() take a QStringRef argument
saves some more cheap but pointless conversions to QString.

this makes the introduction of the ProStringList::contains(QStringRef)
overload necessary.

Change-Id: Ic61993bd9a4b28fbba1b8e346345fd5f5636c6f0
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
(cherry picked from qtbase/11d957d04381c7162dd5621c61f9963580ec7041)
(cherry picked from qtbase/9f98935d33cc15c938be2b9295ba2fbe4edb0ee0)
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2018-03-14 15:33:01 +00:00
Oswald Buddenhagen 94957d6f4e qmake: introduce magic bypassNesting() scope
Task-number: QTCREATORBUG-18220
Change-Id: If14e6944fe84767bd67604ecde98076f873749ef
(cherry picked from qtbase/b6b44b368c6fc2df168195eaee57a2f925a29646)
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
2018-03-14 15:31:26 +00:00
Oswald Buddenhagen 962d1122bb add $$sorted() function
[ChangeLog][qmake] Added $$sorted() function.

Change-Id: Ic069d3ef7c0b7a260c714c76eecc71c41417d01f
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
Reviewed-by: Martin Smith <martin.smith@theqtcompany.com>
(cherry picked from qtbase/50e22c765343102c4e0acf1eee8a6ce6f6f39ccf)
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2016-08-02 07:58:18 +00:00
Oswald Buddenhagen 50b87b3a8d add ProStringList::join(ProString) overload and make use of it
Change-Id: Ic3919a1fa9419bbb3b57dd1aa7eb95643ee59e53
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
(cherry picked from qtbase/e45a9fe457a4e5e70bf4e62092b253675dc97819)
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2016-08-02 07:57:19 +00:00
Oswald Buddenhagen ca1f4a265d add ProString::toLongLong() and make use of it
this is just a bit cleaner.

Change-Id: I03e628aca9e2e53c602a4db724da277a0e2c2486
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
(cherry picked from qtbase/e6b755e702fd6d8ebeb25ecd7a5059e62da6c971)
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2016-08-02 07:56:43 +00:00
Oswald Buddenhagen d549e85712 optimize ProString::toInt()/toShort()
QStringRef has respective overloads now.

Change-Id: I9b94c53092ef3fdd62a68f5d3c5bacb98a14d8ec
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
(cherry picked from qtbase/e8bdca74b513b58d3db892d838b3a499365ca7e2)
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2016-08-02 07:56:21 +00:00
Marc Mutz bf5cc934ea qmake: restore nothrow move special members
The user-defined copy assignment, copy constructor
and dtor inhibit the move special member functions.

Implement them manually.

Change-Id: I0d38d7cf6c9611e13b5b081d734d01d6fe4d5276
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
(cherry picked from qtbase/9c63ad562bf0a44807f41ce49e4fe1b5ff181a63)
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2016-08-02 07:56:15 +00:00
hjk 39a38d5679 Wholesale conversion to #pragma once
Kudos to cgmb and https://github.com/cgmb/guardonce

Change-Id: Ifa8970734b8d43fd08c9260c645bdb0228633791
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-03-30 15:20:19 +00:00
Tobias Hunger 1b4321279f Update License according to agreement with Free Qt Foundation
* Update files in src/share* and src/tools

Change-Id: I78aa5d4a1d76212964e467de7676c1fcb2b777d6
Reviewed-by: Tobias Hunger <tobias.hunger@theqtcompany.com>
2016-01-19 15:48:57 +00:00
Oswald Buddenhagen 81a2ae415f move get{,Hash}Str from QMakeEvaluator to ProFile
this makes it possible to use these functions without an evaluator.

Change-Id: I23e4ec141b427f4c3c8b647305532be179058c07
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
(cherry picked from qtbase/df436839756ca7488b9eabcd11be04844a4ca8a3)
2015-10-28 13:03:25 +00:00
Oswald Buddenhagen e3bee0dca9 add autotest enablers for qmake parser
the actual test is omitted from qtcreator.

Change-Id: Ib3dcb6c1aaac20ca6a3bc0dc564e16ec7bd152db
Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
(cherry picked from qtbase/9d4641f56e76a21385db58f821ac929567d97a8c)
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
2015-10-28 13:02:54 +00:00
Oswald Buddenhagen 04fdfd8bfe move some functions into ProStringList for saner OO design
Change-Id: I60f00f38f459fc9f8eebee9187158e4198fc9546
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
(cherry picked from qtbase/ab74cf09a8f71aa939ac3de6165f9d6b45465ef8)
2015-10-28 13:01:00 +00:00
Eike Ziller 3c85058694 Update License
Change-Id: I711d5fb475ef814a1dc9d2822740e827f3f67125
Reviewed-by: Alessandro Portale <alessandro.portale@digia.com>
2015-01-16 12:37:56 +01:00
Eike Ziller 8295b503be License update
Change-Id: I3c22ef2685d7aa589f5d0ab74d693653a4c32082
Reviewed-by: Alessandro Portale <alessandro.portale@digia.com>
2014-10-09 11:41:44 +02:00
Daniel Teske 765ad6c3d2 Android: Set ANDROID_EXTRA_LIBS scoped to the arch
The workflow for adding a library for multiple archs is not ideal, but
now a little better. The user has to go to the deploy setting for a
kit per architecture and add the right extra library.

Change-Id: I2bda6961f6f1164bdc58acd78fa3d2221977f0cf
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2014-04-01 16:23:10 +02:00
Robert Loehning 746c5d8863 Incremented year in copyright info
Change-Id: Ib5423fdd064e4546f848c0b640b0ed0514c26d3a
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2014-01-08 08:29:47 +01:00
Marc Mutz d3b425c99f qmake: add ProStringList::join(QChar)
Same reasoning as for 68e04c3ac148bcbe71f2deeb7288563f6cdbcab5 applies.

Adding the overload was easier than to teach a Perl script to distinguish
between QStringList and ProStringList instances...

Change-Id: I6de6ecf21fdad135ac213b5c794927a9bc120a92
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
(cherry picked from qtbase/cbf447069cfeb799ff5e09902be065d77f2e7707)
(cherry picked from qtbase/98a73e16012f75934ce4b6e4c85fb4d6a2ad0a28)
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
2013-05-17 14:52:53 +02:00
Debao Zhang fec0a0fcd9 qmake:Add a case sensitivity flag to ProString::{starts,ends}With()
Change-Id: I457cd8288ae8a0138f7b28321fe87be3308b5215
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
(cherry picked from qtbase/4d55b473b3a1514c53dc5ee8116e2c86e4f62eb6)
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-02-06 14:52:34 +01:00
Joerg Bornemann 36081d6fdb add base parameter to ProString::toInt and ProString::toShort
Change-Id: I0c8b48e6491486ca829ce24ca2e284294ba0138a
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
(cherry picked from qtbase/9a1183b400748aa51132dd17d004d9d6e560b5b8)
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-02-06 14:52:30 +01:00
Oswald Buddenhagen 1fda2111d4 Merge remote-tracking branch 'origin/2.6'
Conflicts:
	src/plugins/autotoolsprojectmanager/AutotoolsProjectManager.pluginspec.in
	src/plugins/debugger/qtmessageloghandler.cpp
	src/plugins/debugger/qtmessagelogwindow.cpp
	src/plugins/madde/maemodeployconfigurationwidget.cpp
	src/plugins/qmldesigner/components/integration/designdocumentcontroller.cpp
	src/plugins/qmldesigner/designercore/include/widgetqueryview.h
	src/plugins/qmldesigner/designercore/metainfo/metainfoparser.cpp
	src/plugins/qmldesigner/designercore/model/modelnodecontextmenu.cpp
	src/plugins/qmldesigner/designercore/model/modelnodecontextmenu.h
	src/plugins/qmlprojectmanager/qmlprojectapplicationwizard.cpp
	src/plugins/qnx/bardescriptormagicmatcher.h
	src/plugins/qt4projectmanager/profilekeywords.cpp
	src/plugins/remotelinux/deployablefilesperprofile.cpp
	src/plugins/remotelinux/deployablefilesperprofile.h
	src/plugins/remotelinux/deploymentinfo.cpp
	src/plugins/remotelinux/deploymentsettingsassistant.cpp
	src/plugins/remotelinux/profilesupdatedialog.cpp
	tests/auto/icheckbuild/ichecklib.cpp
	tests/auto/icheckbuild/parsemanager.cpp
	tests/auto/icheckbuild/parsemanager.h

Change-Id: Ie465a578446a089e1c502d1cb1096e84ca058104
2013-01-31 16:25:33 +01:00
Robert Loehning 298531e370 Incremented year in copyright info
Change-Id: Ic6a9ff0359625021ebc061d22db6811814534205
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2013-01-29 16:27:03 +01:00
Eike Ziller 6fd252b0a5 Merge remote-tracking branch 'origin/2.6'
Conflicts:
	share/qtcreator/qml/qmlpuppet/commands/endpuppetcommand.cpp
	share/qtcreator/qml/qmlpuppet/commands/endpuppetcommand.h
	src/plugins/debugger/qtmessageloghandler.cpp
	src/plugins/debugger/qtmessageloghandler.h
	src/plugins/debugger/qtmessagelogwindow.cpp
	src/plugins/madde/maemodeployconfigurationwidget.cpp
	src/plugins/madde/maemodeployconfigurationwidget.h
	src/plugins/remotelinux/deployablefilesperprofile.cpp
	src/plugins/remotelinux/deployablefilesperprofile.h
	src/plugins/remotelinux/deploymentinfo.cpp
	src/plugins/remotelinux/deploymentinfo.h
	src/plugins/remotelinux/deploymentsettingsassistant.cpp
	src/plugins/remotelinux/profilesupdatedialog.cpp
	src/plugins/remotelinux/remotelinuxdeploymentdatamodel.h
	tests/auto/icheckbuild/ichecklib.cpp
	tests/auto/icheckbuild/ichecklib_global.h
	tests/auto/icheckbuild/parsemanager.cpp
	tests/auto/icheckbuild/parsemanager.h
	tests/manual/ssh/tunnel/tunnel.h

Change-Id: I04d7761df6bd936ad00e0547974284c967d39580
2012-10-05 21:20:50 +02:00
hjk 386ca7c8dd Adjust license headers
Change-Id: Ice592c6de9951ee3b2c4cb52ed0bb3b6770e0825
Reviewed-by: Eike Ziller <eike.ziller@digia.com>
2012-10-05 17:12:56 +02:00
Oswald Buddenhagen e730e2bb8a Merge remote-tracking branch 'gerrit/2.6'
Conflicts:
	src/libs/utils/environment.cpp
	src/plugins/android/androidtoolchain.cpp
	src/plugins/projectexplorer/gcctoolchain.cpp
	src/plugins/qt4projectmanager/qt4buildconfiguration.cpp
	src/plugins/qtsupport/baseqtversion.cpp
	src/shared/proparser/qmakeevaluator.cpp

Change-Id: I554e96445a4d2b9ba0cc173ecd766091ee921aa2
2012-09-12 17:27:37 +02:00
Oswald Buddenhagen f53ed6c4b3 don't pretend that break()/next()/return() are functions
it's a pretty braindead thing to implement control flow statements as
(built-in) functions.

as a "side effect", this fixes return() value handling for lists.

Change-Id: I59c8efa0e4d65329327115f7f8ed20719e7f7546
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-09-12 17:05:20 +02:00
Eike Ziller 5ac721dd58 Merge remote-tracking branch 'origin/2.6'
Conflicts:
	qtcreator.pri
	qtcreator.qbp
	src/libs/utils/utils.pro

Change-Id: I6f0aba746f915d8c51dcf9372f7d9f593562fc2b
2012-09-11 14:02:03 +02:00
Oswald Buddenhagen f24c986530 update size calculations for assignment statements
this was forgotten when the value lists were extended by a size hint.

Change-Id: I6f9b55ed671224a9b8735c8d937f94aac4a73a42
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-09-07 19:59:04 +02:00
Oswald Buddenhagen 1c28c5df02 fix default arguments of ProString::lastIndexOf()
Change-Id: If70f4f8e2aa8b68b5c87dbd1b6b95a7601eecce8
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-09-06 14:56:16 +02:00
Oswald Buddenhagen 98afdc9279 compile without CamelCase headers
for faster bootstrapping of qmake

Change-Id: I602a023f4acbac276219bfc125863749ad96f754
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-09-03 19:43:49 +02:00
Oswald Buddenhagen b486c57476 ProStringList is a movable type, so let qt know
Change-Id: Ib3b632e8fbd484ad20418926398e224fe1549f5b
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-09-03 19:41:22 +02:00
Oswald Buddenhagen 422485c892 add a bunch of ProString::append() overloads
Change-Id: I9f1f62d8ba57a1bec2c55fe32709b2f6db0f7882
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-09-03 17:53:21 +02:00
Oswald Buddenhagen 9f8b9eaf16 add ProString::prepend()
Change-Id: I2dc905470c90eeba15f0f00412405a9a1a2ddcc7
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-09-03 17:53:15 +02:00
Oswald Buddenhagen 2db6609556 beef up Pro* APIs
so they match the Q* counterparts more closely:

ProString: startsWith(), endsWith(), indexOf(), lastIndexOf(),
contains(), at(), length(), QTextStream::operator<<(), toLatin1(),
toInt() & toShort()

ProStringList: length(), removeAt(), contains()

Change-Id: Iab78236f7152f6a4b93709abbf59b9027c44ba2c
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-08-28 14:37:28 +02:00
Oswald Buddenhagen 1f2189d5a0 don't pass QLatin1String by ref
it's pointless

Change-Id: Ia02762a1f79399970cbdf43b3b20e08b4e54fd3b
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-08-28 14:36:35 +02:00
Oswald Buddenhagen 85dc06662e simplify ProString::operator==() implementations
we can trivially construct a QStringRef from a ProString, so take
advantage of that.

Change-Id: I9aaa1f6d910590872b250a145f16e90984beeb94
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-08-28 14:35:55 +02:00
Oswald Buddenhagen d97de7e43f make ProString c'tors explicit only when not building qmake
otherwise it's impossible to migrate the qmake generators to this.

Change-Id: I70c848da2ce428706b960c3c1434c26f7e3a9447
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-08-28 14:34:20 +02:00
Joerg Bornemann edd9279c8a fix release build on Windows with MSVC
We must work around strange MSVC behaviour when exporting classes
with ProKey members.

Change-Id: I56d56588a52523b1a15e432eb2d84c5c3b13c0f3
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-08-07 13:50:58 +02:00
Oswald Buddenhagen bdd8cf300b introduce ProKey class
while this is actually just an alias for ProString (with explicit
zero-cost conversions only), it nicely illustrates the use of particular
variables. it also serves to hide the NoHash hack from public view.

Change-Id: Iaf9283c64f320ad84a77d9573d1fde6d401c49df
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-08-06 15:05:17 +02:00
Oswald Buddenhagen 7c10134437 add support for option(host_build)
Change-Id: I7b16d13b0f94d0a2e4b4743a40dad9bd8b8b9698
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-08-01 16:38:09 +02:00
Eike Ziller e0e8cf3ada Contact -> qt-project.org
Change-Id: I7134d7de30bcf9f9dcfad42520dd45ee083a852d
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-07-19 13:23:21 +02:00
Oswald Buddenhagen 8d7546d006 allow setting QMAKEPATH and QMAKEFEATURES in .qmake.cache
follow suit with qmake ...

Change-Id: Idc957b607bbc87f92c8729946b208f9c24a23b4b
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-07-09 21:18:12 +02:00
Oswald Buddenhagen da26368d9e make qmake property map ProString-based
Change-Id: I3c25642b885171a47e8fd27e39e5d470d9f24db3
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-07-09 21:14:40 +02:00
Oswald Buddenhagen 5a6625245b introduce ProValueMap typedef for brevity's sake
Change-Id: I41b7202acb2889d217d1f437050443bea853ee87
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-07-04 12:48:00 +02:00
Oswald Buddenhagen ed633945ba FunctionDef(s) => ProFunctionDef(s), plus move to proitems.h
Change-Id: I7bdde81c1913237f11dbfbe7491e0fe750181cd5
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-07-04 12:05:15 +02:00
Oswald Buddenhagen ff961351eb proparser => qmake
namely:
- proparser_global.h => qmake_global.h,
- PROPARSER_EXPORT => QMAKE_EXPORT
- PROPARSER_AS_LIBRARY => QMAKE_AS_LIBRARY
- PROPARSER_LIBRARY => QMAKE_LIBRARY

Change-Id: I6db1e6339b4dced59819f047874d84dff826f398
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-07-04 12:04:04 +02:00
Erik Verbruggen 3fa55b7ab9 Removed module names from #include directives.
Getting the #include directives ready for Qt5. This includes the
new-project wizards.

Change-Id: Ia9261f1e8faec06b9285b694d2b7e9a095978d2b
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
2012-02-15 16:24:46 +01:00
hjk 2931a499e6 Long live the king!
Change-Id: I2b72b34c0cfeafc8bdbaf49b83ff723544f2b6e2
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2012-01-26 19:55:36 +01:00
hjk 31600758de all: s/info@qt.nokia.com/qt-info@nokia.com/
Change-Id: If18afb5d4665924e7d9250dccbc60a65e6daa75e
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
2011-11-03 10:33:19 +01:00
dt 754be1bcfc Move a lot of qmake independent classes to a new plugin qtsupport
Also adjust qmldumptool to remove the dependency on qt4project/qmlproject, by
passing in the qtversion instead of figuring it out in qmldumptool.

Change-Id: Ie6ac582d36bfef290313c0716b33b62fcf42630c
Reviewed-on: http://codereview.qt.nokia.com/70
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2011-05-24 18:35:11 +02:00
Oswald Buddenhagen 014571b602 improve value source tracking
- use the current file if a value is generated "out of nowhere"
- preserve source through function calls

Task-number: QTCREATORBUG-4897
2011-05-16 10:28:04 +02:00