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
111
112
113
|
# -*- 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/.
SPHINX_TREES["default-browser-agent"] = "docs"
DIRS += ["proxy"]
UNIFIED_SOURCES += [
"Cache.cpp",
"common.cpp",
"DefaultAgent.cpp",
"DefaultBrowser.cpp",
"DefaultPDF.cpp",
"EventLog.cpp",
"Policy.cpp",
"Registry.cpp",
"ScheduledTask.cpp",
"ScheduledTaskRemove.cpp",
"SetDefaultBrowser.cpp",
"Telemetry.cpp",
"UtfConvert.cpp",
"WindowsMutex.cpp",
]
SOURCES += [
"/third_party/WinToast/wintoastlib.cpp",
"/toolkit/mozapps/update/common/readstrings.cpp",
"Notification.cpp",
]
# Suppress warnings from third-party code.
SOURCES["/third_party/WinToast/wintoastlib.cpp"].flags += [
"-Wno-implicit-fallthrough",
"-Wno-nonportable-include-path", # Needed for wintoastlib.h including "Windows.h"
]
SOURCES["Notification.cpp"].flags += [
"-Wno-nonportable-include-path", # Needed for wintoastlib.h including "Windows.h"
]
EXPORTS.mozilla += [
"DefaultAgent.h",
"WindowsMutex.h",
]
USE_LIBS += [
"jsoncpp",
]
LOCAL_INCLUDES += [
"/browser/components/shell/",
"/other-licenses/nsis/Contrib/CityHash/cityhash",
"/third_party/WinToast",
"/toolkit/components/jsoncpp/include",
"/toolkit/mozapps/update/common",
]
OS_LIBS += [
"advapi32",
"bcrypt",
"comsupp",
"crypt32",
"kernel32",
"netapi32",
"ole32",
"oleaut32",
"rpcrt4",
"shell32",
"shlwapi",
"taskschd",
"userenv",
"wininet",
"ws2_32",
"ntdll",
]
XPIDL_SOURCES += [
"nsIDefaultAgent.idl",
"nsIWindowsMutex.idl",
]
XPIDL_MODULE = "default-agent"
XPCOM_MANIFESTS += [
"components.conf",
]
XPCSHELL_TESTS_MANIFESTS += ["tests/xpcshell/xpcshell.toml"]
# If defines are added to this list that are required by the Cache,
# SetDefaultBrowser, or their dependencies (Registry, EventLog, common),
# tests/gtest/moz.build will need to be updated as well.
for var in ("MOZ_APP_BASENAME", "MOZ_APP_DISPLAYNAME", "MOZ_APP_VENDOR"):
DEFINES[var] = '"%s"' % CONFIG[var]
DEFINES["UNICODE"] = True
DEFINES["_UNICODE"] = True
FINAL_TARGET_FILES += ["defaultagent.ini"]
FINAL_LIBRARY = "xul"
if CONFIG["ENABLE_TESTS"]:
DIRS += ["tests/gtest"]
with Files("**"):
BUG_COMPONENT = ("Toolkit", "Default Browser Agent")
EXTRA_JS_MODULES.backgroundtasks += [
"BackgroundTask_defaultagent.sys.mjs",
]
|