layout/style/moz.build
author Nathan Froyd <froydnj@mozilla.com>
Tue, 17 Mar 2015 15:25:35 -0400
changeset 290847 8161b137af4a0146418fa216082abc8c67d5ee24
parent 283125 50c233bcb32aa2ac4981fb2b1240dc57b461c733
child 292691 c646a88160d7b65f755f4dcfa5dec8626a77bcd5
permissions -rw-r--r--
Bug 968923 - part 5b - add nsIDOMWindowUtils::forceUseCounterFlush; r=bz Use counter submission normally happens at document destruction. For testing use counters, however, we need to have use counters updated in telemetry at deterministic points. Therefore, we provide a method on nsIDOMWindowUtils that forces use counters out to telemetry so we can examine them.

# -*- Mode: python; c-basic-offset: 4; 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('**'):
    BUG_COMPONENT = ('Core', 'CSS Parsing and Computation')

with Files('nsComputedDOMStyle.*'):
    BUG_COMPONENT = ('Core', 'DOM: CSS Object Model')

with Files('nsROCSSPrimitiveValue.*'):
    BUG_COMPONENT = ('Core', 'DOM: CSS Object Model')

with Files('CSSRuleList.*'):
    BUG_COMPONENT = ('Core', 'DOM: CSS Object Model')

with Files('nsDOM*'):
    BUG_COMPONENT = ('Core', 'DOM: CSS Object Model')

DIRS += ['xbl-marquee']
TEST_DIRS += ['test']

XPIDL_SOURCES += [
    'nsICSSUnprefixingService.idl',
]

XPIDL_MODULE = 'layout_base'

EXPORTS += [
    'AnimationCommon.h',
    'CounterStyleManager.h',
    'nsAnimationManager.h',
    'nsComputedDOMStylePropertyList.h',
    'nsCSSAnonBoxes.h',
    'nsCSSAnonBoxList.h',
    'nsCSSCounterDescList.h',
    'nsCSSFontDescList.h',
    'nsCSSKeywordList.h',
    'nsCSSKeywords.h',
    'nsCSSParser.h',
    'nsCSSPropAliasList.h',
    'nsCSSProperty.h',
    'nsCSSPropertySet.h',
    'nsCSSPropList.h',
    'nsCSSPropLogicalGroupList.h',
    'nsCSSProps.h',
    'nsCSSPseudoClasses.h',
    'nsCSSPseudoClassList.h',
    'nsCSSPseudoElementList.h',
    'nsCSSPseudoElements.h',
    'nsCSSRuleProcessor.h',
    'nsCSSScanner.h',
    'nsCSSValue.h',
    'nsDOMCSSAttrDeclaration.h',
    'nsDOMCSSDeclaration.h',
    'nsDOMCSSRGBColor.h',
    'nsICSSDeclaration.h',
    'nsICSSLoaderObserver.h',
    'nsICSSPseudoComparator.h',
    'nsICSSStyleRuleDOMWrapper.h',
    'nsIStyleRule.h',
    'nsIStyleRuleProcessor.h',
    'nsIStyleSheet.h',
    'nsLayoutStylesheetCache.h',
    'nsRuleData.h',
    'nsRuleNode.h',
    'nsRuleProcessorData.h',
    'nsRuleWalker.h',
    'nsStyleConsts.h',
    'nsStyleContext.h',
    'nsStyleCoord.h',
    'nsStyleSet.h',
    'nsStyleStruct.h',
    'nsStyleStructFwd.h',
    'nsStyleStructInlines.h',
    'nsStyleTransformMatrix.h',
    'nsStyleUtil.h',
]

EXPORTS.mozilla += [
    'CSSStyleSheet.h',
    'CSSVariableDeclarations.h',
    'CSSVariableResolver.h',
    'CSSVariableValues.h',
    'IncrementalClearCOMRuleArray.h',
    'RuleNodeCacheConditions.h',
    'RuleProcessorCache.h',
    'StyleAnimationValue.h',
]

EXPORTS.mozilla.dom += [
    'CSS.h',
    'CSSLexer.h',
    'CSSRuleList.h',
    'CSSValue.h',
    'FontFace.h',
    'FontFaceSet.h',
    'FontFaceSetIterator.h',
    'MediaQueryList.h',
]

