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
98
99
100
101
102
103
104
105
106
107
108
109
110
|
# -*- 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/.
with Files("**"):
BUG_COMPONENT = ("Toolkit", "Storage")
DIRS += ["build"]
TEST_DIRS += ["test"]
XPIDL_SOURCES += [
"mozIStorageAsyncConnection.idl",
"mozIStorageAsyncStatement.idl",
"mozIStorageBaseStatement.idl",
"mozIStorageBindingParams.idl",
"mozIStorageBindingParamsArray.idl",
"mozIStorageCompletionCallback.idl",
"mozIStorageConnection.idl",
"mozIStorageError.idl",
"mozIStorageFunction.idl",
"mozIStoragePendingStatement.idl",
"mozIStorageProgressHandler.idl",
"mozIStorageResultSet.idl",
"mozIStorageRow.idl",
"mozIStorageService.idl",
"mozIStorageStatement.idl",
"mozIStorageStatementCallback.idl",
"mozIStorageVacuumParticipant.idl",
"mozIStorageValueArray.idl",
]
XPIDL_MODULE = "storage"
EXPORTS += [
"mozStorageHelper.h",
]
EXPORTS.mozilla += [
"storage.h",
]
# NOTE When adding something to this list, you probably need to add it to the
# storage.h file too.
EXPORTS.mozilla.storage += [
"mozStorageAsyncStatementParams.h",
"mozStorageStatementParams.h",
"mozStorageStatementRow.h",
"SQLiteMutex.h",
"StatementCache.h",
"Variant.h",
"Variant_inl.h",
]
# SEE ABOVE NOTE!
UNIFIED_SOURCES += [
"FileSystemModule.cpp",
"mozStorageArgValueArray.cpp",
"mozStorageAsyncStatement.cpp",
"mozStorageAsyncStatementExecution.cpp",
"mozStorageAsyncStatementJSHelper.cpp",
"mozStorageAsyncStatementParams.cpp",
"mozStorageBindingParamsArray.cpp",
"mozStorageError.cpp",
"mozStoragePrivateHelpers.cpp",
"mozStorageResultSet.cpp",
"mozStorageRow.cpp",
"mozStorageService.cpp",
"mozStorageSQLFunctions.cpp",
"mozStorageStatement.cpp",
"mozStorageStatementJSHelper.cpp",
"mozStorageStatementParams.cpp",
"mozStorageStatementRow.cpp",
"ObfuscatingVFS.cpp",
"ReadOnlyNoLockVFS.cpp",
"SQLCollations.cpp",
"StorageBaseStatementInternal.cpp",
"TelemetryVFS.cpp",
"VacuumManager.cpp",
"Variant.cpp",
]
# These files need to be built separately because they #include variantToSQLiteT_impl.h.
SOURCES += [
"mozStorageBindingParams.cpp",
"mozStorageConnection.cpp",
]
include("/ipc/chromium/chromium-config.mozbuild")
FINAL_LIBRARY = "xul"
# Thunderbird needs the 2-argument version of fts3_tokenizer()
if CONFIG["MOZ_THUNDERBIRD"] or CONFIG["MOZ_SUITE"]:
DEFINES["MOZ_SQLITE_FTS3_TOKENIZER"] = 1
# This is the default value. If we ever change it when compiling sqlite, we
# will need to change it here as well.
DEFINES["SQLITE_MAX_LIKE_PATTERN_LENGTH"] = 50000
LOCAL_INCLUDES += [
"/dom/base",
"/third_party/sqlite3/src",
]
CXXFLAGS += CONFIG["SQLITE_CFLAGS"]
REQUIRES_UNIFIED_BUILD = True
|