aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules
Commit message (Collapse)AuthorAge
* Set --xcode_version_config=@bazel_tools//tools/objc:host_xcodes by default inGravatar Luis Fernando Pino Duque2016-04-27
| | | | | | | and delete the reference to Constants.TOOLS_REPOSITORY in AppleCommandLineOptions. -- MOS_MIGRATED_REVID=120918479
* Inject the tools repository constant in the JackAspect and delete the ↵Gravatar Luis Fernando Pino Duque2016-04-27
| | | | | | | reference to Constants.TOOLS_REPOSITORY -- MOS_MIGRATED_REVID=120909538
* Introduce apple_binary, which links together one or more c-family libraries ↵Gravatar Chris Parsons2016-04-27
| | | | | | | and produces a potentially multi-architecture binary, controlled by the --ios_multi_cpus flag -- MOS_MIGRATED_REVID=120874805
* Collect logic related to extra Proguard outputs in one place.Gravatar Googler2016-04-27
| | | | | -- MOS_MIGRATED_REVID=120865329
* Turn on -g by default for dbg builds.Gravatar Dmitry Shevchenko2016-04-27
| | | | | | | | | | * Adds a flag to Objective-C copts set. * Adds a method to get Swift compilation flags, these are slightly different from ObjC clang. RELNOTES:Generate debug symbols (-g) is enabled for all dbg builds of objc_ rules. -- MOS_MIGRATED_REVID=120845678
* Include debug entitlements by default when building non-release builds.Gravatar Peter Schmitt2016-04-27
| | | | | | | | | | | The new behavior can be disabled by building with -c opt or --nodevice_debug_entitlements. RELNOTES: iOS apps are signed with get-task-allow=1 unless building with -c opt. -- MOS_MIGRATED_REVID=120827024
* Delete the interface NativeAspectFactory and make native aspects extend from ↵Gravatar Luis Fernando Pino Duque2016-04-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | NativeAspectClass. This a large refactoring of the aspects, currently we have the following: - AspectClasses: The interface AspectClass is a implemented by either SkylarkAspectClass or NativeAspectClass<NativeAspectFactory>. They are wrappers for the AspectFactories and they hold the information about the Class<> of the factory. - AspectFactories (FooAspect.java): Represented by the interfaces ConfiguredAspectFactory and NativeAspectFactory, also by the interface ConfiguredNativeAspectFactory which is the union of the two aforementioned interfaces. All aspects implement ConfiguredNativeAspectFactory except Skylark aspects which implement only ConfiguredAspectFactory. After this CL the distinction between NativeAspectFactories and NativeAspectClasses dissappear, namely aspect that extends NativeAspectClass is considered native and if it implements ConfiguredAspectFactory it is configured. Therefore the interfaces NativeAspectFactory and ConfiguredNativeAspectFactory both disappear. With this refactoring the aspectFactoryMap in the ConfiguredRuleClassProvider changes its type from (String -> Class<? extends NativeAspectClass>) to (String -> NativeAspectClass) which means it is now able to have an instance of the aspect instead of its Class only. By doing this, it is now possible to pass parameters when creating an aspect in the ConfiguredRuleClassProvider. -- MOS_MIGRATED_REVID=120819647
* Set --android_sdk=@bazel_tools//tools/android:sdk by default and delete ↵Gravatar Luis Fernando Pino Duque2016-04-27
| | | | | | | | | Constants.ANDROID_DEFAULT_SDK. This CL also updates the test infrastructure to include a mock of @bazel_tools//tools/android:sdk. -- MOS_MIGRATED_REVID=120815577
* cpp fdo: Use correct PRODUCT_NAME for path when extracting a profile.Gravatar Svilen Kanev2016-04-27
| | | | | | | | | | | Profiles with a root 'blaze-fdo' didn't get correctly symlinked to execRoot/_fdo in bazel. TESTED=./compile.sh all; +manual FDO builds. -- Change-Id: I5cd69970523db4de15d5b6ddf7af4a072bbca0f5 Reviewed-on: https://bazel-review.googlesource.com/#/c/3490/ MOS_MIGRATED_REVID=120811529
* Fix the documentation generator to use rule definition instances instead of ↵Gravatar Luis Fernando Pino Duque2016-04-26
| | | | | | | classes. -- MOS_MIGRATED_REVID=120794657
* Refactor CompilationSupport.registerFullyLinkedAction to be the ↵Gravatar Chris Parsons2016-04-26
| | | | | | | | | | responsibility of the caller to invoke, instead of creating the fully linked artifact by default It makes more sense for the caller rule to opt-in to creating its own implicit output. This also makes it easier for classes to use CompilationSupport without generating this artifact. -- MOS_MIGRATED_REVID=120764517
* Adds an ObjcProtoProvider which bundles the proto sources and filters, along ↵Gravatar Sergio Campama2016-04-26
| | | | | | | with an ObjcProtoAspect which propagates the proto provider through the dependency chain. -- MOS_MIGRATED_REVID=120747710
* Adds support for strict dependency management. This is done by filtering a ↵Gravatar Sergio Campama2016-04-26
| | | | | | | list of strict deps keys from being propagated more than one level in the dependency graph. Values added to those keys from dependency providers are routed into the non_propagated_items map, preventing them from being propagated again. -- MOS_MIGRATED_REVID=120724767
* Split ActionMetadata into ActionAnalysisMetadata and ActionExecutionMetadata.Gravatar Rumou Duan2016-04-26
| | | | | | | Except in action execution logic (ActionExecutionFunction, SkyframeActionExecutor, etc.), switch Action interface references to either ActionAnalysisMetadata if possible or ActionExecutionMetadata. -- MOS_MIGRATED_REVID=120723431
* Implements pch in experimental_objc_library as a feature. Provides a ↵Gravatar Cal Peyser2016-04-25
| | | | | | | mechanism to add build variables through the CcLibraryHelper API. -- MOS_MIGRATED_REVID=120710713
* Exposes ObjcProvider for objc_proto_library and j2objc_library rules.Gravatar Erik Abair2016-04-25
| | | | | -- MOS_MIGRATED_REVID=120708846
* Fix cache invalidation problem in CppModuleMapAction.Gravatar Manuel Klimek2016-04-25
| | | | | | | | | When a file changes its execution root (for example, a previously checked in file now becoming a generated file), the cache key would be the same, using a broken module map. -- MOS_MIGRATED_REVID=120703120
* Add mechanism to crosstool language to specify action-specific execution ↵Gravatar Cal Peyser2016-04-25
| | | | | | | requirements. Uses this mechanism to configure c/c++ compilation and linking for darwin execution from the crosstool. -- MOS_MIGRATED_REVID=120701108
* Extend API to add interface-only deps.Gravatar Googler2016-04-25
| | | | | -- MOS_MIGRATED_REVID=120690977
* Always output entitlements plist in the XML formatGravatar Googler2016-04-25
| | | | | | | Adding --extra_entitlements flag to a build triggers a merge of entitlements files using plmerge tool. Configure build rules to output the resulting plist file in the XML format. Bundles signed with entitlements in the binary format fail to load on device. -- MOS_MIGRATED_REVID=120588271
* Add a --legacy_external_runfiles optionGravatar Kristina Chodorow2016-04-25
| | | | | | | | This isn't hooked up to anything yet, but is another piece of getting #848 rolled forward. -- MOS_MIGRATED_REVID=120582973
* Wire up --host_java_toolchainGravatar Liam Miller-Cushon2016-04-22
| | | | | -- MOS_MIGRATED_REVID=120574676
* Clean up launcher attributeGravatar Liam Miller-Cushon2016-04-22
| | | | | -- MOS_MIGRATED_REVID=120567604
* Check for additions to the directory in new_local_repositoryGravatar Kristina Chodorow2016-04-22
| | | | | | | | | | Fixes #806. RELNOTES: External repository correctness fix: adding a new file/directory as a child of a new_local_repository is now noticed. -- MOS_MIGRATED_REVID=120557511
* Make aspects work through bind(). Gravatar Lukacs Berki2016-04-22
| | | | | | | | | | | bind() is assumed to be able to provide any provider. This is suboptimal, but beats the alternative of traversing the dependency graph to an arbitrary depth. The reason for the removal of the iteration ability in TransitiveInfoCollection is that now aspects can be attached to BindConfiguredTarget, too, which is not a RuleConfiguredTarget. Whereas I could have implemented the iterator, it was used only in BindConfiguredTarget anyway, so there didn't seem to be much reason to. Some work towards #952. -- MOS_MIGRATED_REVID=120549877
* Skylark aspects should always output to bin directory.Gravatar Dmitry Lomov2016-04-22
| | | | | -- MOS_MIGRATED_REVID=120539216
* Register instances instead of classes as Skylark-visible globals.Gravatar Dmitry Lomov2016-04-22
| | | | | -- MOS_MIGRATED_REVID=120538736
* Automated [] rollback of commit 857cda2c45a5cc68c3fa398311c48c571a64915d and ↵Gravatar Damien Martin-Guillerez2016-04-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | commit 790d2f6009d47fe92cf0cd92a1473bbf0141f32e. *** Reason for rollback *** Broke non-Bazel projects on ci.bazel.io Fixes #1168 *** Original change description *** Move the runfiles for external repositories to under the x.runfiles/ directory This also sets the Bazel workspace name to io_bazel_source. Fixes #848. Relevant to #1116, #1124, RELNOTES[INC]: All repositories are now directly under the x.runfiles directory in the runfiles tree (previously, external repositories were at x.runfiles/main-repo/external/other-repo. This simplifies handling remote repository runfiles considerably, but will break existing references to external repository runfiles.... *** -- MOS_MIGRATED_REVID=120535721
* Remove all internal calls to FileProvider.getLabel.Gravatar Ulf Adams2016-04-22
| | | | | | | | The method will be removed in a subsequent change to facilitate reverting the change in case it goes bad. -- MOS_MIGRATED_REVID=120526894
* Add android deploy info.Gravatar Googler2016-04-22
| | | | | | | | | | | | Each android binary build operation will output a deploy info proto providing information about how to deploy and launch the APK. The information will vary between build mode (normal, mobile-install, split-apk) and is configuration-dependent. NO_SQ: Presubmit broken -- MOS_MIGRATED_REVID=120494036
* Add JavaSemantics.checkRule to Android rules.Gravatar Greg Estren2016-04-22
| | | | | -- MOS_MIGRATED_REVID=120480051
* Actions for rules that do not have 'use_header_modules' enabled should not haveGravatar Manuel Klimek2016-04-22
| | | | | | | header modules as inputs. -- MOS_MIGRATED_REVID=120473286
* Don't resolve --java_launcher for targets that opt outGravatar Liam Miller-Cushon2016-04-22
| | | | | | | | | If a target uses its launcher attribute to override --java_launcher, that should also override the value of :java_launcher. The default value of --java_launcher may not be compatible with the target architecture. -- MOS_MIGRATED_REVID=120473209
* DotExpressions can evaluate fields of java.lang.Class instances in addition ↵Gravatar Cal Peyser2016-04-22
| | | | | | | | | | | to actual instances. This allows global namespaces registered in the RuleClassProvider to have structField SkylarkCallables. TESTED: Using the new functionality for AppleSkylarkCommon.getKeys() -- MOS_MIGRATED_REVID=120455804
* Remove FilesToRunProvider.label.Gravatar Ulf Adams2016-04-22
| | | | | | | The TransitiveInfoProvider already contains a label, use that instead. -- MOS_MIGRATED_REVID=120443298
* Fix LIPO with C++ header modules.Gravatar Manuel Klimek2016-04-21
| | | | | | | When collecting LIPO context, do not create module actions. -- MOS_MIGRATED_REVID=120432142
* Refactor the Event class; always construct through static methods.Gravatar Ulf Adams2016-04-21
| | | | | -- MOS_MIGRATED_REVID=120418505
* --Gravatar Michael Staib2016-04-21
| | | | MOS_MIGRATED_REVID=120353718
* Add a workspace name to Skylark repositoriesGravatar Kristina Chodorow2016-04-21
| | | | | | | | | This prevents an ugly error when the main repository name is set. Fixes #1166. -- MOS_MIGRATED_REVID=120352395
* Disable the generating .gcno files for .pcm compile actions. These can conflictGravatar Googler2016-04-21
| | | | | | | with the .gcno files for the actual .cc files. -- MOS_MIGRATED_REVID=120338906
* Adds manifest_values attribute to android_binary as a preliminary for ↵Gravatar Andrew Pellegrini2016-04-21
| | | | | | | removing application_id, version_code and version_name attributes and switching to the Gradle manifest merger. -- MOS_MIGRATED_REVID=120335565
* Refactor CompilationSupport and IntermediateArtifacts to optionally take a ↵Gravatar Chris Parsons2016-04-20
| | | | | | | BuildConfiguration that is not the current rule context's configuration. -- MOS_MIGRATED_REVID=120271518
* Overwrite the WORKSPACE file for new_local_repositoryGravatar Kristina Chodorow2016-04-20
| | | | | | | | | | | | | This prevents an ugly warning when you do something like: new_local_repository( name = "bazel_tools", path = ".", build_file = "BUILD", ) -- MOS_MIGRATED_REVID=120271366
* Rename CppCompilationContext.getCompilationPrerequisites toGravatar Manuel Klimek2016-04-20
| | | | | | | | | | | | | | getTransitiveCompilationPrerequisites. The missing 'transitive' in the name is misleading. This change is a preparation for further refactorings that will in the end introduce a getCompilationPrerequisites method that actually returns the compilation prerequisites for a rule - as that will be require some more things to be shuffled around in CppCompilationContext, this change gets the purely syntactical change in first. -- MOS_MIGRATED_REVID=120247461
* Make java_toolchain.{javac,javabuilder,singlejar,genclass,ijar} mandatoryGravatar Liam Miller-Cushon2016-04-20
| | | | | -- MOS_MIGRATED_REVID=120241405
* Move the runfiles for external repositories to under the x.runfiles/ directoryGravatar Kristina Chodorow2016-04-20
| | | | | | | | | | | | | | | This also sets the Bazel workspace name to io_bazel_source. Fixes #848. Relevant to #1116, #1124, RELNOTES[INC]: All repositories are now directly under the x.runfiles directory in the runfiles tree (previously, external repositories were at x.runfiles/main-repo/external/other-repo. This simplifies handling remote repository runfiles considerably, but will break existing references to external repository runfiles. --- Furthermore, if a Bazel project does not provide a workspace name in the WORKSPACE file, Bazel will now default to using __main__ as the workspace name (instead of "", as previously). The repository's runfiles will appear under x.runfiles/__main__/. -- MOS_MIGRATED_REVID=120224534
* Allow external repositories to have includes attributes that point to ↵Gravatar Janak Ramakrishnan2016-04-19
| | | | | | | | | packages not in third_party. We don't need to police users' external repositories. Fixes #1151 -- MOS_MIGRATED_REVID=120222222
* Review a number of action subclasses and update them according to the spec.Gravatar Ulf Adams2016-04-19
| | | | | | | | Consists of adding @Immutable annotations, adding final modifiers, and changing the types of fields to immutable types. -- MOS_MIGRATED_REVID=120221067
* Add mechanism to crosstool language to specify action-specific execution ↵Gravatar Cal Peyser2016-04-19
| | | | | | | requirements. Uses this mechanism to configure c/c++ compilation and linking for darwin execution from the crosstool. -- MOS_MIGRATED_REVID=120218079
* Review a number of action subclasses and update them according to the spec.Gravatar Ulf Adams2016-04-19
| | | | | | | | | | Second pass. Consists of adding @Immutable annotations, adding final modifiers, and changing the types of fields to immutable types. -- MOS_MIGRATED_REVID=120216592