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/.
6
7with Files("**"):
8    BUG_COMPONENT = ("Core", "Storage: localStorage & sessionStorage")
9
10MOCHITEST_MANIFESTS += ["test/mochitest.ini"]
11
12BROWSER_CHROME_MANIFESTS += ["test/browser.ini"]
13
14XPCSHELL_TESTS_MANIFESTS += ["test/unit/xpcshell.ini"]
15
16TEST_HARNESS_FILES.xpcshell.dom.localstorage.test.unit += [
17    "test/unit/databaseShadowing-shared.js",
18]
19
20TEST_DIRS += ["test/gtest"]
21
22XPIDL_SOURCES += [
23    "nsILocalStorageManager.idl",
24]
25
26XPIDL_MODULE = "dom_localstorage"
27
28EXPORTS.mozilla.dom.localstorage += [
29    "ActorsParent.h",
30    "SerializationHelpers.h",
31]
32
33EXPORTS.mozilla.dom += [
34    "LocalStorageCommon.h",
35    "LocalStorageManager2.h",
36    "LSObject.h",
37    "LSObserver.h",
38    "LSSnapshot.h",
39    "LSValue.h",
40    "LSWriteOptimizer.h",
41    "LSWriteOptimizerImpl.h",
42    "SnappyUtils.h",
43]
44
45UNIFIED_SOURCES += [
46    "ActorsChild.cpp",
47    "ActorsParent.cpp",
48    "LocalStorageCommon.cpp",
49    "LocalStorageManager2.cpp",
50    "LSDatabase.cpp",
51    "LSObject.cpp",
52    "LSObserver.cpp",
53    "LSSnapshot.cpp",
54    "LSValue.cpp",
55    "LSWriteOptimizer.cpp",
56    "ReportInternalError.cpp",
57    "SnappyUtils.cpp",
58]
59
60IPDL_SOURCES += [
61    "PBackgroundLSDatabase.ipdl",
62    "PBackgroundLSObserver.ipdl",
63    "PBackgroundLSRequest.ipdl",
64    "PBackgroundLSSharedTypes.ipdlh",
65    "PBackgroundLSSimpleRequest.ipdl",
66    "PBackgroundLSSnapshot.ipdl",
67]
68
69include("/ipc/chromium/chromium-config.mozbuild")
70
71FINAL_LIBRARY = "xul"
72
73if CONFIG["GNU_CXX"]:
74    CXXFLAGS += ["-Wno-error=shadow"]
75
76LOCAL_INCLUDES += [
77    "/dom/file/ipc",
78]
79