# 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/. DEPTH = @DEPTH@ topsrcdir = @top_srcdir@ srcdir = @srcdir@ VPATH = @srcdir@ include $(DEPTH)/config/autoconf.mk MODULE = crashreporter LIBXUL_LIBRARY = 1 LIBRARY_NAME = exception_handler_s ifeq ($(OS_ARCH),WINNT) DIRS += breakpad-windows-libxul ifdef MOZ_CRASHREPORTER_INJECTOR DIRS += breakpad-windows-standalone endif endif ifeq ($(OS_ARCH),Darwin) CMMSRCS = mac_utils.mm DIRS += \ google-breakpad/src/common \ google-breakpad/src/common/mac \ google-breakpad/src/client \ google-breakpad/src/client/mac/crash_generation \ google-breakpad/src/client/mac/handler \ google-breakpad/src/tools/mac/dump_syms \ $(NULL) endif ifeq ($(OS_ARCH),Linux) # There's no define for XP_LINUX normally. # MOZ_APP_NAME is needed on Android, where we # need to launch by package name. DEFINES += \ -DXP_LINUX \ -DANDROID_PACKAGE_NAME=\"$(ANDROID_PACKAGE_NAME)\" $(NULL) DIRS += \ google-breakpad/src/common \ google-breakpad/src/common/linux \ google-breakpad/src/client \ google-breakpad/src/client/linux/crash_generation \ google-breakpad/src/client/linux/handler \ google-breakpad/src/client/linux/minidump_writer \ google-breakpad/src/tools/linux/dump_syms \ $(NULL) endif ifeq ($(OS_ARCH),SunOS) # there's no define for this normally DEFINES += -DXP_SOLARIS DIRS += \ google-breakpad/src/common \ google-breakpad/src/common/solaris \ google-breakpad/src/client \ google-breakpad/src/client/solaris/handler \ google-breakpad/src/tools/solaris/dump_syms \ $(NULL) endif ifeq ($(OS_TARGET),Android) DIRS += fileid # NDK5 workarounds DEFINES += -D_STLP_CONST_CONSTRUCTOR_BUG -D_STLP_NO_MEMBER_TEMPLATES TARGET_LOCAL_INCLUDES = \ -I$(topsrcdir)/toolkit/crashreporter/google-breakpad/src/common/android/include/ \ $(NULL) endif DIRS += client ifdef MOZ_CRASHREPORTER_INJECTOR DIRS += injector endif LOCAL_INCLUDES += -I$(srcdir)/google-breakpad/src DEFINES += -DUNICODE -D_UNICODE EXPORTS = \ nsExceptionHandler.h \ $(NULL) CPPSRCS = \ nsExceptionHandler.cpp \ $(NULL) ifdef MOZ_CRASHREPORTER_INJECTOR CPPSRCS += \ LoadLibraryRemote.cpp \ InjectCrashReporter.cpp \ $(NULL) endif FORCE_STATIC_LIB = 1 EXTRA_JS_MODULES = \ CrashSubmit.jsm \ KeyValueParser.jsm \ $(NULL) ifdef ENABLE_TESTS TOOL_DIRS = test endif include $(topsrcdir)/config/config.mk include $(topsrcdir)/ipc/chromium/chromium-config.mk include $(topsrcdir)/config/rules.mk check:: $(PYTHON) $(srcdir)/tools/unit-symbolstore.py