1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-06-05 16:56:04 +02:00
Commit graph

34698 commits

Author SHA1 Message Date
Jonah Graham
d6818fbb03 Bug 549697: Define standard terminal colors with Eclipse preferences
New types TerminalColor and TerminalStyle replace StyleColor and Style
to separate the meta information about styles and colors from the
user currently selected colors.

The StyleMap maps the TerminalColor/Style to the concrete fonts and
colors used in the display.

Colors are now configurable via the terminal preference page using
the new TerminalColorsFieldEditor.

All preferences are now passed in to the VT100 control so that
different terminal consumers can have different preferences and
styles.

Remove dark theme contribution. The colors of the terminal are
now inherited from the editor settings (using SystemDefaultColors)
which come from the theme. If we were to invert colors
too when in Dark theme then the colors actually end up light
background.

Change-Id: I2cf5427ac0be9a189a7f0d3565cfc97ceedb8749
2020-08-03 17:28:59 -04:00
Jonah Graham
c6f2eb5588 [releng] Update self-referenced CDT version in target
Change-Id: Ibf8f2f01d97d1d8bf8fa09483170e70372b99d26
2020-08-03 14:56:33 -04:00
Jonah Graham
285c75837e [releng] Update to Eclipse platform 4.17 M2 contribution
Change-Id: I394fd614400cae4b4ee3efe33cedc4dea67fb7f5
2020-08-03 13:03:43 -04:00
Marc-Andre Laperle
9e7b5beaa9 Bug 565553 - Improve performance of build command parsers with large number of files
Cache results of various path resolution algorithms.

Resolving paths is particularly slow while creating entries, see
AbstractLanguageSettingsOutputScanner.createResolvedPathEntry.

There are three main callees within that method that this patch addresses with
a caching approach:

* findContainerForLocationURI: First, this finds containers for a given URI in
the workspace using Eclipse resources API. Then a single container is
selected based on a preferred project. This can done repeatedly for include
paths, which are often similar for source files in a given project or source
folder. This first step is the expensive one and it only depends on one
argument (the URI) and a simple IResource[] return type, so the cache here is
done for this operation. Then the post-filtering is kept as is.

* findFileForLocationURI: Similar to the container case but for files. A
typical projet has much less file paths than folder paths in its options. One
more common option using file paths is -include. The same approach is applied
here as the previous point because there are performance gains but they are
smaller if you consider typical projet setup.

* findBestFitInWorkspace: When a path cannot be found, this makes an attempt to
find the parsed path relative to every folder of the workspace, by starting
first with the preferred project, then its referenced projects and then the
rest. Caching the result of findBestFitInWorkspace itself is too cumbersome
because the result depends on 3 variables (currentProject,
currentCfgDescription and parsedName) which would make a complex cache key.
Instead, caching the result of findPathInFolder at the project level is
sufficient, with little to no performance difference.

In all three cases, the class LRUCache is used in order to limit memory
consumption of the cache. A limit of 100 elements for each cache was chosen
based on experimentation with a few projects like LLVM and projets several
times bigger. A limit higher than necessary for small projects does not incur a
noticeable overhead for small projects and a limit too small for very large
projects merely diminishes the performance gains.

Using LLVM code base as a test, the time to parse options for all files:
Before: 68395ms, after: 5599ms

Change-Id: Ib997e9373087950f9ae6d93bbb1a5f265431c6bc
Signed-off-by: Marc-Andre Laperle <malaperle@gmail.com>
2020-08-03 12:47:18 -04:00
Marc-Andre Laperle
1cb1233c33 Fix CompilationDatabaseParserTest wrongly running the parser twice simultaneously
By design, the parser/provider fires when loading the cproject
description but we also call it by hand in the main code of the tests.
This means CompilationDatabaseParser could be running twice
simultaenously along with the same output parser code that it delegates
to. The problem was exposed fully when adding more complex data
structure (hash maps) to the output parsers in another commit, as it
would produce ConcurrentModificationException.

