]> git.saurik.com Git - apple/xnu.git/blob - tools/lldbmacros/Makefile
xnu-4903.270.47.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 atm.py \
42 bank.py \
43 turnstile.py \
44 kevent.py \
45 workqueue.py \
46 xnu.py \
47 xnudefines.py \
48 ktrace.py \
49 macho.py \
50 mbufdefines.py \
51 netdefines.py \
52 ntstat.py \
53 routedefines.py \
54 ipc.py \
55 ipcimportancedetail.py \
56 kcdata.py \
57 scheduler.py \
58 structanalyze.py \
59 pmap.py \
60 memory.py \
61 mbufs.py \
62 net.py \
63 skywalk.py \
64 ioreg.py \
65 utils.py \
66 kdp.py \
67 process.py \
68 userspace.py \
69 pci.py \
70 misc.py \
71 apic.py \
72 kasan.py \
73 kauth.py \
74 usertaskgdbserver.py \
75 waitq.py \
76 pgtrace.py \
77 xnutriage.py \
78 zonetriage.py
79
80 ifneq ($(PLATFORM),MacOSX)
81 LLDBMACROS_PYTHON_FILES+= \
82 plugins/iosspeedtracer.py \
83 plugins/iosspeedtracer.sh
84 endif
85
86 include $(MakeInc_rule)
87 include $(MakeInc_dir)
88
89 INSTALL_LLDBMACROS_PYTHON_FILES=$(addprefix $(LLDBMACROS_DEST), $(LLDBMACROS_PYTHON_FILES))
90 $(eval $(call INSTALLPYTHON_RULE_template,$(INSTALL_LLDBMACROS_PYTHON_FILES),$(LLDBMACROS_SOURCE)%,pydir,$(DATA_UNIFDEF),$(LLDBMACROS_DEST)))
91 $(eval $(call INSTALLPYTHON_RULE_template,$(LLDBMACROS_BOOTSTRAP_DEST)/$(KERNEL_LLDBBOOTSTRAP_NAME),$(LLDBMACROS_SOURCE)/core/xnu_lldb_init.py,kbpydir,$(DATA_UNIFDEF),$(LLDBMACROS_BOOTSTRAP_DEST)/))
92
93 ifeq ($(BUILD_STATIC_LINK),1)
94 INSTALL_STATIC_DSYM_LLDBMACROS_PYTHON_FILES=$(addprefix $(KERNEL_STATIC_DSYM_LLDBMACROS), $(LLDBMACROS_PYTHON_FILES))
95 $(eval $(call INSTALLPYTHON_RULE_template,$(INSTALL_STATIC_DSYM_LLDBMACROS_PYTHON_FILES),$(LLDBMACROS_SOURCE)%,sdpydir,$(DATA_UNIFDEF),$(KERNEL_STATIC_DSYM_LLDBMACROS)))
96 $(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)/../))
97 endif
98
99 ifeq ($(BUILD_STATIC_LINK),1)
100 STATIC_DSYM_LLDBMACROS_INSTALL_TARGETS := \
101 $(INSTALL_STATIC_DSYM_LLDBMACROS_PYTHON_FILES) \
102 $(KERNEL_STATIC_DSYM_LLDBMACROS)/../$(KERNEL_LLDBBOOTSTRAP_NAME)
103 endif
104
105 lldbmacros_install: $(INSTALL_LLDBMACROS_PYTHON_FILES) $(LLDBMACROS_BOOTSTRAP_DEST)/$(KERNEL_LLDBBOOTSTRAP_NAME) $(STATIC_DSYM_LLDBMACROS_INSTALL_TARGETS)
106 $(_v)$(MKDIR) $(LLDBMACROS_DEST)/builtinkexts
107 ifeq ($(BUILD_STATIC_LINK),1)
108 $(_v)$(MKDIR) $(KERNEL_STATIC_DSYM_LLDBMACROS)/builtinkexts
109 endif