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

25713 commits

Author SHA1 Message Date
Chin Huat Ang
13b1894c4c Bug 531991 - Fix command launcher manager priority comparison
When iterating through a list of command launcher factory to select the
highest priority factory, be sure to compare using the last known
highest priority.


Change-Id: I473ac9c8ff7cfb5a0aa81714101a795816fd1ac8
Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-03-07 23:50:43 +08:00
Jeff Johnston
82b0f6ab28 Bug 531985 - Support Container build with new Core Build
- add support for Container build to Meson
- add fixes to MesonBuildConfiguration clean build to use sh -c
  like normal meson build
- add new refreshScannerInfo method to MesonBuildConfiguration to
  re-process the commands json file so indexing will correctly
  switch from local to Container build and vice-versa
- add MESON_PROJECT_ARGUMENTS to IMesonConstants
- in MesonBuildConfigurationProvider getCBuildConfiguration
  method, remove checks for toolChainfile and for Container
  build, name the configuration based on the image name

Change-Id: Ia8a85c05e0cb9d46d2987ed4d39fcee914302467
2018-03-06 14:48:48 -05:00
Jeff Johnston
c9822e117e Bug 531985 - Support Container build with new Core Build
- 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 UI...as 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-03-06 14:48:01 -05:00
Doug Schaefer
c781ba5c36 Remove wait on stop in BinaryRunner. It causes deadlock.
If we have issues with the runner while the job is trying to cancel,
we sould be address it there.

Change-Id: I2c42d654f4d08a7499c97c52fe14d76e24aa3dd6
2018-03-06 10:48:38 -05:00
Jonah Graham
8934f52ae6 Bug 532035: Enable synchronizer to resynchronize/flushCaches
Change-Id: Ib1ebbe5a1b87e9402d961383fcf15dae865ac0c5
2018-03-05 20:06:22 +00:00
Jonah Graham
377374febb Bug 532035: Be explicit in iterating over IBreakpointsTargetDMContext
Change-Id: I802ad946347c01d466f5011883ad644b8f31aca1
2018-03-05 20:06:22 +00:00
Nathan Ridge
107bfee755 Bug 403153 - C structure whose first declaration is inside a structure
C does not have a notion of structure scope, so the declared structure
has file scope in spite of being declared inside a structure.

Change-Id: I39b9dfe36c7da19b70e79e0a1cd822d91832dcd8
2018-03-05 11:55:52 -05:00
cartu38 opendev
bcc81b20c1 Bug 531915: Abstract page is now able to deal with fragment icon(s)
Change-Id: I99bd52fcbc6e984e10914fc323f7af5768d7f7f2
Signed-off-by: cartu38 opendev <cartu38.opendev@gmail.com>
2018-03-02 12:01:16 +01:00
Jonah Graham
a819504873 Bug 530377: Fix corrupt bp state & add test for fast bp events.
This generally required adding RequestMonitors everywhere possible
and then holding up processing future bp events until previous
ones were finished.

Change-Id: Icc641071249f7f8c619f0592e07772e47645c9db
2018-03-02 08:22:41 +00:00
Doug Schaefer
071f118e27 Yet another deadlock in old ICDescriptor code.
Hitting this in our internal verify jobs. This invoke method locks
the element then calls removeProjectStorage which waits on fLock.
Meanwhile someone else has called getProjectData has the lock and
then tries to lock an element. Deadlock.

