Skip to main content
summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2019-05-31[releng] bump version numbers according to version number guidelinesJonah Graham1-1/+1
See https://wiki.eclipse.org/CDT/policy#Version_Numbering Change-Id: I54004437fa7a52b7c2b341fa9cb2d0683daf8962
2019-05-16Bug 547104 - Adding new Docker Connection causes two build dirsJeff Johnston1-5/+9
- change createBuildConfiguration() method in providers: MesonBuildConfigurationProvider, CMakeBuildConfigurationProvider, AutotoolsBuildConfigurationProvider,MakefileBuildConfigurationProvider to not create a .x config name and instead use the found IBuildConfiguration so the new CBuildConfiguration will be overridden in the CBuildConfigurationManager Change-Id: Ia5f460e879f3412f19a9dec7b88dd392714b54ca
2019-04-10Bug 546288 - Docker images for CDT Launchbar builds cannot have a slashJeff Johnston2-1/+2
- fix CMakeBuildConfigurationProvider.createBuildConfiguration() to massage any image name and replace all slashes with underscores - do the same for MakefileBuildConfigurationProvider and MesonBuildConfigurationProvider Change-Id: Ib09ade66059533f089084e50cba95d54e9d40547
2018-12-02Remove a couple of StreamMonitor classes (unused)Marc-Andre Laperle1-30/+0
Change-Id: I13224ff79440fc181ab7128d7620ca2c1190f646 Signed-off-by: Marc-Andre Laperle <malaperle@gmail.com>
2018-11-29Bug 541709 Figure out toolchain for Makefile projects.Doug Schaefer1-0/+33
The config is not valid without this. Using the same algorithm CMake projects do to find the default toolchain. Change-Id: I871da3019b7d440fbd6c1b2a4935d424f084a603
2018-11-24Bug 540373: Update the compiler warnings/ignoresJonah Graham1-1/+1
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-23Bug 540373: Format some Java files that were missedJonah Graham3-6/+3
Some files which has other cleanups applied meant they needed to be reformatted again. e.g. the removing of type parameters shortened some lines of code that meant the wrapping changed. Change-Id: I68ca09567b9530cc2a085c33923642b6de2ec77b
2018-11-23Bug 540373: Cleanup: Remove trailing whitespace in properties filesJonah Graham2-12/+12
Command used: # Remove space at eol in comments find . ! -path "./.git/*" -type f -name *.properties -exec sed -i -E 's/^(#.*)[ \t]+$/\1/' {} + # Remove space at eol in blank lines find . ! -path "./.git/*" -type f -name *.properties -exec sed -i -E 's/^[ \t]+$//' {} + # Replace escaped spaces at eol with unicode find . ! -path "./.git/*" -type f -name *.properties -exec sed -i -E 's/([^\\])\\ $/\1\\u0020/' {} + # Replace unescaped spaces at eol with unicode find . ! -path "./.git/*" -type f -name *.properties -exec sed -i -E 's/([^\\]) $/\1\\u0020/' {} + # Replace escaped tabs at eol with unicode find . ! -path "./.git/*" -type f -name *.properties -exec sed -i -E 's/([^\\])\\\t$/\1\\u0009/' {} + # Replace unescaped tabs at eol with unicode find . ! -path "./.git/*" -type f -name *.properties -exec sed -i -E 's/([^\\])\t$/\1\\u0009/' {} + # Stage all changes git add -A . # trim any remaining whitespace and then identify and fixup # manually # Only dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/ui/viewmodel/MessagesForDebugVM.properties # needed this due to missing newline at end of the file find . ! -path "./.git/*" -type f -name *.properties -exec sed -i -E 's/[ \t]+$//' {} + Change-Id: I858f16891fe001f4f7e62d5a4f904146e891cd39
2018-11-22Bug 540373: Remove '(non-Javadoc)' commentsJonah Graham3-32/+0
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-22Bug 540373: Cleanup: Remove redundant type argumentsJonah Graham42-193/+193
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-22Bug 540373: Cleanup: Organize ImportsJonah Graham3-4/+6
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-22Bug 540373: Cleanup: Format & Remove trailing whitespaceJonah Graham150-5470/+5486
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-22Bug 540373: Standard .settings auto appliedJonah Graham5-20/+308
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-22Bug 540371: Update to EPLv2 using releng/scripts/change_to_eplv2.shJonah Graham199-614/+1220
Change-Id: Ifbb1d5af2a00bd5634dea200320e8c4303ffca6c
2018-11-20Bug 540373: Normalize newlines with .gitattributesJonah Graham5-390/+390
There is also a new script to verify completeness of .gitattributes: releng/scripts/verify_gitattributes.sh Change-Id: I2ce270852ab54b66b6c474a6ec94203fe5bba78b
2018-10-30Bug 540610 - Add Automatic-Module-Name headerKarsten Thoms1-0/+1
Change-Id: Ia990b24469751050dd9ec8f9b5550804816308b3 Signed-off-by: Karsten Thoms <karsten.thoms@itemis.de>
2018-10-23Bug 540367 - Increment version numbersWilliam Riley1-1/+1
Change-Id: I4a355170a7075f0a98ba3c1a5131c235c89b07d2
2018-04-16Bug 533222 - Add Container Build support to Std Make Core BuildJeff Johnston1-7/+13
- add new getConsoleHeader() method to ICBuildCommandLauncher interface and ContainerCommandLauncher class - modify MakefileBuildConfigurationProvider to create build configurations based on an Image name when building for Container and as well support the linux-container os that is used for Container targets - add new IConsoleParser2 interface that extends IConsoleParser and adds new processLine method that takes a List of Job as a parameter - make CBuildConfiguration implement IConsoleParser2 and add new processLine method - modify watchProcess to recognize an IConsoleParser2 and pass a Job List then wait for all jobs to finish before calling shutdown() and possibly reindex - add new IToolChain2 interface with startBuildProcess() method - add new startBuildProcess() method to CBuildConfiguration to look for new IToolChain2 and use its startBuildProcess() method to perform the build - make ContainerGCCToolChain implement IToolChain2 and add new startBuildProcess() method to build in Container - change StandardBuildConfiguration to use startBuildProcess() to do build and clean Change-Id: Icae9a55ef6abfa1b7f611544ad591b6062c72585
2018-02-08Remove useless imports.Alexander Kurtakov1-2/+1
Change-Id: Ie59d3942ea1df97440bd84e46a24753ed6ed429b Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
2018-01-10Bug 529121 - NPE fix for projects created with CMakeDoug Schaefer1-1/+3
Not sure what changed but the launcher for these projects is now returning null for an environment. Added a null check. Change-Id: I05c94bb77f951f417577d0c2a3e3b4b6b996214b (cherry picked from commit be9c1b833828d8bb01059579e32fa4c08c47ea4c)
2017-11-22Hook up the old Include Paths and Symbols page to Makefile projs.Doug Schaefer1-0/+4
Makefile projects depend on build output parsing to pick up compiler options to use while indexing. Sometimes, that just doesn't work. As a back up we've always allowed users to manually add them to the project. Long ago when we had pure make projects we had UI for this. This change hooks that old UI up. It was a time before build configs so they get applied to them all but it serves it's role as a backup when users run into problems. Unmarked everything I use here from deprecated until we decide how to replace these with Core build config aware settings. Change-Id: I6fc4d48e5315df3c60c7591b026ae0a53a1f505e
2017-11-20Set CC and CXX variables to toolchain compileCommands in std build.Doug Schaefer1-1/+5
Also set BUILD_MODE to the launch mode so the makefile can do different things based on the mode. Change template to add -g option for debug. Also fix a deadlock I detected due to side affect build folder creation. Change-Id: Ic7b13ba3238e6ef201cccb1b2bfc8dcc6956ea3a
2017-11-17Forgot to add the makefile templates to the build.Doug Schaefer1-1/+2
Change-Id: I538e8610f9e31963a2c8224079de1a2f19c565c3
2017-11-09Add settings to Makefile build configs to build at project root.Doug Schaefer3-5/+12
Often Makefile projects are intended to be built from the project root directory, such as ESP32 IDF projects. This adds a setting to control that. Change-Id: I151ebf60a7609461d24e192a9d6418fccb737055
2017-11-08Add Makefile Projects to collection of core build project types.Doug Schaefer8-2/+201
Reuses the old makeNature. Reuses the StandardBuildConfiguration. Generates a pretty simple project for now. Also handles the case where you don't want to generate anything, just create an empty or on an existing source tree. Change-Id: I2f3cddc85d55792a2c537e37d4bc236a3073d930
2017-10-22Bug 513589 - Add support to build CDT projects in a Docker ContainerJeff Johnston2-4/+4
- add IOptionalBuildObjectPropertiesContainer interface to use for objects that supply optional build properties - add new IOptionalBuildProperties interface that defines optional build properties donated by external plug-ins - add new - change IConfiguration to an IOptionalBuildObjectPropertiesContainer - change IManagedProject to be an IOptionalBuildObjectPropertiesContainer - fix ProcessClosure to ensure that readers are not null before accessing them - fix Container launch delegate to look at project optional build properties for active configuration to fetch connection and image info and use said info to find a matching launch or create a new one - have Container launch delegate use the image name as part of the launch config name - have Container launch short-cut also use the project's optional build properties for the active config to get connection and image information before any defaulting - change AutotoolsNewMarkerGenerator to store the command launcher as an ICommandLauncher - add new CommandLauncherFactory extension to cdt.core that allows plug-ins to specify a CommandLauncherFactory that will return an ICommandLauncher based on the project - add macros for new extension to CCorePlugin - add new CommandLauncherManager class that loads CommandLauncherFactory extensions and is used to give an ICommandLauncher wrapper that will go through the list of CommandLauncherFactory extensions until one returns non-null ICommandLauncher - add code to RemoteCommandLauncher so it will use the CommandLauncherManager to get the local launcher - also change RemoteCommandLauncher to check at execution time whether the command is local and in that case use the local command launcher - add new ICommandLauncherFactory interface - add new ContainerCommandLauncher to launch - add new ContainerCommandLauncherFactory class for returning a ContainerCommandLauncher instance to launch commands in a Docker Container - change MakeBuilder to use CommandLauncherManager to get its ICommandLauncher - change CommandBuilder to use CommandLauncherManager too - ditto for Builder and AbstractBuiltinSpecsDetector and ExternalToolInvoker - change Configuration to load/store optional build properties as well as return the properties to get/set - ditto for MultiConfiguration - change ManagedProject to implement IOptionalBuildOptionProperties interface - ditto for ProjectType - create new OptionalBuildProperties class to store optional build properties for a configuration - bump cdt.docker.launcher to 1.1.0 - use CommandLauncherFactory extension to define ContainerCommandLauncherFactory - add optional ContainerPropertyTab which allows the end-user to optionally choose to build a C/C++ project in a Container and specify the connection/image to use - in LanguageSettingsSerializableSettings class, call the CommandLauncherManager getLanguageSettingEntries method to get the massaged language setting entries based on the current list - in LanguageSettingsProviderSerializer, try and get the pooled entries using the cfg description so that it will have the project and can use the CommandLauncherManager to get entries from image - in ContainerCommandLauncherFactory move cached headers under a HEADERS directory in the plug-in area - create a sub-directory for the connection and a sub-directory for the image based on cleansed names - store the real names of the connection and image to use later in the DockerHeaderPreferencePage - modify LanguageSettingsEntriesTab to force the horizontal scroll bar to appear (this is a bug in SWT SashForm support and the fix here isn't quite correct, but is better) - add new DockerHeaderPreferencePage that allows user to remove cached headers from images - change C/C++ Docker preferences to be titled: Docker Container - fix LanguageSettingsWorkspaceProvider.getSettingEntries method to use the CommandLauncherManager so entries will be transformed to use cached headers - add BaseDatabindingModel class - add DataVolumeModel class to model a volume mount - add ContainerPropertyVolumes model to model volume specification and selected volumes - add properties to ContainerCommandLauncher to represent volumes and selected volumes for a configuration - add ContainerDataVolumeDialog for specifying a volume mount by the end-user - add a null detector for cfgDescription in LanguageSettingsSerializableProvider - fix AutotoolsNewMakeGenerator.getWinOSType to not specify "." for working dir - fix GCCBuiltinSpecsDetectorCygwin to not map paths to Cygwin if the current configuration is enabled for container build - add logic to ContainerCommandLauncher to look for Windows file formats and change them to unix format and map any "." working dir to be /tmp - fix ContainerLauncherConfigurationDelegate similarly - fix AbstractBuiltinSpecsDetector to pass in the current configuration description when getting the CommandLauncher since the current configuration may not be the active configuration - change ContainerPropertyTab to add Elf and GNU Elf binary parsers when build in Container is chosen so that output executables are treated as Binaries by the CDT project - add documentationl for the ContainerPropertyTab in Build Settings and the Data Volume dialog pop-up it brings up - change CommandBuilder to accept a project as an argument to its constructor and to pass this as an argument to the CommandLauncherManager - have StepBuilder pass project when creating a CommandBuilder Change-Id: Ia78488b93056e6ec7ca83a6c87b3a9d2b9424943
2017-04-17Bug 497670 - Support compiler provided "fix-it" hintsJeff Johnston2-0/+6
- add new FixitErrorParser that extends RegexErrorParser and is used to replace the error parser for GNUCErrorParser - add new FixManager class to bind a fixit message with its problem marker - modify ProblemMarkerFilterManager to register the last accepted ProblemMarkerInfo for a particular resource so the FixitErrorParser can find the last error marker for the file that precedes the fixit message - FixitErrorParser looks for fix-it messages and binds them via FixitManager to the last error marker for the file - add new Fixit class to contain the details of a gcc fix-it - add new QuickFixForFixit which applies the gcc fix-it for the file - add new (.*) regex in codan.ui.checkers patterns that will trigger before any other error and will look for the fix-it message format - change cdt.core to expose cdt.internal.errorparsers to codan.checkers.ui - change codan.core to expose codan.internal.core.model to codan.checkers.ui - fix CDocumentProvider.setOverlay method to not overlay a CMarkerAnnotation that has a quick fix - when deleting all C problem markers, also make a call to FixManager.deleteAllMarkers() so markers aren't left referenced Change-Id: Ibf8ff7d8addb1bf092dc4ef35de0d92de0309589
2017-02-13releng: Make use of Tycho POM-less functionalityMarc-Andre Laperle1-17/+0
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>
2016-11-15Update version to 9.3.0Marc Khouzam1-1/+1
Change-Id: Ic953ccc5d38ff3661ca44de21ed8c4b7dad5b246
2016-11-14Update version to 9.2.0Marc Khouzam1-1/+1
Change-Id: I36ad4218b20b8ea70584c89f5be45c757bf4c714
2016-09-25Cosmetics.Sergey Prigogin1-1/+1
Change-Id: I78635ca74bffd3df7b51f87e70464e99dd699324
2016-08-17Update version to 9.1.0Marc Khouzam1-1/+1
This commit used the script releng/scripts/ChangeFeaturesVersion.sh Change-Id: I8274a6e8dd5c0f1e450f07952e138b265a441a62
2016-08-16Bug 323848 - Add Build (was Make) Targets to the Project NavigatorDoug Schaefer1-15/+5
Change-Id: Ia1da4a5e57a7a19732deaf0fa384702139220432
2016-06-30Remove old .cvsignore filesMarc Khouzam1-1/+0
Change-Id: Ia66de47055a15d94c0aa45d1198f0a9e78d82ad0
2016-06-22Move the rest of the CDT plugins to java 8Marc Khouzam3-5/+5
This change was generated using the script: releng/scripts/ChangeJavaVersion.sh Change-Id: I2ad96dc682a5acb8529c3edec40de279c331b5a4
2016-05-11fixed NPE when loading c descriptorsAlena Laskavaia1-3/+7
Change-Id: I84db8063ab43d00bbed42c40f8a7601031ef8bb1
2016-04-25Bug 492304 - Fix NLS warningsAlex Blewitt4-7/+7
Eclipse warns if a String literal does not have a `//$NON-NLS-<n>$` entry at the end of the line. However, for historic or formatting reasons, many such occurrences in the CDT source have an intermediate whitespace, such as `// $NON-NLS-<n>$` Fix these so that the whitespace is removed between the // and $ characters. Change-Id: Idc12398fe6e9d619af1d0b1b73fb8b6180da223c Signed-off-by: Alex Blewitt <alex.blewitt@gmail.com>
2016-04-25Bug 492230 - Replace buffer.append(a+b) callsAlex Blewitt1-2/+6
When using a `StringBuilder` or `StringBuffer` to create a string message, using implicit string concatenation inside an `.append()` call will create a nested StringBuilder for the purposes of creating the arguments, which will subsequently be converted to a String and then passed to the outer StringBuilder. Skip the creation of the intermediate object and String by simply replacing such calls with `buffer.append(a).append(b)`. Where values are compile time String constants, leave as is so that the javac compiler can perform compile-time String concatenation. Ensure that NEWLINE isn't appended in such a way since it is not a compile time constant `System.getProperty("line.separator")` Change-Id: I4126aefb2272f06b08332e004d7ea76b6f02cdba Signed-off-by: Alex Blewitt <alex.blewitt@gmail.com>
2016-04-21Bug 492200 - Replace StringBuffer with StringBuilderAlex Blewitt26-61/+61
There are many opportunities for replacing `StringBuffer` with `StringBuilder` provided that the type isn't visible from the public API and is used only in internal methods. Replace these where appropriate. Change-Id: I769ceb6eaee18d183fb0e00fa0d730651f8a7edb Signed-off-by: Alex Blewitt <alex.blewitt@gmail.com>
2016-04-19Bug 491984 - Replace .equals("") with .isEmpty()Alex Blewitt2-3/+3
In many cases a String's empty status is tested with `.equals("")`. However, Java 1.6 added `.isEmpty()` which can be more efficient since it compares the internal length parameter only for testing. Replace code using the `.isEmpty()` variant instead. Some tests for `"".equals(expr)` can be replaced with `expr.isEmpty()` where it is already known that the `expr` is not null; however, these have to be reviewed on a case-by-case basis. Change-Id: I3c6af4d8b7638e757435914ac76cb3a67899a5fd Signed-off-by: Alex Blewitt <alex.blewitt@gmail.com>
2016-04-18Bug 491945 - Remove new String()Alex Blewitt4-10/+10
Occurrences of `new String()` have been replaced with the equivalent `""` and additional NON-NLS tags have been inserted in where appropriate. Change-Id: I54cf71dcd0d5a92a675a71166d66949533de502b Signed-off-by: Alex Blewitt <alex.blewitt@gmail.com>
2016-04-16Bug 491825 - Remove primitive wrapper creationAlex Blewitt5-8/+8
Using `new Integer` and other wrapper types such as `new Character` results in potential extra heap utilisation as the values are not cached. The built-in `Integer.valueOf` will perform caching on numbers in the range -128..127 (at least) using a flyweight pattern. In addition, parsing `int` values can be done with `Integer.parseInt` which avoids object construction. Adjust tests such as `"true".equals(expr)` to `Boolean.parseBoolean(expr)`. Change-Id: I0408a5c69afc4ca6ede71acaf6cc4abd67538006 Signed-off-by: Alex Blewitt <alex.blewitt@gmail.com>
2016-04-15Bug 491825 - Remove uses of new Boolean and friendsSergey Prigogin2-14/+14
Change-Id: Ie358c8385c278472f3b86851f6fc219007bb9b5c
2016-04-14Tighter integration of new build system with cdt.core.Doug Schaefer1-1/+1
Move the new build system to cdt.core and remove the previous plugins. Hook the new system into scanner info and environment variable manager. Clean up API in preparation for Neon and API lockdown. Hook up Qt to the new APIs. Add discovery of MSYS2's toolchain and Qt and Qt's MinGW toolchain. Change-Id: I85b1a91da4a44e86f0e9da9310f8106c894623e0
2016-02-17Incremented version of org.eclipse.cdt.core to 6.0.Sergey Prigogin1-2/+2
Change-Id: I059e7eba9eff7f24c84e08a1cbf658381aaaf19d
2016-01-18Incremented CDT features version to 9.0.0Marc Khouzam1-1/+1
This includes bumping the standalone debugger to 9.0.0 Change-Id: I55fae1cec995b5f6865a5b174c004ed1b76e9bea
2016-01-03Fix copyright of all CDT plugins using the copyright tool from platform.Marc Khouzam58-58/+58
This commit does not add missing copyrights, just updates the date on the existing ones. Change-Id: I646f5afd533a1fcc539bdf2e0686b22f406ecf65
2015-11-13Generify getAdapter methods.Alexander Kurtakov1-4/+4
Not all instances handled but the patch is big enough already. Drop the useless casts thanks to the generification too. Change-Id: I608c93a317135a8738ad770de71d9c3cda24791a Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
2015-09-29Remove reference to java environment in build.propertiesMarc Khouzam1-4/+1
Change-Id: I053158a23d2783879248320a84a9549e28cfb4d1
2015-06-10Incremented CDT feature version to 8.8.0Marc Khouzam1-1/+1
Change-Id: Ib1189a08a5f0225fd676b682dc8a10477ad3acc5 Signed-off-by: Marc Khouzam <marc.khouzam@ericsson.com>

Back to the top