aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules/objc
Commit message (Collapse)AuthorAge
* Description redacted.Gravatar Googler2015-04-21
| | | | | -- MOS_MIGRATED_REVID=91617486
* Refactor link command line to live in CompilationSupport.Gravatar Peter Schmitt2015-04-21
| | | | | | | Also simplifies command line construction and removes redundant linker arguments. -- MOS_MIGRATED_REVID=91613561
* RELNOTES:Observe "non_propagated_deps" on objc rules in generated XCode ↵Gravatar Googler2015-04-16
| | | | | | | project files. -- MOS_MIGRATED_REVID=91300378
* Check exports for J2ObjcSrcsProvider.Gravatar Googler2015-04-16
| | | | | -- MOS_MIGRATED_REVID=91298191
* Quote %sdk_version% and %sim_device% in the template var.Gravatar Googler2015-04-15
| | | | | | | Make 'iPhone 5s' the default sim device until ios_simulator_version is bumped up to 8.2. -- MOS_MIGRATED_REVID=91122850
* Clarify requirement for source file on objc_binary.Gravatar Peter Schmitt2015-04-15
| | | | | -- MOS_MIGRATED_REVID=91100927
* objc: Add flag to disable per-proto includesGravatar Daniel Wagner-Hall2015-04-10
| | | | | -- MOS_MIGRATED_REVID=90750827
* objc: Preserve existing version strings if no value is specified to ↵Gravatar Daniel Wagner-Hall2015-04-09
| | | | | | | --embed_label -- MOS_MIGRATED_REVID=90723863
* objc protos: Pass up dep on C++ runtime if depending on C++ APIGravatar Daniel Wagner-Hall2015-04-08
| | | | | -- MOS_MIGRATED_REVID=90543040
* objc: Pass --embed_label to iOS application Info.plist filesGravatar Daniel Wagner-Hall2015-04-08
| | | | | -- MOS_MIGRATED_REVID=90455131
* Pull compilation support out of ObjcActionsBuilderGravatar Daniel Wagner-Hall2015-04-08
| | | | | -- MOS_MIGRATED_REVID=90441648
* --instrumentation_filter now works with Objective C.Gravatar Googler2015-04-01
| | | | | | | | | | | | Added "-Tests$" to the default instrumentation_filter, this is the typical pattern for Objective C. All sources are included in ObjcCommon.SOURCE. Sources from targets which match the current instrumentation_filter are included in ObjcCommon.INSTRUMENTED_SOURCE. GCNOs are added to ObjcCommon.GCNO iff the source they originate from is included in from a target which matches the instrumentation_filter. RELNOTES: --instrumentation_filter now works with Objective C coverage. -- MOS_MIGRATED_REVID=90076465
* Always define OS_IOS in iOS builds.Gravatar Peter Schmitt2015-03-31
| | | | | | | RELNOTES: Always define OS_IOS in iOS builds. -- MOS_MIGRATED_REVID=89969990
* Actually force loading of optional objc labelsGravatar Daniel Wagner-Hall2015-03-30
| | | | | -- MOS_MIGRATED_REVID=89697088
* Sign bundles for device if ios_multi_cpu contains device cpus.Gravatar Peter Schmitt2015-03-26
| | | | | | | Introduces a restriction that prohibits using both simulator and device architectures for ios_multi_cpus in the same build. -- MOS_MIGRATED_REVID=89597247
* Compile objc resources when bundling, not at each target.Gravatar Peter Schmitt2015-03-24
| | | | | | | | | | | | | | | | | | | | | | 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
* Line break after . rather than beforeGravatar Daniel Wagner-Hall2015-03-24
| | | | | -- MOS_MIGRATED_REVID=89392921
* Only use a single copy of a nested bundle with ios_multi_cpus.Gravatar Peter Schmitt2015-03-23
| | | | | | | | | | | | We generate a nested bundle for each architecture specified in ios_multi_cpus which would cause any artifacts generated by these rules (such as info plists or compiled resource files) to clash in the final application bundle (where the bundle directory only exists once). For now just pick one architecture at random to store the bundle in - unfortunately we still generate the bundle for all architectures. -- MOS_MIGRATED_REVID=89152199
* Remove common java code between objc tools and rules.Gravatar Peter Schmitt2015-03-23
| | | | | | | | | | As we are releasing the tools somewhat independently of the rules these utility dependencies make life a lot harder. I'm sad about losing some of the enum type-safety but being able to treat the code independently is more than worth it. -- MOS_MIGRATED_REVID=89137624
* Pass pre-processed label to Xcodegen so it can be used as an Xcode target ↵Gravatar Matthew DeVore2015-03-23
| | | | | | | | | name without any extra work in Xcodegen. Use this label to determ ine the *correct* built library. -- MOS_MIGRATED_REVID=89135635
* Add xctest_app ipa file to files-to-buildGravatar Matthew DeVore2015-03-23
| | | | | -- MOS_MIGRATED_REVID=89131807
* Only load default_provisioning_profile if we need oneGravatar Daniel Wagner-Hall2015-03-20
| | | | | | | We don't need a provisioning profile if we're building for a simulator -- MOS_MIGRATED_REVID=89098211
* objc: Only load dump_syms if we're actually going to use itGravatar Daniel Wagner-Hall2015-03-20
| | | | | -- MOS_MIGRATED_REVID=89095609
* Configurable attributes for ios_cpu should work under ios_multi_cpus.Gravatar Peter Schmitt2015-03-20
| | | | | -- MOS_MIGRATED_REVID=89038414
* Replace @BlazeRule with a getMetadata() method. This lets us avoid Java ↵Gravatar Googler2015-03-20
| | | | | | | | | | | | | | | | | Reflection, and saves ~15% of initialization time in []RuleClassProvider.create(). Before change: Over 14 samples, average = 976 median = 969.9 After change: Over 14 samples, average = 811.5 median = 813.9 -- MOS_MIGRATED_REVID=89036261
* Prevent clashing xcode targets for multiple architectures.Gravatar Peter Schmitt2015-03-20
| | | | | | | | | | | Without this change we create a xcode target for each combination (target, architecture) which causes the xcode project generation to blow up: Xcode transparently handles architectures. Eventually we want to match Xcode's behaviour but for now we export just a single architecture's xcode targets which should allow developers to work in xcode as before while preserving multi-architecture compilation for IPAs in blaze. -- MOS_MIGRATED_REVID=88973190
* Use //external:objc_proto_lib instead of a googlemac path for objc_proto_libraryGravatar Daniel Wagner-Hall2015-03-20
| | | | | -- MOS_MIGRATED_REVID=88964412
* Split actoolzip and ibtoolzip into separate binariesGravatar Daniel Wagner-Hall2015-03-18
| | | | | | | | Have actoolzip abs-ify the partial info plist path because otherwise it picks seemingly random directories to which to output the info plist files. -- MOS_MIGRATED_REVID=88851706
* Simplify actoolzip argument flowGravatar Daniel Wagner-Hall2015-03-18
| | | | | -- MOS_MIGRATED_REVID=88789823
* Allow ios_application in xctest_app attribute.Gravatar Peter Schmitt2015-03-16
| | | | | | | RELNOTES: Allow ios_application in xctest_app attribute. -- MOS_MIGRATED_REVID=88730548
* Split ios_application configurations based on --ios_multi_cpus.Gravatar Peter Schmitt2015-03-16
| | | | | | | | | | | | | | | | | | 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
* RELNOTES: Allow users to set the simulated device, SDK, and environment from ↵Gravatar Googler2015-03-13
| | | | | | | the command line when running an objc_binary or ios_application. -- MOS_MIGRATED_REVID=88544811
* Move bundle_id storage from BundleMergeControlBytes to Bundling to fix a ↵Gravatar Googler2015-03-13
| | | | | | | | | case of nested bundles. RELNOTES: objc: Fixes a case where nested bundle would pick up parent bundle_id value -- MOS_MIGRATED_REVID=88372062
* structured_resources allows directories in .app.Gravatar Peter Schmitt2015-03-11
| | | | | | | RELNOTES: objc_* rules can use structured_resources -- MOS_MIGRATED_REVID=88337360
* Compiling protos should generate coverage files(.gcno) if in coverage mode.Gravatar Googler2015-03-11
| | | | | -- MOS_MIGRATED_REVID=88236380
* Allow ios_test to override the GCOV environment variableGravatar Daniel Wagner-Hall2015-03-10
| | | | | -- MOS_MIGRATED_REVID=88218457
* RELNOTES: Added ios_memleaks flag which when enabled will check the test ↵Gravatar Googler2015-03-05
| | | | | | | application for memory leaks. -- MOS_MIGRATED_REVID=87839695
* Add J2ObjC support for proto option: "objc_class_prefix", which provides ↵Gravatar Googler2015-03-05
| | | | | | | prefix names for generated protos. -- MOS_MIGRATED_REVID=87539098
* Automated [] rollback of [].Gravatar Matthew DeVore2015-03-05
| | | | | | | | | | | | | *** Reason for rollback *** This is not needed thanks to blaze query. *** Original change description *** Make xctest_app's .ipa an implicit output so that scripts external to Bazel can access it. -- MOS_MIGRATED_REVID=87507266
* Scope the paths of objc compilation artifacts from J2Objc-generated code ↵Gravatar Googler2015-03-05
| | | | | | | using both the associated Java target label and the binary/test target that generates the compilation action. This fixes a bug in which two binary/test targets containing the same Java target to translate leads to shared actions when users execute more than one such binary/test targets in a single Blaze invocation. -- MOS_MIGRATED_REVID=87364125
* RELNOTES: Invoking blaze run on an objc_binary target launches iossim with ↵Gravatar Googler2015-03-04
| | | | | | | | | 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
* Actually use bundles attribute in objc_import.Gravatar Peter Schmitt2015-03-04
| | | | | | | | This is left over from the abstract rules refactor where I added this attribute to objc_import but not actually any code to use it. -- MOS_MIGRATED_REVID=87284690
* Introduce ios_application rule.Gravatar Peter Schmitt2015-02-25
| | | | | | | | | | | | | | | | | 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
* Pass bundle_id attribute to PlMerge if it is explicitly setGravatar Googler2015-02-25
| | | | | | | | | * Adds primary and fallback bundle ID fields * Adds conflict resolution that considers IDs in order: plist file, primary ID (set in BUILD file), fallback ID (Blaze default). If plist and primary are both set, they should be equal, otherwise an error is thrown. -- MOS_MIGRATED_REVID=87106031
* Make xctest_app's .ipa an implicit output so that scripts external to Bazel ↵Gravatar Matthew DeVore2015-02-24
| | | | | | | can access it. -- MOS_MIGRATED_REVID=87086924
* Add the j2objc libraries as dependencies in IosTest.Gravatar Googler2015-02-24
| | | | | -- MOS_MIGRATED_REVID=87083899
* Change default xcode_options to DebugGravatar Daniel Wagner-Hall2015-02-23
| | | | | | | Having a random non-Debug non-Release xcode_options doesn't serve any useful purpose. -- MOS_MIGRATED_REVID=86999601
* Don't allow bundles in objc_* deps.Gravatar Peter Schmitt2015-02-23
| | | | | | | | | Use the "bundles" attribute instead. RELNOTES: Use "bundles" instead of "deps" to depend on bundles in objc rules. -- MOS_MIGRATED_REVID=86985618
* Xcode project files: Add dependencies on ios_extension from objc_binary ↵Gravatar Matthew DeVore2015-02-23
| | | | | | | | | correctly. ios_extension is a direct dependency of the objc_binary, but none of the transitive dependencies should be added to the build phases, since this would cause the symbols of the linked objc_binary to contain everything the ios_extension has, which we don't want. -- MOS_MIGRATED_REVID=86920610
* Add a dummy source file to the Xcode targets for ios_extensions to make ↵Gravatar Matthew DeVore2015-02-22
| | | | | | | Xcode happy. -- MOS_MIGRATED_REVID=86910779