We need to be careful when we choose to call setProjectDescription
because it triggers the provider and then we have to wait for the jobs
to complete (joinLanguageSettingsJobs). By taking this into
consideration, several tests had to be updated. Most notably, the
read-only config test case had to be merged with the time-stamp update
test case because it was the only sensible way to test before/after
changes of language settings with such config.

Change-Id: Ib3a7caefa95b436ad9b699a2614e966a4a8dfca9
Signed-off-by: Marc-Andre Laperle <malaperle@gmail.com>
2020-08-03 12:45:52 -04:00
Alexander Fedorov
76497af249 Bug 565154 - Delete CDT Core Options API
Removed org.eclipse.cdt.core.options package
Removed org.eclipse.cdt.internal.core.options package
Removed corresponding tests
Updated documentation

Change-Id: Iac3ae1328e9eec3c8db0a633de68bde71573b736
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2020-08-01 05:54:03 -04:00
Martin Weber
45c979c400 Bug 565586: Handle -include and -imacros compiler flags
Change-Id: Iee67ab08ed2daa9af69fa1de583f3c6f8305960a
Signed-off-by: Martin Weber <fifteenknots505@gmail.com>
2020-07-31 13:21:28 -04:00
Dirk Fauth
a1a3b357ec Bug 565461 - Contribute "Show in Local Terminal" to Bndtools Explorer
Change-Id: Ia9edd87e7594bf5def0e511c34694e4098c64529
Signed-off-by: Dirk Fauth <dirk.fauth@googlemail.com>
2020-07-30 04:33:07 -04:00
Deep Amin
35afa5764c Bug 315774 - Allow force refresh of Disassembly view.
Change-Id: I8900528d1051f37d470e53800ad0ad60821ae8f4
Signed-off-by: Deep Amin <deep.amin@intel.com>
2020-07-29 15:29:37 +02:00
Martin Weber
3cea021ecd Bug 559674: rename doc file
Change-Id: I3eb943e36df734afef4a5ce6e99334111a18cedf
Signed-off-by: Martin Weber <fifteenknots505@gmail.com>
2020-07-27 13:40:34 -04:00
Marc-Andre Laperle
0b1492b5c8 Add leave method to ICElementVisitor to support leaving ICElements
This can be used when walking the ICElement tree and wanting
to act after visiting all children of an element and the element itself.
For example, I use this to collect information about whether or not
all files in a folder are excluded or not and when "leaving" the source
container, I can then act on whether or not the
source exclusions can be simplified by excluding the whole folder.
Without the leave() method, one would have to do cumbersome and
error-prone path checking when visiting each node to detect if we
have left a parent node.

Change-Id: Iad480fe18f28db1477d5d527ac51c320f6d280b7
Signed-off-by: Marc-Andre Laperle <malaperle@gmail.com>
2020-07-27 12:04:50 -04:00
Martin Weber
005b82195b Bug 559674: Integrate new indexer support into CDT build
Change-Id: Ie07e6283f8285e56b7f74f29a8db1cbe222e0304
Signed-off-by: Martin Weber <fifteenknots505@gmail.com>
2020-07-22 13:06:11 -04:00
Alexander Kurtakov
94f1bb0f30 Remove unused imports.
Change-Id: Ida8455b078fa7cb39af17773c7bde1a4895158ca
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
2020-07-22 11:23:33 +03:00
Alexander Kurtakov
0947f20764 Update build-helper-maven-plugin to 3.2.0.
Change-Id: Ifeef48c2d200c081391da693c5326b89872550f6
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
2020-07-22 09:34:23 +03:00
Alexander Kurtakov
080b4ba90d Set maven-antrun-plugin to 3.0.0
Don't overwrite it in plugins as version is set in
parent/pluginManagement.

Change-Id: I73d2b4d234ba83eae7ec2cd51f3e53d58256b81e
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
2020-07-22 09:30:30 +03:00
Alexander Kurtakov
d593c7a25f Build with Tycho 1.7.0
Get rid of tycho-extras-version as there is no more tycho-extras.

