Resolve which qmake qtchooser will forward too, as that qmake will put
it's path into the makefile.
Task-number: QTCREATORBUG-9841
Change-Id: Ib7a17c7683550ce3bb9172c7428a0efc328652f5
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
Task-number: QTCREATORBUG-9068
This makes 'qmake' the first qmake binary to check when iterating
over possible Qt:s on the system. Without this if the system uses the
old way of adding version suffixes to Qt binaries (kept for Qt 4 for
compatibility reasons in Debian and Ubuntu), Qt 4 would be used
over Qt 5 even if Qt 5 is the default.
I've tested it to be working on Ubuntu 13.04 and 12.04 LTS as follows,
with Qt Creator 2.7 patched. At each phase I removed the old Qt Creator
configuration to simulate first run.
1. With Qt 5 as the default, no qmake-qt4, Qt 5 continues to be found.
2. With Qt 5 as the default + qmake-qt4, Qt Creator now still finds Qt 5
as it's the /usr/bin/qmake - this is the part that fixes the bug.
3. With Qt 4 as the default, Qt 4 is found via /usr/bin/qmake
(before, it would have been found via qmake-qt4 symlink).
4. With qtchooser removed but qt4-qmake still installed, Qt 4 is
found via /usr/bin/qmake-qt4 as a fallback.
Change-Id: I05ed6dc0e81336330a0b3b458249e9c7c928cc40
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
Forward-declare QGraphicsOpacityEffect in DetailsButton,
QProcessEnvironment in Environment, QFileInfo in fileutils,
QUrl in IWelcomePage, FancyLineEdit in PathChooser and
remove unneeded headers.
Change-Id: I7d5f273530dd2059bbdaf0899f0a3bc7e49e8482
Reviewed-by: hjk <hjk121@nokiamail.com>
#!/usr/bin/env ruby
Dir.glob('**/*.cpp') { |file|
# skip ast (excluding paste, astpath, and canv'ast'imer)
next if file =~ /ast[^eip]|keywords\.|qualifiers|preprocessor|names.cpp/i
s = File.read(file)
next if s.include?('qlalr')
orig = s.dup
s.gsub!(/\n *if [^\n]*{\n[^\n]*\n\s+}(\s+else if [^\n]* {\n[^\n]*\n\s+})*(\s+else {\n[^\n]*\n\s+})?\n/m) { |m|
res = $&
if res =~ /^\s*(\/\/|[A-Z_]{3,})/ # C++ comment or macro (Q_UNUSED, SDEBUG), do not touch braces
res
else
res.gsub!('} else', 'else')
res.gsub!(/\n +} *\n/m, "\n")
res.gsub(/ *{$/, '')
end
}
s.gsub!(/ *$/, '')
File.open(file, 'wb').write(s) if s != orig
}
Change-Id: I3b30ee60df0986f66c02132c65fc38a3fbb6bbdc
Reviewed-by: hjk <qthjk@ovi.com>
QMake is of version 3.0 in Qt5 and we failed to get the Qt version
from its output due to this.
Change-Id: I3208868d4cde652a3dd1e45f78d4f349b0acdd37
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
The class' member functions are intended to be used
instead of the Q_OS_* macros in all contexts where
the latter are not syntactically required.
This lowers the likelihood of changes made on one
platform breaking the build on another, e.g. due to
the code model missing symbols in #ifdef'ed out code
when refactoring.
Change-Id: I4a54788591b4c8f8d589b8368a6c683d4155c9fa
Reviewed-by: hjk <qthjk@ovi.com>
Getting the #include directives ready for Qt5. This includes the
new-project wizards.
Change-Id: Ia9261f1e8faec06b9285b694d2b7e9a095978d2b
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
We didn't pass actually the targetMode and mkspec to qmake. E.g.
on Mac, debugging helpers therefore couldn't compile if the default
qmake mkspec is xcode.
Task-number: QTCREATORBUG-5806
Change-Id: I575012386983e1e285a500f99a34b7f21dcba29d
Reviewed-on: http://codereview.qt.nokia.com/2947
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eike Ziller <eike.ziller@nokia.com>
This prevents literally dozens of crash dialog boxes on Windows.
Check for a crash in the helper library and in updateVersionInfo
consistently whatever is called first.
Initialize qmakeIsExecutable in 2nd constructor as well.
Change-Id: Ifafb7b3edfae8826ac062d634a39a2a804446942
Reviewed-on: http://codereview.qt.nokia.com/1661
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
We ship a precompiled qmldump in the Qt SDK because the Qt versions
don't have private headers. However, the logic in buildablehelperlibrary
by default rejects any build that is older than the latest changes to the
qmldump source code files; allow Qt Creator to pick up the (maybe
outdated) qmldump nevertheless if no private headers are installed.
Reviewed-by: ckamm
Task-number: QTCREATORBUG-4578
Make the internal data structure a map from id to Version, simplfing a few
functions. Return sorted lists, with newer versions in front for various
functions, e.g. validVersions(), versionsForTargetId.
- Report errors correctly.
- Do not pass empty target argument to qmake
- Give 'make' a longer timeout and change timeout checking to
trigger after last output line was obtained from process
- Make build log dialog non-modal and ensure it pops up on failure
even if a different Qt version was selected in-between
- Disable Rebuild-button while build is running.
Reviewed-by: Kai Köhne <kai.koehne@nokia.com>
Reviewed-by: Lasse Holmstedt <lasse.holmstedt@nokia.com>