aboutsummaryrefslogtreecommitdiffstats
path: root/bootscripts/Makefile
blob: 63ae8150ecdbb1ea1126537474d11f240fc73c6f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
ETCDIR=${DESTDIR}/etc
LIBDIR=${DESTDIR}/lib
SERVICEDIR=${LIBDIR}/services
UNITDIR=${LIBDIR}/systemd/system
MAN8=${DESTDIR}/usr/share/man/man8
SBIN=${DESTDIR}/sbin
MODE=754
DIRMODE=755
CONFMODE=644

all: links

install: all

create-dirs:
	install -d -m ${DIRMODE}  ${ETCDIR}/rc.d/rc0.d
	install -d -m ${DIRMODE}  ${ETCDIR}/rc.d/rc1.d
	install -d -m ${DIRMODE}  ${ETCDIR}/rc.d/rc2.d
	install -d -m ${DIRMODE}  ${ETCDIR}/rc.d/rc3.d
	install -d -m ${DIRMODE}  ${ETCDIR}/rc.d/rc4.d
	install -d -m ${DIRMODE}  ${ETCDIR}/rc.d/rc5.d
	install -d -m ${DIRMODE}  ${ETCDIR}/rc.d/rc6.d
	install -d -m ${DIRMODE}  ${ETCDIR}/rc.d/rcS.d
	install -d -m ${DIRMODE}  ${ETCDIR}/rc.d/init.d
	install -d -m ${DIRMODE}  ${ETCDIR}/sysconfig
	install -d -m ${DIRMODE}  ${LIBDIR}
	install -d -m ${DIRMODE}  ${SERVICEDIR}
	install -d -m ${DIRMODE}  ${MAN8}
	install -d -m ${DIRMODE}  ${SBIN}
	ln -sfn       services    ${LIBDIR}/lsb
	ln -sfn       rc.d/init.d ${ETCDIR}/init.d-sysv
	ln -sfn       init.d-sysv ${ETCDIR}/init.d

files: create-dirs 
	install -m ${MODE} lfs/init.d/checkfs       ${ETCDIR}/rc.d/init.d/
	install -m ${MODE} lfs/init.d/cleanfs       ${ETCDIR}/rc.d/init.d/
	install -m ${MODE} lfs/init.d/halt          ${ETCDIR}/rc.d/init.d/
	install -m ${MODE} lfs/init.d/console       ${ETCDIR}/rc.d/init.d/
	install -m ${MODE} lfs/init.d/localnet      ${ETCDIR}/rc.d/init.d/
	install -m ${MODE} lfs/init.d/modules       ${ETCDIR}/rc.d/init.d/
	install -m ${MODE} lfs/init.d/mountfs       ${ETCDIR}/rc.d/init.d/
	install -m ${MODE} lfs/init.d/mountvirtfs   ${ETCDIR}/rc.d/init.d/
	install -m ${MODE} lfs/init.d/network       ${ETCDIR}/rc.d/init.d/
	install -m ${MODE} lfs/init.d/rc            ${ETCDIR}/rc.d/init.d/
	install -m ${MODE} lfs/init.d/reboot        ${ETCDIR}/rc.d/init.d/
	install -m ${MODE} lfs/init.d/sendsignals   ${ETCDIR}/rc.d/init.d/
	install -m ${MODE} lfs/init.d/setclock      ${ETCDIR}/rc.d/init.d/
	install -m ${MODE} lfs/init.d/swap          ${ETCDIR}/rc.d/init.d/
	install -m ${MODE} lfs/init.d/sysctl        ${ETCDIR}/rc.d/init.d/
	install -m ${MODE} lfs/init.d/sysklogd      ${ETCDIR}/rc.d/init.d/
	install -m ${MODE} lfs/init.d/template      ${ETCDIR}/rc.d/init.d/
	install -m ${MODE} lfs/init.d/udev          ${ETCDIR}/rc.d/init.d/
	install -m ${MODE} lfs/init.d/udev_retry    ${ETCDIR}/rc.d/init.d/
	install -m ${MODE} lfs/sbin/ifup            ${SBIN}
	install -m ${MODE} lfs/sbin/ifdown          ${SBIN}
	install -m ${CONFMODE} lfs/sbin/ifup.8      ${MAN8}
	ln -sf  ifup.8                              ${MAN8}/ifdown.8
	install -m ${MODE}     lfs/lib/services/ipv4-static-route  ${SERVICEDIR}
	install -m ${MODE}     lfs/lib/services/ipv4-static        ${SERVICEDIR}
	install -m ${CONFMODE} lfs/lib/services/init-functions     ${SERVICEDIR}

	if [ ! -f ${ETCDIR}/sysconfig/createfiles ]; then \
          install -m ${CONFMODE} lfs/sysconfig/createfiles ${ETCDIR}/sysconfig/ ;\
        fi
	if [ ! -f ${ETCDIR}/sysconfig/modules     ]; then \
          install -m ${CONFMODE} lfs/sysconfig/modules     ${ETCDIR}/sysconfig/ ;\
        fi
	if [ ! -f ${ETCDIR}/sysconfig/udev_retry  ]; then \
          install -m ${CONFMODE} lfs/sysconfig/udev_retry  ${ETCDIR}/sysconfig/ ;\
        fi
	if [ ! -f ${ETCDIR}/sysconfig/rc.site     ]; then \
          install -m ${CONFMODE} lfs/sysconfig/rc.site     ${ETCDIR}/sysconfig/ ;\
        fi

