Commit graph

102 commits

Author SHA1 Message Date
Jonah Graham
c248620053 [releng] Increment feature and related versions to 10.2.0
Change-Id: Icd135a588920fa25fd846dc285db5f83e5ac7037
2020-12-19 12:11:25 -05:00
Marc-Andre Laperle
5a2830648c Bug 568224 - Support output parsing for /clang:-isystem when substituting cl for clang-cl
Add /clang:-isystem. It's handled similarly to /imsvc but interestingly it
doesn't support having spaces between the option name and it's value.

Change-Id: Ic5d61df1c7adebbf707d93a60858e942354c9ed9
Signed-off-by: Marc-Andre Laperle <malaperle@gmail.com>
2020-10-25 22:51:48 -04:00
Jonah Graham
c40ed25daa [releng] Update API Filters
Remove old filters that are no longer relevant and mark some API warnings
as ignored.

Change-Id: Id687740b4261f9441f10804941a1d2aa1a3746c8
2020-10-12 10:14:26 -04:00
Marc-Andre Laperle
fa270ed30a [releng] Update plug-in versions
Version changes are all to refect non-API changes (micro version)

Change-Id: I372aa2671a4c7f5c765a42156d3f639b8eaff680
Signed-off-by: Marc-Andre Laperle <malaperle@gmail.com>
2020-10-06 16:20:18 -04:00
Jonah Graham
24639efcee [releng] Bump version to 10.1.0
Change-Id: I39f7c379c0b43c086a25b047b3af564f6f24d670
2020-10-06 16:20:18 -04:00
Marc-Andre Laperle
08e8e57162 Bug 565553 - Improve performance of build command parsers with large number of files
Narrow down parsers based on option string

Instead of trying to match all patterns one by one, we can check the
start of the option string to be parsed and narrow down which pattern
(parsers) should be used.

Doing so is much less elegant code-wise as we are "unrolling" the
beginning of the patterns by hand, but it gives a good speed up. Around
300ms saved with a test of LLVM code base (~50% of parseOption time) and
much larger gains on much larger projects or course.

Change-Id: I9e841e7233078d6e38ad08943d98966d0e3c661e
Signed-off-by: Marc-Andre Laperle <malaperle@gmail.com>
2020-10-04 14:29:11 -04:00
Marc-Andre Laperle
2cea3eba8b Bug 567169 - Detection for VS 2017 and VS2019 toolchain
Fix a NPE I just introduced. This method gets called before things are
initialized, just like before. I prefer being conservative by restoring
previous behavior and not change too many things by revising the
initialization sequence at the same time of other bigger changes.

Change-Id: I1096621e29b51c67d218c7e55eaf3ebe29858d07
Signed-off-by: Marc-Andre Laperle <malaperle@gmail.com>
2020-09-28 22:50:32 -04:00
Marc-Andre Laperle
5af949d656 Bug 567169 - Detection for VS 2017 and VS2019 toolchain
With this change, support for VS 2008, 2010 and 2012 is dropped
and support for 2017 and 2019 is added.

The new detection uses vswhere.exe as we cannot rely on registry keys
anymore. We also retrieve correct values for INCLUDE, LIB, and PATH
by executing vcvars.bat, which is less brittle and hard-coded than
before. Doing this also partially addresses bug 357980.

We also now store knowledge about multiple VS installation (one for
each major version) and related MSVC toolchain. This is one step closer
to letting users choose which version to use and store this per
configuration in the project.

Change-Id: I3b3579d8c6742ef232626b5e5294bb6f8634a326
Signed-off-by: Marc-Andre Laperle <malaperle@gmail.com>
2020-09-27 21:04:43 -04:00
Marc-Andre Laperle
6a3e138431 Bug 567018 - Built-in language settings provider for Clang-cl
It is the same as GCC built-in provider but with tweaked parameters to
pass to Clang driver. It has to be enabled by hand since there is no
toolchain associated with it for now.

