1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-04-23 14:42:11 +02:00
Commit graph

3698 commits

Author SHA1 Message Date
Marc Khouzam
8cf5ed53f2 Update version to 9.3.0
Change-Id: Ic953ccc5d38ff3661ca44de21ed8c4b7dad5b246
2016-11-15 20:32:51 -05:00
Marc Khouzam
334777eb6e Update version to 9.2.0
Change-Id: I36ad4218b20b8ea70584c89f5be45c757bf4c714
2016-11-14 23:50:05 -05:00
Marc Khouzam
c2b4f18943 Don't force the GDB console to be shown when created.
When a new launch is triggered and a new GDB console created, it was
shown automatically.  However, if there was a current debug session
where the selection was a stack frame, our sticky policy
(DefaultDsfSelectionPolicy) prevents the new session from being
selected, so the new GDB console shown didn't match the selection in the
DV.

With this patch, when a new GDB console is created, we don't show it
automatically, but let other logic figure out if it should be shown or
not.

Change-Id: If826677a6fb0f925f6b397a13f61fc75fc892748
2016-11-13 22:14:38 -05:00
Doug Schaefer
03051c91ab Implement Qt build tab for the launch config dialog.
Make sure Core Build handles the properties set by these tabs
correctly. A bunch of string externalization too.

Change-Id: I54a61b4d2520a0952c43608169747e792826062e
2016-11-11 16:24:40 -05:00
Marc Dumais
dc6e3a06ff bug 498782 - [debug] synchronize selection between the DV and GDB
This adds a new service, GDBFocusSynchronizer, that helps keep the
internal GDB selection and the Debug View selection synchronized.

Change-Id: I021b3f65d61e82f6971bdb9232369b6fdf58ea5b
2016-11-10 11:35:27 -05:00
Doug Schaefer
e9beafae10 Add Local Debug for Core Build launches. Qt Path var for Windows.
Adds gdb launching for Core Build launches. A common class is created
for things common to run and debug (and probably others).

At the bin directory containing qmake to the PATH var for builds and
launches since that's where the DLLs are.

Adds method and variable to GDBLaunch to override the default
environment.

Change-Id: I3ab3b48a2f99eaed50cdb4cfdc03959e9700abc5
2016-11-09 11:40:17 -05:00
Alvaro Sanchez-Leon
cb27913c43 Bug 303808: DebuggerConsole shall not be automatically brought to top
The DebuggerConsoleView may be interfering with other views while
bringing it to the top. This is not desirable as many users may not need
to access the features of the GDB CLI.

With this change the view will be shown but not automatically brought up
to the top, so users can find it and select it as needed.

Change-Id: I6a26f3a39d43732659d1db4e1aeb77f3c9e399d9
Signed-off-by: Alvaro Sanchez-Leon <alvsan09@gmail.com>
2016-10-31 15:22:42 -04:00
Marc Khouzam
d04019eacd Simplify API that opens the DebuggerConsole
IDebuggerConsoleManager.showConsoleView() was mimicked on
IConsoleManager.showConsoleView() which allows to specify which console
in the view should now be shown.

This makes sense for the generic platform Console view where extenders
could choose to display any kind of console when an event happens (e.g.,
a build console when the build is started).  However, in our Debugger
Console case, it complicates things unnecessarily. In our case, we want
to be able to open the view, but the console to show is handled by other
logic such as a synchronizer service.

And if there is a need to change which console should be shown within
the Debugger Console view, then IDebuggerConsoleView.display() should be
used.  I think having it in IConsoleManager.showConsoleView() is a
shortcut that is not very useful in our case.

Change-Id: Id66ea5c953e8a7ab603cfc23789a814c1ad821d2
2016-10-31 11:18:41 -04:00
Marc Khouzam
b0833f9e0c Fix DebuggerConsoleManager#showConsoleView() not showing the console
According to the javadoc of
IDebuggerConsoleManager.showConsoleView(IDebuggerConsole), the specified
console should be made visible when this method is called.  Our
implementation was not doing that.

