Commit Graph

182 Commits

Author SHA1 Message Date
Tobias Hunger
aaf260c04b ABI: Improve tool chain selection for Qt projects
* Set a null-ABI for toolchains where detection of ABI failed: This
  allows the user to select any tool chain.

* Warn if ABI detection fails by showing a message in the Qt version
  setup dialog

* Do not override the mkspec if the Qt version has a null ABI only:
  We (have to) trust the user to know what he is doing in that case.

* GCC: Add version information to GCC tool chain and use it to select
  the mkspec on Mac.

* GCC: Do not override mkspec if we do a cross-compile
  (and actually detect that).

* GCC: Leave out -32 or -64 from mkspec if the compiler binaries ABI
  matches the target ABI.

* Linux-generic is compatible with all other linuxes (both ways)
  The targets themselves do additional filtering and will remove
  anything that does not work for them anyway.

Task-number: QTCREATORBUG-5756
Task-number: QTCREATORBUG-5960
Change-Id: Ib3c0ac91f3aa8e2a823e3e9891a02bdccb97af14
Reviewed-on: http://codereview.qt-project.org/4281
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2011-09-08 18:32:50 +02:00
Friedemann Kleint
d4e1d7c6ad Header cleanup in Qt4ProjectManager.
Disentangle the covariant returns and introduce
convenience accessors.
Move internal classes away from Qt4Project.

Change-Id: I6c3158988824d2a159b1b3f8ecdf8432c32be2bc
Reviewed-on: http://codereview.qt.nokia.com/3216
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2011-08-18 16:50:01 +02:00
Kai Koehne
d943015c76 DebuggingHelper: Use right toolchain
Don't just use an arbitrary toolchain, which might break esp. for Symbian.
Instead, retrieve the toolchain from the project, or in the case of the Qt Options
page let the user choose.

Change-Id: I6d271c485420e609d223d8cece754ef84e573745
Reviewed-on: http://codereview.qt.nokia.com/1978
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2011-07-22 12:07:50 +02:00
Kai Koehne
a2c612c170 QMakeStep: Allow UI to update when asking user whether to recompile
Makes sure that the warning about security implications are visible
before the user answers whether to recompile.

Task-number: QTCREATORBUG-5411
Change-Id: I43fe6aeb9e24d25be4fb51f356b6238ce0cd3924
Reviewed-on: http://codereview.qt.nokia.com/1832
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2011-07-19 18:12:57 +02:00
Friedemann Kleint
a56162ec6e tr()-Fixes for 2.3: No contractions, spelling.
Change-Id: I08babdb15bcf7f7ac086e9e12955b780b7591391
Reviewed-on: http://codereview.qt.nokia.com/480
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2011-06-14 17:18:48 +02:00
dt_
15e950d451 Fix makefile location check for qmakestep
Change-Id: Idf1842be4f8d7fe62b1569845b3f70ad1da32abd
Task-Nr: QTCREATORBUG-5127
Reviewed-on: http://codereview.qt.nokia.com/459
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2011-06-10 16:51:44 +02:00
Kai Koehne
2941045a9f QMakeStep: Ask whether to recompile if 'Enable QML debugging' changed
Task-number: QTCREATORBUG-4633

Change-Id: I4116e63da6633bebb21ba08084e2d8edde4fbd6d
Reviewed-on: http://codereview.qt.nokia.com/383
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2011-06-08 15:32:16 +02:00
Tobias Hunger
49fc36f8f8 Fix build
Change-Id: Idf8f0f367d329dad23d375bb08d3bc34bafe4115
Reviewed-on: http://codereview.qt.nokia.com/363
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Tobias Hunger <tobias.hunger@nokia.com>
2011-06-07 16:32:28 +02:00
Tobias Hunger
499a49b686 qmake: Skip running qmake when using non-default tool chains
Do not rerun qmake when using a tool chain which requires a
non-standard mkspec to be used.

