OSDN Git Service

Added a separate driver awext to emulate Android driver commands
[android-x86/external-wpa_supplicant_6.git] / wpa_supplicant / Android.mk
1 #
2 # Copyright (C) 2008 The Android Open Source Project
3 #
4 # Licensed under the Apache License, Version 2.0 (the "License");
5 # you may not use this file except in compliance with the License.
6 # You may obtain a copy of the License at
7 #
8 #      http://www.apache.org/licenses/LICENSE-2.0
9 #
10 # Unless required by applicable law or agreed to in writing, software
11 # distributed under the License is distributed on an "AS IS" BASIS,
12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 # See the License for the specific language governing permissions and
14 # limitations under the License.
15 #
16 #
17
18 LOCAL_PATH := $(call my-dir)
19
20 WPA_BUILD_SUPPLICANT := false
21 ifneq ($(TARGET_SIMULATOR),true)
22   ifneq ($(BOARD_WPA_SUPPLICANT_DRIVER),)
23     WPA_BUILD_SUPPLICANT := true
24     CONFIG_DRIVER_$(BOARD_WPA_SUPPLICANT_DRIVER) = y
25   endif
26 endif
27
28 include $(LOCAL_PATH)/.config
29
30 # To force sizeof(enum) = 4
31 ifeq ($(TARGET_ARCH),arm)
32 L_CFLAGS += -mabi=aapcs-linux
33 endif
34
35 # To ignore possible wrong network configurations
36 L_CFLAGS += -DWPA_IGNORE_CONFIG_ERRORS
37
38 # To allow non-ASCII characters in SSID
39 L_CFLAGS += -DWPA_UNICODE_SSID
40
41 # OpenSSL is configured without engines on Android
42 L_CFLAGS += -DOPENSSL_NO_ENGINE
43
44 INCLUDES = $(LOCAL_PATH)
45 INCLUDES += $(LOCAL_PATH)/src
46 INCLUDES += $(LOCAL_PATH)/src/common
47 # INCLUDES += $(LOCAL_PATH)/src/crypto # To force proper includes
48 INCLUDES += $(LOCAL_PATH)/src/drivers
49 INCLUDES += $(LOCAL_PATH)/src/eap_common
50 INCLUDES += $(LOCAL_PATH)/src/eapol_supp
51 INCLUDES += $(LOCAL_PATH)/src/eap_peer
52 INCLUDES += $(LOCAL_PATH)/src/eap_server
53 INCLUDES += $(LOCAL_PATH)/src/hlr_auc_gw
54 INCLUDES += $(LOCAL_PATH)/src/l2_packet
55 INCLUDES += $(LOCAL_PATH)/src/radius
56 INCLUDES += $(LOCAL_PATH)/src/rsn_supp
57 INCLUDES += $(LOCAL_PATH)/src/tls
58 INCLUDES += $(LOCAL_PATH)/src/utils
59 INCLUDES += $(LOCAL_PATH)/src/wps
60 INCLUDES += external/openssl/include
61 INCLUDES += frameworks/base/cmds/keystore
62
63 OBJS = config.c
64 OBJS += src/utils/common.c
65 OBJS += src/utils/wpa_debug.c
66 OBJS += src/utils/wpabuf.c
67 OBJS += src/crypto/md5.c
68 OBJS += src/crypto/rc4.c
69 OBJS += src/crypto/md4.c
70 OBJS += src/crypto/sha1.c
71 OBJS += src/crypto/des.c
72 OBJS_p = wpa_passphrase.c
73 OBJS_p += src/utils/common.c
74 OBJS_p += src/utils/wpa_debug.c
75 OBJS_p += src/crypto/md5.c
76 OBJS_p += src/crypto/md4.c
77 OBJS_p += src/crypto/sha1.c
78 OBJS_p += src/crypto/des.c
79 OBJS_c = wpa_cli.c
80 OBJS_c += src/common/wpa_ctrl.c
81 OBJS_d =
82
83 ifndef CONFIG_OS
84 ifdef CONFIG_NATIVE_WINDOWS
85 CONFIG_OS=win32
86 else
87 CONFIG_OS=unix
88 endif
89 endif
90
91 ifeq ($(CONFIG_OS), internal)
92 L_CFLAGS += -DOS_NO_C_LIB_DEFINES
93 endif
94
95 OBJS += src/utils/os_$(CONFIG_OS).c
96 OBJS_p += src/utils/os_$(CONFIG_OS).c
97 OBJS_c += src/utils/os_$(CONFIG_OS).c
98
99 ifndef CONFIG_ELOOP
100 CONFIG_ELOOP=eloop
101 endif
102 OBJS += src/utils/$(CONFIG_ELOOP).c
103
104
105 ifdef CONFIG_EAPOL_TEST
106 L_CFLAGS += -Werror -DEAPOL_TEST
107 endif
108
109 ifndef CONFIG_BACKEND
110 CONFIG_BACKEND=file
111 endif
112
113 ifeq ($(CONFIG_BACKEND), file)
114 OBJS += config_file.c
115 ifndef CONFIG_NO_CONFIG_BLOBS
116 NEED_BASE64=y
117 endif
118 L_CFLAGS += -DCONFIG_BACKEND_FILE
119 endif
120
121 ifeq ($(CONFIG_BACKEND), winreg)
122 OBJS += config_winreg.c
123 endif
124
125 ifeq ($(CONFIG_BACKEND), none)
126 OBJS += config_none.c
127 endif
128
129 ifdef CONFIG_NO_CONFIG_WRITE
130 L_CFLAGS += -DCONFIG_NO_CONFIG_WRITE
131 endif
132
133 ifdef CONFIG_NO_CONFIG_BLOBS
134 L_CFLAGS += -DCONFIG_NO_CONFIG_BLOBS
135 endif
136
137 ifdef CONFIG_NO_SCAN_PROCESSING
138 L_CFLAGS += -DCONFIG_NO_SCAN_PROCESSING
139 endif
140
141 ifdef CONFIG_DRIVER_HOSTAP
142 L_CFLAGS += -DCONFIG_DRIVER_HOSTAP
143 OBJS_d += src/drivers/driver_hostap.c
144 CONFIG_WIRELESS_EXTENSION=y
145 endif
146
147 ifdef CONFIG_DRIVER_AWEXT
148 L_CFLAGS += -DCONFIG_DRIVER_AWEXT
149 OBJS_d += src/drivers/driver_awext.c
150 CONFIG_WIRELESS_EXTENSION=y
151 endif
152
153 ifdef CONFIG_DRIVER_WEXT
154 L_CFLAGS += -DCONFIG_DRIVER_WEXT
155 CONFIG_WIRELESS_EXTENSION=y
156 endif
157
158 ifdef CONFIG_DRIVER_NL80211
159 L_CFLAGS += -DCONFIG_DRIVER_NL80211
160 OBJS_d += src/drivers/driver_nl80211.c
161 LIBS += -lnl
162 ifdef CONFIG_CLIENT_MLME
163 OBJS_d += src/drivers/radiotap.c
164 endif
165 endif
166
167 ifdef CONFIG_DRIVER_PRISM54
168 L_CFLAGS += -DCONFIG_DRIVER_PRISM54
169 OBJS_d += src/drivers/driver_prism54.c
170 CONFIG_WIRELESS_EXTENSION=y
171 endif
172
173 ifdef CONFIG_DRIVER_HERMES
174 L_CFLAGS += -DCONFIG_DRIVER_HERMES
175 OBJS_d += src/drivers/driver_hermes.c
176 CONFIG_WIRELESS_EXTENSION=y
177 endif
178
179 ifdef CONFIG_DRIVER_MADWIFI
180 L_CFLAGS += -DCONFIG_DRIVER_MADWIFI
181 OBJS_d += src/drivers/driver_madwifi.c
182 CONFIG_WIRELESS_EXTENSION=y
183 endif
184
185 ifdef CONFIG_DRIVER_ATMEL
186 L_CFLAGS += -DCONFIG_DRIVER_ATMEL
187 OBJS_d += src/drivers/driver_atmel.c
188 CONFIG_WIRELESS_EXTENSION=y
189 endif
190
191 ifdef CONFIG_DRIVER_NDISWRAPPER
192 L_CFLAGS += -DCONFIG_DRIVER_NDISWRAPPER
193 OBJS_d += src/drivers/driver_ndiswrapper.c
194 CONFIG_WIRELESS_EXTENSION=y
195 endif
196
197 ifdef CONFIG_DRIVER_RALINK
198 L_CFLAGS += -DCONFIG_DRIVER_RALINK
199 OBJS_d += src/drivers/driver_ralink.c
200 endif
201
202 ifdef CONFIG_DRIVER_BROADCOM
203 L_CFLAGS += -DCONFIG_DRIVER_BROADCOM
204 OBJS_d += src/drivers/driver_broadcom.c
205 endif
206
207 ifdef CONFIG_DRIVER_IPW
208 L_CFLAGS += -DCONFIG_DRIVER_IPW
209 OBJS_d += src/drivers/driver_ipw.c
210 CONFIG_WIRELESS_EXTENSION=y
211 endif
212
213 ifdef CONFIG_DRIVER_BSD
214 L_CFLAGS += -DCONFIG_DRIVER_BSD
215 OBJS_d += src/drivers/driver_bsd.c
216 ifndef CONFIG_L2_PACKET
217 CONFIG_L2_PACKET=freebsd
218 endif
219 endif
220
221 ifdef CONFIG_DRIVER_NDIS
222 L_CFLAGS += -DCONFIG_DRIVER_NDIS
223 OBJS_d += src/drivers/driver_ndis.c
224 ifdef CONFIG_NDIS_EVENTS_INTEGRATED
225 OBJS_d += src/drivers/driver_ndis_.c
226 endif
227 ifndef CONFIG_L2_PACKET
228 CONFIG_L2_PACKET=pcap
229 endif
230 CONFIG_WINPCAP=y
231 ifdef CONFIG_USE_NDISUIO
232 L_CFLAGS += -DCONFIG_USE_NDISUIO
233 endif
234 endif
235
236 ifdef CONFIG_DRIVER_WIRED
237 L_CFLAGS += -DCONFIG_DRIVER_WIRED
238 OBJS_d += src/drivers/driver_wired.c
239 endif
240
241 ifdef CONFIG_DRIVER_TEST
242 L_CFLAGS += -DCONFIG_DRIVER_TEST
243 OBJS_d += src/drivers/driver_test.c
244 endif
245
246 ifdef CONFIG_DRIVER_CUSTOM
247 L_CFLAGS += -DCONFIG_DRIVER_CUSTOM
248 endif
249
250 ifdef CONFIG_DRIVER_OSX
251 L_CFLAGS += -DCONFIG_DRIVER_OSX
252 OBJS_d += src/drivers/driver_osx.c
253 LDFLAGS += -framework CoreFoundation
254 LDFLAGS += -F/System/Library/PrivateFrameworks -framework Apple80211
255 endif
256
257 ifdef CONFIG_DRIVER_PS3
258 L_CFLAGS += -DCONFIG_DRIVER_PS3 -m64
259 OBJS_d += src/drivers/driver_ps3.c
260 LDFLAGS += -m64
261 endif
262
263 ifdef CONFIG_DRIVER_IPHONE
264 L_CFLAGS += -DCONFIG_DRIVER_IPHONE
265 OBJS_d += src/drivers/driver_iphone.c
266 OBJS_d += src/drivers/MobileApple80211.c
267 LIBS += -framework CoreFoundation
268 endif
269
270 ifdef CONFIG_DRIVER_ROBOSWITCH
271 L_CFLAGS += -DCONFIG_DRIVER_ROBOSWITCH
272 OBJS_d += src/drivers/driver_roboswitch.c
273 endif
274
275 ifndef CONFIG_L2_PACKET
276 CONFIG_L2_PACKET=linux
277 endif
278
279 OBJS_l2 += src/l2_packet/l2_packet_$(CONFIG_L2_PACKET).c
280
281 ifeq ($(CONFIG_L2_PACKET), pcap)
282 ifdef CONFIG_WINPCAP
283 L_CFLAGS += -DCONFIG_WINPCAP
284 LIBS += -lwpcap -lpacket
285 LIBS_w += -lwpcap
286 else
287 LIBS += -ldnet -lpcap
288 endif
289 endif
290
291 ifeq ($(CONFIG_L2_PACKET), winpcap)
292 LIBS += -lwpcap -lpacket
293 LIBS_w += -lwpcap
294 endif
295
296 ifeq ($(CONFIG_L2_PACKET), freebsd)
297 LIBS += -lpcap
298 endif
299
300 ifdef CONFIG_EAP_TLS
301 # EAP-TLS
302 ifeq ($(CONFIG_EAP_TLS), dyn)
303 L_CFLAGS += -DEAP_TLS_DYNAMIC
304 EAPDYN += src/eap_peer/eap_tls.so
305 else
306 L_CFLAGS += -DEAP_TLS
307 OBJS += src/eap_peer/eap_tls.c
308 OBJS_h += src/eap_server/eap_tls.c
309 endif
310 TLS_FUNCS=y
311 CONFIG_IEEE8021X_EAPOL=y
312 endif
313
314 ifdef CONFIG_EAP_PEAP
315 # EAP-PEAP
316 ifeq ($(CONFIG_EAP_PEAP), dyn)
317 L_CFLAGS += -DEAP_PEAP_DYNAMIC
318 EAPDYN += src/eap_peer/eap_peap.so
319 else
320 L_CFLAGS += -DEAP_PEAP
321 OBJS += src/eap_peer/eap_peap.c
322 OBJS += src/eap_common/eap_peap_common.c
323 OBJS_h += src/eap_server/eap_peap.c
324 endif
325 TLS_FUNCS=y
326 CONFIG_IEEE8021X_EAPOL=y
327 endif
328
329 ifdef CONFIG_EAP_TTLS
330 # EAP-TTLS
331 ifeq ($(CONFIG_EAP_TTLS), dyn)
332 L_CFLAGS += -DEAP_TTLS_DYNAMIC
333 EAPDYN += src/eap_peer/eap_ttls.so
334 else
335 L_CFLAGS += -DEAP_TTLS
336 OBJS += src/eap_peer/eap_ttls.c
337 OBJS_h += src/eap_server/eap_ttls.c
338 endif
339 MS_FUNCS=y
340 TLS_FUNCS=y
341 CHAP=y
342 CONFIG_IEEE8021X_EAPOL=y
343 endif
344
345 ifdef CONFIG_EAP_MD5
346 # EAP-MD5
347 ifeq ($(CONFIG_EAP_MD5), dyn)
348 L_CFLAGS += -DEAP_MD5_DYNAMIC
349 EAPDYN += src/eap_peer/eap_md5.so
350 else
351 L_CFLAGS += -DEAP_MD5
352 OBJS += src/eap_peer/eap_md5.c
353 OBJS_h += src/eap_server/eap_md5.c
354 endif
355 CHAP=y
356 CONFIG_IEEE8021X_EAPOL=y
357 endif
358
359 # backwards compatibility for old spelling
360 ifdef CONFIG_MSCHAPV2
361 ifndef CONFIG_EAP_MSCHAPV2
362 CONFIG_EAP_MSCHAPV2=y
363 endif
364 endif
365
366 ifdef CONFIG_EAP_MSCHAPV2
367 # EAP-MSCHAPv2
368 ifeq ($(CONFIG_EAP_MSCHAPV2), dyn)
369 L_CFLAGS += -DEAP_MSCHAPv2_DYNAMIC
370 EAPDYN += src/eap_peer/eap_mschapv2.so
371 EAPDYN += src/eap_peer/mschapv2.so
372 else
373 L_CFLAGS += -DEAP_MSCHAPv2
374 OBJS += src/eap_peer/eap_mschapv2.c
375 OBJS += src/eap_peer/mschapv2.c
376 OBJS_h += src/eap_server/eap_mschapv2.c
377 endif
378 MS_FUNCS=y
379 CONFIG_IEEE8021X_EAPOL=y
380 endif
381
382 ifdef CONFIG_EAP_GTC
383 # EAP-GTC
384 ifeq ($(CONFIG_EAP_GTC), dyn)
385 L_CFLAGS += -DEAP_GTC_DYNAMIC
386 EAPDYN += src/eap_peer/eap_gtc.so
387 else
388 L_CFLAGS += -DEAP_GTC
389 OBJS += src/eap_peer/eap_gtc.c
390 OBJS_h += src/eap_server/eap_gtc.c
391 endif
392 CONFIG_IEEE8021X_EAPOL=y
393 endif
394
395 ifdef CONFIG_EAP_OTP
396 # EAP-OTP
397 ifeq ($(CONFIG_EAP_OTP), dyn)
398 L_CFLAGS += -DEAP_OTP_DYNAMIC
399 EAPDYN += src/eap_peer/eap_otp.so
400 else
401 L_CFLAGS += -DEAP_OTP
402 OBJS += src/eap_peer/eap_otp.c
403 endif
404 CONFIG_IEEE8021X_EAPOL=y
405 endif
406
407 ifdef CONFIG_EAP_SIM
408 # EAP-SIM
409 ifeq ($(CONFIG_EAP_SIM), dyn)
410 L_CFLAGS += -DEAP_SIM_DYNAMIC
411 EAPDYN += src/eap_peer/eap_sim.so
412 else
413 L_CFLAGS += -DEAP_SIM
414 OBJS += src/eap_peer/eap_sim.c
415 OBJS_h += src/eap_server/eap_sim.c
416 endif
417 CONFIG_IEEE8021X_EAPOL=y
418 CONFIG_EAP_SIM_COMMON=y
419 endif
420
421 ifdef CONFIG_EAP_LEAP
422 # EAP-LEAP
423 ifeq ($(CONFIG_EAP_LEAP), dyn)
424 L_CFLAGS += -DEAP_LEAP_DYNAMIC
425 EAPDYN += src/eap_peer/eap_leap.so
426 else
427 L_CFLAGS += -DEAP_LEAP
428 OBJS += src/eap_peer/eap_leap.c
429 endif
430 MS_FUNCS=y
431 CONFIG_IEEE8021X_EAPOL=y
432 endif
433
434 ifdef CONFIG_EAP_PSK
435 # EAP-PSK
436 ifeq ($(CONFIG_EAP_PSK), dyn)
437 L_CFLAGS += -DEAP_PSK_DYNAMIC
438 EAPDYN += src/eap_peer/eap_psk.so
439 else
440 L_CFLAGS += -DEAP_PSK
441 OBJS += src/eap_peer/eap_psk.c src/eap_common/eap_psk_common.c
442 OBJS_h += src/eap_server/eap_psk.c
443 endif
444 CONFIG_IEEE8021X_EAPOL=y
445 NEED_AES=y
446 endif
447
448 ifdef CONFIG_EAP_AKA
449 # EAP-AKA
450 ifeq ($(CONFIG_EAP_AKA), dyn)
451 L_CFLAGS += -DEAP_AKA_DYNAMIC
452 EAPDYN += src/eap_peer/eap_aka.so
453 else
454 L_CFLAGS += -DEAP_AKA
455 OBJS += src/eap_peer/eap_aka.c
456 OBJS_h += src/eap_server/eap_aka.c
457 endif
458 CONFIG_IEEE8021X_EAPOL=y
459 CONFIG_EAP_SIM_COMMON=y
460 endif
461
462 ifdef CONFIG_EAP_AKA_PRIME
463 # EAP-AKA'
464 ifeq ($(CONFIG_EAP_AKA_PRIME), dyn)
465 L_CFLAGS += -DEAP_AKA_PRIME_DYNAMIC
466 else
467 L_CFLAGS += -DEAP_AKA_PRIME
468 endif
469 NEED_SHA256=y
470 endif
471
472 ifdef CONFIG_EAP_SIM_COMMON
473 OBJS += src/eap_common/eap_sim_common.c
474 OBJS_h += src/eap_server/eap_sim_db.c
475 NEED_AES=y
476 NEED_FIPS186_2_PRF=y
477 endif
478
479 ifdef CONFIG_EAP_FAST
480 # EAP-FAST
481 ifeq ($(CONFIG_EAP_FAST), dyn)
482 L_CFLAGS += -DEAP_FAST_DYNAMIC
483 EAPDYN += src/eap_peer/eap_fast.so
484 EAPDYN += src/eap_common/eap_fast_common.c
485 else
486 L_CFLAGS += -DEAP_FAST
487 OBJS += src/eap_peer/eap_fast.c src/eap_peer/eap_fast_pac.c
488 OBJS += src/eap_common/eap_fast_common.c
489 OBJS_h += src/eap_server/eap_fast.c
490 endif
491 TLS_FUNCS=y
492 CONFIG_IEEE8021X_EAPOL=y
493 NEED_T_PRF=y
494 endif
495
496 ifdef CONFIG_EAP_PAX
497 # EAP-PAX
498 ifeq ($(CONFIG_EAP_PAX), dyn)
499 L_CFLAGS += -DEAP_PAX_DYNAMIC
500 EAPDYN += src/eap_peer/eap_pax.so
501 else
502 L_CFLAGS += -DEAP_PAX
503 OBJS += src/eap_peer/eap_pax.c src/eap_common/eap_pax_common.c
504 OBJS_h += src/eap_server/eap_pax.c
505 endif
506 CONFIG_IEEE8021X_EAPOL=y
507 endif
508
509 ifdef CONFIG_EAP_SAKE
510 # EAP-SAKE
511 ifeq ($(CONFIG_EAP_SAKE), dyn)
512 L_CFLAGS += -DEAP_SAKE_DYNAMIC
513 EAPDYN += src/eap_peer/eap_sake.so
514 else
515 L_CFLAGS += -DEAP_SAKE
516 OBJS += src/eap_peer/eap_sake.c src/eap_common/eap_sake_common.c
517 OBJS_h += src/eap_server/eap_sake.c
518 endif
519 CONFIG_IEEE8021X_EAPOL=y
520 endif
521
522 ifdef CONFIG_EAP_GPSK
523 # EAP-GPSK
524 ifeq ($(CONFIG_EAP_GPSK), dyn)
525 L_CFLAGS += -DEAP_GPSK_DYNAMIC
526 EAPDYN += src/eap_peer/eap_gpsk.so
527 else
528 L_CFLAGS += -DEAP_GPSK
529 OBJS += src/eap_peer/eap_gpsk.c src/eap_common/eap_gpsk_common.c
530 OBJS_h += src/eap_server/eap_gpsk.c
531 endif
532 CONFIG_IEEE8021X_EAPOL=y
533 ifdef CONFIG_EAP_GPSK_SHA256
534 CFLAGS += -DEAP_GPSK_SHA256
535 endif
536 NEED_SHA256=y
537 endif
538
539 ifdef CONFIG_WPS
540 # EAP-WSC
541 L_CFLAGS += -DCONFIG_WPS -DEAP_WSC
542 OBJS += wps_supplicant.c
543 OBJS += src/utils/uuid.c
544 OBJS += src/eap_peer/eap_wsc.c src/eap_common/eap_wsc_common.c
545 OBJS += src/wps/wps.c
546 OBJS += src/wps/wps_common.c
547 OBJS += src/wps/wps_attr_parse.c
548 OBJS += src/wps/wps_attr_build.c
549 OBJS += src/wps/wps_attr_process.c
550 OBJS += src/wps/wps_dev_attr.c
551 OBJS += src/wps/wps_enrollee.c
552 OBJS += src/wps/wps_registrar.c
553 OBJS_h += src/eap_server/eap_wsc.c
554 CONFIG_IEEE8021X_EAPOL=y
555 NEED_DH_GROUPS=y
556 NEED_SHA256=y
557 NEED_BASE64=y
558 NEED_CRYPTO=y
559 NEED_80211_COMMON=y
560
561 ifdef CONFIG_WPS_UPNP
562 L_CFLAGS += -DCONFIG_WPS_UPNP
563 OBJS += src/wps/wps_upnp.c
564 OBJS += src/wps/wps_upnp_ssdp.c
565 OBJS += src/wps/wps_upnp_web.c
566 OBJS += src/wps/wps_upnp_event.c
567 OBJS += src/wps/httpread.c
568 endif
569
570 endif
571
572 ifdef CONFIG_EAP_IKEV2
573 # EAP-IKEv2
574 ifeq ($(CONFIG_EAP_IKEV2), dyn)
575 L_CFLAGS += -DEAP_IKEV2_DYNAMIC
576 EAPDYN += src/eap_peer/eap_ikev2.so src/eap_peer/ikev2.c
577 EAPDYN += src/eap_common/eap_ikev2_common.c src/eap_common/ikev2_common.c
578 else
579 L_CFLAGS += -DEAP_IKEV2
580 OBJS += src/eap_peer/eap_ikev2.c src/eap_peer/ikev2.c
581 OBJS += src/eap_common/eap_ikev2_common.c src/eap_common/ikev2_common.c
582 OBJS_h += src/eap_server/eap_ikev2.c
583 OBJS_h += src/eap_server/ikev2.c
584 endif
585 CONFIG_IEEE8021X_EAPOL=y
586 NEED_DH_GROUPS=y
587 NEED_DH_GROUPS_ALL=y
588 endif
589
590 ifdef CONFIG_EAP_VENDOR_TEST
591 ifeq ($(CONFIG_EAP_VENDOR_TEST), dyn)
592 L_CFLAGS += -DEAP_VENDOR_TEST_DYNAMIC
593 EAPDYN += src/eap_peer/eap_vendor_test.so
594 else
595 L_CFLAGS += -DEAP_VENDOR_TEST
596 OBJS += src/eap_peer/eap_vendor_test.c
597 OBJS_h += src/eap_server/eap_vendor_test.c
598 endif
599 CONFIG_IEEE8021X_EAPOL=y
600 endif
601
602 ifdef CONFIG_EAP_TNC
603 # EAP-TNC
604 L_CFLAGS += -DEAP_TNC
605 OBJS += src/eap_peer/eap_tnc.c
606 OBJS += src/eap_peer/tncc.c
607 NEED_BASE64=y
608 ifndef CONFIG_NATIVE_WINDOWS
609 ifndef CONFIG_DRIVER_BSD
610 LIBS += -ldl
611 endif
612 endif
613 endif
614
615 ifdef CONFIG_IEEE8021X_EAPOL
616 # IEEE 802.1X/EAPOL state machines (e.g., for RADIUS authentication)
617 L_CFLAGS += -DIEEE8021X_EAPOL
618 OBJS += src/eapol_supp/eapol_supp_sm.c src/eap_peer/eap.c src/eap_common/eap_common.c src/eap_peer/eap_methods.c
619 ifdef CONFIG_DYNAMIC_EAP_METHODS
620 L_CFLAGS += -DCONFIG_DYNAMIC_EAP_METHODS
621 LIBS += -ldl -rdynamic
622 endif
623 endif
624
625 ifdef CONFIG_EAP_SERVER
626 L_CFLAGS += -DEAP_SERVER
627 OBJS_h += src/eap_server/eap.c
628 OBJS_h += src/eap_server/eap_identity.c
629 OBJS_h += src/eap_server/eap_methods.c
630 endif
631
632 ifdef CONFIG_RADIUS_CLIENT
633 OBJS_h += src/utils/ip_addr.c
634 OBJS_h += src/radius/radius.c
635 OBJS_h += src/radius/radius_client.c
636 endif
637
638 ifdef CONFIG_AUTHENTICATOR
639 OBJS_h += hostapd/eapol_sm.c
640 OBJS_h += hostapd/ieee802_1x.c
641 endif
642
643 ifdef CONFIG_WPA_AUTHENTICATOR
644 OBJS_h += hostapd/wpa.c
645 OBJS_h += hostapd/wpa_auth_ie.c
646 ifdef CONFIG_IEEE80211R
647 OBJS_h += hostapd/wpa_ft.c
648 endif
649 ifdef CONFIG_PEERKEY
650 OBJS_h += hostapd/peerkey.c
651 endif
652 endif
653
654 ifdef CONFIG_PCSC
655 # PC/SC interface for smartcards (USIM, GSM SIM)
656 L_CFLAGS += -DPCSC_FUNCS -I/usr/include/PCSC
657 OBJS += src/utils/pcsc_funcs.c
658 # -lpthread may not be needed depending on how pcsc-lite was configured
659 ifdef CONFIG_NATIVE_WINDOWS
660 #Once MinGW gets support for WinScard, -lwinscard could be used instead of the
661 #dynamic symbol loading that is now used in pcsc_funcs.c
662 #LIBS += -lwinscard
663 else
664 LIBS += -lpcsclite -lpthread
665 endif
666 endif
667
668 ifdef CONFIG_SIM_SIMULATOR
669 L_CFLAGS += -DCONFIG_SIM_SIMULATOR
670 NEED_MILENAGE=y
671 endif
672
673 ifdef CONFIG_USIM_SIMULATOR
674 L_CFLAGS += -DCONFIG_USIM_SIMULATOR
675 NEED_MILENAGE=y
676 endif
677
678 ifdef NEED_MILENAGE
679 OBJS += src/hlr_auc_gw/milenage.c
680 endif
681
682 ifndef CONFIG_TLS
683 CONFIG_TLS=openssl
684 endif
685
686 ifeq ($(CONFIG_TLS), internal)
687 ifndef CONFIG_CRYPTO
688 CONFIG_CRYPTO=internal
689 endif
690 endif
691 ifeq ($(CONFIG_CRYPTO), libtomcrypt)
692 L_CFLAGS += -DCONFIG_INTERNAL_X509
693 endif
694 ifeq ($(CONFIG_CRYPTO), internal)
695 L_CFLAGS += -DCONFIG_INTERNAL_X509
696 endif
697
698
699 ifdef TLS_FUNCS
700 # Shared TLS functions (needed for EAP_TLS, EAP_PEAP, EAP_TTLS, and EAP_FAST)
701 L_CFLAGS += -DEAP_TLS_FUNCS
702 OBJS += src/eap_peer/eap_tls_common.c
703 OBJS_h += src/eap_server/eap_tls_common.c
704 NEED_TLS_PRF=y
705 ifeq ($(CONFIG_TLS), openssl)
706 L_CFLAGS += -DEAP_TLS_OPENSSL
707 OBJS += src/crypto/tls_openssl.c
708 LIBS += -lssl -lcrypto
709 LIBS_p += -lcrypto
710 endif
711 ifeq ($(CONFIG_TLS), gnutls)
712 OBJS += src/crypto/tls_gnutls.c
713 LIBS += -lgnutls -lgcrypt -lgpg-error
714 LIBS_p += -lgcrypt
715 ifdef CONFIG_GNUTLS_EXTRA
716 L_CFLAGS += -DCONFIG_GNUTLS_EXTRA
717 LIBS += -lgnutls-extra
718 endif
719 endif
720 ifeq ($(CONFIG_TLS), schannel)
721 OBJS += src/crypto/tls_schannel.c
722 endif
723 ifeq ($(CONFIG_TLS), internal)
724 OBJS += src/crypto/tls_internal.c
725 OBJS += src/tls/tlsv1_common.c src/tls/tlsv1_record.c
726 OBJS += src/tls/tlsv1_cred.c src/tls/tlsv1_client.c
727 OBJS += src/tls/tlsv1_client_write.c src/tls/tlsv1_client_read.c
728 OBJS += src/tls/asn1.c src/tls/rsa.c src/tls/x509v3.c
729 OBJS_p += src/tls/asn1.c src/tls/rsa.c
730 OBJS_p += src/crypto/rc4.c src/crypto/aes_wrap.c src/crypto/aes.c
731 NEED_BASE64=y
732 NEED_TLS_PRF=y
733 L_CFLAGS += -DCONFIG_TLS_INTERNAL
734 L_CFLAGS += -DCONFIG_TLS_INTERNAL_CLIENT
735 ifeq ($(CONFIG_CRYPTO), internal)
736 endif
737 ifeq ($(CONFIG_CRYPTO), libtomcrypt)
738 LIBS += -ltomcrypt -ltfm
739 LIBS_p += -ltomcrypt -ltfm
740 endif
741 endif
742 ifeq ($(CONFIG_TLS), none)
743 OBJS += src/crypto/tls_none.c
744 L_CFLAGS += -DEAP_TLS_NONE
745 CONFIG_INTERNAL_AES=y
746 CONFIG_INTERNAL_SHA1=y
747 CONFIG_INTERNAL_MD5=y
748 CONFIG_INTERNAL_SHA256=y
749 endif
750 ifdef CONFIG_SMARTCARD
751 ifndef CONFIG_NATIVE_WINDOWS
752 ifneq ($(CONFIG_L2_PACKET), freebsd)
753 LIBS += -ldl
754 endif
755 endif
756 endif
757 NEED_CRYPTO=y
758 else
759 OBJS += src/crypto/tls_none.c
760 endif
761
762 ifdef CONFIG_PKCS12
763 L_CFLAGS += -DPKCS12_FUNCS
764 endif
765
766 ifdef CONFIG_SMARTCARD
767 L_CFLAGS += -DCONFIG_SMARTCARD
768 endif
769
770 ifdef MS_FUNCS
771 OBJS += src/crypto/ms_funcs.c
772 NEED_CRYPTO=y
773 endif
774
775 ifdef CHAP
776 OBJS += src/eap_common/chap.c
777 endif
778
779 ifdef NEED_CRYPTO
780 ifndef TLS_FUNCS
781 ifeq ($(CONFIG_TLS), openssl)
782 LIBS += -lcrypto
783 LIBS_p += -lcrypto
784 endif
785 ifeq ($(CONFIG_TLS), gnutls)
786 LIBS += -lgcrypt
787 LIBS_p += -lgcrypt
788 endif
789 ifeq ($(CONFIG_TLS), schannel)
790 endif
791 ifeq ($(CONFIG_TLS), internal)
792 ifeq ($(CONFIG_CRYPTO), libtomcrypt)
793 LIBS += -ltomcrypt -ltfm
794 LIBS_p += -ltomcrypt -ltfm
795 endif
796 endif
797 endif
798 ifeq ($(CONFIG_TLS), openssl)
799 OBJS += src/crypto/crypto_openssl.c
800 OBJS_p += src/crypto/crypto_openssl.c
801 CONFIG_INTERNAL_SHA256=y
802 endif
803 ifeq ($(CONFIG_TLS), gnutls)
804 OBJS += src/crypto/crypto_gnutls.c
805 OBJS_p += src/crypto/crypto_gnutls.c
806 CONFIG_INTERNAL_SHA256=y
807 endif
808 ifeq ($(CONFIG_TLS), schannel)
809 OBJS += src/crypto/crypto_cryptoapi.c
810 OBJS_p += src/crypto/crypto_cryptoapi.c
811 CONFIG_INTERNAL_SHA256=y
812 endif
813 ifeq ($(CONFIG_TLS), internal)
814 ifeq ($(CONFIG_CRYPTO), libtomcrypt)
815 OBJS += src/crypto/crypto_libtomcrypt.c
816 OBJS_p += src/crypto/crypto_libtomcrypt.c
817 CONFIG_INTERNAL_SHA256=y
818 endif
819 ifeq ($(CONFIG_CRYPTO), internal)
820 OBJS += src/crypto/crypto_internal.c src/tls/bignum.c
821 OBJS_p += src/crypto/crypto_internal.c src/tls/bignum.c
822 L_CFLAGS += -DCONFIG_CRYPTO_INTERNAL
823 ifdef CONFIG_INTERNAL_LIBTOMMATH
824 L_CFLAGS += -DCONFIG_INTERNAL_LIBTOMMATH
825 ifdef CONFIG_INTERNAL_LIBTOMMATH_FAST
826 L_CFLAGS += -DLTM_FAST
827 endif
828 else
829 LIBS += -ltommath
830 LIBS_p += -ltommath
831 endif
832 CONFIG_INTERNAL_AES=y
833 CONFIG_INTERNAL_DES=y
834 CONFIG_INTERNAL_SHA1=y
835 CONFIG_INTERNAL_MD4=y
836 CONFIG_INTERNAL_MD5=y
837 CONFIG_INTERNAL_SHA256=y
838 endif
839 ifeq ($(CONFIG_CRYPTO), cryptoapi)
840 OBJS += src/crypto/crypto_cryptoapi.c
841 OBJS_p += src/crypto/crypto_cryptoapi.c
842 L_CFLAGS += -DCONFIG_CRYPTO_CRYPTOAPI
843 CONFIG_INTERNAL_SHA256=y
844 endif
845 endif
846 ifeq ($(CONFIG_TLS), none)
847 OBJS += src/crypto/crypto_none.c
848 OBJS_p += src/crypto/crypto_none.c
849 CONFIG_INTERNAL_SHA256=y
850 endif
851 else
852 CONFIG_INTERNAL_AES=y
853 CONFIG_INTERNAL_SHA1=y
854 CONFIG_INTERNAL_MD5=y
855 endif
856
857 ifdef CONFIG_INTERNAL_AES
858 L_CFLAGS += -DINTERNAL_AES
859 endif
860 ifdef CONFIG_INTERNAL_SHA1
861 L_CFLAGS += -DINTERNAL_SHA1
862 endif
863 ifdef CONFIG_INTERNAL_SHA256
864 L_CFLAGS += -DINTERNAL_SHA256
865 endif
866 ifdef CONFIG_INTERNAL_MD5
867 L_CFLAGS += -DINTERNAL_MD5
868 endif
869 ifdef CONFIG_INTERNAL_MD4
870 L_CFLAGS += -DINTERNAL_MD4
871 endif
872 ifdef CONFIG_INTERNAL_DES
873 L_CFLAGS += -DINTERNAL_DES
874 endif
875
876 ifdef CONFIG_IEEE80211R
877 NEED_SHA256=y
878 endif
879
880 ifdef CONFIG_IEEE80211W
881 L_CFLAGS += -DCONFIG_IEEE80211W
882 NEED_SHA256=y
883 endif
884
885 ifdef NEED_SHA256
886 OBJS += src/crypto/sha256.c
887 L_CFLAGS += -DNEED_SHA256
888 endif
889
890 ifdef CONFIG_WIRELESS_EXTENSION
891 OBJS_d += src/drivers/driver_wext.c
892 endif
893
894 ifdef CONFIG_CTRL_IFACE
895 ifeq ($(CONFIG_CTRL_IFACE), y)
896 ifdef CONFIG_NATIVE_WINDOWS
897 CONFIG_CTRL_IFACE=named_pipe
898 else
899 CONFIG_CTRL_IFACE=unix
900 endif
901 endif
902 L_CFLAGS += -DCONFIG_CTRL_IFACE
903 ifeq ($(CONFIG_CTRL_IFACE), unix)
904 L_CFLAGS += -DCONFIG_CTRL_IFACE_UNIX
905 endif
906 ifeq ($(CONFIG_CTRL_IFACE), udp)
907 L_CFLAGS += -DCONFIG_CTRL_IFACE_UDP
908 endif
909 ifeq ($(CONFIG_CTRL_IFACE), named_pipe)
910 L_CFLAGS += -DCONFIG_CTRL_IFACE_NAMED_PIPE
911 endif
912 OBJS += ctrl_iface.c ctrl_iface_$(CONFIG_CTRL_IFACE).c
913 endif
914
915 ifdef CONFIG_CTRL_IFACE_DBUS
916 L_CFLAGS += -DCONFIG_CTRL_IFACE_DBUS -DDBUS_API_SUBJECT_TO_CHANGE
917 OBJS += ctrl_iface_dbus.c ctrl_iface_dbus_handlers.c dbus_dict_helpers.c
918 ifndef DBUS_LIBS
919 DBUS_LIBS := $(shell pkg-config --libs dbus-1)
920 endif
921 LIBS += $(DBUS_LIBS)
922 ifndef DBUS_INCLUDE
923 DBUS_INCLUDE := $(shell pkg-config --cflags dbus-1)
924 endif
925 dbus_version=$(subst ., ,$(shell pkg-config --modversion dbus-1))
926 DBUS_VERSION_MAJOR=$(word 1,$(dbus_version))
927 DBUS_VERSION_MINOR=$(word 2,$(dbus_version))
928 ifeq ($(DBUS_VERSION_MAJOR),)
929 DBUS_VERSION_MAJOR=0
930 endif
931 ifeq ($(DBUS_VERSION_MINOR),)
932 DBUS_VERSION_MINOR=0
933 endif
934 DBUS_INCLUDE += -DDBUS_VERSION_MAJOR=$(DBUS_VERSION_MAJOR)
935 DBUS_INCLUDE += -DDBUS_VERSION_MINOR=$(DBUS_VERSION_MINOR)
936 L_CFLAGS += $(DBUS_INCLUDE)
937 endif
938
939 ifdef CONFIG_READLINE
940 L_CFLAGS += -DCONFIG_READLINE
941 LIBS_c += -lncurses -lreadline
942 endif
943
944 ifdef CONFIG_NATIVE_WINDOWS
945 L_CFLAGS += -DCONFIG_NATIVE_WINDOWS
946 LIBS += -lws2_32 -lgdi32 -lcrypt32
947 LIBS_c += -lws2_32
948 LIBS_p += -lws2_32 -lgdi32
949 ifeq ($(CONFIG_CRYPTO), cryptoapi)
950 LIBS_p += -lcrypt32
951 endif
952 endif
953
954 ifdef CONFIG_NO_STDOUT_DEBUG
955 L_CFLAGS += -DCONFIG_NO_STDOUT_DEBUG
956 ifndef CONFIG_CTRL_IFACE
957 L_CFLAGS += -DCONFIG_NO_WPA_MSG
958 endif
959 endif
960
961 ifdef CONFIG_IPV6
962 # for eapol_test only
963 L_CFLAGS += -DCONFIG_IPV6
964 endif
965
966 ifdef CONFIG_PEERKEY
967 L_CFLAGS += -DCONFIG_PEERKEY
968 endif
969
970 ifdef CONFIG_IEEE80211R
971 L_CFLAGS += -DCONFIG_IEEE80211R
972 OBJS += src/rsn_supp/wpa_ft.c
973 endif
974
975 ifndef CONFIG_NO_WPA
976 OBJS += src/rsn_supp/wpa.c
977 OBJS += src/rsn_supp/preauth.c
978 OBJS += src/rsn_supp/pmksa_cache.c
979 OBJS += src/rsn_supp/peerkey.c
980 OBJS += src/rsn_supp/wpa_ie.c
981 OBJS += src/common/wpa_common.c
982 NEED_AES=y
983 else
984 L_CFLAGS += -DCONFIG_NO_WPA -DCONFIG_NO_WPA2
985 endif
986
987 ifdef CONFIG_NO_WPA2
988 L_CFLAGS += -DCONFIG_NO_WPA2
989 endif
990
991 ifdef CONFIG_NO_WPA_PASSPHRASE
992 L_CFLAGS += -DCONFIG_NO_PBKDF2
993 endif
994
995 ifdef CONFIG_NO_AES_EXTRAS
996 L_CFLAGS += -DCONFIG_NO_AES_WRAP
997 L_CFLAGS += -DCONFIG_NO_AES_CTR -DCONFIG_NO_AES_OMAC1
998 L_CFLAGS += -DCONFIG_NO_AES_EAX -DCONFIG_NO_AES_CBC
999 L_CFLAGS += -DCONFIG_NO_AES_ENCRYPT
1000 L_CFLAGS += -DCONFIG_NO_AES_ENCRYPT_BLOCK
1001 endif
1002
1003 ifdef NEED_AES
1004 OBJS += src/crypto/aes_wrap.c src/crypto/aes.c
1005 endif
1006
1007 ifdef NEED_DH_GROUPS
1008 OBJS += src/crypto/dh_groups.c
1009 ifdef NEED_DH_GROUPS_ALL
1010 L_CFLAGS += -DALL_DH_GROUPS
1011 endif
1012 endif
1013
1014 ifndef NEED_FIPS186_2_PRF
1015 L_CFLAGS += -DCONFIG_NO_FIPS186_2_PRF
1016 endif
1017
1018 ifndef NEED_T_PRF
1019 L_CFLAGS += -DCONFIG_NO_T_PRF
1020 endif
1021
1022 ifndef NEED_TLS_PRF
1023 L_CFLAGS += -DCONFIG_NO_TLS_PRF
1024 endif
1025
1026 ifdef NEED_BASE64
1027 OBJS += src/utils/base64.c
1028 endif
1029
1030 ifdef CONFIG_CLIENT_MLME
1031 OBJS += mlme.c src/common/ieee802_11_common.c
1032 L_CFLAGS += -DCONFIG_CLIENT_MLME
1033 endif
1034
1035 ifndef CONFIG_MAIN
1036 CONFIG_MAIN=main
1037 endif
1038
1039 ifdef CONFIG_DEBUG_FILE
1040 L_CFLAGS += -DCONFIG_DEBUG_FILE
1041 endif
1042
1043 ifdef CONFIG_ANDROID_LOG
1044 L_CFLAGS += -DCONFIG_ANDROID_LOG
1045 endif
1046
1047 ifdef CONFIG_DELAYED_MIC_ERROR_REPORT
1048 L_CFLAGS += -DCONFIG_DELAYED_MIC_ERROR_REPORT
1049 endif
1050
1051 OBJS += src/drivers/scan_helpers.c
1052
1053 OBJS_wpa_rm := ctrl_iface.c mlme.c ctrl_iface_unix.c
1054 OBJS_wpa := $(filter-out $(OBJS_wpa_rm),$(OBJS)) $(OBJS_h) tests/test_wpa.c
1055 ifdef CONFIG_AUTHENTICATOR
1056 OBJS_wpa += tests/link_test.c
1057 endif
1058 OBJS_wpa += $(OBJS_l2)
1059 OBJS += wpa_supplicant.c events.c blacklist.c wpas_glue.c scan.c
1060 OBJS_t := $(OBJS) $(OBJS_l2) eapol_test.c src/radius/radius.c src/radius/radius_client.c
1061 OBJS_t += src/utils/ip_addr.c
1062 OBJS_t2 := $(OBJS) $(OBJS_l2) preauth_test.c
1063 OBJS += $(CONFIG_MAIN).c
1064
1065 ifdef CONFIG_PRIVSEP
1066 OBJS_priv += $(OBJS_d) src/drivers/drivers.c src/drivers/scan_helpers.c
1067 OBJS_priv += $(OBJS_l2)
1068 OBJS_priv += src/utils/os_$(CONFIG_OS).c
1069 OBJS_priv += src/utils/$(CONFIG_ELOOP).c
1070 OBJS_priv += src/utils/common.c
1071 OBJS_priv += src/utils/wpa_debug.c
1072 OBJS_priv += src/utils/wpabuf.c
1073 OBJS_priv += wpa_priv.c
1074 ifdef CONFIG_DRIVER_TEST
1075 OBJS_priv += src/crypto/sha1.c
1076 OBJS_priv += src/crypto/md5.c
1077 ifeq ($(CONFIG_TLS), openssl)
1078 OBJS_priv += src/crypto/crypto_openssl.c
1079 endif
1080 ifeq ($(CONFIG_TLS), gnutls)
1081 OBJS_priv += src/crypto/crypto_gnutls.c
1082 endif
1083 ifeq ($(CONFIG_TLS), internal)
1084 ifeq ($(CONFIG_CRYPTO), libtomcrypt)
1085 OBJS_priv += src/crypto/crypto_libtomcrypt.c
1086 else
1087 OBJS_priv += src/crypto/crypto_internal.c
1088 endif
1089 endif
1090 endif # CONFIG_DRIVER_TEST
1091 OBJS += src/l2_packet/l2_packet_privsep.c
1092 OBJS += src/drivers/driver_privsep.c
1093 EXTRA_progs += wpa_priv
1094 else
1095 OBJS += $(OBJS_d) src/drivers/drivers.c
1096 OBJS += $(OBJS_l2)
1097 endif
1098
1099 ifdef CONFIG_NDIS_EVENTS_INTEGRATED
1100 L_CFLAGS += -DCONFIG_NDIS_EVENTS_INTEGRATED
1101 OBJS += src/drivers/ndis_events.c
1102 EXTRALIBS += -loleaut32 -lole32 -luuid
1103 ifdef PLATFORMSDKLIB
1104 EXTRALIBS += $(PLATFORMSDKLIB)/WbemUuid.Lib
1105 else
1106 EXTRALIBS += WbemUuid.Lib
1107 endif
1108 endif
1109
1110 ifndef LDO
1111 LDO=$(CC)
1112 endif
1113
1114 ifeq ($(WPA_BUILD_SUPPLICANT),true)
1115
1116 ########################
1117
1118 include $(CLEAR_VARS)
1119 LOCAL_MODULE := wpa_cli
1120 LOCAL_MODULE_TAGS := debug
1121 LOCAL_SHARED_LIBRARIES := libc libcutils
1122 LOCAL_CFLAGS := $(L_CFLAGS)
1123 LOCAL_SRC_FILES := $(OBJS_c)
1124 LOCAL_C_INCLUDES := $(INCLUDES)
1125 include $(BUILD_EXECUTABLE)
1126
1127 ########################
1128 include $(CLEAR_VARS)
1129 LOCAL_MODULE := wpa_supplicant
1130 ifdef CONFIG_DRIVER_CUSTOM
1131 LOCAL_STATIC_LIBRARIES := libCustomWifi
1132 endif
1133 ifneq ($(BOARD_WPA_SUPPLICANT_PRIVATE_LIB),)
1134 LOCAL_STATIC_LIBRARIES += $(BOARD_WPA_SUPPLICANT_PRIVATE_LIB)
1135 endif
1136 LOCAL_SHARED_LIBRARIES := libc libcutils libcrypto libssl
1137 LOCAL_CFLAGS := $(L_CFLAGS)
1138 LOCAL_SRC_FILES := $(OBJS)
1139 LOCAL_C_INCLUDES := $(INCLUDES)
1140 include $(BUILD_EXECUTABLE)
1141
1142 ########################
1143 #
1144 #include $(CLEAR_VARS)
1145 #LOCAL_MODULE := eapol_test
1146 #ifdef CONFIG_DRIVER_CUSTOM
1147 #LOCAL_STATIC_LIBRARIES := libCustomWifi
1148 #endif
1149 #LOCAL_SHARED_LIBRARIES := libc libcrypto libssl
1150 #LOCAL_CFLAGS := $(L_CFLAGS)
1151 #LOCAL_SRC_FILES := $(OBJS_t)
1152 #LOCAL_C_INCLUDES := $(INCLUDES)
1153 #include $(BUILD_EXECUTABLE)
1154 #
1155 ########################
1156 #
1157 #local_target_dir := $(TARGET_OUT)/etc/wifi
1158 #
1159 #include $(CLEAR_VARS)
1160 #LOCAL_MODULE := wpa_supplicant.conf
1161 #LOCAL_MODULE_TAGS := user
1162 #LOCAL_MODULE_CLASS := ETC
1163 #LOCAL_MODULE_PATH := $(local_target_dir)
1164 #LOCAL_SRC_FILES := $(LOCAL_MODULE)
1165 #include $(BUILD_PREBUILT)
1166 #
1167 ########################
1168
1169 endif # ifeq ($(WPA_BUILD_SUPPLICANT),true)
1170
1171 include $(CLEAR_VARS)
1172 LOCAL_MODULE = libwpa_client
1173 LOCAL_CFLAGS = $(L_CFLAGS)
1174 LOCAL_SRC_FILES = src/common/wpa_ctrl.c src/utils/os_$(CONFIG_OS).c
1175 LOCAL_C_INCLUDES = $(INCLUDES)
1176 LOCAL_SHARED_LIBRARIES := libcutils
1177 LOCAL_COPY_HEADERS_TO := libwpa_client
1178 LOCAL_COPY_HEADERS := src/common/wpa_ctrl.h
1179 include $(BUILD_SHARED_LIBRARY)