1SubDir HAIKU_TOP src kits debugger ; 2 3UseHeaders [ FDirName $(HAIKU_TOP) headers compatibility bsd ] : true ; 4 5# for syscall_numbers.h 6UseHeaders [ FDirName $(TARGET_COMMON_DEBUG_OBJECT_DIR_$(TARGET_PACKAGING_ARCH)) 7 system kernel ] ; 8 9UsePrivateHeaders debugger ; 10UsePrivateHeaders [ FDirName debugger arch ] ; 11UsePrivateHeaders [ FDirName debugger controllers ] ; 12UsePrivateHeaders [ FDirName debugger debug_info ] ; 13UsePrivateHeaders [ FDirName debugger debug_managers ] ; 14UsePrivateHeaders [ FDirName debugger elf ] ; 15UsePrivateHeaders [ FDirName debugger files ] ; 16UsePrivateHeaders [ FDirName debugger ids ] ; 17UsePrivateHeaders [ FDirName debugger model ] ; 18UsePrivateHeaders [ FDirName debugger settings ] ; 19UsePrivateHeaders [ FDirName debugger settings generic ] ; 20UsePrivateHeaders [ FDirName debugger source_language ] ; 21UsePrivateHeaders [ FDirName debugger source_language c_family ] ; 22UsePrivateHeaders [ FDirName debugger target_host_interface ] ; 23UsePrivateHeaders [ FDirName debugger types ] ; 24UsePrivateHeaders [ FDirName debugger user_interface ] ; 25UsePrivateHeaders [ FDirName debugger user_interface util ] ; 26UsePrivateHeaders [ FDirName debugger util ] ; 27UsePrivateHeaders [ FDirName debugger value ] ; 28UsePrivateHeaders [ FDirName debugger value value_formatters ] ; 29UsePrivateHeaders [ FDirName debugger value value_nodes ] ; 30UsePrivateHeaders [ FDirName debugger value values ] ; 31 32UsePrivateHeaders app debug interface kernel package shared libroot ; 33UsePrivateSystemHeaders ; 34 35LINKFLAGS += -Wl,--exclude-libs,ALL ; 36 37SubDirC++Flags [ FDefines _BSD_SOURCE=1 ] ; 38 39SEARCH_SOURCE += [ FDirName $(SUBDIR) arch ] ; 40SEARCH_SOURCE += [ FDirName $(SUBDIR) arch x86 ] ; 41SEARCH_SOURCE += [ FDirName $(SUBDIR) arch x86_64 ] ; 42SEARCH_SOURCE += [ FDirName $(SUBDIR) controllers ] ; 43SEARCH_SOURCE += [ FDirName $(SUBDIR) debug_info ] ; 44SEARCH_SOURCE += [ FDirName $(SUBDIR) debug_info loading_state_handlers ] ; 45SEARCH_SOURCE += [ FDirName $(SUBDIR) debug_managers ] ; 46SEARCH_SOURCE += [ FDirName $(SUBDIR) debugger_interface ] ; 47SEARCH_SOURCE += [ FDirName $(SUBDIR) debugger_interface interfaces ] ; 48SEARCH_SOURCE += [ FDirName $(SUBDIR) elf ] ; 49SEARCH_SOURCE += [ FDirName $(SUBDIR) files ] ; 50SEARCH_SOURCE += [ FDirName $(SUBDIR) ids ] ; 51SEARCH_SOURCE += [ FDirName $(SUBDIR) jobs ] ; 52SEARCH_SOURCE += [ FDirName $(SUBDIR) model ] ; 53SEARCH_SOURCE += [ FDirName $(SUBDIR) settings ] ; 54SEARCH_SOURCE += [ FDirName $(SUBDIR) settings generic ] ; 55SEARCH_SOURCE += [ FDirName $(SUBDIR) source_language ] ; 56SEARCH_SOURCE += [ FDirName $(SUBDIR) source_language c_family ] ; 57SEARCH_SOURCE += [ FDirName $(SUBDIR) source_language x86 ] ; 58SEARCH_SOURCE += [ FDirName $(SUBDIR) target_host_interface ] ; 59SEARCH_SOURCE += [ FDirName $(SUBDIR) target_host_interface local ] ; 60SEARCH_SOURCE += [ FDirName $(SUBDIR) types ] ; 61SEARCH_SOURCE += [ FDirName $(SUBDIR) user_interface ] ; 62SEARCH_SOURCE += [ FDirName $(SUBDIR) user_interface util ] ; 63SEARCH_SOURCE += [ FDirName $(SUBDIR) util ] ; 64SEARCH_SOURCE += [ FDirName $(SUBDIR) value ] ; 65SEARCH_SOURCE += [ FDirName $(SUBDIR) value type_handlers ] ; 66SEARCH_SOURCE += [ FDirName $(SUBDIR) value value_formatters ] ; 67SEARCH_SOURCE += [ FDirName $(SUBDIR) value value_nodes ] ; 68SEARCH_SOURCE += [ FDirName $(SUBDIR) value values ] ; 69 70SubDirHdrs [ FDirName $(SUBDIR) demangler ] ; 71SubDirHdrs [ FDirName $(SUBDIR) dwarf ] ; 72SubDirHdrs [ FDirName $(HAIKU_TOP) src bin debug ] ; 73 74SourceHdrs 75 DwarfFunctionDebugInfo.cpp 76 DwarfImageDebugInfo.cpp 77 DwarfStackFrameDebugInfo.cpp 78 DwarfTeamDebugInfo.cpp 79 DwarfTypeFactory.cpp 80 DwarfTypes.cpp 81 : [ FDirName $(SUBDIR) dwarf ] 82; 83 84local sources = 85 DebuggerGlobals.cpp 86 87 # arch 88 Architecture.cpp 89 CpuState.cpp 90 InstructionInfo.cpp 91 Register.cpp 92 RegisterMap.cpp 93 94 # arch/x86 95 ArchitectureX86.cpp 96 CpuStateX86.cpp 97 98 # arch/x86_64 99 ArchitectureX8664.cpp 100 CpuStateX8664.cpp 101 102 # controllers 103 DebugReportGenerator.cpp 104 TeamDebugger.cpp 105 ThreadHandler.cpp 106 107 # debug_managers 108 BreakpointManager.cpp 109 TeamMemoryBlockManager.cpp 110 WatchpointManager.cpp 111 112 # debug_info 113 BasicFunctionDebugInfo.cpp 114 DebuggerImageDebugInfo.cpp 115 DebuggerTeamDebugInfo.cpp 116 DwarfFunctionDebugInfo.cpp 117 DwarfImageDebugInfo.cpp 118 DwarfImageDebugInfoLoadingState.cpp 119 DwarfStackFrameDebugInfo.cpp 120 DwarfTeamDebugInfo.cpp 121 DwarfTypeFactory.cpp 122 DwarfTypes.cpp 123 Function.cpp 124 FunctionDebugInfo.cpp 125 FunctionInstance.cpp 126 GlobalTypeLookup.cpp 127 ImageDebugInfo.cpp 128 ImageDebugInfoLoadingState.cpp 129 ImageDebugInfoProvider.cpp 130 ImageDebugLoadingStateHandler.cpp 131 ImageDebugLoadingStateHandlerRoster.cpp 132 NoOpStackFrameDebugInfo.cpp 133 SpecificImageDebugInfo.cpp 134 SpecificImageDebugInfoLoadingState.cpp 135 SpecificTeamDebugInfo.cpp 136 StackFrameDebugInfo.cpp 137 TeamDebugInfo.cpp 138 139 # debug_info/loading_state_handlers 140 DwarfLoadingStateHandler.cpp 141 142 # debugger_interface 143 DebugEvent.cpp 144 DebuggerInterface.cpp 145 146 # debugger_interface/interfaces 147 CoreFileDebuggerInterface.cpp 148 LocalDebuggerInterface.cpp 149 150 # elf 151 CoreFile.cpp 152 ElfFile.cpp 153 ElfSymbolLookup.cpp 154 155 # files 156 FileManager.cpp 157 LocatableDirectory.cpp 158 LocatableEntry.cpp 159 LocatableFile.cpp 160 SourceFile.cpp 161 162 # ids 163 FunctionID.cpp 164 FunctionParameterID.cpp 165 LocalVariableID.cpp 166 ObjectID.cpp 167 ReturnValueID.cpp 168 169 # jobs 170 ExpressionEvaluationJob.cpp 171 GetCPUStateJob.cpp 172 GetStackTraceJob.cpp 173 GetThreadStateJob.cpp 174 LoadImageDebugInfoJob.cpp 175 LoadSourceCodeJob.cpp 176 ResolveValueNodeJob.cpp 177 RetrieveMemoryBlockJob.cpp 178 WriteCoreFileJob.cpp 179 WriteMemoryJob.cpp 180 WriteValueNodeJob.cpp 181 182 # model 183 AreaInfo.cpp 184 Breakpoint.cpp 185 DisassembledCode.cpp 186 ExpressionInfo.cpp 187 ExpressionValues.cpp 188 FileSourceCode.cpp 189 Image.cpp 190 ImageInfo.cpp 191 LineDataSource.cpp 192 ReturnValueInfo.cpp 193 SemaphoreInfo.cpp 194 SignalInfo.cpp 195 SourceCode.cpp 196 StackFrame.cpp 197 StackFrameValues.cpp 198 StackFrameValueInfos.cpp 199 StackTrace.cpp 200 Statement.cpp 201 SymbolInfo.cpp 202 SyntheticPrimitiveType.cpp 203 SyscallInfo.cpp 204 SystemInfo.cpp 205 TargetHost.cpp 206 Team.cpp 207 TeamInfo.cpp 208 TeamMemory.cpp 209 TeamMemoryBlock.cpp 210 TeamTypeInformation.cpp 211 Thread.cpp 212 ThreadInfo.cpp 213 Type.cpp 214 TypeComponentPath.cpp 215 TypeLookupConstraints.cpp 216 UserBreakpoint.cpp 217 Variable.cpp 218 Watchpoint.cpp 219 220 # settings 221 BreakpointSetting.cpp 222 NoOpSettingsManager.cpp 223 SettingsManager.cpp 224 TeamFileManagerSettings.cpp 225 TeamSettings.cpp 226 TeamSignalSettings.cpp 227 TeamUiSettings.cpp 228 TeamUiSettingsFactory.cpp 229 230 # settings/generic 231 Setting.cpp 232 Settings.cpp 233 SettingsDescription.cpp 234 235 # source_language 236 SourceLanguage.cpp 237 SyntaxHighlighter.cpp 238 UnsupportedLanguage.cpp 239 240 # source_language/c_family 241 CLanguage.cpp 242 CLanguageExpressionEvaluator.cpp 243 CLanguageFamily.cpp 244 CLanguageFamilySyntaxHighlighter.cpp 245 CLanguageFamilySyntaxHighlightInfo.cpp 246 CLanguageTokenizer.cpp 247 CppLanguage.cpp 248 249 # source_language/x86 250 X86AssemblyLanguage.cpp 251 252 # target_host_interface 253 TargetHostInterface.cpp 254 TargetHostInterfaceInfo.cpp 255 TargetHostInterfaceRoster.cpp 256 257 # target_host_interface/local 258 LocalTargetHostInterface.cpp 259 LocalTargetHostInterfaceInfo.cpp 260 261 # types 262 ArrayIndexPath.cpp 263 TargetAddressRangeList.cpp 264 ValueLocation.cpp 265 266 # user_interface 267 UserInterface.cpp 268 269 # user_interface/util 270 UiUtils.cpp 271 272 # util 273 ArchivingUtils.cpp 274 BitBuffer.cpp 275 IntegerFormatter.cpp 276 RangeList.cpp 277 StringUtils.cpp 278 Worker.cpp 279 280 # value 281 TypeHandler.cpp 282 TypeHandlerRoster.cpp 283 Value.cpp 284 ValueFormatter.cpp 285 ValueLoader.cpp 286 ValueNode.cpp 287 ValueNodeContainer.cpp 288 ValueNodeManager.cpp 289 ValueWriter.cpp 290 291 # value/type_handlers 292 BListTypeHandler.cpp 293 BMessageTypeHandler.cpp 294 CStringTypeHandler.cpp 295 296 # value/value_formatters 297 BoolValueFormatter.cpp 298 EnumerationValueFormatter.cpp 299 FloatValueFormatter.cpp 300 IntegerValueFormatter.cpp 301 StringValueFormatter.cpp 302 303 # value/value_nodes 304 AddressValueNode.cpp 305 ArrayValueNode.cpp 306 BListValueNode.cpp 307 BMessageValueNode.cpp 308 CompoundValueNode.cpp 309 CStringValueNode.cpp 310 EnumerationValueNode.cpp 311 ExpressionValueNode.cpp 312 PointerToMemberValueNode.cpp 313 PrimitiveValueNode.cpp 314 VariableValueNodeChild.cpp 315 316 # value/values 317 AddressValue.cpp 318 BoolValue.cpp 319 EnumerationValue.cpp 320 FloatValue.cpp 321 IntegerValue.cpp 322 StringValue.cpp 323; 324 325# since syscall_numbers.h is generated on the fly, we need to explicitly 326# let Jam know about the dependency. 327Includes [ FGristFiles $(sources) ] : 328 <syscalls!$(TARGET_PACKAGING_ARCH)>syscall_numbers.h 329; 330 331SharedLibrary libdebugger.so : 332 $(sources) 333 : 334 <nogrist>Debugger_demangler.o 335 <nogrist>Debugger_disasm_x86.o 336 <nogrist>Debugger_disasm_x86_64.o 337 <nogrist>Debugger_dwarf.o 338 339 libudis86.a 340 <bin>debug_utils.a 341 shared 342 343 [ TargetLibstdc++ ] 344 be package libbsd.so libdebug.so 345; 346 347HaikuSubInclude arch x86 disasm ; 348HaikuSubInclude arch x86_64 disasm ; 349HaikuSubInclude demangler ; 350HaikuSubInclude dwarf ; 351