aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCommandLineOptions.java
Commit message (Collapse)AuthorAge
* Add a switch to treat any objc_library like an experimental_objc_library. ThisGravatar Cal Peyser2016-08-23
| | | | | | | will be used to perform tests of the changeover. -- MOS_MIGRATED_REVID=130943982
* Make the proto bundling behavior the default when using the new library. Take 2Gravatar Sergio Campama2016-08-17
| | | | | -- MOS_MIGRATED_REVID=130406840
* 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
* Remove --objc_generate_debug_symbols flagGravatar Dmitry Shevchenko2016-06-21
| | | | | -- MOS_MIGRATED_REVID=125354844
* 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
* 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
* Refactor ios_split_cpu to be apple_split_cpu, in preparation for using it to ↵Gravatar Chris Parsons2016-05-11
| | | | | | | | | specify platform mutli_cpu splits other than on ios_multi_cpu (such as a split on watchos) No users should be manually specifying this flag, so this shouldn't break anyone... -- MOS_MIGRATED_REVID=122037152
* Use SplitTransitionProvider to provide apple_binary's split transitionsGravatar Chris Parsons2016-05-11
| | | | | -- MOS_MIGRATED_REVID=121974561
* Adds a new flag for generation of dSYMs for all apple rules.Gravatar Dmitry Shevchenko2016-05-03
| | | | | | | | * This flag forces -g and enables dSYM bundle actions. * All instances of breakpad generation are now gated by the old --objc_generate_debug_symbols option. -- MOS_MIGRATED_REVID=121304681
* 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
* 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
* 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
* 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
* Allow passing custom entitlements for iOS signing.Gravatar Peter Schmitt2016-03-22
| | | | | | | | RELNOTES[NEW]: --extra_entitlements allows passing additional entitlements for iOS signing -- MOS_MIGRATED_REVID=117735783
* No longer automatically set _GLIBCXX_DEBUG, _GLIBCXX_DEBUG_PEDANTIC, ↵Gravatar Cal Peyser2016-02-19
| | | | | | | _GLIBCPP_CONCEPT_CHECKS for debug objc builds. -- MOS_MIGRATED_REVID=115022288
* Adds a flag to prioritize static libs over system libs and frameworks in ↵Gravatar Cal Peyser2016-02-09
| | | | | | | linker includes. -- MOS_MIGRATED_REVID=114134316
* Clang linker invocations for objc link system libraries before frameworks on ↵Gravatar Cal Peyser2016-02-01
| | | | | | | "--includes_prioritize_system_libs" flag. -- MOS_MIGRATED_REVID=113387488
* Don't load dumpsyms in configurations.Gravatar Peter Schmitt2016-01-28
| | | | | | | RELNOTES[INC]: Removed --objc_dump_syms_binary. -- MOS_MIGRATED_REVID=113186554
* Add launch_storyboard for iOS bundles (apps, extensions).Gravatar Peter Schmitt2015-11-18
| | | | | | | | | | Also introduces DottedVersion, a way to parse, represent and most of all compare Apple's version identifiers. RELNOTES: iOS apps and extensions now have launch_storyboard -- MOS_MIGRATED_REVID=108060328
* 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
* Create AppleConfiguration and AppleCommandLineOptions, and move a few items ↵Gravatar Chris Parsons2015-11-10
| | | | | | | | | | | of configuration over to the apple package. This moves a small number of configuration items over. Future changes will mostly likely follow to move yet more items. The split here is necessary as it is not only objc-related rules which require information about apple platforms and configuration -- cc rules will need this information as well to pass appropriate args to clang. -- MOS_MIGRATED_REVID=107396114
* Add experimental support for putting full paths into compile actions. This ↵Gravatar Dave MacLachlan2015-11-06
| | | | | | | | | is currently limited to compile actions started by the objc_* rules. Adding this because Xcode needs full paths to files embedded in the debug information if you want to debug while running in the simulator. RELNOTES:none -- MOS_MIGRATED_REVID=107253500
* Strict matching of architecture name to ios platform. Also refactor Platform ↵Gravatar Chris Parsons2015-11-02
| | | | | | | into a new .apple package, as it is not relevant for solely objc rules. -- MOS_MIGRATED_REVID=106709486
* Introduce --override_workspace_root blaze flag to hand-set workspace_root ↵Gravatar Googler2015-10-15
| | | | | | | | | and mainGroup in xcodeproj. RELNOTES: Adds --override_workspace_root blaze flag to hand-set workspace_root and mainGroup in xcodeproj. -- MOS_MIGRATED_REVID=105484952
* Show documentation for --objc_generate_debug_symbolsGravatar Peter Schmitt2015-10-12
| | | | | -- MOS_MIGRATED_REVID=105175791
* Allow use of signing certificate name for iOS app signing.Gravatar Peter Schmitt2015-10-09
| | | | | | | | | | The value of new flag --ios_signing_cert_name takes precedence over any specified provisioning profilefor purposes of signing. RELNOTES: --ios_signing_cert_name allows specifying a cert for iOS app signing -- MOS_MIGRATED_REVID=104961817
* Pass IOS_SDK_VERSION_OVERRIDE to environment for darwin actionsGravatar Chris Parsons2015-10-06
| | | | | -- MOS_MIGRATED_REVID=104708978
* Add a Constants.TOOLS_PREFIX constant that will serve to redirect the Bazel ↵Gravatar Lukacs Berki2015-10-05
| | | | | | | | | | | tools repository. This is a no-op refactoring CL. The actual switch will be made once everything passes with the new setup. As a side cleanup, change the awkward realAndroidSdk() / realAndroidCrosstoolTop() mechanism to a converter. -- MOS_MIGRATED_REVID=104649067
* 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
* Remove obsolete and deprecated xcode_options flag.Gravatar Googler2015-09-17
| | | | | | | RELNOTES: Remove deprecated xcode_options flag. -- MOS_MIGRATED_REVID=103311963
* 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
* Rollback of commit 47107aad33695a040b0f771f0c09d66874c4d533.Gravatar Ulf Adams2015-09-04
| | | | | | | | | | | | | | *** Reason for rollback *** Breaks a few thousand targets in the depot. It's weird, but I confirmed manually that this rollback fixes the issue. *** Original change description *** Distinguish between user-supplied ios_cpu and the default, and don't propagate the default to the XCode project control. -- MOS_MIGRATED_REVID=102340901
* Declare the xcode_options flag deprecatedGravatar Googler2015-09-02
| | | | | | | RELNOTES: deprecate the xcode_options flag -- MOS_MIGRATED_REVID=102089578
* 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
* Change default value of objc_per_proto_includes to match new value in .blazercGravatar Googler2015-08-31
| | | | | | | RELNOTES: Change default value of objc_per_proto_includes to false -- MOS_MIGRATED_REVID=101965455
* Change blaze default arguments for ObjC 'fastbuild' to match better ↵Gravatar Googler2015-08-28
| | | | | | | | | -DDEBUG=1 (from -DDEBUG). RELNOTES: change ObjC -DDEBUG in fastbuild to -DDEBUG=1 -- MOS_MIGRATED_REVID=101716428
* Distinguish between user-supplied ios_cpu and the default, and don't ↵Gravatar Michael Thvedt2015-08-27
| | | | | | | propagate the default to the XCode project control. -- MOS_MIGRATED_REVID=101644957
* Make permanent changes already in tools/blaze.blazercGravatar Googler2015-08-24
| | | | | | | RELNOTES: For Objective-C make -DDEBUG part of the -c fastbuild options -- MOS_MIGRATED_REVID=101243825
* Change Objective-C defaults to match current versions.Gravatar Googler2015-08-18
| | | | | | | RELNOTES: Change Objective-C defaults to sdk 8.4 and ios_cpu=x86_64 (64-bit simulator). -- MOS_MIGRATED_REVID=100890740
* Add '--experimental_allow_fastbuild_debug' which when set, adds ↵Gravatar Googler2015-08-05
| | | | | | | | | flag'-DDEBUG=1' to 'fastbuild' for objc. RELNOTES: Make '-DDEBUG=1' available for objc fastbuild via --experimental_allow_fastbuild_debug -- MOS_MIGRATED_REVID=99896083
* Make --android_crosstool_top default to the android_ndk_repository specified ↵Gravatar Lukacs Berki2015-07-20
| | | | | | | | | | | | | in the WORKSPACE file. The error reporting if an android_ndk_repository rule is present is not very user-friendly (it just uses the non-Android toolchain, resulting in compile errors) but given that --android_crosstool_top is an interim solution until we get reasonable multi-platform support, I suppose it's fine. As a side effect, instead of prefixing fat APK output directories with "fat-apk-", we prefix Android output directories with "android-". This makes it possible to build Android apps with zero command line options. Rejoice! -- MOS_MIGRATED_REVID=98624120
* Add two binary size optimizations when --compilation_mode=opt and ↵Gravatar Rumou Duan2015-06-23
| | | | | | | | | | | | --objc_enable_binary_stripping are specified: 1. Symbol strippings. A new strip action is registered that uses Darwin tool /usr/bin/strip to remove the symbol table of the linked binary. 2. Dead-code strippings, which uses linker flag "--dead_strip" to remove unreachable code in binary link action. RELNOTES: Add a flag "objc_enable_binary_stripping" to enable symbol and dead code strippings on linked binaries generated by ObjC rules. -- MOS_MIGRATED_REVID=96587585
* Allow objc_{library,binary} to depend on cc_library.Gravatar Peter Schmitt2015-06-05
| | | | | | | | | | | | | | | | | | | | | | This is an early version of support for this feature, likely still missing a number of edge cases. However the basic functionality should work. To allow a dependency from objc to cc, the following flags will have to be passed to bazel: --experimental_enable_objc_cc_deps --cpu=ios_i386 --crosstool_top=//tools/objc/crosstool:crosstool The feature is also compatible with --ios_multi_cpus, with the familiar values for --ios_cpu (i386, x86_64, armv7, arm64; passed instead of --cpu above). This CL does not contain any Xcode support for CC dependencies yet, they will just not show up in the generated Xcode project. (Second submission after earlier accidental submit before this CL was ready). -- MOS_MIGRATED_REVID=95110081
* Rollback of commit b66898e44d79ef67f856eaeae711bb461564a3c1.Gravatar Peter Schmitt2015-05-21
| | | | | | | | | | | | | | | | | | | | | | | | | | *** Reason for rollback *** This was accidentally submitted (why did tappresubmit not complain about no LGTM?!) *** Original change description *** Allow objc_{library,binary} to depend on cc_library. This is an early version of support for this feature, likely still missing a number of edge cases. However the basic functionality should work. To allow a dependency from objc to cc, the following flags will have to be passed to bazel: --experimental_enable_objc_cc_deps --experimental_disable_java --cpu=ios_i386 --crosstool_top=//tools/objc/crosstool:crosstool The feature is also compatible with --ios_multi_cpus, with the familiar values f... *** -- MOS_MIGRATED_REVID=94118959
* Allow objc_{library,binary} to depend on cc_library.Gravatar Peter Schmitt2015-05-21
| | | | | | | | | | | | | | | | | | | | | | | | | | This is an early version of support for this feature, likely still missing a number of edge cases. However the basic functionality should work. To allow a dependency from objc to cc, the following flags will have to be passed to bazel: --experimental_enable_objc_cc_deps --experimental_disable_java --cpu=ios_i386 --crosstool_top=//tools/objc/crosstool:crosstool The feature is also compatible with --ios_multi_cpus, with the familiar values for --ios_cpu (i386, x86_64, armv7, arm64). However, using this crosstool and any CPU defined in it (legal values are ios_i386, ios_x86_64, ios_armv7, ios_arm64) will make it impossible to use genrules with java make variables in the same build: Obviously they require java support and no that is not available for iOS CPUs. The new flag --experimental_disable_java has not been tested in any circumstances but the one enabled by this CL so use it with caution. This CL does not contain any Xcode support for CC dependencies yet, they will just not show up in the generated Xcode project. -- MOS_MIGRATED_REVID=94116942
* Ensure extension's bundle minimum OS version is at least 8.0.Gravatar Peter Schmitt2015-04-28
| | | | | | | | | | | | | | | | | This is required because Apple does not accept extensions whose plist has a minimum OS value lower than 8.0, or whose code is compiled at less than 8.0, even if it is included in an application that is compiled for, and marked compatible with, a lower OS version. Note that I didn't make this an attribute for now as there are no use cases for setting the value to anything but 8.0. If we ever need to make this user-configurable, a value can easily be set. Second submission attempt with small additional logic to distinguish xcode projects across configurations. -- MOS_MIGRATED_REVID=92267493
* Description redacted.Gravatar Peter Schmitt2015-04-24
| | | | | -- MOS_MIGRATED_REVID=91881146
* Ensure extension's bundle minimum OS version is at least 8.0.Gravatar Peter Schmitt2015-04-23
| | | | | | | | | | | | | | This is required because Apple does not accept extensions whose plist has a minimum OS value lower than 8.0, or whose code is compiled at less than 8.0, even if it is included in an application that is compiled for, and marked compatible with, a lower OS version. Note that I didn't make this an attribute for now as there are no use cases for setting the value to anything but 8.0. If we ever need to make this user-configurable, a value can easily be set. -- MOS_MIGRATED_REVID=91831415