The PageSwitcher used in DebuggerConsoleView is making use of that call
and was not working properly.  One can verify this by using the 
"Next Page" key binding to change console pages.  It works in the
platform console but did not in the Debugger Console.

This patch fixes it.

Change-Id: I0caa94c85e5c9dbbd94d80081c7b4691c17d9582
2016-10-31 11:00:20 -04:00
Doug Schaefer
e371ba0919 Updates for Core Build.
Change-Id: I8720d5b57e335adde538838790c3ecdd465a7ed7
2016-10-12 19:19:19 -04:00
Marc-Andre Laperle
30b3165eb3 Bug 497512 - cdtdebug.sh "bashisms" not supported by non-bash shells
Also include the latest version of plugins when launching
(tail vs head). This makes a difference when the plugins were
updated.

Change-Id: Id97c9247f0507e177592ca3631348bf8f7fd3dbf
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
2016-10-11 11:25:46 -04:00
Alvaro Sanchez-Leon
37b722500d Bug 504005 - [standalone] bundle version errors
Change-Id: Id7ed91a7f7d24ca25bb5820dff39c7272a806e0d
2016-10-11 00:28:01 -04:00
Marc-Andre Laperle
d12004b538 Disable StandaloneTest1 that fails on Hudson
I can't figure out why it's failing in a reasonable amount of time
and it's been failing for a while now.

Change-Id: Ib9bec67a3b628d834c3d7cdfcb088fb10ebea1b7
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
2016-09-20 07:36:05 -04:00
Marc Khouzam
10381a74e4 Bug 303808: Remove dependency on o.e.tm.view.*
The streams connector provided by TM was located in the o.e.tm.view.*
plugins which bring in the terminals view.  This patch implements our
own streams connector so that we don't have this extra dependency.

Change-Id: If2a8bdfbdd87eb9ec5c42180a372634e322ba1c1
2016-09-13 13:30:57 -04:00
Doug Schaefer
33f528d1ee Add empty tab group and icon for core build local launches.
Change-Id: Ifa522f49888518e2a04263316baddc8e3c507fd0
2016-09-12 15:15:07 -04:00
Doug Schaefer
b26917be90 Introduce Core Build launches and Launch Bar integration.
Unify launching for projects that use the new Core Build system.
Starts with CMake projects. We'll do Qt projects next.

Change-Id: I14af8e99decd54cc6548095b3ad3e054c550aea2
2016-09-12 11:14:17 -04:00
Alvaro Sanchez-Leon
e9b297390b Bug 303808: Add a terminate button to the debugger console view
Change-Id: I67b37be1991c564dca961d3d2f85b9ba0da098c5
2016-09-07 15:38:43 -04:00
Marc Khouzam
489be2aa59 Bug 303808: Moving old gdb console to Debugger Console view
Making this change reduces richness of such a console with respect to
menus, toolbar, etc.  However, I think the consistency is more
important.  Besides, this old gdb console is so poor, I don't expect it
was used much.

Change-Id: I28870192dd51c673f35d6147d5196bc771ebfa55
2016-09-07 15:37:11 -04:00
Marc Khouzam
999c2e97cc Bug 303808: Add dedicated debugger console view
Splitting out the GDB console into its own Debugger Console view.

The goal of this patch is to allow the user to easily keep the full GDB
console in focus, without having to pin it, as the pin requirement was
not very user-friendly.  Furthermore, the user can also use the GDB
console while looking at the output of the program being debugged,
which couldn't not be done without a dedicated gdb console view.

This patch also resolves two issues we had with re-using the platform
console view, which were:
- pin didn't work
- clone didn't work
With this new Debugger console view, there is no pin and no clone.

Change-Id: Ia19132704a2f6618f35ffe47ebb4b8f0028dc9ab
2016-09-07 15:26:43 -04:00
Marc Khouzam
0caa750ef0 Bug 303808: Support for full GDB console
This patch provides a full GDB console in the standard Console view.
The full console is disabled for Windows due to PTY limitations.

The new console will be triggered automatically when using GDB 7.12 (or
its pre-release) and running on Linux.