Change-Id: I6171790805743251a7867111faa46bd4d4cc890d
Reviewed-on: http://codereview.qt.nokia.com/314
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2011-06-07 16:21:41 +02:00
Kai Koehne
be1dee195f Qt4BuildConfiguration: Fix naming of slot
Change-Id: I8b739afadd19e0f7c3503a11eb250a0662671958
Reviewed-on: http://codereview.qt.nokia.com/309
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2011-06-06 15:36:41 +02:00
dt_
2cc7bea066 Remove BuildStepConfigWidget::init()
It serves no purpose anymore.

Change-Id: Ifc15b29c7736bacde3b310e6c4dc980314145d14
Reviewed-on: http://codereview.qt.nokia.com/217
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2011-05-30 14:44:33 +02:00
dt_
6b0e6072f5 QMakeStep: fix linkDebuggingHelper
Just showing the widget was setting the linkDebuggingHelper setting.

Change-Id: I0188d713394e35c3519d9bbd822cb970363a68eb
Reviewed-on: http://codereview.qt.nokia.com/215
Reviewed-by: Kai Koehne <kai.koehne@nokia.com>
2011-05-30 13:46:42 +02:00
Christian Kandeler
64ba06e221 Maemo: Create dedicated plugin.
No change in functionality for now. More support for generic remote
Linux support is planned to be added.

The changes in decreasing order of magnitude:
1) Move contents of qt4projectmanager/qt-maemo to new "RemoteLinux" plugin.
2) Make some classes in qt4nodes public for now. More decoupling
in that area will follow.
3) Fix some minor problems uncovered by the move.

Change-Id: I51d0c7977c10019eb6080cd6620bc28ecebad3c4
Reviewed-on: http://codereview.qt.nokia.com/106
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2011-05-26 13:31:05 +02:00
dt_
0d2313c555 Revert "Fix import of existing builds"
This reverts commit 8cd3b54949.

Conflicts:

	src/plugins/qt4projectmanager/qmakestep.cpp
	src/plugins/qt4projectmanager/qmakestep.ui
	src/plugins/qt4projectmanager/qt4buildconfiguration.cpp
	src/plugins/qt4projectmanager/wizards/targetsetuppage.cpp

Change-Id: I63af95b8dd7010c50318f276ef524c00a58995bb
Reviewed-on: http://codereview.qt.nokia.com/117
Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
2011-05-25 15:45:46 +02: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
Kai Koehne
a7426ca709 QmlDebugging: Enable linking the library automatically for debug builds
Change-Id: I31c6ce649ec5a106ac8d5a556659a26f584b1d09
Reviewed-by: dt
2011-05-18 11:47:49 +02:00
Tobias Hunger
32bc1c153c Fix possible crash in qmakestepwidget
Reviewed-by: dt
2011-05-16 18:26:18 +02:00
Kai Koehne
fd1af2e620 DebuggingHelper: Rename 'qtVersionsChanged' to 'dumpUpdatedFor'
Suggested by dt
2011-05-16 12:51:54 +02:00
Kai Koehne
b470bdc6e2 QMakeStep: Check whether Qt version is valid
Pointed out by dt
2011-05-16 12:51:53 +02:00
dt
9dea7a397b Fix crash in QMakeStep::allArguments
qtVersion can be null now
2011-05-16 12:18:20 +02:00
Tobias Hunger
f823791dfb Toolchain: Add clang toolchain
Note: Parsing of error messages is still missing. So Build Issues
      are not properly reported yet.
2011-05-13 15:57:40 +02:00
Tobias Hunger
df7aa6b578 ToolChain: Add support for mkspecs
Make the toolchains report their mkspec files and use the mkspec of the
toolchain if it does provide one. Fall back to the Qt version's mkspec
otherwise.

Task-number: QTCREATORBUG-4396
2011-05-13 13:34:43 +02:00
Kai Koehne
99911c5f3d DebuggingHelper: Keep state of different UI's for same version in sync
QtVersionManager got a signal 'qtVersionsUpdated(QString)', which the UI's in
QMakeStep & in the Qt Options react to.

