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/. 6 7with Files('nsBlock*'): 8 # Parts of these files are really Layout: Floats 9 BUG_COMPONENT = ('Core', 'Layout: Block and Inline') 10 11with Files('Block*'): 12 # Parts of these files are really Layout: Floats 13 BUG_COMPONENT = ('Core', 'Layout: Block and Inline') 14 15with Files('nsLine*'): 16 # Parts of these files are really Layout: Floats 17 BUG_COMPONENT = ('Core', 'Layout: Block and Inline') 18 19with Files('nsInlineFrame.*'): 20 BUG_COMPONENT = ('Core', 'Layout: Block and Inline') 21 22with Files('BRFrame.*'): 23 BUG_COMPONENT = ('Core', 'Layout: Block and Inline') 24 25with Files('nsBulletFrame.*'): 26 BUG_COMPONENT = ('Core', 'Layout: Block and Inline') 27 28with Files('nsFirstLetterFrame.*'): 29 BUG_COMPONENT = ('Core', 'Layout: Block and Inline') 30 31with Files('MathML*'): 32 BUG_COMPONENT = ('Core', 'MathML') 33 34with Files('Text*'): 35 BUG_COMPONENT = ('Core', 'Layout: Text') 36 37with Files('nsText*'): 38 BUG_COMPONENT = ('Core', 'Layout: Text') 39 40with Files('nsFrameSetFrame*'): 41 BUG_COMPONENT = ('Core', 'Layout: HTML Frames') 42 43with Files('nsSubDocumentFrame*'): 44 BUG_COMPONENT = ('Core', 'Layout: HTML Frames') 45 46with Files('nsFloatManager.*'): 47 BUG_COMPONENT = ('Core', 'Layout: Floats') 48 49with Files('nsIntervalSet.*'): 50 BUG_COMPONENT = ('Core', 'Layout: Floats') 51 52with Files('nsHTMLCanvasFrame.*'): 53 BUG_COMPONENT = ('Core', 'Layout: Images') 54 55with Files('nsImage*'): 56 BUG_COMPONENT = ('Core', 'Layout: Images') 57 58with Files('nsAbsoluteContainingBlock.*'): 59 BUG_COMPONENT = ('Core', 'Layout: R & A Pos') 60 61with Files('Sticky*'): 62 BUG_COMPONENT = ('Core', 'Layout: R & A Pos') 63 64with Files('nsPluginFrame.*'): 65 BUG_COMPONENT = ('Core', 'Plug-ins') 66 67with Files('nsVideoFrame.*'): 68 BUG_COMPONENT = ('Core', 'Audio/Video') 69 70EXPORTS += [ 71 'nsCanvasFrame.h', 72 'nsContainerFrame.h', 73 'nsDirection.h', 74 'nsFrame.h', 75 'nsFrameIdList.h', 76 'nsFrameList.h', 77 'nsFrameSelection.h', 78 'nsFrameState.h', 79 'nsFrameStateBits.h', 80 'nsHTMLParts.h', 81 'nsIAnonymousContentCreator.h', 82 'nsIFrame.h', 83 'nsIFrameInlines.h', 84 'nsILineIterator.h', 85 'nsIObjectFrame.h', 86 'nsIPageSequenceFrame.h', 87 'nsIScrollableFrame.h', 88 'nsIScrollPositionListener.h', 89 'nsIStatefulFrame.h', 90 'nsPluginFrame.h', 91 'nsQueryFrame.h', 92 'nsRubyBaseContainerFrame.h', 93 'nsRubyBaseFrame.h', 94 'nsRubyFrame.h', 95 'nsRubyTextContainerFrame.h', 96 'nsRubyTextFrame.h', 97 'nsSplittableFrame.h', 98 'nsSubDocumentFrame.h', 99 'nsTextFrameUtils.h', 100 'nsTextRunTransformations.h', 101 'RubyUtils.h', 102 'ScrollAnimationBezierPhysics.h', 103 'ScrollAnimationMSDPhysics.h', 104 'ScrollAnimationPhysics.h', 105 'ScrollbarActivity.h', 106 'ScrollSnap.h', 107 'TextDrawTarget.h', 108 'Visibility.h', 109] 110 111EXPORTS.mozilla += [ 112 'CSSAlignUtils.h', 113 'CSSOrderAwareFrameIterator.h', 114 'FrameTypeList.h', 115 'ReflowInput.h', 116 'ReflowOutput.h', 117 'ViewportFrame.h', 118 'WritingModes.h', 119] 120 121EXPORTS.mozilla.layout += [ 122 'FrameChildList.h', 123] 124 125UNIFIED_SOURCES += [ 126 'BlockReflowInput.cpp', 127 'BRFrame.cpp', 128 'CSSAlignUtils.cpp', 129 'CSSOrderAwareFrameIterator.cpp', 130 'DetailsFrame.cpp', 131 'FrameChildList.cpp', 132 'MathMLTextRunFactory.cpp', 133 'nsAbsoluteContainingBlock.cpp', 134 'nsBackdropFrame.cpp', 135 'nsBlockFrame.cpp', 136 'nsBlockReflowContext.cpp', 137 'nsBulletFrame.cpp', 138 'nsCanvasFrame.cpp', 139 'nsColumnSetFrame.cpp', 140 'nsContainerFrame.cpp', 141 'nsFirstLetterFrame.cpp', 142 'nsFlexContainerFrame.cpp', 143 'nsFloatManager.cpp', 144 'nsFontInflationData.cpp', 145 'nsFrame.cpp', 146 'nsFrameList.cpp', 147 'nsFrameSelection.cpp', 148 'nsFrameSetFrame.cpp', 149 'nsFrameState.cpp', 150 'nsGfxScrollFrame.cpp', 151 'nsGridContainerFrame.cpp', 152 'nsHTMLCanvasFrame.cpp', 153 'nsImageFrame.cpp', 154 'nsImageMap.cpp', 155 'nsInlineFrame.cpp', 156 'nsIntervalSet.cpp', 157 'nsLeafFrame.cpp', 158 'nsLineBox.cpp', 159 'nsLineLayout.cpp', 160 'nsPageContentFrame.cpp', 161 'nsPageFrame.cpp', 162 'nsPlaceholderFrame.cpp', 163 'nsRubyBaseContainerFrame.cpp', 164 'nsRubyBaseFrame.cpp', 165 'nsRubyContentFrame.cpp', 166 'nsRubyFrame.cpp', 167 'nsRubyTextContainerFrame.cpp', 168 'nsRubyTextFrame.cpp', 169 'nsSimplePageSequenceFrame.cpp', 170 'nsSplittableFrame.cpp', 171 'nsSubDocumentFrame.cpp', 172 'nsTextFrame.cpp', 173 'nsTextFrameUtils.cpp', 174 'nsTextRunTransformations.cpp', 175 'nsVideoFrame.cpp', 176 'ReflowInput.cpp', 177 'ReflowOutput.cpp', 178 'RubyUtils.cpp', 179 'ScrollAnimationBezierPhysics.cpp', 180 'ScrollAnimationMSDPhysics.cpp', 181 'ScrollbarActivity.cpp', 182 'ScrollSnap.cpp', 183 'ScrollVelocityQueue.cpp', 184 'StickyScrollContainer.cpp', 185 'TextOverflow.cpp', 186 'ViewportFrame.cpp', 187] 188 189# nsPluginFrame.cpp needs to be built separately because of name clashes in the OS X headers. 190SOURCES += [ 191 'nsPluginFrame.cpp', 192] 193 194include('/ipc/chromium/chromium-config.mozbuild') 195 196FINAL_LIBRARY = 'xul' 197 198LOCAL_INCLUDES += [ 199 '../../dom/plugins/base', 200 '../base', 201 '../forms', 202 '../painting', 203 '../style', 204 '../svg', 205 '../tables', 206 '../xul', 207 '/docshell/base', 208 '/dom/base', 209 '/dom/html', 210 '/dom/xul', 211] 212 213JAR_MANIFESTS += ['jar.mn'] 214 215CONTENT_ACCESSIBLE_FILES.html = [ 216 'folder.png', 217] 218 219MOCHITEST_MANIFESTS += ['test/mochitest.ini'] 220MOCHITEST_CHROME_MANIFESTS += ['test/chrome.ini'] 221 222CXXFLAGS += CONFIG['MOZ_CAIRO_CFLAGS'] 223 224if 'gtk' in CONFIG['MOZ_WIDGET_TOOLKIT']: 225 CXXFLAGS += CONFIG['TK_CFLAGS'] 226 227if CONFIG['CC_TYPE'] in ('clang', 'gcc'): 228 CXXFLAGS += ['-Wno-error=shadow'] 229