summaryrefslogtreecommitdiff
path: root/Makefile
blob: de57ef9ca3127170a48a5f4dbee0e7165dfd6091 (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
135
136
137
138
139
140
141
142
ETCDIR=${DESTDIR}/etc
LIBDIR=${DESTDIR}/lib
SERVICEDIR=${LIBDIR}/services
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

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

	if [ ! -f ${ETCDIR}/sysconfig/createfiles ]; then \
          install -m ${CONFMODE} xi/sysconfig/createfiles ${ETCDIR}/sysconfig/ ;\
        fi
	if [ ! -f ${ETCDIR}/sysconfig/modules     ]; then \
          install -m ${CONFMODE} xi/sysconfig/modules     ${ETCDIR}/sysconfig/ ;\
        fi
	if [ ! -f ${ETCDIR}/sysconfig/udev_retry  ]; then \
          install -m ${CONFMODE} xi/sysconfig/udev_retry  ${ETCDIR}/sysconfig/ ;\
        fi
	if [ ! -f ${ETCDIR}/sysconfig/rc.site     ]; then \
          install -m ${CONFMODE} xi/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/K92sendsignals
	ln -sf ../init.d/swap        ${ETCDIR}/rc.d/rc0.d/K94swap
	ln -sf ../init.d/mountfs     ${ETCDIR}/rc.d/rc0.d/K96mountfs
	ln -sf ../init.d/localnet    ${ETCDIR}/rc.d/rc0.d/K98localnet
	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/S10network
	ln -sf ../init.d/sysklogd    ${ETCDIR}/rc.d/rc2.d/S20sysklogd

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/K92sendsignals
	ln -sf ../init.d/swap        ${ETCDIR}/rc.d/rc6.d/K94swap
	ln -sf ../init.d/mountfs     ${ETCDIR}/rc.d/rc6.d/K96mountfs
	ln -sf ../init.d/localnet    ${ETCDIR}/rc.d/rc6.d/K98localnet
	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

utmps:
	mkdir -p $(DESTDIR)/var/log/utmps                                                  
	mv 		 $(DESTDIR)/var/log/wtmp /var/log/utmps/                                       

install-mkinitramfs: mkinitrd/mkinitramfs.sh mkinitrd/init.in
	install -d $(DESTDIR)$(PREFIX)/bin
	install -d $(DESTDIR)$(PREFIX)/share/mkinitramfs
	install -m755 mkinitrd/mkinitramfs.sh ${DESTDIR}${PREFIX}/bin/mkinitramfs
	install -m644 mkinitrd/init.in ${DESTDIR}${PREFIX}/share/mkinitramfs/

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