aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules/objc
Commit message (Collapse)AuthorAge
* Remove --objc_generate_debug_symbols flagGravatar Dmitry Shevchenko2016-06-21
| | | | | -- MOS_MIGRATED_REVID=125354844
* Allow importing of late loaded dynamic frameworksGravatar Googler2016-06-20
| | | | | | | | | Adds a runtime_deps attribute to compilation rules (including objc_binary) that imports a dynamic framework (generated either via the objc_framework or ios_framework rules) into an app bundle without linking against it at build time. RELNOTES: objc_binary now supports late-loaded dynamic frameworks. -- MOS_MIGRATED_REVID=125261347
* Wrap inputs to ObjcLink (via clang) invocations in an objlist, and pass the ↵Gravatar Chris Parsons2016-06-20
| | | | | | | | | | | args as a -filelist arg. This prevents certain many-arg actions from making clang unhappy. Also ensures that no -force_load artifacts are present in the filelist. Clang seems to not dedupe artifacts present in both a filelist and -force_load, causing duplicate symbol errors. -- MOS_MIGRATED_REVID=125170226
* Remove BuildConfiguration.addRoots() and the pregrepped includes directory.Gravatar Lukacs Berki2016-06-17
| | | | | | | This is to simplify the contract of BuildConfiguration.Fragment, thus making it simpler to create BuildConfigurations without unnecessary fragments and eventually create configuration fragments from Skylark. -- MOS_MIGRATED_REVID=125137625
* Rollback of commit 021dc4e1d25827f0e68a9b6a09ff5f79aa18f8a4.Gravatar Googler2016-06-17
| | | | | | | | | | | | | | | *** Reason for rollback *** Breaks some builds, e.g. googlemac/iPhone/Applecrisp/Shared/DocosLib:DocosLib *** Original change description *** When building ObjectiveC++, pass the flag -std=c++11 in addition to -stdlib=libc++. RELNOTES: When building ObjectiveC++, pass the flag -std=c++11 in addition to -stdlib=libc++. -- MOS_MIGRATED_REVID=125095396
* Remove one instance of -F interspersing with framework linking.Gravatar Chris Parsons2016-06-17
| | | | | | | Previously we were interspersing these doubly, resulting in constructs like "-F -F -F FrameworkPath" -- MOS_MIGRATED_REVID=125071017
* Description redacted.Gravatar Googler2016-06-16
| | | | | -- MOS_MIGRATED_REVID=125013752
* Support for platform_type="watchos" on apple_binary.Gravatar Chris Parsons2016-06-16
| | | | | | | | | This builds all dependencies linked against watch SDKs instead of iOS SDKs, and builds for the architectures specified in --watchos_multi_cpus RELNOTES: apple_binary supports a new platform_type attribute, which, if set to "watchos", will build dependencies for Apple's watchOS2. -- MOS_MIGRATED_REVID=124980029
* Adds a warning to users of objc_proto_library to enable the ↵Gravatar Sergio Campama2016-06-16
| | | | | | | use_objc_header_names attribute. -- MOS_MIGRATED_REVID=124955824
* Fix entitlements substitution documentation.Gravatar Peter Schmitt2016-06-16
| | | | | -- MOS_MIGRATED_REVID=124951254
* When building ObjectiveC++, pass the flag -std=c++11 in addition to ↵Gravatar Googler2016-06-15
| | | | | | | | | -stdlib=libc++. RELNOTES: When building ObjectiveC++, pass the flag -std=c++11 in addition to -stdlib=libc++. -- MOS_MIGRATED_REVID=124867581
* Improves flag handling.Gravatar Sergio Campama2016-06-15
| | | | | -- MOS_MIGRATED_REVID=124848977
* Adds deprecation warning for users of output_cpp attribute.Gravatar Sergio Campama2016-06-15
| | | | | -- MOS_MIGRATED_REVID=124843113
* Use only one list of parameters for SkylarkSignatureGravatar Damien Martin-Guillerez2016-06-14
| | | | | | | | | | | | | Optional and named parameters are now specified using `defaultValue` and `named` (and `positional`). The new structure allow for parameters that are both named and positional (which was forbidden before). This new structure will be used to give the @SkylarkCallable annotation the possibility to provide named and default arguments. It should be a functional no-op for Bazel users. -- MOS_MIGRATED_REVID=124821455
* Rollback of commit bbab724f9c3600952a65a90febf50e1118568a96.Gravatar Peter Schmitt2016-06-14
| | | | | | | | | | | | | | *** Reason for rollback *** Breaks linking for all objc targets. *** Original change description *** Wrap inputs to ObjcLink (via clang) invocations in an objlist, and pass the args as a -filelist arg. This prevents certain many-arg actions from making clang unhappy. -- MOS_MIGRATED_REVID=124781451
* Rollback of commit 0150e7fa5963fa569d9795c02fd3afe3c52ff30c.Gravatar Yun Peng2016-06-10
| | | | | | | *** Reason for rollback *** -- MOS_MIGRATED_REVID=124553522
* Rollback of commit 828a9e2f167db8c4debca6e00ee37dd030849c2f.Gravatar Yun Peng2016-06-10
| | | | | | | *** Reason for rollback *** -- MOS_MIGRATED_REVID=124549894
* Reverts the protobuf lib dependency being loaded from tools/objc, and ↵Gravatar Sergio Campama2016-06-10
| | | | | | | instead load it from //external. -- MOS_MIGRATED_REVID=124480945
* Extract the @Param annotation from @SkylarkSignatureGravatar Damien Martin-Guillerez2016-06-10
| | | | | | | | The @SkylarkCallable annotation is very limited and to extend it it is best to share a similar API than the @SkylarkSignature annotation. -- MOS_MIGRATED_REVID=124473056
* 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
* More refactor work on single-/multi- architecture accessor methods of ↵Gravatar Chris Parsons2016-06-09
| | | | | | | | | | | | | | | | | | | | | | AppleConfiguration. Additionally, tweak single-architecture ios-platform logic such that ios_multi_cpus is checked before ios_cpu. There are two contexts to note: 1. Single-architecture logic, (generally post-split), unaware of its own platform type aside from configuration. This retrieves platform type from the --apple_platform_type configuration value. a. getSingleArchPlatform() for Platform retrieval b. getSingleArchitecture() for architecture retrieval 2. Multi-architecture logic, which should be aware of its own platform type, and passes it into configuration accessors. a. getMultiArchPlatform(PlatformType) b. getMultiArchitectures(PlatformType) All callers are migrated to these methods, though some still pass IOS platform type even though they may need to be refactored to support additional platform types later. -- MOS_MIGRATED_REVID=124370652
* Wrap inputs to ObjcLink (via clang) invocations in an objlist, and pass the ↵Gravatar Chris Parsons2016-06-09
| | | | | | | | | args as a -filelist arg. This prevents certain many-arg actions from making clang unhappy. -- MOS_MIGRATED_REVID=124367172
* Move -MD and -MF(for dotd file generation) into featureGravatar Yun Peng2016-06-08
| | | | | -- MOS_MIGRATED_REVID=124355936
* Move -c and -o options into action_configGravatar Yun Peng2016-06-08
| | | | | | | | | Also moved -S and -E options into the same action_config. Since whoever consume CppCompileInfo add -c and -o options by themselves, to keep compatible with this, the original code is still kept and used, until the corresponding flag sets are added into CROSSTOOL. -- MOS_MIGRATED_REVID=124350905
* Replaced arrays by single value for extra{Positionnals,Named} in ↵Gravatar Damien Martin-Guillerez2016-06-08
| | | | | | | | | | SkylarkSignature Those arrays were checked to never have more than one value so use an empty name instead of the empty array. This simplify comprehension of the API. -- MOS_MIGRATED_REVID=124330918
* Add module map support to ExperimentalObjcLibrary, which contains ↵Gravatar Cal Peyser2016-06-07
| | | | | | | | | | | | | | experimental support for building objc code using the c++ crosstool. This will eventually replace the current module support in blaze. Note: This required injecting a CppModuleMap into the cc logic. The reason that objc cannot rely on standard CppModuleMap creation logic is that there is different naming semantics for module maps between cpp and objc. In particular: - In cc, module maps can be inputs to a compilation action. Thus, the module maps are given labels. - In objc, if interoping with swift, module maps are explicitly referenced in swift code. Thus, their names cannot contain illegal characters for swift source. Those, some name mangling occurs to get rid of "//" and ":". To enforce that this does not cause problems with compilation actions, the CPP_MODULE_COMPILE action has been disabled for the objc CcLibraryHelper.SourceCategory -- MOS_MIGRATED_REVID=124177067
* 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
* Add @loader_path to -rpath for xctest targets.Gravatar Dmitry Shevchenko2016-06-06
| | | | | | | This fixes test timeouts when the app tested is using Swift. In theory this also prevents similar problems with any code that uses dynamic libs packaged in the IPA. -- MOS_MIGRATED_REVID=123976581
* Update j2objc targets referenced by Bazel rules.Gravatar Googler2016-06-02
| | | | | -- MOS_MIGRATED_REVID=123868341
* Replace Constants.PRODUCT_NAME with a startup option --product_name=bazel and Gravatar Luis Fernando Pino Duque2016-05-31
| | | | | | | | | | | (finally) delete Constants.java. For bazel the file Constants.java is the only source of src/main/java/com/google/devtools/build/lib:common and since it was exporting guava then many dependencies needed to be fixed. -- MOS_MIGRATED_REVID=123648270
* Refactoring of Apple Platform detection and usage, to pave the way for ↵Gravatar Chris Parsons2016-05-30
| | | | | | | | | non-IOS Platforms. There are still various places which infer IOS platform type which need to be fixed, but this ensures switching to other platform types is as easy as changing an argument. -- MOS_MIGRATED_REVID=123444548
* Add documentation for apple_binary rule, making it visible for public ↵Gravatar Chris Parsons2016-05-30
| | | | | | | | | consumption. RELNOTES: Release apple_binary rule, for creating multi-architecture ("fat") objc/cc binaries and libraries, targeting ios platforms. -- MOS_MIGRATED_REVID=123435699
* Removes the generated proto sources from the header list, as it conflicts withGravatar Sergio Campama2016-05-30
| | | | | | | | module maps generation. This only affects protos generated using the new protobuf library. -- MOS_MIGRATED_REVID=123424524
* Adds "jre_deps" attribute to j2objc_library and the "--explicit_jre_deps" flagGravatar Googler2016-05-30
| | | | | | | | | which requires users to specify their JRE dependencies. RELNOTES: Adds "jre_deps" attribute to j2objc_library. -- MOS_MIGRATED_REVID=123414037
* Fixes bug where the well known types would not be added as an input to the ↵Gravatar Sergio Campama2016-05-27
| | | | | | | generating action and would fail to compile. -- MOS_MIGRATED_REVID=123320220
* [ObjcProtoAspect] Fixes an issue where targets that don't have a deps ↵Gravatar Sergio Campama2016-05-27
| | | | | | | attribute would fail requesting its deps, and crash. Also checks whether the portable_proto_filters attribute was explicitly specified. -- MOS_MIGRATED_REVID=123218724
* By default, don't create the .runfiles/workspace/external/repo dirsGravatar Kristina Chodorow2016-05-27
| | | | | | | | | | | | RELNOTES[INC]: External runfiles will now be accessible only via their .runfiles/repo/path/to/target path, not .runfiles/workspace-name/external/repo/path/to/target. If code still needs to use the legacy path, it can set --legacy_external_runfiles temporarily, but should transition to using the default location as it is more portable (see https://groups.google.com/d/msg/bazel-discuss/_Xo14sf7fHw/g7wdatTGBgAJ for details). The --legacy_external_runfiles option will be removed for the next release. -- MOS_MIGRATED_REVID=123217489
* Framework paths marked for search paths only are appropriately propagated toGravatar Cal Peyser2016-05-25
| | | | | | | xcodeproj. -- MOS_MIGRATED_REVID=123152775
* 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
* 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
* Frameworks are propagated through host apps to search paths in tests, but ↵Gravatar Cal Peyser2016-05-24
| | | | | | | are not actually linked into test bundles. -- MOS_MIGRATED_REVID=123021058
* 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
* Add framework support to ExperimentalObjcLibrary.Gravatar Cal Peyser2016-05-23
| | | | | -- MOS_MIGRATED_REVID=122988772
* Adds a translation layer for ObjcProvider values between java and skylark to ↵Gravatar Cal Peyser2016-05-23
| | | | | | | allow for the exposure of values that are not typed as skylark primatives. -- MOS_MIGRATED_REVID=122838580
* Update Bazel native rule documentation to use new ${link} syntax.Gravatar David Chen2016-05-20
| | | | | -- MOS_MIGRATED_REVID=122772973
* Propagate Apple Watch extensions dSYMs to parent ios_application.Gravatar Dmitry Shevchenko2016-05-20
| | | | | -- MOS_MIGRATED_REVID=122769355
* ipa_post_processor for ios_extensions uses PlugIns directory instead of Payload Gravatar Googler2016-05-19
| | | | | | | CLEANUP=<fixing documentation> -- MOS_MIGRATED_REVID=122743083
* Allow imports of dylib frameworks.Gravatar Peter Schmitt2016-05-19
| | | | | | | RELNOTES: objc_framework now supports dynamic frameworks. -- MOS_MIGRATED_REVID=122728042
* Add a way to set USES_SWIFT flag from Skylark.Gravatar Dmitry Shevchenko2016-05-17
| | | | | | | RELNOTES: new_objc_provider can now set the USES_SWIFT flag. -- MOS_MIGRATED_REVID=122566589
* Add deprecation warning for --objc_generate_debug_symbols.Gravatar Dmitry Shevchenko2016-05-17
| | | | | | | RELNOTES: --objc_generate_debug_symbols is now deprecated. -- MOS_MIGRATED_REVID=122432600