testing/tools/fileid/moz.build
author Mike Hommey <mh+mozilla@glandium.org>
Fri, 11 Jan 2019 16:01:15 +0000
changeset 453570 daf50f25895d
parent 430250 997fd8419a4b
child 459892 dd188d3b0907
permissions -rw-r--r--
Bug 1519307 - Add a new project to build useful parts of breakpad independently. r=froydnj With `ac_add_options --enable-project=tools/crashreporter` in a mozconfig, `./mach build` builds minidump_stackwalk, dump_syms and fileid. One caveat is that due to limitation in how the build system works currently, it's cumbersome to keep dump_syms as a host program for Gecko, and to make it a target program for this project. For now, keep it as a host program. We're not going to use it on automation, but it's still convenient to have for quick local builds (I've had to resort to awful hacks downstream). Differential Revision: https://phabricator.services.mozilla.com/D16299

# -*- 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/.

if CONFIG['OS_ARCH'] == 'WINNT':
    Program('fileid')
    USE_STATIC_LIBS = True
    SOURCES += ['win_fileid.cpp']
    OS_LIBS += ['dbghelp']
    NO_PGO = True
elif CONFIG['MOZ_BUILD_APP'] == 'tools/crashreporter':
    Program('fileid')
else:
    # Technically, it's not a GeckoProgram (thus linkage=None), but it needs
    # mozglue because of the breakpad code it uses being compiled for gecko
    # and requiring infallible malloc.
    GeckoProgram('fileid', linkage=None)

if CONFIG['OS_ARCH'] == 'Linux':
    USE_LIBS += [
        'breakpad_linux_common_s',
    ]
    SOURCES += ['linux_fileid.cpp']


if CONFIG['OS_ARCH'] == 'Darwin':
    USE_LIBS += [
        'breakpad_mac_common_s',
    ]
    SOURCES += ['mac_fileid.cpp']
    OS_LIBS += [
        '-framework Foundation'
    ]


if CONFIG['OS_ARCH'] == 'Linux' or CONFIG['OS_ARCH'] == 'Darwin':
    USE_LIBS += [
        'breakpad_common_s',
    ]
    LOCAL_INCLUDES += [
        '/toolkit/crashreporter/google-breakpad/src',
    ]

if CONFIG['CC_TYPE'] == 'clang-cl':
    AllowCompilerWarnings()  # workaround for bug 1090497