- 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
Move to latest CBI plugins 1.1.5.
Use mylyn docs 3.0.24 in autotools docs generation.
Change-Id: I077afde458c654e40db44bec77b3049efe9715af
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
- 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
Execute the pre and post build steps as part of the build when using
the internal builder in parallel mode.
Change-Id: I840da0d7025597dc5b3edc1bb54a5ca45b6e2e86
Signed-off-by: Torbjörn Svensson <torbjorn.svensson@st.com>
Signed-off-by: Samuel Hultgren <samuel.hultgren@st.com>
- 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
When building a project with parallel builder using internal builder,
the entire project is rebuilt even if an incremental build was issued.
Store the rebuild state so that next build knows what has already been
compiled.
Change-Id: I1d1836f072bf13b03423fde7b5c427d41e47391e
Signed-off-by: Samuel Hultgren <samuel.hultgren@st.com>
- 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
Allow applicabilityCalculator to hide optionCategory items that are
located on the toolchain. Show in the schema that
applicabilityCalculator is a valid attribute for optionCategory.
Change-Id: I6adb22b0af2a2c7fe45ea142049fcc2687d105b9
Signed-off-by: Torbjörn Svensson <torbjorn.svensson@st.com>
- add new NewManualNinjaTest to test the Run ninja context
menu item
- add a check that Project->Clean... works for Meson
projects in NewMesonProjectTest
- fix all tests to substitute the project location instead
of hard-coding it
- fix the build ninja code to use env to run so that
environment variables can be overridden from run ninja dialog
- add new test to AutomatedIntegrationSuite for Meson UI tests
Change-Id: I0e338df6935f343d6ffbce99a83265d252ea37a6
- add NewMesonConfigureTest.java
- fix extraneous "meson" string in console output when
performing a meson configure
- add new test to AutomatedIntegrationSuite for
Meson UI test plug-in
Change-Id: Ic10520a0d420d380df95117b69200409a48226b3
- change splitting logic in MesonPropertyPage to split the arg
string using -- which precedes args and to perform trim()
operation to remove spaces between
- don't process an empty arg after splitting
- fix the boolean arg logic to use parseBoolean instead of getBoolean
which is only for system properties
Change-Id: I390911bbf9d7f63f0cf6a13278f3644fe175847b
- fix MesonBuildConfiguration to check if any environment variables
have been specified in properties page and if so, to change
the command to run /usr/bin/env ENVVARS /bin/sh -c "meson ..."
- using env will cause the current env to be used (both locally
and in a Container where the env has been set up) and modify it
according to what the user specifies
Change-Id: Ide3997cf78edf65857dea3119f0a9d71679cfe68
- 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
- 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
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>
- 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
- fix visibleWhen attribute of menuContribution
- also fix some warnings due to command not being set up
properly
Change-Id: I8b5239b1edcd5da20201e71d23dce3bfb18c6d0c
Need to convert paths from MSYS style to proper Windows
native.
Change-Id: I8c459274a1eb33af026c1ae383db67c8cbcdc29f
(cherry picked from commit fea65eeb15)
- 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
- 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
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>
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>
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>
- add new RunNinjaCommandHandler, RunNinja,
AbstractMesonCommandHandler, and
RunNinjaPage classes to support running ninja manually
with env variables added and options specified
- add a new build method to MesonBuildConfiguration which
specifies ninja options and environment variables
- add SWTImagesFactory for supplying the meson logo image
- add WizardMessages class for specifying messages for
meson ui wizards
- add new MesonUtils class and move stripEnvVars from
MesonBuildConfiguration to here
- add new constants to IMesonConstants interface
Change-Id: I8d635b2bd96792800bb07f4b3f1730be6e41eb24
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
- rewrite unconfigure Meson Property page logic to parse the
output of meson --help and form the controls accordingly
- do not add an entry for help option
- add environment variable text entry to unconfigured property
page to allow the user to add things such as CFLAGS=xxxxx
- fix MesonBuildConfiguration to only use the MESON_ENV property
when running meson for the first time and to prepend the
current environment first to ensure local path, etc.. is
still set, otherwise it won't be able to find commands it
needs such as execvp
- parse the environment text string to look for entries that
use single or double quotes so that entries may use the = sign
or spaces
- when building, have ninja use the -v option so that the compile
and link commands are output to the console
Change-Id: I40d04234a7de74417c43f4c39bb2e21c86deb8a2
When AutoconfEditor is set to 2.67 or newer, relax the validation of
AC_INIT version string.
Change-Id: I65221857905e867e3eea2de219ddf68c60f6d39b
Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
- 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
Not sure what changed but the launcher for these projects is now
returning null for an environment. Added a null check.
Change-Id: I05c94bb77f951f417577d0c2a3e3b4b6b996214b
(cherry picked from commit be9c1b8338)
- bump up org.eclipse.cdt.remote.core so that autotools.core
can refer to the latest version in its dependencies
Change-Id: I4ec198d7c5d367a4a479a1dd39839f3c2d8c4a96