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

34770 commits

Author SHA1 Message Date
Torbjörn Svensson
5779b04e6b Fixed "Key X is not found in localization properties file" warning
Change-Id: I467386ce652c67507c9373a669a60dbb8a8f8e2d
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
2020-08-28 21:32:18 +02:00
Torbjörn Svensson
1f069898cf Fixed "Build entries must contain at least one value" warning
Change-Id: I47d8b76bc80f863d034044d2a0e4d9e84a335e29
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
2020-08-28 21:32:18 +02:00
Torbjörn Svensson
cb9249314a Fixed "An entry for plugin.xml is required in bin.includes" warning
Change-Id: I6615465fb74c2e4df812e99cd1e5e8b0ead99de3
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
2020-08-28 21:32:18 +02:00
Torbjörn Svensson
1c448e748e Fixed "An entry for OSGI-INF/ is required in bin.includes" warning
Change-Id: I0c1980995d7c53958067658474ba604bdaedb7a1
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
2020-08-28 21:32:18 +02:00
Torbjörn Svensson
8e42cc8b7b Cleanup of PTY class
Change-Id: If04a3ccbc178040d4929767ef1f4c0f1672dfae9
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
2020-08-28 10:25:08 -04:00
Torbjörn Svensson
38e970a45d Fixed "Unnecessary semicolon" compile warning
Change-Id: I6dc9bad163750f00be7046ebb9c18ae447ab9455
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
2020-08-28 14:09:55 +02:00
John Dallaway
5188547f31 Bug 566462: Eliminate deprecated GDB hardware debug API
Change-Id: Ie0d5fa1beafaa0a203a9f4f043835b401cc6929d
2020-08-28 04:08:20 -04:00
Torbjörn Svensson
07b50ba2a2 Bug 521515: Do not rely on commit date for reproducible builds
As mentioned in
https://devblogs.microsoft.com/oldnewthing/20180103-00/?p=97705,
Microsoft has stopped using the _IMAGE_FILE_HEADER.TimeDateStamp as a
time stamp and rather as a hash of the source files to make the build
result predictable.

Change-Id: I4f4a7b9557330e4c478ef7fb25653144c5b2d4ad
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
2020-08-27 15:42:44 -04:00
Jeff Johnston
2f05a6348e Bug 565142 - Support using CDT in Eclipse flatpak
- add missing @since tag for new CommandLauncherManager
  checkIfIncludesChanged method

Change-Id: Ic1774a464c08ee86ee594c4d80102457f79b0ea5
2020-08-26 15:46:15 -04:00
Alexander Fedorov
0349a8a85f Bug 566421 - CDT LSP should declare server as singleton
Mark "org.eclipse.cdt.lsp.core" contribution as singleton

Change-Id: If39a3b769f11d0cfda94857cc4d5b7bc6fff0df5
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2020-08-26 22:12:59 +03:00
Marc-Andre Laperle
b87c2a793d Bug 565553 - Improve performance of build command parsers with large number of files
Do not pretty-format *.language.settings.xml files in the workspace
plugin state area. These are not meant to be shared and looked by users
so they do not really need to be pretty-formatted. This saves a lot of
time for large projects with per-file language settings. For example, I
have seen this save 30 sec on a test project during serialization.

Change-Id: I27f8e0cfdc593f084d95bbed7aedb707570f1f6d
Signed-off-by: Marc-Andre Laperle <malaperle@gmail.com>
2020-08-25 23:11:40 -04:00
Victor Rubezhny
2b67c0bda9 Bug 418579 - String index out of range: -8
Signed-off-by: Victor Rubezhny <vrubezhny@redhat.com>
Change-Id: I02763d18fdf8f9715670b671a7f84f9fe06489ca
2020-08-25 16:08:45 -04:00
Jeff Johnston
05c45c0bae Bug 565142 - Support using CDT in Eclipse flatpak
- modify ProcessFactory to prefix commands with flatpak-spawn
  when running under Eclipse flatpak
- add new FlatpakLaunch class to dsf.gdb to do a prelaunch
  of gdbserver and set up remote port settings when debugging
  local C/C++ application under Eclipse flatpak
- add new tab to gdb when running under Eclipse flatpak
  to allow user to specify gdbserver and port number
- add new org.eclipse.cdt.flatpak.launcher plug-in which
  contains a FlatpakCommandLauncherFactory to handle copying
  header files from host to workspace when developing under
  Eclipse flatpak
- add new FlatpakCommandLauncher class which simply extends
  CommandLauncher and can be used for debugging purposes to
  distinguish from regular command launcher
- also add new FlatpakHeaderPreferencePage to allow C/C++ users
  to delete copied headers if needed
- dynamically add the headers preference page from
FlatpakCommandLaunchFactory
  if running under Eclipse flatpak
