| Commit message (Collapse) | Author | Age |
|
|
|
|
| |
RELNOTES: None.
PiperOrigin-RevId: 157857216
|
|
|
|
| |
PiperOrigin-RevId: 152264528
|
|
|
|
|
|
|
|
|
|
|
|
| |
Also:
- Move minimum os information into AppleConfiguration
- Update watchos and tvos minimum version defaulting behavior
such that, if unspecified in flags, the minimum OS is equal
to the SDK version.
- Expose Apple Platform to apple_common in skylark
--
MOS_MIGRATED_REVID=134712763
|
|
|
|
|
|
|
| |
apple_watch2_extension generates a dSYM bundle when --apple_generate_dsym is specified.
--
MOS_MIGRATED_REVID=131617351
|
|
|
|
|
|
|
| |
Previously, iphonesimulator / iphoneos platform information was being set even for watchos extensions.
--
MOS_MIGRATED_REVID=131607183
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=121987056
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=121974561
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=118786316
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
| |
InstrumentedFilesCollector.
--
MOS_MIGRATED_REVID=103642172
|
|
|
|
|
|
|
| |
BaseFunction.
--
MOS_MIGRATED_REVID=102988766
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Allows for building and linking to a framework in ios_application
* Currently only works for single arch builds
* Xcode generation produces correct target type, but is mostly untested
The implementation is very similar to that of objc_framework:
1) Build the ios_framework_binary as a dynamic library (-dynamiclib)
2) Symlink the library and public headers to a staging location, inside of "X.framework" bundle. Where X is the name under ios_framework_binary#framework_name
3) Pass the bundle content to ObjcCommon.addFrameworkImports, reusing the core of objc_framework rule implementation. This results in correctly set -F/-framework flags and allows clients to use the framework in a way they would use any SDK/3rd-party framework. It's allowed to import headers via #import <X/X.h> call.
4) Copy the binary and all resources into final application bundle under Frameworks/X.framework
5) Sign the app and nested frameworks
--
MOS_MIGRATED_REVID=100397239
|
|
|
|
|
|
|
|
| |
Eventually objc_options will go away but for now this reduces unnecessary
logic and reduces rule/support interdependencies.
--
MOS_MIGRATED_REVID=93653491
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
| |
tools/objc/BUILD.
--
MOS_MIGRATED_REVID=93447039
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
| |
--
MOS_MIGRATED_REVID=91881146
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change moves the resource compilation actions from each declaring target
to the bundle in which they're stored. This bundle is (mostly, see below) the
only thing that cares about the compiled resources. As a result, we avoid
compiling each resource many times when in a multi-architecture context.
Note that as a result of this change rules other than ios_test do no longer
add the compiled datamodels and storyboards to files to build. There (should?)
be no need for them anyhow. Also, Xcode targets will now no longer contain the
transitive closure of datamodels, only their own.
Note that in the case where the input resource is produced by a genrule the
resource compilation still happens for each architecture but we ignore the
results for all but one of the architectures to avoid bundling conflicts.
There are also some more validation checks and nicer error messages for users
when they specify illegal strings resources.
--
MOS_MIGRATED_REVID=89404405
|
|
|
|
|
|
|
| |
RELNOTES: Allow ios_application in xctest_app attribute.
--
MOS_MIGRATED_REVID=88730548
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Using the new flag works only on ios_application and ios_extension targets,
resulting in their output binaries being "universal" with all given architectures
included.
Internally this is achieved by splitting the "binary" dependency (and its transitive
dependencies) of ios_{application,extension} to be built in one of the architectures
using split transitions. The results are then combined. Since an ios_application may
depend on ios_extension, we transition back to the top-level configuration when
encoutering such a dependency using the newly introduced TOP_LEVEL transition and then
split configurations again.
RELNOTES: --ios_multi_cpus allows building fat ios_applications.
--
MOS_MIGRATED_REVID=88555540
|
|
|
|
|
|
|
|
|
| |
the resulting app.
This adds very basic run support for objc_binary targets. It simply launches them in iossim with the default device and SDK.
--
MOS_MIGRATED_REVID=87286604
|
|
In this, its first incarnation this rule provides no new functionality - all
it does is take an objc_binary and perform any bundling the objc_binary
would have done anyhow. This will allow us to remove bundling functionality
from objc_binary and add multi-architecture transitions between ios_application
and objc_binary.
However, I did remove the requirement for the infoplist attribute on bundles. We
don't actually need it (a plist is generated automatically) and this removal
makes the transition much easier.
RELNOTES: Introduce ios_application_rule.
--
MOS_MIGRATED_REVID=87194403
|