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

31 commits

Author SHA1 Message Date
Jeff Johnston
bd88f34dde Bug 526730 - Autotools should not run autotool commands in the Container
- modify runCommand and runScript methods in AutotoolsNewMakeGenerator
  class to take an ICommandLauncher to use
- modify AutotoolsNewMakeGenerator regenerateMakefile method to
  pass a local CommandLauncher when running autotool commands, but
  using one from the CommandLauncherManager when running configure
  or config.status to do the configuration
- modify RemoteCommandLauncher to add a constructor that includes
  the ICommandLauncher to use if the project is not remote
- fix AbstractAutotoolsHandler to use local CommandLauncher

Change-Id: Ib3f0deff3cca4b7b40459b5dd691d73dcbf2a87c
Signed-off-by: Jeff Johnston <jjohnstn@redhat.com>
2017-11-02 11:20:35 -04:00
Jeff Johnston
c96d126b86 Bug 513589 - Add support to build CDT projects in a Docker Container
- 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-10-22 05:38:51 -04:00
Doug Schaefer
11dcec43f2 Add UI tests plugin for CMake. Fix a couple of bugs it found.
Also restructures the pom.xmls to put the modules in the top level
so we can order them to have the test plugins build after them.

Change-Id: I2f0e4ebd252791fb8844cdf0f635d574946207aa
2017-10-06 16:36:51 -04:00
Doug Schaefer
d8cc0751ae Update feature versions to CDT 9.4.
Also remove remaining pom.xmls for feature projects.

Change-Id: I78d6335f92d70ad2699b8a25801ff72d2935aefe
2017-09-11 11:18:42 -04:00
Marc-Andre Laperle
0046099052 releng: Make use of Tycho POM-less functionality
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>
2017-02-13 23:19:56 -04:00
Marc Khouzam
8cf5ed53f2 Update version to 9.3.0
Change-Id: Ic953ccc5d38ff3661ca44de21ed8c4b7dad5b246
2016-11-15 20:32:51 -05:00
Marc Khouzam
334777eb6e Update version to 9.2.0
Change-Id: I36ad4218b20b8ea70584c89f5be45c757bf4c714
2016-11-14 23:50:05 -05:00
Marc Khouzam
cd559dafaf Update version to 9.1.0
This commit used the script releng/scripts/ChangeFeaturesVersion.sh

Change-Id: I8274a6e8dd5c0f1e450f07952e138b265a441a62
2016-08-17 10:11:57 -04:00
Marc Khouzam
9e1e981b4d Move the rest of the CDT plugins to java 8
This change was generated using the script:
releng/scripts/ChangeJavaVersion.sh

Change-Id: I2ad96dc682a5acb8529c3edec40de279c331b5a4
2016-06-22 14:51:43 -04:00
Alex Blewitt
2356a29c70 Bug 492200 - Replace StringBuffer with StringBuilder
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: Ic2f50c5b6f3c3a4eae301bb3b40fb6faed235f79
Signed-off-by: Alex Blewitt <alex.blewitt@gmail.com>
2016-04-21 22:17:03 -05:00
Marc Khouzam
b745736775 Incremented CDT features version to 9.0.0
This includes bumping the standalone debugger to 9.0.0

Change-Id: I55fae1cec995b5f6865a5b174c004ed1b76e9bea
2016-01-18 16:37:47 -05:00
Marc Khouzam
f3ff649041 Fix copyright of all CDT plugins using the copyright tool from platform.
This commit does not add missing copyrights, just updates the date on
the existing ones.

Change-Id: I646f5afd533a1fcc539bdf2e0686b22f406ecf65
2016-01-03 20:38:31 -05:00
Marc-Andre Laperle
f7f052c971 Fix description and copyright for Remote CDT services feature
Change-Id: I0e4adb5efd15caaf740267b0d6a49e9c2372270a
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
2015-09-13 14:37:46 -04:00
Marc Khouzam
bb61124897 Incremented CDT feature version to 8.8.0
Change-Id: Ib1189a08a5f0225fd676b682dc8a10477ad3acc5
Signed-off-by: Marc Khouzam <marc.khouzam@ericsson.com>
2015-06-10 09:33:49 -04:00
Marc-Andre Laperle
10e011fa33 Bug 468713 - CDT should explicitly require eclipse.remote 2.0.0
Change-Id: Ifd0b8a54e93300f1970b887385ee01de1de2cfa3
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
2015-05-28 19:49:10 -04:00
Marc Khouzam
e820f872ad Incremented CDT feature version to 8.7.0
Change-Id: Ife0feaaa9263d2b7797e31d628250bd26caff1b5
Signed-off-by: Marc Khouzam <marc.khouzam@ericsson.com>
2015-05-04 21:07:13 -04:00
Doug Schaefer
cd65a29016 Bug 459972 - Update CDT to use o.e.remote 2.0.
Requires a couple of changes in the autotools plug-ins. Change the
4.5 target to refer to the remote 2.0 build and update the pom to
use the 4.5 target.

Also fixes autotools test so they run on the Mac.

Change-Id: I145de3ea3f14d61ffba7354ad0fa3e0ec2467e26
2015-02-17 14:48:08 -05:00
Doug Schaefer
275feb6874 Bug 459971 New SerialPort support. First step is Mac library.
Java classes are defined and a pretty simple native library for
Mac is there. Tested with Arduino so I know reading works. This
implementation should work for Linux as well. Windows is going to
be the hard one.

