chromium/content/test/ios/appex/BUILD.gn

# Copyright 2024 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//build/apple/compile_entitlements.gni")
import("//build/apple/tweak_info_plist.gni")
import("//build/config/ios/rules.gni")
import("//ios/build/chrome_build.gni")
import("//ios/build/config.gni")

tweak_info_plist("tweak_content_process_plist") {
  info_plist = "../../../app/ios/appex/content_process.plist"
}

tweak_info_plist("tweak_network_process_plist") {
  info_plist = "../../../app/ios/appex/network_process.plist"
}
tweak_info_plist("tweak_gpu_process_plist") {
  info_plist = "../../../app/ios/appex/gpu_process.plist"
}

compile_entitlements("content_process_entitlements") {
  substitutions = [ "IOS_BUNDLE_ID_PREFIX=$ios_app_bundle_id_prefix" ]
  output_name = "$target_gen_dir/content_process.appex.entitlements"
  entitlements_templates =
      [ "../../../app/ios/appex/content_process.appex.entitlements" ]
}

compile_entitlements("network_process_entitlements") {
  substitutions = [ "IOS_BUNDLE_ID_PREFIX=$ios_app_bundle_id_prefix" ]
  output_name = "$target_gen_dir/network_process.appex.entitlements"
  entitlements_templates =
      [ "../../../app/ios/appex/network_process.appex.entitlements" ]
}

compile_entitlements("gpu_process_entitlements") {
  substitutions = [ "IOS_BUNDLE_ID_PREFIX=$ios_app_bundle_id_prefix" ]
  output_name = "$target_gen_dir/gpu_process.appex.entitlements"
  entitlements_templates =
      [ "../../../app/ios/appex/gpu_process.appex.entitlements" ]
}

ios_appex_bundle("test_content_process") {
  testonly = true
  output_name = "test_content_process"

  ldflags = [ "-Wl,--ignore-auto-link-option=CoreAudioTypes" ]

  deps = [
    "//content/app/ios/appex:content_process",
    "//content/public/app",
    "//content/shell:content_shell_lib",
    "//content/test:default_content_test_launcher",
  ]
  bundle_deps = [
    "//content/shell:content_shell_framework_resources",
    "//content/shell/app/ios/resources",
  ]

  entitlements_target = ":content_process_entitlements"
  info_plist_target = ":tweak_content_process_plist"
  bundle_identifier = "$shared_bundle_id_for_test_apps.ContentProcess"
}

ios_appex_bundle("test_network_process") {
  testonly = true
  output_name = "test_network_process"

  ldflags = [ "-Wl,--ignore-auto-link-option=CoreAudioTypes" ]

  deps = [
    "//content/app/ios/appex:network_process",
    "//content/public/app",
    "//content/shell:content_shell_app",
    "//content/shell:content_shell_lib",
    "//content/test:default_content_test_launcher",
  ]
  bundle_deps = [
    "//content/shell:content_shell_framework_resources",
    "//content/shell/app/ios/resources",
  ]

  entitlements_target = ":network_process_entitlements"
  info_plist_target = ":tweak_network_process_plist"
  bundle_identifier = "$shared_bundle_id_for_test_apps.NetworkProcess"
}

ios_appex_bundle("test_gpu_process") {
  testonly = true
  output_name = "test_gpu_process"

  ldflags = [ "-Wl,--ignore-auto-link-option=CoreAudioTypes" ]

  deps = [
    "//content/app/ios/appex:gpu_process",
    "//content/public/app",
    "//content/shell:content_shell_app",
    "//content/shell:content_shell_lib",
    "//content/test:default_content_test_launcher",
  ]
  bundle_deps = [
    "//content/shell:content_shell_framework_resources",
    "//content/shell/app/ios/resources",
  ]

  entitlements_target = ":gpu_process_entitlements"
  info_plist_target = ":tweak_gpu_process_plist"
  bundle_identifier = "$shared_bundle_id_for_test_apps.GPUProcess"
}