Change-Id: I9d215aad94c4e8320153f06368d6b3ecfa4a3c42
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
2020-07-22 09:21:27 +03:00
Torbjörn Svensson
c58603dfbe Bug 521515 - Access Windows registry using JNA
There is no need to have custom JNI implementation any more in java to
be able to access native functions. JNA solves this just fine with the
benefit that the code is easier to debug and maintain.

Change-Id: Ia9d36981cb10fa7348bf0a5f0549b3e96bd4c982
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
2020-07-18 08:36:44 +02:00
Jonah Graham
d68e5d5988 [releng] Update simrel staging repo to 2020-09
Change-Id: I1fc74d069806b493368d600d24d8039bc1c8e0ff
2020-07-17 21:14:37 -04:00
Torbjörn Svensson
36ec703c2f Bug 521515 - List running tasks using JNA on win32
As Eclipse only support 64-bit JRE on Windows, some legacy support has
been dropped.
* Dropped support for listing 16-bit applications using NTVDM.EXE
  process (was only supported on 32-bit WinNT based systems).
* Dropped support for listing processes on non-WinNT based systems
  (Windows 9x/ME is 32-bit only).

Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
Change-Id: Ib827de6510a342c0de5c6eaca68a944b2f1d641e
2020-07-17 18:21:43 -04:00
Torbjörn Svensson
803d6cd8ad Fixed NLS warnings and removed excess semicolon
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
Change-Id: Ife6550a77af5e410fd7b252a239dfa1ae6ae36f5
2020-07-15 22:31:35 -04:00
Marc-Andre Laperle
742dc05cb8 [releng] Remove explicit mentions of com.sun.jna.* in target platform
They come along with org.eclipse.sdk feature anyway.
org.eclipse.sdk -> org.eclipse.platform
 -> org.eclipse.rcp -> org.eclipse.e4.rcp -> com.sun.jna

Change-Id: Icc64906305b1ee96ff8a3a8850d681bf854ea784
Signed-off-by: Marc-Andre Laperle <malaperle@gmail.com>
2020-07-13 23:06:46 -04:00
Jonah Graham
12ce6020e7 [releng] Add wildwebdeveloper to target platform
The Linuxtools, as of I32779335ee3f5c94d733c3fa68d1b593f9206667,
requires WWD node fragments

Change-Id: I7c8f9553c159f74941d422d136f929bb322aac27
2020-07-13 22:33:21 -04:00
Torbjörn Svensson
1073159011 Only validate features committed to git
Change-Id: Icd2427c515bb0cc79e9179ba00216c173264ca17
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
2020-07-12 18:04:20 -04:00
Torbjörn Svensson
6e19332c33 Mark exe and dll files as executable
When git is configured to honor executable bit for files
(core.fileMode=true), the .exe and .dll files in the
repository needs to have execute bit set to be able to run
Eclipse in runtime mode on Windows.
For more details:
https://git-scm.com/docs/git-config#Documentation/git-config.txt-corefileMode
"Git for Windows" does not appear to have this problem,
but at least Cygwin does.

Change-Id: I4c164f6d99219d461c301189f101ccbf63debb50
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
2020-07-12 16:53:47 -04:00
Marc-Andre Laperle
d017917f35 Bug 563006 - CDB settings provider/parser doesn't support "arguments"
One flaw with this implementation is that the "arguments" coming from
the CDB do not have shell quoting and shell escaping of quotes whereas
the current implementations of Build Output parsers assume some form of
shell quoting. This means that simply joining strings of arguments with
spaces will be missing the expected shell quoting and possibly misparsed
by the build output parsers.
It is not clear to be at this point if this should be fixed or not as it
might involve revamping the existing build output parsers to add the
concept of shell/environment and this could also affect potential
extenders.

In this current form, simple cases with no spacing and quote escaping
involved work correctly and is still a nice improvement.

Change-Id: Ia81796e63c748318b34696998ac4a467712e5f96
Signed-off-by: Marc-Andre Laperle <malaperle@gmail.com>
2020-07-11 17:28:56 -04:00
Alexander Fedorov
063301deca Bug 565144 - CDT.setup and .target should be configured for 2020-09
Changes for .setup and .target
* add "com.sun.jna" bundle from Orbit
* add "com.sun.jna.platform" bundle from Orbit