Change-Id: I5d013e8aa3c16e8c832fbe30b2dd3c17aeeefee5
2018-03-01 16:17:10 -05:00
Doug Schaefer
10c5897080 Remove extra colon in CMake build output.
Change-Id: I624d7e7079a3c1473fb591e24af1f7dcdd6617dd
2018-03-01 15:25:24 -05:00
Alexander Kurtakov
33291e5989 Move to wikitext 3.0.23.
Change-Id: Iaf8a7698106bf38578907f4fdab27f0cc20a0763
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
2018-02-26 23:29:16 +02:00
Nathan Ridge
bdc212ec05 Bug 531172 - Avoid ClassCastException in CPPSemantics.declaredBefore()
Change-Id: Iddda8bab86e9567b8e0c877562b48defb187656f
2018-02-25 01:13:48 -05:00
Nathan Ridge
af73a4ed1a Bug 531475 - Push a lookup point when precomputing variable types and initial values in PDOMWriter.resolveNames()
Change-Id: Ia9d0c51a963f70d9a8b0ffcd3fa6b6c508f1d1dc
2018-02-24 02:02:33 -05:00
Nathan Ridge
3ff810915a Bug 531322 - Overloading between initializer-list and non-initializer-list constructors during list-initializations
Change-Id: I6884ce16bc0f14893f074eef27015b3654aedba5
2018-02-22 18:52:02 -05:00
Alexander Kurtakov
61442cf3be Bug 530000 - Add Meson Build support
Editors for meson.build, meson_options.txt and *.ninja files. Just
highlighting for now based on textmate grammars.
Added tm4e to target to enable resolving tm4e bundles.

Change-Id: I22859b2d39a96dcd777ee96d2a5e7465e4884839
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
2018-02-21 04:46:04 -05:00
Nathan Ridge
28b36d1e3e Bug 531076 - NPE in CSearchQuery.createMatchesFromNames()
Change-Id: I6614b6557c1a9152e1d8b336d1fcfdf359201fb7
2018-02-20 01:08:11 -05:00
Jeff Johnston
dcfc276062 Bug 530000 - Add Meson Build support
- use sh -c to invoke meson and ninja commands so that
  the default environment including PATH is set up
- don't bother trying to find the commands locally and
  don't bother trying to find local environment (only
  use env options from property page or run ninja command)
- add a check after running meson to ensure that
  ninja.build file gets created, otherwise issue error
  message and stop build
- fix comments for RunNinjaPage
- add future Container support by allowing a special
  target OS when checking for isLocal build

Change-Id: Ie8d736c0909b44fe8db14265afbc8b05262b51f3
2018-02-19 20:37:43 -05:00
Jeff Johnston
70151ce491 Bug 531360 - Run ninja menu item is showing up in Docker views
- fix visibleWhen attribute of menuContribution
- also fix some warnings due to command not being set up
  properly

Change-Id: I8b5239b1edcd5da20201e71d23dce3bfb18c6d0c
2018-02-19 19:39:47 -05:00
Jeff Johnston
7292fbff6d Bug 529910 - Debugging C/C++ container apps remotely is not working
- 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-16 11:43:29 -05:00
William Riley
5728fec0cf Bug 531258 - Provide name for org.eclipse.cdt.core.cBuilder
Using "CDT Core Builder" to avoid confusion with "CDT Builder" used by
managed build.

Change-Id: Ib2556be4e53caf505fff3a697757a0979fbf08bc
Signed-off-by: William Riley <william.riley@renesas.com>
2018-02-16 10:17:09 -05:00
Karsten Thoms
dfb713b5c8 Bug 351718 - Avoid NPE when no default setting available
Change-Id: I2950bdcc30672fe3fa8e80b49f9bdeed17db5cdf
Signed-off-by: Karsten Thoms <karsten.thoms@itemis.de>
2018-02-16 12:14:56 +01:00
Doug Schaefer
45966dd76d Fix up handling of esp32 on Windows.
Need to convert paths from MSYS style to proper Windows
native.

Change-Id: I8c459274a1eb33af026c1ae383db67c8cbcdc29f
(cherry picked from commit fea65eeb15)
2018-02-15 10:46:01 -05:00
Jonah Graham
96d2bc0738 [releng] Add missing plugin.properties
Change-Id: Ifd1ec18a0eeea859120f1193273eef361ba93a0f
2018-02-15 07:31:25 -05:00
Hansruedi Patzen
29a51f0a61 Bug 531098: [C++17] Add support for switch with initializer
Change-Id: I046acd311cb99215798d2cbb8d30c2ef8ff2301d
Signed-off-by: Hansruedi Patzen <hansruedi.patzen@hsr.ch>
2018-02-15 00:24:06 -05:00
Jeff Johnston
e31e23bb4e Apply CMake changes from Bug 530673 to Meson
- Fix issue with Meson and changing toolchains since
  Meson is based on CMake plug-ins