Change-Id: Ib774332daf6cf008afb46914ebd839420cf23e25
2011-05-13 12:46:34 +02:00
Kai Koehne
6b25d6fbe1 DebuggingHelper: Always save output to 'General Messages' pane
Change-Id: I558c81f5a74d717dabb56d36fea3ed5f5b2acc18
2011-05-13 12:46:34 +02:00
Kai Koehne
91259db4fb DebuggingHelper: Always invalidate cached QtVersion information after run
Moving this to DebuggingHelperBuildTask / QtVersionManager makes sure
the version information is also updated if e.g. the QtOptionsPage has
been closed in between.

Also, update all Qt versions that share the same qmake path.

Change-Id: Idc23f6d9fa609e2a36f1d6d4cb09c6483afd4cc4
2011-05-13 12:46:34 +02:00
Thorbjørn Lindeijer
2b0266d0ee Disable observer and jsdebugger services when they're already part of Qt
As of Qt 4.8 the observer and jsdebugger services are part of Qt. This
means the following changes are necessary in Qt Creator:

* Do not link to the QmlJSDebugger library.
* Do not create JSDebuggerAgent and QDeclarativeViewObserver instances
  in the QmlApplicationViewer and use the new declarative_debug CONFIG
  option to enable those services in Qt. This is done automatically
  for debug builds.
* Point out the QML Debugging Library and the QML Observer are "Not
  needed" in the Qt options page.
* Change the label in qmake options from "Link QML debugging library" to
  "Enable QML debugging". It still remains as a way to enable this
  functionality in release builds or for QtQuick applications not based
  on Qt Creator's template.
* Rely on qmlviewer for debugging QML UI projects rather than the
  observer, which is no longer necessary.

Reviewed-by: Kai Koehne
2011-05-12 15:56:05 +02:00
dt
8e171e0be0 Qt Version refactoring
Split up target specific code into subclasses. Also change
Qt4BuildConfiguration to allow a null qtversion.

Remove code that relied on always having a qt version.
Also make it possible to remove all qt versions.

Completly change the qt in path autodetection to be only
a fall back if no configuration was found.

Note: For now the old settings are not removed, as such 2.2 and master
can coexist.

Reviewed-By: hunger
2011-05-12 12:23:06 +02:00
Tobias Hunger
aa2acec14c Fix/add copyright headers
Change-Id: I8b73d583be1ee7183f4074bce49d5390e38631a2
2011-05-06 15:17:05 +02:00
Kai Koehne
6aa96bac9e QMakeStep: Save output of qmljsdebugger library build in General Messages 2011-04-29 15:08:44 +02:00
Kai Koehne
af9a307c15 QmlJSDebug: Enable compilation of library also for Symbian 2011-04-29 15:08:43 +02:00
con
14487af86c Merge remote branch 'origin/2.2'
Conflicts:
	src/plugins/projectexplorer/gcctoolchain.cpp
	src/plugins/projectexplorer/target.cpp
	src/plugins/qt4projectmanager/qt-s60/qt4symbiantargetfactory.cpp
2011-04-27 11:27:29 +02:00
Robert Loehning
a4c42ea4d9 Added missing translation
Reviewed-by: ossi
2011-04-21 18:58:17 +02:00
Friedemann Kleint
774fa49412 Fix more krazy warnings. 2011-04-19 15:43:53 +02:00
Oswald Buddenhagen
dc3c156cac Merge branch '2.2'
Conflicts:
	src/plugins/debugger/gdb/pythongdbengine.cpp
	src/plugins/qt4projectmanager/qt-desktop/qt4desktoptargetfactory.cpp
	src/plugins/qt4projectmanager/qt-desktop/qt4desktoptargetfactory.h
	src/plugins/qt4projectmanager/qt-desktop/qt4simulatortargetfactory.cpp
	src/plugins/qt4projectmanager/qt-desktop/qt4simulatortargetfactory.h
	src/plugins/qt4projectmanager/qt-maemo/maemodeploystep.cpp
	src/plugins/qt4projectmanager/qt-maemo/maemodeviceconfigurations.cpp
	src/plugins/qt4projectmanager/qt-maemo/maemoglobal.cpp
	src/plugins/qt4projectmanager/qt-maemo/qt4maemotargetfactory.cpp
	src/plugins/qt4projectmanager/qt-s60/qt4symbiantargetfactory.cpp
	src/plugins/qt4projectmanager/qt-s60/s60deploystep.cpp
	src/plugins/qt4projectmanager/qt4target.cpp
	src/plugins/qt4projectmanager/qt4target.h
	src/plugins/qt4projectmanager/qtoptionspage.h
	src/plugins/qt4projectmanager/qtversionmanager.cpp
	src/plugins/welcome/welcomemode.cpp
