nl80211: Move event handling into a separate file
[mech_eap.git] / src / drivers / drivers.mak
1 ##### CLEAR VARS
2
3 DRV_CFLAGS =
4 DRV_WPA_CFLAGS =
5 DRV_AP_CFLAGS =
6 DRV_OBJS =
7 DRV_WPA_OBJS =
8 DRV_AP_OBJS =
9 DRV_LIBS =
10 DRV_WPA_LIBS =
11 DRV_AP_LIBS =
12
13 ##### COMMON DRIVERS
14
15 ifdef CONFIG_DRIVER_WIRED
16 DRV_CFLAGS += -DCONFIG_DRIVER_WIRED
17 DRV_OBJS += ../src/drivers/driver_wired.o
18 endif
19
20 ifdef CONFIG_DRIVER_MACSEC_QCA
21 DRV_CFLAGS += -DCONFIG_DRIVER_MACSEC_QCA
22 DRV_OBJS += ../src/drivers/driver_macsec_qca.o
23 endif
24
25 ifdef CONFIG_DRIVER_NL80211
26 DRV_CFLAGS += -DCONFIG_DRIVER_NL80211
27 DRV_OBJS += ../src/drivers/driver_nl80211.o
28 DRV_OBJS += ../src/drivers/driver_nl80211_capa.o
29 DRV_OBJS += ../src/drivers/driver_nl80211_event.o
30 DRV_OBJS += ../src/drivers/driver_nl80211_monitor.o
31 DRV_OBJS += ../src/utils/radiotap.o
32 NEED_SME=y
33 NEED_AP_MLME=y
34 NEED_NETLINK=y
35 NEED_LINUX_IOCTL=y
36 NEED_RFKILL=y
37
38 ifdef CONFIG_LIBNL32
39   DRV_LIBS += -lnl-3
40   DRV_LIBS += -lnl-genl-3
41   DRV_CFLAGS += -DCONFIG_LIBNL20 -I/usr/include/libnl3
42 ifdef CONFIG_LIBNL3_ROUTE
43   DRV_LIBS += -lnl-route-3
44   DRV_CFLAGS += -DCONFIG_LIBNL3_ROUTE
45 endif
46 else
47   ifdef CONFIG_LIBNL_TINY
48     DRV_LIBS += -lnl-tiny
49   else
50     DRV_LIBS += -lnl
51   endif
52
53   ifdef CONFIG_LIBNL20
54     DRV_LIBS += -lnl-genl
55     DRV_CFLAGS += -DCONFIG_LIBNL20
56   endif
57 endif
58 endif
59
60 ifdef CONFIG_DRIVER_BSD
61 ifndef CONFIG_L2_PACKET
62 CONFIG_L2_PACKET=freebsd
63 endif
64 DRV_CFLAGS += -DCONFIG_DRIVER_BSD
65 DRV_OBJS += ../src/drivers/driver_bsd.o
66 CONFIG_L2_FREEBSD=y
67 CONFIG_DNET_PCAP=y
68 endif
69
70 ifdef CONFIG_DRIVER_OPENBSD
71 ifndef CONFIG_L2_PACKET
72 CONFIG_L2_PACKET=freebsd
73 endif
74 DRV_CFLAGS += -DCONFIG_DRIVER_OPENBSD
75 DRV_OBJS += ../src/drivers/driver_openbsd.o
76 endif
77
78 ifdef CONFIG_DRIVER_NONE
79 DRV_CFLAGS += -DCONFIG_DRIVER_NONE
80 DRV_OBJS += ../src/drivers/driver_none.o
81 endif
82
83 ##### PURE AP DRIVERS
84
85 ifdef CONFIG_DRIVER_HOSTAP
86 DRV_AP_CFLAGS += -DCONFIG_DRIVER_HOSTAP
87 DRV_AP_OBJS += ../src/drivers/driver_hostap.o
88 CONFIG_WIRELESS_EXTENSION=y
89 NEED_AP_MLME=y
90 NEED_NETLINK=y
91 NEED_LINUX_IOCTL=y
92 endif
93
94 ifdef CONFIG_DRIVER_MADWIFI
95 DRV_AP_CFLAGS += -DCONFIG_DRIVER_MADWIFI
96 DRV_AP_OBJS += ../src/drivers/driver_madwifi.o
97 CONFIG_WIRELESS_EXTENSION=y
98 CONFIG_L2_PACKET=linux
99 NEED_NETLINK=y
100 NEED_LINUX_IOCTL=y
101 endif
102
103 ifdef CONFIG_DRIVER_ATHEROS
104 DRV_AP_CFLAGS += -DCONFIG_DRIVER_ATHEROS
105 DRV_AP_OBJS += ../src/drivers/driver_atheros.o
106 CONFIG_L2_PACKET=linux
107 NEED_NETLINK=y
108 NEED_LINUX_IOCTL=y
109 ifdef ATH_GCM_SUPPORT
110 CFLAGS += -DATH_GCM_SUPPORT
111 endif
112 endif
113
114 ##### PURE CLIENT DRIVERS
115
116 ifdef CONFIG_DRIVER_WEXT
117 DRV_WPA_CFLAGS += -DCONFIG_DRIVER_WEXT
118 CONFIG_WIRELESS_EXTENSION=y
119 NEED_NETLINK=y
120 NEED_LINUX_IOCTL=y
121 NEED_RFKILL=y
122 endif
123
124 ifdef CONFIG_DRIVER_NDIS
125 DRV_WPA_CFLAGS += -DCONFIG_DRIVER_NDIS
126 DRV_WPA_OBJS += ../src/drivers/driver_ndis.o
127 ifdef CONFIG_NDIS_EVENTS_INTEGRATED
128 DRV_WPA_OBJS += ../src/drivers/driver_ndis_.o
129 endif
130 ifndef CONFIG_L2_PACKET
131 CONFIG_L2_PACKET=pcap
132 endif
133 CONFIG_WINPCAP=y
134 ifdef CONFIG_USE_NDISUIO
135 DRV_WPA_CFLAGS += -DCONFIG_USE_NDISUIO
136 endif
137 endif
138
139 ifdef CONFIG_DRIVER_ROBOSWITCH
140 DRV_WPA_CFLAGS += -DCONFIG_DRIVER_ROBOSWITCH
141 DRV_WPA_OBJS += ../src/drivers/driver_roboswitch.o
142 endif
143
144 ifdef CONFIG_WIRELESS_EXTENSION
145 DRV_WPA_CFLAGS += -DCONFIG_WIRELESS_EXTENSION
146 DRV_WPA_OBJS += ../src/drivers/driver_wext.o
147 NEED_RFKILL=y
148 endif
149
150 ifdef NEED_NETLINK
151 DRV_OBJS += ../src/drivers/netlink.o
152 endif
153
154 ifdef NEED_LINUX_IOCTL
155 DRV_OBJS += ../src/drivers/linux_ioctl.o
156 endif
157
158 ifdef NEED_RFKILL
159 DRV_OBJS += ../src/drivers/rfkill.o
160 endif
161
162 ifdef CONFIG_VLAN_NETLINK
163 ifdef CONFIG_FULL_DYNAMIC_VLAN
164 ifdef CONFIG_LIBNL32
165   DRV_LIBS += -lnl-3
166   DRV_LIBS += -lnl-genl-3
167   DRV_LIBS += -lnl-route-3
168   DRV_CFLAGS += -DCONFIG_LIBNL20
169 else
170   ifdef CONFIG_LIBNL_TINY
171     DRV_LIBS += -lnl-tiny
172   else
173     DRV_LIBS += -lnl
174   endif
175
176   ifdef CONFIG_LIBNL20
177     DRV_LIBS += -lnl-genl
178     DRV_LIBS += -lnl-route
179     DRV_CFLAGS += -DCONFIG_LIBNL20
180   endif
181 endif
182 endif
183 endif
184
185 ##### COMMON VARS
186 DRV_BOTH_CFLAGS := $(DRV_CFLAGS) $(DRV_WPA_CFLAGS) $(DRV_AP_CFLAGS)
187 DRV_WPA_CFLAGS += $(DRV_CFLAGS)
188 DRV_AP_CFLAGS += $(DRV_CFLAGS)
189
190 DRV_BOTH_LIBS := $(DRV_LIBS) $(DRV_WPA_LIBS) $(DRV_AP_LIBS)
191 DRV_WPA_LIBS += $(DRV_LIBS)
192 DRV_AP_LIBS += $(DRV_LIBS)
193
194 DRV_BOTH_OBJS := $(DRV_OBJS) $(DRV_WPA_OBJS) $(DRV_AP_OBJS)
195 DRV_WPA_OBJS += $(DRV_OBJS)
196 DRV_AP_OBJS += $(DRV_OBJS)
197
198 DRV_BOTH_LDFLAGS := $(DRV_LDFLAGS) $(DRV_WPA_LDFLAGS) $(DRV_AP_LDFLAGS)
199 DRV_WPA_LDFLAGS += $(DRV_LDFLAGS)
200 DRV_AP_LDFLAGS += $(DRV_LDFLAGS)