# -*- 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 += ['tests/mochitest/mochitest.ini']
MOCHITEST_CHROME_MANIFESTS += ['tests/mochitest/chrome.ini']
BROWSER_CHROME_MANIFESTS += ['tests/mochitest/browser.ini']
XPCSHELL_TESTS_MANIFESTS += ['tests/unit/xpcshell.ini']

# Hack to make this file available as a resource:// URI.
TESTING_JS_MODULES += [
    'tests/mochitest/resource_test_file.html',
]

XPIDL_SOURCES += [
    'nsIAddonPolicyService.idl',
    'nsIDomainPolicy.idl',
    'nsIPrincipal.idl',
    'nsIScriptSecurityManager.idl',
]

XPIDL_MODULE = 'caps'

EXPORTS += [
    'nsJSPrincipals.h',
    'nsNullPrincipal.h',
    'nsNullPrincipalURI.h',
]

EXPORTS.mozilla = [
    'BasePrincipal.h'
]

SOURCES += [
    # Compile this separately since nsExceptionHandler.h conflicts
    # with something from nsNullPrincipal.cpp.
    'BasePrincipal.cpp',
]

UNIFIED_SOURCES += [
    'DomainPolicy.cpp',
    'nsJSPrincipals.cpp',
    'nsNullPrincipal.cpp',
    'nsNullPrincipalURI.cpp',
    'nsPrincipal.cpp',
    'nsScriptSecurityManager.cpp',
    'nsSystemPrincipal.cpp',
]

LOCAL_INCLUDES += [
    '/docshell/base',
    '/dom/base',
    '/js/xpconnect/src',
]

if CONFIG['ENABLE_TESTS']:
    DIRS += ['tests/gtest']

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

FINAL_LIBRARY = 'xul'