]> git.ipfire.org Git - thirdparty/iw.git/blob - Makefile
Merge branch 'master' into scan-test
[thirdparty/iw.git] / Makefile
1 -include .config
2
3 MAKEFLAGS += --no-print-directory
4
5 PREFIX ?= /usr
6 BINDIR ?= $(PREFIX)/bin
7 MANDIR ?= $(PREFIX)/share/man
8
9 MKDIR ?= mkdir -p
10 INSTALL ?= install
11 CC ?= "gcc"
12
13 CFLAGS += -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration `pkg-config --cflags libnl-1`
14 CFLAGS += -O2 -g
15 LDFLAGS += `pkg-config --libs libnl-1`
16 NLVERSION = 1.0
17
18 OBJS = iw.o info.o phy.o interface.o station.o util.o mpath.o reg.o mesh.o genl.o scan.o
19 ALL = iw
20
21 ifeq ($(V),1)
22 Q=
23 NQ=true
24 else
25 Q=@
26 NQ=echo
27 endif
28
29 all: version_check $(ALL)
30
31 version_check:
32 @if ! pkg-config --atleast-version=$(NLVERSION) libnl-1; then echo "You need at least libnl version $(NLVERSION)"; exit 1; fi
33
34
35 version.h: version.sh
36 @$(NQ) ' GEN version.h'
37 $(Q)./version.sh
38
39 %.o: %.c iw.h version.h
40 @$(NQ) ' CC ' $@
41 $(Q)$(CC) $(CFLAGS) -c -o $@ $<
42
43 iw: $(OBJS)
44 @$(NQ) ' CC ' iw
45 $(Q)$(CC) $(LDFLAGS) $(OBJS) -o iw
46
47 check:
48 $(Q)$(MAKE) all CC="REAL_CC=$(CC) CHECK=\"sparse -Wall\" cgcc"
49
50 %.gz: %
51 @$(NQ) ' GZIP' $<
52 $(Q)gzip < $< > $@
53
54 install: iw iw.8.gz
55 @$(NQ) ' INST iw'
56 $(Q)$(MKDIR) $(DESTDIR)$(BINDIR)
57 $(Q)$(INSTALL) -m 755 -t $(DESTDIR)$(BINDIR) iw
58 @$(NQ) ' INST iw.8'
59 $(Q)$(MKDIR) $(DESTDIR)$(MANDIR)/man8/
60 $(Q)$(INSTALL) -m 644 -t $(DESTDIR)$(MANDIR)/man8/ iw.8.gz
61
62 clean:
63 $(Q)rm -f iw *.o *~ *.gz version.h *-stamp