xpcom/base/moz.build
author Andreea Pavel <apavel@mozilla.com>
Fri, 11 Jan 2019 17:02:44 +0200
changeset 510583 3f76ed638d83ade10f10cfecd2919936335a4aea
parent 510576 a81f83df08d50ced7d669958f9a06f52b087a5fc
child 510641 7c4eddc3a80db9c9166d84314bd7a35629868857
permissions -rw-r--r--
Backed out 10 changesets (bug 1513057) for build bustages on a CLOSED TREE Backed out changeset 56329b5f1844 (bug 1513057) Backed out changeset 46411c5de3da (bug 1513057) Backed out changeset de65c456aad6 (bug 1513057) Backed out changeset f648b5f1a7c2 (bug 1513057) Backed out changeset 460bbf0849e1 (bug 1513057) Backed out changeset 86032a14d26f (bug 1513057) Backed out changeset a81f83df08d5 (bug 1513057) Backed out changeset edbda5ee5fd5 (bug 1513057) Backed out changeset c900ac2519f5 (bug 1513057) Backed out changeset 4e94bbb90315 (bug 1513057)

# -*- 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',
    'nsMaybeWeakPtr.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',
    'MemoryTelemetry.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',
    'MemoryTelemetry.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