Change-Id: I5455d04725b2ee4709844d32ee32d355d120d807
Signed-off-by: Marc-Andre Laperle <malaperle@gmail.com>
2020-09-24 17:55:55 -04:00
Jonah Graham
88b2322c38 Bug 551817: Fix legal docs - and automate their checks
Change-Id: I6f97927f0df64a28e71a2d7ab4c55b609794f751
2020-08-30 23:15:59 -04:00
Jonah Graham
0cb1f7482a Bug 566511: [releng] Add missing UTF-8 encoding for all CDT projects
Includes updates to code cleanliness script

Change-Id: Ic495124285e3e002993f34dc12be5ad7337fe13b
2020-08-30 20:02:41 -04:00
Torbjörn Svensson
f6016c5e0b Fixed "The value for X attribute is not externalized" warning
Change-Id: Ib2f0d85a0428a1f59cc7ccab6ebb8fd91ffa2a41
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
2020-08-28 21:32:18 +02: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
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
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
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
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
Jonah Graham
d66d3e8e85 [releng] Bump version to 10.0.0
Change-Id: I32f6f61835bdbad3cffd713965045c5097c8619f
2020-04-11 17:46:58 -04:00
Marco Stornelli
c2f51a8d23 [releng] Bump CDT version to 9.12.0
org.eclipse.cdt.debug.gdbjtag is bumped because of Bug 561343

Change-Id: I6dac283b7e9093662f57ac5c804021c4201ad6f1
2020-03-22 14:05:17 -04:00
Jonah Graham
db974aa2a8 Bug 558827: Add and/or fix branding on all features
Change-Id: I6d8b1ae2416ed673d18e7e15500dcc7c8a87786d
2020-01-09 15:11:35 -05:00
Jonah Graham
bd814fdaf9 [releng] Bump to CDT version 9.11.0
Change-Id: If729509efbddc71adb565e224437b76089d6e099
2019-12-07 15:24:34 -05:00
Jonah Graham
35338f28a3 [releng] Cleanup code that has been misformatted and update to SDK 4.13
The check-code-cleanliness CI jobs have not been running recently,
so this commit is to the code up to those minor changes

Change-Id: I9fb4b0213dec558f58c5ca718b3d2685564ef456
2019-10-28 13:07:02 -04:00
Jonah Graham
7a2ff27b91 [releng] Update comparator repo to last release
Change-Id: I00901808f1eda041f070b2f3e1cda076987c69a5
2019-10-17 10:07:44 -04:00
Torbjörn Svensson
e6de0c9385 Bug 551817 - Add about.html to src.includes for plugins
Change-Id: Id6e1a3c4aa94bf242efd62a28f5ca9de7d64f699
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
2019-10-17 10:07:18 -04:00
Jonah Graham
2f5f4d50a2 [releng] Bump to CDT version 9.10.0
Change-Id: I027e7e5542fda3e599ee476814593fc4b464adca
2019-10-16 10:55:28 -04:00
Jonah Graham
2cbf927a36 Bug 550076 - Use PE64 parser by default
Change-Id: I757c8ace43e79f1215ad0e817430e5ab90415401
2019-09-09 15:56:07 -04:00
Marc-Andre Laperle
b1702ff753 MSVC: Add a few more macro workarounds for missing built-ins
This change adds a few more macro to define things that are supposed to
be built-in in MSVC. Eventually we might want to move some of those to
the parser but it's not clear to me if we want to polute the GCC parser
with all of this.

Change-Id: I6672d8f14470115aa37a0d76b2b4fb086fe4494f
Signed-off-by: Marc-Andre Laperle <malaperle@gmail.com>
2019-07-04 00:52:13 -04:00
Marc-Andre Laperle
9dd503800c Bug 547967 - MSVC Build Output parser
This new Language Settings Provider allows parsing MSVC (cl.exe) compilation
commands, It is done similarly to the GCC Build Output Parser.
It is not enabled by default but can be enabled when in the context of
building with an external builder.

In general, MSVC support still needs some work but this output parser greatly
facilitates setup for certain types of projects.

