storage/moz.build
author Mozilla Releng Treescript <release+treescript@mozilla.org>
Sat, 08 May 2021 18:55:58 +0000
changeset 644486 bae05654df3ab3bf2b73e5680dfe4dd7a7a89d64
parent 636865 316fdd5817ae62591d1c63f983ab608765096ce7
permissions -rw-r--r--
no bug - Bumping Firefox l10n changesets r=release a=l10n-bump cs -> 0e1d73d951465612e34c626634eba2346bd6aac4 it -> 9dd71b355d5f0154102c5ee81c86cceba2e9233b kab -> 93c2447d88bbae65e04b6cde088631adc7fdaeb6 kk -> 6db122884619c210873e7a8d4dfe4495c0ae091b te -> 35ba7db198bf880ea5a82417150488593ef56af8

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