Blob Blame History Raw
# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
# vim: set filetype=python:
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

XPCSHELL_TESTS_MANIFESTS += ['tests/unit/xpcshell.ini']

toolkit = CONFIG['MOZ_WIDGET_TOOLKIT']

if toolkit == 'windows':
    DIRS += ['windows']
elif toolkit == 'cocoa':
    DIRS += ['mac']
elif 'gtk' in toolkit:
    DIRS += ['gtk']
elif toolkit == 'android':
    DIRS += ['android']

XPIDL_SOURCES += [
    'mozILocaleService.idl',
    'mozIOSPreferences.idl',
    'nsICollation.idl',
]

XPIDL_MODULE = 'locale'

EXPORTS += [
    'DateTimeFormat.h',
    'nsCollationCID.h',
    'nsLanguageAtomService.h',
    'nsUConvPropertySearch.h',
]

EXPORTS.mozilla.intl += [
    'LocaleService.h',
    'MozLocale.h',
    'OSPreferences.h',
]

UNIFIED_SOURCES += [
    'DateTimeFormat.cpp',
    'LocaleService.cpp',
    'MozLocale.cpp',
    'nsCollation.cpp',
    'nsCollationFactory.cpp',
    'nsLanguageAtomService.cpp',
    'nsUConvPropertySearch.cpp',
    'OSPreferences.cpp',
]

EXTRA_JS_MODULES += [
    'PluralForm.jsm',
]

FINAL_LIBRARY = 'xul'

LOCAL_INCLUDES += [
    '/intl/uconv',
]

RESOURCE_FILES += [
    'language.properties',
]

prefixes = (
    'encodingsgroups',
    'langGroups',
)

for prefix in prefixes:
    input_file = prefix + '.properties'
    header = prefix + '.properties.h'
    GENERATED_FILES += [header]
    props = GENERATED_FILES[header]
    props.script = 'props2arrays.py'
    props.inputs = [input_file]

if CONFIG['ENABLE_TESTS']:
    DIRS += ['tests/gtest']