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

35735 commits

Author SHA1 Message Date
Jonah Graham
71ad45b382 [releng] Update to 2021-12 RC2 deps
Change-Id: Iaf291d047d7517586ca4c1c83b0708de3619632b
2021-11-29 17:58:48 -05:00
Jonah Graham
eaa83fc085 Add missing root LICENSE file
See https://gitlab.eclipse.org/eclipsefdn/emo-team/emo/-/issues/107#note_335851

Change-Id: I3858fd34b41743ed465dbed2df87083f2ac52c53
2021-11-29 17:58:48 -05:00
Jonah Graham
34b9d23951 [releng] Update to 2021-12 RC1 deps
Change-Id: Iec85fc3dee66bd4161087efc02aec727e99dc877
2021-11-22 12:18:10 -05:00
Jonah Graham
1a293f7a5f [releng] Update to 2021-12 M3 deps
Change-Id: Id14797d55be47e9975574f8c5245483e64978365
2021-11-15 20:07:51 -05:00
Alexander Fedorov
2e6a2cfe6d [releng] switch setup to use latest by default
Use eclipse.target.platform.latest
Sync with Target

Change-Id: Ife2508edb72eaa45bfe33618d3cbde47a5d34d6a
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2021-11-15 20:04:39 -05:00
Jonah Graham
13cdd8ada7 Bug 576533: Add support for Mac M1
-framework JavaVM is no longer needed for a while and in
latest Xcode is removed as an option

x86 on macOS is no longer supported by recent Xcode, so drop it
from CDT. x86 hasn't been supported in Platform for a while, so
it wasn't actually usable.

Change-Id: I149722b168fe9819ee334d4afd25ae624b1664c5
2021-11-15 15:32:29 -05:00
Jonah Graham
fa8a6279d2 Bug 577074: Fix i18n on import/export language settings
Side effect is that the indentation in the transformer now
works properly, so the extra newlines inserted everywhere
can be removed.

This change was done by changing the output to an OutputStream
instead of a Writer so that the XML handler could set the
encoding to match what was in the settings, i.e.:
transformer.setOutputProperty(OutputKeys.ENCODING, "UTF-8");

The non-translated language IDs are used in preference to the
translated names when importing. The export now puts that ID
(when available) in the output file. The ID is available on
normal user files (C, ASM, C++) and not on object files. The
object files probably don't have languages settings that are
exported, but this code does not exclude them from being exported.

Change-Id: I46de004bb8c6a0ca05210487a5d33390d397c720
2021-11-09 11:01:13 -05:00
Alexander Fedorov
d7c4d08c91 [releng] always place repository before unit elements for .target files
Format both baseline and regular targets

Change-Id: Idc3c4739fdca7c4311981dfc3fe652713bc024a2
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2021-11-06 20:33:51 +03:00
Alexander Fedorov
938453fd23 [releng] Add indents for .target files
Format both baseline and regular targets

Change-Id: I2498e77df38af844e2cbdb10376a3f2917e0b763
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2021-11-06 19:51:05 +03:00
Alexander Fedorov
e5dad24eed [releng] switch setup to use 2021-09 by default
Updated Baseline to 2021-09
Updated Target to 2021-09+

Change-Id: I9dd301b2b759452c743238626ac671008e2cd254
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2021-11-06 18:55:47 +03:00
Mat Booth
6e95a40a57 Bug 560287 - java.lang.CCE: o.e.swt.layout.GridData cannot be cast
Previously custom launch config tabs could cause a Class Cast Exception
in the Launchbar's edit launch config dialog if they did not use the
GridLayout. Since ed1e058 the launchbar dialog no longer tries to give
the tab control GridLayoutData, avoiding the problem and allowing custom
tabs to use whatever layout they wish.

This change updates the launchbar UI tests to Junit 5 and adds a new
SWTbot test to verify the dialog no longer throws a CCE in this case.

