Use the toolchain type and id as the key to the Map holding the
toolchain files instead of the Path to the file. Also simplifies the
build config since we can always figure out the toolchain file from
the toolchain. Deprecate getting toolchain by path since that shouldn't
be needed any more.
Also took the opportunity to add javadoc to the interfaces.
Change-Id: I11ae2ad8177a3f60399742c8c19576f85ea4b8c0
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/check_code_cleanliness.sh containing the
exceptions that apply to test plug-ins.
Change-Id: Ibd4e31ade0b42b31e7cbe5a94f06c6fc15183a56
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/MessagesForDebugVM.properties
# 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
This was done by selecting all projects in Eclipse then
Source -> Clean Up... -> choosing:
- Remove redundant semicolons
and completing the wizard
Change-Id: I3d3175cfdfadec4f815c551d486e42c9f57b80ce
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
The releng/scripts/apply_jdt_prefs_to_all_projects.sh was run to
copy standard settings to all other projects.
Change-Id: I4436c947d7f0142f56b709e661379c3eb54f666b
- The commands are launched directly instead of using the shell
(/bin/sh) which is not available on Windows.
Change-Id: I5f8d99a04da1c860bcd37d138103a1bd4e501547
Signed-off-by: François Godin <copelnug@gmail.com>
- fix MesonBuildConfiguration to use startBuildProcess instead
of CommandLauncherManager
- change CBuildConfiguration startBuildProcess() method to accept
a build directory and to replace environment variables based
on input parameter
- fix CBuildConfiguration watchProcess routines to ensure that the
ReaderThreads have completed processing output to the console
- change StandardBuildConfiguration and CMakeBuildConfiguration to
pass the working directory to startBuildProcess
Change-Id: Icb4f2d076f0e6bb1513b20f6f198f720eae07e51
- fix CMakePropertyPage to check if the active config is
a Container build in which case dynamically build the page
using the results of a cmake -LAH call which will give
the various configuration values that can be changed
- add new CMakePropertyCombo, CMakePropertyText, CMakeUtils
and ICMakePropertyPageControl classes
- change CMakeBuildConfiguration build methods to use
startBuildProcess to run commands similar to
what StandardBuildConfiguration does now
- change CMakeBuildConfigurationProvider to use a container image
name to form a build directory so that differnt image targets
are differentiated and easy for the user to figure out what they
are for
- fix main.cpp sample CMake program to actually be a hello
world program
Change-Id: Iea9e2b5cc6895bc95194e28b131a3fb7e3b670ca
Cleaned up add and remove of toolchain files, handling of when
a toolchain changes for a config, and the launch bar tracker to
be more accurate with toolchains.
Change-Id: I1a1efdf08a5f47058552c85404fe8d602d158e73
Move Toolchains directly under C/C++ and rename to Core
Build Toolchains. Add a label describing what the toolchains
are for in hope of avoiding confusion with managed build.
Also move Qt into C/C++.
Change-Id: Ia1d76087c65b26562d1001243ea355c7ac32365e
The CMake toolchain file editor was not recording the correct
toolchain. The same was also true for the toolchain selection in
the build settings tab.
Change-Id: I62e4c7ae0175da7c1b5ffb7f89e321a371a6e8e0
A number of changes that clean up how build configs are done. Now
build settings are stored with the build config instead of in launch
configs. That makes it less launch bar specific. Add build settings
UI to change the toolchain used for a given launch config.
Also changed CMake so it's IToolchain based instead of property which
doesn't work when multiple IToolchains match.
Change-Id: I958d90ede3c1f873ab1530c2b2880808e8f7abef
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
Provide a way to add new toolchains. Also start of UI to allow for
reordering them to help with toolchain selection for targets.
New Generic Target Wizard for the new wizard2 extension point for the
Launch Bar Target UI.
Change-Id: I60635ab27dad5b69df72c339337473183dcf711a
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>
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>
Make sure Core Build handles the properties set by these tabs
correctly. A bunch of string externalization too.
Change-Id: I54a61b4d2520a0952c43608169747e792826062e
Unify launching for projects that use the new Core Build system.
Starts with CMake projects. We'll do Qt projects next.
Change-Id: I14af8e99decd54cc6548095b3ad3e054c550aea2
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
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
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
Currently only contains a button for launching the CMake GUI
(cmake-qt-gui), but we might want to put other things in here as well.
Change-Id: Ia89ad409eaad17a170cf1e2f1cd4fb31a7d678e2
Signed-off-by: Jesper Eskilson <jesper.eskilson@iar.com>