1 MAKEFLAGS
+= --no-print-directory
4 SBINDIR ?
= $(PREFIX
)/sbin
5 MANDIR ?
= $(PREFIX
)/share
/man
6 PKG_CONFIG ?
= pkg-config
13 CFLAGS
+= -Wall
-Wundef
-Wstrict-prototypes
-Wno-trigraphs
-fno-strict-aliasing
-fno-common \
14 -Werror-implicit-function-declaration
-Wsign-compare
16 OBJS
= iw.o genl.o event.o
info.o phy.o \
17 interface.o ibss.o station.o survey.o util.o ocb.o \
18 mesh.o mpath.o mpp.o scan.o reg.o version.o \
19 reason.o status.o connect.o link.o offch.o ps.o cqm.o \
20 bitrate.o wowlan.o coalesce.o roc.o p2p.o vendor.o
23 OBJS-
$(HWSIM
) += hwsim.o
25 OBJS
+= $(OBJS-y
) $(OBJS-Y
)
29 ifeq ($(NO_PKG_CONFIG
),)
30 NL3xFOUND
:= $(shell $(PKG_CONFIG
) --atleast-version
=3.2 libnl-3.0
&& echo Y
)
31 ifneq ($(NL3xFOUND
),Y
)
32 NL31FOUND
:= $(shell $(PKG_CONFIG
) --exact-version
=3.1 libnl-3.1
&& echo Y
)
33 ifneq ($(NL31FOUND
),Y
)
34 NL3FOUND
:= $(shell $(PKG_CONFIG
) --atleast-version
=3 libnl-3.0
&& echo Y
)
36 NL2FOUND
:= $(shell $(PKG_CONFIG
) --atleast-version
=2 libnl-2.0
&& echo Y
)
38 NL1FOUND
:= $(shell $(PKG_CONFIG
) --atleast-version
=1 libnl-1
&& echo Y
)
49 CFLAGS
+= -DCONFIG_LIBNL20
55 # libnl 3.2 might be found as 3.2 and 3.0
57 CFLAGS
+= -DCONFIG_LIBNL30
63 CFLAGS
+= -DCONFIG_LIBNL30
68 # nl-3.1 has a broken libnl-gnl-3.1.pc file
69 # as show by pkg-config --debug --libs --cflags --exact-version=3.1 libnl-genl-3.1;echo $?
71 CFLAGS
+= -DCONFIG_LIBNL30
77 $(error Cannot find development files for any supported version of libnl
)
80 LIBS
+= $(shell $(PKG_CONFIG
) --libs
$(NLLIBNAME
))
81 CFLAGS
+= $(shell $(PKG_CONFIG
) --cflags $(NLLIBNAME
))
94 VERSION_OBJS
:= $(filter-out version.o
, $(OBJS
))
96 version.c
: version.sh
$(patsubst %.o
,%.c
,$(VERSION_OBJS
)) nl80211.h iw.h Makefile \
97 $(wildcard .git
/index .git
/refs
/tags)
101 %.o
: %.c iw.h nl80211.h
103 $(Q
)$(CC
) $(CFLAGS
) -c
-o
$@
$<
105 ifeq ($(IW_ANDROID_BUILD
),)
108 $(Q
)$(CC
) $(LDFLAGS
) $(OBJS
) $(LIBS
) -o iw
112 $(Q
)$(MAKE
) all CC
="REAL_CC=$(CC) CHECK=\"sparse -Wall\" cgcc"
120 $(Q
)$(MKDIR
) $(DESTDIR
)$(SBINDIR
)
121 $(Q
)$(INSTALL
) -m
755 iw
$(DESTDIR
)$(SBINDIR
)
123 $(Q
)$(MKDIR
) $(DESTDIR
)$(MANDIR
)/man8
/
124 $(Q
)$(INSTALL
) -m
644 iw
.8.gz
$(DESTDIR
)$(MANDIR
)/man8
/
127 $(Q
)rm -f iw
*.o
*~
*.gz version.c
*-stamp