1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-04-29 19:45:01 +02:00
Commit graph

2842 commits

Author SHA1 Message Date
Marc-Andre Laperle
00b30bb03a Bug 512096 - Fix NPE selecting an LLVM toolchain in toolchain editor
When a toolchain is selected along with its builder, the builder gets
matched to a “real builder” (ManagedBuildManager.getRealBuilder). If the
builder is abstract, the builder is not in the possible list of matches,
as implemented in Builder.getMatchKey. This causes
getCurrentBuilderCompatibilityInfo to return null which is not handled.

This patch changes the base LLVM builder to a non-abstract one, which
solves this specific NPE.
Also, in order to be more helpful to the user in case it happens to
another toolchain, a null check was added with an error message that the
builder is incompatible. Then at least, it is more clear that something
is wrong and the user can pick a different builder. 

Change-Id: I4d26c568dfe6307b496719c10908a36933fd3ab8
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
2017-02-19 21:51:36 -05: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
8d0a0717e2 Auto-generate source features using tycho.
This commit removes explicit source features and has tycho create them
automatically, along with all other source features that were not
previously defined.  The logic to auto-generate is in the root pom.xml

For all pre-existing source feature, the name presented to the user has
been changed to use the default name used by Tycho, which is "Developer
Resources".  This will provide a more standard user-experience with
respect to other source features built by Tycho.

Existing SDK features are kept for backwards compatibility.

All the names of the auto-generated source features that replace an
existing source feature have stayed the same except for the
'testsrunner' feature; for that one name change, a p2.inf file is added
to allow upgrading from the old named feature to the new named feature.

Change-Id: Ie632e798c93898fd828f88df4983fc43e2749d22
2017-01-25 16:14:03 -04:00
Marc-Andre Laperle
6cad124cf0 cmake: Fix missing NLS messages
For example, opening the CMake property page, there was a missing
message for the cmake-ui button.

Change-Id: I126fe1cb6e290edc289a2dade44500dd35ed1207
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
2017-01-16 13:36:44 -04:00
Morten Kristiansen
10428dd53a [Bug 340300] Fix parallel make when using pre-build steps
Pre-build will always run in parallel to compilation of source files
unless each and every source file depends on pre-build. Also, when
parallel build was enabled, the "Make build target" under "Workbench
Build Behavior" was ignored. Instead of doing make -j all, Eclipse ran
make -j pre-build main-build. While the intentions are good, make will
attempt to build pre-build and main-build in parallel for previous
stated reasons.

This patch changes two things:

1. Eclipse will consistently respect the "Workbench Build Behavior" for
both single- and multi-process build.
2. The generated makefile is changed to guarantee pre-build is run
first.

   Changed from

       all: pre-build main-build

   to

       all:
           $(MAKE) --no-print-directory pre-build
           $(MAKE) --no-print-directory main-build

Change-Id: Icf3a1057ee3b3cc8a04a433820492a4f469e17dd
Signed-off-by: Morten Kristiansen <millibit@gmail.com>
2017-01-03 08:26:18 -04:00
Christian Sell
e0c3180f80 Bug 503153.Fixed NPE in GCCToolChain.getDefaultScannerInfo()
Change-Id: I51c4d4c2e517fc5743b180c99212dc9c3b8134ed
Signed-off-by: Christian Sell <c.sell@byterefinery.de>
2016-12-15 10:44:05 -04:00
Jonah Graham
a6e77633bd Bug 509248: Disable unstable/intermittent SWTBot based tests
Change-Id: I97b764c2aa695fed32a9c39232ba53522383deca
2016-12-14 19:44:08 +00:00
Alexander Kurtakov
67648e0396 Fix cmake feature to use license feature for proper license.
Change-Id: Iec4d07db7f73f38fe72fe698fede2b380052879d
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
2016-11-30 21:45:30 +02:00
Doug Schaefer
2e2431dd27 Fix NPE in CMake clean when generator not selected.
Change-Id: Id019a84aaffd597374bc3347229a554acf8d5dce
(cherry picked from commit cb14b447f8)
2016-11-21 15:31:06 -05: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
Doug Schaefer
88b2f8564a Fix up feature names for Neon.2 SimRel repo.
Change-Id: I5436457e553610d0676cc87385c2986040e04f2a
2016-11-14 18:24:02 -05:00
Doug Schaefer
a6c3d5d3f4 Mark CMake feature as experimental.
We will the put it into the simrel repository so people can try it out.

Change-Id: Ie7bd94062cfb236f266e413a8350c214ccdadb2c
2016-11-14 16:52:51 -05:00
Doug Schaefer
03051c91ab Implement Qt build tab for the launch config dialog.
Make sure Core Build handles the properties set by these tabs
correctly. A bunch of string externalization too.

Change-Id: I54a61b4d2520a0952c43608169747e792826062e
2016-11-11 16:24:40 -05:00
jantje
5cafc1413a Bug 422378: allow case of getOutputNames() returning null
Allow GnuMakefileGenerator to completely ignore an input file

