aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build
Commit message (Collapse)AuthorAge
* Use FeatureConfiguration to compute value of CC_FLAGS make variableGravatar hlopko2017-05-26
| | | | | | | | | | | | | | | | | | | | | | | | | This cl introduces new action_config type for Crosstool named 'generic'. This can be used to set the value of CC_FLAGS make variable using much more expressive mechanism (action_configs + features) than previous make_variable Crosstool messages. This has been requested by the C++ LPT. However, as FeatureConfiguration needs RuleContext, CC_FLAGS cannot be computed using configuration only anymore. Also, FeatureConfiguration is C++ rules specific class, and Bazel build-base cannot depend on it. Therefore we cannot use FeatureConfiguration for ExtraActions, for example. Because it cannot be made perfect, this cl is not updating all the possible places that expand make variables but limits the scope to: * genrule (the only widely used rule that often expands make variables) * *_test (CC_FLAGS is used by Tensorflow in the 'args' attribute) * cc_rules (people sometimes set 'copts' to something like: "-DCC_STRING=\\\"$(CC)\\\" -DCC_FLAGS_STRING=\"$(CC_FLAGS)\"" The long term plan is to use Skylark C++ API to get C++ command lines, so CC_FLAGS together with this inconsistent solution will be removed. RELNOTES: CC_FLAGS can be defined using 'generic' action_config in CROSSTOOL PiperOrigin-RevId: 157202883
* Use the correct extension_safe copt for extension_safe attributeGravatar cparsons2017-05-26
| | | | | | | The previous copt was in error, and was not caught due to only causing warnings to be omitted. Tests are now updated to throw an error in such cases of warning. RELNOTES: None. PiperOrigin-RevId: 157150798
* Make platform providers creatable from Skylark.Gravatar John Cater2017-05-26
| | | | | | | This will allow custom rules to interact more fully with the platform system. Change-Id: I22dd2efab55b1c6e6129b1ba99fb5f0aa9c2d6b2 PiperOrigin-RevId: 157145828
* Remove workspace tree under correct nameGravatar kchodorow2017-05-26
| | | | | | Actual fix for #2819. PiperOrigin-RevId: 157142420
* Remove no-op use_singlejar_for_proguard_libraryjars flag - it was removed ↵Gravatar Googler2017-05-26
| | | | | | | from global .blazerc in unknown commit RELNOTES: n/a PiperOrigin-RevId: 157133716
* Expose creation method for DottedVersion to skylark.Gravatar cparsons2017-05-26
| | | | | RELNOTES: Skylark support (apple_common.dotted_version(string)) for building DottedVersion objects to interface with native apple rules PiperOrigin-RevId: 157131109
* Use nested sets for configured target runfiles instead of flattened lists.Gravatar Googler2017-05-26
| | | | | RELNOTES: None PiperOrigin-RevId: 157124371
* Clean up SkylarkToolchainConstructor's argument handling.Gravatar John Cater2017-05-26
| | | | | Change-Id: I0604355801bd7e4f77a93bfc38e970713a1392c5 PiperOrigin-RevId: 157116222
* Added an implicit output target to j2objc_libraryGravatar Googler2017-05-26
| | | | | | This implicit output is similar to objc_library's fully linked static library. For j2objc_library targets, we can use this output to trigger transpilation and generate a fully linked static library. PiperOrigin-RevId: 157062831
* Automated g4 rollback of commit e2edf2e141a09c025a958d580c7cac7b57c70d83.Gravatar Googler2017-05-26
| | | | | | | | | | | | | | | | | | | | | | | | | *** Reason for rollback *** Rollforward with fix. *** Original change description *** Automated g4 rollback of commit c78c947e6a8cbb323304f872a3dcabb989a3d76b. *** Reason for rollback *** Breaks android targets in the nightly - see [] *** Original change description *** Do not retain transitive data in AndroidLocalTestBase... *** ROLLBACK_OF=156745610 RELNOTES: None PiperOrigin-RevId: 157028029
* Root GenObjcBundledProtos input filelist under the appropriate build ↵Gravatar cparsons2017-05-26
| | | | | | | configuration RELNOTES: None. PiperOrigin-RevId: 157017608
* Add one version enforcement to android_robolectric_testGravatar Googler2017-05-26
| | | | | RELNOTES: add one-version enforcement to android_local_test PiperOrigin-RevId: 157014802
* Add toolchains attribute to aspect.Gravatar John Cater2017-05-26
| | | | | | | Part of #2219. Change-Id: I39ced1f3e2605154771df9424d6ed2f971820baf PiperOrigin-RevId: 157002268
* Don't throw runtime exception on interruption - since we know the future is ↵Gravatar Googler2017-05-26
| | | | | | already done, we should leave the thread in an interrupted state and proceed. This fixes a blaze crash when a 'genquery' execution is interrupted at the right time. PiperOrigin-RevId: 157000269
* Improve error messages for malformed Android SDK/NDK.Gravatar ajmichael2017-05-24
| | | | | | | | | | | | | Currently, if the user has an SDK/NDK that is missing required directories, we print out an InconsistentFileSystemException. This CL will give a better error, indicating which directory is missing (or is not a directory). Implementation is roughly taken from NewLocalRepositoryFunction. Followup to https://github.com/bazelbuild/bazel/issues/2739. RELNOTES: None PiperOrigin-RevId: 156913532
* Remove outdated documentation about appcompat library.Gravatar ajmichael2017-05-24
| | | | | | | The documentation for the current iteration of this feature is under android_sdk_repository. RELNOTES: None PiperOrigin-RevId: 156909364
* Remove possibility of circular initialization errors inGravatar John Cater2017-05-24
| | | | | | | SkylarkType.Simple. Change-Id: I7d6898bcba1689fee9e730b6134b659948501dae PiperOrigin-RevId: 156903849
* Set --experimental_enable_objc_cc_deps by default in the blaze binary.Gravatar cpeyser2017-05-23
| | | | PiperOrigin-RevId: 156896360
* Automated g4 rollback of commit c4134802dd15d6ef5cca6521f6bf6aac395ee2ad.Gravatar kchodorow2017-05-23
| | | | | | | | | | | | | | | | | | | | | | | | | | *** Reason for rollback *** Roll forward of directory name change *** Original change description *** Automated g4 rollback of commit 1d9e1ac90197b1d3d7b137ba3c1ada67bb9ba31b. *** Reason for rollback *** Breaks //src/test/shell/integration:force_delete_output_test *** Original change description *** Symlink output directories to the correct directory name If the workspace directory is /path/to/my/proj and the name in the WORKSPACE file is "floop", this will symlink the output directories to output_base/execroot/floop instead of output_base/execroot/proj. More prep for #1262, fixes #1681. PiperOrigin-RevId: 156892980
* Make PackageOrException.get() public + make loadPackages() variant.Gravatar carmi2017-05-23
| | | | | RELNOTES: None PiperOrigin-RevId: 156876531
* Update remote caching / execution docsGravatar ulfjack2017-05-23
| | | | | | Progress on #904. PiperOrigin-RevId: 156862823
* experimental UI: Support limiting consoleGravatar Klaus Aehlig2017-05-23
| | | | | | | | | | | | Add an option allowing to set a hard limit on the number of characters bazel will write to stdout/stderr (combined). In this way, it can be avoided to overwhelm the user with information (especially, if the invocation of bazel is wrapped in some way). Once the limit is approaching, bazel will try hard to meaningfully reduce the output, but will ultimately resort to just dropping output completely. Change-Id: I49cce96cc6a025c9753632dd489021766df81077 PiperOrigin-RevId: 156849105
* BEP: explicitly mark the important outputs as deprecatedGravatar aehlig2017-05-23
| | | | | | | | While the fact that they are only added temporarily is obvious from the comment, a machine-readable deprecation annotation is more likely to be honored. So add it. PiperOrigin-RevId: 156846712
* Don't de-duplicate linkopts from two different configured targets that have ↵Gravatar lberki2017-05-23
| | | | | | | the same value. RELNOTES: None. PiperOrigin-RevId: 156837699
* Fix typos in android_device.system_image attribute documentationGravatar Googler2017-05-23
| | | | | RELNOTES: None PiperOrigin-RevId: 156827893
* Add CC_FLAGS to the macros that pull in the CcToolchainProvider for genrulesGravatar Googler2017-05-23
| | | | | RELNOTES: Using $(CC_FLAGS) in a GenRule adds a dependency to the c++ toolchain PiperOrigin-RevId: 156770639
* Remove outdated comment.Gravatar ajmichael2017-05-23
| | | | | RELNOTES: None PiperOrigin-RevId: 156770067
* Add deprecation warning if the "legacy" manifest merger is used, now that ↵Gravatar apell2017-05-23
| | | | | | | the default has been switched to "android". RELNOTES: The 'legacy' Android manifest merger is deprecated. Please upgrade to the 'android' manifest merger, which is the same merger used by Gradle. https://developer.android.com/studio/build/manifest-merge.html PiperOrigin-RevId: 156765307
* If the target apple_binary is a loadable_bundle, always pass the ↵Gravatar kaipi2017-05-23
| | | | | | @loader_path/Frameworks rpath flag to the linker. PiperOrigin-RevId: 156759162
* Fix ordering of -fPIC for PIC compiles in the LTOBackendActionGravatar Googler2017-05-23
| | | | | | | | | | For compiles that the CppConfiguration flags as needing PIC, the -fPIC option needs to be added after the other compile options so that it cannot be overridden (e.g. with a --copt). This is consistent with the way the CppCompileAction compile options are ordered. RELNOTES: None. PiperOrigin-RevId: 156746218
* Automated g4 rollback of commit c78c947e6a8cbb323304f872a3dcabb989a3d76b.Gravatar cpeyser2017-05-23
| | | | | | | | | | | | | | *** Reason for rollback *** Breaks android targets in the nightly - see [] *** Original change description *** Do not retain transitive data in AndroidLocalTestBase. The argument strings and artifacts were both transitive and flattened, causing O(N^2) memory consumption. PiperOrigin-RevId: 156745610
* Loosen java_library.exports and java_import.*Gravatar Stephen Twigg2017-05-22
| | | | | | | | | | | | | | | | | | | | | | | | | java_library.exports and java_import.runtime_deps|exports|deps will now accept any label from a rule that has a JavaProvider declared provider. Note that java_library.deps|runtime_deps already had this feature and this simply extends that privilege. This relies on the fact that both those targets (via JavaCommon) are simply searching for jars via JavaProvider anyway. Added test for passing a custom Skylark rule (that provides a JavaProvider) can successfully be added to the deps, runtime_deps, and exports of java_library, java_import, and java_binary (where appropriate). Added integration tests for java_library.exports|runtime_deps (the basic sandwich already tests deps) and java_import.exports|runtime_deps. Note that custom Skylark rules are still unable to provide or propagate a JavaNativeLibraryProvider, which results from a cc dependency. Also, the deps argument for java_import is somewhat odd. Change-Id: I7b2c19c6b99516ce524e8c82193d0c73e2d66530 PiperOrigin-RevId: 156740729
* Extract determining which manifest merger to use (legacy v android) to a ↵Gravatar Googler2017-05-22
| | | | | | | separate method. This is so that android_local_test won't need access to the AndroidConfiguration fragment. RELNOTES: None PiperOrigin-RevId: 156740056
* Fix aspect processing when same dep appears in 2 attributes.Gravatar kaipi2017-05-22
| | | | | | If a target appeared in 2 different attributes, it is not processed twice, even if different aspects were applied to the different attributes. In that case, only one of the aspects is applied. This commit fixes this by checking which aspects have been applied to the target, instead of checking if the target was already processed. PiperOrigin-RevId: 156738275
* Extract :cc_toolchain as constantGravatar hlopko2017-05-22
| | | | | | | | And while at it cleanup all the calls of CppHelper.getToolchain and CppHelper.getFdoSupport. RELNOTES: None. PiperOrigin-RevId: 156716291
* Create a loadPackages() method that loads multiple packages simultaneously, ↵Gravatar carmi2017-05-22
| | | | | | | | | using multiple threads. The immediate upside is that if multiple packages load the same bzl file, that file will only be read once when using loadPackages(). RELNOTES: None PiperOrigin-RevId: 156621988
* Expose javac jar in java_toolchain's skylark providerGravatar Googler2017-05-22
| | | | PiperOrigin-RevId: 156589908
* Add operator // for division.Gravatar laurentlb2017-05-22
| | | | | | | | In both Python 2 and Python 3, the operator // is used for int division. With Python 3, operator / is for float division. RELNOTES: None. PiperOrigin-RevId: 156582262
* Move Bazel Android WORKSPACE rule docs to Android family.Gravatar ajmichael2017-05-22
| | | | | RELNOTES: None PiperOrigin-RevId: 156578239
* Update the platform rule documentation to match the actual attribute names.Gravatar jcater2017-05-22
| | | | PiperOrigin-RevId: 156571671
* Turn the --explicit_jre_deps flag into a noop.Gravatar Googler2017-05-22
| | | | | | RELNOTES: Flag --explicit_jre_deps is now a noop. PiperOrigin-RevId: 156570342
* Fix attribute name so docs are generated properly.Gravatar jcater2017-05-22
| | | | PiperOrigin-RevId: 156558693
* Remote+BES: Stabilize command line flags.Gravatar buchgr2017-05-22
| | | | | | | | | | | | | | | | | | | | Update the command line flags used by remote execution/caching as well as the build event service (BES). Major changes: - Remote execution/caching and BES share flags for authentication and TLS. - Removed API Key authentication from BES, as it's not being used. - Add TLS support to BES upload. - Add --bes_project_id flag. If set, the value is propagated as part of BES lifecycle events. For reviewers: Start your review at CommonRemoteAndBesOptions, BuildEventServiceOptions and RemoteOptions. The other changes are mostly automatic IDE renames of fields and flag updates in shell script tests. RELNOTES: None. PiperOrigin-RevId: 156553857
* Avoid waste in registerNewlyDiscovered... when there aren't anyGravatar mschaller2017-05-22
| | | | | RELNOTES: None. PiperOrigin-RevId: 156553687
* Create new android_host_service_fixture rule.Gravatar ajmichael2017-05-22
| | | | | | | | | | | This rule specifies a host binary that is run as part of an android_instrumentation_test. It merely collects options, support APKs and the runfiles for the host binary and passes them along to the upcoming android_instrumentation_test rule. Note that this CL does _not_ install the rule, so this CL does not make it usable by anyone. Once the other android testing rules are ready, we will install them all. One small step towards https://github.com/bazelbuild/bazel/issues/903. RELNOTES: None PiperOrigin-RevId: 156553198
* gRPC is locking down access to internal classes, so remove refs to it.Gravatar Googler2017-05-22
| | | | | | | This value is unlikely to change in the near future, and we don't feel comfortable exposing it. You can force the size to be whatever you want, so the default value isn't really relevant. RELNOTES: n/a PiperOrigin-RevId: 156543600
* Don't join javabuilder classpath flagsGravatar cushon2017-05-19
| | | | | | | This avoids some string unnecessary string operations, and keeps command lines below the per-arg limit. PiperOrigin-RevId: 156514047
* Make the number of legacy globbing threads configurable. PackageFactory's ↵Gravatar nharmata2017-05-19
| | | | | | | hardcoded default of 100 isn't a good choice for all PackageLoader users. RELNOTES: None PiperOrigin-RevId: 156468439
* Expose the target map from Package.Gravatar carmi2017-05-19
| | | | | | | | This doesn't really expose new information, because one can iterate over the existing getTargets() and recreate the map. Moreover, the map is immutable, so there's no risk in returning it to the user. RELNOTES: None PiperOrigin-RevId: 156349797
* Add toolchains data to RuleClass and RuleContext.Gravatar John Cater2017-05-19
| | | | | | | | Also expose both sides to Skylark. Part of #2219. Change-Id: I4d749dd9981fe33f75310acb0ec3927cff6f28fe PiperOrigin-RevId: 156340638