| Commit message (Collapse) | Author | Age |
... | |
|
|
|
|
|
|
|
| |
A convenience used to compose RunfilesSuppliers without having to
deconstruct them.
--
MOS_MIGRATED_REVID=95854609
|
|
|
|
|
|
|
|
|
|
|
|
| |
While evaluating a package value, whether the package should be in
error was checked several times for different kinds of symlink cycle
deps: subincluded target's package, subincluded target, and glob.
But each check overrode the result of previous checks. Now, the
error state is a big OR of the results of each cycle check, not just
the last one (which happened to be for globs).
--
MOS_MIGRATED_REVID=95854169
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=95854132
|
|
|
|
|
|
|
|
|
| |
ImmutableMap.Builder enforces one value per key, and throws an exception
if there are duplicates. So use a LinkedHashMap to construct the map and
then immutabilize it.
--
MOS_MIGRATED_REVID=95853020
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=95852975
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=95852647
|
|
|
|
|
|
|
|
|
| |
This uses CppModuleMap and CppModuleMapAction to generate clang module maps for the target and its transitive dependencies. clang enforces private header usage through these maps. Right now module maps are interpreted but modules aren't enabled.
RELNOTES: Allow private header files in the srcs attribute of objc_* rules.
--
MOS_MIGRATED_REVID=95844137
|
|
|
|
|
|
|
|
|
|
|
| |
This creates a JackAspect which is calculated for Java dependencies of
Android libraries and binaries and their Java dependencies.
Note that this only applies to java_library and java_import at this time
because they are the only ones exporting the necessary provider.
--
MOS_MIGRATED_REVID=95844097
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=95843033
|
|
|
|
|
|
|
|
|
|
|
| |
ParameterFileWriteAction.
Performance changes:
- output files of actions require an extra system call
+ incremental builds no longer require re-writing the .param file (typically)
--
MOS_MIGRATED_REVID=95842983
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=95833265
|
|
|
|
|
|
|
|
|
| |
Add timestamp to volatile build status.
--
Change-Id: I940b2e8b924fcfba80406e0437913843fccde38f
Reviewed-on: https://bazel-review.git.corp.google.com/#/c/1511/1
MOS_MIGRATED_REVID=95832082
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
classes.
This makes the code cleaner because a lot of places never read the file and thus never needed a Path in the first place. I got to this change in a bit convoluted way:
- I wanted the default tools in Android rules to point to //external:
- I wanted to make sure that that doesn't cause an error is no Android rules are built, thus I had to add some binding for them in the default WORKSPACE file
- I wanted the Android rules not to depend on Bazel core with an eye towards eventually moving them to a separate jar / Skylark code
- The default WORKSPACE file is currently composed from files extracted by the Bazel launcher which would make the Android rules depend on a very core mechanism
- I couldn't simply pass in jdk.WORKSPACE as a String because Location, ParserInputSource and a bunch of other things needed a Path, which a simple string doesn't have.
Thus, this change.
--
MOS_MIGRATED_REVID=95828839
|
|
|
|
|
|
|
|
|
| |
running system.
Tested on OS X 10.10, Debian 8.1 (x86_64) and Debian 8.1 (i686).
--
MOS_MIGRATED_REVID=95819163
|
|
|
|
|
|
|
| |
--
Change-Id: I0f3e697fa435026326615da787eeee75cb9dfdfe
Reviewed-on: https://bazel-review.googlesource.com/#/c/1512/1
MOS_MIGRATED_REVID=95816402
|
|
|
|
|
|
|
|
|
|
|
|
| |
BazelRuleClassProvider:
- Add stub targets to tools/android/BUILD
- Make Constants.ANDROID_DEFAULT_SDK non-constant so that the classfile can be replaced in the .jar
- Make AndroidTools complain if --android_sdk does not point to an android_sdk rule.
- Make the default visibility in the BUILD file generated by android_sdk_repository public
--
MOS_MIGRATED_REVID=95816158
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This seems to be a win as it avoids re-initialing the fields that have
a default constructor (non-POD), besides being the best and idiomatic
practice.
More details in http://stackoverflow.com/a/9903927
--
Change-Id: I6c184e8a53b385756938084ec60aebc8184243a0
Reviewed-on: https://bazel-review.googlesource.com/#/c/1513/3
MOS_MIGRATED_REVID=95815524
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=95783111
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=95782228
|
|
|
|
|
|
|
|
|
| |
This avoids using a RuntimeException (IllegalArgumentException)
to circumvent declaration issues, which when we were catching it too well
was hiding actual issues of RuntimeException.
--
MOS_MIGRATED_REVID=95767534
|
|
|
|
|
|
|
|
|
| |
Before this change, constraints considered implicit deps anything from an attribute beginning with "$" or ":" (e.g. attributes that are completely hidden from BUILD files). Query agrees with this, but it also counts default values for *normal* attributes that aren't explicitly set in rules.
By syncing the two up, depot migrations can figure out which rules need to be constraint-annotated by simply running a bazel query --no_host_deps --no_implicit_deps.
--
MOS_MIGRATED_REVID=95766777
|
|
|
|
|
|
|
| |
InMemoryNodeEntry#markDirty implementation.
--
MOS_MIGRATED_REVID=95758779
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Now [new_]http_archive can be used for executables as well as "default
permission" (644) files.
This also gets rid of the Apache Commons Compress dependency entirely, which is
nice. Fixing this also exposed some bugs in how archives were being decompressed
(the same archive was being decompressed multiple times), which I also fixed by
making the decompressors SkyFunctions.
Fixes #238.
--
MOS_MIGRATED_REVID=95747810
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=95743586
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=95738396
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=95734020
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=95728075
|
|
|
|
|
|
|
|
|
| |
- Make it possible to select the Python2/Python3 binaries to be used on the command line. Ideally, we'd also support hermetic Python runtimes, but no one wants them at the moment, so let's not do speculative work.
- Make the Python stub script compatible with Python3.
- Use the Python3 binary for py_binaries that are built for it.
--
MOS_MIGRATED_REVID=95722749
|
|
|
|
|
|
|
|
|
|
| |
Skylark rules now depends completely on the external repository
to access the JDK tooling.
--
Change-Id: I48d461524d63d556bcd4af49f6ba2aecf1ed7068
Reviewed-on: https://bazel-review.googlesource.com/#/c/1500/
MOS_MIGRATED_REVID=95720688
|
|
|
|
|
|
|
| |
Drive-by fix a minor issue that resulted in the @repository//pkg:label syntax not working for label-valued attributes.
--
MOS_MIGRATED_REVID=95716203
|
|
|
|
|
|
|
| |
mobile-install --split_apks".
--
MOS_MIGRATED_REVID=95715203
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=95714424
|
|
|
|
|
|
|
|
|
| |
To avoid needing a JavaSemantics in the JackAspect, move the resource path
determination into the provider itself rather than doing it in the
JackCompilationHelper.
--
MOS_MIGRATED_REVID=95684532
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=95671328
|
|
|
|
|
|
|
|
|
|
| |
Improves local variable names, moves building of excluded path
fragments outside of the package path entries loop, and moves the
explanatory comment for the no-targets-found check up to where the
check is performed.
--
MOS_MIGRATED_REVID=95660427
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=95659263
|
|
|
|
|
|
|
|
| |
Fixes #233.
https://github.com/google/bazel/issues/233
--
MOS_MIGRATED_REVID=95632067
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=95615442
|
|
|
|
|
|
|
| |
Tested by building a trivial Android app manually. The only remaining issue (apart from all this being terribly untested) is that the runfiles path of main_dex_list_creator is not yet determined correctly, but that is only a problem when using legacy multidexing, so it will be good enough for now.
--
MOS_MIGRATED_REVID=95609792
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently we may do lookups of not-already-cached packages during the
execution phase for actions that discover inputs. Exceptions encountered
during this would go unhandled and result in a crash. Here we introduce
PackageRootResolutionException which wraps these exceptions and triggers
an ActionExecutionException which is cleanly handled in the exec phase.
As part of this change SkyframeActionExecutor#getArtifactRoots(...) will
fail properly on errors getting package roots.
--
MOS_MIGRATED_REVID=95578891
|
|
|
|
|
|
|
|
|
| |
order to create the classes.jar to be used in aar generation.
RELNOTES: The classes.jar in .aar files now also contains the contents of any class jars specified in the android_library.srcs attribute.
--
MOS_MIGRATED_REVID=95542278
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=95536484
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Until the Jack aspect implementation is submitted (in a coming CL),
only android_library dependencies can be used by Jack dexing, as no
other rule type exports the right provider.
But for now, android_binaries which depend purely on android_libraries
can build their dexes using Jack if --experimental_android_dex_with_jack
is specified.
--
MOS_MIGRATED_REVID=95534421
|
|
|
|
|
|
|
| |
cased strategy-flags can override the default flags (otherwise for example "Javac" and "javac" are both stored in the case-sensitive HashMap and it depends on luck which one ends up in the final strategy map).
--
MOS_MIGRATED_REVID=95532191
|
|
|
|
|
|
|
|
|
| |
JavaDoc strings, ...
I found having stack traces very helpful while I was debugging an issue where the JavaBuilder ran out of file handles and crashed, but only printed "Compilation failed: No more file handles" and didn't tell me which part of the code actually tried to open the file.
--
MOS_MIGRATED_REVID=95529141
|
|
|
|
|
|
|
|
|
| |
This will be used by the persistent JavaBuilder, which improves performance of Java compilation by 4x due to profiting from JVM JIT optimizations and not having to relaunch the JVM for every spawn.
It is completely generic though, so as long as a tool (ProGuard? Dexer? Whatever.) conforms to the Worker process protocol, it can use the new spawn strategy.
--
MOS_MIGRATED_REVID=95527132
|
|
|
|
|
|
|
| |
This functionality used to be part of SkylarkNestedSet.
--
MOS_MIGRATED_REVID=95526136
|
|
|
|
|
|
|
| |
Fixes #206.
--
MOS_MIGRATED_REVID=95525127
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is necessary to add support for Java-based languages like GWT, Groovy, and Scala. With this change, I can construct a classpath for GWT as follows:
all_deps = set(ctx.files.deps + ctx.files._implicitdeps)
for this_dep in ctx.attr.deps:
if hasattr(this_dep, 'java'):
all_deps += this_dep.java.transitive_runtime_deps
all_deps += this_dep.java.transitive_source_jars
classpath = ":".join([dep.path for dep in all_deps])
--
Change-Id: If58ffd19a4cc19f69d5f98814c11391683804234
Reviewed-on: https://bazel-review.googlesource.com/#/c/1480
MOS_MIGRATED_REVID=95523130
|
|
|
|
|
|
|
| |
This is needed so that Bazel can access Android NDK if it's outside of the workspace. The current limitation is that we Bazel can pretend that there is a BUILD file there, but cannot do the same with a CROSSTOOL file. We could fix that limitation, but given that Crosstool is the only conceivable use case, let's fix it by changing the Blaze-Crosstool interface.
--
MOS_MIGRATED_REVID=95517408
|