| OLD | NEW |
| 1 # Copyright 2016 The Chromium Authors. All rights reserved. | 1 # Copyright 2016 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 | 4 |
| 5 # This file contains rules that are shared between Mac and iOS. | 5 # This file contains rules that are shared between Mac and iOS. |
| 6 | 6 |
| 7 import("//build/toolchain/toolchain.gni") | 7 import("//build/toolchain/toolchain.gni") |
| 8 | 8 |
| 9 if (is_mac) { | 9 if (is_mac) { |
| 10 import("//build/config/mac/mac_sdk.gni") | 10 import("//build/config/mac/mac_sdk.gni") |
| 11 } else if (is_ios) { | 11 } else if (is_ios) { |
| 12 import("//build/config/ios/ios_sdk.gni") | 12 import("//build/config/ios/ios_sdk.gni") |
| 13 } | 13 } |
| 14 | 14 |
| 15 # Convert plist file to given format. |
| 16 # |
| 17 # Arguments |
| 18 # |
| 19 # source: |
| 20 # string, path to the plist file to convert |
| 21 # |
| 22 # output: |
| 23 # string, path to the converted plist, must be under $root_build_dir |
| 24 # |
| 25 # format: |
| 26 # string, the format to `plutil -convert` the plist to. |
| 27 template("convert_plist") { |
| 28 assert(defined(invoker.source), "source must be defined for $target_name") |
| 29 assert(defined(invoker.output), "output must be defined for $target_name") |
| 30 assert(defined(invoker.format), "format must be defined for $target_name") |
| 31 |
| 32 action(target_name) { |
| 33 forward_variables_from(invoker, |
| 34 [ |
| 35 "visibility", |
| 36 "testonly", |
| 37 "deps", |
| 38 ]) |
| 39 |
| 40 script = "//build/config/mac/xcrun.py" |
| 41 sources = [ |
| 42 invoker.source, |
| 43 ] |
| 44 outputs = [ |
| 45 invoker.output, |
| 46 ] |
| 47 args = [ |
| 48 "plutil", |
| 49 "-convert", |
| 50 invoker.format, |
| 51 "-o", |
| 52 rebase_path(invoker.output, root_out_dir), |
| 53 rebase_path(invoker.source, root_out_dir), |
| 54 ] |
| 55 } |
| 56 } |
| 57 |
| 15 # The base template used to generate Info.plist files for iOS and Mac apps and | 58 # The base template used to generate Info.plist files for iOS and Mac apps and |
| 16 # frameworks. | 59 # frameworks. |
| 17 # | 60 # |
| 18 # Arguments | 61 # Arguments |
| 19 # | 62 # |
| 20 # plist_templates: | 63 # plist_templates: |
| 21 # string array, paths to plist files which will be used for the bundle. | 64 # string array, paths to plist files which will be used for the bundle. |
| 22 # | 65 # |
| 23 # executable_name: | 66 # executable_name: |
| 24 # string, name of the generated target used for the product | 67 # string, name of the generated target used for the product |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 59 "-s=GCC_VERSION=com.apple.compilers.llvm.clang.1_0", | 102 "-s=GCC_VERSION=com.apple.compilers.llvm.clang.1_0", |
| 60 "-s=PRODUCT_NAME=$executable_name", | 103 "-s=PRODUCT_NAME=$executable_name", |
| 61 "-s=XCODE_BUILD=$xcode_build", | 104 "-s=XCODE_BUILD=$xcode_build", |
| 62 "-s=XCODE_VERSION=$xcode_version", | 105 "-s=XCODE_VERSION=$xcode_version", |
| 63 "-o=" + rebase_path(outputs[0], root_build_dir), | 106 "-o=" + rebase_path(outputs[0], root_build_dir), |
| 64 "-f=" + invoker.format, | 107 "-f=" + invoker.format, |
| 65 ] + rebase_path(sources, root_build_dir) | 108 ] + rebase_path(sources, root_build_dir) |
| 66 args = [ "@{{response_file_name}}" ] | 109 args = [ "@{{response_file_name}}" ] |
| 67 forward_variables_from(invoker, | 110 forward_variables_from(invoker, |
| 68 [ | 111 [ |
| 112 "deps", |
| 69 "testonly", | 113 "testonly", |
| 70 "deps", | 114 "visibility", |
| 71 ]) | 115 ]) |
| 72 } | 116 } |
| 73 } | 117 } |
| 74 | 118 |
| 75 # This is used as the base template for both iOS and Mac frameworks. | 119 # This is used as the base template for both iOS and Mac frameworks. |
| 76 # | 120 # |
| 77 # By default, the bundle target this template generates does not link the | 121 # By default, the bundle target this template generates does not link the |
| 78 # resulting framework into anything that depends on it. If a dependency wants | 122 # resulting framework into anything that depends on it. If a dependency wants |
| 79 # a link-time (as well as build-time) dependency on the framework bundle, | 123 # a link-time (as well as build-time) dependency on the framework bundle, |
| 80 # depend against "$target_name+link". If only the build-time dependency is | 124 # depend against "$target_name+link". If only the build-time dependency is |
| (...skipping 236 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 317 "$target_gen_dir/{{source_name_part}}.nib", | 361 "$target_gen_dir/{{source_name_part}}.nib", |
| 318 ] | 362 ] |
| 319 args = [ | 363 args = [ |
| 320 "--input", | 364 "--input", |
| 321 "{{source}}", | 365 "{{source}}", |
| 322 "--output", | 366 "--output", |
| 323 rebase_path("$target_gen_dir/{{source_name_part}}.nib"), | 367 rebase_path("$target_gen_dir/{{source_name_part}}.nib"), |
| 324 ] + ibtool_flags | 368 ] + ibtool_flags |
| 325 } | 369 } |
| 326 } | 370 } |
| OLD | NEW |