# -*- 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/.

MOCHITEST_MANIFESTS += ['test/mochitest.ini']

EXPORTS += [
    'nsSVGClass.h',
    'nsSVGElement.h',
    'nsSVGFeatures.h',
    'SVGAttrValueWrapper.h',
    'SVGContentUtils.h',
    'SVGPreserveAspectRatio.h',
    'SVGStringList.h',
]

EXPORTS.mozilla.dom += [
    'nsSVGAnimatedTransformList.h',
    'SVGAElement.h',
    'SVGAngle.h',
    'SVGAnimatedAngle.h',
    'SVGAnimatedBoolean.h',
    'SVGAnimatedEnumeration.h',
    'SVGAnimatedInteger.h',
    'SVGAnimatedLength.h',
    'SVGAnimatedNumber.h',
    'SVGAnimatedRect.h',
    'SVGAnimatedString.h',
    'SVGAnimatedTransformList.h',
    'SVGAnimateElement.h',
    'SVGAnimateMotionElement.h',
    'SVGAnimateTransformElement.h',
    'SVGAnimationElement.h',
    'SVGCircleElement.h',
    'SVGClipPathElement.h',
    'SVGComponentTransferFunctionElement.h',
    'SVGDefsElement.h',
    'SVGDescElement.h',
    'SVGDocument.h',
    'SVGEllipseElement.h',
    'SVGFEBlendElement.h',
    'SVGFEColorMatrixElement.h',
    'SVGFEComponentTransferElement.h',
    'SVGFECompositeElement.h',
    'SVGFEConvolveMatrixElement.h',
    'SVGFEDiffuseLightingElement.h',
    'SVGFEDisplacementMapElement.h',
    'SVGFEDistantLightElement.h',
    'SVGFEDropShadowElement.h',
    'SVGFEFloodElement.h',
    'SVGFEGaussianBlurElement.h',
    'SVGFEImageElement.h',
    'SVGFEMergeElement.h',
    'SVGFEMergeNodeElement.h',
    'SVGFEMorphologyElement.h',
    'SVGFEOffsetElement.h',
    'SVGFEPointLightElement.h',
    'SVGFESpecularLightingElement.h',
    'SVGFESpotLightElement.h',
    'SVGFETileElement.h',
    'SVGFETurbulenceElement.h',
    'SVGFilterElement.h',
    'SVGForeignObjectElement.h',
    'SVGGElement.h',
    'SVGGradientElement.h',
    'SVGGraphicsElement.h',
    'SVGImageElement.h',
    'SVGIRect.h',
    'SVGLineElement.h',
    'SVGMarkerElement.h',
    'SVGMaskElement.h',
    'SVGMatrix.h',
    'SVGMetadataElement.h',
    'SVGMPathElement.h',
    'SVGPathElement.h',
    'SVGPatternElement.h',
    'SVGPolygonElement.h',
    'SVGPolylineElement.h',
    'SVGRect.h',
    'SVGRectElement.h',
    'SVGScriptElement.h',
    'SVGSetElement.h',
    'SVGStopElement.h',
    'SVGStyleElement.h',
    'SVGSVGElement.h',
    'SVGSwitchElement.h',
    'SVGSymbolElement.h',
    'SVGTests.h',
    'SVGTextContentElement.h',
    'SVGTextElement.h',
    'SVGTextPathElement.h',
    'SVGTextPositioningElement.h',
    'SVGTitleElement.h',
    'SVGTransform.h',
    'SVGTransformableElement.h',
    'SVGTSpanElement.h',
    'SVGUseElement.h',
    'SVGViewElement.h',
    'SVGZoomEvent.h',
]

