]>
Commit | Line | Data |
---|---|---|
e4225669 DB |
1 | # Include "Config" if already generated |
2 | ifneq ($(wildcard Config),) | |
3 | include Config | |
4 | endif | |
5 | ||
eebc7cc1 | 6 | ifeq ($(VERBOSE),0) |
57bdf8b7 DA |
7 | MAKEFLAGS += --no-print-directory |
8 | endif | |
9 | ||
06ec9039 PŠ |
10 | PREFIX?=/usr |
11 | LIBDIR?=$(PREFIX)/lib | |
12 | SBINDIR?=/sbin | |
13 | CONFDIR?=/etc/iproute2 | |
14 | DATADIR?=$(PREFIX)/share | |
e4225669 | 15 | HDRDIR?=$(PREFIX)/include/iproute2 |
06ec9039 PŠ |
16 | DOCDIR?=$(DATADIR)/doc/iproute2 |
17 | MANDIR?=$(DATADIR)/man | |
18 | ARPDDIR?=/var/lib/arpd | |
19 | KERNEL_INCLUDE?=/usr/include | |
27d44f3a | 20 | BASH_COMPDIR?=$(DATADIR)/bash-completion/completions |
aba5acdf | 21 | |
d1e48c7e | 22 | # Path to db_185.h include |
06ec9039 | 23 | DBM_INCLUDE:=$(DESTDIR)/usr/include |
d1e48c7e | 24 | |
f2e27cfb MF |
25 | SHARED_LIBS = y |
26 | ||
5e3bb534 | 27 | DEFINES= -DRESOLVE_HOSTNAMES -DLIBDIR=\"$(LIBDIR)\" |
f2e27cfb MF |
28 | ifneq ($(SHARED_LIBS),y) |
29 | DEFINES+= -DNO_SHARED_LIBS | |
30 | endif | |
aba5acdf | 31 | |
5c434a9e CT |
32 | DEFINES+=-DCONFDIR=\"$(CONFDIR)\" |
33 | ||
aba5acdf SH |
34 | #options for decnet |
35 | ADDLIB+=dnet_ntop.o dnet_pton.o | |
36 | ||
37 | #options for ipx | |
38 | ADDLIB+=ipx_ntop.o ipx_pton.o | |
39 | ||
dacc5d41 EB |
40 | #options for mpls |
41 | ADDLIB+=mpls_ntop.o mpls_pton.o | |
42 | ||
7ffa2b55 PS |
43 | CC := gcc |
44 | HOSTCC ?= $(CC) | |
c8610020 | 45 | DEFINES += -D_GNU_SOURCE |
232aaf4f MF |
46 | # Turn on transparent support for LFS |
47 | DEFINES += -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE | |
c8610020 | 48 | CCOPTS = -O2 |
3140e9a3 | 49 | WFLAGS := -Wall -Wstrict-prototypes -Wmissing-prototypes |
4ec0ffde | 50 | WFLAGS += -Wmissing-declarations -Wold-style-definition -Wformat=2 |
6398d3a6 | 51 | |
06ec9039 | 52 | CFLAGS := $(WFLAGS) $(CCOPTS) -I../include $(DEFINES) $(CFLAGS) |
9ddbb02e | 53 | YACCFLAGS = -d -t -v |
aba5acdf | 54 | |
a3c4b484 | 55 | SUBDIRS=lib ip tc bridge misc netem genl tipc devlink man |
aba5acdf SH |
56 | |
57 | LIBNETLINK=../lib/libnetlink.a ../lib/libutil.a | |
2230ac1d | 58 | LDLIBS += $(LIBNETLINK) |
aba5acdf | 59 | |
e4225669 DB |
60 | ifeq ($(HAVE_ELF),y) |
61 | CFLAGS += -DHAVE_ELF | |
62 | LDLIBS += -lelf | |
63 | endif | |
64 | ||
737f15f6 | 65 | all: Config |
95dd5950 MF |
66 | @set -e; \ |
67 | for i in $(SUBDIRS); \ | |
57bdf8b7 | 68 | do echo; echo $$i; $(MAKE) $(MFLAGS) -C $$i; done |
adff36d7 SH |
69 | |
70 | Config: | |
f35e9289 | 71 | sh configure $(KERNEL_INCLUDE) |
aba5acdf | 72 | |
aba5acdf SH |
73 | install: all |
74 | install -m 0755 -d $(DESTDIR)$(SBINDIR) | |
e9a05e96 | 75 | install -m 0755 -d $(DESTDIR)$(CONFDIR) |
e48f73d6 | 76 | install -m 0755 -d $(DESTDIR)$(ARPDDIR) |
e4225669 | 77 | install -m 0755 -d $(DESTDIR)$(HDRDIR) |
aba5acdf SH |
78 | install -m 0755 -d $(DESTDIR)$(DOCDIR)/examples |
79 | install -m 0755 -d $(DESTDIR)$(DOCDIR)/examples/diffserv | |
c72238e4 | 80 | install -m 0644 README.iproute2+tc $(shell find examples -maxdepth 1 -type f) \ |
e9a05e96 | 81 | $(DESTDIR)$(DOCDIR)/examples |
c72238e4 | 82 | install -m 0644 $(shell find examples/diffserv -maxdepth 1 -type f) \ |
e9a05e96 | 83 | $(DESTDIR)$(DOCDIR)/examples/diffserv |
aba5acdf | 84 | @for i in $(SUBDIRS) doc; do $(MAKE) -C $$i install; done |
c72238e4 | 85 | install -m 0644 $(shell find etc/iproute2 -maxdepth 1 -type f) $(DESTDIR)$(CONFDIR) |
27d44f3a QM |
86 | install -m 0755 -d $(DESTDIR)$(BASH_COMPDIR) |
87 | install -m 0644 bash-completion/tc $(DESTDIR)$(BASH_COMPDIR) | |
e4225669 | 88 | install -m 0644 include/bpf_elf.h $(DESTDIR)$(HDRDIR) |
aba5acdf | 89 | |
235ac6a4 SH |
90 | snapshot: |
91 | echo "static const char SNAPSHOT[] = \""`date +%y%m%d`"\";" \ | |
92 | > include/SNAPSHOT.h | |
93 | ||
aba5acdf | 94 | clean: |
adff36d7 SH |
95 | @for i in $(SUBDIRS) doc; \ |
96 | do $(MAKE) $(MFLAGS) -C $$i clean; done | |
97 | ||
82408fc1 SH |
98 | clobber: |
99 | touch Config | |
100 | $(MAKE) $(MFLAGS) clean | |
a6ddc206 | 101 | rm -f Config cscope.* |
adff36d7 | 102 | |
87773db5 | 103 | distclean: clobber |
aba5acdf | 104 | |
f6aa8e00 SH |
105 | cscope: |
106 | cscope -b -q -R -Iinclude -sip -slib -smisc -snetem -stc | |
107 | ||
aba5acdf | 108 | .EXPORT_ALL_VARIABLES: |