Add Xiaomi R1D support
[tomato.git] / release / src-rt-6.x.4708 / router / rc / Makefile
blob84764b3ab8f6f6f1accc98555210eb35a45f9c93
1 include ../common.mak
3 CFLAGS = -Wall -Os $(EXTRACFLAGS)
4 CFLAGS += -I. -I$(TOP)/shared -I$(SRCBASE)/include -idirafter$(LINUXDIR)/include
5 CFLAGS += -ffunction-sections -fdata-sections
8 ifeq ($(TCONFIG_BCMARM),y)
9 LDFLAGS = -L$(TOP)/nvram${BCMEX} -lnvram -L$(TOP)/shared -lshared -lcrypt -L$(TOP)/libbcmcrypto -lbcmcrypto
10 CFLAGS += -I$(SRCBASE)/shared/bcmwifi/include -DHAVE_TYPE_FLOAT
11 CFLAGS += -I$(SRCBASE)/common/include
12 LDFLAGS += -L$(TOP)/libbcm -lbcm
13 LDFLAGS += -lgcc_s
14 else
15 LDFLAGS = -L$(TOP)/nvram -lnvram -L$(TOP)/shared -lshared -lcrypt
16 endif
18 LDFLAGS += -ffunction-sections -fdata-sections -Wl,--gc-sections
19 ifeq ($(STATIC),1)
20 LDFLAGS += -static
21 endif
23 LDFLAGS += $(EXTRA_LDFLAGS)
25 ifeq ($(TCONFIG_BCMSMP),y)
26 CFLAGS += -DSMP
27 endif
29 OBJS := rc.o init.o interface.o network.o wan.o services.o dhcp.o
30 OBJS += firewall.o ppp.o telssh.o wnas.o
31 OBJS += listen.o redial.o led.o qos.o forward.o misc.o mtd.o
32 OBJS += buttons.o restrict.o gpio.o sched.o
33 OBJS += new_qoslimit.o arpbind.o
34 OBJS += tomatoanon.o
35 OBJS += blink.o
37 ifeq ($(TCONFIG_BCMARM),y)
38 OBJS += bcmutils.o
39 endif
41 #ifeq ($(CONFIG_BCMWL6),y)
42 OBJS += blink_5g.o
43 #endif
45 ifeq ($(TCONFIG_FANCTRL),y)
46 OBJS += phy_tempsense.o
47 endif
48 ifeq ($(TCONFIG_USB),y)
49 OBJS += usb.o
50 endif
51 ifeq ($(TCONFIG_DDNS),y)
52 OBJS += ddns.o
53 endif
54 ifeq ($(TCONFIG_CIFS),y)
55 OBJS += cifs.o
56 endif
57 ifeq ($(TCONFIG_JFFS2),y)
58 OBJS += jffs2.o
59 endif
60 ifeq ($(TCONFIG_OPENVPN),y)
61 OBJS += vpn.o
62 endif
63 ifeq ($(TCONFIG_TINC),y)
64 OBJS += tinc.o
65 endif
66 ifeq ($(TCONFIG_PPTPD),y)
67 OBJS += pptpd.o
68 OBJS += pptp_client.o
69 endif
71 ifeq ($(TCONFIG_NOCAT),y)
72 OBJS += nocat.o
73 endif
75 ifeq ($(TCONFIG_NGINX),y)
76 OBJS += nginx.o
77 OBJS += mysql.o
78 endif
80 ifeq ($(TOMATO_SL),1)
81 #OBJS += usb.o
82 OBJS += samba.o
83 endif
85 ifeq ($(TCONFIG_BT),y)
86 OBJS += transmission.o
87 endif
89 ifeq ($(TCONFIG_NFS),y)
90 OBJS += nfs.o
91 endif
93 ifeq ($(TCONFIG_SNMP),y)
94 OBJS += snmp.o
95 endif
97 ifeq ($(TCONFIG_SDHC),y)
98 OBJS += mmc.o
99 endif
101 ifeq ($(TCONFIG_UPS),y)
102 OBJS += ups.o
103 endif
105 ifeq ($(TCONFIG_TOR),y)
106 OBJS += tor.o
107 endif
109 ifeq ($(TCONFIG_BCMARM),y)
110 vpath %.c $(SRCBASE)/shared
111 endif
113 all: rc
115 rc: $(OBJS)
116 @echo " [rc] CC $@"
117 @$(CC) -o $@ $^ $(LDFLAGS)
119 $(SIZECHECK)
120 $(CPTMP)
122 install: all
123 @echo "[rc] Installing..."
124 @install -D rc $(INSTALLDIR)/sbin/rc
125 @$(STRIP) $(INSTALLDIR)/sbin/rc
126 @chmod 0500 $(INSTALLDIR)/sbin/rc
128 ifeq ($(TCONFIG_BCMARM),y)
129 @cd $(INSTALLDIR)/sbin && ln -sf rc preinit
130 else
131 @cd $(INSTALLDIR)/sbin && ln -sf rc init
132 endif
133 @cd $(INSTALLDIR)/sbin && ln -sf rc console
134 @cd $(INSTALLDIR)/sbin && ln -sf rc hotplug
135 @cd $(INSTALLDIR)/sbin && ln -sf rc service
136 @cd $(INSTALLDIR)/sbin && ln -sf rc buttons
137 @cd $(INSTALLDIR)/sbin && ln -sf rc blink
138 @cd $(INSTALLDIR)/sbin && ln -sf rc blink_5g
139 ifeq ($(TCONFIG_FANCTRL),y)
140 @cd $(INSTALLDIR)/sbin && ln -sf rc phy_tempsense
141 endif
142 @cd $(INSTALLDIR)/sbin && ln -sf rc rcheck
143 @cd $(INSTALLDIR)/sbin && ln -sf rc radio
144 @cd $(INSTALLDIR)/sbin && ln -sf rc led
145 @cd $(INSTALLDIR)/sbin && ln -sf rc reboot
146 @cd $(INSTALLDIR)/sbin && ln -sf rc halt
147 @cd $(INSTALLDIR)/sbin && ln -sf rc redial
148 @cd $(INSTALLDIR)/sbin && ln -sf rc gpio
149 @cd $(INSTALLDIR)/sbin && ln -sf rc sched
151 @cd $(INSTALLDIR)/sbin && ln -sf rc disconnected_pppoe
152 @cd $(INSTALLDIR)/sbin && ln -sf rc listen
153 @cd $(INSTALLDIR)/sbin && ln -sf rc ppp_event
155 ifeq ($(TCONFIG_BCMARM),y)
156 @cd $(INSTALLDIR)/sbin && ln -sf rc mtd-write2
157 @cd $(INSTALLDIR)/sbin && ln -sf rc mtd-erase2
158 @cd $(INSTALLDIR)/sbin && ln -sf rc nvram_erase
159 else
160 @cd $(INSTALLDIR)/sbin && ln -sf rc mtd-write
161 @cd $(INSTALLDIR)/sbin && ln -sf rc mtd-erase
162 endif
163 @cd $(INSTALLDIR)/sbin && ln -sf rc mtd-unlock
165 @cd $(INSTALLDIR)/sbin && ln -sf rc dhcpc-event
166 @cd $(INSTALLDIR)/sbin && ln -sf rc dhcpc-release
167 @cd $(INSTALLDIR)/sbin && ln -sf rc dhcpc-renew
169 @cd $(INSTALLDIR)/sbin && ln -sf rc wldist
171 ifeq ($(TCONFIG_IPV6),y)
172 @cd $(INSTALLDIR)/sbin && ln -sf rc dhcp6c-state
173 endif
175 ifeq ($(TCONFIG_DDNS),y)
176 @cd $(INSTALLDIR)/sbin && ln -sf rc ddns-update
177 endif
179 ifeq ($(TCONFIG_CIFS),y)
180 @cd $(INSTALLDIR)/sbin && ln -sf rc mount-cifs
181 endif
183 ifeq ($(TOMATO_SL),1)
184 @cd $(INSTALLDIR)/sbin && ln -sf rc usbevent
185 @cd $(INSTALLDIR)/sbin && ln -sf rc usbrescan
186 @cd $(INSTALLDIR)/sbin && ln -sf rc hotdiskadd
187 @cd $(INSTALLDIR)/sbin && ln -sf rc hotdiskremove
188 @cd $(INSTALLDIR)/sbin && ln -sf rc hotdiskerror
189 @cd $(INSTALLDIR)/sbin && ln -sf rc umountx
190 endif
192 ifeq ($(TCONFIG_OPENVPN),y)
193 @mkdir -p $(INSTALLDIR)/rom/openvpn
194 @cp openvpn-updown.sh $(INSTALLDIR)/rom/openvpn/updown.sh
195 @chmod 0755 $(INSTALLDIR)/rom/openvpn/updown.sh
196 endif
198 clean:
199 rm -f rc *.o .*.depend
201 size: rc
202 mipsel-uclibc-nm --print-size --size-sort rc
204 %.o: %.c .%.depend
205 @echo " [rc] CC $@"
206 @$(CC) $(CFLAGS) -c $<
208 .%.depend: %.c
209 @$(CC) $(CFLAGS) -M $< > $@
211 -include $(OBJS:%.o=.%.depend)
215 pswatch: pswatch.c
216 $(CC) -o $@ $^
217 $(STRIP) $@
218 $(CPTMP)