Known issues with this patch:
- Cloning the console view breaks the console
- Pinning the console view is not supported
- Interrupting execution in all-stop mode fails with the new console
- Pagination causes some events to be lost (all-stop only)

Change-Id: Iee6ef5228ca17bd829eb743cb41a142afe6714dc
2016-09-07 15:23:47 -04:00
Doug Schaefer
6c6901547e Scanner discovery for CMake projects.
Reads the compile_commands.json file and feeds the commands into
the processLine method of the build config which creates the scanner
info. The scanner info is cached in memory and stored in the
metadata directory.

Change-Id: I8b04e661dfe767904d1c10119c07167fee8cd7e4
2016-08-23 01:05:13 -04:00
Marc Khouzam
cd559dafaf Update version to 9.1.0
This commit used the script releng/scripts/ChangeFeaturesVersion.sh

Change-Id: I8274a6e8dd5c0f1e450f07952e138b265a441a62
2016-08-17 10:11:57 -04:00
Doug Schaefer
20c4e5ba88 Get CMake projects created and building. New C/C++ Project Wizard.
Fixed up CMake new project creation. Hooked up the CMake build config
properly.

Introducing the New C/C++ Project Wizard that hold all the new project
types: Arduino, Qt, CMake.

Change-Id: I9f9c8b1f51b136515fe226c15059cdbb99106275
2016-08-10 11:17:41 -04:00
Alexander Kurtakov
a044217eff Fix generics warnings o.e.cdt.debug.ui.
Namely:
* Adapters
* ListenerLists
* Iterators
* Collections

Change-Id: I71212da7f9ab414fb392a8388afcce762f3f4702
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
2016-07-06 10:28:57 +03:00
Alexander Kurtakov
240d68cac5 Generify o.e.cdt.debug.core.
Fix warnings about adapters and listener lists not being generified.

Change-Id: If5e54e6df452884947f32a31ef9c0c53677b88c8
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
2016-07-05 20:15:58 +03:00
Marc Khouzam
f38cbb85c3 Remove old .cvsignore files
Change-Id: Ia66de47055a15d94c0aa45d1198f0a9e78d82ad0
2016-06-30 09:58:00 -04:00
Marc Khouzam
9e1e981b4d Move the rest of the CDT plugins to java 8
This change was generated using the script:
releng/scripts/ChangeJavaVersion.sh

Change-Id: I2ad96dc682a5acb8529c3edec40de279c331b5a4
2016-06-22 14:51:43 -04:00
Marc-Andre Laperle
50ce6beede Add logging to Stand-alone debugger test
This will help give a clue where is hangs when running on Hudson

Change-Id: If72db5e9d4ac387328074071ab3eacf33d81ca9c
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
2016-06-07 01:31:22 -04:00
Marc-Andre Laperle
e18d408cb3 Sign the stand-alone debugger on Mac
The mac signing has to happen between materialize-products and
archive-products goals. Because we only want to do it when the
production profile is enabled (eclipse.org server), we have to duplicate
some xml to fit the macsigner between the two. I did extract some
variables in order to make the duplication less error prone.

Change-Id: I523c287c0e1dff15026e1007fa2831af6d14003a
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
2016-06-01 23:13:56 -04:00
Doug Schaefer
d4a911baa8 Create a dummy file in the user doc index when skipDoc.
Change-Id: Id5039869212f6b900fb423ea1cd5b27782cc9ad5
2016-05-26 23:25:49 -04:00
Alvaro Sanchez-Leon
ee48887d9d Bug 489750: [Standalone] does not set working directory of the target
process correctly

