# -*- 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', 'SVG')

EXPORTS += [
    'nsFilterInstance.h',
    'nsSVGEffects.h',
    'nsSVGFilterInstance.h',
    'nsSVGForeignObjectFrame.h',
    'nsSVGIntegrationUtils.h',
    'nsSVGUtils.h',
    'SVGImageContext.h',
]

EXPORTS.mozilla += [
    'SVGContextPaint.h',
]

UNIFIED_SOURCES += [
    'nsCSSClipPathInstance.cpp',
    'nsCSSFilterInstance.cpp',
    'nsFilterInstance.cpp',
    'nsSVGAFrame.cpp',
    'nsSVGClipPathFrame.cpp',
    'nsSVGContainerFrame.cpp',
    'nsSVGEffects.cpp',
    'nsSVGFilterFrame.cpp',
    'nsSVGFilterInstance.cpp',
    'nsSVGForeignObjectFrame.cpp',
    'nsSVGGenericContainerFrame.cpp',
    'nsSVGGFrame.cpp',
    'nsSVGGradientFrame.cpp',
    'nsSVGImageFrame.cpp',
    'nsSVGInnerSVGFrame.cpp',
    'nsSVGIntegrationUtils.cpp',
    'nsSVGMarkerFrame.cpp',
    'nsSVGMaskFrame.cpp',
    'nsSVGOuterSVGFrame.cpp',
    'nsSVGPathGeometryFrame.cpp',
    'nsSVGPatternFrame.cpp',
    'nsSVGStopFrame.cpp',
    'nsSVGSwitchFrame.cpp',
    'nsSVGUseFrame.cpp',
    'nsSVGUtils.cpp',
    'SVGContextPaint.cpp',
    'SVGFEContainerFrame.cpp',
    'SVGFEImageFrame.cpp',
    'SVGFELeafFrame.cpp',
    'SVGFEUnstyledLeafFrame.cpp',
    'SVGTextFrame.cpp',
    'SVGViewFrame.cpp',
]

if CONFIG['CPU_ARCH'] == 'arm' and CONFIG['BUILD_ARM_NEON']:
    SOURCES += ['nsSVGMaskFrameNEON.cpp']
    SOURCES['nsSVGMaskFrameNEON.cpp'].flags += CONFIG['NEON_FLAGS']

FINAL_LIBRARY = 'xul'
LOCAL_INCLUDES += [
    '../../widget',
    '../base',
    '../generic',
    '../style',
    '../xul',
    '/dom/base',
    '/dom/svg',
]

RESOURCE_FILES += [
    'svg.css',
]