Skip to main content
AgeCommit message (Collapse)AuthorFilesLines
2018-11-22Bug 540371: Update to EPLv2 using releng/scripts/change_to_eplv2.shJonah Graham14-42/+72
Change-Id: Ifbb1d5af2a00bd5634dea200320e8c4303ffca6c
2018-11-20Bug 540373: Normalize newlines with .gitattributesJonah Graham2-251/+251
There is also a new script to verify completeness of .gitattributes: releng/scripts/ Change-Id: I2ce270852ab54b66b6c474a6ec94203fe5bba78b
2017-11-07Implement ordering of toolchains.Doug Schaefer1-109/+132
Introduce toolchain types independent of providers. Change-Id: I2cf3145920fcf4e7132468b6e653d7ea3e211127
2017-10-22Bug 513589 - Add support to build CDT projects in a Docker ContainerJeff Johnston1-0/+128
- 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
2016-04-28Modernize Arduino plug-ins. Adjust APIs to suite.Doug Schaefer2-229/+109
Change-Id: Ic877c8f0992874e647d4b464502165d7bd3ebe0e
2016-04-14Tighter integration of new build system with cdt.core.Doug Schaefer3-0/+348
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
2015-11-25Bug 481978 - Big overhaul of new build system to work with Qt.Doug Schaefer1-109/+0
Moved new build system to it's own plug-ins. Cleaned up the root build configuration and toolchain classes and use them for Qt local run builds. Also hooks Qt local run launch delegate to launch target manager and associated delegate interface. Change-Id: I0c0f711ee53005edd399f6d24ba96658d606e1e5
2015-09-28Starting to put Qt onto the new build system and launch.Doug Schaefer1-13/+8
Change-Id: I3e65f5d69bfb35d16b2d1135f99517c7a2b2c437
2015-08-31Bug 321443 - First implementation of new build model.Doug Schaefer1-0/+114
Includes adaptation of the Arduino build model where many of these ideas started to the new model. And start of the Qt build system which uses it. Change-Id: Icb212185773ebc4d415e8a9862101744703ff80b
2015-03-15fixed schema validation error on MarsAlena Laskavaia2-5/+3
- these extension produce error that enablement reference is not defined Change-Id: I1955ea467c1c7e24d0fd02b8e75bd5dc66edc060 Signed-off-by: Alena Laskavaia <>
2014-12-14Get rid of the extra schema includes to expressions.Doug Schaefer2-12/+8
This causes build errors when using Mars. Change-Id: I5b7aaa261e252b7aa7a2afe5a86398c4f24af0aa Reviewed-on: Reviewed-by: Doug Schaefer <> Tested-by: Doug Schaefer <>
2014-09-22Include expressionLanguage.exsd - fix occasional PDE errorsTeodor Madan2-0/+4
"referenced element 'enablement' is not defined" Change-Id: I40a84a249e0e2488e4600a67a9eab935298048e4 Reviewed-on: Tested-by: Hudson CI Reviewed-by: Teodor Madan <> Tested-by: Teodor Madan <>
2014-01-16Bug 425538 - Syntax errors in QML reported as "C/C++ Problems" because ↵Daniel Pesch1-0/+135
errors from Qt Linguist The problem is solved by allowing to ignore duplicated markers in case there is already loaded a plugin that could handle QML files The ProblemMarkerFilter extension point allows to filter out unneeded problem markers. For example during building of Qt base project with QML files tool Qt Linguist could report syntax errors in some qml file. These errors are presented as "C/C++ Problems" in qml files because they match format CDT expects for errors. If there is already installed plug-in that handles QML files it is a wise to ignore such errors because they are already reported as "QML Problems" with more meaningful descriptions. Change-Id: I3a0a1b58e9690bed9c2774e4328760c695d54a54 Signed-off-by: Daniel Pesch <> Reviewed-on: Tested-by: Hudson CI Reviewed-by: Andrew Eidsness <> Reviewed-by: Doug Schaefer <> IP-Clean: Doug Schaefer <>
2013-11-29Bug 422804: Allow contributors to add data to the PDOMAndrew Eidsness1-0/+131
The CDT persists an index of source code relationships by processing the AST produced by the parser. There is an existing extension-point that allows contributors to create new linkages in this persisted file. However there is no mechanism allowing contributors to influence the data that is stored to the file. This introduces a new extension-point allowing contributors to participate in processing the AST that is being persisted to the index. The intent is for this to be used to store data into the contributor's new Linkage. There is no change in functionality for existing linkages. A contributor will soon be added in the Qt plugin. Change-Id: I845c90cbf7c713e23319e2ed1168eb7d74db5868 Signed-off-by: Andrew Eidsness <> Reviewed-on: Tested-by: Hudson CI Reviewed-by: Doug Schaefer <> IP-Clean: Doug Schaefer <>
2013-09-13[bug 417138] Various schema cleanups; English grammar fixes; adding ↵Jesse Weinstein24-1950/+1323
translatable, identifier-type, etc. Change-Id: I1c10b4171bba0f8d64f41970eae1b2971bc53476 Signed-off-by: Jesse Weinstein <> Reviewed-on: Reviewed-by: Sergey Prigogin <> IP-Clean: Sergey Prigogin <> Tested-by: Sergey Prigogin <>
2013-09-08bug 416628: "Export" of entries of language settings providers to ↵Andrew Gvozdev1-0/+3
referencing projects - added capability
2013-06-18Clarified JavaDoc for LanguageSettingsSerializableProvider.Andrew Gvozdev1-3/+4
2013-02-20Bug 400020: Allow tagging of IBindingsAndrew Eidsness1-0/+139
This new extension point allows contributors to put their own information into the PDOM and to later retrieve it for their own purposes. There are many details in the bug. The idea is that contributors provide an implementation of IBindingTagger, which is given a chance to examine IBindings when they are created. The ITagWriter interface allows the contributor to create a new tag which can then have data written to it. The ITagService interface (accessible from CCorePlugin.getTagService() provides a way for the contributor to later get an instance of ITagReader to retrieve tags from bindings. ITags are copied to the PDOM when the associated binding is persisteed. Contributors use a unique id (based on their plugin id), so that multiple contributors are able to independently tag a given binding. In-memory tags are not cached. I've done some timing tests using my sample implementation and found no measurable difference. The full log lines look like: !MESSAGE Indexed 'simple-01' (2 sources, 184 headers) in <see below> sec: 21,550 declarations; 35,394 references; 0 unresolved inclusions; 1 syntax errors; 0 unresolved names (0.00%) I did 5 tests using the current master (no tagging-related code), the times were: 18.86 sec 9.17 sec 5.91 sec 4.79 sec 4.83 sec And then I ran the same sequence of tests using the code in this commit: 18.73 sec 9.39 sec 6.50 sec 4.78 sec 5.27 sec If performance does become a problem, then caching could be introduced with a new implementation of ITaggableService. The two problems are finding a key other than the identity of the IBinding (since IBindings are re-created often) and properly evicting stale entries when the binding is no longer valid. The process of copying tags from an in-memory IBinding to a PDOMBinding, is a synchronization. This means that tags that are no longer applicable, will be removed from the persistent store. While developing this I found that PDOMBindings are not deleted from the Database (only the names that reference them are deleted), so there is no provision for deleting all tags at once. New database locks are not needed. By the time the persistent tags are accessed, higher levels of code have already taken a read or write lock as appropriate. There are new unit tests covering the changes to the PDOM. Change-Id: I8da1bf5eeba7e1fc2ca7ec308ed8e212629986a4 Reviewed-on: IP-Clean: Doug Schaefer <> Tested-by: Doug Schaefer <> Reviewed-by: Doug Schaefer <>
2012-08-24Bug 387935 - Codan does not see symbols from pre-built indexesEugene Ostroukhov1-0/+7
This change fixes: 1. Codan no longer shows errors on symbols from pre-built indexes 2. Mark occurances in the editor no properly recognizes occurances of the same symbol. Change-Id: I1f3b347524a89f7a4c11b128f15f8fdcffe2afdf Reviewed-on: Reviewed-by: Sergey Prigogin <> IP-Clean: Sergey Prigogin <> Tested-by: Sergey Prigogin <>
2012-05-02bug 328007: [sd90] Design user interface for new scanner discoveryAndrew Gvozdev1-1/+1
2012-04-25Bug 372551. Fixed semantics of ErrorParserManager (e.g.Alex Ruiz1-11/+5
getErrorParserAvailableIds()) get by removing knowledge of contexts from internal data structures (introduced in previous change set). Change-Id: Ia1ff68841f3b494a209e8cdf45325d640fd74ddf Reviewed-on: Reviewed-by: Sergey Prigogin <> IP-Clean: Sergey Prigogin <> Tested-by: Sergey Prigogin <>
2012-04-18Bug 372551. Codan support for writing checkers that invoke externalAlex Ruiz1-0/+28
tools. Change-Id: Ia5cfd24d54ec6e67e08f24a367a6bc689ae407d0 Reviewed-on: Reviewed-by: Sergey Prigogin <> IP-Clean: Sergey Prigogin <> Tested-by: Sergey Prigogin <>
2012-01-27Add real categories for templates. Organize selection in tree.Doug Schaefer1-201/+245
2012-01-27Bug 368160: Dependent projects and SDKs.Markus Schorn1-250/+315
2012-01-26bug 290631: Added New Scanner Discovery core functionality from branchAndrew Gvozdev1-0/+276
sd90 (Not connected to the rest of the code yet)
2011-10-18Initial support for non-PDOM index fragments contributed through anSergey Prigogin1-13/+43
2011-04-28Bug 343437: Support for UNC include directories, by Greg Watson.Markus Schorn1-0/+102
2011-04-21Bug 133881 - Make refreshing after building optionalChris Recoskie1-0/+134
Work in progress.
2010-05-25further changes for Bug 291815 - Add an extension point to allow utilities ↵Chris Recoskie1-17/+9
for virtual EFS filesystems
2010-05-11- Merged changes from cdt_5_0 to HEAD. Too many to mention individually.Chris Recoskie1-0/+114
- Reworked IFileSystem utility so that now it is noimplement/noextend. Clients should now extend from concrete class FileSystemUtility instead to better insulate them from future API changes. - Reworked the resulting concurrency fixes - indexing and scanner discovery now synchronize on the project root as a scheduling rule. Original HEAD behaviour was to synch on the project's .settings folder for indexing, but that deadlocked with scanner discovery. - Fixed remote indexing. Changes on HEAD that deprecated CodeReader broke the ability for remote translation units to provide the path to load the file content from. Added API to ITranslationUnit for this purpose.
2009-12-08New ScannerInfoProvider extension point allowing providers to be associated ↵Doug Schaefer1-0/+109
with build commands in the project description.
2009-10-29bug 293572: No schema found for ↵Andrew Gvozdev2-0/+230
org.eclipse.cdt.core.ScannerInfoProvider/BinaryParser extension points
2009-09-11bug 109139: Generic Error parserAndrew Gvozdev1-7/+95
2009-06-28Bug 189109 Add ErrorParser extension point schemaJames Blackburn1-0/+139
2009-02-03RESOLVED - bug 252966: ProjectDescription Storage: It should be possible to ↵Chris Recoskie1-1/+1
extend / override persistence mechanism
2009-01-21RESOLVED - bug 252966: ProjectDescription Storage: It should be possible to ↵Chris Recoskie1-0/+140
extend / override persistence mechanism
2008-02-22201087: apply contributions from James BlackburnAndrew Ferguson1-1/+1
2008-02-21Fix documentation, schema fix is contributed by Tim Kelly (Nokia)Andrew Ferguson1-2/+2
2008-01-08Cleanup obsolete extension pointsAnton Leherbauer1-123/+0
2007-09-18203553: Merge contributions from Beth TibbittsAndrew Ferguson1-7/+19
2007-09-17201087: add additional description for the templateAssociations extension pointAndrew Ferguson1-6/+25
2007-09-17203553: Apply patch plus additional docs improvements on behalf on Beth ↵Andrew Ferguson1-40/+26
Tibbitts. Remove unused usageDescription attribute.
2007-06-21bring list of extension points up to date, change externalized string to ↵Andrew Ferguson1-1/+1
string literal for language.exsd as externalized strings don't seem to be supported here
2007-06-081. Schema fixesMikhail Sennikovsky1-0/+32
2. test tool-chain definition fixes
2007-05-17RESOLVED - bug 186834: [C99 parser] gcc should be the default languageChris Recoskie1-1/+1 Patch from Jason Montojo
2007-05-10patch from Bala Torati with small modificationsMikhail Sennikovsky2-0/+136
1. Fix for [Bug 184449] [Template Engine] It should be possible to press "Finish" on the first wizard page for templates having default values assigned 2. Fix for [Bug 184593] [Template Engine] Need a way to add tool-chain associations to existing templates 3. Fix for [Bug 184455] [Template Engine] NPE in template engine tests
2007-04-26Template Engine submission from Bala Torati (Symbian) with some ↵Mikhail Sennikovsky3-0/+723
modifications and bug-fixes (see Bug 160012)
2007-04-24Document language extension point schemaAnton Leherbauer2-130/+156
2007-04-17schema fixesMikhail Sennikovsky2-2/+4
2007-04-171. Fix for [Bug 182711] [Project Model] CoreModel.create(IFile) cannot be ↵Mikhail Sennikovsky1-0/+104
used in jobs 2. External setting provider mechanism 3. other bug-fixes

Back to the top