Signed-off-by: Mat Booth <mat.booth@gmail.com>
Change-Id: I05c85cd5f0f5996e46601990b72602383b3fac06
2021-11-05 13:51:07 +00:00
Mat Booth
ed1e05876c Bug 576987 - Unable to scroll when editing a launch config
The current situation is that:
* launch configuration dialog tabs scroll correctly in the standard
  Eclipse platform dialog, but not at all in the Launchbar-specific dialog
* some CDT-supplied launch configuration dialog tabs try to manage their
  own scrolling behaviour to fix scrolling in the Launchbar-specific
  dialog but this breaks scrolling for that tab in the standard Eclipse
  platform dialog.

This change fixes the launchbar-specific editor dialog to use a scrolled
composite instead of a regular composite on which to layout the content
of each tab -- This gives the launchbar's configuration editing dialog
exactly the same scrolling behaviour as the standard Eclipse platform
configuration editing dialog.

And also fixes any CDT-supplied tabs that try to manage their own
scrolling behaviour so now all tabs have the same behaviour when viewed
in the Launchbar-specific dialog as they do when viewed in the standard
Eclipse platform dialog.

Change-Id: I0d7364a24ca48bb125cae9518728b4c93b93545d
Signed-off-by: Mat Booth <mat.booth@gmail.com>
2021-11-04 11:18:50 -04:00
Mat Booth
ef30e37327 Bug 561996 - Remove dependency to com.ibm.icu from CDT DSF GDB
Switch to JRE implementations:
 * com.ibm.icu.text.MessageFormat -> java.text.MessageFormat

Signed-off-by: Mat Booth <mat.booth@gmail.com>
Change-Id: I823bcea99adad3decdfa29651b934b5902607f70
2021-11-03 18:28:19 +00:00
Christian Walther
f138ad10e8 Bug 575490: "No rule" after removing last source file from root
Include the top-level subdir.mk only when one was actually generated
(i.e. when there are source files there), just like for all other
subdir.mk, otherwise a stale one from earlier when there were source
files that have since been removed may be picked up, causing "No rule to
make target" errors.