Change-Id: Ia6d9f1ee64b573d2cba3bba780c2b8c90fe0757d
Signed-off-by: Alvaro Sanchez-Leon <alvsan09@gmail.com>
2016-05-03 10:50:35 -04:00
Stefan Sprenger
2469e0e117 Bug 487998: [breakpoints] Editing code while debug is active
Change-Id: I68361b490a1ba84f0530db37a2da7558c1b762c7
Also-by: Jonah Graham <jonah@kichwacoders.com>
Signed-off-by: Stefan Sprenger <stefan@sprenger.software>
Signed-off-by: Jonah Graham <jonah@kichwacoders.com>
2016-04-27 07:20:42 -05:00
Alex Blewitt
c73978c03a Bug 492210 - Remove ChangeLog files from project
ChangeLog is an archaic format for identifying what has changed in a
project. Fortunately more powerful version control systems are capable
of generating this information and displaying information such as this
paragraph in order to determine what has changed in a project and when.

Change-Id: Ia71a05fa51869c1adb193d94f71c28b3b36beb37
Signed-off-by: Alex Blewitt <alex.blewitt@gmail.com>
2016-04-25 22:53:31 +01:00
Alex Blewitt
12904409a3 Bug 492304 - Fix NLS warnings
Eclipse warns if a String literal does not have a `//$NON-NLS-<n>$`
entry at the end of the line. However, for historic or formatting
reasons, many such occurrences in the CDT source have an intermediate
whitespace, such as `// $NON-NLS-<n>$`

Fix these so that the whitespace is removed between the // and $
characters.

Change-Id: Idc12398fe6e9d619af1d0b1b73fb8b6180da223c
Signed-off-by: Alex Blewitt <alex.blewitt@gmail.com>
2016-04-25 22:53:30 +01:00
Alex Blewitt
6bdca5f4a2 Bug 492230 - Replace buffer.append(a+b) calls
When using a `StringBuilder` or `StringBuffer` to create a string message,
using implicit string concatenation inside an `.append()` call will
create a nested StringBuilder for the purposes of creating the arguments,
which will subsequently be converted to a String and then passed to
the outer StringBuilder.

Skip the creation of the intermediate object and String by simply
replacing such calls with `buffer.append(a).append(b)`.

Where values are compile time String constants, leave as is so
that the javac compiler can perform compile-time String concatenation.
Ensure that NEWLINE isn't appended in such a way since it is not
a compile time constant `System.getProperty("line.separator")`

Change-Id: I4126aefb2272f06b08332e004d7ea76b6f02cdba
Signed-off-by: Alex Blewitt <alex.blewitt@gmail.com>
2016-04-25 11:38:47 -05:00
Alvaro Sanchez-Leon
e21fc12f90 Bug 489512 - Show local variables in the traditional memory render
Change-Id: I48d633e8f6979fd91e9150856fd77fccffdee299
2016-04-24 21:39:15 -04:00
Alex Blewitt
2356a29c70 Bug 492200 - Replace StringBuffer with StringBuilder
There are many opportunities for replacing `StringBuffer` with
`StringBuilder` provided that the type isn't visible from the
public API and is used only in internal methods. Replace these
where appropriate.

Change-Id: Ic2f50c5b6f3c3a4eae301bb3b40fb6faed235f79
Signed-off-by: Alex Blewitt <alex.blewitt@gmail.com>
2016-04-21 22:17:03 -05:00
Marc-Andre Laperle
6e98f402bd Make stand-alone debugger SWTBot test more robust
- Wait until binary file exists after building instead of sleep
- Replace waiting loop with waitUntil methods with bigger timeouts
- Replace menu detection with faster and more reliable method:
  - Find menu items in specific shell
  - Use waitUntil with small timeout to detect absent menu items

Change-Id: I5239fa5dab9e091936addf6ceb9ef05095d23bd3
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
2016-04-20 17:23:12 -04:00
Alex Blewitt
2114f6b108 Bug 491984 - Replace .equals("") with .isEmpty()
In many cases a String's empty status is tested with `.equals("")`.
However, Java 1.6 added `.isEmpty()` which can be more efficient since
it compares the internal length parameter only for testing. Replace
code using the `.isEmpty()` variant instead.

Some tests for `"".equals(expr)` can be replaced with `expr.isEmpty()`
where it is already known that the `expr` is not null; however,
these have to be reviewed on a case-by-case basis.