- add new ICommandLaunchFactory3 to add an interface to check if
  headers have been modified/removed and scanner info refresh
  is required
- add new org.eclipse.cdt.flatpak.launcher-feature
- give higher priority to ContainerCommandLauncherFactory so if
  running on Eclipse flatpak, the flatpak factory won't be chosen
  if both apply (i.e. building in a container but running on
  Eclipse flatpak)

Change-Id: Id68e60c4dd37c4494af10440231ac7b7bbec8d17
2020-08-25 13:45:33 +03:00
Jonah Graham
aa5d565542 Bug 566339: Restore lost bundles to CDT's p2 repo
These were lost accidentally in commit 2bd07a89ca
In the restore version use the core PDE way of including bundles,
rather than Tycho's <iu> extension as we don't need the extended
capabilities and having an editor that works is nicer. See Bug 566340

Change-Id: If78d34737957c322b1d068840fc6f17883857070
2020-08-24 22:26:19 -04:00
Jonah Graham
0c5093d6ff Bug 566334: Turn on API Tooling & Analysis for all bundles
Change-Id: I3cb5645eba52b0cd0e9a71069264d9c589159107
2020-08-24 17:50:56 -04:00
Jonah Graham
fd9382d8a9 Bug 562494: Update BREE to Java 11
Change-Id: I0c91aafc0cb1b179936acbd4c9df2d961899e3fa
2020-08-24 17:50:56 -04:00
Marc-Andre Laperle
e933f46289 Bug 565553 - Improve performance of build command parsers with large number of files
Compile a pattern ahead of time and early return.

The first pattern is used to trim extra characters that are not
contained within the actual option pattern. If this first pattern
doesn't match, there is no point in continuing because it is a superset.

Times before/after, only counting AbstractOptionParser.parseOption
LLVM before: 4289ms, after: 622ms

Change-Id: Id40fc9a35359c39aea00ba14813ffe6c343158fc
Signed-off-by: Marc-Andre Laperle <malaperle@gmail.com>
2020-08-23 23:21:14 -04:00
Marc-Andre Laperle
a9b67d0828 Bug 565553 - Improve performance of build command parsers with large number of files
Optimize MSVCBuildCommandParser.unescapeString.
Instead of running a Matcher/replaceAll every time, check first if the
string contains the characters to unescape first. Finding a substring in
a string is much faster than matching a pattern so this saves quite a
bit of time on large MSVC projects since many options will not have the
characters needed to be unescaped.

Change-Id: If2ad7892c29374458d5de446d4492ce3ba576c9c
Signed-off-by: Marc-Andre Laperle <malaperle@gmail.com>
2020-08-23 23:18:40 -04:00
Marc-Andre Laperle
68c9b53de0 Bug 566107 - Option parsers can fail to trim extra characters when using patterns with numbered back-references
Clarify in the javadoc that numbered back-references should not be used
in order for option pattern to safely work.  Add a unit test
demonstrating the flaw when numbered back-references are used.  Update
GCC parser as an example for not using numbered back-references.

Change-Id: I008b3589486dc9fb0d9d9aa41f7cc2443bf4351e
Signed-off-by: Marc-Andre Laperle <malaperle@gmail.com>
2020-08-23 21:33:05 -04:00
Alexander Fedorov
4f9d96f207 Bug 566286 - Rework CDT LSP Activator
Switch logging code to platform facilities

Change-Id: Iff6654ab6a55af898be8360ec0208ec7a0ddf977
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2020-08-23 10:16:33 -04:00
Jonah Graham
fbc117fd59 [releng] Update target platform Eclipse 4.17 M3
Change-Id: I5538eaa97b655137730f03a3be03af2e920e7b2e
2020-08-23 07:52:12 -04:00
Alexander Fedorov
147ff5a482 Bug 566093 - CDT LSP: null-free functions to retrieve URL from IDocument
Rework usages of Java 11 Optional#isEmpty() to Java 8
Optional#isPresent()

Change-Id: I9c0788414e7752efe87bf50eafadb6f3ab9a76be
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2020-08-23 05:32:41 -04:00
Torbjörn Svensson
e4e1f6780d Bug 565628: Unify line endings for memory block configuration
As the memory browser configuration is preserved in the launch
configuration file as an indented serialized XML string, the string will
contain the result of System.lineSeparator(). As the launch
configuration file can be shared among developers with different
platforms, there is a risk that the launch configuration file is always
modified although there is no real modification, just line endings.
To avoid this scenario, always save the XML string without any
indentation or line endings.

Change-Id: I94497a924f7aa5a881ac6a32f146d2cbceb6324f
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
2020-08-22 11:33:02 -04:00
Alexander Fedorov
416a7f4f30 Bug 558592 - Rework access to PresentationReconcilerCPP
Move UI code to LSP UI bundle. Remove unused UI dependencies from LSP
Core bundle.
The Activator rework will follow with another Gerrit.

