15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#!/bin/bash
25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Copyright (c) 2011 The Chromium Authors. All rights reserved.
45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Use of this source code is governed by a BSD-style license that can be
55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# found in the LICENSE file.
65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# usage: make_locale_dirs.sh locale_dir [...]
85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# This script creates the Resources directory for the bundle being built by
105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# the Xcode target that calls it if the directory does not yet exist. It then
115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# changes to that directory and creates subdirectories for each locale_dir
125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# passed on the command line.
135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# This script is intended to create empty locale directories (.lproj) in a
155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Cocoa .app bundle. The presence of these empty directories is sufficient to
165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# convince Cocoa that the application supports the named localization, even if
175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# an InfoPlist.strings file is not provided. Chrome uses these empty locale
185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# directoires for its helper executable bundles, which do not otherwise
195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# require any direct Cocoa locale support.
205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)set -eu
225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)if [[ ${#} -eq 0 ]]; then
245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  echo "usage: ${0} locale_dir [...]" >& 2
255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  exit 1
265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)fi
275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)RESOURCES_DIR="${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}"
295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)if [[ ! -d "${RESOURCES_DIR}" ]]; then
305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  mkdir "${RESOURCES_DIR}"
315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)fi
325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)cd "${RESOURCES_DIR}"
345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)for dir in "${@}"; do
365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  if [[ ! -d "${dir}" ]]; then
375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    mkdir "${dir}"
385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  fi
395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)done
40