1 # Copyright 2014 The Rust Project Developers. See the COPYRIGHT
2 # file at the top-level directory of this distribution and at
3 # http://rust-lang.org/COPYRIGHT.
5 # Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
6 # http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
7 # <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
8 # option. This file may not be copied, modified, or distributed
9 # except according to those terms.
11 ######################################################################
12 # Copy debugger related scripts
13 ######################################################################
17 DEBUGGER_RUSTLIB_ETC_SCRIPTS_GDB=gdb_load_rust_pretty_printers.py \
18 gdb_rust_pretty_printing.py
19 DEBUGGER_RUSTLIB_ETC_SCRIPTS_GDB_ABS=\
20 $(foreach script,$(DEBUGGER_RUSTLIB_ETC_SCRIPTS_GDB), \
21 $(CFG_SRC_DIR)src/etc/$(script))
23 DEBUGGER_BIN_SCRIPTS_GDB=rust-gdb
24 DEBUGGER_BIN_SCRIPTS_GDB_ABS=\
25 $(foreach script,$(DEBUGGER_BIN_SCRIPTS_GDB), \
26 $(CFG_SRC_DIR)src/etc/$(script))
30 DEBUGGER_RUSTLIB_ETC_SCRIPTS_LLDB=lldb_rust_formatters.py
31 DEBUGGER_RUSTLIB_ETC_SCRIPTS_LLDB_ABS=\
32 $(foreach script,$(DEBUGGER_RUSTLIB_ETC_SCRIPTS_LLDB), \
33 $(CFG_SRC_DIR)src/etc/$(script))
35 DEBUGGER_BIN_SCRIPTS_LLDB=rust-lldb
36 DEBUGGER_BIN_SCRIPTS_LLDB_ABS=\
37 $(foreach script,$(DEBUGGER_BIN_SCRIPTS_LLDB), \
38 $(CFG_SRC_DIR)src/etc/$(script))
42 DEBUGGER_RUSTLIB_ETC_SCRIPTS_ALL=$(DEBUGGER_RUSTLIB_ETC_SCRIPTS_GDB) \
43 $(DEBUGGER_RUSTLIB_ETC_SCRIPTS_LLDB)
44 DEBUGGER_RUSTLIB_ETC_SCRIPTS_ALL_ABS=$(DEBUGGER_RUSTLIB_ETC_SCRIPTS_GDB_ABS) \
45 $(DEBUGGER_RUSTLIB_ETC_SCRIPTS_LLDB_ABS)
46 DEBUGGER_BIN_SCRIPTS_ALL=$(DEBUGGER_BIN_SCRIPTS_GDB) \
47 $(DEBUGGER_BIN_SCRIPTS_LLDB)
48 DEBUGGER_BIN_SCRIPTS_ALL_ABS=$(DEBUGGER_BIN_SCRIPTS_GDB_ABS) \
49 $(DEBUGGER_BIN_SCRIPTS_LLDB_ABS)
52 # $(1) - the stage to copy to
53 # $(2) - the host triple
54 define DEF_INSTALL_DEBUGGER_SCRIPTS_HOST
56 tmp/install-debugger-scripts$(1)_H_$(2)-gdb.done: \
57 $$(DEBUGGER_RUSTLIB_ETC_SCRIPTS_GDB_ABS) \
58 $$(DEBUGGER_BIN_SCRIPTS_GDB_ABS)
59 $(Q)mkdir -p $$(HBIN$(1)_H_$(2))
60 $(Q)mkdir -p $$(HLIB$(1)_H_$(2))/rustlib/etc
61 $(Q)install $$(DEBUGGER_BIN_SCRIPTS_GDB_ABS) $$(HBIN$(1)_H_$(2))
62 $(Q)install $$(DEBUGGER_RUSTLIB_ETC_SCRIPTS_GDB_ABS) $$(HLIB$(1)_H_$(2))/rustlib/etc
65 tmp/install-debugger-scripts$(1)_H_$(2)-lldb.done: \
66 $$(DEBUGGER_RUSTLIB_ETC_SCRIPTS_LLDB_ABS) \
67 $$(DEBUGGER_BIN_SCRIPTS_LLDB_ABS)
68 $(Q)mkdir -p $$(HBIN$(1)_H_$(2))
69 $(Q)mkdir -p $$(HLIB$(1)_H_$(2))/rustlib/etc
70 $(Q)install $$(DEBUGGER_BIN_SCRIPTS_LLDB_ABS) $$(HBIN$(1)_H_$(2))
71 $(Q)install $$(DEBUGGER_RUSTLIB_ETC_SCRIPTS_LLDB_ABS) $$(HLIB$(1)_H_$(2))/rustlib/etc
74 tmp/install-debugger-scripts$(1)_H_$(2)-all.done: \
75 $$(DEBUGGER_RUSTLIB_ETC_SCRIPTS_ALL_ABS) \
76 $$(DEBUGGER_BIN_SCRIPTS_ALL_ABS)
77 $(Q)mkdir -p $$(HBIN$(1)_H_$(2))
78 $(Q)mkdir -p $$(HLIB$(1)_H_$(2))/rustlib/etc
79 $(Q)install $$(DEBUGGER_BIN_SCRIPTS_ALL_ABS) $$(HBIN$(1)_H_$(2))
80 $(Q)install $$(DEBUGGER_RUSTLIB_ETC_SCRIPTS_ALL_ABS) $$(HLIB$(1)_H_$(2))/rustlib/etc
83 tmp/install-debugger-scripts$(1)_H_$(2)-none.done:
88 # Expand host make-targets for all stages
89 $(foreach stage,$(STAGES), \
90 $(foreach host,$(CFG_HOST), \
91 $(eval $(call DEF_INSTALL_DEBUGGER_SCRIPTS_HOST,$(stage),$(host)))))
93 # $(1) is the stage number
94 # $(2) is the target triple
95 # $(3) is the host triple
96 define DEF_INSTALL_DEBUGGER_SCRIPTS_TARGET
98 tmp/install-debugger-scripts$(1)_T_$(2)_H_$(3)-gdb.done: \
99 $$(DEBUGGER_RUSTLIB_ETC_SCRIPTS_GDB_ABS) \
100 $$(DEBUGGER_BIN_SCRIPTS_GDB_ABS)
101 $(Q)mkdir -p $$(TBIN$(1)_T_$(2)_H_$(3))
102 $(Q)mkdir -p $$(TLIB$(1)_T_$(2)_H_$(3))/rustlib/etc
103 $(Q)install $(DEBUGGER_BIN_SCRIPTS_GDB_ABS) $$(TBIN$(1)_T_$(2)_H_$(3))
104 $(Q)install $(DEBUGGER_RUSTLIB_ETC_SCRIPTS_GDB_ABS) $$(TLIB$(1)_T_$(2)_H_$(3))/rustlib/etc
107 tmp/install-debugger-scripts$(1)_T_$(2)_H_$(3)-lldb.done: \
108 $$(DEBUGGER_RUSTLIB_ETC_SCRIPTS_LLDB_ABS) \
109 $$(DEBUGGER_BIN_SCRIPTS_LLDB_ABS)
110 $(Q)mkdir -p $$(TBIN$(1)_T_$(2)_H_$(3))
111 $(Q)mkdir -p $$(TLIB$(1)_T_$(2)_H_$(3))/rustlib/etc
112 $(Q)install $(DEBUGGER_BIN_SCRIPTS_LLDB_ABS) $$(TBIN$(1)_T_$(2)_H_$(3))
113 $(Q)install $(DEBUGGER_RUSTLIB_ETC_SCRIPTS_LLDB_ABS) $$(TLIB$(1)_T_$(2)_H_$(3))/rustlib/etc
116 tmp/install-debugger-scripts$(1)_T_$(2)_H_$(3)-all.done: \
117 $$(DEBUGGER_RUSTLIB_ETC_SCRIPTS_ALL_ABS) \
118 $$(DEBUGGER_BIN_SCRIPTS_ALL_ABS)
119 $(Q)mkdir -p $$(TBIN$(1)_T_$(2)_H_$(3))
120 $(Q)mkdir -p $$(TLIB$(1)_T_$(2)_H_$(3))/rustlib/etc
121 $(Q)install $(DEBUGGER_BIN_SCRIPTS_ALL_ABS) $$(TBIN$(1)_T_$(2)_H_$(3))
122 $(Q)install $(DEBUGGER_RUSTLIB_ETC_SCRIPTS_ALL_ABS) $$(TLIB$(1)_T_$(2)_H_$(3))/rustlib/etc
125 tmp/install-debugger-scripts$(1)_T_$(2)_H_$(3)-none.done:
130 # Expand target make-targets for all stages
131 $(foreach stage,$(STAGES), \
132 $(foreach target,$(CFG_TARGET), \
133 $(foreach host,$(CFG_HOST), \
134 $(eval $(call DEF_INSTALL_DEBUGGER_SCRIPTS_TARGET,$(stage),$(target),$(host))))))