зеркало из https://github.com/mozilla/gecko-dev.git
147 строки
3.8 KiB
Python
147 строки
3.8 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/.
|
|
|
|
SPHINX_TREES['crashreporter'] = 'docs'
|
|
|
|
with Files('docs/**'):
|
|
SCHEDULES.exclusive = ['docs']
|
|
|
|
GENERATED_FILES += [
|
|
'CrashAnnotations.h',
|
|
]
|
|
|
|
EXPORTS += [
|
|
'!CrashAnnotations.h',
|
|
'nsExceptionHandler.h',
|
|
]
|
|
|
|
JAR_MANIFESTS += ['jar.mn']
|
|
|
|
UNIFIED_SOURCES = [
|
|
'CrashAnnotations.cpp',
|
|
'nsExceptionHandlerUtils.cpp',
|
|
]
|
|
|
|
FINAL_LIBRARY = 'xul'
|
|
|
|
if CONFIG['MOZ_CRASHREPORTER']:
|
|
if CONFIG['OS_ARCH'] == 'WINNT':
|
|
DIRS += [
|
|
'google-breakpad/src/common',
|
|
'google-breakpad/src/processor',
|
|
'breakpad-windows-libxul',
|
|
]
|
|
|
|
if CONFIG['MSVC_HAS_DIA_SDK']:
|
|
DIRS += ['google-breakpad/src/tools/windows/dump_syms']
|
|
|
|
if CONFIG['MOZ_CRASHREPORTER_INJECTOR']:
|
|
DIRS += ['breakpad-windows-standalone']
|
|
|
|
elif CONFIG['OS_ARCH'] == 'Darwin':
|
|
DIRS += [
|
|
'breakpad-client',
|
|
'breakpad-client/mac/crash_generation',
|
|
'breakpad-client/mac/handler',
|
|
'google-breakpad/src/common',
|
|
'google-breakpad/src/common/mac',
|
|
'google-breakpad/src/processor',
|
|
'google-breakpad/src/tools/mac/dump_syms',
|
|
'rust',
|
|
]
|
|
|
|
elif CONFIG['OS_ARCH'] == 'Linux':
|
|
DIRS += [
|
|
'breakpad-client',
|
|
'breakpad-client/linux/',
|
|
'google-breakpad/src/common',
|
|
'google-breakpad/src/common/linux',
|
|
'google-breakpad/src/processor',
|
|
'google-breakpad/src/tools/linux/dump_syms',
|
|
'rust',
|
|
]
|
|
|
|
|
|
DIRS += [
|
|
'client',
|
|
'minidump-analyzer',
|
|
]
|
|
|
|
if CONFIG['MOZ_CRASHREPORTER_INJECTOR']:
|
|
DIRS += ['injector']
|
|
UNIFIED_SOURCES += [
|
|
'InjectCrashReporter.cpp',
|
|
'LoadLibraryRemote.cpp',
|
|
]
|
|
|
|
if CONFIG['ENABLE_TESTS']:
|
|
DIRS += ['test/gtest']
|
|
|
|
TEST_DIRS += ['test']
|
|
|
|
UNIFIED_SOURCES += [
|
|
'nsExceptionHandler.cpp',
|
|
'ThreadAnnotation.cpp',
|
|
]
|
|
|
|
if CONFIG['OS_ARCH'] == 'Darwin':
|
|
UNIFIED_SOURCES += [
|
|
'mac_utils.mm',
|
|
]
|
|
|
|
EXTRA_JS_MODULES += [
|
|
'CrashReports.jsm',
|
|
'CrashSubmit.jsm',
|
|
'KeyValueParser.jsm',
|
|
]
|
|
|
|
include('/ipc/chromium/chromium-config.mozbuild')
|
|
|
|
if CONFIG['OS_TARGET'] == 'Android':
|
|
DEFINES['ANDROID_NDK_MAJOR_VERSION'] = CONFIG['ANDROID_NDK_MAJOR_VERSION']
|
|
DEFINES['ANDROID_NDK_MINOR_VERSION'] = CONFIG['ANDROID_NDK_MINOR_VERSION']
|
|
DEFINES['ANDROID_PACKAGE_NAME'] = '"%s"' % CONFIG['ANDROID_PACKAGE_NAME']
|
|
# NDK5 workarounds
|
|
DEFINES['_STLP_CONST_CONSTRUCTOR_BUG'] = True
|
|
DEFINES['_STLP_NO_MEMBER_TEMPLATES'] = True
|
|
LOCAL_INCLUDES += [
|
|
'/toolkit/crashreporter/google-breakpad/src/common/android/include',
|
|
]
|
|
|
|
DEFINES['UNICODE'] = True
|
|
DEFINES['_UNICODE'] = True
|
|
|
|
LOCAL_INCLUDES += [
|
|
'google-breakpad/src',
|
|
]
|
|
|
|
PYTHON_UNITTEST_MANIFESTS += [
|
|
'tools/python.ini',
|
|
]
|
|
|
|
include('/toolkit/crashreporter/crashreporter.mozbuild')
|
|
|
|
if CONFIG['CC_TYPE'] in ('clang', 'gcc'):
|
|
CXXFLAGS += ['-Wno-shadow']
|
|
else:
|
|
UNIFIED_SOURCES += [
|
|
'nsDummyExceptionHandler.cpp',
|
|
]
|
|
|
|
# Generate CrashAnnotations.h
|
|
crash_annotations = GENERATED_FILES['CrashAnnotations.h']
|
|
crash_annotations.script = 'generate_crash_reporter_sources.py:emit_header'
|
|
crash_annotations.inputs = [
|
|
'CrashAnnotations.h.in',
|
|
'CrashAnnotations.yaml',
|
|
]
|
|
|
|
with Files('**'):
|
|
BUG_COMPONENT = ('Toolkit', 'Crash Reporting')
|
|
|
|
if CONFIG['CC_TYPE'] == 'clang-cl':
|
|
AllowCompilerWarnings() # workaround for bug 1090497
|