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