aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules/objc
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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* 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
* Rename LateBoundLabel#getDefault(Rule, AttributeMap, T) to #resolve().Gravatar Lukacs Berki2016-04-19
| | | | | | | Its old name was confusing because resolve() and getDefault() do radically different things: getDefault() returns a good enough lie for when BuildConfiguration is not available, and resolve() resolves the dependency when we do have a BuildConfiguration. -- MOS_MIGRATED_REVID=120212630
* Add cpp-style source processing to experimental_objc_library.Gravatar Cal Peyser2016-04-18
| | | | | -- MOS_MIGRATED_REVID=119980586
* Introduces experimental_objc_library. This rule builds objc code with the ↵Gravatar Cal Peyser2016-04-18
| | | | | | | c++ rule implementation backend and an OSX crosstool. -- MOS_MIGRATED_REVID=119954578
* Do not collide intermediate and final output dsym artifacts.Gravatar Peter Schmitt2016-04-14
| | | | | -- MOS_MIGRATED_REVID=119848254
* Rollback of commit bbf59ed1be85354457ad1d8123cc1973aa3ba298.Gravatar Florian Weikert2016-04-14
| | | | | -- MOS_MIGRATED_REVID=119843072
* Make ObjcProvider keys accessible to skylark. This is necessary to allowGravatar Cal Peyser2016-04-14
| | | | | | | skylark native access to ObjcProvider instances. -- MOS_MIGRATED_REVID=119782586
* Introduces experimental_objc_library. This rule builds objc code with the ↵Gravatar Cal Peyser2016-04-13
| | | | | | | c++ rule implementation backend and an OSX crosstool. -- MOS_MIGRATED_REVID=119660101
* ios_device attribute "xcode", which takes an "xcode_version" target to ↵Gravatar Chris Parsons2016-04-08
| | | | | | | | | select a specific xcode. RELNOTES: ios_device attribute "xcode", for declaring a specific xcode to use when selecting iOS simulators. -- MOS_MIGRATED_REVID=119317344
* Remove incorrect exec() on well_known_protos dependency.Gravatar Peter Schmitt2016-04-07
| | | | | -- MOS_MIGRATED_REVID=119224150
* Expose ObjcConfiguration to Skylark as fragment "objc" along with callable ↵Gravatar Erik Abair2016-04-07
| | | | | | | | | methods to return compiler options useful for reflection in aspects. RELNOTES[NEW]: Objective-C compiler information is now available to Skylark. -- MOS_MIGRATED_REVID=119160290
* Override any existing watch stubs and watch application bundle artifacts ↵Gravatar Googler2016-04-07
| | | | | | | when copying. -- MOS_MIGRATED_REVID=119094214
* Removing left over debug warning.Gravatar Googler2016-04-07
| | | | | -- MOS_MIGRATED_REVID=119055012
* Add 'apple_watch1_extension' and 'apple_watch_extension_binary' to support ↵Gravatar Googler2016-04-05
| | | | | | | | | building watch OS 1 apps. RELNOTES: Support apple_watch1_extension and apple_watch_extension_binary rules for creating watch OS 1 extensions. -- MOS_MIGRATED_REVID=119000703
* Introduce a seperate name to distinguish the objc provider passed from ↵Gravatar Cal Peyser2016-04-05
| | | | | | | native rules to skylark rules and that returned from skylark rules to depending native rules. This fixes a bug where a skylark rule that did not touch the objc provider would automatically pass up the objc provider it received from dependencies to dependant native rules, leading to duplicate symbol linking errors when the same objc provider was exported twice. -- MOS_MIGRATED_REVID=118947782
* Correctly generates the expected file names of the generated protos when the ↵Gravatar Googler2016-04-05
| | | | | | | names contain url, http or https. -- MOS_MIGRATED_REVID=118946808
* *_test rules now return an .xctest.dSYM bundle.Gravatar Googler2016-04-01
| | | | | -- MOS_MIGRATED_REVID=118786316
* Allow .o files as sources for objc builds.Gravatar Cal Peyser2016-04-01
| | | | | -- MOS_MIGRATED_REVID=118727286
* Add support for objc_generate_linkmap argument that controls whether a link ↵Gravatar Dave MacLachlan2016-03-31
| | | | | | | | | map is generated. R_FUTURE=cparsons -- MOS_MIGRATED_REVID=118631953
* Set -fmodules-cache-path to be rooted in the genfiles directory whenever ↵Gravatar Chris Parsons2016-03-31
| | | | | | | | | modules are enabled. Also warn when -fmodules-cache-path is explicitly set by the user (either in configuration or rule attributes) -- MOS_MIGRATED_REVID=118590843
* Rollback of commit d6dcde6bbf074b42f89b0feb6980e124c076863a.Gravatar Klaus Aehlig2016-03-30
| | | | | | | | | | | | | | | *** Reason for rollback *** Broke bazel http://ci.bazel.io/job/Bazel/417/JAVA_VERSION=1.8,PLATFORM_NAME=linux-x86_64/console by using a Guava 20 feature, while Gauva 20 is not yet released. *** Original change description *** Set -fmodules-cache-path to be rooted in the genfiles directory whenever modules are enabled. Also warn when -fmodules-cache-path is explicitly set by the user (either in configuration or rule attributes) -- MOS_MIGRATED_REVID=118555994
* Fix strip for ios_framework_binary by passing -x to strip.Gravatar Googler2016-03-30
| | | | | -- MOS_MIGRATED_REVID=118523482
* Rename swift_binary to swift_library as the intended rule is not executable.Gravatar Dmitry Shevchenko2016-03-30
| | | | | | | RELNOTES: -- MOS_MIGRATED_REVID=118518790
* Adds the dsym files to the ios_application output when using ↵Gravatar Googler2016-03-30
| | | | | | | --objc_generate_debug_symbols. These are delivered in distinct files, with an architecture identifier. -- MOS_MIGRATED_REVID=118510432
* Restrict file types allowed for "strings" attribute to ".strings".Gravatar Googler2016-03-30
| | | | | | | RELNOTES: Restrict file types allowed for "strings" attribute to ".strings". -- MOS_MIGRATED_REVID=118479031
* Set -fmodules-cache-path to be rooted in the genfiles directory whenever ↵Gravatar Chris Parsons2016-03-30
| | | | | | | | | modules are enabled. Also warn when -fmodules-cache-path is explicitly set by the user (either in configuration or rule attributes) -- MOS_MIGRATED_REVID=118478856
* Use ENTITLEMENTS_TYPE constant to specify allowed file types for ↵Gravatar Googler2016-03-30
| | | | | | | ":extra_entitlements". -- MOS_MIGRATED_REVID=118473605
* Rename ConfigurationDistinguisher.APPLICATION and ↵Gravatar Googler2016-03-30
| | | | | | | ConfigurationDistinguisher.EXTENSION to "IOS_APPLICATION" and "IOS_EXTENSION". -- MOS_MIGRATED_REVID=118468650
* Restrict file types used for "entitlements" attribute to [".entitlements", ↵Gravatar Googler2016-03-29
| | | | | | | | | ".plist"]. RELNOTES: Restrict file types used for "entitlements" attribute to [".entitlements", ".plist"] -- MOS_MIGRATED_REVID=118416261
* Propagate -isystem includes from CC deps in Xcode project generation.Gravatar Googler2016-03-29
| | | | | | | | | The lack of cc_library dependencies in generated Xcode projects can be worked around using _fully_linked.a and objc_import, but some include files still fail to propagate. In particular this affects genrule outputs and proto headers. This fixes that issue. -- MOS_MIGRATED_REVID=118397125