gecko-dev/xpcom/base/moz.build

228 строки
5.5 KiB
Python

# -*- 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 += [
'nsIConsoleListener.idl',
'nsIConsoleMessage.idl',
'nsIConsoleService.idl',
'nsICycleCollectorListener.idl',
'nsIDebug2.idl',
'nsIErrorService.idl',
'nsIException.idl',
'nsIGZFileWriter.idl',
'nsIInterfaceRequestor.idl',
'nsILoadURIDelegate.idl',
'nsIMemory.idl',
'nsIMemoryInfoDumper.idl',
'nsIMemoryReporter.idl',
'nsIMessageLoop.idl',
'nsIMutable.idl',
'nsISecurityConsoleMessage.idl',
'nsISupports.idl',
'nsIUUIDGenerator.idl',
'nsIVersionComparator.idl',
'nsIWeakReference.idl',
'nsrootidl.idl',
]
if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa':
XPIDL_SOURCES += [
'nsIMacPreferencesReader.idl',
'nsIMacUtils.idl',
]
EXPORTS.mozilla += [
'MacHelpers.h',
'MacStringHelpers.h',
'nsMacPreferencesReader.h',
]
UNIFIED_SOURCES += [
'MacHelpers.mm',
'MacStringHelpers.mm',
'nsMacPreferencesReader.mm',
]
XPIDL_MODULE = 'xpcom_base'
EXPORTS += [
'!ErrorList.h',
'!ErrorNamesInternal.h',
'CodeAddressService.h',
'nsAgg.h',
'nsAlgorithm.h',
'nsAutoPtr.h',
'nsAutoRef.h',
'nsCom.h',
'nsCOMPtr.h',
'nscore.h',
'nsCRTGlue.h',
'nsCycleCollectionNoteChild.h',
'nsCycleCollectionNoteRootCallback.h',
'nsCycleCollectionParticipant.h',
'nsCycleCollectionTraversalCallback.h',
'nsCycleCollector.h',
'nsDebug.h',
'nsDebugImpl.h',
'nsDumpUtils.h',
'nsError.h',
'nsErrorService.h',
'nsGZFileWriter.h',
'nsIClassInfoImpl.h',
'nsID.h',
'nsIID.h',
'nsIInterfaceRequestorUtils.h',
'nsINIParser.h',
'nsInterfaceRequestorAgg.h',
'nsISizeOf.h',
'nsISupportsBase.h',
'nsISupportsImpl.h',
'nsISupportsUtils.h',
'nsIWeakReferenceUtils.h',
'nsMemory.h',
'nsObjCExceptions.h',
'nsQueryObject.h',
'nsSystemInfo.h',
'nsTraceRefcnt.h',
'nsTWeakRef.h',
'nsVersionComparator.h',
'nsWeakReference.h',
]
if CONFIG['OS_ARCH'] == 'WINNT':
EXPORTS += [
'nsWindowsHelpers.h',
]
if CONFIG['CC_TYPE'] not in ('gcc', 'clang'):
OS_LIBS += [
'wscapi',
]
EXPORTS.mozilla += [
'AutoRestore.h',
'AvailableMemoryTracker.h',
'ClearOnShutdown.h',
'CountingAllocatorBase.h',
'CycleCollectedJSContext.h',
'CycleCollectedJSRuntime.h',
'Debug.h',
'DebuggerOnGCRunnable.h',
'DeferredFinalize.h',
'EnumeratedArrayCycleCollection.h',
'ErrorNames.h',
'HoldDropJSObjects.h',
'IntentionalCrash.h',
'JSObjectHolder.h',
'Logging.h',
'MemoryInfo.h',
'MemoryMapping.h',
'MemoryReportingProcess.h',
'nsMemoryInfoDumper.h',
'NSPRLogModulesParser.h',
'OwningNonNull.h',
'SizeOfState.h',
'StaticMonitor.h',
'StaticMutex.h',
'StaticPtr.h',
'TupleCycleCollection.h',
]
# nsDebugImpl isn't unified because we disable PGO so that NS_ABORT_OOM isn't
# optimized away oddly.
SOURCES += [
'nsDebugImpl.cpp',
]
SOURCES['nsDebugImpl.cpp'].no_pgo = True
UNIFIED_SOURCES += [
'AvailableMemoryTracker.cpp',
'ClearOnShutdown.cpp',
'CycleCollectedJSContext.cpp',
'CycleCollectedJSRuntime.cpp',
'Debug.cpp',
'DebuggerOnGCRunnable.cpp',
'DeferredFinalize.cpp',
'ErrorNames.cpp',
'HoldDropJSObjects.cpp',
'JSObjectHolder.cpp',
'LogCommandLineHandler.cpp',
'Logging.cpp',
'LogModulePrefWatcher.cpp',
'nsClassInfoImpl.cpp',
'nsCOMPtr.cpp',
'nsConsoleMessage.cpp',
'nsConsoleService.cpp',
'nsCRTGlue.cpp',
'nsCycleCollectionParticipant.cpp',
'nsCycleCollector.cpp',
'nsCycleCollectorTraceJSHelpers.cpp',
'nsDumpUtils.cpp',
'nsErrorService.cpp',
'nsGZFileWriter.cpp',
'nsID.cpp',
'nsIInterfaceRequestorUtils.cpp',
'nsINIParser.cpp',
'nsInterfaceRequestorAgg.cpp',
'nsISupportsImpl.cpp',
'nsMemory.cpp',
'nsMemoryImpl.cpp',
'nsMemoryInfoDumper.cpp',
'nsMemoryReporterManager.cpp',
'nsMessageLoop.cpp',
'NSPRLogModulesParser.cpp',
'nsSecurityConsoleMessage.cpp',
'nsSystemInfo.cpp',
'nsTraceRefcnt.cpp',
'nsUUIDGenerator.cpp',
'nsVersionComparator.cpp',
'nsVersionComparatorImpl.cpp',
'nsWeakReference.cpp',
]
if CONFIG['OS_TARGET'] in ('Linux', 'Android'):
UNIFIED_SOURCES += [
'MemoryMapping.cpp',
]
if CONFIG['OS_TARGET'] == 'WINNT':
UNIFIED_SOURCES += [
'MemoryInfo.cpp',
]
GENERATED_FILES += [
"error_list.rs",
"ErrorList.h",
"ErrorNamesInternal.h",
]
GENERATED_FILES["ErrorList.h"].script = "ErrorList.py:error_list_h"
GENERATED_FILES["ErrorNamesInternal.h"].script = "ErrorList.py:error_names_internal_h"
GENERATED_FILES["error_list.rs"].script = "ErrorList.py:error_list_rs"
if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa':
SOURCES += [
'nsMacUtilsImpl.cpp',
]
elif CONFIG['MOZ_WIDGET_TOOLKIT'] == 'windows':
SOURCES += [
'nsCrashOnException.cpp',
]
include('/ipc/chromium/chromium-config.mozbuild')
FINAL_LIBRARY = 'xul'
LOCAL_INCLUDES += [
'../build',
'/dom/base',
'/mfbt',
'/xpcom/ds',
]
if 'gtk' in CONFIG['MOZ_WIDGET_TOOLKIT']:
CXXFLAGS += CONFIG['TK_CFLAGS']
if CONFIG['ENABLE_CLANG_PLUGIN'] and CONFIG['CC_TYPE'] == 'clang-cl':
AllowCompilerWarnings() # workaround for bug 1090497