2011-04-14 12:39:31 +02:00
hjk
8397663964 Update license. 2011-04-13 11:49:28 +02:00
Kai Koehne
ed79c97d83 Symbian: Move QMLJSDEBUGGER qmake argument
Make sure it's before the "-after" section, and therefore available in the .pro file.
2011-04-12 16:33:01 +02:00
Kai Koehne
90e9ec4749 QMakeStep: Disable qmljsdebugger checkbox for Symbian, Maemo5
Debugging on device or the emulator is right now not supported.

Reviewed-by: dt
2011-04-07 12:48:14 +02:00
Kai Koehne
1b7fc163fe QMakeStep: Show error output if qmlsdebuggerlib build fails
Reviewed-by: dt
2011-04-07 12:48:14 +02:00
Kai Koehne
3bfc953c13 DebuggingHelpers: Reorder arguments of finished signal
Allow slots that use the error ouput, but aren't interested in the list
of the tools.

Reviewed-by: dt
2011-04-07 12:48:13 +02:00
Kai Koehne
ac2af19ee0 QMakeStep: Fix qmljsdebugger warning issues
Debugging requires 4.7.1 minimum. Also update the label if the
user switches Qt versions.

Reviewed-by: dt
2011-04-06 13:20:42 +02:00
dt
9b9f19dd7d Qt4Project: do not show a error on make clean without a Makefile
Task-Nr:
2011-03-24 20:44:46 +01:00
Oswald Buddenhagen
08deb39072 more exact qmake command line parsing
support -after and -config.
this also moves the actual parsing to ProFileOption, where it belongs.
2011-03-18 21:28:04 +01:00
dt
8a180f71df Qt4ProjectManager: Small refactoring in reportIssues
Do not report project dir specific issues next to each
buildconfiguration. Also move the code to a place the TargetSetupPage
can easily use, without having a hardcoded target list. Note: They
currently aren't shown at all, next step is to show them once per
target.

Reviewed-By: hunger
2011-03-16 17:28:21 +01:00
Robert Loehning
4fc0839b37 Compile fixes 2011-02-23 19:10:09 +01:00
hjk
a8ae618d75 toolchain: fix enum naming style
Reviewed-By: Tobias Hunger
2011-02-23 17:56:33 +01:00
dt
a9963b6313 QtVersionManager: Introduce qtVersionNumber + various fixes
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.
2011-02-22 15:35:23 +01:00
Thorbjørn Lindeijer
7bcc917681 Removed strange looking dot after dotdotdot 2011-02-22 14:33:46 +01:00
Tobias Hunger
8d0c477245 ToolChain: Refactor toolchain support
Refactor ToolChains in Qt Creator:

 * Allow for several toolchains of the same type
 * Be smarter wrt. guessing what kind of output a toolchain
   produces. This allows us to eventually handle e.g. embedded
   linux setups way better than before.
 * Be smarter wrt. guessing what kind of environment a Qt version
   needs.
 * Improve auto-detection of toolchains a bit
 * Decide on which debugger to use based on the kind of output
   produced by the compiler.
 * Add options page to configure toolchains
 * Remove toolchain related options from the Qt version dialog

Reviewed-by: dt
2011-02-21 18:33:23 +01:00
Kai Koehne
3fef120d59 QmlJSDebug: Move qmljsdebug into a static library
Reviewed-by: dt
2011-02-18 12:57:45 +01:00
Christian Kandeler
bae2cefc45 Fix non-Linux compilation. 2011-01-18 15:44:13 +01:00