1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-09-06 18:13:10 +02:00
Commit graph

1144 commits

Author SHA1 Message Date
Jonah Graham
9bc8e1d0be Bug 562452: Avoid using .C for C++ files when calculating specs
Change-Id: I0fe24a8343e73d501ae09e8bf3721e3d310a696d
2020-04-25 14:14:39 -04:00
Jonah Graham
5a6b9b4bf4 Revert "Bug 560614 - Drop dependency on ICU4J"
This reverts commit 87b627bf02.

Change-Id: I54ea1ac766437deb174eeba571a7a5094c180828
2020-03-02 06:49:24 -05:00
Alexander Kurtakov
87b627bf02 Bug 560614 - Drop dependency on ICU4J
Straightforward conversion. Still usages left that need deeper
investigation how to be done proper.
Some long time commented code removed as java formatter breaks trailing
whitespaces on save.


Change-Id: If74259bed5735b0d4cc98fc2cfa609c9c53c80c9
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
2020-03-02 06:46:15 -05:00
Alexander Fedorov
d4bcea1ec7 Bug 559707 - Promote ToolchainBuiltinSpecsDetector.getTool(String)
added
protected Optional<ITool> languageTool(String languageId)
instead of
private ITool getTool(String languageId)

Change-Id: Ic21d2a493acf4e547c7354c544c2cef34b53eab6
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
2020-01-30 15:50:54 +03:00
Torbjörn Svensson
a0963136f8 Mark ToolchainBuiltinSpecsDetector.getTool(String) protected
Change-Id: Ib0f4172d0a97ce46465ef50ed521b515a59bbab9
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
2020-01-29 18:33:02 -05:00
Jonah Graham
b7bd96d371 Bug 551817: Normalize case of (c) to match Eclipse Handbook
Change-Id: I46404d20d20c385bf8efaaada66e18eea4d4e163
2020-01-09 12:18:50 -05:00
Jonah Graham
35338f28a3 [releng] Cleanup code that has been misformatted and update to SDK 4.13
The check-code-cleanliness CI jobs have not been running recently,
so this commit is to the code up to those minor changes

Change-Id: I9fb4b0213dec558f58c5ca718b3d2685564ef456
2019-10-28 13:07:02 -04:00
Marc-Andre Laperle
0c577f6e7e Bug 548730 - Compilation database (CDB) language settings provider
This language settings provider lets you specify the path to the
compile_commands.json and reuses existing build output parsers to figure out all
the language entries for each file to be used while indexing. With this, there
is no need to do a full build and in fact no need to have a working build
configured in CDT for indexing to work and be fully configured. This is
especially useful for non-CMake build systems that have no existing integration
in CDT but indexing would still works with little effort.  The build output
parser (GCC, MSVC, etc) is selectable as part of the configuration of the CDB
provider. There is also an option to exclude any file that is not present in
the CDB. This option is useful for large projects in order to speed up indexing
but also to increase index accuracy (conflicting symbol names, etc).

Change-Id: If21455ec529f9e162cdf3e5aff7a1bca83e362f6
Signed-off-by: Marc-Andre Laperle <malaperle@gmail.com>
2019-10-23 21:47:54 -04:00
Jonah Graham
7a2ff27b91 [releng] Update comparator repo to last release
Change-Id: I00901808f1eda041f070b2f3e1cda076987c69a5
2019-10-17 10:07:44 -04:00
Alexander Kurtakov
3317465cdf Do not use deprecated Boolean constructor.
Change-Id: If317ec13ca9ae0cc9ec6d4555afd0b26a402e376
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
2019-10-11 00:23:13 +03:00
Jeff Johnston
232e3d7153 Bug 551089 - Builds with libraries having spaces in the name fail
- add new checkIfQuotedOption() method to GnuMakefileGenerator
- have ensurePathIsGNUMakeTargetRuleCompatibleSyntax() look to
  see if the path is actually an option with path in which case
  if it is quoted, do not try to escape white space

