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("nsBlock*"):
8 # Parts of these files are really Layout: Floats
9 BUG_COMPONENT = ("Core", "Layout: Block and Inline")
12 # Parts of these files are really Layout: Floats
13 BUG_COMPONENT = ("Core", "Layout: Block and Inline")
15 with Files("nsColumn*"):
16 BUG_COMPONENT = ("Core", "Layout: Columns")
18 with Files("Column*"):
19 BUG_COMPONENT = ("Core", "Layout: Columns")
21 with Files("nsLine*"):
22 # Parts of these files are really Layout: Floats
23 BUG_COMPONENT = ("Core", "Layout: Block and Inline")
25 with Files("nsInlineFrame.*"):
26 BUG_COMPONENT = ("Core", "Layout: Block and Inline")
28 with Files("BRFrame.*"):
29 BUG_COMPONENT = ("Core", "Layout: Block and Inline")
31 with Files("WBRFrame.*"):
32 BUG_COMPONENT = ("Core", "Layout: Block and Inline")
34 with Files("nsFirstLetterFrame.*"):
35 BUG_COMPONENT = ("Core", "Layout: Block and Inline")
37 with Files("MathML*"):
38 BUG_COMPONENT = ("Core", "MathML")
41 BUG_COMPONENT = ("Core", "Layout: Text and Fonts")
43 with Files("nsText*"):
44 BUG_COMPONENT = ("Core", "Layout: Text and Fonts")
46 with Files("nsFrameSetFrame*"):
47 BUG_COMPONENT = ("Core", "Layout: Images, Video, and HTML Frames")
49 with Files("nsSubDocumentFrame*"):
50 BUG_COMPONENT = ("Core", "Layout: Images, Video, and HTML Frames")
52 with Files("nsFlex*"):
53 BUG_COMPONENT = ("Core", "Layout: Flexbox")
55 with Files("nsFloatManager.*"):
56 BUG_COMPONENT = ("Core", "Layout: Floats")
58 with Files("nsIntervalSet.*"):
59 BUG_COMPONENT = ("Core", "Layout: Floats")
61 with Files("nsGrid*"):
62 BUG_COMPONENT = ("Core", "Layout: Grid")
64 with Files("nsHTMLCanvasFrame.*"):
65 BUG_COMPONENT = ("Core", "Layout: Images, Video, and HTML Frames")
67 with Files("nsImage*"):
68 BUG_COMPONENT = ("Core", "Layout: Images, Video, and HTML Frames")
70 with Files("nsAbsoluteContainingBlock.*"):
71 BUG_COMPONENT = ("Core", "Layout: Positioned")
73 with Files("Sticky*"):
74 BUG_COMPONENT = ("Core", "Layout: Positioned")
76 with Files("nsRuby*"):
77 BUG_COMPONENT = ("Core", "Layout: Ruby")
80 BUG_COMPONENT = ("Core", "Layout: Ruby")
82 with Files("*Scroll*"):
83 BUG_COMPONENT = ("Core", "Layout: Scrolling and Overflow")
85 with Files("nsFont*"):
86 BUG_COMPONENT = ("Core", "Layout: Text and Fonts")
88 with Files("nsVideoFrame.*"):
89 BUG_COMPONENT = ("Core", "Audio/Video")
92 "JustificationUtils.h",
93 "nsAtomicContainerFrame.h",
100 "nsFrameSelection.h",
102 "nsFrameStateBits.h",
104 "nsIAnonymousContentCreator.h",
109 "nsIScrollableFrame.h",
110 "nsIScrollPositionListener.h",
111 "nsIStatefulFrame.h",
113 "nsPageSequenceFrame.h",
114 "nsPlaceholderFrame.h",
116 "nsRubyBaseContainerFrame.h",
119 "nsRubyTextContainerFrame.h",
121 "nsSplittableFrame.h",
122 "nsSubDocumentFrame.h",
124 "nsTextFrameUtils.h",
125 "nsTextRunTransformations.h",
127 "ScrollAnimationBezierPhysics.h",
128 "ScrollAnimationMSDPhysics.h",
129 "ScrollAnimationPhysics.h",
130 "ScrollbarActivity.h",
139 "AnonymousContentKey.h",
141 "AutoCopyListener.h",
144 "CSSOrderAwareFrameIterator.h",
145 "LayoutMessageUtils.h",
147 "PrintedSheetFrame.h",
150 "ScrollbarPreferences.h",
151 "ScrollGeneration.h",
153 "ScrollPositionUpdate.h",
155 "ScrollSnapTargetId.h",
160 EXPORTS.mozilla.layout += [
161 "ScrollAnchorContainer.h",
166 "BlockReflowState.cpp",
168 "ColumnSetWrapperFrame.cpp",
171 "CSSOrderAwareFrameIterator.cpp",
172 "MathMLTextRunFactory.cpp",
173 "MiddleCroppingBlockFrame.cpp",
174 "nsAbsoluteContainingBlock.cpp",
175 "nsBackdropFrame.cpp",
177 "nsBlockReflowContext.cpp",
179 "nsColumnSetFrame.cpp",
180 "nsContainerFrame.cpp",
181 "nsFirstLetterFrame.cpp",
182 "nsFlexContainerFrame.cpp",
183 "nsFloatManager.cpp",
184 "nsFontInflationData.cpp",
186 "nsFrameSelection.cpp",
187 "nsFrameSetFrame.cpp",
189 "nsGfxScrollFrame.cpp",
190 "nsGridContainerFrame.cpp",
191 "nsHTMLCanvasFrame.cpp",
193 "nsILineIterator.cpp",
201 "nsPageContentFrame.cpp",
203 "nsPageSequenceFrame.cpp",
204 "nsPlaceholderFrame.cpp",
205 "nsRubyBaseContainerFrame.cpp",
206 "nsRubyBaseFrame.cpp",
207 "nsRubyContentFrame.cpp",
209 "nsRubyTextContainerFrame.cpp",
210 "nsRubyTextFrame.cpp",
211 "nsSplittableFrame.cpp",
212 "nsSubDocumentFrame.cpp",
214 "nsTextFrameUtils.cpp",
215 "nsTextPaintStyle.cpp",
216 "nsTextRunTransformations.cpp",
218 "PrintedSheetFrame.cpp",
222 "ScrollAnchorContainer.cpp",
223 "ScrollAnimationBezierPhysics.cpp",
224 "ScrollAnimationMSDPhysics.cpp",
225 "ScrollbarActivity.cpp",
226 "ScrollPositionUpdate.cpp",
228 "ScrollSnapInfo.cpp",
229 "ScrollVelocityQueue.cpp",
230 "StickyScrollContainer.cpp",
235 # on win32 if we add these files to UNIFIED_SOURCES then the compiler generates
236 # larger stack frames for some recursive functions that cause us to hit stack
237 # overflows (see bug 1827428)
238 if CONFIG["OS_ARCH"] == "WINNT" and CONFIG["TARGET_CPU"] == "x86":
248 # If this file gets compiled with ScrollPositionUpdate.cpp, the specialized
249 # `operator<<` for ScrollGeneration<> won't be visible
250 "ScrollGeneration.cpp",
255 script="GenerateFrameLists.py",
256 entry_point="generate_frame_id_list_h",
257 inputs=["FrameClasses.py"],
261 script="GenerateFrameLists.py",
262 entry_point="generate_frame_type_list_h",
263 inputs=["FrameClasses.py"],
266 include("/ipc/chromium/chromium-config.mozbuild")
268 FINAL_LIBRARY = "xul"
281 "/gfx/cairo/cairo/src",
284 JAR_MANIFESTS += ["jar.mn"]
286 CONTENT_ACCESSIBLE_FILES.html = [
290 MOCHITEST_MANIFESTS += ["test/mochitest.toml"]
291 MOCHITEST_CHROME_MANIFESTS += ["test/chrome.toml"]
293 if CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk":
294 CXXFLAGS += CONFIG["MOZ_GTK3_CFLAGS"]