1 IPOBJ
=ip.o ipaddress.o ipaddrlabel.o iproute.o iprule.o \
2 rtm_map.o iptunnel.o ip6tunnel.o tunnel.o ipneigh.o ipntable.o iplink.o \
3 ipmaddr.o ipmonitor.o ipmroute.o ipprefix.o iptuntap.o \
4 ipxfrm.o xfrm_state.o xfrm_policy.o xfrm_monitor.o \
5 iplink_vlan.o link_veth.o link_gre.o iplink_can.o \
10 ALLOBJ
=$(IPOBJ
) $(RTMONOBJ
)
11 SCRIPTS
=ifcfg rtpr routel routef
14 all: $(TARGETS
) $(SCRIPTS
) $(LIBS
)
16 ip
: $(IPOBJ
) $(LIBNETLINK
) $(LIBUTIL
)
18 rtmon
: $(RTMONOBJ
) $(LIBNETLINK
)
21 install -m
0755 $(TARGETS
) $(DESTDIR
)$(SBINDIR
)
22 install -m
0755 $(SCRIPTS
) $(DESTDIR
)$(SBINDIR
)
25 rm -f
$(ALLOBJ
) $(TARGETS
)
28 ifeq ($(SHARED_LIBS
),y
)
31 LDFLAGS
+= -Wl
,-export-dynamic
36 static-syms.o
: static-syms.h
37 static-syms.h
: $(wildcard *.c
)
39 for s in
`grep -B 3 '\<dlsym' $$files | sed -n '/snprintf/{s:.*"\([^"]*\)".*:\1:;s:%s::;p}'` ; do \
40 sed
-n
'/'$$s'[^ ]* =/{s:.* \([^ ]*'$$s'[^ ]*\) .*:extern char \1[] __attribute__((weak)); if (!strcmp(sym, "\1")) return \1;:;p}' $$files ; \