# Copyright 2017 The Chromium Authors. All rights reserved. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. import("//build/config/chrome_build.gni") import("//build/config/ios/rules.gni") import("//build/mac/tweak_info_plist.gni") import("//build/util/process_version.gni") import("//remoting/build/config/remoting_build.gni") import("//remoting/credits/credits.gni") _remoting_ios_app_source_dir = get_path_info("./", "abspath") # Arguments # # output_name: # string, the filename of the generated .app folder # # info_plist_path: # string, path of the Info.plist template # # entitlements_path: # string, path of the .entitlements file # # deps: # string array, deps to be compiled. E.g. source sets, launch screen, icons. # # bundle_id: # (optional) string, the bundle_id. If this is not set, it will come from # either branding_Chromium or branding_Chrome template("ios_remoting_app_tmpl") { _app_target_name = target_name _info_plist_target_name = "${target_name}_tweak_info_plist" tweak_info_plist(_info_plist_target_name) { info_plist = invoker.info_plist_path args = [ "--platform=ios" ] } _launchscreen_storyboard_target_name = "${target_name}_launchscreen_storyboard" bundle_data_ib_file(_launchscreen_storyboard_target_name) { source = rebase_path("resources/LaunchScreen.storyboard", ".", _remoting_ios_app_source_dir) } # Compiles the credits files into the gen directory. _credits_resources_target_name = "${target_name}_credits_resources" remoting_credits(_credits_resources_target_name) { app_target_gen_dir = get_label_info(":$_app_target_name", "target_gen_dir") credits_gen_dir = "${app_target_gen_dir}/${_app_target_name}_credits_resources" target_dir = get_path_info("./", "abspath") gn_target = "${target_dir}:${_app_target_name}" } # Adds the compiled credits files into the bundle. _credits_bundle_target_name = "${target_name}_credits_bundle" bundle_data(_credits_bundle_target_name) { sources = get_target_outputs(":$_credits_resources_target_name") public_deps = [ ":$_credits_resources_target_name", ] outputs = [ "{{bundle_resources_dir}}/{{source_file_part}}", ] } ios_app_bundle(target_name) { output_name = invoker.output_name entitlements_path = invoker.entitlements_path info_plist_target = ":$_info_plist_target_name" if (defined(invoker.bundle_id)) { bundle_id = invoker.bundle_id } else { bundle_id = remoting_ios_bundle_id } extra_substitutions = [ "BUNDLE_IDENTIFIER=$bundle_id", "DISPLAY_NAME=$remoting_ios_display_name", "EXECUTABLE_NAME=$output_name", "PRODUCT_NAME=$output_name", "VERSION_FULL=$remoting_version_full", "VERSION_SHORT=$remoting_version_short", ] libs = [ "Accelerate.framework", "AudioToolbox.framework", "CoreAudio.framework", "CoreData.framework", "CoreMIDI.framework", "CoreVideo.framework", "GLKit.framework", "OpenGLES.framework", "Webkit.framework", "SafariServices.framework", "SystemConfiguration.framework", ] deps = invoker.deps bundle_deps = [ ":$_launchscreen_storyboard_target_name", ":$_credits_bundle_target_name", ] assert_no_deps = [ "//third_party/ffmpeg:*" ] } }