blob: c6d3f8181808a723bcb1fb4fa0efa421c0e1620b [file] [log] [blame]
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -07001##### CLEAR VARS
2
3DRV_CFLAGS =
4DRV_WPA_CFLAGS =
5DRV_AP_CFLAGS =
6DRV_OBJS =
7DRV_WPA_OBJS =
8DRV_AP_OBJS =
9DRV_LIBS =
10DRV_WPA_LIBS =
11DRV_AP_LIBS =
12
13##### COMMON DRIVERS
14
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070015ifdef CONFIG_DRIVER_WIRED
16DRV_CFLAGS += -DCONFIG_DRIVER_WIRED
17DRV_OBJS += ../src/drivers/driver_wired.o
18endif
19
Dmitry Shmidt5a1480c2014-05-12 09:46:02 -070020ifdef CONFIG_DRIVER_MACSEC_QCA
21DRV_CFLAGS += -DCONFIG_DRIVER_MACSEC_QCA
22DRV_OBJS += ../src/drivers/driver_macsec_qca.o
23endif
24
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070025ifdef CONFIG_DRIVER_NL80211
26DRV_CFLAGS += -DCONFIG_DRIVER_NL80211
27DRV_OBJS += ../src/drivers/driver_nl80211.o
Dmitry Shmidt6c0da2b2015-01-05 13:08:17 -080028DRV_OBJS += ../src/drivers/driver_nl80211_capa.o
29DRV_OBJS += ../src/drivers/driver_nl80211_event.o
30DRV_OBJS += ../src/drivers/driver_nl80211_monitor.o
31DRV_OBJS += ../src/drivers/driver_nl80211_scan.o
Dmitry Shmidtd80a4012015-11-05 16:35:40 -080032ifdef CONFIG_DRIVER_NL80211_QCA
33DRV_CFLAGS += -DCONFIG_DRIVER_NL80211_QCA
34endif
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070035NEED_SME=y
36NEED_AP_MLME=y
37NEED_NETLINK=y
38NEED_LINUX_IOCTL=y
39NEED_RFKILL=y
Dmitry Shmidt849734c2016-05-27 09:59:01 -070040NEED_RADIOTAP=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070041
Dmitry Shmidt1f69aa52012-01-24 16:10:04 -080042ifdef CONFIG_LIBNL32
43 DRV_LIBS += -lnl-3
44 DRV_LIBS += -lnl-genl-3
Dmitry Shmidt7f656022015-02-25 14:36:37 -080045 DRV_CFLAGS += -DCONFIG_LIBNL20
46 ifdef LIBNL_INC
47 DRV_CFLAGS += -I$(LIBNL_INC)
48 else
49 PKG_CONFIG ?= pkg-config
50 DRV_CFLAGS += $(shell $(PKG_CONFIG) --cflags libnl-3.0)
51 endif
Dmitry Shmidt661b4f72014-09-29 14:58:27 -070052ifdef CONFIG_LIBNL3_ROUTE
53 DRV_LIBS += -lnl-route-3
54 DRV_CFLAGS += -DCONFIG_LIBNL3_ROUTE
55endif
Dmitry Shmidt1f69aa52012-01-24 16:10:04 -080056else
57 ifdef CONFIG_LIBNL_TINY
58 DRV_LIBS += -lnl-tiny
59 else
Dmitry Shmidtd80a4012015-11-05 16:35:40 -080060 ifndef CONFIG_OSX
61 DRV_LIBS += -lnl
62 endif
Dmitry Shmidt1f69aa52012-01-24 16:10:04 -080063 endif
64
65 ifdef CONFIG_LIBNL20
Dmitry Shmidte4663042016-04-04 10:07:49 -070066 ifndef CONFIG_LIBNL_TINY
67 DRV_LIBS += -lnl-genl
68 endif
Dmitry Shmidt1f69aa52012-01-24 16:10:04 -080069 DRV_CFLAGS += -DCONFIG_LIBNL20
70 endif
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070071endif
72endif
73
74ifdef CONFIG_DRIVER_BSD
75ifndef CONFIG_L2_PACKET
76CONFIG_L2_PACKET=freebsd
77endif
78DRV_CFLAGS += -DCONFIG_DRIVER_BSD
79DRV_OBJS += ../src/drivers/driver_bsd.o
80CONFIG_L2_FREEBSD=y
81CONFIG_DNET_PCAP=y
82endif
83
Dmitry Shmidt4b9d52f2013-02-05 17:44:43 -080084ifdef CONFIG_DRIVER_OPENBSD
85ifndef CONFIG_L2_PACKET
86CONFIG_L2_PACKET=freebsd
87endif
88DRV_CFLAGS += -DCONFIG_DRIVER_OPENBSD
89DRV_OBJS += ../src/drivers/driver_openbsd.o
90endif
91
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070092ifdef CONFIG_DRIVER_NONE
93DRV_CFLAGS += -DCONFIG_DRIVER_NONE
94DRV_OBJS += ../src/drivers/driver_none.o
95endif
96
97##### PURE AP DRIVERS
98
Dmitry Shmidt1f69aa52012-01-24 16:10:04 -080099ifdef CONFIG_DRIVER_HOSTAP
100DRV_AP_CFLAGS += -DCONFIG_DRIVER_HOSTAP
101DRV_AP_OBJS += ../src/drivers/driver_hostap.o
102CONFIG_WIRELESS_EXTENSION=y
103NEED_AP_MLME=y
104NEED_NETLINK=y
105NEED_LINUX_IOCTL=y
106endif
107
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -0700108ifdef CONFIG_DRIVER_ATHEROS
109DRV_AP_CFLAGS += -DCONFIG_DRIVER_ATHEROS
110DRV_AP_OBJS += ../src/drivers/driver_atheros.o
111CONFIG_L2_PACKET=linux
112NEED_NETLINK=y
113NEED_LINUX_IOCTL=y
Dmitry Shmidt09f57ba2014-06-10 16:07:13 -0700114ifdef ATH_GCM_SUPPORT
115CFLAGS += -DATH_GCM_SUPPORT
116endif
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -0700117endif
118
119##### PURE CLIENT DRIVERS
120
121ifdef CONFIG_DRIVER_WEXT
122DRV_WPA_CFLAGS += -DCONFIG_DRIVER_WEXT
123CONFIG_WIRELESS_EXTENSION=y
124NEED_NETLINK=y
125NEED_LINUX_IOCTL=y
126NEED_RFKILL=y
127endif
128
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -0700129ifdef CONFIG_DRIVER_NDIS
130DRV_WPA_CFLAGS += -DCONFIG_DRIVER_NDIS
131DRV_WPA_OBJS += ../src/drivers/driver_ndis.o
132ifdef CONFIG_NDIS_EVENTS_INTEGRATED
133DRV_WPA_OBJS += ../src/drivers/driver_ndis_.o
134endif
135ifndef CONFIG_L2_PACKET
136CONFIG_L2_PACKET=pcap
137endif
138CONFIG_WINPCAP=y
139ifdef CONFIG_USE_NDISUIO
140DRV_WPA_CFLAGS += -DCONFIG_USE_NDISUIO
141endif
142endif
143
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -0700144ifdef CONFIG_DRIVER_ROBOSWITCH
145DRV_WPA_CFLAGS += -DCONFIG_DRIVER_ROBOSWITCH
146DRV_WPA_OBJS += ../src/drivers/driver_roboswitch.o
147endif
148
149ifdef CONFIG_WIRELESS_EXTENSION
150DRV_WPA_CFLAGS += -DCONFIG_WIRELESS_EXTENSION
151DRV_WPA_OBJS += ../src/drivers/driver_wext.o
152NEED_RFKILL=y
153endif
154
155ifdef NEED_NETLINK
156DRV_OBJS += ../src/drivers/netlink.o
157endif
158
159ifdef NEED_LINUX_IOCTL
160DRV_OBJS += ../src/drivers/linux_ioctl.o
161endif
162
163ifdef NEED_RFKILL
164DRV_OBJS += ../src/drivers/rfkill.o
165endif
166
Dmitry Shmidt849734c2016-05-27 09:59:01 -0700167ifdef NEED_RADIOTAP
168DRV_OBJS += ../src/utils/radiotap.o
169endif
170
Dmitry Shmidt61d9df32012-08-29 16:22:06 -0700171ifdef CONFIG_VLAN_NETLINK
172ifdef CONFIG_FULL_DYNAMIC_VLAN
173ifdef CONFIG_LIBNL32
174 DRV_LIBS += -lnl-3
175 DRV_LIBS += -lnl-genl-3
176 DRV_LIBS += -lnl-route-3
177 DRV_CFLAGS += -DCONFIG_LIBNL20
178else
179 ifdef CONFIG_LIBNL_TINY
180 DRV_LIBS += -lnl-tiny
181 else
182 DRV_LIBS += -lnl
183 endif
184
185 ifdef CONFIG_LIBNL20
186 DRV_LIBS += -lnl-genl
187 DRV_LIBS += -lnl-route
188 DRV_CFLAGS += -DCONFIG_LIBNL20
189 endif
190endif
191endif
192endif
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -0700193
194##### COMMON VARS
195DRV_BOTH_CFLAGS := $(DRV_CFLAGS) $(DRV_WPA_CFLAGS) $(DRV_AP_CFLAGS)
196DRV_WPA_CFLAGS += $(DRV_CFLAGS)
197DRV_AP_CFLAGS += $(DRV_CFLAGS)
198
199DRV_BOTH_LIBS := $(DRV_LIBS) $(DRV_WPA_LIBS) $(DRV_AP_LIBS)
200DRV_WPA_LIBS += $(DRV_LIBS)
201DRV_AP_LIBS += $(DRV_LIBS)
202
203DRV_BOTH_OBJS := $(DRV_OBJS) $(DRV_WPA_OBJS) $(DRV_AP_OBJS)
204DRV_WPA_OBJS += $(DRV_OBJS)
205DRV_AP_OBJS += $(DRV_OBJS)
206
207DRV_BOTH_LDFLAGS := $(DRV_LDFLAGS) $(DRV_WPA_LDFLAGS) $(DRV_AP_LDFLAGS)
208DRV_WPA_LDFLAGS += $(DRV_LDFLAGS)
209DRV_AP_LDFLAGS += $(DRV_LDFLAGS)