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

114 commits

Author SHA1 Message Date
betamax
3c4287f03d
Make CMakeBuildConfiguration API (#1010)
For ISV integration/extension to CDT CMake, it is necessary to extend
several non-API classes (eg: CMakeBuildConfiguration,
CMakeBuildConfigurationProvider). This would cause "Discouraged access:
The type XXX is not API" warnings.

The classes have now been made API so can be extended without warnings.

Addresses Issue: CDT CMake Improvements #1000, IDE-82683-REQ-017
Extending CMakeBuildConfiguration
2025-01-15 11:18:36 -05:00
Jonah Graham
39ee2eded4
Update to latest versions of build tools (#986)
Beta versions of maven plugins are omitted from this
upgrade.

A new version of Tycho brings in an update ECJ which means some
of the class files are different, hence the need to bump versions
of bundles too.

A new calendar year brings an update to Copyrights
2025-01-06 20:37:10 -05:00
Jonah Graham
e50f81b95b
Bump version to CDT 12.0.0 (#911) 2024-10-08 12:52:15 -04:00
Ali Azam Rana
f680907cab
fix(908): fix for the cmake tool chain removal function. (#909)
Resolves that the calculated ID in the removal function was different than the one in the add

Fixes #908
2024-10-08 11:02:41 -04:00
ewaterlander
a65d3d7f28
Add user additional CMake arugments at the end. (#814)
The additional CMake arguments added by the user in the launch
configuration UI are added at the end of the CMake command, such that
the user is able to override arguments set by the system.
2024-09-12 17:16:52 -04:00
betamax
3ee0e61eed
Sets the CMake CMAKE_BUILD_TYPE define Fixes #807 (#810)
The CMAKE_BUILD_TYPE is added to CMake configuration build, based on the
active launch mode; DEBUG_MODE sets a buildType of "Debug", everything
else sets a buildType of "Release".
Note, the CMake CMAKE_BUILD_TYPE definition is not directly equivalent
to the Launch Bar Launch Mode; there might be a scenario where the user
wants to launch a debug session using the CMake Release build and not
run it. However, for most cases this is probably sufficient.

For Issue CMake projects are ignoring the Launch mode Run/Debug #807.
2024-09-12 17:15:24 -04:00
Jonah Graham
7fcfbb0f96
Prepare repo for 11.7.0 development (#813) 2024-06-05 13:19:53 -04:00
Jonah Graham
221d346f6d
Prep repo for 11.6.0 (#729) 2024-03-07 14:17:45 -05:00
Jonah Graham
70dbde4ce1
Fix copyright end year for recently modified code (#699)
Follow up for #683
2024-02-08 14:32:50 -05:00
betamax
b7fa35979a
Bug579242: allow user to override CMake Settings (#683)
The Launch Bar Launch Configuration, Build Settings tab allows the user
to customise the CMake Settings (CMake generator, extra arguments, build
command and clean command). But changing these settings did not affect
the CMake build. This is now fixed.
A "Use these settings" checkbox allows the user to choose settings from
the UI or use the operating system defaults.
2024-02-07 13:52:58 -05:00
Michael Keppler
d4102ca82f
Clean up Maven build (#662)
* remove invalid tycho resolver config (not valid since many versions)
* fix PMD plugin configuration (config attribute was renamed in 3.18)
* remove duplicate versions already managed in pluginManagement section
* fix indentation
* move all not yet configured versions into pluginManagement of the
parent module to avoid further duplication
* consume the target platform as file, not as maven artifact (this
simplifies building a single module A LOT)
* remove invalid tycho-source-plugin configuration
* disable tycho consumer POM generation (not needed here, and avoids a
warning in each module)
* remove prerequisites. that's for maven plugins only, and this POM
already contains the better suited similar maven enforcer rule
* enforce UTF-8 for javadoc generation (the build fails on Windows
otherwise, trying to read some Japanese? characters with the Windows
default encoding)
2023-12-28 14:35:58 -05:00
Jonah Graham
f7a63377a6
Prepare repo for 11.5.0 (#633) 2023-12-06 18:48:15 -05:00
William Riley
5250f5a07b
Replace org.freemarker with org.freemarker.freemarker (#547)
Also remove re-exports & add package imports

Fixes #546
2023-09-19 14:02:39 -04:00
Jonah Graham
a92b90a4c8 Bump all bundles that are missing BREE in 11.3.0
Part of #551
2023-09-15 07:24:17 -04:00
Jonah Graham
3bcba2303d Prepare repo for CDT 11.4.0 development
Part of #548
2023-09-14 19:47:15 -04:00
Malte Grave
54a7f61a68 CMake: Fixed the correct path for starting 'cmake-gui'
This PR fixed the wrong source flag which was set by spawning the cmake-gui command.

Closes #532
2023-09-05 13:02:17 -04:00
Jonah Graham
de012f42a6 Remove and ignore object references from Yaml files
Yaml 2.0 fixes CVE-2022–1471 to error on object references. This
commit adapts our use of Yaml to not output object references
anymore and on loading explicitly allow object references to
expected types.

Fixes #498
2023-08-10 09:38:12 -04:00
Jonah Graham
154d66f815 Add unique display name for some test plug-ins 2023-08-08 15:47:35 -04:00
Jonah Graham
ac84c4ec86 Prepare repo for CDT 11.3.0 development
Some bundles are bumped because dev happened between 11.2 release and
this version bump. The most significant change that happened
was the bump in Tycho version which changed ECJ version and
hence some class files changed

Part of #420
2023-07-10 21:41:39 -04:00
Jonah Graham
460c0021aa Move all dependencies to maven direct where possible
Includes:

- Sign all artifacts, particularly 3rd party with CDT's PGP key
- Using maven version managed and updated by EF Webmasters
- Update to latest SnakeYAML
- Move some 3rd party dependencies to Import-Package (instead of
  Require-Bundle)
2023-07-10 20:47:10 -04:00
Jonah Graham
0dc9d340f5 Lock snakeyaml to expected 1.x version
Snakeyml recentlyish came out with 2.0 version and more recently
TM4E started using the 2.0 version. As TM4E snapshots are in our
target platform we started failing as we started wiring to the newer
version due to a missing underbound on our dependency.

A separate task of updating to recent snakeyaml will be done as part
of #387
2023-06-26 11:49:51 -04:00
Jonah Graham
7146617411 Don't use tabs when indenting in yaml file 2023-04-25 14:16:37 -04:00
Jonah Graham
b2666eb578 Update copyright year on all features
Part of #320
2023-03-13 21:00:55 -04:00
Jonah Graham
21e923ada7 [releng] Prepare repo for CDT 11.2 development
Part of #320
2023-03-13 13:54:48 -04:00
Jonah Graham
4bc687b83b Add .clangd file to simplify project sharing with non-CDT
In the example CMake project add a .clangd to enable pointing
clangd at the appropriate compilation database without having
to make a copy of it.
2023-02-16 12:12:56 -05:00
Jonah Graham
b87a45520a [releng] Prepare repo for CDT 11.1.0 development 2022-12-09 12:24:55 -05:00
Jonah Graham
6eaaf714cc Upgrade build.properties warnings to errors
Warning in build.properties will be errors when they run
in the tycho build, like this:

```
Error:  Failed to execute goal org.eclipse.tycho:tycho-packaging-plugin:2.7.5:package-plugin
(default-package-plugin) on project org.eclipse.cdt.core.tests:
/home/runner/work/cdt/cdt/core/org.eclipse.cdt.core.tests/build.properties:
bin.includes value(s) [test.xml] do not match any files. -> [Help 1]
```

So make them errors in the workspace so that the issue is
detected before push.

Some build.properties issues don't affect the build, but
are still indicative of a problem.
2022-11-06 18:29:28 -05:00
Jonah Graham
1f19cff227 Make missing identifiers and classes in plugin.xml errors
Subsequent commits fix the errors
2022-11-04 08:19:23 -04:00
Mat Booth
1783120eb7 Improve the CMake project wizard template
Fixes out-of-the-box deprecation warnings, the template now specifies a
minimum CMake version of 3.10

Allows project names containing spaces by using freemarker syntax to
remove them where necessary in the CMakeLists.txt file.

Demonstrates how to implement the common idiom of configuration header
files.
2022-10-18 00:08:44 +01:00
Jonah Graham
e4e06008af Update to Java 17 as BREE. Fixes #80 2022-10-03 12:42:37 -04:00
Jonah Graham
110ac149c2 [releng] Bump versions for CDT 11.0.0 2022-10-03 12:42:37 -04:00
Jonah Graham
b577257db1 Correct @since tags
Since tags should be major + minor only. maintenance releases
can't change API which is why it doesn't need to be specified.
2022-10-03 12:42:37 -04:00
Martin Weber
3d62e1696c make the cmake error parser public API
Change-Id: I2ab5d659e01ace32dbd61ffada18e2f8f47bc5cf
Signed-off-by: Martin Weber <11367029+15knots@users.noreply.github.com>
2022-09-13 20:20:14 +02:00
Martin Weber
d1a43d5417 avoid StringIndexOutOfBoundsException on close. Fixes #66
Signed-off-by: Martin Weber <11367029+15knots@users.noreply.github.com>

Change-Id: I816b8ee5852e6b25011a611c07c54d0a814a74d8
2022-09-07 15:25:38 -04:00
Mat Booth
5e4a66b0af Bug 580178 - Unable to stop build process from launchbar
Switch from the standard Java ProcessBuilder to the CDT CommandLauncher
for new style core build projects.

The CommandLauncher uses a more sophiscated mechanism for watching the
spawned process allowing us to interrupt the process when the user hits
the stop button on the launchbar by properly listening to a monitor.

The change adds new API to CBuildCongifuration that takes a progress
monitor, and changes all the affected build configuration types to use
this new API.

Change-Id: I0c4225616ad8331c2cea28bcb502028455a8ea71
2022-06-30 12:34:16 -04:00
Jonah Graham
a1c02e2cce [releng] Apply auto-clean of save to all files with Eclipse 4.23
This mostly is using diamond operator, but includes
adding missing @Override and organizing imports and
applying formatting improvements in the JDT formatter.

Change-Id: Id91cbff33b0a039cc5121945ffbc407ecba45866
2022-04-19 20:13:15 -04:00
Jonah Graham
148ae40d0f [releng] Make CDT Clean-up profile match Editor on save actions
The CDT Cleanup profile had a bunch of extra cleanups applied to it, this
prevents running the CDT cleanup profile manually to simulate running the
save actions on all Java files

Change-Id: Iad491e1258a4ba90d81d1457ea0f6779e3663e38
2022-04-19 20:13:15 -04:00
Jonah Graham
7400e22b1f [releng] Update all legal files with update_legal_files.sh
The about.html was changed as per
https://gitlab.eclipse.org/eclipsefdn/it/websites/eclipse.org/-/issues/90

Change-Id: Ied879279460a8fc610630fc26794ab3df9eae39f
2022-04-13 13:42:35 -04:00
Jonah Graham
1f0451c163 [releng] Prepare for 10.7.0 with version bumps
All the about.html files are updated, so every bundle that hasn't
already had a bump in 10.7 needs one now

Change-Id: I6143d2fbe77a58a3a6d2f4a226d96087117f9ac1
2022-04-13 13:15:06 -04:00
Jonah Graham
e8d924bb9a [releng] Bump versions for 10.7.0
Change-Id: Ibada1ef26f47f4238ae64f53fb67a73125534347
2022-04-10 20:55:36 -04:00
Jonah Graham
640dc53892 [releng] Bump version numbers for all modified projects
Change-Id: I0d78c550512d8e63374bf1bc3a53f80e5d387e31
2022-01-12 18:57:12 -05:00
Jonah Graham
431e5ffd23 [releng] Bump end year on copyright on all modified features
Change-Id: I0d35eb6514d87fb6dcba0a284f58963b80861d51
2022-01-12 18:57:12 -05:00
Jonah Graham
dbd7558f17 [releng] Bump to CDT version 10.6.0
Change-Id: I28629cdfb0906ce7f1b33a88cbbd55521afc8f6b
2022-01-12 14:07:45 -05: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
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
ad4d444823 [releng] Prepare for CDT 10.5.0
Change-Id: I9b72edf4a0ff0771a147934dd7f1c92ba1ee799a
2021-09-26 20:23:17 -04:00
Martin Weber
5e1451a607 Bug 564349 - move code to parse compile_commands.json to subdir jsoncdb
Change-Id: I68f3b861b4326adf6da4f9d074a314628c7e8fef
Signed-off-by: Martin Weber <fifteenknots505@gmail.com>
2021-07-27 15:25:54 -04:00
Martin Weber
37bcf543dc Bug 564349 - move workbench preference page of jsoncdb parser
move from up from pref-node C/C++/CMake/Json* to C/C++/Json*

Change-Id: I2eac9eb8528c6e7e255a78c92698cce42322e122
Signed-off-by: Martin Weber <fifteenknots505@gmail.com>
2021-07-14 17:35:57 -04:00
Martin Weber
2f65266115 Bug 564349 - rename classes with 'Indexer' in name to sth. more appropriate
Change-Id: I3247f3a001a6d0f882a6b4c674b1c7c0f74b1b9e
Signed-off-by: Martin Weber <fifteenknots505@gmail.com>
2021-07-14 17:35:57 -04:00
Martin Weber
72bc739a29 Bug 564349 - Update docs, UI strings and bundle descriptions
Change-Id: I00eeae3406ef83d34eba7f713b411692073ec323
Signed-off-by: Martin Weber <fifteenknots505@gmail.com>
2021-07-14 17:35:57 -04:00