| # Copyright 2014 The Crashpad Authors. All rights reserved. |
| # |
| # Licensed under the Apache License, Version 2.0 (the "License"); |
| # you may not use this file except in compliance with the License. |
| # You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| |
| { |
| 'includes': [ |
| '../build/crashpad.gypi', |
| ], |
| 'targets': [ |
| { |
| # This target exists so that the crashpad_handler can be embedded into |
| # another binary. |
| 'target_name': 'crashpad_handler_lib', |
| 'type': 'static_library', |
| 'dependencies': [ |
| '../client/client.gyp:crashpad_client', |
| '../compat/compat.gyp:crashpad_compat', |
| '../minidump/minidump.gyp:crashpad_minidump', |
| '../snapshot/snapshot.gyp:crashpad_snapshot', |
| '../third_party/mini_chromium/mini_chromium.gyp:base', |
| '../third_party/zlib/zlib.gyp:zlib', |
| '../tools/tools.gyp:crashpad_tool_support', |
| '../util/util.gyp:crashpad_util', |
| ], |
| 'include_dirs': [ |
| '..', |
| ], |
| 'sources': [ |
| 'crash_report_upload_thread.cc', |
| 'crash_report_upload_thread.h', |
| 'handler_main.cc', |
| 'handler_main.h', |
| 'linux/capture_snapshot.cc', |
| 'linux/capture_snapshot.h', |
| 'linux/crash_report_exception_handler.cc', |
| 'linux/crash_report_exception_handler.h', |
| 'linux/exception_handler_server.cc', |
| 'linux/exception_handler_server.h', |
| 'mac/crash_report_exception_handler.cc', |
| 'mac/crash_report_exception_handler.h', |
| 'mac/exception_handler_server.cc', |
| 'mac/exception_handler_server.h', |
| 'mac/file_limit_annotation.cc', |
| 'mac/file_limit_annotation.h', |
| 'minidump_to_upload_parameters.cc', |
| 'minidump_to_upload_parameters.h', |
| 'prune_crash_reports_thread.cc', |
| 'prune_crash_reports_thread.h', |
| 'user_stream_data_source.cc', |
| 'user_stream_data_source.h', |
| 'win/crash_report_exception_handler.cc', |
| 'win/crash_report_exception_handler.h', |
| ], |
| 'target_conditions': [ |
| ['OS=="android"', { |
| 'sources/': [ |
| ['include', '^linux/'], |
| ], |
| }], |
| ], |
| }, |
| { |
| 'target_name': 'crashpad_handler', |
| 'type': 'executable', |
| 'dependencies': [ |
| '../third_party/mini_chromium/mini_chromium.gyp:base', |
| '../tools/tools.gyp:crashpad_tool_support', |
| 'crashpad_handler_lib', |
| ], |
| 'include_dirs': [ |
| '..', |
| ], |
| 'sources': [ |
| 'main.cc', |
| ], |
| |
| 'conditions': [ |
| ['OS=="win"', { |
| 'msvs_settings': { |
| 'VCLinkerTool': { |
| 'SubSystem': '2', # /SUBSYSTEM:WINDOWS |
| }, |
| }, |
| }], |
| ], |
| }, |
| ], |
| 'conditions': [ |
| ['OS=="win"', { |
| 'targets': [ |
| { |
| # Duplicates crashpad_handler.exe to crashpad_handler.com and makes it |
| # a console app. |
| 'target_name': 'crashpad_handler_console', |
| 'type': 'none', |
| 'dependencies': [ |
| '../third_party/mini_chromium/mini_chromium.gyp:base', |
| '../tools/tools.gyp:crashpad_tool_support', |
| 'crashpad_handler', |
| ], |
| 'actions': [ |
| { |
| 'action_name': 'copy handler exe to com', |
| 'inputs': [ |
| '<(PRODUCT_DIR)/crashpad_handler.exe', |
| ], |
| 'outputs': [ |
| '<(PRODUCT_DIR)/crashpad_handler.com', |
| ], |
| 'action': [ |
| 'copy <(PRODUCT_DIR)\crashpad_handler.exe ' |
| '<(PRODUCT_DIR)\crashpad_handler.com >nul && ' |
| 'editbin -nologo -subsystem:console ' |
| '<(PRODUCT_DIR)\crashpad_handler.com >nul', |
| ], |
| 'msvs_cygwin_shell': '0', |
| 'quote_cmd': '0', |
| }, |
| ], |
| }, |
| ], |
| }], |
| ], |
| } |