summaryrefslogtreecommitdiffstats
path: root/gfx/graphite2/src/moz.build
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-28 14:29:10 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-28 14:29:10 +0000
commit2aa4a82499d4becd2284cdb482213d541b8804dd (patch)
treeb80bf8bf13c3766139fbacc530efd0dd9d54394c /gfx/graphite2/src/moz.build
parentInitial commit. (diff)
downloadfirefox-2aa4a82499d4becd2284cdb482213d541b8804dd.tar.xz
firefox-2aa4a82499d4becd2284cdb482213d541b8804dd.zip
Adding upstream version 86.0.1.upstream/86.0.1upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rwxr-xr-xgfx/graphite2/src/moz.build86
1 files changed, 86 insertions, 0 deletions
diff --git a/gfx/graphite2/src/moz.build b/gfx/graphite2/src/moz.build
new file mode 100755
index 0000000000..447cd86112
--- /dev/null
+++ b/gfx/graphite2/src/moz.build
@@ -0,0 +1,86 @@
+# -*- 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/.
+
+# This should contain all of the _PUBLIC_HEADERS from files.mk
+EXPORTS.graphite2 += [
+ '../geckoextra/include/GraphiteExtra.h',
+ '../geckoextra/include/GraphiteStructsForRLBox.h',
+ '../include/graphite2/Font.h',
+ '../include/graphite2/Log.h',
+ '../include/graphite2/Segment.h',
+ '../include/graphite2/Types.h',
+]
+
+# This should contain all of the _SOURCES from files.mk, except *_machine.cpp
+all_sources = [
+ '../geckoextra/src/GraphiteExtra.cpp',
+ 'CmapCache.cpp',
+ 'Code.cpp',
+ 'Collider.cpp',
+ 'Decompressor.cpp',
+ 'Face.cpp',
+ 'FeatureMap.cpp',
+ 'FileFace.cpp',
+ 'Font.cpp',
+ 'GlyphCache.cpp',
+ 'GlyphFace.cpp',
+ 'gr_char_info.cpp',
+ 'gr_face.cpp',
+ 'gr_features.cpp',
+ 'gr_font.cpp',
+ 'gr_logging.cpp',
+ 'gr_segment.cpp',
+ 'gr_slot.cpp',
+ 'Intervals.cpp',
+ 'json.cpp',
+ 'Justifier.cpp',
+ 'NameTable.cpp',
+ 'Pass.cpp',
+ 'Position.cpp',
+ 'Segment.cpp',
+ 'Silf.cpp',
+ 'Slot.cpp',
+ 'Sparse.cpp',
+ 'TtfUtil.cpp',
+ 'UtfCodec.cpp',
+]
+
+if CONFIG['CC_TYPE'] in ('clang', 'gcc'):
+ UNIFIED_SOURCES += [
+ 'direct_machine.cpp'
+ ]
+else:
+ UNIFIED_SOURCES += [
+ 'call_machine.cpp'
+ ]
+UNIFIED_SOURCES += all_sources
+
+if CONFIG['MOZ_WASM_SANDBOXING_GRAPHITE']:
+ SANDBOXED_WASM_LIBRARY_NAME = 'graphitewasm'
+ WASM_SOURCES += [
+ 'call_machine.cpp',
+ ]
+ WASM_SOURCES += all_sources
+
+# tell graphite2 not to export symbols, we'll be linking it directly with
+# thebes
+DefineAndWasmDefine('GRAPHITE2_STATIC', True)
+
+# We allow warnings for third-party code that can be updated from upstream.
+AllowCompilerWarnings()
+
+FINAL_LIBRARY = 'gkmedias'
+
+DefineAndWasmDefine('PACKAGE_VERSION', '"moz"')
+DefineAndWasmDefine('PACKAGE_BUGREPORT', '"http://bugzilla.mozilla.org/"')
+
+# disable features we don't need in the graphite2 code, to reduce code size
+for var in ('GRAPHITE2_NFILEFACE', 'GRAPHITE2_NTRACING', 'GRAPHITE2_NSEGCACHE'):
+ DefineAndWasmDefine(var, True)
+
+# provide a custom header that overrides malloc() and friends,
+# to ensure safe OOM handling. Don't do this in the wasm sandbox.
+DEFINES['GRAPHITE2_CUSTOM_HEADER'] = '"MozGrMalloc.h"'