aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules/objc/AbstractJ2ObjcProtoAspect.java
Commit message (Collapse)AuthorAge
* Update j2objc targets referenced by Bazel rules.Gravatar Googler2016-06-02
| | | | | -- MOS_MIGRATED_REVID=123868341
* libtool wrapper script to isolate the unfortunate hacks we must make to get ↵Gravatar Chris Parsons2016-05-24
| | | | | | | around apple's buggy libtool tool -- MOS_MIGRATED_REVID=123024674
* Clean up J2ObjC proto support.Gravatar Rumou Duan2016-05-02
| | | | | -- MOS_MIGRATED_REVID=121146085
* 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
* 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
* 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
* Temporary fix for xcode project generationGravatar Kristina Chodorow2016-02-10
| | | | | | | | | | | The xcodegen script does not yet handle looking for files under @bazel_tools correctly. This change will let xcode find these targets under the workspace root, instead of the @bazel_tools repository. Note that this means that the package path must include third_party/java/j2objc if it does not exist in your workspace. -- MOS_MIGRATED_REVID=114268000
* Prepend Constants.TOOLS_REPOSITORY to implicit J2ObjC dependency labels.Gravatar Rumou Duan2016-02-07
| | | | | -- MOS_MIGRATED_REVID=113991707
* Move ObjC compilation actions for J2ObjC-translated code from binary level ↵Gravatar Rumou Duan2016-02-05
| | | | | | | | | | | | to the edges (J2ObjcAspect and J2ObjcProtoAspect). RELNOTES[INC]: ObjC compile actions for J2ObjC-translated code now only has access to headers from the java deps of the associated original java rule. These compile actions no longer takes the compiler options specified in "copts" attribute on objc_binary/ios_test rules. J2ObjC dead code removal (enabled through flag "--j2objc_dead_code_removal") now happens *after* ObjC compilation. -- MOS_MIGRATED_REVID=113910545
* Emit extra-actions for actions registered by Aspects.Gravatar Carmi Grushko2015-11-17
| | | | | | | A prerequisite is to pass RuleContext to ConfiguredAspect, so we can read from it the registered actions when we build() the aspect. -- MOS_MIGRATED_REVID=107997593
* Change ProtoSourcesProvider to only export direct sources. Add a method, ↵Gravatar Michael Thvedt2015-11-10
| | | | | | | getCheckDepsProtoSources(), to get any indirect sources from alias library cases. -- MOS_MIGRATED_REVID=107395192
* Aspect terminology update.Gravatar Dmitry Lomov2015-11-10
| | | | | | | | Aspect => ConfiguredAspect AspectWithParameters => Aspect -- MOS_MIGRATED_REVID=107375211
* Parametrize aspect definition with AspectParameters.Gravatar Dmitry Lomov2015-11-02
| | | | | -- MOS_MIGRATED_REVID=106848269
* Implement propagation along dependencies for Skylark aspects.Gravatar Dmitry Lomov2015-11-02
| | | | | -- MOS_MIGRATED_REVID=106694515
* Add a mapping and relevant function calls in ObjcProvider to provide a way ↵Gravatar Rumou Duan2015-10-07
| | | | | | | | | to construct and export a J2ObjC-code-and-dep-only view of the ObjcProvider, which is then used to create the compile action for J2ObjC-generated code at the binary level. This greatly reduces the number of input artifacts for such actions. Also export header search paths at the edges (J2ObjcAsepct and J2ObjcProtoAspect) instead of in j2objc_library. This change removes some unnecessary header search paths. -- MOS_MIGRATED_REVID=104821185
* Rationalize copyright headersGravatar Damien Martin-Guillerez2015-09-25
| | | | | | | | | | | The headers were modified with `find . -type f -exec 'sed' '-Ei' 's|Copyright 201([45]) Google|Copyright 201\1 The Bazel Authors|' '{}' ';'` And manual edit for not Google owned copyright. Because of the nature of ijar, I did not modified the header of file owned by Alan Donovan. The list of authors were extracted from the git log. It is missing older Google contributors that can be added on-demand. -- MOS_MIGRATED_REVID=103938715
* Move Label from the lib.syntax to the lib.cmdline package so that:Gravatar Lukacs Berki2015-09-21
| | | | | | | | | | - Label parsing can be simplified - lib.syntax is only contains the code for Skylark and is reasonably independent from the problem domain of building things This change is mostly only changes to imports declarations. The rest is reversing the dependency between :cmdline and :syntax and moving a tiny amount of code between Printer and FilesetEntry and the addition of SkylarkPrintableValue that I couldn't be bothered to separate out into its own change. -- MOS_MIGRATED_REVID=103527877
* Enable j2objc_library proto aspect for Bazel. Note that the remote j2objc ↵Gravatar Michael Thvedt2015-09-21
workspace hasn't been set up yet. RELNOTES: j2objc_library on Bazel now transpiles transitive proto_library dependencies. (Note that java_* rules in Bazel do not yet support protos; currently they ignore proto dependencies.) -- MOS_MIGRATED_REVID=103392720