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

GeneratedFile(
    "RelationType.h",
    script="/accessible/base/RelationTypeGen.py",
    entry_point="generate",
    inputs=["/accessible/interfaces/nsIAccessibleRelation.idl"],
)
GeneratedFile(
    "Role.h",
    script="/accessible/base/RoleHGen.py",
    entry_point="generate",
    inputs=["/accessible/interfaces/nsIAccessibleRole.idl"],
)

EXPORTS += ["AccEvent.h", "nsAccessibilityService.h"]

EXPORTS.mozilla.a11y += [
    "!RelationType.h",
    "!Role.h",
    "AccAttributes.h",
    "AccGroupInfo.h",
    "AccTypes.h",
    "CacheConstants.h",
    "DocManager.h",
    "FocusManager.h",
    "IDSet.h",
    "Platform.h",
    "SelectionManager.h",
    "States.h",
]

if CONFIG["MOZ_DEBUG"]:
    EXPORTS.mozilla.a11y += [
        "Logging.h",
    ]

UNIFIED_SOURCES += [
    "AccAttributes.cpp",
    "AccEvent.cpp",
    "AccGroupInfo.cpp",
    "AccIterator.cpp",
    "ARIAMap.cpp",
    "ARIAStateMap.cpp",
    "Asserts.cpp",
    "CacheConstants.cpp",
    "CachedTableAccessible.cpp",
    "CssAltContent.cpp",
    "DocManager.cpp",
    "EmbeddedObjCollector.cpp",
    "EventQueue.cpp",
    "EventTree.cpp",
    "Filters.cpp",
    "FocusManager.cpp",
    "NotificationController.cpp",
    "nsAccessibilityService.cpp",
    "nsAccUtils.cpp",
    "nsCoreUtils.cpp",
    "nsEventShell.cpp",
    "nsTextEquivUtils.cpp",
    "Pivot.cpp",
    "SelectionManager.cpp",
    "StyleInfo.cpp",
    "TextAttrs.cpp",
    "TextLeafRange.cpp",
    "TextRange.cpp",
    "TextUpdater.cpp",
    "TreeWalker.cpp",
]

if CONFIG["A11Y_LOG"]:
    UNIFIED_SOURCES += [
        "Logging.cpp",
    ]

LOCAL_INCLUDES += [
    "/accessible/generic",
    "/accessible/html",
    "/accessible/ipc",
    "/dom/base",
    "/dom/xul",
]

LOCAL_INCLUDES += [
    "/accessible/xpcom",
    "/accessible/xul",
    "/dom/base",
    "/ipc/chromium/src",
    "/layout/generic",
    "/layout/style",
    "/layout/xul",
    "/layout/xul/tree/",
]

if CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk":
    LOCAL_INCLUDES += [
        "/accessible/atk",
        "/gfx/cairo/cairo/src",
    ]
elif CONFIG["MOZ_WIDGET_TOOLKIT"] == "windows":
    LOCAL_INCLUDES += [
        "/accessible/windows/ia2",
        "/accessible/windows/msaa",
    ]
elif CONFIG["MOZ_WIDGET_TOOLKIT"] == "cocoa":
    LOCAL_INCLUDES += [
        "/accessible/mac",
    ]
elif CONFIG["MOZ_WIDGET_TOOLKIT"] == "android":
    LOCAL_INCLUDES += [
        "/accessible/android",
    ]
elif CONFIG["MOZ_WIDGET_TOOLKIT"] == "uikit":
    LOCAL_INCLUDES += [
        "/accessible/ios",
    ]
else:
    LOCAL_INCLUDES += [
        "/accessible/other",
    ]

FINAL_LIBRARY = "xul"

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