Bug 1700051: part 13) Reduce accessibility of `mozInlineSpellStatus`'s constructor...
[gecko.git] / mfbt / moz.build
blobb31a26e7902b88c63865f50c5646d1fc49e81280
1 # -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
2 # vim: set filetype=python:
3 # This Source Code Form is subject to the terms of the Mozilla Public
4 # License, v. 2.0. If a copy of the MPL was not distributed with this
5 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
7 with Files("**"):
8     BUG_COMPONENT = ("Core", "MFBT")
10 Library("mfbt")
12 EXPORTS += [
13     "../third_party/rust/encoding_c_mem/include/encoding_rs_mem.h",
16 EXPORTS.mozilla = [
17     "Algorithm.h",
18     "Alignment.h",
19     "AllocPolicy.h",
20     "AlreadyAddRefed.h",
21     "Array.h",
22     "ArrayUtils.h",
23     "Assertions.h",
24     "AtomicBitfields.h",
25     "Atomics.h",
26     "Attributes.h",
27     "BinarySearch.h",
28     "BitSet.h",
29     "BloomFilter.h",
30     "Buffer.h",
31     "BufferList.h",
32     "Casting.h",
33     "ChaosMode.h",
34     "Char16.h",
35     "CheckedInt.h",
36     "CompactPair.h",
37     "Compiler.h",
38     "Compression.h",
39     "DbgMacro.h",
40     "DebugOnly.h",
41     "DefineEnum.h",
42     "DoublyLinkedList.h",
43     "EndianUtils.h",
44     "EnumeratedArray.h",
45     "EnumeratedRange.h",
46     "EnumSet.h",
47     "EnumTypeTraits.h",
48     "fallible.h",
49     "FastBernoulliTrial.h",
50     "FloatingPoint.h",
51     "FStream.h",
52     "FunctionRef.h",
53     "FunctionTypeTraits.h",
54     "HashFunctions.h",
55     "HashTable.h",
56     "HelperMacros.h",
57     "InitializedOnce.h",
58     "IntegerRange.h",
59     "IntegerTypeTraits.h",
60     "JSONWriter.h",
61     "JsRust.h",
62     "Latin1.h",
63     "Likely.h",
64     "LinkedList.h",
65     "MacroArgs.h",
66     "MacroForEach.h",
67     "MathAlgorithms.h",
68     "Maybe.h",
69     "MaybeOneOf.h",
70     "MaybeStorageBase.h",
71     "MemoryChecking.h",
72     "MemoryReporting.h",
73     "NonDereferenceable.h",
74     "NotNull.h",
75     "Opaque.h",
76     "OperatorNewExtensions.h",
77     "PairHash.h",
78     "Path.h",
79     "PodOperations.h",
80     "Poison.h",
81     "RandomNum.h",
82     "Range.h",
83     "RangedArray.h",
84     "RangedPtr.h",
85     "ReentrancyGuard.h",
86     "RefCounted.h",
87     "RefCountType.h",
88     "RefPtr.h",
89     "Result.h",
90     "ResultExtensions.h",
91     "ResultVariant.h",
92     "ReverseIterator.h",
93     "RollingMean.h",
94     "Saturate.h",
95     "Scoped.h",
96     "ScopeExit.h",
97     "SegmentedVector.h",
98     "SHA1.h",
99     "SharedLibrary.h",
100     "SmallPointerArray.h",
101     "Span.h",
102     "SplayTree.h",
103     "SPSCQueue.h",
104     "StaticAnalysisFunctions.h",
105     "TaggedAnonymousMemory.h",
106     "Tainting.h",
107     "TemplateLib.h",
108     "TextUtils.h",
109     "ThreadLocal.h",
110     "ThreadSafeWeakPtr.h",
111     "ToString.h",
112     "Tuple.h",
113     "TypedEnumBits.h",
114     "Types.h",
115     "TypeTraits.h",
116     "UniquePtr.h",
117     "UniquePtrExtensions.h",
118     "Unused.h",
119     "Utf8.h",
120     "Variant.h",
121     "Vector.h",
122     "WeakPtr.h",
123     "WrappingOperations.h",
124     "XorShift128PlusRNG.h",
127 EXPORTS["double-conversion"] = [
128     "double-conversion/double-conversion/double-conversion.h",
129     "double-conversion/double-conversion/double-to-string.h",
130     "double-conversion/double-conversion/string-to-double.h",
131     "double-conversion/double-conversion/utils.h",
134 LOCAL_INCLUDES += [
135     "/mfbt/double-conversion",
138 if CONFIG["OS_ARCH"] == "WINNT":
139     EXPORTS.mozilla += [
140         "WindowsVersion.h",
141     ]
143 if CONFIG["MOZ_TSAN"]:
144     EXPORTS.mozilla += [
145         "TsanOptions.h",
146     ]
148 UNIFIED_SOURCES += [
149     "Assertions.cpp",
150     "ChaosMode.cpp",
151     "Compression.cpp",
152     "double-conversion/double-conversion/bignum-dtoa.cc",
153     "double-conversion/double-conversion/bignum.cc",
154     "double-conversion/double-conversion/cached-powers.cc",
155     "double-conversion/double-conversion/double-to-string.cc",
156     "double-conversion/double-conversion/fast-dtoa.cc",
157     "double-conversion/double-conversion/fixed-dtoa.cc",
158     "double-conversion/double-conversion/string-to-double.cc",
159     "double-conversion/double-conversion/strtod.cc",
160     "FloatingPoint.cpp",
161     "HashFunctions.cpp",
162     "JSONWriter.cpp",
163     "Poison.cpp",
164     "RandomNum.cpp",
165     "SHA1.cpp",
166     "TaggedAnonymousMemory.cpp",
167     "UniquePtrExtensions.cpp",
168     "Unused.cpp",
169     "Utf8.cpp",
172 if CONFIG["MOZ_BUILD_APP"] not in (
173     "memory",
174     "tools/update-programs",
176     # Building MFBT tests adds a large overhead when building.
177     TEST_DIRS += ["tests"]
179 DEFINES["IMPL_MFBT"] = True
181 SOURCES += [
182     "lz4/lz4.c",
183     "lz4/lz4frame.c",
184     "lz4/lz4hc.c",
185     "lz4/xxhash.c",
188 SOURCES["lz4/xxhash.c"].flags += ["-Wno-unused-function"]
190 DisableStlWrapping()
192 if CONFIG["MOZ_NEEDS_LIBATOMIC"]:
193     OS_LIBS += ["atomic"]
195 DEFINES["LZ4LIB_VISIBILITY"] = ""