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

XPIDL_SOURCES += [
    'nsIParserUtils.idl',
    'nsIScriptableUnescapeHTML.idl',
]

XPIDL_MODULE = 'html5'

EXPORTS += [
    'jArray.h',
    'nsAHtml5TreeBuilderState.h',
    'nsAHtml5TreeOpSink.h',
    'nsHtml5ArrayCopy.h',
    'nsHtml5AtomList.h',
    'nsHtml5Atoms.h',
    'nsHtml5AtomTable.h',
    'nsHtml5ByteReadable.h',
    'nsHtml5DependentUTF16Buffer.h',
    'nsHtml5DocumentBuilder.h',
    'nsHtml5DocumentMode.h',
    'nsHtml5HtmlAttributes.h',
    'nsHtml5Macros.h',
    'nsHtml5MetaScanner.h',
    'nsHtml5MetaScannerHSupplement.h',
    'nsHtml5Module.h',
    'nsHtml5NamedCharacters.h',
    'nsHtml5NamedCharactersAccel.h',
    'nsHtml5OplessBuilder.h',
    'nsHtml5OwningUTF16Buffer.h',
    'nsHtml5Parser.h',
    'nsHtml5PlainTextUtils.h',
    'nsHtml5RefPtr.h',
    'nsHtml5Speculation.h',
    'nsHtml5SpeculativeLoad.h',
    'nsHtml5StreamListener.h',
    'nsHtml5StreamParser.h',
    'nsHtml5StringParser.h',
    'nsHtml5SVGLoadDispatcher.h',
    'nsHtml5TreeOperation.h',
    'nsHtml5TreeOpExecutor.h',
    'nsHtml5TreeOpStage.h',
    'nsHtml5UTF16Buffer.h',
    'nsHtml5UTF16BufferHSupplement.h',
    'nsHtml5ViewSourceUtils.h',
    'nsIContentHandle.h',
    'nsParserUtils.h',
]

UNIFIED_SOURCES += [
    'nsHtml5Atom.cpp',
    'nsHtml5Atoms.cpp',
    'nsHtml5AtomTable.cpp',
    'nsHtml5AttributeName.cpp',
    'nsHtml5DependentUTF16Buffer.cpp',
    'nsHtml5DocumentBuilder.cpp',
    'nsHtml5ElementName.cpp',
    'nsHtml5Highlighter.cpp',
    'nsHtml5HtmlAttributes.cpp',
    'nsHtml5MetaScanner.cpp',
    'nsHtml5Module.cpp',
    'nsHtml5NamedCharacters.cpp',
    'nsHtml5NamedCharactersAccel.cpp',
    'nsHtml5OplessBuilder.cpp',
    'nsHtml5OwningUTF16Buffer.cpp',
    'nsHtml5Parser.cpp',
    'nsHtml5PlainTextUtils.cpp',
    'nsHtml5Portability.cpp',
    'nsHtml5ReleasableAttributeName.cpp',
    'nsHtml5ReleasableElementName.cpp',
    'nsHtml5Speculation.cpp',
    'nsHtml5SpeculativeLoad.cpp',
    'nsHtml5StackNode.cpp',
    'nsHtml5StateSnapshot.cpp',
    'nsHtml5StreamListener.cpp',
    'nsHtml5StreamParser.cpp',
    'nsHtml5StringParser.cpp',
    'nsHtml5SVGLoadDispatcher.cpp',
    'nsHtml5Tokenizer.cpp',
    'nsHtml5TreeBuilder.cpp',
    'nsHtml5TreeOperation.cpp',
    'nsHtml5TreeOpExecutor.cpp',
    'nsHtml5TreeOpStage.cpp',
    'nsHtml5UTF16Buffer.cpp',
    'nsHtml5ViewSourceUtils.cpp',
    'nsParserUtils.cpp',
]

FINAL_LIBRARY = 'xul'

# DEFINES['ENABLE_VOID_MENUITEM'] = True

LOCAL_INCLUDES += [
    '/dom/base',
]

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