aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main
Commit message (Collapse)AuthorAge
...
* Instead of using the smallest group as the inputs for the generation ↵Gravatar Sergio Campama2016-08-27
| | | | | | | actions, use instead the intersection of all the groups in which each proto appears. This further minimizes the average number of inputs per generation/compilation action. -- MOS_MIGRATED_REVID=131434027
* Fix resource leakage on interrupt in ResourceManager identified by philwo.Gravatar Janak Ramakrishnan2016-08-27
| | | | | | | On interrupt, we never released any resources that we had asked to acquire, even though those resources would eventually be acquired. -- MOS_MIGRATED_REVID=131431321
* Add propagated headers to experimental_objc_library compile action to enableGravatar Cal Peyser2016-08-27
| | | | | | | dependence on objc_import targets. -- MOS_MIGRATED_REVID=131424927
* Add two implicit outputs to the AndroidBinary rule that are produced by ↵Gravatar Googler2016-08-26
| | | | | | | | | | ProGuard: - The list of dead code in the input class files (-printusage). - The list of classes and class members matched by the various '-keep' options (-printseeds). -- MOS_MIGRATED_REVID=131414162
* Remove all references to (incorrect) BlazeDirectories.buildDataDirectory rootGravatar Kristina Chodorow2016-08-26
| | | | | | | | | The buildDataDirectory is calculated off of the incorrect execroot. More progress towards #1681. -- MOS_MIGRATED_REVID=131407798
* Make SpawnActions honor the client environmentGravatar Klaus Aehlig2016-08-26
| | | | | | | | | | | | | | | ...for the variables that supposed to be inherited from it. Note That with this patch, we take the correct variables, but do not yet track the dependency on changes to the client environment; this will happen in a follow up patches. Also add a test that demonstrates that the client environment rather than that at startup is taken. -- Change-Id: I4d33efa8eaf4f8b689c9b7f2130f71309f3343f0 Reviewed-on: https://bazel-review.googlesource.com/#/c/5392 MOS_MIGRATED_REVID=131406356
* sandbox: Allow network access for builds by default.Gravatar Philipp Wollermann2016-08-26
| | | | | | | | | | | | | This solves a performance issue that slowed down builds by about 40% at least on Linux, due to clone() with CLONE_NEWNET becoming extremely slow (>1 second) for highly parallel builds. See this thread for a discussion: https://lkml.org/lkml/2014/8/20/40 For the sake of consistency, we apply the same policy on OS X, too. If we find a better way to block network access for processes on Linux that doesn't have this performance hit, we will revisit this. RELNOTES: Sandboxed builds allow network access for builds by default. Tests will still be run without networking, unless "requires-network" is specified as a tag. -- MOS_MIGRATED_REVID=131393514
* --Gravatar Philipp Wollermann2016-08-26
| | | | MOS_MIGRATED_REVID=131383292
* Fix a tiny bug in alias handling.Gravatar Lukacs Berki2016-08-26
| | | | | -- MOS_MIGRATED_REVID=131379356
* Clean up go/be#java_plugin.generates_apiGravatar Liam Miller-Cushon2016-08-26
| | | | | -- MOS_MIGRATED_REVID=131378606
* Add client environment to ActionExecutionContextGravatar Klaus Aehlig2016-08-26
| | | | | | | | | | | As the execution of an action now also depends on the client environment, make the latter part of the ActionExecutionContext, so that enough context is provided to actually execute an action. -- Change-Id: Ida7bf407ef0c0375728faba92494bfd47dcbaeb8 Reviewed-on: https://bazel-review.googlesource.com/#/c/5391 MOS_MIGRATED_REVID=131377490
* cc_*.linkstatic: slightly reword the documentation.Gravatar Laszlo Csomor2016-08-26
| | | | | | | | Make the documentation of `cc_library.linkstatic` more visible; it was buried on the bottom of the common linkstatic attribute doc. -- MOS_MIGRATED_REVID=131376659
* Fix formatting of help text for --cache_test_results.Gravatar Kyle Lippincott2016-08-26
| | | | | -- MOS_MIGRATED_REVID=131376282
* option_processor: fix bad TMP parsing on Windows/MSYS.Gravatar Laszlo Csomor2016-08-26
| | | | | | | | See GitHub issue #1684: https://github.com/bazelbuild/bazel/issues/1684#issuecomment-242401560 -- MOS_MIGRATED_REVID=131368104
* Allow cycle detector to be injected into ParallelEvaluator, so that callers ↵Gravatar Janak Ramakrishnan2016-08-26
| | | | | | | can use different cycle detection algorithms if they wish. -- MOS_MIGRATED_REVID=131347160
* Factor out cycle detection.Gravatar Janak Ramakrishnan2016-08-26
| | | | | -- MOS_MIGRATED_REVID=131344134
* Refactor ParallelEvaluator in preparation for making it more modular with ↵Gravatar Janak Ramakrishnan2016-08-26
| | | | | | | | | | | respect to cycle checking. Reducing the size of ParallelEvaluator.java is also probably long overdue. I believe this change stands on its own, but if you don't think the third change is worth it, and this isn't worth it on its own, feel free to push back. -- MOS_MIGRATED_REVID=131340165
* GRPC server waits for termination after clean commandGravatar Michajlo Matijkiw2016-08-26
| | | | | | | | | | | There's a race between sending the finished message and shutdownNow. Use shutdown instead to let the finished message send. My IDE also auto-deleted some unnecessary casts, hope that drive by change is ok. -- MOS_MIGRATED_REVID=131328436
* Add external reference for android customtabsGravatar Simon Horlick2016-08-25
| | | | | | | -- Change-Id: If9b46439d0c0df36737030c9d78c201a87f1a4e9 Reviewed-on: https://bazel-review.googlesource.com/c/5590/ MOS_MIGRATED_REVID=131317750
* Some optimizations in Type#flatten (used under the covers by ↵Gravatar Nathan Harmata2016-08-25
| | | | | | | | | | | | | AggregatingAttributeMapper#visitLabels): -Rename Type#flatten to Type#extractLabels. -Change the return type of Type#extractLabels from Collection to Iterable. This way we don't need to create and concatenate large lists. -Add an internal-only Type#containsLabels so this way ListType and DictType can have efficient implementations of Type#extractLabels. Note that AggregatingAttributeMapper#visitLabels is called multiple times on the same in several different places during the lifetime of a non-incremental Blaze invocation (e.g. during Package loading, during transitive target visitation, etc) -- MOS_MIGRATED_REVID=131311698
* Expose PlatformType and supporting methods to Skylark.Gravatar Dmitry Shevchenko2016-08-25
| | | | | -- MOS_MIGRATED_REVID=131311014
* Expose some values needed for Apple code signing to Skylark.Gravatar Googler2016-08-25
| | | | | -- MOS_MIGRATED_REVID=131302341
* Add correct debugging information about primary output to action conflict ↵Gravatar Janak Ramakrishnan2016-08-25
| | | | | | | message (we expect inputs to be shared, but not outputs). -- MOS_MIGRATED_REVID=131299517
* Remove ArtifactFactory dependency on incorrect exec rootGravatar Kristina Chodorow2016-08-25
| | | | | | | | | | | Somewhat trickily, this changes the execRoot field from referring to [output_base]/execroot/wsname (not really the exec root) to [output_base]/execroot (actually the execroot). Progress on #1681. -- MOS_MIGRATED_REVID=131286181
* Action#discoverInputs returns an Iterable<Artifact> instead of aGravatar Cal Peyser2016-08-25
| | | | | | | Collection<Artifact> -- MOS_MIGRATED_REVID=131285541
* Add a framework for prefetching input files (in case they come from remote ↵Gravatar Philipp Wollermann2016-08-25
| | | | | | | file systems). -- MOS_MIGRATED_REVID=131280794
* Also display the object identity of the configuration in ConfiguredTargetKey ↵Gravatar Lukacs Berki2016-08-25
| | | | | | | in its #toString(). -- MOS_MIGRATED_REVID=131267480
* Add information about the key of conflicting actions to the error message in ↵Gravatar Lukacs Berki2016-08-25
| | | | | | | an effort to track down a spurious ActionConflictException. -- MOS_MIGRATED_REVID=131265803
* Rollback of commit b5ac354867c4d8deb543285e87e636504078fb69.Gravatar Michael Staib2016-08-25
| | | | | | | | | *** Reason for rollback *** Roll forward with fixes. -- MOS_MIGRATED_REVID=131224077
* Add more debugging info in case of action conflicts. This will tell us if ↵Gravatar Janak Ramakrishnan2016-08-25
| | | | | | | we're unwittingly creating duplicate ConfiguredTargetKey objects, as well as duplicate artifacts. -- MOS_MIGRATED_REVID=131220032
* Invoke source jar action as a worker.Gravatar Googler2016-08-24
| | | | | | | | RELNOTES: Invoke source jar action as a worker. -- MOS_MIGRATED_REVID=131165353
* Bazel shell scripts: fix links in licence comments.Gravatar Laszlo Csomor2016-08-24
| | | | | | | I suspect they were overwritten by an eager sed "s,//,#,g" command. -- MOS_MIGRATED_REVID=131159373
* Extend Action interface by client variablesGravatar Klaus Aehlig2016-08-24
| | | | | | | | | | | | | | | | As per our design on [Specifying environment variables](http://bazel.io/designs/2016/06/21/environment.html), actions may depend, in a controlled way, on the environment in which the Bazel client is invoked. Those environment variables are considered essential for the action, in the sense that it was to be repeated if either of them changes their value (note that other variables in client environment may well change without invalidating actions). Therefore, make the variables that need to be taken from the client environment part of the meta data for actions. -- Change-Id: I2ff6cf40b4ce8e0fea5c7e464f5f3b3e693025ac Reviewed-on: https://bazel-review.googlesource.com/#/c/5390 MOS_MIGRATED_REVID=131150211
* Give a name to the sandbox background worker threads that's more revealing ↵Gravatar Lukacs Berki2016-08-24
| | | | | | | than "pool-X-thread-Y". -- MOS_MIGRATED_REVID=131150010
* Fix nocompile tests after commit b6fd4ed25b6201eaaabb14c389c02819184ad4a6. I ↵Gravatar Googler2016-08-24
| | | | | | | | | | | | | can't say that I fully know what I am doing, but this basically reinstantiates the old behavior. Before commit b6fd4ed25b6201eaaabb14c389c02819184ad4a6, transitive modules were added in getAdditionalInputs() (by adding both topLevelHeaderModules and impliedHeaderModules). I removed that, but we still need to create the corresponding symlinks, so adding transitiveModules outside of getAdditionalInputs now. -- MOS_MIGRATED_REVID=131139735
* Optional reuse of classpath from previous compile saved in memory, as itGravatar Googler2016-08-24
| | | | | | | | | | | | | appears in the jdeps file. These are the minimum inputs needed by the JavaCompileAction to obtain the correct result when classpath order and source files remain unchanged. Uses existing --java_classpath flag to toggle between 'javabuilder' (current released behavior) and new 'experimental_blaze' (minimum classpath and Spawn inputs). Handles failure of minimal action by falling back to existing compilation behavior when needed. The new Spawn does not use a parameter file, but puts all arguments directly on the command line. -- MOS_MIGRATED_REVID=131109163
* Rollback of commit 0545788b86c8ff58f22ac62e51d096e876e7feea.Gravatar Sergio Campama2016-08-23
| | | | | | | | | | | | | *** Reason for rollback *** Breaks tachyon because of the fact that it has duplicate symbol errors but they get discarded when compiled into the same archive, which is not the case anymore as we are being more clever with dependencies.... *** Original change description *** Instead of using the smallest group as the inputs for the generation actions, use instead the intersection of all the groups in which each proto appears. This further minimizes the average number of inputs per generation/compilation action. -- MOS_MIGRATED_REVID=131099657
* Automated [] rollback of commit 846a5ab98fc26d72024890fdb79a5d3bc6a5a1ba + ↵Gravatar Nathan Harmata2016-08-23
| | | | | | | | | | | | | | | manual rollback of [] *** Reason for rollback *** Depot has been fixed / is in the process of being fixed. See the work tracked on [] *** Original change description *** Automated [] rollback of commit bb5d5efb4b50710241b5b374eb67084f4bf08278. -- MOS_MIGRATED_REVID=131095905
* Removes the generation of modulemaps per proto group, and only adds one per ↵Gravatar Sergio Campama2016-08-23
| | | | | | | | | proto target. Removes module map generation for binary targets. Filter well known protos from ProtocolBuffers2 as there may be some proto_library targets including them. -- MOS_MIGRATED_REVID=131093115
* Use helper method for collecting transitive source jars.Gravatar Googler2016-08-23
| | | | | -- MOS_MIGRATED_REVID=131083264
* Avoid copying SkyKeys into a set and then into a map when retrieving them. ↵Gravatar Janak Ramakrishnan2016-08-23
| | | | | | | | | | | | | Instead, just put them directly into a map. This avoids the memory churn and CPU cost of the set. As a result, we have to use HashMaps instead of ImmutableMap.Builders, which I hope is ok (especially since we're not keeping them around), and due to that, we have some nice nondeterminism in the returned order, which matters for some cycle-checking tests. Also, don't use a map at all when we don't need to (when building events). Note that, since we have to deduplicate at some point, this means that changing the return type of SkyFunction.Environment#getValues to not be a random-access map is probably not worth it. Changing the return type of ProcessableGraph#getBatch to not be a random access map might still be worthwhile, although it might require some funny operations. -- MOS_MIGRATED_REVID=131070418
* BuildConfiguration: prefer TreeMap over HashMap to obtain a stable orderGravatar Klaus Aehlig2016-08-23
| | | | | -- MOS_MIGRATED_REVID=131069637
* Adds a flag to generate LLVM coverage symbols.Gravatar Erik Abair2016-08-23
| | | | | | | | | This change adds a new --experimental_use_llvm_covmap flag which may be used in conjunction with the --collect_code_coverage flag to generate LLVM style coverage symbols instead of gcov. -- MOS_MIGRATED_REVID=131065609
* Prune .pcm files based on the results of include scanning.Gravatar Googler2016-08-23
| | | | | | | Basically, take the set of headers found by #include scanning and check what modules they are coming from. If a module provides at least one of the required headers, it is required as are all of its dependent modules (because of the way modules are implemented). Only use the actually required modules as compilation inputs and as flags handed in on the command line. Also move the logic to calculate top-level modules from the analysis phase into the execution phase. In the long run, we might be able to completely remove this logic now, but for now, we want to be able to quickly switch between the old and the new behavior. Thus, pruning of modules is now guarded on a feature prune_module_headers. -- MOS_MIGRATED_REVID=131058820
* More flexible LValue syntaxGravatar Vladimir Moskva2016-08-23
| | | | | -- MOS_MIGRATED_REVID=131056178
* Propagate defines through objc -> cc deps.Gravatar Cal Peyser2016-08-23
| | | | | -- MOS_MIGRATED_REVID=131055419
* Add option --action_env and make BuildConfiguration declare environment ↵Gravatar Klaus Aehlig2016-08-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | dependencies This option will allow to specify which environment variables are to be provided to the actions. Environment variables for the options will become opt-in, i.e., only environment variables explicitly specified will be provided to the actions. However, the full range of rc-files will be able to nominate options to be added; to avoid dependency on the invocation environment, absolute values can be provided as well. As the configuration now no longer completely determines the action environment extend it to also declare which environment variables are to be taken from the client environment. This will be implemented in follow-up patches. The transition plan is that the newly added option takes precedence over the environment variables added by the fragments. This is conservative, as the new option is not yet used anywhere. Then the effect of the fragments will be provided by rc-files, and finally, the setupShellEnvironment Method will be removed from the fragments all together. Also add some simple tests for static (i.e., independent of the client environment) setting of action environment variables. This is the first step towards implementing the design on [Specifying environment variables for actions](http://bazel.io/designs/2016/06/21/environment.html). -- Change-Id: I0ad36913b7d357787b4d69e341926806b3fc61bf Reviewed-on: https://bazel-review.googlesource.com/#/c/4241 MOS_MIGRATED_REVID=131044391
* Make Digest (renamed Md5Digest) a little more multi-purpose.Gravatar Shreya Bhattarai2016-08-23
| | | | | -- MOS_MIGRATED_REVID=130986194
* Avoid setting CFBundleExecutable on objc_bundle_library plistsGravatar Chris Parsons2016-08-23
| | | | | -- MOS_MIGRATED_REVID=130971534
* Move $swiftstdlibtoolwrapper to ReleaseBundlingToolsRule, the accurate place ↵Gravatar Chris Parsons2016-08-23
| | | | | | | | | for rules to inherit from which require it. This fixes a apple_watch2_extension bug in which this swift tool is unavailable (because it is undefined). -- MOS_MIGRATED_REVID=130961298