win: Fix generating location.pak.

This commit is contained in:
Cheng Zhao 2014-12-11 19:29:36 -08:00
parent d8d9dea792
commit 1bebf1cc2c
3 changed files with 38 additions and 35 deletions

View file

@ -883,13 +883,14 @@
{
'action_name': 'Make Empty Paks',
'inputs': [
'tools/posix/make_locale_paks.sh',
'tools/make_locale_paks.py',
],
'outputs': [
'<(PRODUCT_DIR)/locales'
],
'action': [
'tools/posix/make_locale_paks.sh',
'python',
'tools/make_locale_paks.py',
'<(PRODUCT_DIR)',
'<@(locales)',
],

35
tools/make_locale_paks.py Executable file
View file

@ -0,0 +1,35 @@
#!/usr/bin/env python
# usage: make_locale_paks build_dir [...]
#
# This script creates the .pak files under locales directory, it is used to fool
# the ResourcesBundle that the locale is available.
import errno
import sys
import os
def main():
target_dir = sys.argv[1]
locale_dir = os.path.join(target_dir, 'locales')
safe_mkdir(locale_dir)
for pak in sys.argv[2:]:
touch(os.path.join(locale_dir, pak + '.pak'))
def touch(filename):
with open(filename, 'w+'):
pass
def safe_mkdir(path):
try:
os.makedirs(path)
except OSError as e:
if e.errno != errno.EEXIST:
raise
if __name__ == '__main__':
sys.exit(main())

View file

@ -1,33 +0,0 @@
#!/bin/bash
# Copyright (c) 2011 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.
# usage: make_locale_paks locale_dir [...]
#
# This script creates the .pak files under locales directory, it is used to fool
# the ResourcesBundle that the locale is available.
set -eu
if [[ ${#} -eq 0 ]]; then
echo "usage: ${0} build_dir [locale_pak...]" >& 2
exit 1
fi
PRODUCT_DIR="$1"
shift
LOCALES_DIR="${PRODUCT_DIR}/locales"
if [[ ! -d "${LOCALES_DIR}" ]]; then
mkdir "${LOCALES_DIR}"
fi
cd "${LOCALES_DIR}"
for pak in "${@}"; do
if [[ ! -f "${pak}.pak" ]]; then
touch "${pak}.pak"
fi
done