# Copyright 2014 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/locales.gni")
import("//tools/grit/grit_rule.gni")

grit("strings") {
  source = "blink_strings.grd"
  outputs = [ "grit/blink_strings.h" ] +
            process_file_template(locales_with_fake_bidi,
                                  [ "blink_strings_{{source_name_part}}.pak" ])
}