Change-Id: I67a286962ba67acb75d1f8c29cac47069ab07353
2019-10-03 15:19:19 -04:00
Jonah Graham
2cbf927a36 Bug 550076 - Use PE64 parser by default
Change-Id: I757c8ace43e79f1215ad0e817430e5ab90415401
2019-09-09 15:56:07 -04:00
Alexander Kurtakov
a3938937f2 Convert new Runnable to lambda.
Take 2.

Change-Id: I060b0e41d8c6058db0c2ba88af8454b5517105b8
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
2019-08-12 17:31:30 +03:00
Umair Sair
84e2470069 Bug 545976 Clicking on error/warning in build console doesn't open file
Problem:
========
Common builder invokes the build on all the referenced projects. For the
markers creation, the project on which build is invoked by user is used,
that is incorrect. Once all the referenced projects are built, the
actual project starts building and removes all the markers associated
with it, hence the markers created previously for referenced projects
are removed and now clicking on error/warning in build console of
referenced projects will not open source file because of missing
markers.

Fix:
====
Always set the correct project being built for markers creation using
setCurrentProject(..) API.

Change-Id: Ief051ac664ea964816fdcbe7f2f54bcf43caa212
Signed-off-by: Umair Sair <umair_sair@hotmail.com>
2019-06-21 13:19:27 -04:00
Umair Sair
15cf760405 Bug 546407 Project dependencies are not built in the correct order
Problem:
========
filterConfigsToBuild(..) always filters the configs that are once added
to set irrespective if it has been built or not. Consider scenario where
there are three project a, b, c and a depends on b & c and b depends on
c. When a is built, filterConfigsToBuild(..) returns configs of b and c.
Then b starts building and filterConfigsToBuild(..) doesn't return
config of c because its already in set. This is wrong and it should
return config of c because it is not yet built and b depends on it.

Fix:
====
If a referenced config by any project/config is not yet built,
filterConfigsToBuild(..) shouldn't filter it.

Change-Id: I5fbe77789f14ce3114200998070a7461069c98ab
Signed-off-by: Umair Sair <umair_sair@hotmail.com>
2019-06-21 13:18:06 -04:00
Clément Hurlin
a201acf7c1 Use IToolChain instead of ToolChain in constructor of Configuration.
The constructor's body and the rest of the class was already using
IToolChain.

Change-Id: I905e15dcedb6c3280c271bf3c47ef6f1e898d3b9
Signed-off-by: Clément Hurlin <clement.hurlin@provenrun.com>
2019-05-24 10:31:10 +02:00
Dorothea Pilz-Roeder
8b88c9bffe Bug 180451 - fix generateMakefiles() on incremental build
- generateMakefiles() requires similar patch for the top build
directory like regenerateMakefiles().
 - need to extend the check in isGeneratedResource for config
directories located in subdirectory of the project root.

Change-Id: Id1809e216aee54524bc6cb072f8883ea5a202b61
Signed-off-by: Dorothea Pilz-Roeder <dorothea.pilz-roeder@advantest.com>
2019-05-07 14:09:27 -04:00
Dorothea Pilz-Roeder
3dc407d008 Bug 180451 - [Build] Build output directory should be selectable for
managed build

Allow clients extend GnuMakefileGenerator and allow them to provide a
different top build output directory.

Change-Id: I37dd96089f6f4bed6f4255def4bef193fb27e7e4
Signed-off-by: Dorothea Pilz-Roeder <dorothea.pilz-roeder@advantest.com>
2019-04-10 10:57:14 +02:00
Jonah Graham
783af3dee6 Bug 544721: Increment version following new standard
See https://wiki.eclipse.org/CDT/policy#Version_Numbering

Change-Id: Icac4c041d2ea1178ab40bd97531d014c4be22675
2019-02-26 09:04:57 +00:00
Philip Langer
90c82078ac Bug 544721 Retain rebuildState state when cloning build configs
When cloning build config, all its childrens' rebuildState and dirty
state are maintained except for the states of AdditionalInput and
InputOrder.

