blob: 1496b47d0ad5076bfc09d29655af7958da8ea824 [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
Dmitry Shmidtabb90a32016-12-05 15:34:39 -080018NEED_DRV_WIRED_COMMON=1
19endif
20
21ifdef CONFIG_DRIVER_MACSEC_LINUX
22DRV_CFLAGS += -DCONFIG_DRIVER_MACSEC_LINUX
23DRV_OBJS += ../src/drivers/driver_macsec_linux.o
24NEED_DRV_WIRED_COMMON=1
25CONFIG_LIBNL3_ROUTE=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070026endif
27
Dmitry Shmidt5a1480c2014-05-12 09:46:02 -070028ifdef CONFIG_DRIVER_MACSEC_QCA
29DRV_CFLAGS += -DCONFIG_DRIVER_MACSEC_QCA
30DRV_OBJS += ../src/drivers/driver_macsec_qca.o
Dmitry Shmidtabb90a32016-12-05 15:34:39 -080031NEED_DRV_WIRED_COMMON=1
32endif
33
34ifdef NEED_DRV_WIRED_COMMON
35DRV_OBJS += ../src/drivers/driver_wired_common.o
Dmitry Shmidt5a1480c2014-05-12 09:46:02 -070036endif
37
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070038ifdef CONFIG_DRIVER_NL80211
39DRV_CFLAGS += -DCONFIG_DRIVER_NL80211
40DRV_OBJS += ../src/drivers/driver_nl80211.o
Dmitry Shmidt6c0da2b2015-01-05 13:08:17 -080041DRV_OBJS += ../src/drivers/driver_nl80211_capa.o
42DRV_OBJS += ../src/drivers/driver_nl80211_event.o
43DRV_OBJS += ../src/drivers/driver_nl80211_monitor.o
44DRV_OBJS += ../src/drivers/driver_nl80211_scan.o
Dmitry Shmidtd80a4012015-11-05 16:35:40 -080045ifdef CONFIG_DRIVER_NL80211_QCA
46DRV_CFLAGS += -DCONFIG_DRIVER_NL80211_QCA
47endif
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070048NEED_SME=y
49NEED_AP_MLME=y
50NEED_NETLINK=y
51NEED_LINUX_IOCTL=y
52NEED_RFKILL=y
Dmitry Shmidt849734c2016-05-27 09:59:01 -070053NEED_RADIOTAP=y
Hai Shalombf6e0ba2019-02-11 12:01:50 -080054
55ifdef CONFIG_LIBNL32
56 DRV_LIBS += -lnl-3
57 DRV_LIBS += -lnl-genl-3
58 DRV_CFLAGS += -DCONFIG_LIBNL20
59 ifdef LIBNL_INC
60 DRV_CFLAGS += -I$(LIBNL_INC)
61 else
62 PKG_CONFIG ?= pkg-config
63 DRV_CFLAGS += $(shell $(PKG_CONFIG) --cflags libnl-3.0)
64 endif
65ifdef CONFIG_LIBNL3_ROUTE
66 DRV_LIBS += -lnl-route-3
67 DRV_CFLAGS += -DCONFIG_LIBNL3_ROUTE
68endif
69else
70 ifdef CONFIG_LIBNL_TINY
71 DRV_LIBS += -lnl-tiny
72 else
73 ifndef CONFIG_OSX
74 DRV_LIBS += -lnl
75 endif
76 endif
77
78 ifdef CONFIG_LIBNL20
79 ifndef CONFIG_LIBNL_TINY
80 DRV_LIBS += -lnl-genl
81 endif
82 DRV_CFLAGS += -DCONFIG_LIBNL20
83 endif
84endif
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070085endif
86
87ifdef CONFIG_DRIVER_BSD
88ifndef CONFIG_L2_PACKET
89CONFIG_L2_PACKET=freebsd
90endif
91DRV_CFLAGS += -DCONFIG_DRIVER_BSD
92DRV_OBJS += ../src/drivers/driver_bsd.o
93CONFIG_L2_FREEBSD=y
94CONFIG_DNET_PCAP=y
95endif
96
Dmitry Shmidt4b9d52f2013-02-05 17:44:43 -080097ifdef CONFIG_DRIVER_OPENBSD
98ifndef CONFIG_L2_PACKET
99CONFIG_L2_PACKET=freebsd
100endif
101DRV_CFLAGS += -DCONFIG_DRIVER_OPENBSD
102DRV_OBJS += ../src/drivers/driver_openbsd.o
103endif
104
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -0700105ifdef CONFIG_DRIVER_NONE
106DRV_CFLAGS += -DCONFIG_DRIVER_NONE
107DRV_OBJS += ../src/drivers/driver_none.o
108endif
109
110##### PURE AP DRIVERS
111
Dmitry Shmidt1f69aa52012-01-24 16:10:04 -0800112ifdef CONFIG_DRIVER_HOSTAP
113DRV_AP_CFLAGS += -DCONFIG_DRIVER_HOSTAP
114DRV_AP_OBJS += ../src/drivers/driver_hostap.o
115CONFIG_WIRELESS_EXTENSION=y
116NEED_AP_MLME=y
117NEED_NETLINK=y
118NEED_LINUX_IOCTL=y
119endif
120
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -0700121ifdef CONFIG_DRIVER_ATHEROS
122DRV_AP_CFLAGS += -DCONFIG_DRIVER_ATHEROS
123DRV_AP_OBJS += ../src/drivers/driver_atheros.o
124CONFIG_L2_PACKET=linux
125NEED_NETLINK=y
126NEED_LINUX_IOCTL=y
Dmitry Shmidt09f57ba2014-06-10 16:07:13 -0700127ifdef ATH_GCM_SUPPORT
128CFLAGS += -DATH_GCM_SUPPORT
129endif
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -0700130endif
131
132##### PURE CLIENT DRIVERS
133
134ifdef CONFIG_DRIVER_WEXT
135DRV_WPA_CFLAGS += -DCONFIG_DRIVER_WEXT
136CONFIG_WIRELESS_EXTENSION=y
137NEED_NETLINK=y
138NEED_LINUX_IOCTL=y
139NEED_RFKILL=y
140endif
141
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -0700142ifdef CONFIG_DRIVER_NDIS
143DRV_WPA_CFLAGS += -DCONFIG_DRIVER_NDIS
144DRV_WPA_OBJS += ../src/drivers/driver_ndis.o
145ifdef CONFIG_NDIS_EVENTS_INTEGRATED
146DRV_WPA_OBJS += ../src/drivers/driver_ndis_.o
147endif
148ifndef CONFIG_L2_PACKET
149CONFIG_L2_PACKET=pcap
150endif
151CONFIG_WINPCAP=y
152ifdef CONFIG_USE_NDISUIO
153DRV_WPA_CFLAGS += -DCONFIG_USE_NDISUIO
154endif
155endif
156
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -0700157ifdef CONFIG_DRIVER_ROBOSWITCH
158DRV_WPA_CFLAGS += -DCONFIG_DRIVER_ROBOSWITCH
159DRV_WPA_OBJS += ../src/drivers/driver_roboswitch.o
160endif
161
162ifdef CONFIG_WIRELESS_EXTENSION
163DRV_WPA_CFLAGS += -DCONFIG_WIRELESS_EXTENSION
164DRV_WPA_OBJS += ../src/drivers/driver_wext.o
165NEED_RFKILL=y
166endif
167
168ifdef NEED_NETLINK
169DRV_OBJS += ../src/drivers/netlink.o
170endif
171
172ifdef NEED_LINUX_IOCTL
173DRV_OBJS += ../src/drivers/linux_ioctl.o
174endif
175
176ifdef NEED_RFKILL
177DRV_OBJS += ../src/drivers/rfkill.o
178endif
179
Dmitry Shmidt849734c2016-05-27 09:59:01 -0700180ifdef NEED_RADIOTAP
181DRV_OBJS += ../src/utils/radiotap.o
182endif
183
Dmitry Shmidt61d9df32012-08-29 16:22:06 -0700184ifdef CONFIG_VLAN_NETLINK
185ifdef CONFIG_FULL_DYNAMIC_VLAN
186ifdef CONFIG_LIBNL32
187 DRV_LIBS += -lnl-3
188 DRV_LIBS += -lnl-genl-3
Hai Shalombf6e0ba2019-02-11 12:01:50 -0800189 DRV_LIBS += -lnl-route-3
Dmitry Shmidt61d9df32012-08-29 16:22:06 -0700190 DRV_CFLAGS += -DCONFIG_LIBNL20
191else
192 ifdef CONFIG_LIBNL_TINY
193 DRV_LIBS += -lnl-tiny
194 else
Hai Shalombf6e0ba2019-02-11 12:01:50 -0800195 DRV_LIBS += -lnl
Dmitry Shmidt61d9df32012-08-29 16:22:06 -0700196 endif
197
198 ifdef CONFIG_LIBNL20
Hai Shalombf6e0ba2019-02-11 12:01:50 -0800199 DRV_LIBS += -lnl-genl
200 DRV_LIBS += -lnl-route
Dmitry Shmidt61d9df32012-08-29 16:22:06 -0700201 DRV_CFLAGS += -DCONFIG_LIBNL20
202 endif
203endif
204endif
Hai Shalombf6e0ba2019-02-11 12:01:50 -0800205endif
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -0700206
207##### COMMON VARS
208DRV_BOTH_CFLAGS := $(DRV_CFLAGS) $(DRV_WPA_CFLAGS) $(DRV_AP_CFLAGS)
209DRV_WPA_CFLAGS += $(DRV_CFLAGS)
210DRV_AP_CFLAGS += $(DRV_CFLAGS)
211
212DRV_BOTH_LIBS := $(DRV_LIBS) $(DRV_WPA_LIBS) $(DRV_AP_LIBS)
213DRV_WPA_LIBS += $(DRV_LIBS)
214DRV_AP_LIBS += $(DRV_LIBS)
215
216DRV_BOTH_OBJS := $(DRV_OBJS) $(DRV_WPA_OBJS) $(DRV_AP_OBJS)
217DRV_WPA_OBJS += $(DRV_OBJS)
218DRV_AP_OBJS += $(DRV_OBJS)
219
220DRV_BOTH_LDFLAGS := $(DRV_LDFLAGS) $(DRV_WPA_LDFLAGS) $(DRV_AP_LDFLAGS)
221DRV_WPA_LDFLAGS += $(DRV_LDFLAGS)
222DRV_AP_LDFLAGS += $(DRV_LDFLAGS)