Change-Id: If4b45db8482b273f4729211d55cfa4f201760b29
Signed-off-by: jantje <eclipse@baeyens.it>
2016-11-08 21:07:28 +00:00
Doug Schaefer
fa84dad370 Make launchMode a core thing and add Debug for CMake configs.
Change-Id: Ie431824dddda07cd6985e5b644970eb525280577
2016-10-20 20:01:52 -04:00
Doug Schaefer
78ba80e1d5 Add New Empty CMake project wizard.
Change-Id: I6f4fc0db27a863700eafcac751fa168dc32d96d5
2016-10-19 18:32:48 -04:00
Doug Schaefer
5540c75ce0 Fixes to remove duplicates and invalid CMake toolchain entries.
Change-Id: I1a8212945428b00d332b9f78c5a3eb81091f3fe6
2016-10-17 23:11:52 -04:00
Jonah Graham
4d0a556446 Bug 505868: Split clean command when cleaning lots of files
This change overcomes the Cannot run program "rm": Command line
too long error when there are hundreds to thousands of files.

This change only applies to the interal builder.

Change-Id: Idc32067e27d76e3b438b2b1a07376859c7c8d1e4
2016-10-14 09:56:25 -04:00
Jonah Graham
33d12e75c9 Cosmetics
Change-Id: I584622013f810d8ac51dcb618074663a79cd5b19
2016-10-13 15:00:03 -04:00
Doug Schaefer
e371ba0919 Updates for Core Build.
Change-Id: I8720d5b57e335adde538838790c3ecdd465a7ed7
2016-10-12 19:19:19 -04:00
Sergey Prigogin
33f0522906 Generification and other code cleanup.
Change-Id: Ifb35a80ec8cf563c5635078db947768d1a7aa6ff
2016-10-06 16:36:21 -07:00
Andrew Gvozdev
91e227142b Bug 501763: NPE in MakeTargetActionProvider
Change-Id: I998f118b1624df2ea3caa2295297261f21b02dda
2016-09-25 21:56:41 -04:00
Sergey Prigogin
53ec9571cb Cosmetics.
Change-Id: I78635ca74bffd3df7b51f87e70464e99dd699324
2016-09-25 11:22:05 -07:00
Doug Schaefer
fb533553c8 Fix to better handle build output parsing random text.
Handle failures when trying to find the resource at the end of
a command line when it's not really a command line.

Change-Id: I7dc94a2c45c758248d0402c253e077142ee050e3
2016-09-16 10:46:47 -04:00
Doug Schaefer
33f528d1ee Add empty tab group and icon for core build local launches.
Change-Id: Ifa522f49888518e2a04263316baddc8e3c507fd0
2016-09-12 15:15:07 -04:00
Doug Schaefer
b26917be90 Introduce Core Build launches and Launch Bar integration.
Unify launching for projects that use the new Core Build system.
Starts with CMake projects. We'll do Qt projects next.

Change-Id: I14af8e99decd54cc6548095b3ad3e054c550aea2
2016-09-12 11:14:17 -04:00
Doug Schaefer
91c342b77c Clean up CMake build.properties files. 2016-09-06 19:49:34 -04:00
Doug Schaefer
9c8bcb28c8 Allow participants in CMake toolchain file management.
For ESP8266, I want to auto discover the toolchains and friends
installed into Eclipse. I also want to handle toolchain files
manually added by the user. Adding providers and listeners.

Adds prefix to gcc commands. Makes CMake config provider for Local
only. ESP8266 has it's own launch config. Add build output to the 
build config model. And fix up output folders.

Change-Id: I682c3d08898e5ca275d07f8bb63c6ec1c7605a81
2016-08-31 15:03:29 -04:00
Doug Schaefer
5426847cbb CMake and build architecture changes to improve launching
Right now launch configuration delegates need to know too much about
the specific build system for a project (cmake versus qt, for example)
Start decoupling this and test out the theory with CMake.

Change-Id: I8a362f16cddca77b37a5ab5920ee19318035d478
2016-08-29 17:54:34 -04:00
Doug Schaefer
7ad8cbe626 Missed updates from last CMake change.
Change-Id: Ie4d8a389c2288e35261b6519971cb0e27a7354fb
2016-08-26 13:42:30 -04:00
Doug Schaefer
50bc082f84 Bug 174176 - Hook up CMake build to LaunchBar to select toolchain files
Use launch target os and cpu arch properties to pick toolchains and
toolchain files. UI to add toolchain files. And build support.

Also some clean up of Qt as I found bugs.

Change-Id: Icd1da43460b5954eea15e95ed8ec27850fc4e54e
2016-08-25 16:49:28 -04:00
Doug Schaefer
6c6901547e Scanner discovery for CMake projects.
Reads the compile_commands.json file and feeds the commands into
the processLine method of the build config which creates the scanner
info. The scanner info is cached in memory and stored in the
metadata directory.