Changes for "org.eclipse.cdt.debug.application.product":
* remove "org.eclipse.update.configurator" bundle
* add "org.eclipse.jface.notifications" bundle
* add "com.sun.jna" bundle
* add "com.sun.jna.platform" bundle

Change-Id: Ic1a0b2d6d5189c9f3652def987d3c6a0daa4c7ee
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2020-07-11 19:10:58 +03:00
Alexander Fedorov
c48d1403a7 Bug 565144 - CDT.setup should be configured for 2020-09 development
Switch Eclipse Platform to 4.17 M1 for .setup and
.target
Switch baseline comparator to the latest released CDT
And I need this root project manifest to simplify my work, please

Change-Id: I8c3af45144d3859d171a87d5d37dfa7e5c7ea97b
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2020-07-11 13:48:39 +03:00
Alexander Fedorov
de31fb2528 Bug 565144 - CDT.setup should be configured for 2020-09 development
Updated cdt.target to 2020-09 (still use Eclipse Platform 4.16)
Updated cdt-baseline.target to 2020-06
Added repositories for 2020-09 to CDT.setup (still use Eclipse Platform
4.16)
Updated baseline to 2020-06 for CDT.setup

Change-Id: Iba1c98e5e9f89ca953727c857788298d57aa40fc
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2020-07-11 12:42:57 +03:00
Alexander Fedorov
81eb1b1db3 Bug 564369 - CDT : use 4.16 GA version for .setup and .target
Change order of repositories: start the list from the most recent
platform release

Change-Id: I565f640c72f1ab67b63c8cffc0858f8303282609
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2020-07-11 11:10:22 +03:00
Alexander Fedorov
b59b75eb43 Bug 564369 - CDT : use 4.16 GA version for .setup and .target
Prefer release specific update URLs for p2 repositories

Change-Id: I61923c4b3c0b3e3ed151916ca35c9ec5d674e1dd
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2020-07-11 11:08:23 +03:00
Alexander Fedorov
3b7469ed61 Bug 564369 - CDT : use 4.16 GA version for .setup and .target
Fix .setup for 2020-06

Change-Id: I95322e2a43f305ae8b3a6199dd9f4d5ed232ca02
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2020-07-11 10:52:43 +03:00
Alexander Fedorov
30c67ac9bf Bug 564369 - CDT : use 4.16 GA version for .setup and .target
Move target platform resolution ahead of clone to simplify testing

Change-Id: Ic6a0b2770762a3bd42633bd7011073731c9d4f4e
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2020-07-11 10:10:59 +03:00
Torbjörn Svensson
46316a1b62 Throw an exception rather than return null on error
Switch to try-with-resources pattern

Change-Id: I7bbb1a6faf0ba86e456f8a66776c3eda9b9144ed
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
2020-07-08 05:07:57 -04:00
Torbjörn Svensson
39d3bfcc4f Fixed NLS warnings, potential NPE and removed excess semicolon
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
Change-Id: I266a72dadae318ae301ca11d2ea2d74082219a24
2020-07-08 05:06:02 -04:00
Marc-Andre Laperle
97c1151f01 Bug 564949 - Remove support for CDT 3.X style projects (partial)
Remove some Wizard classes that are not referenced anywhere anymore.
This commit is just a first of probably several commits but is already
a start. I already had very large commits in progress in the past but
it became big and hard to push so I'd rather do it step by step this
time and at least have some of it done for the next release.

Also moved some messages to its own message bundle in managedbuilder.ui
because it's the only place they are used now.

