aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
Commit message (Collapse)AuthorAge
...
* Change Bazel's LIPO model to support dynamic configurations.Gravatar gregce2017-04-19
| | | | | | | | | | The key change is to eliminate the need to transition from the data to the target configuration by relying on out-of-band configuration state. Specifically, the old model drops LIPO options from the data configuration. In the cases when we have to switch back (i.e. TARGET_CONFIG_FOR_LIPO), those options have to get re-injected somehow. Static configurations achieve this with the global configuration transitions table. But dynamic configs have no comparable source (and they consciously eschew global state). This cl changes the model to *keep* LIPO settings in the data config, then use a new "enableOrDisable" flag to determine whether or not to actually use them. With this model, the data -> target transition is now as simple as toggling that flag. This change doesn't actually add dynamic config LIPO support. It's doing enough as it is, and we need to make sure it doesn't break existing LIPO semantics. Dynamic support will come as a followup. PiperOrigin-RevId: 153504240
* Add warning to git_repositoryGravatar kchodorow2017-04-19
| | | | | | #2147 PiperOrigin-RevId: 153494286
* Make Bazel android_library exports_manifest default to True.Gravatar ajmichael2017-04-19
| | | | | | | Fixes https://github.com/bazelbuild/bazel/issues/2743. RELNOTES: android_library exports_manifest now defaults to True. PiperOrigin-RevId: 153493900
* Turn on --experimental_j2objc_header_map by default.Gravatar rduan2017-04-19
| | | | | RELNOTES: None. PiperOrigin-RevId: 153489730
* Fix RemoteSpawnStrategy to upload stdout/stderr to the remote cacheGravatar ulfjack2017-04-19
| | | | | | | | | | This is already fixed in the CachedLocalSpawnRunner, with tests there, which will replace RemoteSpawnStrategy in the near future. For now, I'd like to get this in in time for 0.5.0 to get test caching working. Fixes #1413. PiperOrigin-RevId: 153486592
* Skip params file handling for resource jar actions with short command linesGravatar cushon2017-04-19
| | | | PiperOrigin-RevId: 153485708
* Fix crash on graph cycle in configuration loadingGravatar gregce2017-04-19
| | | | PiperOrigin-RevId: 153473961
* Remove references to STRING_DICT_UNARYGravatar michajlo2017-04-19
| | | | | | | This type is no longer used and has removed from bazel. RELNOTES: None PiperOrigin-RevId: 153471066
* Skip params file handling for genjar actionsGravatar cushon2017-04-19
| | | | | | All genjar actions have very short command lines. PiperOrigin-RevId: 153468708
* Remove some debugging code from bazel_coverage_test.sh .Gravatar lberki2017-04-19
| | | | | | | They were added in https://github.com/bazelbuild/bazel/commit/3a5d3db6436bbaf5351da9ea9c19a41ae7c95ca9 by Yours Truly. RELNOTES: None. PiperOrigin-RevId: 153468590
* Revert "Expect the python binary on path to be a symlink "Gravatar Klaus Aehlig2017-04-19
| | | | | | | | | | | | | | This reverts commit 1cd2096284959ead26687d1d58b695d2abffb8e2. That commit tried to find a more suitable python binary by following symlinks. That, however, is not necessary, as our follow-up infrastructure can call symbolic links and our tests os.path.isfile(path) and os.access(path, os.X_OK) follow symbolic links as well. Fixes #2836. Change-Id: If37589622d141265577eb3872f68342ae1c263dc PiperOrigin-RevId: 153461118
* Re-enable the Java coverage tests.Gravatar lberki2017-04-18
| | | | | | | | | It has been disabled in https://github.com/bazelbuild/bazel/commit/bce889840f91f14c05418d960984bcf1a5f59411 and in https://github.com/bazelbuild/bazel/commit/21fb8cac60c36cb527d6131ab0092bcdf138d99a and then was not re-enabled. Also update src/java_tools/junitrunner/java/com/google/testing/coverage/BUILD to which I accidentally submitted a change directly to our OSS repository. RELNOTES: None. PiperOrigin-RevId: 153460778
* Automated g4 rollback of commit 501b62716af12ba42c019bd9f231468b3c144757.Gravatar aehlig2017-04-18
| | | | | | | | | | | | | | | *** Reason for rollback *** Broke //src/test/shell/bazel:cc_inc_library_test on darwin see http://ci.bazel.io/job/bazel-tests/BAZEL_VERSION=HEAD,PLATFORM_NAME=darwin-x86_64/704/console *** Original change description *** Basic open-source crosstool to support targetting apple platform types. RELNOTES: None. PiperOrigin-RevId: 153460334
* Write stdout and stderr to the remote cacheGravatar ulfjack2017-04-18
| | | | | | | | | | Only write a cache entry when the spawn executed successfully, and with a 0 exit code. In the test, we only check that uploadFileContents is called exactly twice. Progress on #1413. PiperOrigin-RevId: 153458240
* Eliminate some middleman methodsGravatar brandjon2017-04-18
| | | | | | | | | Reduce spaghetti code by exposing the parser's OptionsData as package-private, rather than exposing individual methods ad hoc between OptionsParser and OptionsParserImpl. Also change some calls from static constructors to diamond syntax. RELNOTES: None PiperOrigin-RevId: 153457442
* Implement logging in LocalSpawnRunnerGravatar ulfjack2017-04-18
| | | | | | | | This is a prerequisite for Google to use it; there's no consistent logging strategy yet, but Google internally requires logging, and it needs to be somewhat backwards compatible. PiperOrigin-RevId: 153454160
* Reword commentGravatar laurentlb2017-04-18
| | | | | RELNOTES: None. PiperOrigin-RevId: 153449924
* Generating PDB files on WindowsGravatar Yun Peng2017-04-18
| | | | | | | | | | | | | | | | | | | | | | | | | | 1. Add /Z7 as compiler flag in CROSSTOOL, this causes full debugging infomation built into object files, no PDB file is generated. 2. Add /DEBUG as linker flag so that a PDB file will be generated for executable or dll. * /DEBUG:FULL for dbg mode. the full PDB can be used to debug the executable when no other build products are available, such as when the executable is deployed. * /DEBUG:FASTLINK for fastbuild mode. object files are still needed when debugging the executable, but linking speed can be two to four times faster that full PDB generation. * No option is added for opt mode. More detailed info: https://msdn.microsoft.com/en-us/library/xe4t6fc1.aspx 3. Add an empty feature in MSVC CROSSTOOL to tell Bazel we need PDB file 4. Add PDB file artifact in an output named pdb_file of cc_binary, then you can build the pdb file by bazel build //foo/bar:bin --output_groups=pdb_file 5. Add test for PDB file generation Change-Id: Ia5096470187ebca72f2c804f32d5b723f40c0b85 PiperOrigin-RevId: 153449059
* Simplify LocalSpawnRunnerGravatar ulfjack2017-04-18
| | | | PiperOrigin-RevId: 153444516
* Vendor jarjar instead of using a binary version of it.Gravatar Lukacs T. Berki2017-04-18
| | | | | | | | | | | | | | | It appears that jarjar is not actually used except for renaming classes in the coverage collecting Java test runner as verified by `find . -name BUILD | xargs grep jarjar` Yak shaving for #2820. This is necessary because the current version of jarjar does not work with Java 8 classes because it embeds a version of ASM that doesn't support that yet. Change-Id: I6ac59b84bbbc1e85fe8e7f4f4876b98fc6129df0
* Partial rollback of unknown commitGravatar cushon2017-04-18
| | | | PiperOrigin-RevId: 153403092
* Split out option usage restriction from option category.Gravatar ccalvarin2017-04-18
| | | | | | | | | These are two different concepts. Do not remove category overload compatibility in this CL, to keep this change limited to converting the current uses of category. With some flyby formatting fixes on affected OptionsBases. RELNOTES: None. PiperOrigin-RevId: 153390002
* Add ordering semantics for cached options dataGravatar brandjon2017-04-18
| | | | | | | This lets us easily get all options classes of a parser, or all fields of those options classes, in a deterministic way. RELNOTES: None PiperOrigin-RevId: 153376699
* Improve DottedVersion validation for minimum_os attribute, and fix error ↵Gravatar cparsons2017-04-18
| | | | | | | message. RELNOTES: None. PiperOrigin-RevId: 153372617
* Remove the overloading of option category to cover documentation level.Gravatar ccalvarin2017-04-18
| | | | | | | | This prevents having to parse the category, and allows the category to potentially be used in the future for information about all options, included undocumented, hidden, or internal options. Also rename DocumentationLevel to OptionUsageRestrictions, since INTERNAL was not really documentation related. PiperOrigin-RevId: 153367769
* Add /sdk/extras/m2repository the list of Android SDK embedded Maven ↵Gravatar ajmichael2017-04-18
| | | | | | | | | repositories. Fixes https://github.com/bazelbuild/bazel/issues/2830 RELNOTES: None PiperOrigin-RevId: 153367521
* Automated g4 rollback of commit e1d692e486a2f838c3c894fd9de693fabd6685ed.Gravatar schmitt2017-04-18
| | | | | | | | | | | | | | | | | | *** Reason for rollback *** broken tests *** Original change description *** Init absent action configs for CppCompile actions So far only link actions were initialized in CppLinkActionConfigs. This cl changes this class to also initialize CppCompile actions. This is needed for our ongoing work removing hard-coded flags from Bazel and moving them into Crosstool. RELNOTES: None. PiperOrigin-RevId: 153366563
* Basic open-source crosstool to support targetting apple platform types.Gravatar cparsons2017-04-18
| | | | | RELNOTES: None. PiperOrigin-RevId: 153360877
* Expose Bazel's Android data binding support to users.Gravatar gregce2017-04-18
| | | | | | | | | | | | The logic is already in Bazel but wasn't available to build rules. This change makes it available, but still requires data binding's {build|run}time libraries to be checked into appropriate depot spots for everything to work. Followup changes will make those libraries easily available. Issue: #2694 PiperOrigin-RevId: 153359861
* Automated g4 rollback of commit e7c730ba64d1c34ac7049f4165a33dc1329d0019.Gravatar jfield2017-04-18
| | | | | | | | | | | | | | | *** Reason for rollback *** breaks tests *** Original change description *** Extract --sysroot flag from bazel and move it into crosstool This is an encore of https://github.com/bazelbuild/bazel/commit/6127358c1799d8d83cebbd499edac89f869df41b . RELNOTES: None. PiperOrigin-RevId: 153351147
* Report an error for missing java_library.exported_pluginsGravatar cushon2017-04-18
| | | | PiperOrigin-RevId: 153349925
* Refactor options tests into a new fileGravatar brandjon2017-04-18
| | | | | | | | | | | OptionsParserTest is kind of massive. This CL splits off tests that only concern IsolatedOptionsData. For example, tests that deal with malformed option specifications, but not string parsing, would go here. A followup CL will add tests of IsolatedOptionsData's accessor methods. Also added a unit test for the warning added by https://github.com/bazelbuild/bazel/commit/e11775c2394fc48ac7fe5b632b47ae952dd552b4. RELNOTES: None PiperOrigin-RevId: 153346363
* Automated g4 rollback of commit 045104899738594d85f9ab9b0b9ccbde320b8055.Gravatar jfield2017-04-18
| | | | | | | | | | | | | *** Reason for rollback *** Breaks internal tests that use nonstandard crosstools *** Original change description *** Make C++ archiving use action_configs instead of hardcoded flags RELNOTES: Use action_config in crosstool for static library archiving, remove ar_flag. PiperOrigin-RevId: 153344597
* Fix an expansion flag issue where it expands to a repeatable flag.Gravatar ccalvarin2017-04-18
| | | | | | | | There's no reason an expansion flag should not expand to multiple values for a repeatable flag (a flag with allowMultiple set to true.) If this expansion flag is set in a SetValue policy, group its repeatable subflags into a single SetValue per subflag. For an overridable SetValue policy on an expansion, any repeatable flag that it expands to should append its value, and not override the user's original values. PiperOrigin-RevId: 153233784
* Correct ClassRemapperWithBugFix to avoid stack map frame corruption.Gravatar cnsun2017-04-18
| | | | | RELNOTES: n/a PiperOrigin-RevId: 153230139
* Expose the native libs of the android_binary rule to skylark.Gravatar Googler2017-04-18
| | | | | RELNOTES: none PiperOrigin-RevId: 153223511
* Canonicalize-flags can now show the canonical invocation policy.Gravatar ccalvarin2017-04-18
| | | | | | | | | Canonicalize-flags will provide the expanded and filtered version of the policy passed to it as a command argument if also passed the command arg --canonicalize_policy. This is the version that would be actually applied to the command line in another command. In this mode, it will not also print out the interpretation of the flags passed after "--", so to get both outputs, it will have to be run twice. This was to keep the output clean and easy to parse. RELNOTES: new option for bazel canonicalize-flags, --canonicalize_policy PiperOrigin-RevId: 153215518
* Add bitcode support to objc crosstool linking.Gravatar cpeyser2017-04-18
| | | | PiperOrigin-RevId: 153202296
* Teach the RClassGenerator to merge all library symbols and reconcile ids.Gravatar corysmith2017-04-18
| | | | | | | Refactoring: Wrapped the SymbolLoader and SymbolWriter in a single class. RELNOTES: None PiperOrigin-RevId: 153194543
* Enable params files for resource jar actionsGravatar cushon2017-04-18
| | | | | | | to avoid exceeding the command line length limit for libraries with very large numbers of resources. PiperOrigin-RevId: 153191465
* Remove the use_objc_header rule warning. Add a generic migration warning to ↵Gravatar kaipi2017-04-18
| | | | | | objc_proto_library without the portable_proto_filters attribute. PiperOrigin-RevId: 153189663
* Roll forward of ↵Gravatar cushon2017-04-18
| | | | | | | | https://github.com/bazelbuild/bazel/commit/4a303e2cd840810b95cbc793e38bdca48e6d9556 Only unescape @@-quoted args once PiperOrigin-RevId: 153189611
* Migrate UnixGlob to Path#statIfFound() instead of #statNullable(). The ↵Gravatar felly2017-04-18
| | | | | | | | | latter swallows all filesystem failures, and does not disambiguate missing files from filesystem problems. The syscall cache now tracks IOExceptions if they are present, just as it does with readdir(). RELNOTES: None PiperOrigin-RevId: 153185433
* In android_library targets, R.class files should not be runtime dependenciesGravatar Googler2017-04-18
| | | | | | | | | | | | | | | | | | android_binary targets have their own R.java files (built from merging dependencies and any resources that belong directly to the target). As such, they don't need inherited R.java files at runtime. Taking these out makes for smaller APKs and less inheritance from the target's dependencies. Add a flag to control this behavior. Have it default to continue to include R.class files as runtime dependencies so we can control rollout of this behavior. Add tests of android_binary to ensure the JAR is filtered out as appropriate, and of android_robolectrictest to ensure that those tests still have access to the JARs. RELNOTES: none PiperOrigin-RevId: 153177074
* Fix `in` operator for targetsGravatar vladmos2017-04-18
| | | | | | `DefaultInfo in target` should always return `true` for any target. PiperOrigin-RevId: 153166669
* Introduce linkmap support for --experimental_objc_crosstool=allGravatar cpeyser2017-04-18
| | | | PiperOrigin-RevId: 153161442
* Revert "protobuf: Update protobuf to @laszlocsomor's master at commit 421d909."Gravatar Jakob Buchgraber2017-04-14
| | | | | | | This reverts commit 5235d06159ba6fee412bee261ea7867d061252b0. Unfortunately, we noticed several build errors / test failures internally due this change.
* protobuf: Update protobuf to @laszlocsomor's master at commit 421d909.Gravatar Jakob Buchgraber2017-04-14
| | | | | | | | | | | | Update protobuf to @laszlocsomor's fork of protobuf. This is essentially the development version of protobuf 3.2.0 and windows specific fixes from laszlo. Those fixes will be merged into protobuf soon: https://github.com/google/protobuf/pull/2969). For instructions on how to update protobuf for bazel see README.bazel.md. Change-Id: Ic1daafe30270cb6bcc6231e6c94fb670af0475e7
* Partition ObjC header scanning actions to better handle large targets.Gravatar Googler2017-04-14
| | | | PiperOrigin-RevId: 153140874
* Automated g4 rollback of commit b0ac3b41700cdc575c36ff2de191bc9ba2b6abf0.Gravatar cushon2017-04-14
| | | | | | | | | | | | | | | | | | *** Reason for rollback *** kokoro failures were not flakes :( *** Original change description *** Fix escaping of '@' in javabuilder command lines "@" is used to denote params files, so when it appears in labels it is escaped as "@@". The second "@" should be removed during flag parsing to avoid e.g. having it show up in strict deps errors. See bazelbuild/buildtools#83 PiperOrigin-RevId: 153127997