Commit Graph

18 Commits

Author SHA1 Message Date
Nikolai Kosjar
48e5deabb7 Disable action for non-c++ projects
Change-Id: I7ccdd3d364c7761cd1206d526f4e6f7ada133ebf
Task-number: QCE-59
Reviewed-by: Andre Poenitz <andre.poenitz@theqtcompany.com>
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
2015-08-12 14:23:09 +03:00
Nikolai Kosjar
19d470ac6a Fix displaying tab name in the application output pane
It was empty due to

    commit c209eb9fbb
    AnalyerRunControl: Don't store the runconfiguration

Change-Id: Ib20ca9ab5b6e4b4fe971e6b9bcba1fba46a3b152
Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
2015-07-07 11:24:15 +03:00
Eike Ziller
39613b3b08 Adapt to changes to run mode
Change-Id: I9e299d6fa49920ffa98ececb5b96e9512055ba34
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
2015-06-30 14:58:51 +03:00
Nikolai Kosjar
3529df2e6e Fix license header
Change-Id: I017092613cdec7c00736442c10ca80b3c74f0189
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
2015-06-26 10:24:06 +03:00
Christian Kandeler
cffd9f8f3e Adapt to API changes in AnalyzerBase.
Change-Id: Id61d77653c3161f3abc97581f5e9674adf81598b
Reviewed-by: Andre Poenitz <andre.poenitz@theqtcompany.com>
2015-06-18 13:43:19 +03:00
Nikolai Kosjar
19f4072142 Run the analyzer within the build environment.
This is especially important for clang-cl, which requires the environment
set by e.g. vcvars32.bat [1].

[1] http://clang.llvm.org/docs/UsersManual.html#clang-cl

Change-Id: If319bb94752bbef9207581c50173dde99af007bc
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
2015-05-05 16:26:32 +03:00
Nikolai Kosjar
fce0b85106 Reduce calls to SessionManager:startupProject()
Might fix race conditions.

Change-Id: I70f7f28c88afe328468332898919b69fc432098b
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
2015-04-27 15:31:27 +03:00
Nikolai Kosjar
db4318b700 Remove pointless Q_UNUSED()
Change-Id: I1379864f979dfca1cfd432ec19ad168fbe91ea52
Reviewed-by: Christian Kandeler <christian.kandeler@theqtcompany.com>
2015-04-15 18:58:14 +03:00
Eike Ziller
a8dfba176b Merge remote-tracking branch 'origin/3.3'
Conflicts:
	plugins/clangstaticanalyzer/ClangStaticAnalyzer.json.in

Change-Id: Iffa578b015c51375cdb2d9930830cb2d76433bc7
2015-02-13 09:37:39 +01:00
Christian Kandeler
c632be5c92 Enable run control for mingw toolchains.
This is supported now.

Change-Id: If56be39138f8cb6c10e486e4a48e35964bdc0a94
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
2015-02-03 17:25:45 +02:00
Christian Kandeler
0aa20dd26d Add support for MSVC.
Via clang-cl, which supports the --analyze option now.

Change-Id: Idbefe048eaa80e8c5bdb2244cb30c26ba7c71ef5
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
2015-01-30 15:38:40 +02:00
Christian Kandeler
0d60463c67 Turn QTC_ASSERT into normal check.
It is not an error if no toolchain is present in the kit. It just means
the same as the toolchain not being gcc or clang.

Change-Id: I193fd196ab830321dade1c3d32080b81a93cf645
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
2015-01-20 12:55:39 +02:00
Eike Ziller
c98db856f9 Update License
Change-Id: I0a127e78046369f7b55b3ace7b08a13a3f5319e5
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
2015-01-15 18:46:29 +02:00
Nikolai Kosjar
b6a50a1a4c Use updated ProjectInfo
...that actually make us use the ProjectInfo with updated
CompilerCallData.

Change-Id: Ieee298b3db64159f3faa02231921275e4466bcb5
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
2014-11-07 12:40:56 +02:00
Nikolai Kosjar
2f3666a3f0 Ensure that project configuration did not change
Otherwise we might try to analyze invalid or vanished files.

Change-Id: I387dfb127618f2db21a538b07e1c152dbd026ca6
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
2014-11-07 12:01:44 +02:00
Nikolai Kosjar
c9feffd2a0 RunControlFactory: Limit to Clang/GCC toolchain
Change-Id: Ib50572a062f0bbe9950fee108b53ba8e7370f459
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
2014-10-27 16:22:14 +02:00
Nikolai Kosjar
c7c93810c4 RunControlFactory: Do not limit to LocalApplicationRunConfiguration
Change-Id: I088ef62b8baf98392cbda962f272ea4742bb8fc1
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@theqtcompany.com>
2014-10-27 16:22:04 +02:00
Nikolai Kosjar
b9f9eb7ae5 Import Clang Static Analyzer plugin
This plugin adds "Clang Static Analyzer" to the Analyze mode, which
processes all implementation/source project files of the current
project. For this, it will call the clang executable for each file.

The found diagnostics will be displayed in a view similar to the one
used in "Valgrind Memory Analyzer".

The user can specify the clang executable to use and the number of
concurrent processes to launch in Menu: Tools > Options > Analyzer >
Clang Static Analyzer.

Main TODOs:

 * Fiddle around the appropriate command line options, currently only
   defines and include paths are passed on.

 * Tests on Windows / OS X.

 * Remove dependency to clangcodemodel by moving the functions that
   create command line arguments to CppTools. Mostly they are not even
   specific to clang (but would also work with gcc).

 * Maybe limit to a range of tested clang versions.

 * How to deal with directory containing all the log files after the
   user starts a new run or Creator is shut down? (delete it? leave it
   there? make it configurable?).

 * Find out how to properly integrate the tests.

Imaginable future additions:

 * Adding a button to load result/log files from a directory, e.g. if
   the user used the 'scan-build' approach.

 * Adding a button with a filter menu in order to display only
   diagnostics from certain categories, similar to "Valgrind Memory
   Analyzer".

Change-Id: I6aeb5dfdbdfa239a06c03dd8759a983df71b77ea
Reviewed-by: Eike Ziller <eike.ziller@theqtcompany.com>
2014-10-16 13:36:09 +03:00