Change-Id: I3fb110ecdfbac1cabbc16239ad6667a5e628d443
Signed-off-by: Marc-Andre Laperle <malaperle@gmail.com>
2019-06-26 19:56:11 -04:00
Jonah Graham
f3e8387a8e [releng] Bump version to 9.9.0
Change-Id: I6641e51a8bfdb44fa5c646d97debf2bf814c107a
2019-06-11 12:33:48 -04:00
Jonah Graham
cdc99feef2 [releng] Bump version to 9.8.0
Change-Id: I3861d4c5d0eecaf9dd370f269a655e666b60561a
2019-03-01 13:25:21 +00:00
Jonah Graham
677cc2cf63 [releng] Bump version to 9.7.0
Change-Id: Icaa0b6acf73e3a19e0d102fa8ae784e631d8743a
2018-12-10 13:50:44 +00:00
Jonah Graham
37ed2c406d Bug 540373: Update the compiler warnings/ignores
The previous alignment of all the warnings/ignores
led to too many warnings that weren't there before. This
commit relaxes them a bit.

The core/org.eclipse.cdt.core/.settings/org.eclipse.jdt.core.prefs
is still the "master" copy, with
releng/scripts/check_code_cleanliness.sh containing the
exceptions that apply to test plug-ins.

Change-Id: Ibd4e31ade0b42b31e7cbe5a94f06c6fc15183a56
2018-11-24 10:55:06 +00:00
Jonah Graham
aa1040a21a Bug 540373: Remove '(non-Javadoc)' comments
These were inserted in the past automatically by Eclipse but
newer tooling makes them redundant.

These were removed by doing a global find/replace on *.java files
using the following regular expression:
\t/\*\n\t \* \(non-Javadoc\)[^/]*/\n

Change-Id: I59d3248020f10934fde1dda5b5a31e20bb188e19
2018-11-22 22:00:29 +00:00
Jonah Graham
caf2292768 Bug 540373: Cleanup: Remove redundant type arguments
This was done by selecting all projects in Eclipse then
Source -> Clean Up... -> choosing:
- Remove redundant type arguments
and completing the wizard

Change-Id: Iaecc7010f097b4b1fabd29ccaa34ccb23a716fbf
2018-11-22 21:55:36 +00:00
Jonah Graham
8985c7b63f Bug 540373: Cleanup: Add missing annotations
This was done by selecting all projects in Eclipse then
Source -> Clean Up... -> choosing:
- Add missing Annotations - and selecting all three types:
 - @Override
 - @Override on interface methods
 - @Deprecated
and completing the wizard

Change-Id: I5d367dacb04327107f25e147edc08efc4eb1c2fe
2018-11-22 21:51:31 +00:00
Jonah Graham
a923614c73 Bug 540373: Cleanup: Organize Imports
This was done by selecting all projects in Eclipse then
Source -> Clean Up... -> choosing:
- Organize Imports
and completing the wizard

Change-Id: Ia7b305a4c967d0e6f4e8fb8c1041e7028b24006c
2018-11-22 21:47:02 +00:00
Jonah Graham
170e654b47 Bug 540373: Cleanup: Format & Remove trailing whitespace
This was done by selecting all projects in Eclipse then
Source -> Clean Up... -> choosing:
- Format source code
- Remove trailing white spaces on all lines
and completing the wizard

Change-Id: I63685372c6bcc67719bcf145123bcb72e5b00394
2018-11-22 21:47:02 +00:00
Jonah Graham
35996a5c5c Bug 540373: Standard .settings auto applied
The releng/scripts/apply_jdt_prefs_to_all_projects.sh was run to
copy standard settings to all other projects.

Change-Id: I4436c947d7f0142f56b709e661379c3eb54f666b
2018-11-22 21:47:02 +00:00
Jonah Graham
f70a8b35c1 Bug 540371: Update to EPLv2 using releng/scripts/change_to_eplv2.sh
Change-Id: Ifbb1d5af2a00bd5634dea200320e8c4303ffca6c
2018-11-22 20:31:51 +00:00
Jonah Graham
48d2271a58 Bug 540373: Normalize newlines with .gitattributes
There is also a new script to verify completeness of .gitattributes:
releng/scripts/verify_gitattributes.sh