Change-Id: I3c6af4d8b7638e757435914ac76cb3a67899a5fd
Signed-off-by: Alex Blewitt <alex.blewitt@gmail.com>
2016-04-19 13:35:54 -04:00
Alex Blewitt
fc07efa909 Bug 491825 - Remove primitive wrapper creation
Using `new Integer` and other wrapper types such as `new Character` results in
potential extra heap utilisation as the values are not cached. The built-in
`Integer.valueOf` will perform caching on numbers in the range -128..127 (at
least) using a flyweight pattern. In addition, parsing `int` values can be done
with `Integer.parseInt` which avoids object construction.

Adjust tests such as `"true".equals(expr)` to `Boolean.parseBoolean(expr)`.

Change-Id: I0408a5c69afc4ca6ede71acaf6cc4abd67538006
Signed-off-by: Alex Blewitt <alex.blewitt@gmail.com>
2016-04-16 12:17:48 -04:00
Alvaro Sanchez-Leon
0b7b2a87d3 Enable coverage measurements from stand alone debugger tests
Change-Id: Ia6537659897057f29fd7a766c93ab72707048de5
2016-04-15 21:05:34 -04:00
Sergey Prigogin
b91b69775f Bug 491825 - Remove uses of new Boolean and friends
Change-Id: Ie358c8385c278472f3b86851f6fc219007bb9b5c
2016-04-15 15:20:15 -04:00
Jonah Graham
93155eceba Bug 472765: User documentation for Path Mapping
Change-Id: Ida009cc85c0b35845bd2c6db19a7e23a0a37f700
Signed-off-by: Jonah Graham <jonah@kichwacoders.com>
2016-04-13 10:41:46 -05:00
Jonah Graham
64da973dcf Bug 472765: Delete dead classes
MappingSourceContainerBrowser has long since replaced
with NewMappingSourceContainerBrowser.

PathMappingDialog has long since replaced
with MappingSourceContainerDialog.

Change-Id: I67bd6640d5e75608c9b3d616285914987ff38f98
Signed-off-by: Jonah Graham <jonah@kichwacoders.com>
2016-04-13 16:07:31 +01:00
Marc-Andre Laperle
7afdc50165 Fix Stand-alone debugger SWTBot test
A bug was fixed in SWTBot and it doesn't throw
IndexOutOfBoundsException anymore. A test was relying on that.

Change-Id: I807aaa773b8544172cf33cbf1a04583fe171bd51
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
2016-04-12 13:51:21 -04:00
Jonah Graham
4d53a33882 Bug 472765 and Bug 386675: Deprecate/comment on problem with createPath 2016-04-12 15:23:18 +01:00
Jonah Graham
a925a51cf4 Bug 472765: Better wording on label
Change-Id: Idd391767ac152410f9b01fbe47febcbeae3f2d00
Signed-off-by: Jonah Graham <jonah@kichwacoders.com>
2016-04-08 14:08:43 +01:00
Mat Booth
a896eee7e9 Bug 490995 - [tests] autotools.tests and debug.app.tests bundles have missing resources
Change-Id: Icc5d446c00c1d52178440362c49d4cf7325825c2
Signed-off-by: Mat Booth <mat.booth@redhat.com>
2016-04-05 07:46:04 -05:00
Marc-Andre Laperle
75c2dcebf9 Stand-alone debugger for Mac OS X
This commits adds support for the stand-alone debugger on Mac OS X
for both the RCP (product) and the script. The script had to be
modified slightly because of the different installation layout on Mac
and also the use of non-standard arguments to the 'find' command.

Change-Id: I24e4fec98803689dbaadb1dcfa651e431d4188a7
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
2016-04-02 22:59:15 -04:00
Marc-Andre Laperle
f4a98d1894 Add missing launchbar.core depedency to stand-alone debugger script
The depedency was added to the product before but not to the script.
This means the stand-alone debugger worked in the form of the
product but not the script bundled as part of other Eclipse products.

Change-Id: I3e9da14a7522524a6bec73d3d9e9d22263f17093
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
2016-04-02 22:59:15 -04:00