зеркало из https://github.com/mozilla/gecko-dev.git
135 строки
3.1 KiB
Python
135 строки
3.1 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/.
|
|
|
|
HAS_MISC_RULE = True
|
|
|
|
include('/ipc/chromium/chromium-config.mozbuild')
|
|
|
|
FINAL_LIBRARY = 'xul'
|
|
|
|
DEFINES['MOZ_APP_VERSION'] = '"%s"' % CONFIG['MOZ_APP_VERSION']
|
|
|
|
LOCAL_INCLUDES += [
|
|
'/xpcom/build',
|
|
'/xpcom/threads',
|
|
]
|
|
|
|
SPHINX_TREES['telemetry'] = 'docs'
|
|
|
|
if CONFIG['GNU_CXX']:
|
|
CXXFLAGS += ['-Wno-error=shadow']
|
|
|
|
if CONFIG['ENABLE_TESTS']:
|
|
DIRS += ['tests/gtest']
|
|
|
|
XPCSHELL_TESTS_MANIFESTS += ['tests/unit/xpcshell.ini']
|
|
BROWSER_CHROME_MANIFESTS += ['tests/browser/browser.ini']
|
|
|
|
XPIDL_SOURCES += [
|
|
'nsITelemetry.idl',
|
|
]
|
|
|
|
XPIDL_MODULE = 'telemetry'
|
|
|
|
EXPORTS.mozilla += [
|
|
'!TelemetryEventEnums.h',
|
|
'!TelemetryHistogramEnums.h',
|
|
'!TelemetryScalarEnums.h',
|
|
'ProcessedStack.h',
|
|
'Telemetry.h',
|
|
'TelemetryComms.h',
|
|
'ThreadHangStats.h',
|
|
]
|
|
|
|
SOURCES += [
|
|
'Telemetry.cpp',
|
|
'TelemetryCommon.cpp',
|
|
'TelemetryEvent.cpp',
|
|
'TelemetryHistogram.cpp',
|
|
'TelemetryIPCAccumulator.cpp',
|
|
'TelemetryScalar.cpp',
|
|
'WebrtcTelemetry.cpp',
|
|
]
|
|
|
|
EXTRA_COMPONENTS += [
|
|
'TelemetryStartup.js',
|
|
'TelemetryStartup.manifest'
|
|
]
|
|
|
|
EXTRA_JS_MODULES += [
|
|
'GCTelemetry.jsm',
|
|
'TelemetryArchive.jsm',
|
|
'TelemetryController.jsm',
|
|
'TelemetryEnvironment.jsm',
|
|
'TelemetryLog.jsm',
|
|
'TelemetryReportingPolicy.jsm',
|
|
'TelemetrySend.jsm',
|
|
'TelemetrySession.jsm',
|
|
'TelemetryStopwatch.jsm',
|
|
'TelemetryStorage.jsm',
|
|
'TelemetryTimestamps.jsm',
|
|
'TelemetryUtils.jsm',
|
|
'ThirdPartyCookieProbe.jsm',
|
|
'UITelemetry.jsm',
|
|
]
|
|
|
|
TESTING_JS_MODULES += [
|
|
'tests/unit/TelemetryArchiveTesting.jsm',
|
|
]
|
|
|
|
GENERATED_FILES = [
|
|
'TelemetryEventData.h',
|
|
'TelemetryEventEnums.h',
|
|
'TelemetryHistogramData.inc',
|
|
'TelemetryHistogramEnums.h',
|
|
'TelemetryScalarData.h',
|
|
'TelemetryScalarEnums.h',
|
|
]
|
|
|
|
# Generate histogram files.
|
|
histogram_files = [
|
|
'Histograms.json',
|
|
'/dom/base/UseCounters.conf',
|
|
'/dom/base/nsDeprecatedOperationList.h',
|
|
]
|
|
|
|
data = GENERATED_FILES['TelemetryHistogramData.inc']
|
|
data.script = 'gen-histogram-data.py'
|
|
data.inputs = histogram_files
|
|
|
|
enums = GENERATED_FILES['TelemetryHistogramEnums.h']
|
|
enums.script = 'gen-histogram-enum.py'
|
|
enums.inputs = histogram_files
|
|
|
|
# Generate scalar files.
|
|
scalar_files = [
|
|
'Scalars.yaml',
|
|
]
|
|
|
|
scalar_data = GENERATED_FILES['TelemetryScalarData.h']
|
|
scalar_data.script = 'gen-scalar-data.py'
|
|
scalar_data.inputs = scalar_files
|
|
|
|
scalar_enums = GENERATED_FILES['TelemetryScalarEnums.h']
|
|
scalar_enums.script = 'gen-scalar-enum.py'
|
|
scalar_enums.inputs = scalar_files
|
|
|
|
# Generate event files.
|
|
event_files = [
|
|
'Events.yaml',
|
|
]
|
|
|
|
event_data = GENERATED_FILES['TelemetryEventData.h']
|
|
event_data.script = 'gen-event-data.py'
|
|
event_data.inputs = event_files
|
|
|
|
event_enums = GENERATED_FILES['TelemetryEventEnums.h']
|
|
event_enums.script = 'gen-event-enum.py'
|
|
event_enums.inputs = event_files
|
|
|
|
with Files('**'):
|
|
BUG_COMPONENT = ('Toolkit', 'Telemetry')
|