aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
...
* Add a new file path type, LocalPath.Gravatar tomlu2017-12-12
| | | | | | | | This path type is a local file path as a wrapper around a string. It works much the same as java.io.File, but without its file operations. For the most part, FilePath shouldn't add much overhead compared to using plain strings. Strings do get normalised on the way in, but no extra objects are allocated unless the path actually needs normalisation. PiperOrigin-RevId: 178798497
* Remove hyperthreading multiplier to improve performance.Gravatar dmaclach2017-12-12
| | | | | | | Tests on my local machine show that the Hyperthreading multiplier is significantly hurting our builds times. RELNOTES: Set build jobs equivalent to number of logical processors by default. Should improve build times significantly. PiperOrigin-RevId: 178795078
* Add --checkHashMismatch flag to ZipFilterAction.Gravatar jingwen2017-12-12
| | | | | | | | | | This flag is set to true by default. If `--checkHashMismatch IGNORE` is passed, ZipFilterEntryFilter will filter duplicate files based on filenames and not do the check for different content hashes. This is used for Android instrumentation tests: classes already in the target APK are removed from the instrumentation APK to prevent runtime crashes in ART. GITHUB: #903 RELNOTES: Added --checkHashMismatch flag to ZipFilterAction. Valid values are IGNORE, WARN and ERROR. --errorOnHashMismatch is deprecated, please use this flag instead. PiperOrigin-RevId: 178787292
* Fix a CCE in ConfiguredTargetCycleReporterGravatar cushon2017-12-12
| | | | PiperOrigin-RevId: 178785887
* Set configured_query_test size to 'medium' because it was timing out when ↵Gravatar juliexxia2017-12-12
| | | | | | set to 'small'. Also add to bazel build files. PiperOrigin-RevId: 178777977
* Reorganize menu in "Extending Bazel"Gravatar laurentlb2017-12-12
| | | | | RELNOTES: None. PiperOrigin-RevId: 178765624
* Correct stack map frame computation. When visiting CHOP Frame (discarding n ↵Gravatar cnsun2017-12-12
| | | | | | | | | | | local local variables), the current implementation deletes n local slots, which is wrong when the local variable to delete is of type category 2. This CL deletes local variables instead of local slots. Another change is using the Label objects to identify uninitialized values, instead of the offsets of labels, because the offsets of labels might not be computed. RELNOTES:n/a. PiperOrigin-RevId: 178762969
* When linking mostly-static Linux binaries, link libstdc++.a explicitly.Gravatar John Millikin2017-12-12
| | | | | | | | | | | | | | | | | | This allows libstdc++ to be statically linked, which is normally only possible when invoking GCC as `g++` with the `-static-libstdc++` flag. Fixes https://github.com/bazelbuild/bazel/issues/2840 See https://github.com/envoyproxy/envoy/issues/415 for additional background and context. cc @htuch (for Envoy) and @calpeyser @hlopko (who I talked to earlier about this) I'm only doing this in the Linux toolchain because MacOS doesn't do static linking of system libs anyway, and I don't know enough about Windows or FreeBSD to test on those platforms. Closes #4031. PiperOrigin-RevId: 178762357
* Add a new flag to disable glob tracking: --incompatible_disable_glob_trackingGravatar laurentlb2017-12-12
| | | | | RELNOTES: None. PiperOrigin-RevId: 178760403
* Automated rollback of commit 367f704e71f352b404df38161f4c367b9ff506c9.Gravatar hlopko2017-12-12
| | | | | | | | | | | | | | *** Reason for rollback *** Rollforward of https://github.com/bazelbuild/bazel/commit/c861c0afd9a4df283936218b9e5b33c452b07c95 after fixing fake link actions. *** Original change description *** Rollback of 178106899. RELNOTES: Linkstamping is now a separate and full-blown CppCompileAction, it's no longer a part of linking command. PiperOrigin-RevId: 178760072
* Update cc_import rule documentationGravatar Yun Peng2017-12-12
| | | | | | | | 1. Allowing .lib as interface library, which is necessary on Windows 2. Documenting cc_improt by giving specific example use cases. Change-Id: Ia50850495a1e91fe913ad69f9119753c32f9b4a7 PiperOrigin-RevId: 178754145
* [java_common.compile] Name output source jar relative to the output jar nameGravatar elenairina2017-12-12
| | | | | | | instead of the rule name. RELNOTES: None. PiperOrigin-RevId: 178747070
* Fix bash in osx_cc_wrapperGravatar hlopko2017-12-12
| | | | | RELNOTES: None. PiperOrigin-RevId: 178745230
* Use C++-only toolchain on darwin when BAZEL_USE_CPP_ONLY_TOOLCHAIN env var ↵Gravatar hlopko2017-12-12
| | | | | | | | | | | | | is set to "1" By default when xcode is installed on darwin bazel will pick a toolchain that supports both C++ and ObjC. This cl allows the user to pick C++ only toolchain even when Xcode is installed. Fixes #4231. RELNOTES: None. PiperOrigin-RevId: 178745218
* Remove an unused fieldGravatar cushon2017-12-12
| | | | PiperOrigin-RevId: 178731961
* Thread FileSystem instance through a few call sites.Gravatar tomlu2017-12-11
| | | | PiperOrigin-RevId: 178704585
* disambiguate mnemonics for $shuffle_jars and $dexsharder actionsGravatar kmb2017-12-11
| | | | | | RELNOTES: None. PiperOrigin-RevId: 178693605
* Removes skyframe/serialization's dependency on cmdline and vfs. Instead, ↵Gravatar Googler2017-12-11
| | | | | | make cmdline and vfs depend on serialization. This allows a class to have a pointer to its codec, which simplifies automatic recursive composite codecs. PiperOrigin-RevId: 178683500
* Automated rollback of commit 9321316b34767b06c3071b2cf2a4de189874fcce.Gravatar ccalvarin2017-12-11
| | | | | | | | | | | | | | | | | | | | *** Reason for rollback *** Design change, 2 boolean flags instead of 1 enum flag *** Original change description *** Add --incremental_state_retention_strategy This option is intended to replace some of the uses of --batch. It lets users specify that builds should not be incremental, and how eagerly to discard the state that is kept around for incrementality. Note that for both values discard_eargerly and keep_for_life_of_build, the build graph is kept around until the next build. This may change. Will add tests for keep_for_life_of_build in a later change, for now it will warn that that feature is experimen... *** ROLLBACK_OF=178661777 RELNOTES: None. PiperOrigin-RevId: 178681472
* Clarify documentation about outputs.Gravatar laurentlb2017-12-11
| | | | | RELNOTES: None. PiperOrigin-RevId: 178664333
* Add --incremental_state_retention_strategyGravatar ccalvarin2017-12-11
| | | | | | | | | This option is intended to replace some of the uses of --batch. It lets users specify that builds should not be incremental, and how eagerly to discard the state that is kept around for incrementality. Note that for both values discard_eargerly and keep_for_life_of_build, the build graph is kept around until the next build. This may change. Will add tests for keep_for_life_of_build in a later change, for now it will warn that that feature is experimental. RELNOTES: --[no]keep_incrementality_data is gone, replaced by the enum-valued --incremental_state_retention_strategy PiperOrigin-RevId: 178661777
* Remove hyperthreading multiplier to improve performance.Gravatar dmaclach2017-12-11
| | | | | | | | | | | | | | Tests on my local machine show that the Hyperthreading multiplier is significantly hurting our builds times. Running with 8 logical cores is 11% faster than running with 4.8 cores when doing builds on my Mac. macOS 10.12 MacBookPro 2017 (1 CPU, 4 core, 8 hyperthreaded) 1434.259 with --jobs = 5 1274.459 with --jobs = 8 I'll do some similar tests on Linux to see if it makes sense there. PiperOrigin-RevId: 178654477
* Update out-of-date comment in option_processor.Gravatar ccalvarin2017-12-11
| | | | | RELNOTES: None PiperOrigin-RevId: 178641317
* Add details on the toolchain_typeGravatar katre2017-12-11
| | | | | | Closes #4272. PiperOrigin-RevId: 178638248
* Fix the link to C++ build use cases in the C++ tutorialGravatar Googler2017-12-11
| | | | | RELNOTES: None. PiperOrigin-RevId: 178622747
* Clarify documentation about File.basenameGravatar laurentlb2017-12-11
| | | | | RELNOTES: None. PiperOrigin-RevId: 178618888
* Update turbine versionGravatar Liam Miller-Cushon2017-12-11
| | | | Change-Id: I7096349f21b5ef2d86d709d98c676d92d9ff78fb
* Update section heading.Gravatar spomorski2017-12-11
| | | | | RELNOTES: None. PiperOrigin-RevId: 178618216
* Fix: uploading artifacts of failed actions to remote cache stopped working.Gravatar olaola2017-12-11
| | | | | | | | | | | | | | | | To reproduce: run a failing test with --experimental_remote_spawn_cache or with --spawn_strategy=remote and no executor. Expected: test log is uploaded. Desired behavior: - regardless of whether a spawn is cacheable or not, its artifacts should be uploaded to the remote cache. - the spawn result should only be set if the spawn is cacheable *and* the action succeeded. - when executing remotely, the do_not_cache field should be set for non-cacheable spawns, and the remote execution engine should respect it. This CL contains multiple fixes to ensure the above behaviors, and adds a few tests, both end to end and unit tests. Important behavior change: it is no longer assumed that non-cacheable spawns should use a NO_CACHE SpawnCache! The appropriate test case was removed. Instead, an assumption was added that all implementations of SpawnCache should respect the Spawns.mayBeCached(spawn) property. Currently, only NO_CACHE and RemoteSpawnCache exist, and they (now) support it. TESTED=remote build execution backend. WANT_LGTM: philwo,buchgr RELNOTES: None PiperOrigin-RevId: 178617937
* Update Error Prone versionGravatar Liam Miller-Cushon2017-12-11
| | | | Change-Id: I28977bf62e893a8907accc17cec2532f15b68187
* Windows MSVC CROSSTOOL: Don't pass /DEBUG:FASTLINK to linker if it doesn't ↵Gravatar Yun Peng2017-12-11
| | | | | | | | | | | | | | support it This makes Bazel work nicer with VC++ version prior to VC++ 2015, but it doesn't mean we fully support them. For example, /WHOLEARCHIVE doesn't work with versions older that VC++ 2015, either. Fixed https://github.com/bazelbuild/bazel/issues/3109 Fixed https://github.com/bazelbuild/bazel/issues/4240 Change-Id: Iab7280bea241a203cb04dc9ca0a7b3bce518fb64 PiperOrigin-RevId: 178615516
* Fix the documentation formattingGravatar vladmos2017-12-11
| | | | | | | There's no lexer for `grammar` supported by Jekyll, custom styles such as `{.good}` are also not supported. PiperOrigin-RevId: 178615029
* Windows Launcher: Fix argument passingGravatar Yun Peng2017-12-11
| | | | | | | | | | Make sure the actual binary recieves exactly the same argument passed to Windows exe launcher. Fixed https://github.com/bazelbuild/bazel/issues/4001 Change-Id: I5db2d7c2f78de8865abc04a2d5b65d69685d43db PiperOrigin-RevId: 178610493
* Doc: mention that sibling must be in the same package.Gravatar laurentlb2017-12-11
| | | | | RELNOTES: None. PiperOrigin-RevId: 178609245
* Fix the documentation formattingGravatar vladmos2017-12-11
| | | | | | | There's no lexer for `grammar` supported by Jekyll, custom styles such as `{.good}` are also not supported. PiperOrigin-RevId: 178607733
* Fixed documentation navigation bar/content layout awkwardness.Gravatar Jingwen2017-12-11
| | | | | | | | | | | | | | Fixes https://github.com/bazelbuild/bazel/issues/4262 A specific browser view width range causes the navigation bar to be stacked on top of the documentation content, therefore requiring a bit of scrolling to get to it. This fix changes col-lg-* to col-md-*, which reduces the view width threshold at which the columns are restyled using `@media queries`. Tested locally on Chrome & Safari. This is also testable by going to the production site and changing the CSS classes in the inspector. Closes #4263. PiperOrigin-RevId: 178605473
* Add a toolchains= dependency to a few genrules so that the Bazel test suite ↵Gravatar lberki2017-12-11
| | | | | | | | | passes. Fixes #4268 . RELNOTES: None. PiperOrigin-RevId: 178604877
* Avoid expansion of NestedSets in MiddlemanFactory.Gravatar Benjamin Peterson2017-12-11
| | | | | | | | | | | | MiddlemanFactory wants to check if the middleman inputs set is empty or singleton. A NestedSet can answer both queries efficiently if the right APIs are used. My ultimate goal here is to avoid the expansion of runfiles artifacts nested sets until execution. Change-Id: I29a269df757ef41b1410bbb492cf24c926df6114 PiperOrigin-RevId: 178600943
* Move native deps collection code out of android_binary.Gravatar ajmichael2017-12-09
| | | | | | | Also remove a TODO that was addressed in unknown commit. RELNOTES: None PiperOrigin-RevId: 178489151
* Make private variable public for internal usage.Gravatar Googler2017-12-08
| | | | | RELNOTES: None PiperOrigin-RevId: 178448614
* Thread filesystem through codebase.Gravatar tomlu2017-12-08
| | | | | RELNOTES: None PiperOrigin-RevId: 178426166
* Add fields to record block I/O and involuntary context switch execution ↵Gravatar ruperts2017-12-08
| | | | | | | statistics to SpawnResults, and add cumulative getters for these in ActionResults. RELNOTES: None. PiperOrigin-RevId: 178426142
* Make config_feature_flag's default_value optional.Gravatar mstaib2017-12-08
| | | | | | | | | | | | | | | | | | | | | | | With this change, if the default_value is not set, but the flag has been given a value by a configuration transition, that value is used and no error is produced. If the default_value is not set and the flag has not been given a value by a configuration transition, the rule produces an error (as it did before, but now the error is different). config_feature_flags with default_values behave as they did before. (use the default value if no configured value is set, otherwise use the configured value) Also transition the Optional used in feature flags from Guava to Java 8. RELNOTES: config_feature_flag's default_value is optional. It is only an error to have a config_feature_flag with no default_value if that config_feature_flag has not been set in the configuration it is being evaluated in. PiperOrigin-RevId: 178418907
* Add --implicit_deps custom filtering to configuredtargetqueryenvironment.Gravatar juliexxia2017-12-08
| | | | | | This implementation requires adding an interned list of LabelAndConfiguration objects to each RuleConfiguredTarget ('implicit' is an attribute describer, not a dep describer so filtering needs to happen while attribute information still exists). PiperOrigin-RevId: 178411882
* Remove unused Info constructor argGravatar brandjon2017-12-08
| | | | | RELNOTES: None PiperOrigin-RevId: 178408662
* Remove redundant words in logging message.Gravatar nharmata2017-12-08
| | | | | RELNOTES: None PiperOrigin-RevId: 178407067
* Tweak the grammar of some titles in bazel documentation.Gravatar ahumesky2017-12-08
| | | | | RELNOTES: None. PiperOrigin-RevId: 178406494
* Stop filtering resources in analysis in aapt2 buildsGravatar Googler2017-12-08
| | | | | | | | aapt2 always gets the complete, unfiltered resources, and then filters them in execution. Save time by not uselessly filtering in analysis. RELNOTES: none PiperOrigin-RevId: 178397137
* Rollback of 178106899.Gravatar cpeyser2017-12-08
| | | | PiperOrigin-RevId: 178384991
* Rollforward of rollback commit 078c25c2f3cce5f407e28938ab2f3429e4609b19 with ↵Gravatar juliexxia2017-12-08
| | | | | | properly executable shell and correct test outputs. PiperOrigin-RevId: 178376681