| OLD | NEW |
| (Empty) | |
| 1 # Copyright 2014 The Crashpad Authors. All rights reserved. |
| 2 # |
| 3 # Licensed under the Apache License, Version 2.0 (the "License"); |
| 4 # you may not use this file except in compliance with the License. |
| 5 # You may obtain a copy of the License at |
| 6 # |
| 7 # http://www.apache.org/licenses/LICENSE-2.0 |
| 8 # |
| 9 # Unless required by applicable law or agreed to in writing, software |
| 10 # distributed under the License is distributed on an "AS IS" BASIS, |
| 11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| 12 # See the License for the specific language governing permissions and |
| 13 # limitations under the License. |
| 14 |
| 15 { |
| 16 'includes': [ |
| 17 '../build/crashpad.gypi', |
| 18 ], |
| 19 'targets': [ |
| 20 { |
| 21 'target_name': 'crashpad_tool_support', |
| 22 'type': 'static_library', |
| 23 'dependencies': [ |
| 24 '../third_party/mini_chromium/mini_chromium.gyp:base', |
| 25 ], |
| 26 'include_dirs': [ |
| 27 '..', |
| 28 ], |
| 29 'sources': [ |
| 30 'tool_support.cc', |
| 31 'tool_support.h', |
| 32 ], |
| 33 }, |
| 34 { |
| 35 'target_name': 'crashpad_database_util', |
| 36 'type': 'executable', |
| 37 'dependencies': [ |
| 38 'crashpad_tool_support', |
| 39 '../client/client.gyp:crashpad_client', |
| 40 '../compat/compat.gyp:crashpad_compat', |
| 41 '../third_party/mini_chromium/mini_chromium.gyp:base', |
| 42 '../util/util.gyp:crashpad_util', |
| 43 ], |
| 44 'include_dirs': [ |
| 45 '..', |
| 46 ], |
| 47 'sources': [ |
| 48 'crashpad_database_util.cc', |
| 49 ], |
| 50 }, |
| 51 { |
| 52 'target_name': 'generate_dump', |
| 53 'type': 'executable', |
| 54 'dependencies': [ |
| 55 'crashpad_tool_support', |
| 56 '../compat/compat.gyp:crashpad_compat', |
| 57 '../minidump/minidump.gyp:crashpad_minidump', |
| 58 '../snapshot/snapshot.gyp:crashpad_snapshot', |
| 59 '../third_party/mini_chromium/mini_chromium.gyp:base', |
| 60 '../util/util.gyp:crashpad_util', |
| 61 ], |
| 62 'include_dirs': [ |
| 63 '..', |
| 64 ], |
| 65 'sources': [ |
| 66 'generate_dump.cc', |
| 67 ], |
| 68 'conditions': [ |
| 69 ['OS=="mac"', { |
| 70 'xcode_settings': { |
| 71 'OTHER_LDFLAGS': [ |
| 72 '-sectcreate', |
| 73 '__TEXT', |
| 74 '__info_plist', |
| 75 '<(sectaskaccess_info_plist)' |
| 76 ], |
| 77 }, |
| 78 }], |
| 79 ], |
| 80 } |
| 81 ], |
| 82 'conditions': [ |
| 83 ['OS=="mac"', { |
| 84 'variables': { |
| 85 # Programs that use task_for_pid() can indicate to taskgated(8) in their |
| 86 # Info.plist that they are allowed to call that function. In order for |
| 87 # this to work, the programs in question must be signed by an authority |
| 88 # trusted by the system. Signing is beyond the scope of the build, but |
| 89 # the key to make this work is placed in Info.plist to enable the |
| 90 # desired behavior once the tools that require this access are signed. |
| 91 # |
| 92 # The tools built here are flat-file executables, and are not bundled. |
| 93 # To have an Info.plist, they must have a special __TEXT,__info_plist |
| 94 # section. This section is created at link time. |
| 95 # |
| 96 # The Info.plist for this purpose is mac/sectaskaccess_info.plist and is |
| 97 # referenced by OTHER_LDFLAGS. ninja runs the link step from the output |
| 98 # directory such as out/Release, and requires a relative path from that |
| 99 # directory. Xcode runs the link step from the directory of the |
| 100 # .xcodeproj, which is the directory of the .gyp file. |
| 101 'conditions': [ |
| 102 ['GENERATOR=="ninja"', { |
| 103 'sectaskaccess_info_plist': '<!(pwd)/mac/sectaskaccess_info.plist', |
| 104 }, { # else: GENERATOR!="ninja" |
| 105 'sectaskaccess_info_plist': 'mac/sectaskaccess_info.plist', |
| 106 }], |
| 107 ], |
| 108 }, |
| 109 |
| 110 'targets': [ |
| 111 { |
| 112 'target_name': 'catch_exception_tool', |
| 113 'type': 'executable', |
| 114 'dependencies': [ |
| 115 'crashpad_tool_support', |
| 116 '../compat/compat.gyp:crashpad_compat', |
| 117 '../third_party/mini_chromium/mini_chromium.gyp:base', |
| 118 '../util/util.gyp:crashpad_util', |
| 119 ], |
| 120 'include_dirs': [ |
| 121 '..', |
| 122 ], |
| 123 'sources': [ |
| 124 'mac/catch_exception_tool.cc', |
| 125 ], |
| 126 }, |
| 127 { |
| 128 'target_name': 'exception_port_tool', |
| 129 'type': 'executable', |
| 130 'dependencies': [ |
| 131 'crashpad_tool_support', |
| 132 '../compat/compat.gyp:crashpad_compat', |
| 133 '../third_party/mini_chromium/mini_chromium.gyp:base', |
| 134 '../util/util.gyp:crashpad_util', |
| 135 ], |
| 136 'include_dirs': [ |
| 137 '..', |
| 138 ], |
| 139 'sources': [ |
| 140 'mac/exception_port_tool.cc', |
| 141 ], |
| 142 'xcode_settings': { |
| 143 'OTHER_LDFLAGS': [ |
| 144 '-sectcreate', |
| 145 '__TEXT', |
| 146 '__info_plist', |
| 147 '<(sectaskaccess_info_plist)' |
| 148 ], |
| 149 }, |
| 150 }, |
| 151 { |
| 152 'target_name': 'on_demand_service_tool', |
| 153 'type': 'executable', |
| 154 'dependencies': [ |
| 155 'crashpad_tool_support', |
| 156 '../compat/compat.gyp:crashpad_compat', |
| 157 '../third_party/mini_chromium/mini_chromium.gyp:base', |
| 158 '../util/util.gyp:crashpad_util', |
| 159 ], |
| 160 'include_dirs': [ |
| 161 '..', |
| 162 ], |
| 163 'link_settings': { |
| 164 'libraries': [ |
| 165 '$(SDKROOT)/System/Library/Frameworks/CoreFoundation.framework', |
| 166 '$(SDKROOT)/System/Library/Frameworks/Foundation.framework', |
| 167 ], |
| 168 }, |
| 169 'sources': [ |
| 170 'mac/on_demand_service_tool.mm', |
| 171 ], |
| 172 }, |
| 173 { |
| 174 'target_name': 'run_with_crashpad', |
| 175 'type': 'executable', |
| 176 'dependencies': [ |
| 177 'crashpad_tool_support', |
| 178 '../client/client.gyp:crashpad_client', |
| 179 '../compat/compat.gyp:crashpad_compat', |
| 180 '../third_party/mini_chromium/mini_chromium.gyp:base', |
| 181 '../util/util.gyp:crashpad_util', |
| 182 ], |
| 183 'include_dirs': [ |
| 184 '..', |
| 185 ], |
| 186 'sources': [ |
| 187 'mac/run_with_crashpad.cc', |
| 188 ], |
| 189 }, |
| 190 ], |
| 191 }], |
| 192 ], |
| 193 } |
| OLD | NEW |