bin/sandwich: Run the toolchain nicely.
[rsv] / Makefile
CommitLineData
6c01d562
MW
1### -*-makefile-*-
2
3.SECONDEXPANSION:
4all:
5clean::
6install::
7.PHONY: all clean install
8
9%/:; mkdir -p $*
10
11INSTFILES =
12INSTDIRS =
13
14INSTFILES += profile
15profile_SOURCE = profile
16profile_DEST = $(HOME)/.profile
17
18INSTDIRS += bin
19bin_DIR = $(HOME)/bin
20bin_MODE = 775
21bin_FILES =
22bin_FILES += bin/rustup-init
23bin_FILES += bin/sandwich
24
25INSTDIRS += userv
26userv_DIR = $(HOME)/.userv
27userv_FILES =
28userv_FILES += userv/rc
29
30INSTDIRS += services
31services_DIR = $(HOME)/.userv/services.d
32services_FILES =
33services_FILES += userv/sandwich
34
35install:: $(foreach f,$(INSTFILES), install/$f)
36$(foreach f,$(INSTFILES), install/$f): \
37 install/%: $$($$*_SOURCE) | $$(dir $$($$*_DEST))
38 install -m$(or $($*_MODE),664) $($*_SOURCE) $($*_DEST)
39.PHONY: $(foreach d,$(INSTFILES), install/$f)
40
41install:: $(foreach d,$(INSTDIRS), install/$d)
42$(foreach d,$(INSTDIRS), install/$d): \
43 install/%: $$($$*_FILES) | $$($$*_DIR)/
44 install -m$(or $($*_MODE),664) $($*_FILES) $($*_DIR)/
45.PHONY: $(foreach d,$(INSTDIRS), install/$d)
46
47install:: | $(HOME)/CARGO/
48install:: | $(HOME)/RUSTUP/