- Cleaned up add and remove of toolchain files and handling of when
  a toolchain changes for a config

Change-Id: I147a30454c69e3d8d86fc50c561a1667ddfb5df3
2018-02-14 13:09:18 -05:00
Jeff Johnston
3405063203 Bug 531125 - Tupled gcc toolchains should not be the local default
- change ToolChainManager so that when creating the types map for
  the first time, make it a LinkedHashMap instead of HashMap so
  order of input is preserved (first in = first out)
- fix GCCPathToolChainProvider so that it adds non-tupled gcc
  to the ToolChainManger before adding any tupled version

Change-Id: I84602a98dd4949a2f9847d4e72c428cdedd60688
2018-02-14 12:23:03 -05:00
Doug Schaefer
ca09189575 Bug 531121 - Fix up/down buttons in toolchains preference
The content provider was overriding the change all the time.

Change-Id: I6d406dd6dc903cd890bfc7f7788d76e4388ff905
(cherry picked from commit d4b3472cc9)
2018-02-14 11:01:42 -05:00
William Riley
fdd018365c Bug 531131 - Consider superclass value to avoid unnecessary changes
Consider the superclass value when setting pre & post build steps, error
parsers, tool commands & tool command line patterns to avoid changing
the .cproject file unnecessary

Change-Id: Ida323982fe5bce7b0dd9b70eb23a6ee778be5403
Signed-off-by: William Riley <william.riley@renesas.com>
2018-02-14 09:18:08 +00:00
Hansruedi Patzen
a51f7c0659 Bug 522216, 527427: [C++17] Support for constexpr if and init-statements
Change-Id: Ia8195c66334edb107848901619e85fbfb5c78b18
Signed-off-by: Hansruedi Patzen <hansruedi.patzen@hsr.ch>
2018-02-13 17:50:48 -05:00
Jeff Johnston
cb5c699871 Bug 531071 - CBuildConfiguration doesn't handle quoted arguments
- fix CBuildConfiguration processLine() to call new stripArgs()
  method to parse the command arguments into separate argument
  strings and recognize quotes

Change-Id: I759fb94600b82a55bf5e7f179e01e1f976ce193f
2018-02-13 16:16:15 -05:00
William Riley
689ad9f6ec Bug 531043 - Display errors/warning count for makefile & cmake builds
Change-Id: I8b2ab525af137ddd890f5713a3278cce6d17bffd
Signed-off-by: William Riley <william.riley@renesas.com>
2018-02-13 16:42:33 +00:00
William Riley
9a4853aa2d Bug 531106 - Modify MBS option serialize to handle empty string lists
Store a flag to indicate if an empty or null list. Existing projects
without flag will be considered as non-empty when loaded to maintain
existing behaviour for them.

Change-Id: I745c887eb2888910c6e76d5bc057d592a3d8fb3a
Signed-off-by: William Riley <william.riley@renesas.com>
2018-02-13 14:13:37 +00:00
Jonah Graham
d03213fae4 Fix newlines.
Change-Id: I40c768f8df6ec6b4f5b4a90cb10c291eec9dccd3
2018-02-13 11:25:08 +00:00
Jonah Graham
3afc828ae0 [releng] Bump version to 9.5.0
Change-Id: Ie342f02f7aae633f41a7ab7d39c21e056793a04a
2018-02-13 11:25:08 +00:00
Jonah Graham
e7b9697caa [releng] point CDT update site at correct branch
Change-Id: Ifa539c9d94fc802808cea6806f19f287447d9a60
2018-02-13 05:21:34 -05:00
William Riley
bfe664e228 Bug 531043 - Add missing since tags to new API in EPM
Change-Id: I14c270de6e4d9322b076a97236fceeb6f4dc2f92
Signed-off-by: William Riley <william.riley@renesas.com>
2018-02-13 09:34:41 +00:00
Nathan Ridge
9c8d5c4c4c Bug 530762 - Add missing evaluation types to CPPCompositesFactory.getCompositeEvaluation()
Change-Id: I9d0750d6b3d96976309567f99a03b5dc47f0a6b7
2018-02-12 21:30:48 -05:00
Nathan Ridge
0641833d88 Bug 530729 - Accept C++11 attribute specifier before parameter declaration
Change-Id: I425d1b351c10976392ecdf1e4b33f486938e0a04
2018-02-12 21:27:44 -05:00
William Riley
9e8c775f15 Bug 531043 - Display number of errors/warning as end of build
Changes to ErrorParserManager & implementation of message for legacy
build system.

