aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java
Commit message (Collapse)AuthorAge
* Default Android dependencies to a //external: label with a default binding ↵Gravatar Lukacs Berki2015-06-16
| | | | | | | | | | | | | | | | to //tools/android: . This is useful because we can then eventually implement an android_tools_repository() rule that lets Bazel download the Android tools from somewhere instead of requiring it to be in every workspace with Android tools. The number of tools here is somewhat scary, therefore, I'm considering creating an android_tools rule which would have an attribute for each of these things. Some non-trivial things about this CL: - The labels to load are removed from AndroidConfiguration because they would resolve to e.g. //external:dx_jar, which labels just don't exist and I don't want to add dummy //external:labels not prefixed with android_ - RedirectChaser is taught how to chase redirect through bind() rules because the Android SDK is now found by //external:android_sdk -> //tools/android:sdk -> @androidsdk//:sdk . Ideally, it would be ///external:android_sdk -> @androidsdk//:sdk, but I figured I'd not fix that in this CL. -- MOS_MIGRATED_REVID=96080553
* Create a value class PatternWithEquality to wrap Pattern so that equal ↵Gravatar Janak Ramakrishnan2015-06-16
| | | | | | | strings can compare equal as Patterns. -- MOS_MIGRATED_REVID=96041927
* Allow users of Blaze Lexer to explicitly specify the line-number table of a ↵Gravatar Carmi Grushko2015-06-16
| | | | | | | file. -- MOS_MIGRATED_REVID=96039514
* Adds a new input and output to resource processing, symbols txt, which will ↵Gravatar Googler2015-06-16
| | | | | | | be used to express the direct dependencies for resource processing. -- MOS_MIGRATED_REVID=96037997
* Remove the debug_key attribute from android_binary and the associated -ks ↵Gravatar Lukacs Berki2015-06-16
| | | | | | | argument from the ApkBuilder invocation, because it turns out that ApkBuilder doesn't support it. -- MOS_MIGRATED_REVID=96035676
* Introduce a simple concurrent Multimap-like data structure with reference ↵Gravatar Nathan Harmata2015-06-16
| | | | | | | counting. -- MOS_MIGRATED_REVID=96024804
* Avoid copying the entire package contents in order to construct the line ↵Gravatar Eric Fellheimer2015-06-16
| | | | | | | number table. -- MOS_MIGRATED_REVID=96010987
* Fix a bug in the ActionCacheChecker where the code that intended to remove ↵Gravatar Philipp Wollermann2015-06-15
| | | | | | | outdated keys from the cache actually removed the correct one, so the cache never got cleaned up. -- MOS_MIGRATED_REVID=95986001
* Get jdk.WORKSPACE into the default WORKSPACE file by reading it as a Java ↵Gravatar Lukacs Berki2015-06-15
| | | | | | | | | | | resource, then passing it to the parser as a string instead of putting it into embedded_binaries then passing a Path to it to the parser. This makes the upcoming default WORKSPACE rules for Android much more palatable. In particular, Android rules won't need to be special cased when building the Bazel binary because the contents are self-contained in BazelRuleClassProvider (and the jdk.WORKSPACE file, which is a simple Java resource) Even better would be not to use a string, but some kind of structured data, but that's probably more effort than it's worth. -- MOS_MIGRATED_REVID=95983199
* Rollback of commit 162d5b276e1539b1acc44afcd4a4ccadcf99023a.Gravatar Googler2015-06-15
| | | | | | | | | | | | | | | | | *** Reason for rollback *** Breaks targets that have the same .m file in both srcs and hdrs. *** Original change description *** Allow private header files in the srcs attribute of objc_* rules. 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=95916531
* Implement Skylark function reprGravatar Francois-Rene Rideau2015-06-15
| | | | | | | | | | | | | | | | | Move printing code from EvalUtils to Printer. Rename functions in Printer: printValue becomes str or print, prettyPrintValue becomes repr or write, formatString becomes format, makeFormattable becomes strFormattable, prettyPrintValues becomes listString. write being self-sufficient is made the reference, and print is the one that is a wrapper around write, rather than the other way around, avoiding mutual recursion. -- MOS_MIGRATED_REVID=95897834
* Expose libc string to SkylarkGravatar Googler2015-06-15
| | | | | -- MOS_MIGRATED_REVID=95859604
* Introduce CompositeRunfilesSupplierGravatar Michajlo Matijkiw2015-06-15
| | | | | | | | A convenience used to compose RunfilesSuppliers without having to deconstruct them. -- MOS_MIGRATED_REVID=95854609
* Consider pkg in error on any symlink cycle in depsGravatar Mark Schaller2015-06-15
| | | | | | | | | | | | 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
* Add skylark methods to return the flags and includes needed to compile a target.Gravatar Googler2015-06-15
| | | | | -- MOS_MIGRATED_REVID=95854132
* Don't crash if a Java rule has multiple of the same resource.Gravatar Michael Staib2015-06-15
| | | | | | | | | 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
* More descriptive error message on ActionMetadataHandler#injectDigest failureGravatar Michajlo Matijkiw2015-06-15
| | | | | -- MOS_MIGRATED_REVID=95852975
* Fix typo in error message when the same file is in both srcs and hdrs.Gravatar Googler2015-06-15
| | | | | -- MOS_MIGRATED_REVID=95852647
* Allow private header files in the srcs attribute of objc_* rules.Gravatar Googler2015-06-15
| | | | | | | | | 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
* Adds the JackAspect for Jack support for Java dependencies.Gravatar Michael Staib2015-06-15
| | | | | | | | | | | 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
* Add dump commandGravatar Kristina Chodorow2015-06-15
| | | | | -- MOS_MIGRATED_REVID=95843033
* Migrate C++ link action .params files to the Blaze-standard ↵Gravatar Eric Fellheimer2015-06-15
| | | | | | | | | | | 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
* Skylark: First argument of load() may no longer start with two slashes ("//")Gravatar Florian Weikert2015-06-15
| | | | | -- MOS_MIGRATED_REVID=95833265
* Add username, hostname to stable build status.Gravatar Ming Zhao2015-06-15
| | | | | | | | | 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
* Remove Path from Location, ParserInputSource and bunch of other low-level ↵Gravatar Lukacs Berki2015-06-12
| | | | | | | | | | | | | | | | | 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
* Improve platform and CPU detection, use the correct protoc binary for the ↵Gravatar Philipp Wollermann2015-06-12
| | | | | | | | | running system. Tested on OS X 10.10, Debian 8.1 (x86_64) and Debian 8.1 (i686). -- MOS_MIGRATED_REVID=95819163
* Create CppBuildInfo so linkstamp works for C++ build.Gravatar Ming Zhao2015-06-12
| | | | | | | -- Change-Id: I0f3e697fa435026326615da787eeee75cb9dfdfe Reviewed-on: https://bazel-review.googlesource.com/#/c/1512/1 MOS_MIGRATED_REVID=95816402
* Various odds and ends in preparation for adding the Android rules to ↵Gravatar Lukacs Berki2015-06-12
| | | | | | | | | | | | 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
* Add link_flags and libs methods to the C++ Skylark APIGravatar Cody Schroeder2015-06-12
| | | | | -- MOS_MIGRATED_REVID=95783111
* Expose CppConfiguration tool paths to SkylarkGravatar Googler2015-06-12
| | | | | -- MOS_MIGRATED_REVID=95782228
* Skylark: make ConversionException an EvalExceptionGravatar Francois-Rene Rideau2015-06-12
| | | | | | | | | 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
* Have constraints' definition of implicit deps exactly match query's.Gravatar Greg Estren2015-06-12
| | | | | | | | | 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
* Change the description of NodeEntry#markDirty to better align with the ↵Gravatar Googler2015-06-12
| | | | | | | InMemoryNodeEntry#markDirty implementation. -- MOS_MIGRATED_REVID=95758779
* Fix permissions for zip filesGravatar Kristina Chodorow2015-06-12
| | | | | | | | | | | | | | | 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
* Simplify maven_jar to just take a single artifact descriptorGravatar Kristina Chodorow2015-06-12
| | | | | -- MOS_MIGRATED_REVID=95743586
* Add some clarifying comments to CppCompilationContext.Gravatar Han-Wen Nienhuys2015-06-12
| | | | | -- MOS_MIGRATED_REVID=95738396
* Cosmetic fixes in rules/cpp/ .Gravatar Han-Wen Nienhuys2015-06-11
| | | | | -- MOS_MIGRATED_REVID=95734020
* Use "python2" instead of "python" as the default Python2 interpreter.Gravatar Lukacs Berki2015-06-11
| | | | | -- MOS_MIGRATED_REVID=95728075
* Various improvements to Python support in Bazel:Gravatar Lukacs Berki2015-06-11
| | | | | | | | | - 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
* Add the necessary templates to make android_ndk_repository actually work.Gravatar Lukacs Berki2015-06-11
| | | | | | | Drive-by fix a minor issue that resulted in the @repository//pkg:label syntax not working for label-valued attributes. -- MOS_MIGRATED_REVID=95716203
* Bugfix: actually link in the split stub application for "blaze ↵Gravatar Lukacs Berki2015-06-11
| | | | | | | mobile-install --split_apks". -- MOS_MIGRATED_REVID=95715203
* Switch the default of --aspect_deps to "conservative".Gravatar Lukacs Berki2015-06-11
| | | | | -- MOS_MIGRATED_REVID=95714424
* Perform resource path munging at the provider level.Gravatar Michael Staib2015-06-11
| | | | | | | | | 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
* Fix xctest_app sources not showing up in ios_test coverage.Gravatar Googler2015-06-11
| | | | | -- MOS_MIGRATED_REVID=95671328
* Cleanup findTargetsBeneathDirectoryGravatar Mark Schaller2015-06-11
| | | | | | | | | | 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
* Fix bug where J2ObjC was reading Java files using the platform encoding.Gravatar Googler2015-06-11
| | | | | -- MOS_MIGRATED_REVID=95659263
* Skylark: implemented 'break' and 'continue'Gravatar Florian Weikert2015-06-10
| | | | | | | | Fixes #233. https://github.com/google/bazel/issues/233 -- MOS_MIGRATED_REVID=95632067
* Description redacted.Gravatar Lukacs Berki2015-06-10
| | | | | -- MOS_MIGRATED_REVID=95615442
* Make android_sdk_repository write a proper BUILD file instead of a stub.Gravatar Lukacs Berki2015-06-10
| | | | | | | 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
* Handle exceptions encountered resolving packages during the execution phaseGravatar Michajlo Matijkiw2015-06-10
| | | | | | | | | | | | | | 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