gecko-dev/dom/moz.build
Matthew Gaudet 3bcfc27cef Bug 1730589 - Initial Implementation of ReadableStreams using WebIDL and DOM technologies r=smaug
This patch begins re-implements ReadableStreams using WebIDL and DOM technology (vs the existing JS streams implementation).   Some more background is [here](https://docs.google.com/document/d/1MWRkF32KV60ngOY-Ip4PnKbCMvl6VK_Y9QLED8MJJxg/edit#)

This is guarded under a configure flag `--enable-dom-streams`

1. ByteStreams and ReadableStream.tee will come in future patches.
2. I intentionally crash in other parts of the DOM that require streams (Fetch, Response, Blob), until the integration work is done in future patches.

   My current plan for that integration doesn't involve re-creating the alternative 'external streams' API from SpiderMonkey's implementation, but I have yet to do enough development to verify that will work.

Differential Revision: https://phabricator.services.mozilla.com/D122643
2021-10-06 18:43:01 +00:00

125 lines
2.1 KiB
Python

# -*- 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/.
# interfaces/*/ are annotated per directory, this is for new files
with Files("**"):
BUG_COMPONENT = ("Core", "DOM: Core & HTML")
with Files("plugins/**"):
BUG_COMPONENT = ("Core", "Plug-ins")
JAR_MANIFESTS += ["jar.mn"]
interfaces = [
"base",
"html",
"events",
"sidebar",
"xul",
"security",
"storage",
"geolocation",
"notification",
"push",
"payments",
]
DIRS += ["interfaces/" + i for i in interfaces]
DIRS += [
"abort",
"animation",
"base",
"bindings",
"battery",
"browser-element",
"cache",
"canvas",
"webgpu",
"chrome-webidl",
"clients",
"commandhandler",
"credentialmanagement",
"crypto",
"debugger",
"encoding",
"events",
"fetch",
"file",
"filehandle",
"filesystem",
"flex",
"gamepad",
"geolocation",
"grid",
"html",
"jsurl",
"mathml",
"media",
"midi",
"notification",
"offline",
"power",
"push",
"quota",
"security",
"storage",
"svg",
"locales",
"locks",
"network",
"permission",
"plugins/base",
"prototype",
"indexedDB",
"system",
"ipc",
"workers",
"audiochannel",
"broadcastchannel",
"messagechannel",
"promise",
"smil",
"url",
"webauthn",
"webidl",
"webshare",
"xml",
"xslt",
"xul",
"manifest",
"vr",
"u2f",
"console",
"performance",
"webbrowserpersist",
"xhr",
"worklet",
"script",
"payments",
"websocket",
"serializers",
"serviceworkers",
"simpledb",
"reporting",
"localstorage",
"prio",
"l10n",
]
if CONFIG["MOZ_DOM_STREAMS"]:
DIRS += ["streams"]
TEST_DIRS += [
"tests",
"imptests",
]
if CONFIG["MOZ_WIDGET_TOOLKIT"] in ("gtk", "cocoa", "windows"):
TEST_DIRS += ["plugins/test"]
SPHINX_TREES["/dom"] = "docs"