Change-Id: Ib4258684c91f205dc4af3b17169609b5ebcff253
Signed-off-by: Marc-Andre Laperle <malaperle@gmail.com>
2020-07-07 22:26:01 -04:00
Martin Weber
97e72c23cf Bug 559674: Replace mailing list reference
Change-Id: I2da8201a9c85722aff6dfd9a56950ba12891ec95
Signed-off-by: Martin Weber <fifteenknots505@gmail.com>
2020-07-05 13:39:49 +02:00
Martin Weber
ebeef92ea0 Bug 559674: Eliminate warning
Change-Id: I3bcaa4b95708cb185e66dcffc6e0be68cf56b56e
Signed-off-by: Martin Weber <fifteenknots505@gmail.com>
2020-07-05 13:39:48 +02:00
Torbjörn Svensson
3d218e99c7 Fixed NLS warnings
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
Change-Id: I04565040918e5019415a7e4edd79f7337ab7da5d
2020-07-04 04:28:41 -04:00
Torbjörn Svensson
0391d6ccf1 Fixed NLS and null warnings
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
Change-Id: I6e40038e99c37a4efc25f64d8d186b00c6f55f8c
2020-07-04 04:20:49 -04:00
Torbjörn Svensson
718156aa6b Fixed NLS warnings
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
Change-Id: If8b41e8f60acfde26e65285a9dad221159f2f4ef
2020-07-03 07:09:01 -04:00
Marc-Andre Laperle
6aa232bd23 lldb: Replace a concatenated string with NLS.bind
To make it more translation-friendly.

Change-Id: Icc1a94b2db2f90b060f90e16d56aadf57573b2c6
Signed-off-by: Marc-Andre Laperle <malaperle@gmail.com>
2020-07-02 20:22:33 -04:00
Torbjörn Svensson
0798984bc8 Bug 564553 - Restore mimicking label for LLDB
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
Change-Id: I2c0db2de82478f3ed3434c9f722700ce0efe321c
2020-07-02 20:21:44 -04:00
Torbjörn Svensson
9043b4b511 Corrected plugin id to org.eclipse.cdt.msw.build
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
Change-Id: I85f94d31163caa07a522c17fc73bbd7504230b0a
2020-06-29 22:48:53 +02:00
Mat Booth
032ddb2734 Bug 563491 - Debugger RCP Product fails to build
Be more explicit about the version of javax.activation that is
needed by CDT and javax.xml.bind

Change-Id: I7951b193353ccabc253d77d24b4e1e10beca5eba
Signed-off-by: Mat Booth <mat.booth@redhat.com>
2020-06-25 12:39:33 -04:00
Marco Stornelli
530818839f Bug 564586 - Fix auto complete for final and override keywords
Change-Id: I69ee87f57a45b7b622a06534ce8b8ff2de9f80ff
2020-06-25 01:09:48 -04:00
Torbjörn Svensson
1a4736c725 Bug 564553: Fetch the path to GDB from GdbLaunch
In order to present the same path to the binary as actually launched,
fetch the path from the GdbLaunch instance rather than reading the
attribute from the launch configuration.

Change-Id: I9f973a590136167d1c8d19b6af52378c95645e35
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
2020-06-24 14:39:36 -04:00
Alexander Fedorov
c1a5fc6093 Bug 564373 - CDT : update range for org.eclipse.linuxtools.docker
Use [5.0.0,6.0.0)

Change-Id: I96030272058f166145b448119a2a9122e9a9d02d
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2020-06-17 10:00:16 -04:00
Alexander Fedorov
dac0b96019 Bug 564369 - CDT : use 4.16 GA version for .setup and .target
Updated to
https://download.eclipse.org/eclipse/updates/4.16/R-4.16-202006040540/

Change-Id: I05811ffdc1cba42d76cbc168f430aed2cd889f80
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2020-06-17 13:08:19 +03:00
Sergei Kovalchuk
379004b618 Bug 562003 - Remove dependency to com.ibm.icu from CDT Make UI
The dependency was removed.The Copyright head was updated.

Change-Id: I82e4289fc8cb14e8488b847e8efa415dd1d77b6c
Signed-off-by: Sergei Kovalchuk <serjiokov@gmail.com>
2020-06-17 03:33:25 -04:00
Jonah Graham
92dcc3f6ab Bug 559674: Declare cmake.is problem marker type
Markers were getting created in the code (with calls to
CompileCommandsJsonParser.createMarker) but were not rendered
in the UI because there was no declaration.

Change-Id: I571b6ad7bb6f2b78a7b920cdf74ff89d6790d717
2020-06-16 09:47:31 -04:00