summaryrefslogtreecommitdiffstats
path: root/toolkit/components/extensions/webidl-api/moz.build
diff options
context:
space:
mode:
Diffstat (limited to 'toolkit/components/extensions/webidl-api/moz.build')
-rw-r--r--toolkit/components/extensions/webidl-api/moz.build78
1 files changed, 78 insertions, 0 deletions
diff --git a/toolkit/components/extensions/webidl-api/moz.build b/toolkit/components/extensions/webidl-api/moz.build
new file mode 100644
index 0000000000..027c3d147f
--- /dev/null
+++ b/toolkit/components/extensions/webidl-api/moz.build
@@ -0,0 +1,78 @@
+# -*- 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 = ("WebExtensions", "General")
+
+# WebExtensions API objects and request handling internals.
+UNIFIED_SOURCES += [
+ "ExtensionAPIBase.cpp",
+ "ExtensionAPIRequest.cpp",
+ "ExtensionAPIRequestForwarder.cpp",
+ "ExtensionBrowser.cpp",
+ "ExtensionEventListener.cpp",
+ "ExtensionEventManager.cpp",
+ "ExtensionPort.cpp",
+]
+
+EXPORTS.mozilla.extensions += [
+ "ExtensionAPIBase.h",
+ "ExtensionBrowser.h",
+ "ExtensionEventManager.h",
+ "ExtensionPort.h",
+]
+
+# WebExtensions API namespaces.
+UNIFIED_SOURCES += [
+ "ExtensionAlarms.cpp",
+ "ExtensionBrowserSettings.cpp",
+ "ExtensionBrowserSettingsColorManagement.cpp",
+ "ExtensionDns.cpp",
+ "ExtensionProxy.cpp",
+ "ExtensionRuntime.cpp",
+ "ExtensionScripting.cpp",
+ "ExtensionSetting.cpp",
+ "ExtensionTest.cpp",
+]
+
+EXPORTS.mozilla.extensions += [
+ "ExtensionAlarms.h",
+ "ExtensionBrowserSettings.h",
+ "ExtensionBrowserSettingsColorManagement.h",
+ "ExtensionDns.h",
+ "ExtensionProxy.h",
+ "ExtensionRuntime.h",
+ "ExtensionScripting.h",
+ "ExtensionSetting.h",
+ "ExtensionTest.h",
+]
+
+# The following is not a real WebExtensions API, it is a test WebIDL
+# interface that includes a collection of the cases useful to unit
+# test the API request forwarding mechanism without tying it to
+# a specific WebExtensions API.
+UNIFIED_SOURCES += ["ExtensionMockAPI.cpp"]
+EXPORTS.mozilla.extensions += ["ExtensionMockAPI.h"]
+
+# Propagate the build config to be able to use it in souce code preprocessing
+# (used in mozilla::extensions::ExtensionAPIAllowed to disable the webidl
+# bindings in non-nightly builds).
+if CONFIG["MOZ_WEBEXT_WEBIDL_ENABLED"]:
+ DEFINES["MOZ_WEBEXT_WEBIDL_ENABLED"] = True
+
+include("/ipc/chromium/chromium-config.mozbuild")
+
+LOCAL_INCLUDES += [
+ "/js/xpconnect/src",
+]
+
+FINAL_LIBRARY = "xul"
+
+# Must be defined unconditionally (TC tasks doesn't account for build
+# configs and these tests do not depend on the bindings to be enabled).
+PYTHON_UNITTEST_MANIFESTS += ["test/python.ini"]
+
+include("/tools/fuzzing/libfuzzer-config.mozbuild")