Change-Id: I2ce270852ab54b66b6c474a6ec94203fe5bba78b
2018-11-20 21:20:39 +00:00
Karsten Thoms
652602febd Bug 540610 - Add Automatic-Module-Name header
Change-Id: Ia990b24469751050dd9ec8f9b5550804816308b3
Signed-off-by: Karsten Thoms <karsten.thoms@itemis.de>
2018-10-30 15:49:15 +01:00
William Riley
f3ca365140 Bug 540367 - Increment version numbers
Change-Id: I4a355170a7075f0a98ba3c1a5131c235c89b07d2
2018-10-23 11:20:31 -04:00
Jonah Graham
4d5204c771 [releng] Bump version to 9.6.0
Change-Id: I1618eaeab14b421155af733a73e36f6e37ea0b85
2018-06-05 22:13:24 +01:00
Jonah Graham
3afc828ae0 [releng] Bump version to 9.5.0
Change-Id: Ie342f02f7aae633f41a7ab7d39c21e056793a04a
2018-02-13 11:25:08 +00:00
Doug Schaefer
76e1842644 Implement ordering of toolchains.
Introduce toolchain types independent of providers.

Change-Id: I2cf3145920fcf4e7132468b6e653d7ea3e211127
2017-11-07 11:01:15 -05:00
Doug Schaefer
11dcec43f2 Add UI tests plugin for CMake. Fix a couple of bugs it found.
Also restructures the pom.xmls to put the modules in the top level
so we can order them to have the test plugins build after them.

Change-Id: I2f0e4ebd252791fb8844cdf0f635d574946207aa
2017-10-06 16:36:51 -04:00
Doug Schaefer
d8cc0751ae Update feature versions to CDT 9.4.
Also remove remaining pom.xmls for feature projects.

Change-Id: I78d6335f92d70ad2699b8a25801ff72d2935aefe
2017-09-11 11:18:42 -04:00
dschaefer
c4990122ac Bug 519190 - Get CMake working with MSVC toolchain
Adds in Core Build support for the MSVC toolchain. Fixes issue
with PATH in the core build configuration since on Windows it's often
Path.

Change-Id: I3eb201bc22bf42341207e8f3bbef999d4d174f05
(cherry picked from commit 7f3745c765)
2017-07-05 10:18:36 -04:00
Marc-Andre Laperle
0046099052 releng: Make use of Tycho POM-less functionality
This removes a lot of pom.xml from the source tree. This is using the
"POM-less" Tycho functionality.
See
https://wiki.eclipse.org/Tycho/Release_Notes/0.24#POM-less_Tycho_builds

One advantage of this is that you do not need to update the version in
the pom.xml when you change it in the MANIFEST.MF because the pom.xml is
automatically generated. This also reduces a lot of the duplicated
information and pom.xml repetition.

- Maven 3.3 and up is required.
- Only eclipse-plugins and eclipse-features can be pom-less.
Repositories, target and others still have pom.xml.
- New parent poms are added because a parent is necessary directly one
level above the plug-in/feature that will have its pom generated
- Some test plug-ins had to be renamed .test -> .tests because it's
required so that it detects that it's a test plug-in
- Some suites were renamed so that they all use the same consistent name
"AutomatedIntegrationSuite"
- Profiles were added for the more common test configurations. They are
activated by the presence of simple .properties files that only serve to
activate the correct profile. The profiles:
  - One for UI tests (UI present and start in UI thread)
  - One for SWTBot tests (UI present and do not start in UI thread)
Other test plug-ins that are too different are kept intact and still
have
a pom.xml
- Fragments are kept intact since they all have different target
platform configurations

Change-Id: I9d73380eb766f547830c552daf08053a30b1845c
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
2017-02-13 23:19:56 -04:00