In some cases (from bug 303953), the removal would be noticed and the
stale subdir.mk be overwritten by a correct empty one, avoiding the
error, but not in the following cases:
- When CommonBuilder.performCleanning() decides that a full rebuild is
needed, regenerateMakefiles() is called instead of generateMakefiles(),
which doesn't get the delta.
- When the refresh in which Eclipse notices the removed source file
happens as part of a build (one that probably failed because the
makefiles weren't updated yet), the next build after that apparently
does not get the delta containing the removal anymore.

Change-Id: Id15b424f02dd5c513d2124620c0c8699d61874fd
Signed-off-by: Christian Walther <walther@indel.ch>
2021-11-02 12:45:10 +01:00
Christian Walther
3afae27158 Bug 575702: Nondeterministic makefile ordering
Several parts of makefile output were generated by iterating over
HashMaps, which do not have a deterministic iteration order. Use
TreeMaps instead to output in sorted order. This is possible now that
the API function with return type HashMap is no longer public API and
can be changed to return Map instead.

Benchmark files for affected tests are updated to the new ordering.
This would not be strictly necessary: the tests would also succeed
without, since org.eclipse.cdt.managedbuilder.testplugin.
ManagedBuildTestHelper.compareMakefiles() uses a reordering-tolerant
comparison. However, recording the new (now hopefully stable) order
makes future development on makefile generation easier by avoiding
spurious diff output when tests fail due to changes to other parts of
makefiles.

Change-Id: I20f2e51bd5b9e3bcc5da245d781ca5b4a34fc0b2
Signed-off-by: Christian Walther <walther@indel.ch>
2021-11-02 10:47:17 +01:00
Christian Walther
32a6ad1f4d Bug 575702: Nondeterministic makefile ordering (prelude)
This fixes a small and rarely hit in practice regression regarding
nondeterministic ordering in makefile output introduced in 15c29eb (bug
505882).

Multiple values for a build output variable were previously output in
definition order. Now they are generated by iterating over a HashSet,
which does not have a deterministic iteration order. Use a TreeSet for
output in a consistently sorted order instead.

Output variables with multiple values are rare (most tools generate one
output file of a particular type) and this case was not exercised in the
existing unit tests. Modify one such that it does (even if in a somewhat
contrived situation). Of note, ${OUTPUT} cannot be used in the
commandLinePattern for such a tool because it squashes the multiple
values into a single quoted file name - misuse ${FLAGS} instead.

Change-Id: Iaa28525c21d74c87dd4d72a03e334ed0e5576727
Signed-off-by: Christian Walther <walther@indel.ch>
2021-11-02 10:40:32 +01:00
Mat Booth
a957e8121d Bug 575145 - Importing CMake/Meson Projects
Add API to o.e.tools.templates.ui that hooks into the smart import
feature and allows easy implementation of configurators for various
CDT project types.

Project types that have a IGenerator may use this API to offer smart
import functionality by registering their implementation using the
org.eclipse.ui.ide.projectConfigurator extension point.

This change includes project import implementations for Meson and
CMake project types.

For these project types users can use the normal project import
workflow for their existing non-Eclipse CMake projects instead of
using the New Project Wizard. As an additional benefit, users
can now also import more than one project at a time, even nested
projects.

Change also includes SWTBot tests to exercise the feature.

Signed-off-by: Mat Booth <mat.booth@gmail.com>
Change-Id: I96589e86bee561aa200a4a4487549305765d6409
2021-10-31 11:21:35 +00:00
Mat Booth
172d3a25dc Bug 576957 - Incorrect javadoc links in doc.isv bundle
Since fd9382d CDT has required Java 11, this change fixes the Javdoc
shipped as part of the doc.isv bundle to link to Java 11 classes
instead of Java 8 classes.

Fixes the following warning seen during the build: "javadoc: warning
The code being documented uses modules but the packages defined in
https://docs.oracle.com/javase/8/docs/api/ are in the unnamed
module."

Signed-off-by: Mat Booth <mat.booth@gmail.com>
Change-Id: I1d02742222686e3284bcc200fd6a5b4c3099695b
2021-10-29 11:41:39 -04:00
Torbjörn Svensson
126cf32803 [test] Remove projects from workspace even on failures
If these tests fail, they cause a series of metadata corruption that
will render most/all test executed after as unreliable. Usually, there
is about ~150 test cases that fail without reason when one of these
fails.

Contributed by STMicroelectronics

Change-Id: Ic71ace8b6a55c49dd729d40385b245f12dbd6d85
Signed-off-by: Torbjörn Svensson <torbjorn.svensson@st.com>
2021-10-28 21:20:14 +02:00
Torbjörn Svensson
6688a93e5f Remove unneeded pom.xml and maven attribute
Tycho will automatically generate the content of the pom.xml, so no
need to define it explicitly.
The maven attribute reports an error in the problem view that cannot be
fixed without manually removing the attribute. Left from an earlier
version of the plugin?

Contributed by STMicroelectronics

Change-Id: I733f2b048e8d80eca8bceee1526734b4c4dbd75b
Signed-off-by: Torbjörn Svensson <torbjorn.svensson@st.com>
2021-10-25 18:57:28 -04:00
Jonah Graham
c12f9e28c0 [releng] Require target platform bundles as minimum version
Without setting dependent plug-ins to minimum version to match the
target platform we are aiming for we can imply (and therefore let install)
CDT into older versions of Eclipse where CDT does not actually work.

This can be exposed in very odd ways, such as IllegalAccessError, when
platform has allowed API changes.

However, rather than update every single bundle in CDT, only the
o.e.cdt.core/ui bundles are being updated as this should achieve the
desired result without every other bundle needing to be touched.

See Bug 536448

Change-Id: I6f57e19044facd65a9214204efc9c8b2c2201590
2021-10-25 18:56:15 -04:00
Jonah Graham
c13962fcd7 [releng] Update to latest dependencies (2021-12 M2)
This includes requiring older version Hamcrest as the org.hamcrest
bundle was recently update in Orbit to a new major version that
isn't compatible.

Change-Id: I7cb23f0be058d1404b93b1a76cbfe8182a3ded14
2021-10-25 18:56:15 -04:00
Jonah Graham
e60ef74ebb Bug 576884: Ignore unsuitable adapter when the UI layer isn't running
When the UI layer is running the correct terminate adapter is returned,
when the UI layer is not running, the Launch.terminate code is a valid
fallback, and the org.eclipse.debug.internal.core.commands.TerminateCommand
is not an appropriate adapter to use.

Change-Id: I3c4c273b78b4e5bc9fe521b4a24ef5443852d3c0
2021-10-25 18:56:15 -04:00
Torbjörn Svensson
994ea12856 Bug 574131: Make the graceful exit time configurable
Contributed by STMicroelectronics

Change-Id: I8ca32b2440ef1cc81bf5b9ddd70b6b4222a29261
Signed-off-by: Torbjörn Svensson <torbjorn.svensson@st.com>
2021-10-25 21:59:02 +02:00
Mat Booth
8db32cb918 Bug 561998 - Remove dependency to com.ibm.icu from CDT DSF GDB UI
Switch to JRE implementations:
 * com.ibm.icu.text.MessageFormat -> java.text.MessageFormat

Signed-off-by: Mat Booth <mat.booth@gmail.com>
Change-Id: Ib21c4c31cdc28bf70df2688a403afcf25a81cadc
2021-10-25 04:23:08 -04:00
Torbjörn Svensson
38d45364cf Bug 505882: Drop internal IManagedBuildGnuToolInfo interface
The interface has no use as it's hardcoded to be an instance of
ManagedBuildGnuToolInfo in the GnuMakefileGenerator anyway.

Contributed by STMicroelectronics

Change-Id: I0e9130ef485d103e7114e0d122015c062253b4bb
Signed-off-by: Torbjörn Svensson <torbjorn.svensson@st.com>
2021-10-24 13:16:52 -04:00
Torbjörn Svensson
81a85f8ae9 Bug 505882: Remove deprecated functions
Contributed by STMicroelectronics

Change-Id: Ib811a02cc97ee8afd2343b82b1c7e2e76f9ed0e6
Signed-off-by: Torbjörn Svensson <torbjorn.svensson@st.com>
2021-10-24 13:16:52 -04:00
John Dallaway
a6808f07ab Bug 576811: Provide default launch delay implementation
Change-Id: Ieedd3f935b9b396c5c9022aed0a161477df285fd
Signed-off-by: John Dallaway <john@dallaway.org.uk>
2021-10-21 15:11:52 +01:00
Torbjörn Svensson
15c29ebf2c Bug 505882: Generate clean target per subdir.mk
To avoid errors like "Command line too long" when removing build
artifacts, split the clean command on multiple lines. In order to
properly handle whitespace etc, generate a new clean target in each
subdir.mk with the explicit list of files to remove in that directory.
The command should be splited on a sane length, 6000 is used in the
internal builder, so reuse that limit here.

Contributed by STMicroelectronics

Change-Id: I843e1ac896076d279173c421210b72f4a325296f
Signed-off-by: Torbjörn Svensson <torbjorn.svensson@st.com>
2021-10-20 13:56:36 -04:00
Torbjörn Svensson
c831994958 Bug 505882: Fork the GnuMakefileGenerator into non-API
One more place where the GnuMakefileGenerator is instanciated that
should have been changed in previous commit.

Contributed by STMicroelectronics

Change-Id: Ib89d5e77cbdd2148723b9b1a80cafb72d35390a4
Signed-off-by: Torbjörn Svensson <torbjorn.svensson@st.com>
2021-10-20 13:53:17 -04:00
Torbjörn Svensson
b3be425429 Add convenient method to raise a custom signal
Contributed by STMicroelectronics

Change-Id: Ie9c6c7d87e1efc8e13861c3551c11a1da0be2695
Signed-off-by: Torbjörn Svensson <torbjorn.svensson@st.com>
2021-10-20 13:49:48 -04:00
Torbjörn Svensson
e4c46094b1 Ensure constants are constant
Contributed by STMicroelectronics

Change-Id: I3ceecdba0bcf5715ce0c4f683fd3fdb9b86ad8b3
Signed-off-by: Torbjörn Svensson <torbjorn.svensson@st.com>
2021-10-20 13:49:48 -04:00
Mat Booth
69448337e5 Bug 561994 - Remove dependency to com.ibm.icu from CDT Debug Core
Switch to JRE implementations:
 * com.ibm.icu.text.MessageFormat -> java.text.MessageFormat

Signed-off-by: Mat Booth <mat.booth@gmail.com>
Change-Id: I52901be237302d3f862ea3e261e44939b4b52bab
2021-10-20 11:27:25 +01:00
GeraldMit
e8b257c645 Bug 576639 - [Accessibility][A11y] reduce JAWS table read while in table
correct previous fixes Bug 575946, Bug 575949, Bug 576090
to use only parent for accessibility add of table description.

Change-Id: Idbc39f13c06f27ed106839d922c328f3bce76d16
Signed-off-by: GeraldMit <Gerald.Mitchell@ibm.com>
2021-10-19 14:53:43 -04:00
Jonah Graham
8d173637f7 Bug 505882: Fork the GnuMakefileGenerator into non-API
The GnuMakefileGenerator is a huge file that needs lots of fixes.
However most of the time to implement the fixes are taken up trying
to not break API. Most extenders of CDT provide their own
implementation of GnuMakefileGenerator by copying the CDT one
and modifying it. Therefore CDT is going to take that same
approach internally and leave the existing GnuMakefileGenerator
in its unmodifiable state.

Change-Id: I12fafb5e347112648a02d4593267bd88a47b5c88
2021-10-18 15:30:08 -04:00
Torbjörn SVENSSON
4a7bd0d1b4 Bug 574131: Do not concurrently call Spawner#destroy()
As the Object#wait() voids the synchronization, more threads can call
destroy() before the Reaper thread has identified that the process
exited or the timeout occured.
The change ensures that only one call actually raises the signal while
the others are NOP.

Contributed by STMicroelectronics

Change-Id: I64722b17138582a76bb9cf604a6b0c14685f1720
Signed-off-by: Torbjörn Svensson <torbjorn.svensson@st.com>
2021-10-18 20:49:49 +02:00
Torbjörn Svensson
cd73469b01 Bug 574131: SIGTERM should let app do a gracefully exit on win
Let the process have some time to do a graceful exit with the signal
SIGTERM. If the process is still alive after 1s, raise the SIGKILL
signal and hammer down the process.
The 1s is aligned on all platforms and handled in JAVA.

Contributed by STMicroelectronics

Change-Id: Iff2f7727c1ac37b190c60a01774f106638eeeeaa
Signed-off-by: Torbjörn Svensson <torbjorn.svensson@st.com>
2021-10-18 07:06:22 -04:00
Mat Booth
46d7fb74da Bug 561995 - Remove dependency to com.ibm.icu from CDT Debug UI
Switch to JRE implementations:
 * com.ibm.icu.text.MessageFormat -> java.text.MessageFormat
 * com.ibm.icu.text.DateFormat -> java.text.DateFormat

Signed-off-by: Mat Booth <mat.booth@gmail.com>
Change-Id: Ie73d4f4152f43b155d3a5425fe4f8cec15bf45da
2021-10-15 18:09:13 +01:00
Jonah Graham
b0cb9b10d7 [releng] Update to newer Tycho
Newer Tycho has a new feature that adds an extra header (Bundle-License)
to every plug-in. This commit includes omitting this new feature
rather than bumping every single version of every bundle in CDT.

See https://www.eclipse.org/tycho/sitedocs/tycho-packaging-plugin/package-plugin-mojo.html#deriveHeaderFromProject

Bundles have version bumps due to newer Tycho including newer
JDT compiler which leads to classfile differences.

Change-Id: Id536d75a92a30582418324e27d74008869f7dd3a
2021-10-13 21:33:14 -04:00
Jonah Graham
3180471732 Bug 576447: Add missing schema entry to various plug-ins' build.properties
Change-Id: I933b1a2c4cfc32786412fd0c31bb9e2c39bc836b
2021-10-05 11:57:25 -04:00
Jonah Graham
871ee590c4 Bug 575018: Add repeatable iteration order for map used in test
The test used to fail on the -100.0 / 3.0 case if that was the first
condition tested. This change forces that to not be the first
condition tested which reduces the incidence of failures.

This does not resolve the unknown underlying issue which appears
to be on the GDB side that CDT is exposing. Upgrading GDB version
may also resolve the test failures, but for now I am going with
this fix so that we stop having UNSTABLE Jenkins CI builds.

Change-Id: Ibfa93a8350cfc08adf721723bc07566521bed812
2021-10-04 14:00:54 -04:00
Umair Sair
68c67b20a4 Bug 576291 - Add preference for suspend timeout
- Adding preference in GDB preference page

Change-Id: Ic179ddd4f15eb02f8de479ca095cc2ec19818c6b
Signed-off-by: Umair Sair <umair_sair@hotmail.com>
2021-09-28 21:20:39 +05:00
Jonah Graham
ad4d444823 [releng] Prepare for CDT 10.5.0
Change-Id: I9b72edf4a0ff0771a147934dd7f1c92ba1ee799a
2021-09-26 20:23:17 -04:00
Martin Weber
42d339e3ec remove access restriction on o.e.c.jsoncdb.core
Change-Id: Iac1dca43a01ce2a61640b93da688645729184665
2021-09-24 15:00:58 -04:00
Jonah Graham
20878b1f44 [releng] Update Maven build dependencies
Change-Id: Ibe372f8258cade06215d15bef21155f73d427ee6
2021-09-23 18:30:03 -04:00
GeraldMit
174453ba91 Bug 576090: Fix Preference description for preference
The description for Advanced Content Assist Preference can not be read
out.

The description can  not be a stand-alone label when working with JAWS,
and titles on the page should have additional accessibility listener
values for Advanced Content Assist Preference can not be read out.

Change-Id: Ic7715676848ecefb8cf111800a2847fe6e3e30aa
Reported-by: Gerald Mitchell <Gerald.Mitchell@ibm.com>
Signed-off-by: Gerald Mitchell <Gerald.Mitchell@ibm.com>
2021-09-20 00:10:01 -04:00
John Dallaway
327c3c7116 Bug 576058: Fix traditional memory rendering byte ordering
Change-Id: Ie942a36ebd9d728c4f1673a6e5122b296f428dd2
2021-09-17 12:21:28 +01:00
Gerald Mitchell
525f801293 Bug 575949: The section title cannot be read out
The section title "Elements" can not be read out from Syntax Coloring
Preferences page. "Preview" could also not be read out.

Change-Id: Ia8e8261739100808eda7bccb28b4c2fca5d59210
Reported-by: Gerald Mitchell <Gerald.Mitchell@ibm.com>
Signed-off-by: Gerald Mitchell <Gerald.Mitchell@ibm.com>
2021-09-16 00:45:14 -04:00
GeraldMit
b7cc884e3d Bug 575946: Fix accessibility on C element Filter
The description for filter text on C element Filter
dialog could not be read out.

Change-Id: I7c4884cca2c1fff3d872f4775e8529e4428c86ac
Reported-by: Gerald Mitchell <Gerald.Mitchell@ibm.com>
Signed-off-by: Gerald Mitchell <Gerald.Mitchell@ibm.com>
2021-09-15 10:41:56 -04:00
Martin Weber
80de3ba94f Add support for the clang --target option for cross compilation.
(Backport from cmake4eclipse)

Change-Id: I8239aec001a5e9c919f85177798dabeec1f18285
Signed-off-by: Martin Weber <fifteenknots505@gmail.com>
2021-09-14 14:28:58 -04:00