# Copyright 2015 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.

# This file contains the list of outputs generated by template_formatter.py.
# To keep repetetive work down, the lists are generated from the languages and
# a placeholder, e.g. some/dir/${lang}/file.ext is expanded by replacing ${lang}
# by all languages. The *_path variables for per-language types (adml, doc etc.)
# contain ${lang} in unexpanded form. They are passed to the scripts to do the
# replacement there.

policy_templates_base_dir = "$root_gen_dir/chrome/app/policy"

# Languages we're going to process. Should match the XX-YY of the translated
# policy_templates_XX-YY.json files, see policy_templates.grd.
policy_templates_languages = [
  "am",
  "ar-EG",
  "bg-BG",
  "ms-BN",
  "ca-ES",
  "cs-CZ",
  "da-DK",
  "de-DE",
  "el-GR",
  "en-GB",
  "en-US",
  "es-ES",
  "es-419",
  "et-EE",
  "fa-IR",
  "fi-FI",
  "fil",
  "fr-FR",
  "gu-IN",
  "he-IL",
  "hi-IN",
  "hr-HR",
  "hu-HU",
  "id-ID",
  "it-IT",
  "ja-JP",
  "kn-IN",
  "ko-KR",
  "lt-LT",
  "lv-LV",
  "ml",
  "mr-IN",
  "ms-MY",
  "nl-NL",
  "nb-NO",
  "pl-PL",
  "pt-BR",
  "pt-PT",
  "ro-RO",
  "ru-RU",
  "sk-SK",
  "sl-SI",
  "Cy-sr-SP",
  "sv-SE",
  "sw-KE",
  "ta-IN",
  "te-IN",
  "th-TH",
  "tr-TR",
  "uk-UA",
  "vi-VN",
  "zh-CN",
  "zh-TW",
]

# Macs use a slightly different naming convention:
#   - '_' instead of '-'
#   - 'en' instead of 'en-US'
mac_policy_templates_languages = [
  "am",
  "ar_EG",
  "bg_BG",
  "ms_BN",
  "ca_ES",
  "cs_CZ",
  "da_DK",
  "de_DE",
  "el_GR",
  "en_GB",
  "en",
  "es_ES",
  "es_419",
  "et_EE",
  "fa_IR",
  "fi_FI",
  "fil",
  "fr_FR",
  "gu_IN",
  "he_IL",
  "hi_IN",
  "hr_HR",
  "hu_HU",
  "id_ID",
  "it_IT",
  "ja_JP",
  "kn_IN",
  "ko_KR",
  "lt_LT",
  "lv_LV",
  "ml",
  "mr_IN",
  "ms_MY",
  "nl_NL",
  "nb_NO",
  "pl_PL",
  "pt_BR",
  "pt_PT",
  "ro_RO",
  "ru_RU",
  "sk_SK",
  "sl_SI",
  "Cy_sr_SP",
  "sv_SE",
  "sw_KE",
  "ta_IN",
  "te_IN",
  "th_TH",
  "tr_TR",
  "uk_UA",
  "vi_VN",
  "zh_CN",
  "zh_TW",
]

policy_templates_languages_str = ""
foreach(lang, policy_templates_languages) {
  # Note: The final , is filtered out by scripts. There's no string.join here...
  policy_templates_languages_str += lang + ","
}

# Translations. Grit translates policy_templates.json to all languages first.
policy_templates_translation_json_path =
    "$policy_templates_base_dir/translations/policy_templates_\${lang}.json"
policy_templates_translation_outputs = []
foreach(lang, policy_templates_languages) {
  policy_templates_translation_outputs += [
    "$policy_templates_base_dir/translations/policy_templates_${lang}.json",
  ]
}

# Android outputs.
policy_templates_android_policy_path =
    "$policy_templates_base_dir/android/values-v21/restriction_values.xml"
policy_templates_android_outputs = [ policy_templates_android_policy_path ]

# Common outputs.
policy_templates_doc_path =
    "$policy_templates_base_dir/common/html/\${lang}/chrome_policy_list.html"
policy_templates_common_outputs = []
foreach(lang, policy_templates_languages) {
  policy_templates_common_outputs += [
    "$policy_templates_base_dir/common/html/${lang}/chrome_policy_list.html",
  ]
}

# Linux outputs.
policy_templates_json_path =
    "$policy_templates_base_dir/linux/examples/chrome.json"
policy_templates_linux_outputs = [ policy_templates_json_path ]

# Mac outputs.
policy_templates_plist_path =
    "$policy_templates_base_dir/mac/app-Manifest.plist"
policy_templates_plist_strings_path =
    "$policy_templates_base_dir/mac/strings/\${lang}.lproj/Localizable.strings"
policy_templates_mac_outputs = [ policy_templates_plist_path ]
foreach(lang, mac_policy_templates_languages) {
  policy_templates_mac_outputs += [
    "$policy_templates_base_dir/mac/strings/${lang}.lproj/Localizable.strings",
  ]
}

# Windows outputs.
policy_templates_win_reg_path =
    "$policy_templates_base_dir/windows/examples/chrome.reg"
policy_templates_win_admx_path =
    "$policy_templates_base_dir/windows/admx/chrome.admx"
policy_templates_win_adm_path =
    "$policy_templates_base_dir/windows/adm/\${lang}/chrome.adm"
policy_templates_win_adml_path =
    "$policy_templates_base_dir/windows/admx/\${lang}/chrome.adml"
policy_templates_win_outputs = [
  policy_templates_win_reg_path,
  policy_templates_win_admx_path,
]
foreach(lang, policy_templates_languages) {
  policy_templates_win_outputs += [
    "$policy_templates_base_dir/windows/adm/${lang}/chrome.adm",
    "$policy_templates_base_dir/windows/admx/${lang}/chrome.adml",
  ]
}

# Additional Windows outputs for branded builds.
policy_templates_win_google_admx_path =
    "$policy_templates_base_dir/windows/admx/google.admx"
policy_templates_win_google_adml_path =
    "$policy_templates_base_dir/windows/admx/\${lang}/google.adml"
policy_templates_win_google_outputs = [ policy_templates_win_google_admx_path ]
foreach(lang, policy_templates_languages) {
  policy_templates_win_google_outputs +=
      [ "$policy_templates_base_dir/windows/admx/${lang}/google.adml" ]
}

# Chrome OS outputs.
policy_templates_chromeos_admx_path =
    "$policy_templates_base_dir/chromeos/admx/chromeos.admx"
policy_templates_chromeos_adml_path =
    "$policy_templates_base_dir/chromeos/admx/\${lang}/chromeos.adml"
policy_templates_chromeos_outputs = [ policy_templates_chromeos_admx_path ]
foreach(lang, policy_templates_languages) {
  policy_templates_chromeos_outputs +=
      [ "$policy_templates_base_dir/chromeos/admx/${lang}/chromeos.adml" ]
}

# Additional Chrome OS outputs for branded builds.
policy_templates_chromeos_google_admx_path =
    "$policy_templates_base_dir/chromeos/admx/google.admx"
policy_templates_chromeos_google_adml_path =
    "$policy_templates_base_dir/chromeos/admx/\${lang}/google.adml"
policy_templates_chromeos_google_outputs =
    [ policy_templates_chromeos_google_admx_path ]
foreach(lang, policy_templates_languages) {
  policy_templates_chromeos_google_outputs +=
      [ "$policy_templates_base_dir/chromeos/admx/${lang}/google.adml" ]
}