Not checking in the binaries yet until I get more testing with them.

Also remove ppc native libraries for Mac since that hasn't been
supported in a long time.

Change-Id: If4ffbc6e73a7656a47c2f45b875be0842c482b05
2015-02-16 13:19:54 -05:00
Sergey Prigogin
252eaf4c0f Incremented CDT feature version to 8.6.0.
Change-Id: Ic90c8e6a68d21e5b90ec3fac997da6a95a29bedf
Signed-off-by: Sergey Prigogin <eclipse.sprigogin@gmail.com>
Reviewed-on: https://git.eclipse.org/r/39066
Tested-by: Hudson CI
2015-01-06 19:40:38 -05:00
Marc Khouzam
5a5b004e3f Bug 449224 - Fix for NLS'd plugin and
provider names

Change-Id: I27bf6d3ce062359e7eea47b728e5254578d8decb
Signed-off-by: Marc Khouzam <marc.khouzam@ericsson.com>
2014-10-29 13:44:12 -04:00
Sergey Prigogin
d8154bd340 Inremented branding plugin version to 8.5 2014-07-21 17:39:01 -07:00
Sergey Prigogin
a2fbb5c879 Inremented feature version to 8.5. 2014-07-21 17:07:12 -07:00
Marc-Andre Laperle
b280f247ae Bug 438476 - Fix autotools MinGW and Cygwin build
Change-Id: I10bfb868718bf564dc74d53be6ff7453f1349dc5
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/29435
Tested-by: Hudson CI
2014-07-15 21:06:31 -04:00
Marc Khouzam
ce9b270a38 Bug 435998 - Get rid of all "eclipse_update_120.jpg" files in CDT
features

Change-Id: I52a71e62f8161990657e96ef52403fd7f69698a2
Signed-off-by: Marc Khouzam <marc.khouzam@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/27499
2014-06-17 11:33:37 -04:00
Marc Khouzam
2c22479c9e Bug 435309 - Use the shared license file scheme for CDT
This means that:
- feature.xml files now make a reference to the shared license plugin
      using version 0.0.0
- feature.properties files no longer have the text for the license
- license.html and epl-v10.html files are removed as they are part
      of the shared license plugin
- build.properties files no longer reference removed files
- the main pom.xml file references the license repository

Change-Id: Ibd880480de3a07597084d44cce7b822903509079
Signed-off-by: Marc Khouzam <marc.khouzam@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/27250
2014-05-26 10:03:45 -04:00
Greg Watson
009a3a7d5f [autotools] Prevent MalformedURLException when setting remote working
directory.

Change-Id: Ib8a6a7d4df09a1f73a533db0a3821fcdb8cecdcb
Signed-off-by: Greg Watson <g.watson@computer.org>
Reviewed-on: https://git.eclipse.org/r/26428
Tested-by: Hudson CI
Reviewed-by: Jeff Johnston <jjohnstn@redhat.com>
Tested-by: Jeff Johnston <jjohnstn@redhat.com>
2014-05-20 12:01:40 -04:00
Marc Khouzam
5806deb5b8 Update to new license text
Signed-off-by: Marc Khouzam <marc.khouzam@ericsson.com>
2014-05-20 11:36:39 -04:00
Marc Khouzam
fa5de3be3b Update license.html files for 2014 version
Signed-off-by: Marc Khouzam <marc.khouzam@ericsson.com>
2014-05-02 11:17:44 -04:00
Marc Khouzam
6fb8a428cd Missing exports to o.e.cdt.remote.core
Signed-off-by: Marc Khouzam <marc.khouzam@ericsson.com>
2014-04-21 16:23:38 -04:00
Jeff Johnston
fdba4b05b8 Bug 430831 - add autotools support for PTP synchronized project
- bump up minor version
- refresh remote synchronized projects when adding a file or directory
- for remote synchronized projects, use remote interfaces to figure
  out target OS
- look for synchronized builder when adding Autotools builder
- switch to use RemoteCommandLauncher in autotools core and ui
- make autotools.core and autotools.ui friends of CDT remote.core
- fix org.eclipse.cdt.remote.core to respect working directory
- wait for process exitValue to succeed in try loop before attempting
  to use the return value

Change-Id: I837ecf74c44085e35b7e775250b7e5264051475e
Reviewed-on: https://git.eclipse.org/r/24360
Tested-by: Hudson CI
Reviewed-by: Jeff Johnston <jjohnstn@redhat.com>
Tested-by: Jeff Johnston <jjohnstn@redhat.com>
2014-04-16 16:04:26 -04:00
Greg Watson
8aa89d3dd8 Bug 431274 Add remote support to CDT
Change-Id: Ifbf99d8bc4b682dc545258e7359934089e87f346
Signed-off-by: Greg Watson <g.watson@computer.org>
Reviewed-on: https://git.eclipse.org/r/23941
Reviewed-by: Jeff Johnston <jjohnstn@redhat.com>
IP-Clean: Jeff Johnston <jjohnstn@redhat.com>
Tested-by: Jeff Johnston <jjohnstn@redhat.com>
2014-04-04 17:14:13 -04:00