# Copyright (c) 2013 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/util/lastchange.gni")

action("webkit_version") {
  script = "version.py"

  template_file = "webkit_version.h.in"
  inputs = [
    lastchange_file,
    template_file,
  ]

  output_file = "$target_gen_dir/webkit_version.h"
  outputs = [
    output_file,
  ]

  args = [
    # LASTCHANGE contains "<build hash>-<ref>".  The user agent only wants the
    # "<build hash>" bit, so chop off everything after it.
    "-e",
    "LASTCHANGE=LASTCHANGE[:LASTCHANGE.find('-')]",
    "-f",
    rebase_path(lastchange_file, root_build_dir),
    rebase_path(template_file, root_build_dir),
    rebase_path(output_file, root_build_dir),
  ]
}

action("chrome_version_json") {
  script = "version.py"
  _chrome_version_path = "//chrome/VERSION"
  inputs = [
    _chrome_version_path,
  ]
  _output_file = "$root_gen_dir/CHROME_VERSION.json"
  outputs = [
    _output_file,
  ]
  args = [
    "--file",
    rebase_path(_chrome_version_path, root_build_dir),
    "--template",
    "{\"full-quoted\": \"\\\"@MAJOR@.@MINOR@.@BUILD@.@PATCH@\\\"\"}",
    "--output",
    rebase_path(_output_file, root_build_dir),
  ]
}