Change-Id: Ifb7e4d153dab6dcc7d50fdf60c2f22333abbb8ed
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2020-08-21 14:16:34 -04:00
Marc-Andre Laperle
2effd41b14 Mark Visual C++ Support feature as experimental
This feature was never really fully mature. It lacks important things
like proper built-in detection, ability to select VS version, target
architecture, Windows SDK, etc.  And now the supported VS versions are
quite behind. I have the intention to improve it over time but I think
it is better to set more reasonable expectations by flagging it as
experimental and it will also allow more ambitious but possibly
incompatible changes workspace-wise.

Change-Id: Iceaa316fb5cf17dde9a6f056d5ced1b3ce496c7f
Signed-off-by: Marc-Andre Laperle <malaperle@gmail.com>
2020-08-21 12:40:35 -04:00
Alexander Fedorov
581eb9eb6d Bug 566237 - Remove CQuery support from CDT LSP feature
Removed "org.eclipse.cdt.lsp.cquery" bundle from "org.eclipse.cdt.lsp"
feature.

Change-Id: I076ce122bb612949f9e8efe7d868eb3a083ea4a0
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2020-08-20 21:12:42 +03:00
Alexander Fedorov
0bf22a2103 Bug 558664 - cquery and clangd: registered each LS from its own bundle
Part 13:
Add about.html and align headers.

Change-Id: I6c3fdfdbea65fbcc1e60a653ff6619afee916212
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2020-08-20 13:43:59 -04:00
Alexander Fedorov
df0e1d62b1 Bug 558664 - cquery and clangd: registered each LS from its own bundle
Part 12:
Extract cquery tests to org.eclipse.cdt.lsp.cquery.tests bundle.

Change-Id: I188fc5a0b06bccfeb0884c054c0d972226857b78
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2020-08-20 13:43:59 -04:00
Alexander Fedorov
fa03b9225b Bug 558664 - cquery and clangd: registered each LS from its own bundle
Part 11:
Move cquery code to org.eclipse.cdt.lsp.cquery bundle.

Change-Id: I079f08c1aa1c177abdc291402931f7547ab325bf
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2020-08-20 13:43:59 -04:00
Alexander Fedorov
b8427cb54a Bug 558664 - cquery and clangd: registered each LS from its own bundle
Part 10:
Move clangd code to org.eclipse.cdt.lsp.clangd bundle.

Change-Id: Ib2938ea34a4996a535658decc61a725f4626c649
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2020-08-20 13:43:59 -04:00
Alexander Fedorov
1fb6efa9c3 Bug 558664 - cquery and clangd: registered each LS from its own bundle
Part 9:
Add LSP clangd bundle.

Change-Id: I9274f56e7e2692f58b2a469007b1853b3e9c1d48
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2020-08-20 13:43:59 -04:00
Alexander Fedorov
8da8e068a5 Bug 558664 - Cquery integration should be extracted from LSP Core
Part 8:
Add LSP CQuery bundle.

Change-Id: Ie728716916b4d4ee854faec50925957f7d9436b5
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2020-08-20 13:43:59 -04:00
Alexander Fedorov
58e1b69c80 Bug 558664 - Cquery integration should be extracted from LSP Core
Part 7:
Extract CQuery protocol extension to its package and declare it as a
LanguageProtocolExtension component.
Remove custom "clientImpl" from LSP extension point, as we can use
standard one.
Declare DelegatingLauncherBuilder to collect and register language
extensions for the preferred language server.

Change-Id: I88be0456bbb53d24a6a0df2578c145649268b028
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2020-08-20 13:43:59 -04:00
Alexander Fedorov
3efcecf379 Bug 558664 - Cquery integration should be extracted from LSP Core
Part 6:
Declare SupportedProtocolExtensions interface to access contributed
LanguageProtocolExtension for a given language server.
Extract ResolvePreferredServer class.
Add ContributedProtocolExtensions OSGi component with tests.

Change-Id: Iecb1fff5a29a559e3c9d8703cc7d8fa71bb18042
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2020-08-20 13:43:59 -04:00
Alexander Fedorov
c609416622 Bug 558664 - Cquery integration should be extracted from LSP Core
Part 5:
Extract CQuery protocol methods to separate types.

Change-Id: I14f48ff4f374bd257adec67708bf58150993db21
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2020-08-20 13:43:59 -04:00
Alexander Fedorov
8abfaab458 Bug 558664 - Cquery integration should be extracted from LSP Core
Part 4:
Switch C/C++ LSP preferences to LanguageServerConfiguration and remove
constants with server identifiers. Align i18n accordingly.

