Skip to main content
AgeCommit message (Collapse)AuthorFilesLines
2019-05-23Bug 547442 - Launchbar shouldn't set newly added Container target activeJeff Johnston1-2/+4
- change ContainerTargetTypeProvider.changeEvent() to use the new ILaunchTargetManager2 interface to use addLaunchTargetNoNotify to add image targets from a new or enabled Docker connection so as to prevent scanner info jobs Change-Id: I2aef96c86c926790702a59853f0baf103c7115fc
2019-05-15Bug 547145 - Core build use of ProjectDescription should be synchronizedJeff Johnston1-3/+7
- also change ContainerLaunchConfigurationDelegate Change-Id: I5574d67ae030e728605c12f7bc05bcbb8e23e83d
2019-05-13Bug 547104 - Adding new Docker Connection causes two build dirsJeff Johnston1-2/+40
- copy ChangeEvent logic from ContainerGCCToolChainProvider to ContainerTargetTypeProvider when a new connection is added Change-Id: Idbdaba7d10e4590722ff442447d195a3a2485907
2019-05-07Bug 547026 - fix ConcurrentModificationExceptionJeff Johnston1-1/+3
- in ContainerGCCToolChainProvider change collection of toolchains to be an array before accessing to prevent ConcurrentModificationException Change-Id: Ia39ddee181ba814997a34d5b1d68170fe1cda5ce
2019-04-23Bug 546518 - Container gcc toolchain should just depend on pathJeff Johnston1-7/+3
- change ContainerGCCToolChain.getCommandPath() to just return the command - change default command to be gcc instead of /usr/bin/gcc Change-Id: I62869d974e7fc9707ee02dc6f5e2ab4500ddd0bc
2019-03-20Bug 545192 - Convert directory path in docker for windowsHannes Vogt2-2/+2
Change-Id: I69c09d391e333495b57f09d7b7f5818a5428424f Signed-off-by: Hannes Vogt <>
2019-02-07Bug 509263 - Fix warnings for missing enablement expression on start-upSimeon Andreev2-1/+3
This change adds empty enablement expressions where they are missing, in order to prevent start-up warnings such as: Enablement expression is missing for config provider for org.eclipse.cdt.debug.core.coreBuildDescriptorType Change-Id: Id7f2b6149230ddde24764772c5b67ff5eef28b65 Signed-off-by: Simeon Andreev <>
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/ containing the exceptions that apply to test plug-ins. Change-Id: Ibd4e31ade0b42b31e7cbe5a94f06c6fc15183a56
2018-11-23Bug 540373: Cleanup: Remove trailing whitespace in properties filesJonah Graham1-1/+1
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/ # 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 Graham4-44/+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 Graham3-6/+6
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: Remove unnecessary castsJonah Graham3-5/+5
This was done by selecting all projects in Eclipse then Source -> Clean Up... -> choosing: - Remove unnecessary casts and completing the wizard Change-Id: I287d4066b12fc19d7f73a016e11c9405abb4ceb9
2018-11-22Bug 540373: Cleanup: Add missing annotationsJonah Graham5-0/+9
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-22Bug 540373: Cleanup: Format & Remove trailing whitespaceJonah Graham33-1811/+963
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-18/+484
The releng/scripts/ 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 Graham39-130/+252
Change-Id: Ifbb1d5af2a00bd5634dea200320e8c4303ffca6c
2018-11-08Bug 540423 - C/C++ Container Launcher missing Port BindingJeff Johnston8-6/+917
- add new ContainerPortDialog class to allow user to specify ports in the launch configuration Container tab - add new ContainerTabModel and ExposedPortModel classes to support new functionality - add new Ports group to ContainerTab and have a table where a user can add, edit, remove, and select ports for publishing to the host - add new attribute ATTR_EXPOSED_PORTS to ILaunchConstants for saving and restoring user selected ports in C launch configuration - add needed internal messages to support new port settings functionality - bump up org.eclipse.cdt.docker.launcher version Change-Id: I93b7503bdc141e3077418800352507ef38e65ab1
2018-10-30Bug 540610 - Add Automatic-Module-Name headerKarsten Thoms1-0/+1
Change-Id: Ia990b24469751050dd9ec8f9b5550804816308b3 Signed-off-by: Karsten Thoms <>
2018-10-23Bug 540410 - ContainerTargetTypeProvider causes ClassNotFoundExceptionJeff Johnston1-1/+1
- bump up minimum org.eclipse.cdt.core needed for org.eclipse.cdt.docker.launcher plug-in so that ICBuildConfigurationManager2 interface is available Change-Id: I5e77e7b43bdea1f0b59c79fcdfced7c162b64e9a
2018-10-23Bug 540367 - Increment version numbersWilliam Riley1-1/+1
Change-Id: I4a355170a7075f0a98ba3c1a5131c235c89b07d2
2018-10-12Bug 540085 - Deadlock in ToolChainManager initJeff Johnston2-13/+38
- modify ContainerGCCToolChainProvider.init so that the CBuildConfigurationManager.recheckConfigs() call is done within a separate job so the init() call will return without causing deadlock - do the same for ContainerTargetTypeProvider - modify CBuildConfigurationManager initProviders() method to be synchronized Change-Id: I4ca9371fb340887233872b6d315621a24450fb2b
2018-09-12Bug 538958 - Meson project built in Container not indexing properlyJeff Johnston1-2/+4
- add synchronized keyword to the various scanner info collecting methods in ContainerGCCToolChain Change-Id: I476e0c191379621d5ca8ef266c8590a0954ab4a5 (cherry picked from commit 55569e158ce4a1026f3d2405945154d349dc724c)
2018-07-12Bug 536884 - Removing header cache should cause ScannerInfo refreshJeff Johnston2-2/+16
- add a new IToolChain property "cdt.needScannerRefresh" that is set if scanner info needs to be refreshed - for a Container build, turn the property on in ContainerGCCToolChain startBuildProcess() if the Container headers for the toolchain's have been deleted - in CBuildConfiguration processLine(), look for the toolchain property when looking to see if scannerinfo should be calculated - in CBuildConfiguration, turn the toolchain property off in shutdown() Change-Id: I67a3537d1e2967dc15b66a1c37abda1ae8f78bff
2018-07-11Bug 533363 - Indexer spending a lot of time in CommandLauncherManagerJeff Johnston1-5/+36
- it seems that fetching the active configuration for a project using an ICConfigurationDescription is time-consuming - the active configuration is sought in ContainerCommandLauncherFactory to get the optional build properties and thus we can figure out if the active configuration has enabled container build or not - see if we are given a CConfigurationDescriptionCache and it contains a BuildConfigurationData element which allows us to get an IConfiguration without creating a new one, serializing it etc.. which is adding to the time taken Change-Id: I8973f1707a602a73fc5ac751f12a1e8dbd549aab
2018-07-04Bug 536363 - Meson project include paths wrong when using ccacheJeff Johnston1-2/+10
- fix GCCToolChain and ContainerGCCToolChain to not blindly take the first token in the command string when processing scannerinfo; if it is "ccache", take the second token instead Change-Id: I4b2b7dfaccae6f3ec968bbe4217c57994ad71963
2018-07-03Bug 536317 - Deadlock at start with launchbar and docker tooling enabledJeff Johnston2-135/+206
- fix ContainerTargetTypeProvider changeEvent() to start a Job and return immediately so it will not cause a DockerConnection to be held in multi-threading - move the DockerConnectionManager addConnectionListener call to end of init() method so the fetching of images won't cause a notification event to occur - at end of init(), call CBuildConfigurationManager.recheckConfigs() to make sure any disabled configuration due to a missing IDockerConnection is now put in the configs master list and removed from the noconfigs list - make similar changes to ContainerGCCToolChainProvider Change-Id: Idc120d613b99ec365522f5e7bf5da82d1b362425
2018-06-02Bug 535473 - Run/Debug buttons for Container target don't run/debugJeff Johnston2-5/+69
- Launch bar is usually expecting a LaunchConfigurationTargeted Delegate which calculates the binary but Container build uses the ContainerLaunchConfigurationDelegate which expects the program name, working dir, connection, and image id set up as ILaunchConfiguration attributes - modify ContainerLaunchConfigurationDelegate to add finalLaunchCheck method which can verify if the launch config attributes are set up and if not, set them from the build config (since this is post-build) - fix getImageName() in CoreBuildContainerLaunchConfigProvider to use toolchain attributes Change-Id: Iad6cc26928c33e964650b99844e065df8653858f
2018-05-23Bug 535014 - cannot debug in a containerJeff Johnston1-14/+13
- add check for network ports coming back empty for a Container launch and if so, fall-back to use the ip address of the Container for the remote host Change-Id: I83d68a10e2dc92f7d0f27bb9dec304388594b4a3
2018-05-07Bug 533842 - Fix Launchbar for enabled/disabled Docker ConnectionsJeff Johnston2-9/+13
- fix problem with launch targets not being set correctly - for ContainerTargetTypeProvider, make init() and changeEvent() synchronized - move the test for ESTABLISHED connection after getImages() in ContainerTargetTypeProvider.init() method so that we don't see the connection as being UNKNOWN - move addConnectionManagerListener() call in init() to be just after we fetch the list of current connections - in ContainerGCCToolChainProvider, make init() and changeEvent() synchronized and move addConnectionManagerListener call to just after connections list are acquired Change-Id: I24880a77755d634e8bce85db4f3354cf5ad7671d
2018-04-20Bug 533842 - Fix Launchbar for enabled/disabled Docker ConnectionsJeff Johnston2-2/+195
- fix CMakeBuildConfigurationProvider to not verify if a toolchain file exists which doesn't occur for Container Build configurations - add new ICBuildConfigurationManager2 interface that adds new recheckConfigs() method, make CBuildConfigurationManager implement this new interface - add new recheckConfigs() method to CBuildConfigurationManager so that if a Docker Connection is enabled, the list of invalid configs can be rechecked and those that are now valid can be removed from the noconfigs list - have ContainerGCCToolChainProvider implement IDockerConnectionManagerListener and register itself as a listener during init - add new changeEvent() method as part of a listener that will add toolchains for connections that are added/enabled and similarly will delete toolchains for connections that are removed/disabled - do the same with ContainerTargetTypeProvider (making it be an IDockerConnectionManagerListener and adding/deleting targets based on whether a Docker Connection is added/enabled or deleted/disabled - as well during the init process of ContainerTargetTypeProvider remove any targets for Connections that aren't established Change-Id: Id5e9415eaa770ef7f6ba1ddd11312ed003585391
2018-04-16Bug 533222 - Add Container Build support to Std Make Core BuildJeff Johnston2-1/+82
- 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-03-20Bug 532420 - Make Container Core Build indexing more efficientJeff Johnston2-4/+16
- add new ICBuildConfiguration2 to keep API checks happy - remove refreshScannerInfo method from ICBuildConfiguration and put it in ICBuildConfiguration2 - make CBuildConfiguration implement ICBuildConfiguration2 - update ContainerPropertyVolumesModel to use new Docker plug-ins using docker-client 8.9.2. - fix MesonBuildConfiguration to use a job for each compile line being processed, then wait until all jobs are done before causing an reindex to occur (this will maximize parallelism when building in Containers) - fix ContainerCommandLauncherFactory to save the project so we can exclude project directories when copying header files using the new Docker Tooling interfaces - fix CoreBuildLaunchBarTracker to use ICBuildConfiguration2 interface to make the call to refreshScannerInfo Change-Id: I2138f5111614e7821e46c22731397a01035eac0a
2018-03-10[releng] Add version constraints on linuxtools due to API changeJonah Graham1-2/+2
This really should have been part of I68d4f93de3a0e6141c7a37a34f9e8fdb2313fbd8 Change-Id: I1b7671fbd12dd973139e72f053e3b3d5117f3b44
2018-03-09[releng] Update CDT in preparation for Photon M6Jonah Graham1-1/+2
The most significant change for CDT is the upgrade of com.spotify.docker.client which has knock on effects due to the API changes. Includes: - Updating target platform - removing Neon and Oxygen as potential target platforms in OOMPH setup - Updating CDT standalone debugger - Changes in API for docker changes Change-Id: I68d4f93de3a0e6141c7a37a34f9e8fdb2313fbd8
2018-03-06Bug 531985 - Support Container build with new Core BuildJeff Johnston20-153/+2093
- add new ContainerTargetTypeProvider to create a new target for each usable Docker image from known connections - add new ContainerGCCToolChain class which supports gcc in a Container for projects with Container targets - add new ContainerGCCToolChainProvider which creates a ContainerGCCToolChain for each usable Docker image from known connections - add new CoreBuildContainerLaunchConfigProvider class - add new CoreBuildContainerLaunchDescriptorType class - add new ContainerTargetLabelProvider class to support adding a new Container target - add new NewContainerTargetWizard and NewContainerTargetWizardPage to add/edit a new Container target - add new IContainerLaunchTarget class - add new refreshScannerInfo method to ICBuildConfiguration interface to allow switching ScannerInfo when target is switched - implement default refreshScannerInfo method in CBuildConfiguration which currently does nothing - add new fetchContainerDirs method to CommandLauncherManager to fetch container directories for a project that is using Core Model and CBuildConfigurations - add new verifyIncludePaths method to ICommandLauncherFactory2 that takes an ICBuildConfiguration and implement this for ContainerCommandLauncherFactory - fix ContainerCommandLauncher command handling to use a list of Strings to preserve spaces in arguments and call new runCommand interface in Docker well do not link any args that are files if they are system directories (e.g. /usr /bin) - fix getCommandLauncher in ContainerCommandLauncherFactory when passing an ICBuildConfiguration so that it uses the configuration's toolchain properties to figure out if a Container build is asked for - fix launch method of ContainerLaunchConfigurationDelegate to check if working directory is null in which case use the project directory - also add buildForLaunch method override and preLaunchCheck to ContainerLaunchConfigurationDelegate so it can be used for Core Build launching as well and ensure that the project name and active configuration is set properly - in CoreBuildLaunchBarTracker, use the lastTarget to set the active target instead of the local field "target" as this will end up setting a random target as the active target. Also call the new refreshScannerInfo method of the build configuration when the active target has changed - add ICBuildConfiguration support to Docker LaunchShortcut such that properties will be set appropriately and acquired from the toolChain - bump up Docker launcher version to 1.2.0 Change-Id: I074b02314f6ac6942fdf230b1dc8e154ced3088e
2018-02-16Bug 529910 - Debugging C/C++ container apps remotely is not workingJeff Johnston1-1/+34
- fix ContainerLaunchConfigurationDelegate to look at whether the daemon is running remotely or locally - if running remotely, try to connect to gdbserver by using the Container ip address and the gdbserver port directly (will not work on Windows, but fixes Linux scenario) Change-Id: I9a6188d90187e2ca6ab73c8042a02b6ff29d5f2f
2018-02-06Bug 530635: Add ability to do "set remotetimeout" via UIJonah Graham3-5/+87
Change-Id: Iaeaea1e8656d85cb854a5b27f5f212fa37a3159d
2018-02-02Fix some API issues caused by some recent CommandLauncher additionsJeff Johnston1-1/+2
- remove new exposed field from CommandLauncherManager and add correct @since tags - create new ICommandLauncherFactory2 interface so that no additions are made to ICommandLauncherFactory - add @since tag for ICBuildCommandLauncher interface - make ContainerCommandLauncherFactory implement the new ICommandLauncherFactory2 as well as ICommandLauncherFactory Change-Id: I7bbacb59e284b43e6d142accf59b6ab9df274438
2018-01-29Bug 530468 - Support passing CBuildConfiguration to Cmd Launcher FactoryJeff Johnston3-14/+58
- add new ICBuildCommandLauncher interface - add new defaulted method to ICommandLauncherFactory interface - add code to look at Build Configuration properties in ContainerCommandLauncherFactory - add new methods to CommandLauncherManager and ContainerCommandLauncher - add an update dialog call in ContainerTab - add calls to set and get CBuildConfiguration to ContainerCommandLauncher Change-Id: If95fafe592c7ea4580bae1a15d168d1163e132fd
2018-01-24Fix launch config matching for Run as Container ApplicationJeff Johnston1-3/+20
- fix LaunchShortcut find launch config method so that if the active configuration is not enabled for Container build, then it will look for config with default connection and image Change-Id: If11865dd43cd2a08a0565b3483523002b0a00613
2018-01-22Bug 530053 - Launching locally after Container launch doesn't workJeff Johnston1-1/+2
- fix other way round, launching locally, then in Container - add null check for connectionURI in Docker LaunchShort when searching launch configs in case there is a local configuration in the list Change-Id: I08f89a9d1dccff3ace54667e86e9d3e8840f8694
2018-01-11Bug 528169 - Run autotools commands within containersJeff Johnston3-1/+81
- add new optional build property to run all Autotool commands in Container - for Autotool nature projects only, add a checkbox to the ContainerPropertyTab to turn this new option on/off - change the AbstractAutotoolsHandler class to look at the optional build properties for the project to determine if the fallback CommandLauncher used to run commands should come from the CommandLauncherManager to run in Container or to a local CommandLauncher - change AutotoolsNewMakeGenerator the same way - add new messages as needed (add a tooltip to warn user that choosing new option may cause inconsistencies for files shared among configurations) Change-Id: Id828ec3015f32f320d2247bd0577944164c71df8
2018-01-03Bug 529390 - Run in Container launch config not resetting err messageJeff Johnston2-1/+12
- modify ContainerTab to reset the error message when Docker Connections/Image changes cause a listener notification and then look to see if no connections or no images errors exist - modify ContainerTab to reset the error message if the Docker Connection selected gets changed - bump org.eclipse.cdt.docker.launcher version to 1.1.1 Change-Id: Iad5051750a5dd53a0eb458d73570fffd9e3867c4
2017-11-19Expose org.eclipse.cdt.docker.launch directory as publicJeff Johnston6-4/+9
- move ContainerCommandLauncher to org.eclipse.cdt.docker - update DockerLaunchUIPlugin to be noextend - update users of ContainerCommandLauncher appropriately Change-Id: I32ea6de3b3df12b6579249583303111bf6b7b957
2017-10-22Bug 513589 - Add support to build CDT projects in a Docker ContainerJeff Johnston21-27/+3342
- 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-07-21Fix Debug in ContainerJeff Johnston1-4/+32
- on Windows (possibly Mac as well), we can't use the ip of the Container to contact the gdbserver as this address may be hidden from the host behind a VM - instead use the localhost port that the tcp/2345 is mapped to which the Docker machine etc.. forwards back - fix this in ContainerLaunchConfigurationDelegate Change-Id: I9f85bf0d0d9dec183c504ba4fb7adc55d4a038bb
2017-05-12Add seccomp:unconfined option when debugging using a ContainerJeff Johnston1-1/+1
- current Docker daemons don't allow ptrace in the default seccomp profile so specify "seccomp:unconfined" when kicking off the gdbserver Change-Id: I742a99221c897a553a46bc768e713d74b1fda22e
2017-03-08Fixed broken compilation.Sergey Prigogin1-1/+4
Change-Id: I0e4355fd8f1547d1e93400215759a5d897924031
2017-02-14releng: 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 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 <>
2017-02-07Bug 510615 - Launch dialog, handle spaces in gdb pathMarc Dumais1-2/+10
The path to GDB is set in the launch dialog, under the Debugger tab. If the path to GDB contains one or more spaces, and is not within double quotes, GDB will not be found and the launch will fail. This patch improves the use cases around the "Browse" button, to select GDB's path. 1) if the user clicks on the "Browse" button, the browse dialog will open in the correct place, no matter the presence of space(s). 2) When GDB's path is selected with the "Browse" button, it's then set in the "GDB debugger" field. This patch looks at the selected path and adds surrounding double quotes if there is any space within, and strips any double quotes if there are no spaces. Change-Id: I202f574772965af3a491d449b9e9a97e8c61e2b0

Back to the top