| # Copyright 2016 The Tulsi Authors. All rights reserved. |
| # |
| # Licensed under the Apache License, Version 2.0 (the "License"); |
| # you may not use this file except in compliance with the License. |
| # You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| |
| # Mock BUILD file for aspect testing. |
| |
| ios_application( |
| name = "Application", |
| binary = ":Binary", |
| ) |
| |
| objc_binary( |
| name = "Binary", |
| srcs = [ |
| "Binary/srcs/main.m", |
| ], |
| deps = [ |
| ":J2ObjCLibrary", |
| ":ObjCProtoLibrary", |
| ], |
| ) |
| |
| proto_library( |
| name = "ProtoLibrary", |
| srcs = ["protolibrary.proto"], |
| ) |
| |
| objc_proto_library( |
| name = "ObjCProtoLibrary", |
| deps = [ |
| ":ProtoLibrary", |
| ], |
| ) |
| |
| j2objc_library( |
| name = "J2ObjCLibrary", |
| deps = [ |
| ":JavaLibrary", |
| ], |
| ) |
| |
| java_library( |
| name = "JavaLibrary", |
| srcs = ["file.java"], |
| ) |
| |
| ios_test( |
| name = "XCTestWithDefaultHost", |
| srcs = [ |
| "XCTestWithDefaultHost/srcs/src1.mm", |
| ], |
| ) |
| |
| ## Skylark-based tvOS rules. |
| # TODO(abaire): Move to ComplexSingle.BUILD when the rules are open sourced. |
| load( |
| "//tools/build_defs/apple:tvos.bzl", |
| "skylark_tvos_application", |
| "skylark_tvos_extension", |
| ) |
| |
| skylark_tvos_application( |
| name = "tvOSApplication", |
| bundle_id = "c.test.tvOSApplication", |
| extensions = [":tvOSExtension"], |
| infoplists = [ |
| "tvOSApplication/Info.plist", |
| ], |
| deps = [":tvOSLibrary"], |
| ) |
| |
| skylark_tvos_extension( |
| name = "tvOSExtension", |
| bundle_id = "c.test.tvOSExtension", |
| infoplists = [ |
| "tvOSExtension/Info.plist", |
| ], |
| deps = [":tvOSLibrary"], |
| ) |
| |
| objc_library( |
| name = "tvOSLibrary", |
| srcs = ["tvOSLibrary/srcs/src.m"], |
| enable_modules = True, |
| ) |
| |
| ## Skylark-based test rules. |
| load( |
| "//tools/build_defs/apple:ios.bzl", |
| "apple_product_type", |
| "skylark_ios_application", |
| "skylark_ios_extension", |
| "ios_unit_test", |
| "ios_ui_test", |
| ) |
| load("//tools/build_defs/apple:swift.bzl", "swift_library") |
| |
| skylark_ios_application( |
| name = "SkylarkApplication", |
| bundle_id = "com.google.Tulsi.Application", |
| bundle_name = "SkylarkApp", |
| extensions = [":StickerExtension"], |
| families = ["iphone"], |
| infoplists = ["Application/Info.plist"], |
| launch_storyboard = "Application/Launch.storyboard", |
| settings_bundle = ":SettingsBundle", |
| deps = [":MainLibrary"], |
| ) |
| |
| skylark_ios_application( |
| name = "SkylarkTargetApplication", |
| bundle_id = "com.google.Tulsi.TargetApplication", |
| families = ["iphone"], |
| infoplists = ["Application/Info.plist"], |
| launch_storyboard = "Application/Launch.storyboard", |
| deps = [":MainLibrary"], |
| ) |
| |
| skylark_ios_extension( |
| name = "StickerExtension", |
| asset_catalogs = ["Stickers.xcstickers/asset.png"], |
| bundle_id = "com.google.Tulsi.TargetApplication.extension", |
| families = ["iphone"], |
| infoplists = ["Ext-Info.plist"], |
| product_type = apple_product_type.messages_sticker_pack_extension, |
| ) |
| |
| objc_bundle( |
| name = "SettingsBundle", |
| bundle_imports = [ |
| "Settings.bundle/Root.plist", |
| ], |
| ) |
| |
| objc_library( |
| name = "MainLibrary", |
| srcs = [ |
| "Binary/srcs/main.m", |
| ], |
| asset_catalogs = ["Binary/Assets.xcassets/asset.png"], |
| datamodels = glob(["SimpleTest.xcdatamodeld/**"]), |
| defines = [ |
| "BINARY_ADDITIONAL_DEFINE", |
| "BINARY_ANOTHER_DEFINE=2", |
| ], |
| includes = ["Binary/includes"], |
| storyboards = ["Binary/Base.lproj/One.storyboard"], |
| deps = [ |
| ":Library", |
| ], |
| ) |
| |
| objc_library( |
| name = "Library", |
| srcs = [ |
| "Library/srcs/SrcsHeader.h", |
| "Library/srcs/src1.m", |
| "Library/srcs/src2.m", |
| "Library/srcs/src3.m", |
| "Library/srcs/src4.m", |
| ], |
| hdrs = [ |
| "Library/hdrs/HdrsHeader.h", |
| ], |
| copts = [ |
| "-DLIBRARY_COPT_DEFINE", |
| "-I/Library/absolute/include/path", |
| "-Irelative/Library/include/path", |
| ], |
| defines = ["LIBRARY_DEFINES_DEFINE=1"], |
| pch = "Library/pch/PCHFile.pch", |
| textual_hdrs = [ |
| "Library/textual_hdrs/TextualHdrsHeader.h", |
| ], |
| xibs = ["Library/xibs/xib.xib"], |
| deps = [":ObjcProtos"], |
| ) |
| |
| objc_proto_library( |
| name = "ObjcProtos", |
| uses_protobuf = 1, |
| deps = [":Protos"], |
| ) |
| |
| proto_library( |
| name = "Protos", |
| srcs = ["ProtoFile.proto"], |
| ) |
| |
| objc_library( |
| name = "XCTestCode", |
| srcs = [ |
| "XCTest/srcs/XCTests.mm", |
| ], |
| deps = [ |
| ":Library", |
| ], |
| ) |
| |
| objc_library( |
| name = "XCUITestCode", |
| srcs = [ |
| "XCUITest/srcs/XCUITests.mm", |
| ], |
| deps = [ |
| ":Library", |
| ], |
| ) |
| |
| swift_library( |
| name = "XCTestCodeSwift", |
| srcs = ["XCTest/srcs/Tests.swift"], |
| ) |
| |
| ios_unit_test( |
| name = "XCTest", |
| test_host = ":SkylarkApplication", |
| deps = [ |
| ":XCTestCode", |
| ":XCTestCodeSwift", |
| ], |
| ) |
| |
| ios_ui_test( |
| name = "XCUITest", |
| runner = "//tools/objc/sim_devices:default_runner", |
| test_host = ":SkylarkApplication", |
| deps = [ |
| ":XCUITestCode", |
| ], |
| ) |