Change-Id: Iffc34eeae87bbd2810684fc52a9d9bcd4bb47950
Signed-off-by: William Riley <william.riley@renesas.com>
2018-02-12 15:25:29 -05:00
William Riley
6a72f4f07c Bug 531028 - Pass build config to all builders during headless build
Change-Id: Ia802d07e9da88fcb42274633d4321212d5eb6096
Signed-off-by: William Riley <william.riley@renesas.com>
2018-02-12 15:24:12 -05:00
Jonah Graham
2c82259f95 Fix newlines.
Change-Id: I78acc1c843d58a5e1f69db6ea68a6c6dda34198b
2018-02-12 12:31:31 -05:00
Simon Marchi
fadd0a5015 Update GDB versions in download-build-gdb.sh
- 8.0.1 is out now, so we should use this instead of 8.0.
- 8.1 is out, so add it.

Change-Id: Iba8a0cf453dfd0b2e488fd89f7412a02aac421f6
Signed-off-by: Simon Marchi <simon.marchi@polymtl.ca>
2018-02-12 11:40:51 -05:00
Alexander Kurtakov
35bf85ebde autotools: Automate regenerating docs
Don't rely on hardcoded path to wikitext but instead use maven to
download it and call ant properly. Moved to latest 3.0.22 wikitext.
Regenerated the help with the latest wikitext too.
To auto regenerat one has to call maven with -PregenHelp.

Change-Id: Ie30779dfa4bd1c52dfa20411f810c96288daf509
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
2018-02-10 17:08:33 -05:00
Nathan Ridge
964e738381 Bug 519091 - Do not bypass the caching mechanism for class member specializations
Direct calls to CPPTemplates.createSpecialization() bypass the caching
mechanism, resulting in the violation of invariants such as every
binding being represented by a unique (AST-derived) binding object.

ICPPClassSpecialization.specializeMember() should be used instead.

Change-Id: I10ddb06d087d97cf05c6bed0d9f14a15440b87fe
2018-02-10 15:41:14 -05:00
Nathan Ridge
3171322555 Bug 529383 - NPE in CheckersRegistry.getResourceProfile()
Change-Id: I376cbf44c1fd237bd75a98ffc9e1daf60f5924ec
2018-02-10 15:40:15 -05:00
William Riley
5e27e4c377 Bug 530941 - Ignore editor file unless editor is active
Change-Id: Ie755f80cc01f55c0d4b9b704ff40008b8bb841af
Signed-off-by: William Riley <william.riley@renesas.com>
2018-02-09 11:36:42 -05:00
Nathan Ridge
d50aec4c2a Bug 530692 - Avoid EvalFunctionCall storing the evaluation for the implicit 'this' twice
EvalFunctionCall.fImplicitThis is sometimes redundant in that the
owner evaluation is already stored by one of the arguments. In
such cases, storing the owner separately in fImplicitThis can lead
to exponential complexity in chained method calls.

We resolve the duplication by computing the implicit this from the
function name evaluation instead of storing it where possible.

This was already implemented for cases where the function name
evaluation is an EvalMemberAccess in commit 659ff8c4a7. This
commit extends the approach to cases where the function name
evaluation is an EvalID.

Change-Id: Ic71e81b4692c51ffb8e15b3da9fc2dff1a554f05
2018-02-09 11:14:38 -05:00
Alexander Kurtakov
832f8d3d9d Add missing annotations.
Change-Id: I62df355cd6b85a9cbedd467def188eed2f4222e1
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
2018-02-09 09:23:17 +02:00
Alexander Kurtakov
aac61a6123 meson: Enable warnings
And fix them.

Change-Id: I6a1594559504764aeb325f78fa47ff103b2183a9
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
2018-02-09 00:03:33 +02:00