# -*- 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_TARGET"] != "Android": Program("crashreporter") UNIFIED_SOURCES += [ "../CrashAnnotations.cpp", "crashreporter.cpp", "ping.cpp", ] LOCAL_INCLUDES += [ "/toolkit/components/jsoncpp/include", ] USE_LIBS += [ "jsoncpp", ] if CONFIG["OS_ARCH"] == "WINNT": UNIFIED_SOURCES += [ "crashreporter_win.cpp", ] include("/toolkit/crashreporter/breakpad-client/windows/sender/objs.mozbuild") SOURCES += objs_sender SOURCES += [ "../google-breakpad/src/common/windows/http_upload.cc", ] DEFINES["UNICODE"] = True DEFINES["_UNICODE"] = True USE_LIBS += [ "nss", ] OS_LIBS += [ "advapi32", "comctl32", "gdi32", "ole32", "shell32", "wininet", "shlwapi", "user32", ] elif CONFIG["OS_ARCH"] == "Darwin": UNIFIED_SOURCES += [ "../google-breakpad/src/common/mac/HTTPMultipartUpload.m", "crashreporter_osx.mm", "crashreporter_unix_common.cpp", ] LOCAL_INCLUDES += [ "../google-breakpad/src/common/mac", ] OS_LIBS += ["-framework Cocoa"] USE_LIBS += [ "nss", ] LDFLAGS += ["-Wl,-rpath,@executable_path/../../../"] elif CONFIG["OS_ARCH"] == "SunOS": SOURCES += [ "crashreporter_linux.cpp", "crashreporter_unix.cpp", ] USE_LIBS += [ "breakpad_solaris_common_s", ] if CONFIG["MOZ_WIDGET_TOOLKIT"] == "gtk": UNIFIED_SOURCES += [ "../google-breakpad/src/common/linux/http_upload.cc", "crashreporter_gtk_common.cpp", "crashreporter_linux.cpp", "crashreporter_unix_common.cpp", ] OS_LIBS += CONFIG["MOZ_GTK3_LIBS"] OS_LIBS += CONFIG["MOZ_GTHREAD_LIBS"] CXXFLAGS += CONFIG["MOZ_GTK3_CFLAGS"] CXXFLAGS += CONFIG["MOZ_GTHREAD_CFLAGS"] if CONFIG["OS_ARCH"] == "Linux" or CONFIG["OS_ARCH"] == "SunOS": FINAL_TARGET_FILES += [ "Throbber-small.gif", ] DEFINES["BIN_SUFFIX"] = '"%s"' % CONFIG["BIN_SUFFIX"] RCINCLUDE = "crashreporter.rc" # Don't use the STL wrappers in the crashreporter clients; they don't # link with -lmozalloc, and it really doesn't matter here anyway. DisableStlWrapping() include("/toolkit/crashreporter/crashreporter.mozbuild")