links: rcS rc0 rc1 rc2 rc3 rc4 rc5 rc6

rcS: files
	ln -sf ../init.d/mountvirtfs ${ETCDIR}/rc.d/rcS.d/S00mountvirtfs
	ln -sf ../init.d/modules     ${ETCDIR}/rc.d/rcS.d/S05modules
	ln -sf ../init.d/localnet    ${ETCDIR}/rc.d/rcS.d/S08localnet
	ln -sf ../init.d/udev        ${ETCDIR}/rc.d/rcS.d/S10udev
	ln -sf ../init.d/swap        ${ETCDIR}/rc.d/rcS.d/S20swap
	ln -sf ../init.d/checkfs     ${ETCDIR}/rc.d/rcS.d/S30checkfs
	ln -sf ../init.d/mountfs     ${ETCDIR}/rc.d/rcS.d/S40mountfs
	ln -sf ../init.d/cleanfs     ${ETCDIR}/rc.d/rcS.d/S45cleanfs
	ln -sf ../init.d/udev_retry  ${ETCDIR}/rc.d/rcS.d/S50udev_retry
	ln -sf ../init.d/console     ${ETCDIR}/rc.d/rcS.d/S70console
	ln -sf ../init.d/sysctl      ${ETCDIR}/rc.d/rcS.d/S90sysctl

rc0: files
	ln -sf ../init.d/network     ${ETCDIR}/rc.d/rc0.d/K80network
	ln -sf ../init.d/sysklogd    ${ETCDIR}/rc.d/rc0.d/K90sysklogd
	ln -sf ../init.d/sendsignals ${ETCDIR}/rc.d/rc0.d/S60sendsignals
	ln -sf ../init.d/swap        ${ETCDIR}/rc.d/rc0.d/S65swap
	ln -sf ../init.d/mountfs     ${ETCDIR}/rc.d/rc0.d/S70mountfs
	ln -sf ../init.d/localnet    ${ETCDIR}/rc.d/rc0.d/S90localnet
	ln -sf ../init.d/halt        ${ETCDIR}/rc.d/rc0.d/S99halt

rc1: files
	ln -sf ../init.d/network     ${ETCDIR}/rc.d/rc1.d/K80network
	ln -sf ../init.d/sysklogd    ${ETCDIR}/rc.d/rc1.d/K90sysklogd

rc2: files
	ln -sf ../init.d/network     ${ETCDIR}/rc.d/rc2.d/K80network
	ln -sf ../init.d/sysklogd    ${ETCDIR}/rc.d/rc2.d/K90sysklogd

rc3: files
	ln -sf ../init.d/sysklogd    ${ETCDIR}/rc.d/rc3.d/S10sysklogd
	ln -sf ../init.d/network     ${ETCDIR}/rc.d/rc3.d/S20network

rc4: files
	ln -sf ../init.d/sysklogd    ${ETCDIR}/rc.d/rc4.d/S10sysklogd
	ln -sf ../init.d/network     ${ETCDIR}/rc.d/rc4.d/S20network

rc5: files
	ln -sf ../init.d/sysklogd    ${ETCDIR}/rc.d/rc5.d/S10sysklogd
	ln -sf ../init.d/network     ${ETCDIR}/rc.d/rc5.d/S20network

rc6: files
	ln -sf ../init.d/network     ${ETCDIR}/rc.d/rc6.d/K80network
	ln -sf ../init.d/sysklogd    ${ETCDIR}/rc.d/rc6.d/K90sysklogd
	ln -sf ../init.d/sendsignals ${ETCDIR}/rc.d/rc6.d/S60sendsignals
	ln -sf ../init.d/swap        ${ETCDIR}/rc.d/rc6.d/S65swap
	ln -sf ../init.d/mountfs     ${ETCDIR}/rc.d/rc6.d/S70mountfs
	ln -sf ../init.d/localnet    ${ETCDIR}/rc.d/rc6.d/S90localnet
	ln -sf ../init.d/reboot      ${ETCDIR}/rc.d/rc6.d/S99reboot

uninstall:
	rm -rf ${DESTDIR}/lib/services ${DESTDIR}/lib/lsb ${ETCDIR}/rc.d ${ETCDIR}/init.d \
          ${SBIN}/ifup ${SBIN}/ifdown ${MAN8}/ifup.8 ${MAN8}/ifdown.8 \
          ${ETCDIR}/sysconfig/rc 

.PHONY: all create-dirs install files links rcS rc0 rc1 rc2 rc3 rc4 rc5 rc6 uninstall