UNIFIED_SOURCES += [
    'DOMSVGAnimatedLengthList.cpp',
    'DOMSVGAnimatedNumberList.cpp',
    'DOMSVGLength.cpp',
    'DOMSVGLengthList.cpp',
    'DOMSVGNumber.cpp',
    'DOMSVGNumberList.cpp',
    'DOMSVGPathSeg.cpp',
    'DOMSVGPathSegList.cpp',
    'DOMSVGPoint.cpp',
    'DOMSVGPointList.cpp',
    'DOMSVGStringList.cpp',
    'DOMSVGTransformList.cpp',
    'nsISVGPoint.cpp',
    'nsSVGAngle.cpp',
    'nsSVGAnimatedTransformList.cpp',
    'nsSVGBoolean.cpp',
    'nsSVGClass.cpp',
    'nsSVGDataParser.cpp',
    'nsSVGElement.cpp',
    'nsSVGEnum.cpp',
    'nsSVGFeatures.cpp',
    'nsSVGFilters.cpp',
    'nsSVGInteger.cpp',
    'nsSVGIntegerPair.cpp',
    'nsSVGLength2.cpp',
    'nsSVGNumber2.cpp',
    'nsSVGNumberPair.cpp',
    'nsSVGPathDataParser.cpp',
    'nsSVGPathGeometryElement.cpp',
    'nsSVGPolyElement.cpp',
    'nsSVGString.cpp',
    'nsSVGTransform.cpp',
    'nsSVGViewBox.cpp',
    'SVGAElement.cpp',
    'SVGAngle.cpp',
    'SVGAnimatedAngle.cpp',
    'SVGAnimatedBoolean.cpp',
    'SVGAnimatedEnumeration.cpp',
    'SVGAnimatedInteger.cpp',
    'SVGAnimatedLength.cpp',
    'SVGAnimatedLengthList.cpp',
    'SVGAnimatedNumber.cpp',
    'SVGAnimatedNumberList.cpp',
    'SVGAnimatedPathSegList.cpp',
    'SVGAnimatedPointList.cpp',
    'SVGAnimatedPreserveAspectRatio.cpp',
    'SVGAnimatedRect.cpp',
    'SVGAnimatedString.cpp',
    'SVGAnimatedTransformList.cpp',
    'SVGAnimateElement.cpp',
    'SVGAnimateMotionElement.cpp',
    'SVGAnimateTransformElement.cpp',
    'SVGAnimationElement.cpp',
    'SVGAttrValueWrapper.cpp',
    'SVGCircleElement.cpp',
    'SVGClipPathElement.cpp',
    'SVGContentUtils.cpp',
    'SVGDefsElement.cpp',
    'SVGDescElement.cpp',
    'SVGDocument.cpp',
    'SVGElementFactory.cpp',
    'SVGEllipseElement.cpp',
    'SVGFEBlendElement.cpp',
    'SVGFEColorMatrixElement.cpp',
    'SVGFEComponentTransferElement.cpp',
    'SVGFECompositeElement.cpp',
    'SVGFEConvolveMatrixElement.cpp',
    'SVGFEDiffuseLightingElement.cpp',
    'SVGFEDisplacementMapElement.cpp',
    'SVGFEDistantLightElement.cpp',
    'SVGFEDropShadowElement.cpp',
    'SVGFEFloodElement.cpp',
    'SVGFEGaussianBlurElement.cpp',
    'SVGFEImageElement.cpp',
    'SVGFEMergeElement.cpp',
    'SVGFEMergeNodeElement.cpp',
    'SVGFEMorphologyElement.cpp',
    'SVGFEOffsetElement.cpp',
    'SVGFEPointLightElement.cpp',
    'SVGFESpecularLightingElement.cpp',
    'SVGFESpotLightElement.cpp',
    'SVGFETileElement.cpp',
    'SVGFETurbulenceElement.cpp',
    'SVGFilterElement.cpp',
    'SVGForeignObjectElement.cpp',
    'SVGFragmentIdentifier.cpp',
    'SVGGElement.cpp',
    'SVGGradientElement.cpp',
    'SVGGraphicsElement.cpp',
    'SVGImageElement.cpp',
    'SVGIntegerPairSMILType.cpp',
    'SVGLength.cpp',
    'SVGLengthList.cpp',
    'SVGLengthListSMILType.cpp',
    'SVGLineElement.cpp',
    'SVGMarkerElement.cpp',
    'SVGMaskElement.cpp',
    'SVGMatrix.cpp',
    'SVGMetadataElement.cpp',
    'SVGMotionSMILAnimationFunction.cpp',
    'SVGMotionSMILAttr.cpp',
    'SVGMotionSMILPathUtils.cpp',
    'SVGMotionSMILType.cpp',
    'SVGMPathElement.cpp',
    'SVGNumberList.cpp',
    'SVGNumberListSMILType.cpp',
    'SVGNumberPairSMILType.cpp',
    'SVGOrientSMILType.cpp',
    'SVGPathData.cpp',
    'SVGPathElement.cpp',
    'SVGPathSegListSMILType.cpp',
    'SVGPathSegUtils.cpp',
    'SVGPatternElement.cpp',
    'SVGPointList.cpp',
    'SVGPointListSMILType.cpp',
    'SVGPolygonElement.cpp',
    'SVGPolylineElement.cpp',
    'SVGPreserveAspectRatio.cpp',
    'SVGRect.cpp',
    'SVGRectElement.cpp',
    'SVGScriptElement.cpp',
    'SVGSetElement.cpp',
    'SVGStopElement.cpp',
    'SVGStringList.cpp',
    'SVGStyleElement.cpp',
    'SVGSVGElement.cpp',
    'SVGSwitchElement.cpp',
    'SVGSymbolElement.cpp',
    'SVGTests.cpp',
    'SVGTextContentElement.cpp',
    'SVGTextElement.cpp',
    'SVGTextPathElement.cpp',
    'SVGTextPositioningElement.cpp',
    'SVGTitleElement.cpp',
    'SVGTransform.cpp',
    'SVGTransformableElement.cpp',
    'SVGTransformList.cpp',
    'SVGTransformListParser.cpp',
    'SVGTransformListSMILType.cpp',
    'SVGTSpanElement.cpp',
    'SVGUseElement.cpp',
    'SVGViewBoxSMILType.cpp',
    'SVGViewElement.cpp',
    'SVGZoomEvent.cpp',
]

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

FINAL_LIBRARY = 'xul'
LOCAL_INCLUDES += [
    '/dom',
    '/dom/base',
    '/dom/html',
    '/dom/smil',
    '/dom/svg',
    '/dom/xbl',
    '/dom/xml',
    '/layout/base',
    '/layout/generic',
    '/layout/style',
    '/layout/svg',
    '/layout/xul',
]

if CONFIG['GNU_CXX']:
    CXXFLAGS += ['-Wno-error=shadow']