# -*- 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", ]