EXPORTS.mozilla.css += [
    'Declaration.h',
    'ErrorReporter.h',
    'GroupRule.h',
    'ImageLoader.h',
    'ImportRule.h',
    'Loader.h',
    'NameSpaceRule.h',
    'Rule.h',
    'StyleRule.h',
]

UNIFIED_SOURCES += [
    'AnimationCommon.cpp',
    'CounterStyleManager.cpp',
    'CSS.cpp',
    'CSSLexer.cpp',
    'CSSRuleList.cpp',
    'CSSStyleSheet.cpp',
    'CSSVariableDeclarations.cpp',
    'CSSVariableResolver.cpp',
    'CSSVariableValues.cpp',
    'Declaration.cpp',
    'ErrorReporter.cpp',
    'FontFace.cpp',
    'FontFaceSet.cpp',
    'FontFaceSetIterator.cpp',
    'ImageLoader.cpp',
    'IncrementalClearCOMRuleArray.cpp',
    'Loader.cpp',
    'MediaQueryList.cpp',
    'nsAnimationManager.cpp',
    'nsComputedDOMStyle.cpp',
    'nsCSSAnonBoxes.cpp',
    'nsCSSDataBlock.cpp',
    'nsCSSKeywords.cpp',
    'nsCSSParser.cpp',
    'nsCSSProps.cpp',
    'nsCSSPseudoClasses.cpp',
    'nsCSSPseudoElements.cpp',
    'nsCSSRules.cpp',
    'nsCSSScanner.cpp',
    'nsCSSValue.cpp',
    'nsDOMCSSAttrDeclaration.cpp',
    'nsDOMCSSDeclaration.cpp',
    'nsDOMCSSRect.cpp',
    'nsDOMCSSRGBColor.cpp',
    'nsDOMCSSValueList.cpp',
    'nsFontFaceLoader.cpp',
    'nsFontFaceUtils.cpp',
    'nsHTMLCSSStyleSheet.cpp',
    'nsHTMLStyleSheet.cpp',
    'nsLayoutStylesheetCache.cpp',
    'nsMediaFeatures.cpp',
    'nsNthIndexCache.cpp',
    'nsROCSSPrimitiveValue.cpp',
    'nsRuleData.cpp',
    'nsRuleNode.cpp',
    'nsStyleContext.cpp',
    'nsStyleCoord.cpp',
    'nsStyleSet.cpp',
    'nsStyleStruct.cpp',
    'nsStyleTransformMatrix.cpp',
    'nsStyleUtil.cpp',
    'nsTransitionManager.cpp',
    'RuleNodeCacheConditions.cpp',
    'RuleProcessorCache.cpp',
    'StyleAnimationValue.cpp',
    'StyleRule.cpp',
    'SVGAttrAnimationRuleProcessor.cpp',
]

# nsCSSRuleProcessor.cpp needs to be built separately because it uses plarena.h.
SOURCES += [
    'nsCSSRuleProcessor.cpp',
]

EXTRA_COMPONENTS += [
    'CSSUnprefixingService.js',
    'CSSUnprefixingService.manifest',
]

FAIL_ON_WARNINGS = True

include('/ipc/chromium/chromium-config.mozbuild')

FINAL_LIBRARY = 'xul'

LOCAL_INCLUDES += [
    '../base',
    '../generic',
    '../svg',
    '../xul',
    '/dom/base',
    '/dom/html',
    '/dom/xbl',
    '/dom/xul',
    '/image',
]

JAR_MANIFESTS += ['jar.mn']

RESOURCE_FILES += [
    'contenteditable.css',
    'designmode.css',
    'ImageDocument.css',
    'TopLevelImageDocument.css',
    'TopLevelVideoDocument.css',
]

GENERATED_FILES += ['nsStyleStructList.h']
style_struct_list = GENERATED_FILES['nsStyleStructList.h']
style_struct_list.script = 'generate-stylestructlist.py'

if CONFIG['GNU_CC']:
    CFLAGS += ['-Wshadow']
    CXXFLAGS += ['-Wshadow']