aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main
Commit message (Collapse)AuthorAge
...
* Augment comments about blaze exit code classifications.Gravatar Googler2018-05-14
| | | | | RELNOTES: None PiperOrigin-RevId: 196553226
* Pull caching up to BuildConfigurationValue$Key$Codec. Almost all ↵Gravatar janakr2018-05-14
| | | | | | | | BuildOptions$DiffForReconstruction serializations are reached in this way, so we get better efficiency. Also, it was already a custom codec, so less new handrolling. Also use serialization framework for FragmentClassSet, instead of doing serialization directly. Default FragmentClassSet should be a constant, so it will serialize down to a byte or three. Future changes can make all the classes constants as well, if we're getting misses on them. PiperOrigin-RevId: 196546279
* Permit serialization arising from ErrorInfo#encode to wait on a future. ThisGravatar cpeyser2018-05-14
| | | | | | | | prevents Bazel from crashing on an ErrorInfo with an exception from ActionExecutionFunction, which can contain an action, and therefore contain a NestedSet. PiperOrigin-RevId: 196533301
* Only use fingerprint and checksum for equality and hashCode in ↵Gravatar janakr2018-05-14
| | | | | | BuildOptions$OptionsDiffForReconstruction. The fingerprint uniquely identifies the "baseline" BuildOptions object and the checksum uniquely identifies the "overlay", so we don't need to incorporate the rest of the data. PiperOrigin-RevId: 196532013
* Fix broken HTMLGravatar laurentlb2018-05-14
| | | | | RELNOTES: None. PiperOrigin-RevId: 196527806
* Don't default to --release 9 when running on a JDK 9 host_javabaseGravatar cushon2018-05-14
| | | | PiperOrigin-RevId: 196518906
* Extract logic for dealing with CROSSTOOL values and build variables into ↵Gravatar rosica2018-05-14
| | | | | | | separate class RELNOTES: None. PiperOrigin-RevId: 196517537
* C++: Renames CcRunfilesInfo to CcRunfilesGravatar plf2018-05-14
| | | | | | | Since it's not a provider, it doesn't need the Info suffix anymore. RELNOTES:none PiperOrigin-RevId: 196505329
* C++: Renames CcCompilationContextInfo to CcCompilationContextGravatar plf2018-05-14
| | | | | | | Since it's not a provider, it doesn't need the Info suffix anymore. RELNOTES:none PiperOrigin-RevId: 196498526
* Add a flag to disable the $(ANDROID_CPU) Make variable.Gravatar lberki2018-05-14
| | | | | RELNOTES: None. PiperOrigin-RevId: 196492364
* Refactor TestAttempt event posting codeGravatar ulfjack2018-05-14
| | | | | | | | For flaky tests, Bazel may have cached information about multiple test attempts. In that case, we might want to post all of them on a subsequent cache hit, rather than posting only the passing attempt. We currently subclass TestResult inside Google, which overrides the new getCachedTestAttempts method. PiperOrigin-RevId: 196491575
* Expose cc_common.create_compile_build_variablesGravatar hlopko2018-05-14
| | | | | | | | | | | This cl enabled skylark rules to create build variables used for C++ compile actions (in a limited form, e.g. build variables for modules are not exposed etc). Working towards #4571. RELNOTES: None PiperOrigin-RevId: 196491567
* Add CcHostToolchainAliasRule.Gravatar dbabkin2018-05-14
| | | | | RELNOTES:none PiperOrigin-RevId: 196477775
* Windows, Java launcher: Support jar files under different drivesGravatar Yun Peng2018-05-14
| | | | | | | | | Create junctions to jar's directory when java launcher and its jar are under different drives Fixed https://github.com/bazelbuild/bazel/issues/5135 Change-Id: I21c5b28f5f36c1fe234f8b781fe40d526db846cc PiperOrigin-RevId: 196477704
* Add a fast path for validating include directives. Most -isystem directives areGravatar Googler2018-05-14
| | | | | | | | | actually added for cc_library's include-attribute. For these, the same path is present on the command line, but also ignored. For N of those directives, we currently do O(N^2) prefix checks, which is unnecessarily expensive. RELNOTES: None. PiperOrigin-RevId: 196477307
* Use the local JDK as the default target javabaseGravatar cushon2018-05-14
| | | | | | and continue to use the embedded JDK as the default host_javabase. PiperOrigin-RevId: 196471714
* Add an IdentityHashMap to the BuildOptions.OptionsDiffForReconstruction codec.Gravatar mjhalupka2018-05-11
| | | | PiperOrigin-RevId: 196310244
* ActionFS cleanupGravatar shahan2018-05-11
| | | | PiperOrigin-RevId: 196290095
* Migrate SkylarkRuleContext (and a few dependencies) to the build APIGravatar cparsons2018-05-11
| | | | | RELNOTES: None. PiperOrigin-RevId: 196287081
* Only make AndroidDataConverters staticallyGravatar asteinb2018-05-11
| | | | | | | Apparently, making one for each target creates memory issues. RELNOTES: none PiperOrigin-RevId: 196275764
* Wrap a comment line around 80 chars.Gravatar Googler2018-05-11
| | | | | RELNOTES: None. PiperOrigin-RevId: 196272337
* Allow java_toolchain.header_compiler to be an arbitrary executableGravatar cushon2018-05-11
| | | | | RELNOTES: Allow java_toolchain.header_compiler to be an arbitrary executable PiperOrigin-RevId: 196270007
* Records profiling information for ActionFS staging and updates.Gravatar shahan2018-05-11
| | | | PiperOrigin-RevId: 196266567
* Set Locale to English when uppercasing strings to match EnumsGravatar Jingwen Chen2018-05-11
| | | | | | | | | | | | | | | | | Fixes https://github.com/bazelbuild/bazel/issues/5157 If a user's default system locale is not `en`, `en_US` or `en_UK`, there may be a chance that `String#toUpperCase` will result in a string that does not exist in the Enum declaration. This is the case in #5157. To fix this, it's either 1) setting the Locale in the individual `toUpperCase` calls or 2) set Locale to English by default from `Bazel.java`. I chose the first because it seemed less intrusive, but I'm open to suggestions. Closes #5184. PiperOrigin-RevId: 196261078
* Remove fully static linking part of ctx.fragments.cpp.fully_static_link_optionsGravatar hlopko2018-05-11
| | | | | | | | | | | Since we always pass true as argument (meaning it's for dynamic library), we don't need the part for executable. And we don't want more users of this method, therefore removing. This is encore of https://github.com/bazelbuild/bazel/commit/ecb30676bdd7f1783afb3886e57caa9d6b1b9aee RELNOTES: None. PiperOrigin-RevId: 196241212
* Fix spelling error in javadoc.Gravatar dannark2018-05-11
| | | | | RELNOTES: None PiperOrigin-RevId: 196232710
* Fix filler error messageGravatar asteinb2018-05-10
| | | | | | | I should have never submitted this as-is. Whoops! RELNOTES: none PiperOrigin-RevId: 196160496
* Expose aar_import data processing methods to SkylarkGravatar asteinb2018-05-10
| | | | | | | | Because of the special nature of aar_import, I don't think it makes much sense to split up the different parts - you always get everything out of the AAR. RELNOTES: none PiperOrigin-RevId: 196152640
* Expose android_binary data processing methods to SkylarkGravatar asteinb2018-05-10
| | | | | | | | | | | | Create an AndroidBinaryDataInfo to wrap binary-specific artifacts that shouldn't be exposed for libraries. This is currently only the final resource APK. Continue to extract attribute references from lower-level methods and bubble them up to the top level. RELNOTES: none PiperOrigin-RevId: 196143940
* Create top-level android data providerGravatar asteinb2018-05-10
| | | | | | | | | | | | | This provider wraps the other android data providers, as well as artifacts that should only be made available for top-level Android targets. This provider is required for some output (such as final data APK) to be exposed to Skylark, and also makes it easy to pass information from android_binary data processing to postprocessing actions, most notably resource shrinking (next reviews). RELNOTES: none PiperOrigin-RevId: 196135042
* Codec for FluentIterable - needed to serialize results of Iterables.concat.Gravatar shahan2018-05-10
| | | | PiperOrigin-RevId: 196127040
* Expose Skylark method to process android_local_test dataGravatar asteinb2018-05-09
| | | | | RELNOTES: none PiperOrigin-RevId: 196024071
* Expose process_test_data (for android_test) to SkylarkGravatar asteinb2018-05-09
| | | | | | | | Explicitly work with rele attributes at (or closer to) the top level rather than deep in the code. RELNOTES: none PiperOrigin-RevId: 196004542
* Properly rename manifestsGravatar asteinb2018-05-09
| | | | | | | | | | | | | Make AndroidSkylarkData abstract and add a getAndroidSemantics() method The Skylark stamp_manifest rule should properly use AndroidSemantics to rename the manifest as well, in keeping with the android_library rule. AndroidLocalTest should do the same manifest renaming regardless of which AndroidSemantics it is run under. Have it use a seperate method to do so. RELNOTES: none PiperOrigin-RevId: 195992300
* Expose single method for doing all android_library data processing in SkylarkGravatar asteinb2018-05-09
| | | | | RELNOTES: none PiperOrigin-RevId: 195977060
* Adds an action-scoped filesystem.Gravatar shahan2018-05-09
| | | | PiperOrigin-RevId: 195973862
* Add graceful failure for unsupported formatters in genqueryGravatar juliexxia2018-05-09
| | | | PiperOrigin-RevId: 195971237
* Get resource processing settings from method params instead of rule attrsGravatar asteinb2018-05-09
| | | | | | | | | | | | | | | | In a previous review, I left some setting controlled only by rule attributes. Now actually specify them in Skylark method params. Data binding and should mimic behavior in existing android_* rules. For library, aapt_version cannot be passed in; we use the flag value. I left the SDK attribute intact as it's private. People should be setting defaults in rules but otherwise overriding SDK with flags, not parameters. This mimics existing behavior. RELNOTES: none PiperOrigin-RevId: 195970351
* Expose R.class as a JavaInfoGravatar asteinb2018-05-08
| | | | | | | | | | | | | | | | | | | | | The R.class file, when available, is used in Java compilation. So it should be exposed in its own provider as an output of resource processing. The R.class file is marked as Neverlink and compiletime-only to ensure it doesn't get inherited. Change resource processing to return a SkylarkDict of providers. That way, callers can easily get the provider they want, or use values() to get all the providers. Stop exposing R.class in AndroidResourcesInfo since we're exposing it in an easier-to-consume way now. Will update other methods that return multiple providers to do the same in future reviews. RELNOTES: none PiperOrigin-RevId: 195871587
* Remove cppConfiguration from LinkBuildVariablesGravatar hlopko2018-05-08
| | | | | | | | | This is to simplify the API that will eventually be exposed to Skylark. Working towards #4571. RELNOTES: None. PiperOrigin-RevId: 195785588
* Rename LinkStaticness to LinkingMode and unify with the other LinkingMode.Gravatar hlopko2018-05-07
| | | | | RELNOTES: None. PiperOrigin-RevId: 195777400
* Expose Library Aar creation and provider to SkylarkGravatar asteinb2018-05-07
| | | | | RELNOTES: none PiperOrigin-RevId: 195719735
* Narrow synchronized section of ArtifactFactory#getArtifact to avoid ↵Gravatar janakr2018-05-07
| | | | | | contention and use a striped lock. PiperOrigin-RevId: 195717688
* Make Aar provider into NativeInfoGravatar asteinb2018-05-07
| | | | | | | This provider needs to be the new type so we can expose Aar information in Skylark RELNOTES: none PiperOrigin-RevId: 195710606
* Do not expose ResourceContainer to SkylarkGravatar asteinb2018-05-07
| | | | | | | | | | | | | There are a bunch of reasons this shouldn't be exposed: - ResourceContainer is a glob of several unrelated bits of functionality - We are working on getting rid of ResourceContainer in favor of things like AndroidResources - We should pass information between targets using providers, not internal state like ResourceContainer RELNOTES: none PiperOrigin-RevId: 195704044
* Stop collapsing NestedSet of deps in RClassGeneratorGravatar asteinb2018-05-07
| | | | | | | This collapsing should be avoided when possible, and punted on until execution when needed. RELNOTES: none PiperOrigin-RevId: 195695290
* Properly expose R.class file to SkylarkGravatar asteinb2018-05-07
| | | | | | | | | | | | | Add the R.class to the provider, but keep it nullable in case no resource/manifest attributes were specified, in which case the R.class would not be generated. A previous change tried to actually generate it in that case, but even though I think that's probably the right strategy for the long term, it's substantially different behavior and out of scope of this migration. RELNOTES: none PiperOrigin-RevId: 195682271
* Rename Staticness to LinkerOrArchiver.Gravatar hlopko2018-05-07
| | | | | | | | | Staticness is confusing, I always have to investigate which is Staticness and which is LinkStaticness, and even in isolation staticness is not a great name. I believe LinkerOrArchiver is a better name :) RELNOTES: None. PiperOrigin-RevId: 195674810
* Start migration of cpp build API classes to skylarkbuildapiGravatar cparsons2018-05-07
| | | | | RELNOTES: None. PiperOrigin-RevId: 195664306
* bes: add --bes_results_urlGravatar Jakob Buchgraber2018-05-07
| | | | | | | Closes #4628 Closes #5155. PiperOrigin-RevId: 195662967