Bug 1913305 - Add test. r=mtigley
[gecko.git] / netwerk / protocol / http / moz.build
blob5c85b2acc302cb2e644773197581f0a81bf65c2a
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/.
7 with Files("**"):
8     BUG_COMPONENT = ("Core", "Networking: HTTP")
10 XPIDL_SOURCES += [
11     "nsIBackgroundChannelRegistrar.idl",
12     "nsIBinaryHttp.idl",
13     "nsIEarlyHintObserver.idl",
14     "nsIHttpActivityObserver.idl",
15     "nsIHttpAuthenticableChannel.idl",
16     "nsIHttpAuthenticator.idl",
17     "nsIHttpAuthManager.idl",
18     "nsIHttpChannel.idl",
19     "nsIHttpChannelAuthProvider.idl",
20     "nsIHttpChannelChild.idl",
21     "nsIHttpChannelInternal.idl",
22     "nsIHttpHeaderVisitor.idl",
23     "nsIHttpProtocolHandler.idl",
24     "nsINetworkErrorLogging.idl",
25     "nsIObliviousHttp.idl",
26     "nsIObliviousHttpChannel.idl",
27     "nsIRaceCacheWithNetwork.idl",
28     "nsIReplacedHttpResponse.idl",
29     "nsITlsHandshakeListener.idl",
30     "nsIWellKnownOpportunisticUtils.idl",
33 XPIDL_MODULE = "necko_http"
35 EXPORTS += [
36     "nsCORSListenerProxy.h",
37     "nsHttp.h",
38     "nsHttpAtomList.h",
39     "nsHttpHeaderArray.h",
40     "nsHttpRequestHead.h",
41     "nsHttpResponseHead.h",
44 EXPORTS.mozilla.net += [
45     "AltDataOutputStreamChild.h",
46     "AltDataOutputStreamParent.h",
47     "AltServiceChild.h",
48     "AltServiceParent.h",
49     "AltSvcTransactionChild.h",
50     "AltSvcTransactionParent.h",
51     "BackgroundChannelRegistrar.h",
52     "BackgroundDataBridgeChild.h",
53     "BackgroundDataBridgeParent.h",
54     "ClassOfService.h",
55     "EarlyHintPreloader.h",
56     "EarlyHintRegistrar.h",
57     "EarlyHintsService.h",
58     "HttpAuthUtils.h",
59     "HttpBackgroundChannelChild.h",
60     "HttpBackgroundChannelParent.h",
61     "HttpBaseChannel.h",
62     "HttpChannelChild.h",
63     "HttpChannelParent.h",
64     "HttpConnectionMgrChild.h",
65     "HttpConnectionMgrParent.h",
66     "HttpConnectionMgrShell.h",
67     "HttpInfo.h",
68     "HttpTransactionChild.h",
69     "HttpTransactionParent.h",
70     "HttpTransactionShell.h",
71     "nsAHttpTransaction.h",
72     "nsServerTiming.h",
73     "NullHttpChannel.h",
74     "NullHttpTransaction.h",
75     "OpaqueResponseUtils.h",
76     "ParentChannelListener.h",
77     "PHttpChannelParams.h",
78     "PSpdyPush.h",
79     "ReplacedHttpResponse.h",
80     "SpeculativeTransaction.h",
81     "TimingStruct.h",
84 SOURCES += [
85     "nsHttpChannelAuthProvider.cpp",  # redefines GetAuthType
88 UNIFIED_SOURCES += [
89     "AltDataOutputStreamChild.cpp",
90     "AltDataOutputStreamParent.cpp",
91     "AlternateServices.cpp",
92     "AltServiceChild.cpp",
93     "AltServiceParent.cpp",
94     "AltSvcTransactionChild.cpp",
95     "AltSvcTransactionParent.cpp",
96     "ASpdySession.cpp",
97     "BackgroundChannelRegistrar.cpp",
98     "BackgroundDataBridgeChild.cpp",
99     "BackgroundDataBridgeParent.cpp",
100     "BinaryHttpRequest.cpp",
101     "CacheControlParser.cpp",
102     "CachePushChecker.cpp",
103     "ConnectionDiagnostics.cpp",
104     "ConnectionEntry.cpp",
105     "ConnectionHandle.cpp",
106     "DnsAndConnectSocket.cpp",
107     "EarlyHintPreconnect.cpp",
108     "EarlyHintPreloader.cpp",
109     "EarlyHintRegistrar.cpp",
110     "EarlyHintsService.cpp",
111     "Http2Compression.cpp",
112     "Http2Push.cpp",
113     "Http2Session.cpp",
114     "Http2Stream.cpp",
115     "Http2StreamBase.cpp",
116     "Http2StreamTunnel.cpp",
117     "Http3Session.cpp",
118     "Http3Stream.cpp",
119     "Http3WebTransportSession.cpp",
120     "Http3WebTransportStream.cpp",
121     "HttpAuthUtils.cpp",
122     "HttpBackgroundChannelChild.cpp",
123     "HttpBackgroundChannelParent.cpp",
124     "HttpBaseChannel.cpp",
125     "HttpChannelChild.cpp",
126     "HttpChannelParent.cpp",
127     "HttpConnectionBase.cpp",
128     "HttpConnectionMgrChild.cpp",
129     "HttpConnectionMgrParent.cpp",
130     "HttpConnectionUDP.cpp",
131     "HttpInfo.cpp",
132     "HTTPSRecordResolver.cpp",
133     "HttpTrafficAnalyzer.cpp",
134     "HttpTransactionChild.cpp",
135     "HttpTransactionParent.cpp",
136     "InterceptedHttpChannel.cpp",
137     "MockHttpAuth.cpp",
138     "NetworkMarker.cpp",
139     "nsCORSListenerProxy.cpp",
140     "nsHttp.cpp",
141     "nsHttpActivityDistributor.cpp",
142     "nsHttpAuthCache.cpp",
143     "nsHttpAuthManager.cpp",
144     "nsHttpBasicAuth.cpp",
145     "nsHttpChannel.cpp",
146     "nsHttpChunkedDecoder.cpp",
147     "nsHttpConnection.cpp",
148     "nsHttpConnectionInfo.cpp",
149     "nsHttpConnectionMgr.cpp",
150     "nsHttpDigestAuth.cpp",
151     "nsHttpHeaderArray.cpp",
152     "nsHttpNTLMAuth.cpp",
153     "nsHttpRequestHead.cpp",
154     "nsHttpResponseHead.cpp",
155     "nsHttpTransaction.cpp",
156     "nsServerTiming.cpp",
157     "NullHttpChannel.cpp",
158     "NullHttpTransaction.cpp",
159     "ObliviousHttpChannel.cpp",
160     "ObliviousHttpService.cpp",
161     "OpaqueResponseUtils.cpp",
162     "ParentChannelListener.cpp",
163     "PendingTransactionInfo.cpp",
164     "PendingTransactionQueue.cpp",
165     "QuicSocketControl.cpp",
166     "ReplacedHttpResponse.cpp",
167     "SpeculativeTransaction.cpp",
168     "TlsHandshaker.cpp",
169     "TLSTransportLayer.cpp",
170     "TRRServiceChannel.cpp",
171     "WebTransportCertificateVerifier.cpp",
174 if CONFIG["MOZ_WIDGET_TOOLKIT"] == "windows":
175     UNIFIED_SOURCES += [
176         "HttpWinUtils.cpp",
177     ]
179 if CONFIG["TARGET_OS"] == "OSX":
180     UNIFIED_SOURCES += [
181         "MicrosoftEntraSSOUtils.mm",
182     ]
183     OS_LIBS += [
184         "-framework AuthenticationServices",
185     ]
187 # These files cannot be built in unified mode because of OS X headers.
188 SOURCES += [
189     "nsHttpHandler.cpp",
192 IPDL_SOURCES += [
193     "HttpChannelParams.ipdlh",
194     "PAltDataOutputStream.ipdl",
195     "PAltService.ipdl",
196     "PAltSvcTransaction.ipdl",
197     "PBackgroundDataBridge.ipdl",
198     "PHttpBackgroundChannel.ipdl",
199     "PHttpChannel.ipdl",
200     "PHttpConnectionMgr.ipdl",
201     "PHttpTransaction.ipdl",
204 include("/ipc/chromium/chromium-config.mozbuild")
206 FINAL_LIBRARY = "xul"
208 LOCAL_INCLUDES += [
209     "/dom/base",
210     "/netwerk/base",
211     "/netwerk/cookie",
212     "/netwerk/dns",
213     "/netwerk/ipc",
214     "/netwerk/socket/neqo_glue",
215     "/netwerk/url-classifier",
218 DEFINES["MOZ_APP_UA_NAME"] = f'"{CONFIG["MOZ_APP_UA_NAME"]}"'
220 if CONFIG["MOZ_AUTH_EXTENSION"]:
221     LOCAL_INCLUDES += [
222         "/extensions/auth",
223     ]
225 EXTRA_JS_MODULES += [
226     "HPKEConfigManager.sys.mjs",
227     "NetworkErrorLogging.sys.mjs",
228     "WellKnownOpportunisticUtils.sys.mjs",
231 XPCOM_MANIFESTS += [
232     "components.conf",
235 include("/tools/fuzzing/libfuzzer-config.mozbuild")