summaryrefslogtreecommitdiffstats
path: root/intl/locale/moz.build
blob: 10e7c5cfb172afaca4015a8264442d6bacf26a78 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
# -*- 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.toml"]

TESTING_JS_MODULES += [
    "tests/LangPackMatcherTestUtils.sys.mjs",
]

toolkit = CONFIG["MOZ_WIDGET_TOOLKIT"]

if toolkit == "windows":
    DIRS += ["windows"]
elif toolkit in ("cocoa", "uikit"):
    DIRS += ["mac"]
elif toolkit == "gtk":
    DIRS += ["gtk"]
elif toolkit == "android":
    DIRS += ["android"]

XPIDL_SOURCES += [
    "mozILocaleService.idl",
    "mozIOSPreferences.idl",
]

XPIDL_MODULE = "locale"

EXPORTS += [
    "nsLanguageAtomService.h",
    "nsUConvPropertySearch.h",
]

EXPORTS.mozilla.intl += [
    "AppDateTimeFormat.h",
    "LocaleService.h",
    "MozLocaleBindings.h",
    "OSPreferences.h",
    "Quotes.h",
]

UNIFIED_SOURCES += [
    "AppDateTimeFormat.cpp",
    "LocaleService.cpp",
    "nsLanguageAtomService.cpp",
    "nsUConvPropertySearch.cpp",
    "OSPreferences.cpp",
    "Quotes.cpp",
]

EXTRA_JS_MODULES += [
    "LangPackMatcher.sys.mjs",
]

XPCOM_MANIFESTS += [
    "components.conf",
]

FINAL_LIBRARY = "xul"

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

RESOURCE_FILES += [
    "language.properties",
]

prefixes = ("encodingsgroups",)

for prefix in prefixes:
    input_file = prefix + ".properties"
    header = prefix + ".properties.h"
    GeneratedFile(header, script="props2arrays.py", inputs=[input_file])

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

if CONFIG["COMPILE_ENVIRONMENT"]:
    CbindgenHeader(
        "fluent_langneg_ffi_generated.h",
        inputs=["/intl/locale/rust/fluent-langneg-ffi"],
    )
    CbindgenHeader(
        "oxilangtag_ffi_generated.h", inputs=["/intl/locale/rust/oxilangtag-ffi"]
    )
    CbindgenHeader(
        "unic_langid_ffi_generated.h", inputs=["/intl/locale/rust/unic-langid-ffi"]
    )

    EXPORTS.mozilla.intl += [
        "!fluent_langneg_ffi_generated.h",
        "!oxilangtag_ffi_generated.h",
        "!unic_langid_ffi_generated.h",
    ]