1 | include ../config.inc |
---|
2 | |
---|
3 | include $(RTEMS_MAKEFILE_PATH)/Makefile.inc |
---|
4 | include $(RTEMS_CUSTOM) |
---|
5 | include $(PROJECT_ROOT)/make/leaf.cfg |
---|
6 | |
---|
7 | CFLAGS += -Iinclude |
---|
8 | CFLAGS += -Irtems/include |
---|
9 | CFLAGS += -Ilib/libc/include |
---|
10 | CFLAGS += -Ilib/libc/resolv |
---|
11 | CFLAGS += -Ilib/netgraph |
---|
12 | CFLAGS += -Isys |
---|
13 | CFLAGS += -Ilocal |
---|
14 | # XXX hack to find rpc |
---|
15 | CFLAGS += -I../services/librpc/include |
---|
16 | # nsparser needs this |
---|
17 | CFLAGS += -Ilib/libc/net |
---|
18 | |
---|
19 | CFLAGS += -I$(INSTALL_BASE)/include |
---|
20 | |
---|
21 | #Only Needed for db files |
---|
22 | CFLAGS += -D__DBINTERFACE_PRIVATE |
---|
23 | |
---|
24 | CFLAGS += -g |
---|
25 | CFLAGS += -w |
---|
26 | CFLAGS += -std=gnu99 |
---|
27 | CFLAGS += -MT $@ -MD -MP -MF $(basename $@).d |
---|
28 | |
---|
29 | C_FILES = |
---|
30 | C_FILES += lib/libc/inet/inet_addr.c |
---|
31 | C_FILES += lib/libc/inet/inet_cidr_ntop.c |
---|
32 | C_FILES += lib/libc/inet/inet_cidr_pton.c |
---|
33 | C_FILES += lib/libc/inet/inet_lnaof.c |
---|
34 | C_FILES += lib/libc/inet/inet_makeaddr.c |
---|
35 | C_FILES += lib/libc/inet/inet_net_pton.c |
---|
36 | C_FILES += lib/libc/inet/inet_ntop.c |
---|
37 | C_FILES += lib/libc/inet/inet_neta.c |
---|
38 | C_FILES += lib/libc/inet/inet_net_ntop.c |
---|
39 | C_FILES += lib/libc/inet/inet_netof.c |
---|
40 | C_FILES += lib/libc/inet/inet_network.c |
---|
41 | C_FILES += lib/libc/inet/inet_ntoa.c |
---|
42 | C_FILES += lib/libc/inet/inet_pton.c |
---|
43 | C_FILES += lib/libc/inet/nsap_addr.c |
---|
44 | |
---|
45 | C_FILES += lib/libc/net/base64.c |
---|
46 | C_FILES += lib/libc/net/ether_addr.c |
---|
47 | C_FILES += lib/libc/net/getaddrinfo.c |
---|
48 | C_FILES += lib/libc/net/gethostbydns.c |
---|
49 | C_FILES += lib/libc/net/gethostbyht.c |
---|
50 | C_FILES += lib/libc/net/gethostbynis.c |
---|
51 | C_FILES += lib/libc/net/gethostnamadr.c |
---|
52 | C_FILES += lib/libc/net/getifaddrs.c |
---|
53 | C_FILES += lib/libc/net/getifmaddrs.c |
---|
54 | C_FILES += lib/libc/net/getnameinfo.c |
---|
55 | C_FILES += lib/libc/net/getnetbydns.c |
---|
56 | C_FILES += lib/libc/net/getnetbyht.c |
---|
57 | C_FILES += lib/libc/net/getnetbynis.c |
---|
58 | C_FILES += lib/libc/net/getnetnamadr.c |
---|
59 | C_FILES += lib/libc/net/getproto.c |
---|
60 | C_FILES += lib/libc/net/getprotoent.c |
---|
61 | C_FILES += lib/libc/net/getprotoname.c |
---|
62 | C_FILES += lib/libc/net/getservent.c |
---|
63 | C_FILES += lib/libc/net/nsdispatch.c |
---|
64 | C_FILES += lib/libc/net/gai_strerror.c |
---|
65 | # The following two /net files are generated |
---|
66 | C_FILES += lib/libc/net/nslexer.c |
---|
67 | C_FILES += lib/libc/net/nsparser.c |
---|
68 | C_FILES += lib/libc/gen/err.c |
---|
69 | C_FILES += lib/libc/gen/gethostname.c |
---|
70 | C_FILES += lib/libc/nameser/ns_name.c |
---|
71 | C_FILES += lib/libc/nameser/ns_netint.c |
---|
72 | C_FILES += lib/libc/nameser/ns_parse.c |
---|
73 | C_FILES += lib/libc/nameser/ns_print.c |
---|
74 | C_FILES += lib/libc/nameser/ns_samedomain.c |
---|
75 | C_FILES += lib/libc/nameser/ns_ttl.c |
---|
76 | C_FILES += lib/libc/net/if_indextoname.c |
---|
77 | C_FILES += lib/libc/net/if_nameindex.c |
---|
78 | C_FILES += lib/libc/net/linkaddr.c |
---|
79 | C_FILES += lib/libc/net/map_v4v6.c |
---|
80 | C_FILES += lib/libc/net/name6.c |
---|
81 | C_FILES += lib/libc/net/rcmd.c |
---|
82 | C_FILES += lib/libc/net/recv.c |
---|
83 | # C_FILES += lib/libc/net/send.c |
---|
84 | C_FILES += lib/libc/resolv/herror.c |
---|
85 | C_FILES += lib/libc/resolv/h_errno.c |
---|
86 | C_FILES += lib/libc/resolv/res_comp.c |
---|
87 | C_FILES += lib/libc/resolv/res_data.c |
---|
88 | C_FILES += lib/libc/resolv/res_debug.c |
---|
89 | C_FILES += lib/libc/resolv/res_findzonecut.c |
---|
90 | C_FILES += lib/libc/resolv/res_init.c |
---|
91 | C_FILES += lib/libc/resolv/res_mkquery.c |
---|
92 | C_FILES += lib/libc/resolv/res_mkupdate.c |
---|
93 | C_FILES += lib/libc/resolv/res_query.c |
---|
94 | C_FILES += lib/libc/resolv/res_send.c |
---|
95 | C_FILES += lib/libc/resolv/res_state.c |
---|
96 | C_FILES += lib/libc/resolv/res_update.c |
---|
97 | C_FILES += lib/libc/resolv/mtctxres.c |
---|
98 | C_FILES += lib/libc/string/strsep.c |
---|
99 | |
---|
100 | C_FILES += lib/libc/isc/ev_streams.c |
---|
101 | C_FILES += lib/libc/isc/ev_timers.c |
---|
102 | |
---|
103 | C_FILES += lib/libc/stdio/fgetln.c |
---|
104 | |
---|
105 | C_FILES += lib/libc/db/db/db.c |
---|
106 | C_FILES += lib/libc/db/btree/bt_close.c |
---|
107 | C_FILES += lib/libc/db/btree/bt_get.c |
---|
108 | C_FILES += lib/libc/db/btree/bt_put.c |
---|
109 | C_FILES += lib/libc/db/btree/bt_utils.c |
---|
110 | C_FILES += lib/libc/db/btree/bt_conv.c |
---|
111 | C_FILES += lib/libc/db/btree/bt_open.c |
---|
112 | C_FILES += lib/libc/db/btree/bt_search.c |
---|
113 | C_FILES += lib/libc/db/btree/bt_debug.c |
---|
114 | C_FILES += lib/libc/db/btree/bt_overflow.c |
---|
115 | C_FILES += lib/libc/db/btree/bt_seq.c |
---|
116 | C_FILES += lib/libc/db/btree/bt_delete.c |
---|
117 | C_FILES += lib/libc/db/btree/bt_page.c |
---|
118 | C_FILES += lib/libc/db/btree/bt_split.c |
---|
119 | C_FILES += lib/libc/db/recno/rec_close.c |
---|
120 | C_FILES += lib/libc/db/recno/rec_get.c |
---|
121 | C_FILES += lib/libc/db/recno/rec_put.c |
---|
122 | C_FILES += lib/libc/db/recno/rec_seq.c |
---|
123 | C_FILES += lib/libc/db/recno/rec_delete.c |
---|
124 | C_FILES += lib/libc/db/recno/rec_open.c |
---|
125 | C_FILES += lib/libc/db/recno/rec_search.c |
---|
126 | C_FILES += lib/libc/db/recno/rec_utils.c |
---|
127 | |
---|
128 | C_FILES += lib/libc/db/mpool/mpool.c |
---|
129 | |
---|
130 | |
---|
131 | # libipsec files |
---|
132 | C_FILES += lib/libipsec/pfkey_dump.c |
---|
133 | # Has a main and may or may not be needed |
---|
134 | # C_FILES += lib/libipsec/test-policy.c |
---|
135 | C_FILES += lib/libipsec/pfkey.c |
---|
136 | C_FILES += lib/libipsec/ipsec_strerror.c |
---|
137 | C_FILES += lib/libipsec/ipsec_get_policylen.c |
---|
138 | C_FILES += lib/libipsec/ipsec_dump_policy.c |
---|
139 | # The following two /net files are generated |
---|
140 | C_FILES += lib/libipsec/policy_token.c |
---|
141 | C_FILES += lib/libipsec/policy_parse.c |
---|
142 | |
---|
143 | # RTEMS Specific Files |
---|
144 | # C_FILES += rtems/rtems-net-setup.c |
---|
145 | C_FILES += rtems/syslog.c |
---|
146 | C_FILES += rtems/rtems-syslog-initialize.c |
---|
147 | C_FILES += rtems/rtems-getprogname.c |
---|
148 | C_FILES += rtems/rtems-uthread_main_np.c |
---|
149 | C_FILES += rtems/rtems-uthread_kevent.c |
---|
150 | C_FILES += rtems/rtems-uthread_kqueue.c |
---|
151 | |
---|
152 | # ping command sources |
---|
153 | C_FILES += commands/sbin/ping/ping.c |
---|
154 | C_FILES += commands/sbin/ping6/ping6.c |
---|
155 | |
---|
156 | # route command sources |
---|
157 | C_FILES += commands/sbin/route/route.c |
---|
158 | |
---|
159 | # dhclient command sources |
---|
160 | C_FILES += commands/sbin/dhclient/alloc.c |
---|
161 | C_FILES += commands/sbin/dhclient/bpf.c |
---|
162 | C_FILES += commands/sbin/dhclient/clparse.c |
---|
163 | C_FILES += commands/sbin/dhclient/conflex.c |
---|
164 | C_FILES += commands/sbin/dhclient/convert.c |
---|
165 | C_FILES += commands/sbin/dhclient/dhclient.c |
---|
166 | C_FILES += commands/sbin/dhclient/dispatch.c |
---|
167 | C_FILES += commands/sbin/dhclient/errwarn.c |
---|
168 | C_FILES += commands/sbin/dhclient/hash.c |
---|
169 | C_FILES += commands/sbin/dhclient/inet.c |
---|
170 | C_FILES += commands/sbin/dhclient/options.c |
---|
171 | C_FILES += commands/sbin/dhclient/packet.c |
---|
172 | C_FILES += commands/sbin/dhclient/parse.c |
---|
173 | C_FILES += commands/sbin/dhclient/privsep.c |
---|
174 | C_FILES += commands/sbin/dhclient/tables.c |
---|
175 | C_FILES += commands/sbin/dhclient/tree.c |
---|
176 | |
---|
177 | # ifconfig command sources |
---|
178 | C_FILES += commands/sbin/ifconfig/af_atalk.c |
---|
179 | C_FILES += commands/sbin/ifconfig/af_inet.c |
---|
180 | C_FILES += commands/sbin/ifconfig/af_link.c |
---|
181 | C_FILES += commands/sbin/ifconfig/ifbridge.c |
---|
182 | C_FILES += commands/sbin/ifconfig/ifclone.c |
---|
183 | C_FILES += commands/sbin/ifconfig/ifgif.c |
---|
184 | C_FILES += commands/sbin/ifconfig/ifgroup.c |
---|
185 | C_FILES += commands/sbin/ifconfig/iflagg.c |
---|
186 | C_FILES += commands/sbin/ifconfig/ifmedia.c |
---|
187 | C_FILES += commands/sbin/ifconfig/ifvlan.c |
---|
188 | C_FILES += commands/sbin/ifconfig/af_inet6.c |
---|
189 | C_FILES += commands/sbin/ifconfig/af_nd6.c |
---|
190 | C_FILES += commands/sbin/ifconfig/ifcarp.c |
---|
191 | C_FILES += commands/sbin/ifconfig/ifconfig.c |
---|
192 | C_FILES += commands/sbin/ifconfig/ifgre.c |
---|
193 | C_FILES += commands/sbin/ifconfig/ifieee80211.c |
---|
194 | C_FILES += commands/sbin/ifconfig/ifmac.c |
---|
195 | C_FILES += commands/sbin/ifconfig/ifpfsync.c |
---|
196 | |
---|
197 | # The following two files were left out to avoid |
---|
198 | # porting issues. regdomain uses an xml parser |
---|
199 | # that is not part of the standard release and |
---|
200 | # af_ipx uses thread0 which we are trying to avoid |
---|
201 | # pulling in. |
---|
202 | # |
---|
203 | # C_FILES += commands/sbin/ifconfig/regdomain.c |
---|
204 | # C_FILES += commands/sbin/ifconfig/af_ipx.c |
---|
205 | |
---|
206 | ifeq (1,0) |
---|
207 | # netstat command sources |
---|
208 | # no need to support AppleTalk yet |
---|
209 | # C_FILES += commands/usr.bin/netstat/atalk.c |
---|
210 | C_FILES += commands/usr.bin/netstat/bpf.c |
---|
211 | C_FILES += commands/usr.bin/netstat/if.c |
---|
212 | C_FILES += commands/usr.bin/netstat/inet6.c |
---|
213 | C_FILES += commands/usr.bin/netstat/inet.c |
---|
214 | C_FILES += commands/usr.bin/netstat/ipsec.c |
---|
215 | # no need to support IPX yet |
---|
216 | # C_FILES += commands/usr.bin/netstat/ipx.c |
---|
217 | C_FILES += commands/usr.bin/netstat/main.c |
---|
218 | C_FILES += commands/usr.bin/netstat/mbuf.c |
---|
219 | C_FILES += commands/usr.bin/netstat/mroute6.c |
---|
220 | C_FILES += commands/usr.bin/netstat/mroute.c |
---|
221 | # Disable netgraph support - this is a long thread to pull |
---|
222 | # C_FILES += commands/usr.bin/netstat/netgraph.c |
---|
223 | C_FILES += commands/usr.bin/netstat/pfkey.c |
---|
224 | C_FILES += commands/usr.bin/netstat/route.c |
---|
225 | C_FILES += commands/usr.bin/netstat/sctp.c |
---|
226 | C_FILES += commands/usr.bin/netstat/unix.c |
---|
227 | endif |
---|
228 | |
---|
229 | C_O_FILES = $(C_FILES:%.c=%.o) |
---|
230 | C_D_FILES = $(C_FILES:%.c=%.d) |
---|
231 | |
---|
232 | LIB = libbsdc.a |
---|
233 | GEN_FILES = include/rpc/rpcb_prot.h |
---|
234 | GEN_FILES += commands/sbin/route/keywords.h |
---|
235 | # lib/libc/net |
---|
236 | GEN_FILES += lib/libc/net/nslexer.c |
---|
237 | GEN_FILES += lib/libc/net/nsparser.c |
---|
238 | EXTRA_CLEAN = lib/libc/net/nsparser.i |
---|
239 | EXTRA_CLEAN += lib/libc/net/y.tab.h |
---|
240 | |
---|
241 | # lib/libipsec |
---|
242 | GEN_FILES += lib/libipsec/policy_token.c |
---|
243 | GEN_FILES += lib/libipsec/policy_parse.c |
---|
244 | EXTRA_CLEAN += lib/libipsec/policy_parse.i |
---|
245 | EXTRA_CLEAN += lib/libipsec/y.tab.h |
---|
246 | |
---|
247 | all: $(LIB) |
---|
248 | |
---|
249 | $(LIB): $(GEN_FILES) $(C_O_FILES) |
---|
250 | $(AR) rcu $@ $^ |
---|
251 | |
---|
252 | include/rpc/rpcb_prot.h: include/rpc/rpcb_prot.x |
---|
253 | rm -f include/rpc/rpcb_prot.h |
---|
254 | rpcgen -h -o include/rpc/rpcb_prot.h include/rpc/rpcb_prot.x |
---|
255 | |
---|
256 | commands/sbin/route/keywords.h: commands/sbin/route/keywords |
---|
257 | sed -e '/^#/d' -e '/^$$/d' commands/sbin/route//keywords > _keywords.tmp |
---|
258 | LC_ALL=C tr 'a-z' 'A-Z' < _keywords.tmp | paste _keywords.tmp - | \ |
---|
259 | awk '{ \ |
---|
260 | if (NF > 1) \ |
---|
261 | printf "#define\tK_%s\t%d\n\t{\"%s\", K_%s},\n", \ |
---|
262 | $$2, NR, $$1, $$2 }' \ |
---|
263 | > commands/sbin/route/keywords.h |
---|
264 | rm -f _keywords.tmp |
---|
265 | |
---|
266 | # lib/libc/net Yacc and lex files |
---|
267 | lib/libc/net/nslexer.c: lib/libc/net/nslexer.l |
---|
268 | make -C lib/libc/net nslexer.c |
---|
269 | |
---|
270 | lib/libc/net/nsparser.c: lib/libc/net/nsparser.y |
---|
271 | make -C lib/libc/net nsparser.c |
---|
272 | |
---|
273 | # libipsec Yacc and lex files |
---|
274 | lib/libipsec/policy_token.c: lib/libipsec/policy_token.l |
---|
275 | make -C lib/libipsec policy_token.c |
---|
276 | |
---|
277 | lib/libipsec/policy_parse.c: lib/libipsec/policy_parse.y |
---|
278 | make -C lib/libipsec policy_parse.c |
---|
279 | |
---|
280 | install: $(LIB) |
---|
281 | install -d $(INSTALL_BASE)/include |
---|
282 | cd include; for i in `find . -name '*.h'` ; do \ |
---|
283 | install -c -m 644 -D "$$i" "$(INSTALL_BASE)/include/$$i" ; done |
---|
284 | cd rtems/include; for i in `find . -name '*.h'` ; do \ |
---|
285 | install -c -m 644 -D "$$i" "$(INSTALL_BASE)/include/$$i" ; done |
---|
286 | cd local; for i in `find . -name '*.h'` ; do \ |
---|
287 | install -c -m 644 -D "$$i" "$(INSTALL_BASE)/include/$$i" ; done |
---|
288 | cd sys; for i in `find . -name '*.h'` ; do \ |
---|
289 | install -c -m 644 -D "$$i" "$(INSTALL_BASE)/include/$$i" ; done |
---|
290 | install -c -m 644 $(LIB) $(INSTALL_BASE) |
---|
291 | |
---|
292 | clean: |
---|
293 | rm -f $(LIB) $(C_O_FILES) $(C_D_FILES) $(GEN_FILES) $(CLEAN_FILES) |
---|
294 | |
---|
295 | -include $(C_D_FILES) |
---|
296 | |
---|
297 | doc: |
---|
298 | |
---|