Merge remote-tracking branch 'origin/tomato-shibby-RT-AC' into arrmo-RT-AC
[tomato.git] / release / src / router / rc / Makefile
blobd30c9b3785d49aa9a287b8d7b01a995237378707
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
7 LDFLAGS = -L$(TOP)/nvram -lnvram -L$(TOP)/shared -lshared -lcrypt
8 LDFLAGS += -ffunction-sections -fdata-sections -Wl,--gc-sections
9 ifeq ($(STATIC),1)
10 LDFLAGS += -static
11 endif
13 OBJS := rc.o init.o interface.o network.o wan.o services.o dhcp.o
14 OBJS += firewall.o ppp.o telssh.o wnas.o
15 OBJS += listen.o redial.o led.o qos.o forward.o misc.o mtd.o
16 OBJS += buttons.o restrict.o gpio.o sched.o
17 OBJS += new_qoslimit.o arpbind.o
18 OBJS += tomatoanon.o
19 OBJS += blink.o remote_leases.o
21 ifeq ($(CONFIG_BCMWL6),y)
22 OBJS += blink_5g.o
23 endif
25 ifeq ($(TCONFIG_USB),y)
26 OBJS += usb.o
27 endif
28 ifeq ($(TCONFIG_DDNS),y)
29 OBJS += ddns.o
30 endif
31 ifeq ($(TCONFIG_CIFS),y)
32 OBJS += cifs.o
33 endif
34 ifeq ($(TCONFIG_JFFS2),y)
35 OBJS += jffs2.o
36 endif
37 ifeq ($(TCONFIG_OPENVPN),y)
38 OBJS += vpn.o
39 endif
41 ifeq ($(TCONFIG_PPTPD),y)
42 OBJS += pptpd.o
43 OBJS += pptp_client.o
44 endif
46 ifeq ($(TCONFIG_NOCAT),y)
47 OBJS += nocat.o
48 endif
50 ifeq ($(TCONFIG_NGINX),y)
51 OBJS += nginx.o
52 endif
54 ifeq ($(TOMATO_SL),1)
55 #OBJS += usb.o
56 OBJS += samba.o
57 endif
59 ifeq ($(TCONFIG_BT),y)
60 OBJS += transmission.o
61 endif
63 ifeq ($(TCONFIG_NFS),y)
64 OBJS += nfs.o
65 endif
67 ifeq ($(TCONFIG_SNMP),y)
68 OBJS += snmp.o
69 endif
71 ifeq ($(TCONFIG_SDHC),y)
72 OBJS += mmc.o
73 endif
75 ifeq ($(TCONFIG_UPS),y)
76 OBJS += ups.o
77 endif
79 ifeq ($(TCONFIG_TOR),y)
80 OBJS += tor.o
81 endif
83 all: rc
85 rc: $(OBJS)
86 @echo " [rc] CC $@"
87 @$(CC) -o $@ $^ $(LDFLAGS)
89 $(SIZECHECK)
90 $(CPTMP)
92 install: all
93 @echo "[rc] Installing..."
94 @install -D rc $(INSTALLDIR)/sbin/rc
95 @$(STRIP) $(INSTALLDIR)/sbin/rc
96 @chmod 0500 $(INSTALLDIR)/sbin/rc
98 @cd $(INSTALLDIR)/sbin && ln -sf rc init
99 @cd $(INSTALLDIR)/sbin && ln -sf rc console
100 @cd $(INSTALLDIR)/sbin && ln -sf rc hotplug
101 @cd $(INSTALLDIR)/sbin && ln -sf rc service
102 @cd $(INSTALLDIR)/sbin && ln -sf rc buttons
103 @cd $(INSTALLDIR)/sbin && ln -sf rc blink
104 @cd $(INSTALLDIR)/sbin && ln -sf rc remote-leases
105 ifeq ($(CONFIG_BCMWL6),y)
106 @cd $(INSTALLDIR)/sbin && ln -sf rc blink_5g
107 endif
108 @cd $(INSTALLDIR)/sbin && ln -sf rc rcheck
109 @cd $(INSTALLDIR)/sbin && ln -sf rc radio
110 @cd $(INSTALLDIR)/sbin && ln -sf rc led
111 @cd $(INSTALLDIR)/sbin && ln -sf rc reboot
112 @cd $(INSTALLDIR)/sbin && ln -sf rc halt
113 @cd $(INSTALLDIR)/sbin && ln -sf rc redial
114 @cd $(INSTALLDIR)/sbin && ln -sf rc gpio
115 @cd $(INSTALLDIR)/sbin && ln -sf rc sched
117 @cd $(INSTALLDIR)/sbin && ln -sf rc disconnected_pppoe
118 @cd $(INSTALLDIR)/sbin && ln -sf rc listen
119 @cd $(INSTALLDIR)/sbin && ln -sf rc ppp_event
121 @cd $(INSTALLDIR)/sbin && ln -sf rc mtd-write
122 @cd $(INSTALLDIR)/sbin && ln -sf rc mtd-erase
123 @cd $(INSTALLDIR)/sbin && ln -sf rc mtd-unlock
125 @cd $(INSTALLDIR)/sbin && ln -sf rc dhcpc-event
126 @cd $(INSTALLDIR)/sbin && ln -sf rc dhcpc-release
127 @cd $(INSTALLDIR)/sbin && ln -sf rc dhcpc-renew
129 @cd $(INSTALLDIR)/sbin && ln -sf rc wldist
131 ifeq ($(TCONFIG_IPV6),y)
132 @cd $(INSTALLDIR)/sbin && ln -sf rc dhcp6c-state
133 endif
135 ifeq ($(TCONFIG_DDNS),y)
136 @cd $(INSTALLDIR)/sbin && ln -sf rc ddns-update
137 endif
139 ifeq ($(TCONFIG_CIFS),y)
140 @cd $(INSTALLDIR)/sbin && ln -sf rc mount-cifs
141 endif
143 ifeq ($(TOMATO_SL),1)
144 @cd $(INSTALLDIR)/sbin && ln -sf rc usbevent
145 @cd $(INSTALLDIR)/sbin && ln -sf rc usbrescan
146 @cd $(INSTALLDIR)/sbin && ln -sf rc hotdiskadd
147 @cd $(INSTALLDIR)/sbin && ln -sf rc hotdiskremove
148 @cd $(INSTALLDIR)/sbin && ln -sf rc hotdiskerror
149 @cd $(INSTALLDIR)/sbin && ln -sf rc umountx
150 endif
152 ifeq ($(TCONFIG_OPENVPN),y)
153 @mkdir -p $(INSTALLDIR)/rom/openvpn
154 @cp openvpn-updown.sh $(INSTALLDIR)/rom/openvpn/updown.sh
155 @chmod 0755 $(INSTALLDIR)/rom/openvpn/updown.sh
156 endif
158 @mkdir -p $(INSTALLDIR)/usr/sbin
159 @cp pidcheck.sh $(INSTALLDIR)/usr/sbin/pidcheck.sh
160 @chmod 0755 $(INSTALLDIR)/usr/sbin/pidcheck.sh
162 clean:
163 rm -f rc *.o .*.depend
165 size: rc
166 mipsel-uclibc-nm --print-size --size-sort rc
168 %.o: %.c .%.depend
169 @echo " [rc] CC $@"
170 @$(CC) $(CFLAGS) -c $<
172 .%.depend: %.c
173 @$(CC) $(CFLAGS) -M $< > $@
175 -include $(OBJS:%.o=.%.depend)
179 pswatch: pswatch.c
180 $(CC) -o $@ $^
181 $(STRIP) $@
182 $(CPTMP)