With this change, we also retain their rebuildState and dirty state,
if it is a clone (that is, copyId is true in the InputType).

Change-Id: I63b2d38d0065e50357887bfccb340d458d2f4441
Signed-off-by: Philip Langer <planger@eclipsesource.com>
2019-02-22 14:52:52 +01:00
Marc-Andre Laperle
efb9ddbb63 Remove a few internal, deprecated methods
Change-Id: I073f7770a594ec226f7adf5d5022960a298608c7
Signed-off-by: Marc-Andre Laperle <malaperle@gmail.com>
2018-12-03 23:12:24 -05:00
Marc-Andre Laperle
52b4a02b20 Remove a couple of StreamMonitor classes (unused)
Change-Id: I13224ff79440fc181ab7128d7620ca2c1190f646
Signed-off-by: Marc-Andre Laperle <malaperle@gmail.com>
2018-12-02 12:01:27 -05:00
Jonah Graham
37ed2c406d Bug 540373: Update the compiler warnings/ignores
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
2018-11-24 10:55:06 +00:00
Jonah Graham
3caea240a3 Bug 540373: Format some Java files that were missed
Some files which has other cleanups applied meant they needed to be
reformatted again. e.g. the removing of type parameters shortened
some lines of code that meant the wrapping changed.

Change-Id: I68ca09567b9530cc2a085c33923642b6de2ec77b
2018-11-23 13:59:46 +00:00
Jonah Graham
ff75ae80fa Bug 540373: Cleanup: Remove trailing whitespace in properties files
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
2018-11-23 07:52:26 +00:00
Jonah Graham
aa1040a21a Bug 540373: Remove '(non-Javadoc)' comments
These were inserted in the past automatically by Eclipse but
newer tooling makes them redundant.

These were removed by doing a global find/replace on *.java files
using the following regular expression:
\t/\*\n\t \* \(non-Javadoc\)[^/]*/\n

Change-Id: I59d3248020f10934fde1dda5b5a31e20bb188e19
2018-11-22 22:00:29 +00:00
Jonah Graham
caf2292768 Bug 540373: Cleanup: Remove redundant type arguments
This was done by selecting all projects in Eclipse then
Source -> Clean Up... -> choosing:
- Remove redundant type arguments
and completing the wizard

Change-Id: Iaecc7010f097b4b1fabd29ccaa34ccb23a716fbf
2018-11-22 21:55:36 +00:00
Jonah Graham
a923614c73 Bug 540373: Cleanup: Organize Imports
This was done by selecting all projects in Eclipse then
Source -> Clean Up... -> choosing:
- Organize Imports
and completing the wizard

Change-Id: Ia7b305a4c967d0e6f4e8fb8c1041e7028b24006c
2018-11-22 21:47:02 +00:00
Jonah Graham
170e654b47 Bug 540373: Cleanup: Format & Remove trailing whitespace
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
2018-11-22 21:47:02 +00:00
Jonah Graham
35996a5c5c Bug 540373: Standard .settings auto applied
The releng/scripts/apply_jdt_prefs_to_all_projects.sh was run to
copy standard settings to all other projects.

