Add PPTP runtime and GUI
[tomato.git] / release / src / router / rc / Makefile
blob69795fd8e081c12a74fd26082915e9aa21ac28cd
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 += bwclimon.o
18 OBJS += account.o
19 OBJS += arpbind.o
20 OBJS += qoslimit.o
21 OBJS += pptp_client.o
23 # heartbeat.o
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
40 ifeq ($(TCONFIG_NOCAT),y)
41 OBJS += nocat.o
42 endif
44 ifeq ($(TOMATO_SL),1)
45 #OBJS += usb.o
46 OBJS += samba.o
47 endif
50 ifeq ($(TCONFIG_SNMP),y)
51 OBJS += snmp.o
52 endif
54 all: rc
56 rc: $(OBJS)
57 @echo " [rc] CC $@"
58 @$(CC) -o $@ $^ $(LDFLAGS)
60 $(SIZECHECK)
61 $(CPTMP)
63 install: all
64 @echo "[rc] Installing..."
65 @install -D rc $(INSTALLDIR)/sbin/rc
66 @$(STRIP) $(INSTALLDIR)/sbin/rc
67 @chmod 0500 $(INSTALLDIR)/sbin/rc
69 @cd $(INSTALLDIR)/sbin && ln -sf rc init
70 @cd $(INSTALLDIR)/sbin && ln -sf rc console
71 @cd $(INSTALLDIR)/sbin && ln -sf rc hotplug
72 @cd $(INSTALLDIR)/sbin && ln -sf rc service
73 @cd $(INSTALLDIR)/sbin && ln -sf rc buttons
74 @cd $(INSTALLDIR)/sbin && ln -sf rc rcheck
75 @cd $(INSTALLDIR)/sbin && ln -sf rc radio
76 @cd $(INSTALLDIR)/sbin && ln -sf rc led
77 @cd $(INSTALLDIR)/sbin && ln -sf rc reboot
78 @cd $(INSTALLDIR)/sbin && ln -sf rc halt
79 @cd $(INSTALLDIR)/sbin && ln -sf rc redial
80 @cd $(INSTALLDIR)/sbin && ln -sf rc gpio
81 @cd $(INSTALLDIR)/sbin && ln -sf rc sched
83 @cd $(INSTALLDIR)/sbin && ln -sf rc disconnected_pppoe
84 @cd $(INSTALLDIR)/sbin && ln -sf rc listen
85 @cd $(INSTALLDIR)/sbin && ln -sf rc ppp_event
87 @cd $(INSTALLDIR)/sbin && ln -sf rc mtd-write
88 @cd $(INSTALLDIR)/sbin && ln -sf rc mtd-erase
89 @cd $(INSTALLDIR)/sbin && ln -sf rc mtd-unlock
91 @cd $(INSTALLDIR)/sbin && ln -sf rc dhcpc-event
92 @cd $(INSTALLDIR)/sbin && ln -sf rc dhcpc-release
93 @cd $(INSTALLDIR)/sbin && ln -sf rc dhcpc-renew
95 @cd $(INSTALLDIR)/sbin && ln -sf rc wldist
97 ifeq ($(TCONFIG_IPV6),y)
98 @cd $(INSTALLDIR)/sbin && ln -sf rc dhcp6c-state
99 endif
101 ifeq ($(TCONFIG_DDNS),y)
102 @cd $(INSTALLDIR)/sbin && ln -sf rc ddns-update
103 endif
105 # ifeq ($(TCONFIG_HEARTBEAT),y)
106 # @cd $(INSTALLDIR)/sbin && ln -sf rc hb_connect
107 # @cd $(INSTALLDIR)/sbin && ln -sf rc hb_disconnect
108 # @cd $(INSTALLDIR)/sbin && ln -sf rc hb_idle
109 # endif
111 ifeq ($(TCONFIG_CIFS),y)
112 @cd $(INSTALLDIR)/sbin && ln -sf rc mount-cifs
113 endif
115 ifeq ($(TOMATO_SL),1)
116 @cd $(INSTALLDIR)/sbin && ln -sf rc usbevent
117 @cd $(INSTALLDIR)/sbin && ln -sf rc usbrescan
118 @cd $(INSTALLDIR)/sbin && ln -sf rc hotdiskadd
119 @cd $(INSTALLDIR)/sbin && ln -sf rc hotdiskremove
120 @cd $(INSTALLDIR)/sbin && ln -sf rc hotdiskerror
121 @cd $(INSTALLDIR)/sbin && ln -sf rc umountx
122 endif
124 ifeq ($(TCONFIG_OPENVPN),y)
125 @mkdir -p $(INSTALLDIR)/rom/openvpn
126 @cp openvpn-updown.sh $(INSTALLDIR)/rom/openvpn/updown.sh
127 @chmod 0755 $(INSTALLDIR)/rom/openvpn/updown.sh
128 endif
130 clean:
131 rm -f rc *.o .*.depend
133 size: rc
134 mipsel-uclibc-nm --print-size --size-sort rc
136 %.o: %.c .%.depend
137 @echo " [rc] CC $@"
138 @$(CC) $(CFLAGS) -c $<
140 .%.depend: %.c
141 @$(CC) $(CFLAGS) -M $< > $@
143 -include $(OBJS:%.o=.%.depend)
147 pswatch: pswatch.c
148 $(CC) -o $@ $^
149 $(STRIP) $@
150 $(CPTMP)