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",
146 "PrintedSheetFrame.h",
149 "ScrollbarPreferences.h",
150 "ScrollGeneration.h",
152 "ScrollPositionUpdate.h",
154 "ScrollSnapTargetId.h",
159 EXPORTS.mozilla.layout += [
160 "ScrollAnchorContainer.h",
165 "BlockReflowState.cpp",
167 "ColumnSetWrapperFrame.cpp",
170 "CSSOrderAwareFrameIterator.cpp",
171 "MathMLTextRunFactory.cpp",
172 "MiddleCroppingBlockFrame.cpp",
173 "nsAbsoluteContainingBlock.cpp",
174 "nsBackdropFrame.cpp",
176 "nsBlockReflowContext.cpp",
178 "nsColumnSetFrame.cpp",
179 "nsContainerFrame.cpp",
180 "nsFirstLetterFrame.cpp",
181 "nsFlexContainerFrame.cpp",
182 "nsFloatManager.cpp",
183 "nsFontInflationData.cpp",
185 "nsFrameSelection.cpp",
186 "nsFrameSetFrame.cpp",
188 "nsGfxScrollFrame.cpp",
189 "nsGridContainerFrame.cpp",
190 "nsHTMLCanvasFrame.cpp",
192 "nsILineIterator.cpp",
200 "nsPageContentFrame.cpp",
202 "nsPageSequenceFrame.cpp",
203 "nsPlaceholderFrame.cpp",
204 "nsRubyBaseContainerFrame.cpp",
205 "nsRubyBaseFrame.cpp",
206 "nsRubyContentFrame.cpp",
208 "nsRubyTextContainerFrame.cpp",
209 "nsRubyTextFrame.cpp",
210 "nsSplittableFrame.cpp",
211 "nsSubDocumentFrame.cpp",
213 "nsTextFrameUtils.cpp",
214 "nsTextPaintStyle.cpp",
215 "nsTextRunTransformations.cpp",
217 "PrintedSheetFrame.cpp",
221 "ScrollAnchorContainer.cpp",
222 "ScrollAnimationBezierPhysics.cpp",
223 "ScrollAnimationMSDPhysics.cpp",
224 "ScrollbarActivity.cpp",
225 "ScrollPositionUpdate.cpp",
227 "ScrollSnapInfo.cpp",
228 "ScrollVelocityQueue.cpp",
229 "StickyScrollContainer.cpp",
234 # on win32 if we add these files to UNIFIED_SOURCES then the compiler generates
235 # larger stack frames for some recursive functions that cause us to hit stack
236 # overflows (see bug 1827428)
237 if CONFIG["OS_ARCH"] == "WINNT" and CONFIG["CPU_ARCH"] == "x86":
247 # If this file gets compiled with ScrollPositionUpdate.cpp, the specialized
248 # `operator<<` for ScrollGeneration<> won't be visible
249 "ScrollGeneration.cpp",
254 script="GenerateFrameLists.py",
255 entry_point="generate_frame_id_list_h",
256 inputs=["FrameClasses.py"],
260 script="GenerateFrameLists.py",
261 entry_point="generate_frame_type_list_h",
262 inputs=["FrameClasses.py"],
265 include("/ipc/chromium/chromium-config.mozbuild")
267 FINAL_LIBRARY = "xul"
280 "/gfx/cairo/cairo/src",
283 JAR_MANIFESTS += ["jar.mn"]
285 CONTENT_ACCESSIBLE_FILES.html = [
289 MOCHITEST_MANIFESTS += ["test/mochitest.ini"]
290 MOCHITEST_CHROME_MANIFESTS += ["test/chrome.toml"]
292 if CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk":
293 CXXFLAGS += CONFIG["MOZ_GTK3_CFLAGS"]