# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
# vim: set filetype=python:
# Copyright 2013 Mozilla Foundation and Mozilla contributors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

XPIDL_SOURCES += [
    'nsIAudioManager.idl',
    'nsINetworkInterface.idl',
    'nsINetworkInterfaceListService.idl',
    'nsINetworkManager.idl',
    'nsINetworkService.idl',
    'nsINetworkWorker.idl',
    'nsISystemWorkerManager.idl',
    'nsITetheringService.idl',
    'nsIVolume.idl',
    'nsIVolumeMountLock.idl',
    'nsIVolumeService.idl',
    'nsIVolumeStat.idl',
    'nsIWorkerHolder.idl',
]

XPIDL_MODULE = 'dom_system_gonk'

EXPORTS += [
    'GeolocationUtil.h',
    'GonkGPSGeolocationProvider.h',
    'nsVolume.h',
    'nsVolumeService.h',
    'SystemProperty.h',
]
UNIFIED_SOURCES += [
    'AudioChannelManager.cpp',
    'AudioManager.cpp',
    'AutoMounter.cpp',
    'AutoMounterSetting.cpp',
    'GeolocationUtil.cpp',
    'GonkGPSGeolocationProvider.cpp',
    'MozMtpDatabase.cpp',
    'MozMtpServer.cpp',
    'MozMtpStorage.cpp',
    'NetIdManager.cpp',
    'NetworkUtils.cpp',
    'NetworkWorker.cpp',
    'nsVolume.cpp',
    'nsVolumeMountLock.cpp',
    'nsVolumeService.cpp',
    'nsVolumeStat.cpp',
    'OpenFileFinder.cpp',
    'SystemProperty.cpp',
    'SystemWorkerManager.cpp',
    'TimeZoneSettingObserver.cpp',
    'Volume.cpp',
    'VolumeCommand.cpp',
    'VolumeManager.cpp',
    'VolumeServiceIOThread.cpp',
    'VolumeServiceTest.cpp',
]

if CONFIG['ANDROID_VERSION'] >= '17':
    LOCAL_INCLUDES += ['%' + '%s/frameworks/av/media/mtp' % CONFIG['ANDROID_SOURCE']]
else:
    LOCAL_INCLUDES += ['%' + '%s/frameworks/base/media/mtp' % CONFIG['ANDROID_SOURCE']]

if CONFIG['ENABLE_TESTS']:
    XPCSHELL_TESTS_MANIFESTS += ['tests/xpcshell.ini']

EXTRA_COMPONENTS += [
    'NetworkInterfaceListService.js',
    'NetworkInterfaceListService.manifest',
    'NetworkManager.js',
    'NetworkManager.manifest',
    'NetworkService.js',
    'NetworkService.manifest',
    'TetheringService.js',
    'TetheringService.manifest',
]
EXTRA_JS_MODULES += [
    'systemlibs.js',
]

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

DEFINES['HAVE_ANDROID_OS'] = True

LOCAL_INCLUDES += [
    '/dom/base',
    '/dom/bluetooth/common',
    '/dom/geolocation',
    '/dom/wifi',
]

FINAL_LIBRARY = 'xul'

FINAL_TARGET_FILES.modules.workers += [
    'worker_buf.js',
]