Change-Id: I8b04e661dfe767904d1c10119c07167fee8cd7e4
2016-08-23 01:05:13 -04:00
Doug Schaefer
4afa9e24da CMake updates. Clean, error parsers, add to category.xml.
Make CMake public with the change to category.xml. It's getting close
to being usable in 9.1.

Change-Id: If3e80aa5d5314cb42bbf0d253157d7ecb7d13046
2016-08-17 15:30:45 -04: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
Doug Schaefer
11d5df1274 Bug 323848 - Add Build (was Make) Targets to the Project Navigator
Change-Id: Ia1da4a5e57a7a19732deaf0fa384702139220432
2016-08-16 14:23:31 -04:00
Doug Schaefer
20c4e5ba88 Get CMake projects created and building. New C/C++ Project Wizard.
Fixed up CMake new project creation. Hooked up the CMake build config
properly.

Introducing the New C/C++ Project Wizard that hold all the new project
types: Arduino, Qt, CMake.

Change-Id: I9f9c8b1f51b136515fe226c15059cdbb99106275
2016-08-10 11:17:41 -04:00
Alexander Kurtakov
c8c00efac5 Bug 343552 - RFE: Quick Outline support for configure.ac editor
Implement quick outline for AutoconfEditor with search, navigation and
etc.
Small reorganizations in the plugin.xml to make it easier to navigate.

Change-Id: Ibb13caa6f80ae2bbdfe3a78dec0eb033ee0c0482
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
2016-07-01 13:02:21 +03:00
Marc Khouzam
f38cbb85c3 Remove old .cvsignore files
Change-Id: Ia66de47055a15d94c0aa45d1198f0a9e78d82ad0
2016-06-30 09:58:00 -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
Alexander Kurtakov
0a65f2925b autotools: Start using Job.create.
Making use of lambdas for the sake of showing new APIs and having better
code.

Change-Id: If03cde0b2ae58d965387b0b224bc5129af78dacc
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
2016-06-17 11:33:54 +03:00
Doug Schaefer
5d2cbaaa1c Cherry picking changes from the CDT 9 branch for Qt and Arduino.
Change-Id: I85eca2b8bb0447d4dd703030c41d90c1f9bcdf89
2016-06-13 21:23:10 -04:00
Doug Schaefer
d4a911baa8 Create a dummy file in the user doc index when skipDoc.
Change-Id: Id5039869212f6b900fb423ea1cd5b27782cc9ad5
2016-05-26 23:25:49 -04:00
Doug Schaefer
758110471e Add MSYS2 32-bit support to MinGW GCC toolchain.
Change-Id: I185f1b070ce0e97340fc55b1fc0842a6f8e23637
2016-05-17 16:18:50 -04:00
Doug Schaefer
8f0ca866c4 Make sure CMake project property page only shows on CMake projects.
Change-Id: I804fcae05e618925d0cbf4b6fbc52b6665789916
2016-05-16 16:06:43 -04:00
Doug Schaefer
1cd5ff5169 Fix a few things for the QML editor.
Fixed up content type warning. Hooked up colors for the QMLEditor to
the CEditor preferences. Fixed up tabbing in the main.qml template.
Fixed the GCC toolchain to find compiler on path on windows.

Change-Id: I66a013666d1ab99bfe94a2a558486cc81681c67c
2016-05-16 15:15:39 -04:00
Jeff Johnston
022e9428fd Add a Debug configuration for Autotools projects
- set default CFLAGS and CXXFLAGS for debug configuration
  Autotool projects
- pass project when creating a new AutotoolsConfiguration
- add new Debug (GNU) configuration
- add new build type property to Debug configuration
- look for property when initializing AutotoolsConfiguration

Change-Id: I95e6fa59f854dad3aff71507a4a85ffa55f4b2bc
2016-05-16 12:02:50 -04:00
Jeff Johnston
9fd79b0596 Bug 491619 - Choosing a C++ dialect should reindex
- changed gcc builtin settings providers to prefer non-shared
- added isIndexerAffected method override to ToolSettingsTab which
  looks at new isIndexerAffected boolean
- add logic to ToolSettingsTab setOptions() method to look for
  dirty options that return true for isForScannerDiscovery() or
  are special options that affect include path or defines
- add performok method to ToolSettingsTab to look if isIndexerAffected
  when user hits OK without hitting APPLY
- change the message for bringing up the question dialog for end-user
  to choose whether to reindex or not

Change-Id: Icd740caafe638f272b6f1434d5817f2377ffe04a
2016-05-13 09:54:29 -04:00
Doug Schaefer
0d7ee343e0 Add MSYS2 support for managed build. A few Qt cleanups on Windows.
Change-Id: I07ed0cb4a83996de194559570fedf9fb1b21b42d
2016-05-12 15:32:51 -04:00
Alena Laskavaia
2f58cf231e fixed NPE when loading c descriptors
Change-Id: I84db8063ab43d00bbed42c40f8a7601031ef8bb1
2016-05-11 14:24:05 -04:00