Change-Id: I4436c947d7f0142f56b709e661379c3eb54f666b
2018-11-22 21:47:02 +00:00
Jonah Graham
f70a8b35c1 Bug 540371: Update to EPLv2 using releng/scripts/change_to_eplv2.sh
Change-Id: Ifbb1d5af2a00bd5634dea200320e8c4303ffca6c
2018-11-22 20:31:51 +00:00
Karsten Thoms
652602febd Bug 540610 - Add Automatic-Module-Name header
Change-Id: Ia990b24469751050dd9ec8f9b5550804816308b3
Signed-off-by: Karsten Thoms <karsten.thoms@itemis.de>
2018-10-30 15:49:15 +01:00
William Riley
f3ca365140 Bug 540367 - Increment version numbers
Change-Id: I4a355170a7075f0a98ba3c1a5131c235c89b07d2
2018-10-23 11:20:31 -04:00
Evgueni Driouk
1fa5f7d6e5 Bug 540369 - HeadlessBuilder: change private to protected
Change-Id: Ib8ca36aa50ce6060d4f8fb14f5b74c3662bc8862
Signed-off-by: Evgueni Driouk <Evgueni.Driouk@arm.com>
2018-10-22 09:51:01 -04:00
Michael Keppler
c7ddddc339 Bug 537211 - Error running Builtin Specs Detector (closed project)
Just check for the resource being accessible immediately before trying
to delete markers of it.

Change-Id: Ic359dc5a5a865a981847c6da1dd2e8cc312b3bd9
Signed-off-by: Michael Keppler <Michael.Keppler@gmx.de>
2018-07-20 07:47:33 +02:00
Jonah Graham
45279d5ffc Bug 511161: Early fail on non-absolute URIs when looking for files in workspace
Change-Id: Idefa850b3d43e13d878d5a19bd89bd42ee1c534f
2018-05-30 19:11:24 -04:00
Eric Woestman
4aebc5bffc [534454] Fixed GCC build parser for simple defines
Changed GCC build parser to handle simple defines like "-D FOO"
and defines them to 1.

Bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=534454
Change-Id: Ic9065914bc82dafc43d0814f4fed27a26eeeeb28
Signed-off-by: Eric Woestman <woestman@ensoftcorp.com>
2018-05-17 21:59:02 -04:00
Torbjörn Svensson
4881a2ecd4 Bug 330204 - Use ManagedBuildManager to build
The UI is using ManagedBuildManager to build a specified set of
configurations.
Insead of duplicating the logic (since clean does not support argument
transfer from HeadlessBuilder all the way to CommonBuilder), call the
public function for building a set of configurations.

WARNING: This fix is relying on a race condition in
ManagedBuildManager.buildConfigurations() since that method swaps the
"active configuration" while invoking the builder for the clean target.

Change-Id: I422a22e43a0acbef85420c04028475d61ad2ff85
Signed-off-by: Torbjörn Svensson <torbjorn.svensson@st.com>
2018-05-09 10:56:10 -04:00
Samuel Hultgren
bb5f2d7f78 Bug 528940 - Execute pre/post build step
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>
2018-04-17 15:12:00 -04:00
Samuel Hultgren
c2b5e84087 Bug 217674 - Added incremental build support
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>
2018-04-17 11:53:41 -04:00
Torbjörn Svensson
47d08ec204 Bug 533473 - Dynamically hide option categories
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>
2018-04-12 17:48:53 +02: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
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
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
Alexander Kurtakov
3ebd99eab7 Remove unused private methods.
Change-Id: Ie3c9fa60313d7a14a1f633df2ced698e55dd75ee
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
2018-02-08 23:22:22 +02:00
Alexander Kurtakov
db1cd491d6 Remove useless imports.
Change-Id: Ie59d3942ea1df97440bd84e46a24753ed6ed429b
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
2018-02-08 21:17:09 +02:00
Alexander Kurtakov
b4f1123050 Remove useless code.
* Else clause.
* Unused constructor in private class.

Change-Id: I51d9ac08000e9ef6364dac96e96297733335a367
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
2018-02-08 21:11:59 +02:00
Alexander Kurtakov
b66f413759 Remove redundant superinterface.
Change-Id: Idf96b85189c03b7a30772751617281806265dcbc
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
2018-02-08 20:11:45 +02:00
Doug Schaefer
3935339cf7 Fix API baseline errors from Command Launcher changes.
Change-Id: Ibc5ba38669832f6baa67ff49ce4fe08ab1f5a14a
2017-10-31 15:57:56 -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