fune/config/external/icu4x/moz.build

35 lines
1.3 KiB
Python

# -*- 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/.
# Build the ICU4X data directly into the binary file. This is an experiment that can
# be enabled by adding `ac_add_options --enable-icu4x` to your mozconfig.
# See `intl/ICU4X.md`.
if CONFIG["MOZ_ICU4X"]:
DEFINES["MOZ_ICU4X"] = 1
Library("icu4xdata")
LOCAL_INCLUDES += ["."]
# The "mangled" symbol gets prefixed by a "_" in certain platforms.
symbol_prefix = ""
if (CONFIG["OS_ARCH"] == "WINNT" and CONFIG["CPU_ARCH"] == "x86") or CONFIG[
"OS_ARCH"
] == "Darwin":
symbol_prefix = "_"
# To re-generate this file run: intl/update-icu4x.sh
DEFINES["ICU4X_DATA_FILE"] = '"icu4x.postcard"'
# In C++ this data will be available via:
#
# extern uint8_t icu4x_static_locale_data;
# uint8_t firstByte = (&icu4x_static_locale_data)[0];
DEFINES["ICU4X_DATA_SYMBOL"] = "%s%s" % (symbol_prefix, "icu4x_static_locale_data")
# This is assembly which has instructions to include the binary locale data directly.
SOURCES += [
"icu4x_data.S",
]