blob: 9fa70d9c95fe4036ca4e45ce02666a84280b2458 [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.c
18endif
19
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070020ifdef CONFIG_DRIVER_NL80211
21DRV_CFLAGS += -DCONFIG_DRIVER_NL80211
22DRV_OBJS += src/drivers/driver_nl80211.c
23DRV_OBJS += src/utils/radiotap.c
24NEED_SME=y
25NEED_AP_MLME=y
26NEED_NETLINK=y
27NEED_LINUX_IOCTL=y
28NEED_RFKILL=y
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070029
Dmitry Shmidt1f69aa52012-01-24 16:10:04 -080030ifdef CONFIG_LIBNL32
31 DRV_LIBS += -lnl-3
32 DRV_LIBS += -lnl-genl-3
Dmitry Shmidt61d9df32012-08-29 16:22:06 -070033 DRV_CFLAGS += -DCONFIG_LIBNL20 -I/usr/include/libnl3
Dmitry Shmidt661b4f72014-09-29 14:58:27 -070034ifdef CONFIG_LIBNL3_ROUTE
35 DRV_LIBS += -lnl-route-3
36 DRV_CFLAGS += -DCONFIG_LIBNL3_ROUTE
37endif
Dmitry Shmidt1f69aa52012-01-24 16:10:04 -080038else
39 ifdef CONFIG_LIBNL_TINY
40 DRV_LIBS += -lnl-tiny
41 else
42 DRV_LIBS += -lnl
43 endif
44
45 ifdef CONFIG_LIBNL20
46 DRV_LIBS += -lnl-genl
47 DRV_CFLAGS += -DCONFIG_LIBNL20
48 endif
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070049endif
50endif
51
52ifdef CONFIG_DRIVER_BSD
53ifndef CONFIG_L2_PACKET
54CONFIG_L2_PACKET=freebsd
55endif
56DRV_CFLAGS += -DCONFIG_DRIVER_BSD
57DRV_OBJS += src/drivers/driver_bsd.c
58CONFIG_L2_FREEBSD=y
59CONFIG_DNET_PCAP=y
60endif
61
Dmitry Shmidt4b9d52f2013-02-05 17:44:43 -080062ifdef CONFIG_DRIVER_OPENBSD
63ifndef CONFIG_L2_PACKET
64CONFIG_L2_PACKET=freebsd
65endif
66DRV_CFLAGS += -DCONFIG_DRIVER_OPENBSD
67DRV_OBJS += src/drivers/driver_openbsd.c
68endif
69
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -070070ifdef CONFIG_DRIVER_TEST
71DRV_CFLAGS += -DCONFIG_DRIVER_TEST
72DRV_OBJS += src/drivers/driver_test.c
73NEED_AP_MLME=y
74endif
75
76ifdef CONFIG_DRIVER_NONE
77DRV_CFLAGS += -DCONFIG_DRIVER_NONE
78DRV_OBJS += src/drivers/driver_none.c
79endif
80
81##### PURE AP DRIVERS
82
Dmitry Shmidt1f69aa52012-01-24 16:10:04 -080083ifdef CONFIG_DRIVER_HOSTAP
84DRV_AP_CFLAGS += -DCONFIG_DRIVER_HOSTAP
85DRV_AP_OBJS += src/drivers/driver_hostap.c
86CONFIG_WIRELESS_EXTENSION=y
87NEED_AP_MLME=y
88NEED_NETLINK=y
89NEED_LINUX_IOCTL=y
90endif
91
92ifdef CONFIG_DRIVER_MADWIFI
93DRV_AP_CFLAGS += -DCONFIG_DRIVER_MADWIFI
94DRV_AP_OBJS += src/drivers/driver_madwifi.c
95CONFIG_WIRELESS_EXTENSION=y
96CONFIG_L2_PACKET=linux
97NEED_NETLINK=y
98NEED_LINUX_IOCTL=y
99endif
100
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -0700101ifdef CONFIG_DRIVER_ATHEROS
102DRV_AP_CFLAGS += -DCONFIG_DRIVER_ATHEROS
103DRV_AP_OBJS += src/drivers/driver_atheros.c
104CONFIG_L2_PACKET=linux
105NEED_NETLINK=y
106NEED_LINUX_IOCTL=y
107endif
108
109##### PURE CLIENT DRIVERS
110
111ifdef CONFIG_DRIVER_WEXT
112DRV_WPA_CFLAGS += -DCONFIG_DRIVER_WEXT
113CONFIG_WIRELESS_EXTENSION=y
114NEED_NETLINK=y
115NEED_LINUX_IOCTL=y
116NEED_RFKILL=y
117endif
118
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -0700119ifdef CONFIG_DRIVER_NDIS
120DRV_WPA_CFLAGS += -DCONFIG_DRIVER_NDIS
121DRV_WPA_OBJS += src/drivers/driver_ndis.c
122ifdef CONFIG_NDIS_EVENTS_INTEGRATED
123DRV_WPA_OBJS += src/drivers/driver_ndis_.c
124endif
125ifndef CONFIG_L2_PACKET
126CONFIG_L2_PACKET=pcap
127endif
128CONFIG_WINPCAP=y
129ifdef CONFIG_USE_NDISUIO
130DRV_WPA_CFLAGS += -DCONFIG_USE_NDISUIO
131endif
132endif
133
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -0700134ifdef CONFIG_DRIVER_ROBOSWITCH
135DRV_WPA_CFLAGS += -DCONFIG_DRIVER_ROBOSWITCH
136DRV_WPA_OBJS += src/drivers/driver_roboswitch.c
137endif
138
139ifdef CONFIG_WIRELESS_EXTENSION
140DRV_WPA_CFLAGS += -DCONFIG_WIRELESS_EXTENSION
141DRV_WPA_OBJS += src/drivers/driver_wext.c
142NEED_RFKILL=y
143endif
144
145ifdef NEED_NETLINK
146DRV_OBJS += src/drivers/netlink.c
147endif
148
149ifdef NEED_LINUX_IOCTL
150DRV_OBJS += src/drivers/linux_ioctl.c
151endif
152
153ifdef NEED_RFKILL
154DRV_OBJS += src/drivers/rfkill.c
155endif
156
157ifdef CONFIG_DRIVER_CUSTOM
158DRV_CFLAGS += -DCONFIG_DRIVER_CUSTOM
159endif
160
Dmitry Shmidt61d9df32012-08-29 16:22:06 -0700161ifdef CONFIG_VLAN_NETLINK
162ifdef CONFIG_FULL_DYNAMIC_VLAN
163ifdef CONFIG_LIBNL32
164 DRV_LIBS += -lnl-3
165 DRV_LIBS += -lnl-genl-3
166 DRV_LIBS += -lnl-route-3
167 DRV_CFLAGS += -DCONFIG_LIBNL20
168else
169 ifdef CONFIG_LIBNL_TINY
170 DRV_LIBS += -lnl-tiny
171 else
172 DRV_LIBS += -lnl
173 endif
174
175 ifdef CONFIG_LIBNL20
176 DRV_LIBS += -lnl-genl
177 DRV_LIBS += -lnl-route
178 DRV_CFLAGS += -DCONFIG_LIBNL20
179 endif
180endif
181endif
182endif
183
Dmitry Shmidt8d520ff2011-05-09 14:06:53 -0700184##### COMMON VARS
185DRV_BOTH_CFLAGS := $(DRV_CFLAGS) $(DRV_WPA_CFLAGS) $(DRV_AP_CFLAGS)
186DRV_WPA_CFLAGS += $(DRV_CFLAGS)
187DRV_AP_CFLAGS += $(DRV_CFLAGS)
188
189DRV_BOTH_LIBS := $(DRV_LIBS) $(DRV_WPA_LIBS) $(DRV_AP_LIBS)
190DRV_WPA_LIBS += $(DRV_LIBS)
191DRV_AP_LIBS += $(DRV_LIBS)
192
193DRV_BOTH_OBJS := $(DRV_OBJS) $(DRV_WPA_OBJS) $(DRV_AP_OBJS)
194DRV_WPA_OBJS += $(DRV_OBJS)
195DRV_AP_OBJS += $(DRV_OBJS)
196
197DRV_BOTH_LDFLAGS := $(DRV_LDFLAGS) $(DRV_WPA_LDFLAGS) $(DRV_AP_LDFLAGS)
198DRV_WPA_LDFLAGS += $(DRV_LDFLAGS)
199DRV_AP_LDFLAGS += $(DRV_LDFLAGS)