]> git.saurik.com Git - apple/xnu.git/blob - tools/lldbmacros/Makefile
xnu-6153.11.26.tar.gz
[apple/xnu.git] / tools / lldbmacros / Makefile
1 export MakeInc_cmd=${SRCROOT}/makedefs/MakeInc.cmd
2 export MakeInc_def=${SRCROOT}/makedefs/MakeInc.def
3 export MakeInc_rule=${SRCROOT}/makedefs/MakeInc.rule
4 export MakeInc_dir=${SRCROOT}/makedefs/MakeInc.dir
5
6 include $(MakeInc_cmd)
7 include $(MakeInc_def)
8
9 .PHONY: lldbmacros_install
10
11 do_config_all:: lldbmacros_install
12
13 LLDBMACROS_SOURCE:=$(SRCROOT)/tools/lldbmacros/
14 LLDBMACROS_BOOTSTRAP_DEST:=$(OBJPATH)/$(KERNEL_FILE_NAME).dSYM/$(DSYMLLDBMACROSDIR)
15 LLDBMACROS_DEST:=$(LLDBMACROS_BOOTSTRAP_DEST)/lldbmacros/
16 LLDBMACROS_USERDEBUG_FILES=
17 ifeq ($(BUILD_STATIC_LINK),1)
18 KERNEL_STATIC_DSYM_LLDBMACROS := $(OBJPATH)/$(KERNEL_FILE_NAME).link/$(KERNEL_FILE_NAME).dSYM/$(DSYMLLDBMACROSDIR)/lldbmacros/
19 endif
20
21 LLDBMACROS_USERDEBUG_FILES:= \
22 usertaskdebugging/__init__.py \
23 usertaskdebugging/gdbserver.py \
24 usertaskdebugging/interface.py \
25 usertaskdebugging/rsprotocol.py \
26 usertaskdebugging/target.py \
27 usertaskdebugging/userprocess.py
28
29 LLDBMACROS_PYTHON_FILES = $(LLDBMACROS_USERDEBUG_FILES) \
30 core/standard.py \
31 core/cvalue.py \
32 core/__init__.py \
33 core/configuration.py \
34 core/caching.py \
35 core/lazytarget.py \
36 core/kernelcore.py \
37 core/operating_system.py \
38 core/xnu_lldb_init.py \
39 plugins/__init__.py \
40 plugins/zprint_perf_log.py \
41 sysregdoc/AArch64-esr_el1.xml \
42 atm.py \
43 bank.py \
44 turnstile.py \
45 kevent.py \
46 workqueue.py \
47 ulock.py \
48 xnu.py \
49 xnudefines.py \
50 ktrace.py \
51 macho.py \
52 mbufdefines.py \
53 netdefines.py \
54 ntstat.py \
55 routedefines.py \
56 ipc.py \
57 ipcimportancedetail.py \
58 kcdata.py \
59 scheduler.py \
60 structanalyze.py \
61 pmap.py \
62 memory.py \
63 mbufs.py \
64 net.py \
65 skywalk.py \
66 ioreg.py \
67 utils.py \
68 kdp.py \
69 process.py \
70 userspace.py \
71 pci.py \
72 misc.py \
73 apic.py \
74 kasan.py \
75 kauth.py \
76 usertaskgdbserver.py \
77 waitq.py \
78 pgtrace.py \
79 xnutriage.py \
80 zonetriage.py \
81 sysreg.py
82
83 ifneq ($(PLATFORM),MacOSX)
84 LLDBMACROS_PYTHON_FILES+= \
85 plugins/iosspeedtracer.py \
86 plugins/iosspeedtracer.sh
87 endif
88
89 include $(MakeInc_rule)
90 include $(MakeInc_dir)
91
92 INSTALL_LLDBMACROS_PYTHON_FILES=$(addprefix $(LLDBMACROS_DEST), $(LLDBMACROS_PYTHON_FILES))
93 $(eval $(call INSTALLPYTHON_RULE_template,$(INSTALL_LLDBMACROS_PYTHON_FILES),$(LLDBMACROS_SOURCE)%,pydir,$(DATA_UNIFDEF),$(LLDBMACROS_DEST)))
94 $(eval $(call INSTALLPYTHON_RULE_template,$(LLDBMACROS_BOOTSTRAP_DEST)/$(KERNEL_LLDBBOOTSTRAP_NAME),$(LLDBMACROS_SOURCE)/core/xnu_lldb_init.py,kbpydir,$(DATA_UNIFDEF),$(LLDBMACROS_BOOTSTRAP_DEST)/))
95
96 ifeq ($(BUILD_STATIC_LINK),1)
97 INSTALL_STATIC_DSYM_LLDBMACROS_PYTHON_FILES=$(addprefix $(KERNEL_STATIC_DSYM_LLDBMACROS), $(LLDBMACROS_PYTHON_FILES))
98 $(eval $(call INSTALLPYTHON_RULE_template,$(INSTALL_STATIC_DSYM_LLDBMACROS_PYTHON_FILES),$(LLDBMACROS_SOURCE)%,sdpydir,$(DATA_UNIFDEF),$(KERNEL_STATIC_DSYM_LLDBMACROS)))
99 $(eval $(call INSTALLPYTHON_RULE_template,$(KERNEL_STATIC_DSYM_LLDBMACROS)/../$(KERNEL_LLDBBOOTSTRAP_NAME),$(LLDBMACROS_SOURCE)/core/xnu_lldb_init.py,kbsdpydir,$(DATA_UNIFDEF),$(KERNEL_STATIC_DSYM_LLDBMACROS)/../))
100 endif
101
102 ifeq ($(BUILD_STATIC_LINK),1)
103 STATIC_DSYM_LLDBMACROS_INSTALL_TARGETS := \
104 $(INSTALL_STATIC_DSYM_LLDBMACROS_PYTHON_FILES) \
105 $(KERNEL_STATIC_DSYM_LLDBMACROS)/../$(KERNEL_LLDBBOOTSTRAP_NAME)
106 endif
107
108 lldbmacros_install: $(INSTALL_LLDBMACROS_PYTHON_FILES) $(LLDBMACROS_BOOTSTRAP_DEST)/$(KERNEL_LLDBBOOTSTRAP_NAME) $(STATIC_DSYM_LLDBMACROS_INSTALL_TARGETS)
109 $(_v)$(MKDIR) $(LLDBMACROS_DEST)/builtinkexts
110 ifeq ($(BUILD_STATIC_LINK),1)
111 $(_v)$(MKDIR) $(KERNEL_STATIC_DSYM_LLDBMACROS)/builtinkexts
112 endif