layout/style/moz.build
author Brian Birtles <birtles@gmail.com>
Sun, 02 Sep 2018 23:47:52 +0000
changeset 434438 5b5d256c99f92667ebf91a02dbde8e82d429d400
parent 432207 8fc7f2fb5ffc065186311c04058a1bb3917833a5
child 437961 2798792623cfc49706130f47c89a34ac38b2b2cf
permissions -rw-r--r--
Bug 1487195 - Add BUG_COMPONENT metadata for new "Core :: CSS Transitions and Animations" component; r=hiro Differential Revision: https://phabricator.services.mozilla.com/D4742

# -*- 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('**'):
    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')

with Files('AnimationCollection.*'):
    BUG_COMPONENT = ('Core', 'CSS Transitions and Animations')

with Files('AnimationCommon.*'):
    BUG_COMPONENT = ('Core', 'CSS Transitions and Animations')

with Files('nsAnimationManager.*'):
    BUG_COMPONENT = ('Core', 'CSS Transitions and Animations')

with Files('nsTransitionManager.*'):
    BUG_COMPONENT = ('Core', 'CSS Transitions and Animations')

with Files('StyleAnimationValue.*'):
    BUG_COMPONENT = ('Core', 'CSS Transitions and Animations')

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

EXPORTS += [
    '!nsCSSPropertyID.h',
    'AnimationCommon.h',
    'CounterStyleManager.h',
    'nsAnimationManager.h',
    'nsCSSAnonBoxes.h',
    'nsCSSAnonBoxList.h',
    'nsCSSCounterDescList.h',
    'nsCSSFontDescList.h',
    'nsCSSKeywordList.h',
    'nsCSSKeywords.h',
    'nsCSSPropertyIDSet.h',
    'nsCSSProps.h',
    'nsCSSPseudoElementList.h',
    'nsCSSPseudoElements.h',
    'nsCSSValue.h',
    'nsDOMCSSAttrDeclaration.h',
    'nsDOMCSSDeclaration.h',
    'nsDOMCSSRGBColor.h',
    'nsICSSDeclaration.h',
    'nsICSSLoaderObserver.h',
    'nsLayoutStylesheetCache.h',
    'nsMediaFeatures.h',
    'nsStyleAutoArray.h',
    'nsStyleConsts.h',
    'nsStyleCoord.h',
    'nsStyleStruct.h',
    'nsStyleStructFwd.h',
    'nsStyleStructInlines.h',
    'nsStyleStructList.h',
    'nsStyleTransformMatrix.h',
    'nsStyleUtil.h',
    'nsTimingFunction.h',
]

EXPORTS.mozilla += [
    '!ServoCSSPropList.h',
    'AnimationCollection.h',
    'BindingStyleRule.h',
    'CachedInheritingStyles.h',
    'ComputedStyle.h',
    'ComputedStyleInlines.h',
    'CSSEnabledState.h',
    'CSSPropFlags.h',
    'DeclarationBlock.h',
    'DocumentStyleRootIterator.h',
    'LayerAnimationInfo.h',
    'MappedDeclarations.h',
    'MediaFeatureChange.h',
    'PostTraversalTask.h',
    'PreloadedStyleSheet.h',
    'ServoArcTypeList.h',
    'ServoBindingList.h',
    'ServoBindings.h',
    'ServoBindingTypes.h',
    'ServoComputedData.h',
    'ServoComputedDataInlines.h',
    'ServoCSSParser.h',
    'ServoCSSRuleList.h',
    'ServoElementSnapshot.h',
    'ServoElementSnapshotTable.h',
    'ServoStyleSet.h',
    'ServoStyleSetInlines.h',
    'ServoTraversalStatistics.h',
    'ServoTypes.h',
    'ServoUtils.h',
    'SheetType.h',
    'StyleAnimationValue.h',
    'StyleComplexColor.h',
    'StyleSheet.h',
    'StyleSheetInfo.h',
    'StyleSheetInlines.h',
    'URLExtraData.h',
]

EXPORTS.mozilla.dom += [
    'CSS.h',
    'CSSCounterStyleRule.h',
    'CSSFontFaceRule.h',
    'CSSFontFeatureValuesRule.h',
    'CSSImportRule.h',
    'CSSKeyframeRule.h',
    'CSSKeyframesRule.h',
    'CSSMediaRule.h',
    'CSSMozDocumentRule.h',
    'CSSNamespaceRule.h',
    'CSSPageRule.h',
    'CSSRuleList.h',
    'CSSStyleRule.h',
    'CSSSupportsRule.h',
    'CSSValue.h',
    'FontFace.h',
    'FontFaceSet.h',
    'FontFaceSetIterator.h',
    'MediaList.h',
    'MediaQueryList.h',
]

EXPORTS.mozilla.css += [
    'DocumentMatchingFunction.h',
    'ErrorReporter.h',
    'GroupRule.h',
    'ImageLoader.h',
    'Loader.h',
    'Rule.h',
    'SheetLoadData.h',
    'SheetParsingMode.h',
    'StreamLoader.h',
]

