aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProtoLibrary.java
Commit message (Collapse)AuthorAge
* Expose an actions provider on RuleConfiguredTarget instances.Gravatar cparsons2018-03-06
| | | | | | | | | Given a target (for example from a skylark aspect), one will be able to access a list of actions that the target generated using "target.actions". This is without additional memory footprint. Actions themselves are not fully exposed to skylark (and thus there isn't much meaning to gather from them in skylark yet). Access methods will follow soon. RELNOTES: None. PiperOrigin-RevId: 188098079
* Expose ObjcProtoProvider as a Skylark object.Gravatar cparsons2017-12-04
| | | | | | | | | This does not provide any meaningful API to interact with ObjcProtoProvider from a skylark context -- it simply allows ObjcProtoProvider to be passed between skylark API calls as an opaque object. This helps facilitate exposure of an Apple Linking API to Skylark which will take place in future changes. RELNOTES: None. PiperOrigin-RevId: 177844029
* Remove support for ProtocolBuffers2.Gravatar kaipi2017-10-06
| | | | PiperOrigin-RevId: 171013687
* Move RuleConfiguredTarget to lib.analysis.configuredtargets.Gravatar gregce2017-09-19
| | | | | | This is a trivial change with a large file footprint. PiperOrigin-RevId: 169169864
* Rollback of ↵Gravatar ajmichael2017-08-14
| | | | | | | | | https://github.com/bazelbuild/bazel/commit/21436e062a12b64c8bee665b0cf79dfe48cff114. That change broke module maps that depended on the transitive headers from ObjC protos. RELNOTES: None PiperOrigin-RevId: 165010275
* Stop transitively propagating headers transitively for ObjC protos.Gravatar kaipi2017-08-09
| | | | PiperOrigin-RevId: 164590595
* Move RuleConfiguredTargetFactory to lib.analysisGravatar ulfjack2017-08-07
| | | | | | | This is part of splitting up the build-base library into separate libraries for analysis, exec, and rules. PiperOrigin-RevId: 164446955
* Make all WithLegacySkylarkName providers declared providers.Gravatar dslomov2017-07-28
| | | | | RELNOTES: None. PiperOrigin-RevId: 163343931
* Automated rollback of commit 6d884afa8da1b08288cb0108e8bbf6c22ec63393.Gravatar dslomov2017-07-25
| | | | | | | | | | | | | *** Reason for rollback *** Broke bazel_apple_rules *** Original change description *** Make all WithLegacySkylarkName providers declared providers. RELNOTES: None PiperOrigin-RevId: 163054821
* Make all WithLegacySkylarkName providers declared providers.Gravatar dslomov2017-07-25
| | | | | RELNOTES: None PiperOrigin-RevId: 163042362
* ObjcProvider is propagated as a native declared provider.Gravatar cparsons2017-07-21
| | | | | | | This has the added benefit of improving ObjcProvider documentation generated in bazel docs. RELNOTES: None. PiperOrigin-RevId: 162658384
* Remove Xcodege integration from Blaze.Gravatar schmitt2017-06-05
| | | | | RELNOTES: None. PiperOrigin-RevId: 157857216
* Root GenObjcBundledProtos input filelist under the appropriate build ↵Gravatar cparsons2017-05-26
| | | | | | | configuration RELNOTES: None. PiperOrigin-RevId: 157017608
* Add "uses_protobuf" attribute to objc_proto_library rule.Gravatar kaipi2017-05-03
| | | | PiperOrigin-RevId: 154860105
* Refactor to extract the collection of portable proto filters.Gravatar kaipi2017-04-30
| | | | PiperOrigin-RevId: 154549379
* Remove the use_objc_header rule warning. Add a generic migration warning to ↵Gravatar kaipi2017-04-18
| | | | | | objc_proto_library without the portable_proto_filters attribute. PiperOrigin-RevId: 153189663
* Fix ProtobufSupport.java to use the build configuration when being called ↵Gravatar kaipi2017-04-13
| | | | | | from an apple_binary split transition context. Refactors ProtobufSupport to not rely on ruleContext for dependencies. PiperOrigin-RevId: 152939984
* Make the proto bundling behavior the default when using the new library. Take 2Gravatar Sergio Campama2016-08-17
| | | | | -- MOS_MIGRATED_REVID=130406840
* Adds proto grouping behavior so that generation and compilation actions are ↵Gravatar Sergio Campama2016-08-16
| | | | | | | much smaller. This adds more granularity and helps prevent excessive compilation by minimizing the number of inputs for each action. -- MOS_MIGRATED_REVID=130359288
* Refactors out ProtocolBuffers2 related code into it's own class. This is the ↵Gravatar Sergio Campama2016-08-11
| | | | | | | | | first step into integrating the grouping behavior for proto targets using the new library. There's no change in functionality, only restructuring of code. -- MOS_MIGRATED_REVID=129903574
* Rollback of commit ee36dd3f5db8e7ad129b2782a24eb97a0478fc42.Gravatar Sergio Campama2016-07-25
| | | | | | | | | | | | | *** Reason for rollback *** Prevent [] from burning up *** Original change description *** Make the proto bundling behavior the default when using the new library. -- MOS_MIGRATED_REVID=128226570
* Make the proto bundling behavior the default when using the new library.Gravatar Sergio Campama2016-07-19
| | | | | -- MOS_MIGRATED_REVID=127747661
* Always register module map actions.Gravatar Dmitry Shevchenko2016-06-09
| | | | | | | | | | | | | * Makes it so module map generation action will be registered for all targets that should provide module maps. This allows other rules to depend directly on modulemap artifacts without turning on --experimental_objc_enable_module_maps for all builds. * Disabled module maps for apple_binary because of a bug. * objc_proto_library targets will register module map generation even with experimental union flag so that its modules can be imported by the dependent targets (even though the compilation is happening much later in the linking target). RELNOTES: -- MOS_MIGRATED_REVID=124386048
* Separates the proto compilation action from the other linking sources, to ↵Gravatar Sergio Campama2016-06-06
| | | | | | | isolate them from the linking target's defines and copts flags. Refactors CompilationAttributes into its own class with the Builder pattern. -- MOS_MIGRATED_REVID=124137672
* Support for gathering all the protos seen in the transitive closure of ↵Gravatar Sergio Campama2016-05-25
| | | | | | | dependencies through the ObjcProtoAspect, compiling and linking the generated protos at the final linking target. This is only enabled for objc_proto_libraries using the portable_proto_filters attribute, and guarded with the "--experimental_auto_top_level_union_objc_protos" flag. This prevents duplicate symbol errors as the generated sources are only linked once. -- MOS_MIGRATED_REVID=123144532
* Allow use of Exceptions to exit early out of configured-target creation, ↵Gravatar Chris Parsons2016-05-24
| | | | | | | | | | instead of passing and checking null in all helpers. Demonstrates this pattern usage in a few select rules (e.g. AndroidBinary) where this was particularly egregious. There are many places which can benefit from this pattern -- this change doesn't try to fix them all at once. -- MOS_MIGRATED_REVID=123012378
* Introduces a registry of native providers to the BuildConfiguration, which ↵Gravatar Cal Peyser2016-05-03
| | | | | | | can be added to by fragments. Uses the registry to enable native access to TranstiveProviderInstances from Skylark. In particular, makes ObjcProvider accessible to skylark rule implementations. -- MOS_MIGRATED_REVID=121390911
* 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
* Exposes ObjcProvider for objc_proto_library and j2objc_library rules.Gravatar Erik Abair2016-04-25
| | | | | -- MOS_MIGRATED_REVID=120708846
* Blaze - ObjcProtoLibrary: Adds support for the new protobuf library. This ↵Gravatar Googler2016-02-24
| | | | | | | includes improvements such as proto3 syntax support for Objective C. -- MOS_MIGRATED_REVID=115395892
* Pass "--working_dir ." to the compile_protos scriptGravatar Chris Parsons2016-01-28
| | | | | -- MOS_MIGRATED_REVID=113200224
* Use xcode_config build target for actions which need to resolve an xcode ↵Gravatar Chris Parsons2016-01-13
| | | | | | | version. -- MOS_MIGRATED_REVID=111978539
* Remove --objc_per_proto_includes flag, which was obsoleted by the rule-level ↵Gravatar Googler2015-11-18
| | | | | | | | | attribute of the same name. RELNOTES: Remove obsolete --objc_per_proto_includes flag. -- MOS_MIGRATED_REVID=108056207
* 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
* Separate build-specific types and types inherent to Skylark.Gravatar Lukacs Berki2015-09-21
| | | | | -- MOS_MIGRATED_REVID=103374106
* Generate module maps for each objc_* target with compilation support.Gravatar Googler2015-09-15
| | | | | | | | | This uses CppModuleMap and CppModuleMapAction to generate clang module maps for the target and its transitive dependencies. To enable this feature, you must pass -experimental_objc_enable_module_maps to bazel. For objc_* targets that need to use the "modules" language features (@import, Swift interop, etc), set the "enable_modules" attribute to 1. -- MOS_MIGRATED_REVID=103045673
* Rollforward of [], which was rolled back in []. Cleans up support for ↵Gravatar Michael Thvedt2015-09-14
| | | | | | | objc_proto_library with native proto_library. -- MOS_MIGRATED_REVID=102962083
* Rollback of commit 17e9d7cd408eee1e4e73a1fe6f76917954475937.Gravatar Carmi Grushko2015-09-04
| | | | | -- MOS_MIGRATED_REVID=102299629
* Turn Bazel proto_library on for objc_proto_library.Gravatar Michael Thvedt2015-09-04
| | | | | -- MOS_MIGRATED_REVID=102294703
* bazel --xcode_version flag to forward an environment variable ↵Gravatar Chris Parsons2015-09-02
| | | | | | | XCODE_VERSION_OVERRIDE to executors if specified -- MOS_MIGRATED_REVID=102049561
* Prefer RuleContext.getFragment over BuildConfiguration.getFragment.Gravatar Ulf Adams2015-08-24
| | | | | | | This improves the coverage of the legality check in RuleContext.getFragment. -- MOS_MIGRATED_REVID=101208822
* RELNOTES: Allow private headers in the srcs attribute. Add a warning if a ↵Gravatar Googler2015-08-20
| | | | | | | | | file is in both srcs and hdrs. This uses a very restrictive definition of private headers. They may only imported by sources in the same target and other private headers. They are not transitively available to dependers, even indirectly, though this may change in the future. -- MOS_MIGRATED_REVID=101028706
* Add an attribute 'per_proto_includes' which can be set on an ↵Gravatar Googler2015-08-14
| | | | | | | | | objc_proto_library overriding the global setting. This is needed as third_party libraries often do not use depot-relative include paths. RELNOTES: Add objc_proto_library.per_proto_includes attribute. -- MOS_MIGRATED_REVID=100637689
* Remove calls to AnalysisEnvironment.getDerivedArtifact() from Objective C rules.Gravatar Lukacs Berki2015-07-30
| | | | | -- MOS_MIGRATED_REVID=99453475
* Description redacted.Gravatar Rumou Duan2015-07-28
| | | | | -- MOS_MIGRATED_REVID=99234569
* For objc_proto_library, use root relative path of input protos to determine ↵Gravatar Chris Parsons2015-07-27
| | | | | | | | | output location instead of exec path. Prior to this fix, protos that were generated (and thus within genfiles as opposed to bin) would have their objc proto library output to the wrong location -- MOS_MIGRATED_REVID=98940823
* 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
* 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
* Simplify OptionsProvider logic.Gravatar Peter Schmitt2015-05-15
| | | | | | | | Eventually objc_options will go away but for now this reduces unnecessary logic and reduces rule/support interdependencies. -- MOS_MIGRATED_REVID=93653491
* Simplify ConfiguredTarget construction.Gravatar Peter Schmitt2015-05-15
| | | | | | | | This is part of a series of changes to reduce/remove ObjcCommon. In this case removing a method that added needless complexity. -- MOS_MIGRATED_REVID=93573019