Change-Id: I4dcd9ea57a2c4577bb6763bb859afbd339eb66e0
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2020-08-20 13:43:59 -04:00
Alexander Fedorov
3705069ef2 Bug 558664 - Cquery integration should be extracted from LSP Core
Part 3:
Convert ContributedLanguageServers to OSGi component and switch usages
to its interface.
Convert LanguageServerConfiguration implementations to OSGi components.

Change-Id: Ic22fa26a7abfd40a959ae0189a63b9a04d1ac4e0
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2020-08-20 13:43:59 -04:00
Alexander Fedorov
05ae2a8185 Bug 558664 - Cquery integration should be extracted from LSP Core
Part 2:
Introduce SupportedLanguageServers interface and remove knowledge about
specific language server from CPPStreamConnectionProvider. Replace
ICPPLanguageServer with LanguageServerConfiguration.
Move Clangd and Cquery server configurations to its packages.

Change-Id: I825c39bc6f8004616e639fda28660d3c98d08057
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2020-08-20 13:43:59 -04:00
Alexander Fedorov
afaa593d34 Bug 558664 - Cquery integration should be extracted from LSP Core
Part 1: rework "$cquery/progress" notification handling to be reusable

Change-Id: I6995594e51289e7f8a516ffc2cc2ec8bda88f919
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2020-08-20 13:43:59 -04:00
Moritz 'Morty' Strübe
240ca9085c Bug 538147 Fix mounting folders using windows
Removing unnecessary code fixes things, as paths are corectly handled
in the docker code.

Change-Id: If8b6b8877d5664c6692f58b0646cd0a93857a379
2020-08-20 13:13:29 +02:00
Jonah Graham
a588063b23 Bug 521515: Automatically check .so, .dll, .exe files for valid deps
Because we build cross platform, we want to make sure no unexpected
dependencies are introduced on newer or non-universal libraries
in the native code.

Change-Id: Ib8ffeb5f374bcd04514c31dca9d8297fed70343a
2020-08-18 21:43:21 -04:00
Torbjörn Svensson
5a3d2e744b Bug 521515: Also build pty.dll if host is Windows
Change-Id: Idb991b8c641a6fd7a38ef32cce04c63f15f8f57d
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
2020-08-18 20:16:49 -04:00
jantje
2a62d58621 Bug 564123 Treat environment and build variable case sensitively
Remove all equalIgnoreCase and equal with uppercasing for environment
variables

Change-Id: Ic15974b5fb62413c7b1826ced544ff6d4a8eba2f
Signed-off-by: jantje <eclipse@baeyens.it>
2020-08-18 18:11:48 -04:00
Torbjörn Svensson
09582630d7 Bug 521515: Do not log every failed access attempt
The Windows registry can be checked for keys that may not exist.
In order to avoid logging an exception that the entry is missing when
it's not critical that the entry do exist, the method should just return
null and let the caller handle if it's critical or not that the entry
exists. To easily debug situations where the entry is supposed to always
exist, the trace symbol
"org.eclipse.cdt.core.native/debug/win32/registry" can be set to "true"
and the exceptions will be logged in any case.

Change-Id: I6603cbe363ebecd357fa44c41fb1a26c6345dd70
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
2020-08-18 14:52:26 -04:00
Jonah Graham
a708a1dcc9 Bug 564123 Remove deprecated PathUtil that has a replacement
Change-Id: Ie2fd4ed201a2bc0c490df9b0deb43cb6d53b1876
2020-08-18 12:33:13 -04:00
Jonah Graham
ef79d15071 Bug 564123 Remove long commented out and dead test code
Change-Id: I0022463409db4de701b3ad18e1309f894d499e2a
2020-08-18 12:26:40 -04:00
Jonah Graham
8c1be591ff Bug 521515: Build pty.dll in docker (fixup)
Fixes for items identified by Torbjörn in my changes to commit
2d03236339

Change-Id: I51f289f731062b4a43bb041d25cd08467014151e
2020-08-18 08:20:12 -04:00
Alexander Fedorov
786ae3ce2b Bug 566093 - CDT LSP: null-free functions to retrieve URL from IDocument
make ResolveDocumentUri final

Change-Id: I06169d98f6af3b49595e4e8f6308c6aad790eaf7
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2020-08-18 14:46:44 +03:00
Alexander Fedorov
f555015183 Bug 566093 - CDT LSP: null-free functions to retrieve URL from IDocument
Remove Server2ClientProtocolExtension::getUri

Change-Id: Iee7e4808e40160e456f3db85c4dc98d04632a92a
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2020-08-18 10:03:58 +03:00
Torbjörn Svensson
2d03236339 Bug 521515: Build pty.dll in docker
Change-Id: I370327489b6c18ac6ba9f36a8da9e94b078ffe1e
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
2020-08-17 21:42:25 -04:00