UNIFIED_SOURCES += [
    'AnimationCollection.cpp',
    'BindingStyleRule.cpp',
    'CachedInheritingStyles.cpp',
    'ComputedStyle.cpp',
    'CounterStyleManager.cpp',
    'CSS.cpp',
    'CSSCounterStyleRule.cpp',
    'CSSFontFaceRule.cpp',
    'CSSFontFeatureValuesRule.cpp',
    'CSSImportRule.cpp',
    'CSSKeyframeRule.cpp',
    'CSSKeyframesRule.cpp',
    'CSSMediaRule.cpp',
    'CSSMozDocumentRule.cpp',
    'CSSNamespaceRule.cpp',
    'CSSPageRule.cpp',
    'CSSRuleList.cpp',
    'CSSStyleRule.cpp',
    'CSSSupportsRule.cpp',
    'DeclarationBlock.cpp',
    'DocumentStyleRootIterator.cpp',
    'ErrorReporter.cpp',
    'FontFace.cpp',
    'FontFaceSet.cpp',
    'FontFaceSetIterator.cpp',
    'GroupRule.cpp',
    'ImageLoader.cpp',
    'LayerAnimationInfo.cpp',
    'Loader.cpp',
    'MappedDeclarations.cpp',
    'MediaList.cpp',
    'MediaQueryList.cpp',
    'nsAnimationManager.cpp',
    'nsComputedDOMStyle.cpp',
    'nsCSSKeywords.cpp',
    'nsCSSProps.cpp',
    'nsCSSValue.cpp',
    'nsDOMCSSAttrDeclaration.cpp',
    'nsDOMCSSDeclaration.cpp',
    'nsDOMCSSRect.cpp',
    'nsDOMCSSRGBColor.cpp',
    'nsDOMCSSValueList.cpp',
    'nsFontFaceLoader.cpp',
    'nsFontFaceUtils.cpp',
    'nsHTMLCSSStyleSheet.cpp',
    'nsHTMLStyleSheet.cpp',
    'nsICSSDeclaration.cpp',
    'nsMediaFeatures.cpp',
    'nsROCSSPrimitiveValue.cpp',
    'nsStyleCoord.cpp',
    'nsStyleStruct.cpp',
    'nsStyleTransformMatrix.cpp',
    'nsStyleUtil.cpp',
    'nsTransitionManager.cpp',
    'PostTraversalTask.cpp',
    'PreloadedStyleSheet.cpp',
    'Rule.cpp',
    'ServoBindings.cpp',
    'ServoCSSParser.cpp',
    'ServoCSSRuleList.cpp',
    'ServoElementSnapshot.cpp',
    'ServoStyleSet.cpp',
    'StreamLoader.cpp',
    'StyleAnimationValue.cpp',
    'StyleComplexColor.cpp',
    'StyleSheet.cpp',
    'URLExtraData.cpp',
]

SOURCES += [
    'nsCSSAnonBoxes.cpp',
    'nsCSSPseudoElements.cpp',
    # nsLayoutStylesheetCache.cpp uses nsExceptionHandler.h, which includes
    # windows.h.
    'nsLayoutStylesheetCache.cpp',
]
if CONFIG['CC_TYPE'] == 'msvc':
    # Needed for gCSSAnonBoxAtoms.
    SOURCES['nsCSSAnonBoxes.cpp'].flags += ['-Zc:externConstexpr']
    # Needed for gCSSPseudoElementAtoms.
    SOURCES['nsCSSPseudoElements.cpp'].flags += ['-Zc:externConstexpr']

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',
]

CONTENT_ACCESSIBLE_FILES += [
    'ImageDocument.css',
    'res/plaintext.css',
    'res/viewsource.css',
    'TopLevelImageDocument.css',
    'TopLevelVideoDocument.css',
]

GENERATED_FILES += [
    'nsCSSPropertyID.h',
    'ServoCSSPropList.h',
    'ServoCSSPropList.py',
]

prop_id = GENERATED_FILES['nsCSSPropertyID.h']
prop_id.script = 'GenerateCSSPropertyID.py:generate'
prop_id.inputs = [
    'nsCSSPropertyID.h.in',
    '!ServoCSSPropList.py',
]

servo_props = GENERATED_FILES['ServoCSSPropList.h']
servo_props.script = 'GenerateServoCSSPropList.py:generate_header'
servo_props.inputs = [
    '!ServoCSSPropList.py',
]

servo_props = GENERATED_FILES['ServoCSSPropList.py']
servo_props.script = 'GenerateServoCSSPropList.py:generate_data'
servo_props.inputs = [
    'ServoCSSPropList.mako.py',
]

if CONFIG['COMPILE_ENVIRONMENT']:
    GENERATED_FILES += [
        'nsComputedDOMStyleGenerated.cpp',
        'nsCSSPropsGenerated.inc',
        'ServoStyleConsts.h',
    ]

    EXPORTS.mozilla += [
        '!ServoStyleConsts.h',
    ]

    computed = GENERATED_FILES['nsComputedDOMStyleGenerated.cpp']
    computed.script = 'GenerateComputedDOMStyleGenerated.py:generate'
    computed.inputs = [
        '!ServoCSSPropList.py',
    ]

    css_props = GENERATED_FILES['nsCSSPropsGenerated.inc']
    css_props.script = 'GenerateCSSPropsGenerated.py:generate'
    css_props.inputs = [
        '!ServoCSSPropList.py',
    ]

    consts = GENERATED_FILES['ServoStyleConsts.h']
    consts.script = 'GenerateServoStyleConsts.py:generate'
    consts.inputs = [
        '/servo/components/style/cbindgen.toml',
    ]

    CONFIGURE_SUBST_FILES += [
        'bindgen.toml',
    ]