# -*- 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/. with Files('Restyle*'): BUG_COMPONENT = ('Core', 'CSS Parsing and Computation') with Files('nsStyle*'): BUG_COMPONENT = ('Core', 'CSS Parsing and Computation') with Files('nsChangeHint.h'): BUG_COMPONENT = ('Core', 'CSS Parsing and Computation') with Files('nsBidi*'): BUG_COMPONENT = ('Core', 'Layout: Text') with Files('AccessibleCaret*'): BUG_COMPONENT = ('Core', 'Selection') XPIDL_SOURCES += [ 'nsIPreloadedStyleSheet.idl', 'nsIStyleSheetService.idl', ] if CONFIG['MOZ_DEBUG']: UNIFIED_SOURCES += [ 'nsAutoLayoutPhase.cpp', ] XPIDL_MODULE = 'layout_base' EXPORTS += [ 'CaretAssociationHint.h', 'FramePropertyTable.h', 'LayoutLogging.h', 'nsArenaMemoryStats.h', 'nsBidi.h', 'nsBidiPresUtils.h', 'nsCaret.h', 'nsChangeHint.h', 'nsCompatibility.h', 'nsCSSFrameConstructor.h', 'nsFrameManager.h', 'nsFrameManagerBase.h', 'nsFrameTraversal.h', 'nsIFrameTraversal.h', 'nsILayoutDebugger.h', 'nsILayoutHistoryState.h', 'nsIPercentBSizeObserver.h', 'nsIPresShell.h', 'nsIPresShellInlines.h', 'nsIReflowCallback.h', 'nsLayoutUtils.h', 'nsPresArena.h', 'nsPresArenaObjectList.h', 'nsPresContext.h', 'nsPresState.h', 'nsRefreshDriver.h', 'nsStyleChangeList.h', 'nsStyleSheetService.h', 'ScrollbarStyles.h', 'StackArena.h', 'Units.h', 'UnitTransforms.h', 'WordMovementType.h', ] EXPORTS.mozilla += [ 'ArenaObjectID.h', 'ArenaRefPtr.h', 'ArenaRefPtrInlines.h', 'GeckoRestyleManager.h', 'GeometryUtils.h', 'OverflowChangedTracker.h', 'PresShell.h', 'RestyleLogging.h', 'RestyleManager.h', 'RestyleManagerInlines.h', 'ServoRestyleManager.h', 'ShapeUtils.h', 'StaticPresData.h', ] UNIFIED_SOURCES += [ 'AccessibleCaret.cpp', 'AccessibleCaretEventHub.cpp', 'AccessibleCaretManager.cpp', 'FramePropertyTable.cpp', 'GeckoRestyleManager.cpp', 'GeometryUtils.cpp', 'LayoutLogging.cpp', 'MobileViewportManager.cpp', 'nsBidiPresUtils.cpp', 'nsCaret.cpp', 'nsCounterManager.cpp', 'nsCSSColorUtils.cpp', 'nsCSSFrameConstructor.cpp', 'nsDocumentViewer.cpp', 'nsFrameManager.cpp', 'nsFrameTraversal.cpp', 'nsGenConList.cpp', 'nsLayoutDebugger.cpp', 'nsLayoutHistoryState.cpp', 'nsLayoutUtils.cpp', 'nsPresContext.cpp', 'nsQuoteList.cpp', 'nsStyleChangeList.cpp', 'nsStyleSheetService.cpp', 'PositionedEventTargeting.cpp', 'PresShell.cpp', 'RestyleManager.cpp', 'RestyleTracker.cpp', 'ScrollbarStyles.cpp', 'ServoRestyleManager.cpp', 'ShapeUtils.cpp', 'StackArena.cpp', 'StaticPresData.cpp', 'TouchManager.cpp', 'ZoomConstraintsClient.cpp', ] if CONFIG['ENABLE_INTL_API']: EXPORTS += [ 'nsBidi_ICU.h', ] UNIFIED_SOURCES += [ 'nsBidi_ICU.cpp', ] else: EXPORTS += [ 'nsBidi_noICU.h', ] UNIFIED_SOURCES += [ 'nsBidi_noICU.cpp', ] # nsPresArena.cpp needs to be built separately because it uses plarena.h. # nsRefreshDriver.cpp needs to be built separately because of name clashes in the OS X headers SOURCES += [ 'nsPresArena.cpp', 'nsRefreshDriver.cpp', ] if CONFIG['ENABLE_TESTS']: DIRS += ['gtest'] include('/ipc/chromium/chromium-config.mozbuild') LOCAL_INCLUDES += [ '../forms', '../generic', '../mathml', '../painting', '../printing', '../style', '../svg', '../tables', '../xul', '../xul/tree/', '/docshell/base', '/dom/base', '/dom/html', '/dom/svg', '/dom/xbl', '/dom/xul', '/view', ] if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'android': LOCAL_INCLUDES += [ '/widget/android', ] FINAL_LIBRARY = 'xul' BROWSER_CHROME_MANIFESTS += ['tests/browser.ini'] MARIONETTE_LAYOUT_MANIFESTS += ['tests/marionette/manifest.ini'] MOCHITEST_MANIFESTS += ['tests/mochitest.ini'] MOCHITEST_CHROME_MANIFESTS += ['tests/chrome/chrome.ini'] if CONFIG['_MSC_VER']: # This is intended as a temporary hack to support building with VS2015. # 'type cast': conversion from 'unsigned int' to 'void *' of greater size CXXFLAGS += ['-wd4312'] if CONFIG['GNU_CXX']: CXXFLAGS += ['-Wno-error=shadow']