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 ifndef WPA_SUPPLICANT_VERSION 17 WPA_SUPPLICANT_VERSION := VER_0_5_X 18 endif 19 20 ifeq ($(WPA_SUPPLICANT_VERSION),VER_0_5_X) 21 22 LOCAL_PATH := $(call my-dir) 23 24 WPA_BUILD_SUPPLICANT := false 25 ifneq ($(TARGET_SIMULATOR),true) 26 ifneq ($(BOARD_WPA_SUPPLICANT_DRIVER),) 27 WPA_BUILD_SUPPLICANT := true 28 CONFIG_DRIVER_$(BOARD_WPA_SUPPLICANT_DRIVER) = y 29 endif 30 endif 31 32 include $(LOCAL_PATH)/.config 33 34 # To force sizeof(enum) = 4 35 ifeq ($(TARGET_ARCH),arm) 36 L_CFLAGS += -mabi=aapcs-linux 37 endif 38 39 # To ignore possible wrong network configurations 40 L_CFLAGS += -DWPA_IGNORE_CONFIG_ERRORS 41 42 # To allow non-ASCII characters in SSID 43 L_CFLAGS += -DWPA_UNICODE_SSID 44 45 # OpenSSL is configured without engines on Android 46 L_CFLAGS += -DOPENSSL_NO_ENGINE 47 48 INCLUDES = external/openssl/include frameworks/base/cmds/keystore 49 50 OBJS = config.c common.c md5.c md4.c rc4.c sha1.c des.c 51 OBJS_p = wpa_passphrase.c sha1.c md5.c md4.c common.c des.c 52 OBJS_c = wpa_cli.c wpa_ctrl.c 53 54 ifndef CONFIG_OS 55 ifdef CONFIG_NATIVE_WINDOWS 56 CONFIG_OS=win32 57 else 58 CONFIG_OS=unix 59 endif 60 endif 61 62 OBJS += os_$(CONFIG_OS).c 63 OBJS_p += os_$(CONFIG_OS).c 64 OBJS_c += os_$(CONFIG_OS).c 65 66 ifndef CONFIG_ELOOP 67 CONFIG_ELOOP=eloop 68 endif 69 OBJS += $(CONFIG_ELOOP).c 70 71 72 ifdef CONFIG_EAPOL_TEST 73 L_CFLAGS += -Werror -DEAPOL_TEST 74 endif 75 76 ifndef CONFIG_BACKEND 77 CONFIG_BACKEND=file 78 endif 79 80 ifeq ($(CONFIG_BACKEND), file) 81 OBJS += config_file.c base64.c 82 L_CFLAGS += -DCONFIG_BACKEND_FILE 83 endif 84 85 ifeq ($(CONFIG_BACKEND), winreg) 86 OBJS += config_winreg.c 87 endif 88 89 ifeq ($(CONFIG_BACKEND), none) 90 OBJS += config_none.c 91 endif 92 93 ifdef CONFIG_DRIVER_HOSTAP 94 L_CFLAGS += -DCONFIG_DRIVER_HOSTAP 95 OBJS_d += driver_hostap.c 96 CONFIG_WIRELESS_EXTENSION=y 97 endif 98 99 ifdef CONFIG_DRIVER_WEXT 100 L_CFLAGS += -DCONFIG_DRIVER_WEXT 101 CONFIG_WIRELESS_EXTENSION=y 102 endif 103 104 ifdef CONFIG_DRIVER_PRISM54 105 L_CFLAGS += -DCONFIG_DRIVER_PRISM54 106 OBJS_d += driver_prism54.c 107 CONFIG_WIRELESS_EXTENSION=y 108 endif 109 110 ifdef CONFIG_DRIVER_HERMES 111 L_CFLAGS += -DCONFIG_DRIVER_HERMES 112 OBJS_d += driver_hermes.c 113 CONFIG_WIRELESS_EXTENSION=y 114 endif 115 116 ifdef CONFIG_DRIVER_MADWIFI 117 L_CFLAGS += -DCONFIG_DRIVER_MADWIFI 118 OBJS_d += driver_madwifi.c 119 CONFIG_WIRELESS_EXTENSION=y 120 endif 121 122 ifdef CONFIG_DRIVER_ATMEL 123 L_CFLAGS += -DCONFIG_DRIVER_ATMEL 124 OBJS_d += driver_atmel.c 125 CONFIG_WIRELESS_EXTENSION=y 126 endif 127 128 ifdef CONFIG_DRIVER_NDISWRAPPER 129 L_CFLAGS += -DCONFIG_DRIVER_NDISWRAPPER 130 OBJS_d += driver_ndiswrapper.c 131 CONFIG_WIRELESS_EXTENSION=y 132 endif 133 134 ifdef CONFIG_DRIVER_BROADCOM 135 L_CFLAGS += -DCONFIG_DRIVER_BROADCOM 136 OBJS_d += driver_broadcom.c 137 endif 138 139 ifdef CONFIG_DRIVER_IPW 140 L_CFLAGS += -DCONFIG_DRIVER_IPW 141 OBJS_d += driver_ipw.c 142 CONFIG_WIRELESS_EXTENSION=y 143 endif 144 145 ifdef CONFIG_DRIVER_BSD 146 L_CFLAGS += -DCONFIG_DRIVER_BSD 147 OBJS_d += driver_bsd.c 148 ifndef CONFIG_L2_PACKET 149 CONFIG_L2_PACKET=freebsd 150 endif 151 endif 152 153 ifdef CONFIG_DRIVER_NDIS 154 L_CFLAGS += -DCONFIG_DRIVER_NDIS 155 OBJS_d += driver_ndis.c driver_ndis_.c 156 ifndef CONFIG_L2_PACKET 157 CONFIG_L2_PACKET=pcap 158 endif 159 CONFIG_WINPCAP=y 160 ifdef CONFIG_USE_NDISUIO 161 L_CFLAGS += -DCONFIG_USE_NDISUIO 162 endif 163 endif 164 165 ifdef CONFIG_DRIVER_WIRED 166 L_CFLAGS += -DCONFIG_DRIVER_WIRED 167 OBJS_d += driver_wired.c 168 endif 169 170 ifdef CONFIG_DRIVER_TEST 171 L_CFLAGS += -DCONFIG_DRIVER_TEST 172 OBJS_d += driver_test.c 173 endif 174 175 ifdef CONFIG_DRIVER_CUSTOM 176 L_CFLAGS += -DCONFIG_DRIVER_CUSTOM 177 endif 178 179 ifndef CONFIG_L2_PACKET 180 CONFIG_L2_PACKET=linux 181 endif 182 183 OBJS += l2_packet_$(CONFIG_L2_PACKET).c 184 185 ifeq ($(CONFIG_L2_PACKET), pcap) 186 ifdef CONFIG_WINPCAP 187 L_CFLAGS += -DCONFIG_WINPCAP 188 LIBS += -lwpcap -lpacket 189 LIBS_w += -lwpcap 190 else 191 LIBS += -ldnet -lpcap 192 endif 193 endif 194 195 ifeq ($(CONFIG_L2_PACKET), winpcap) 196 LIBS += -lwpcap -lpacket 197 LIBS_w += -lwpcap 198 endif 199 200 ifeq ($(CONFIG_L2_PACKET), freebsd) 201 LIBS += -lpcap 202 endif 203 204 ifdef CONFIG_EAP_TLS 205 # EAP-TLS 206 L_CFLAGS += -DEAP_TLS 207 OBJS += eap_tls.c 208 TLS_FUNCS=y 209 CONFIG_IEEE8021X_EAPOL=y 210 endif 211 212 ifdef CONFIG_EAP_PEAP 213 # EAP-PEAP 214 L_CFLAGS += -DEAP_PEAP 215 OBJS += eap_peap.c 216 TLS_FUNCS=y 217 CONFIG_IEEE8021X_EAPOL=y 218 CONFIG_EAP_TLV=y 219 endif 220 221 ifdef CONFIG_EAP_TTLS 222 # EAP-TTLS 223 L_CFLAGS += -DEAP_TTLS 224 OBJS += eap_ttls.c 225 MS_FUNCS=y 226 TLS_FUNCS=y 227 CONFIG_IEEE8021X_EAPOL=y 228 endif 229 230 ifdef CONFIG_EAP_MD5 231 # EAP-MD5 (also used by EAP-TTLS) 232 L_CFLAGS += -DEAP_MD5 233 OBJS += eap_md5.c 234 CONFIG_IEEE8021X_EAPOL=y 235 endif 236 237 # backwards compatibility for old spelling 238 ifdef CONFIG_MSCHAPV2 239 ifndef CONFIG_EAP_MSCHAPV2 240 CONFIG_EAP_MSCHAPV2=y 241 endif 242 endif 243 244 ifdef CONFIG_EAP_MSCHAPV2 245 # EAP-MSCHAPv2 (also used by EAP-PEAP) 246 L_CFLAGS += -DEAP_MSCHAPv2 247 OBJS += eap_mschapv2.c 248 MS_FUNCS=y 249 CONFIG_IEEE8021X_EAPOL=y 250 endif 251 252 ifdef CONFIG_EAP_GTC 253 # EAP-GTC (also used by EAP-PEAP) 254 L_CFLAGS += -DEAP_GTC 255 OBJS += eap_gtc.c 256 CONFIG_IEEE8021X_EAPOL=y 257 endif 258 259 ifdef CONFIG_EAP_OTP 260 # EAP-OTP 261 L_CFLAGS += -DEAP_OTP 262 OBJS += eap_otp.c 263 CONFIG_IEEE8021X_EAPOL=y 264 endif 265 266 ifdef CONFIG_EAP_SIM 267 # EAP-SIM 268 L_CFLAGS += -DEAP_SIM 269 OBJS += eap_sim.c 270 CONFIG_IEEE8021X_EAPOL=y 271 CONFIG_EAP_SIM_COMMON=y 272 endif 273 274 ifdef CONFIG_EAP_LEAP 275 # EAP-LEAP 276 L_CFLAGS += -DEAP_LEAP 277 OBJS += eap_leap.c 278 MS_FUNCS=y 279 CONFIG_IEEE8021X_EAPOL=y 280 endif 281 282 ifdef CONFIG_EAP_PSK 283 # EAP-PSK 284 L_CFLAGS += -DEAP_PSK 285 OBJS += eap_psk.c eap_psk_common.c 286 CONFIG_IEEE8021X_EAPOL=y 287 NEED_AES=y 288 endif 289 290 ifdef CONFIG_EAP_AKA 291 # EAP-AKA 292 L_CFLAGS += -DEAP_AKA 293 OBJS += eap_aka.c 294 CONFIG_IEEE8021X_EAPOL=y 295 CONFIG_EAP_SIM_COMMON=y 296 endif 297 298 ifdef CONFIG_EAP_SIM_COMMON 299 OBJS += eap_sim_common.c 300 NEED_AES=y 301 endif 302 303 ifdef CONFIG_EAP_TLV 304 # EAP-TLV 305 L_CFLAGS += -DEAP_TLV 306 OBJS += eap_tlv.c 307 endif 308 309 ifdef CONFIG_EAP_FAST 310 # EAP-FAST 311 L_CFLAGS += -DEAP_FAST 312 OBJS += eap_fast.c 313 TLS_FUNCS=y 314 endif 315 316 ifdef CONFIG_EAP_PAX 317 # EAP-PAX 318 L_CFLAGS += -DEAP_PAX 319 OBJS += eap_pax.c eap_pax_common.c 320 CONFIG_IEEE8021X_EAPOL=y 321 endif 322 323 ifdef CONFIG_EAP_SAKE 324 # EAP-SAKE 325 L_CFLAGS += -DEAP_SAKE 326 OBJS += eap_sake.c eap_sake_common.c 327 CONFIG_IEEE8021X_EAPOL=y 328 endif 329 330 ifdef CONFIG_EAP_GPSK 331 # EAP-GPSK 332 L_CFLAGS += -DEAP_GPSK 333 OBJS += eap_gpsk.c eap_gpsk_common.c 334 CONFIG_IEEE8021X_EAPOL=y 335 ifdef CONFIG_EAP_GPSK_SHA256 336 L_CFLAGS += -DEAP_GPSK_SHA256 337 NEED_SHA256=y 338 endif 339 endif 340 ifdef CONFIG_EAP_VENDOR_TEST 341 L_CFLAGS += -DEAP_VENDOR_TEST 342 OBJS += eap_vendor_test.c 343 CONFIG_IEEE8021X_EAPOL=y 344 endif 345 346 ifdef CONFIG_IEEE8021X_EAPOL 347 # IEEE 802.1X/EAPOL state machines (e.g., for RADIUS authentication) 348 L_CFLAGS += -DIEEE8021X_EAPOL 349 OBJS += eapol_sm.c eap.c eap_methods.c 350 endif 351 352 ifdef CONFIG_PCSC 353 # PC/SC interface for smartcards (USIM, GSM SIM) 354 L_CFLAGS += -DPCSC_FUNCS -I/usr/include/PCSC 355 OBJS += pcsc_funcs.c 356 # -lpthread may not be needed depending on how pcsc-lite was configured 357 ifdef CONFIG_NATIVE_WINDOWS 358 #Once MinGW gets support for WinScard, -lwinscard could be used instead of the 359 #dynamic symbol loading that is now used in pcsc_funcs.c 360 #LIBS += -lwinscard 361 else 362 LIBS += -lpcsclite -lpthread 363 endif 364 endif 365 366 ifndef CONFIG_TLS 367 CONFIG_TLS=openssl 368 # CONFIG_TLS=internal 369 endif 370 371 ifeq ($(CONFIG_TLS), internal) 372 ifndef CONFIG_CRYPTO 373 CONFIG_CRYPTO=internal 374 endif 375 endif 376 ifeq ($(CONFIG_CRYPTO), libtomcrypt) 377 L_CFLAGS += -DCONFIG_INTERNAL_X509 378 endif 379 ifeq ($(CONFIG_CRYPTO), internal) 380 L_CFLAGS += -DCONFIG_INTERNAL_X509 381 endif 382 383 384 ifdef TLS_FUNCS 385 # Shared TLS functions (needed for EAP_TLS, EAP_PEAP, EAP_TTLS, and EAP_FAST) 386 L_CFLAGS += -DEAP_TLS_FUNCS 387 OBJS += eap_tls_common.c 388 ifeq ($(CONFIG_TLS), openssl) 389 L_CFLAGS += -DEAP_TLS_OPENSSL 390 OBJS += tls_openssl.c 391 LIBS += -lssl -lcrypto 392 LIBS_p += -lcrypto 393 endif 394 ifeq ($(CONFIG_TLS), gnutls) 395 OBJS += tls_gnutls.c 396 LIBS += -lgnutls -lgcrypt -lgpg-error 397 LIBS_p += -lgcrypt 398 ifdef CONFIG_GNUTLS_EXTRA 399 L_CFLAGS += -DCONFIG_GNUTLS_EXTRA 400 LIBS += -lgnutls-extra 401 endif 402 endif 403 ifeq ($(CONFIG_TLS), schannel) 404 OBJS += tls_schannel.c 405 endif 406 ifeq ($(CONFIG_TLS), internal) 407 OBJS += tls_internal.c tlsv1_common.c tlsv1_client.c asn1.c x509v3.c 408 OBJS_p += asn1.c rc4.c aes_wrap.c 409 ifneq ($(CONFIG_BACKEND), file) 410 OBJS += base64.c 411 endif 412 L_CFLAGS += -DCONFIG_TLS_INTERNAL 413 ifeq ($(CONFIG_CRYPTO), internal) 414 ifdef CONFIG_INTERNAL_LIBTOMMATH 415 L_CFLAGS += -DCONFIG_INTERNAL_LIBTOMMATH 416 else 417 LIBS += -ltommath 418 LIBS_p += -ltommath 419 endif 420 endif 421 ifeq ($(CONFIG_CRYPTO), libtomcrypt) 422 LIBS += -ltomcrypt -ltfm 423 LIBS_p += -ltomcrypt -ltfm 424 endif 425 endif 426 ifeq ($(CONFIG_TLS), none) 427 OBJS += tls_none.c 428 L_CFLAGS += -DEAP_TLS_NONE 429 CONFIG_INTERNAL_AES=y 430 CONFIG_INTERNAL_SHA1=y 431 CONFIG_INTERNAL_MD5=y 432 CONFIG_INTERNAL_SHA256=y 433 endif 434 ifdef CONFIG_SMARTCARD 435 ifndef CONFIG_NATIVE_WINDOWS 436 ifneq ($(CONFIG_L2_PACKET), freebsd) 437 LIBS += -ldl 438 endif 439 endif 440 endif 441 NEED_CRYPTO=y 442 else 443 OBJS += tls_none.c 444 endif 445 446 ifdef CONFIG_PKCS12 447 L_CFLAGS += -DPKCS12_FUNCS 448 endif 449 450 ifdef CONFIG_SMARTCARD 451 L_CFLAGS += -DCONFIG_SMARTCARD 452 endif 453 454 ifdef MS_FUNCS 455 OBJS += ms_funcs.c 456 NEED_CRYPTO=y 457 endif 458 459 ifdef NEED_CRYPTO 460 ifndef TLS_FUNCS 461 ifeq ($(CONFIG_TLS), openssl) 462 LIBS += -lcrypto 463 LIBS_p += -lcrypto 464 endif 465 ifeq ($(CONFIG_TLS), gnutls) 466 LIBS += -lgcrypt 467 LIBS_p += -lgcrypt 468 endif 469 ifeq ($(CONFIG_TLS), schannel) 470 endif 471 ifeq ($(CONFIG_TLS), internal) 472 ifeq ($(CONFIG_CRYPTO), libtomcrypt) 473 LIBS += -ltomcrypt -ltfm 474 LIBS_p += -ltomcrypt -ltfm 475 endif 476 endif 477 endif 478 ifeq ($(CONFIG_TLS), openssl) 479 OBJS += crypto.c 480 OBJS_p += crypto.c 481 CONFIG_INTERNAL_SHA256=y 482 endif 483 ifeq ($(CONFIG_TLS), gnutls) 484 OBJS += crypto_gnutls.c 485 OBJS_p += crypto_gnutls.c 486 CONFIG_INTERNAL_SHA256=y 487 endif 488 ifeq ($(CONFIG_TLS), schannel) 489 OBJS += crypto_cryptoapi.c 490 OBJS_p += crypto_cryptoapi.c 491 CONFIG_INTERNAL_SHA256=y 492 endif 493 ifeq ($(CONFIG_TLS), internal) 494 ifeq ($(CONFIG_CRYPTO), libtomcrypt) 495 OBJS += crypto_libtomcrypt.c 496 OBJS_p += crypto_libtomcrypt.c 497 CONFIG_INTERNAL_SHA256=y 498 endif 499 ifeq ($(CONFIG_CRYPTO), internal) 500 OBJS += crypto_internal.c rsa.c bignum.c 501 OBJS_p += crypto_internal.c rsa.c bignum.c 502 L_CFLAGS += -DCONFIG_CRYPTO_INTERNAL 503 CONFIG_INTERNAL_AES=y 504 CONFIG_INTERNAL_DES=y 505 CONFIG_INTERNAL_SHA1=y 506 CONFIG_INTERNAL_MD4=y 507 CONFIG_INTERNAL_MD5=y 508 CONFIG_INTERNAL_SHA256=y 509 endif 510 ifeq ($(CONFIG_CRYPTO), cryptoapi) 511 OBJS += crypto_cryptoapi.c 512 OBJS_p += crypto_cryptoapi.c 513 L_CFLAGS += -DCONFIG_CRYPTO_CRYPTOAPI 514 CONFIG_INTERNAL_SHA256=y 515 endif 516 endif 517 ifeq ($(CONFIG_TLS), none) 518 OBJS += crypto_none.c 519 OBJS_p += crypto_none.c 520 CONFIG_INTERNAL_SHA256=y 521 endif 522 else 523 CONFIG_INTERNAL_AES=y 524 CONFIG_INTERNAL_SHA1=y 525 CONFIG_INTERNAL_MD5=y 526 endif 527 528 ifdef CONFIG_INTERNAL_AES 529 L_CFLAGS += -DINTERNAL_AES 530 endif 531 ifdef CONFIG_INTERNAL_SHA1 532 L_CFLAGS += -DINTERNAL_SHA1 533 endif 534 ifdef CONFIG_INTERNAL_SHA256 535 L_CFLAGS += -DINTERNAL_SHA256 536 endif 537 ifdef CONFIG_INTERNAL_MD5 538 L_CFLAGS += -DINTERNAL_MD5 539 endif 540 ifdef CONFIG_INTERNAL_MD4 541 L_CFLAGS += -DINTERNAL_MD4 542 endif 543 ifdef CONFIG_INTERNAL_DES 544 L_CFLAGS += -DINTERNAL_DES 545 endif 546 547 ifdef NEED_SHA256 548 OBJS += sha256.c 549 endif 550 551 ifdef CONFIG_WIRELESS_EXTENSION 552 L_CFLAGS += -DCONFIG_WIRELESS_EXTENSION 553 OBJS_d += driver_wext.c 554 endif 555 556 ifdef CONFIG_CTRL_IFACE 557 ifeq ($(CONFIG_CTRL_IFACE), y) 558 ifdef CONFIG_NATIVE_WINDOWS 559 CONFIG_CTRL_IFACE=udp 560 else 561 CONFIG_CTRL_IFACE=unix 562 endif 563 endif 564 L_CFLAGS += -DCONFIG_CTRL_IFACE 565 ifeq ($(CONFIG_CTRL_IFACE), udp) 566 L_CFLAGS += -DCONFIG_CTRL_IFACE_UDP 567 else 568 L_CFLAGS += -DCONFIG_CTRL_IFACE_UNIX 569 endif 570 OBJS += ctrl_iface.c ctrl_iface_$(CONFIG_CTRL_IFACE).c 571 endif 572 573 ifdef CONFIG_READLINE 574 L_CFLAGS += -DCONFIG_READLINE 575 LIBS_c += -lncurses -lreadline 576 endif 577 578 ifdef CONFIG_NATIVE_WINDOWS 579 L_CFLAGS += -DCONFIG_NATIVE_WINDOWS 580 LIBS += -lws2_32 -lgdi32 -lcrypt32 581 LIBS_c += -lws2_32 582 LIBS_p += -lws2_32 583 ifeq ($(CONFIG_CRYPTO), cryptoapi) 584 LIBS_p += -lcrypt32 585 endif 586 endif 587 588 ifdef CONFIG_NO_STDOUT_DEBUG 589 L_CFLAGS += -DCONFIG_NO_STDOUT_DEBUG 590 ifndef CONFIG_CTRL_IFACE 591 CFLAGS += -DCONFIG_NO_WPA_MSG 592 endif 593 endif 594 595 ifdef CONFIG_IPV6 596 # for eapol_test only 597 L_CFLAGS += -DCONFIG_IPV6 598 endif 599 600 ifdef CONFIG_PEERKEY 601 L_CFLAGS += -DCONFIG_PEERKEY 602 endif 603 604 ifdef CONFIG_IEEE80211W 605 L_CFLAGS += -DCONFIG_IEEE80211W 606 NEED_SHA256=y 607 endif 608 609 ifndef CONFIG_NO_WPA 610 OBJS += wpa.c preauth.c pmksa_cache.c 611 NEED_AES=y 612 else 613 L_CFLAGS += -DCONFIG_NO_WPA -DCONFIG_NO_WPA2 614 endif 615 616 ifdef CONFIG_NO_WPA2 617 L_CFLAGS += -DCONFIG_NO_WPA2 618 endif 619 620 ifdef CONFIG_NO_AES_EXTRAS 621 L_CFLAGS += -DCONFIG_NO_AES_WRAP 622 L_CFLAGS += -DCONFIG_NO_AES_CTR -DCONFIG_NO_AES_OMAC1 623 L_CFLAGS += -DCONFIG_NO_AES_EAX -DCONFIG_NO_AES_CBC 624 endif 625 626 ifdef NEED_AES 627 OBJS += aes_wrap.c 628 endif 629 630 ifdef CONFIG_CLIENT_MLME 631 OBJS += mlme.c 632 L_CFLAGS += -DCONFIG_CLIENT_MLME 633 endif 634 635 ifndef CONFIG_MAIN 636 CONFIG_MAIN=main 637 endif 638 639 ifdef CONFIG_DEBUG_FILE 640 L_CFLAGS += -DCONFIG_DEBUG_FILE 641 endif 642 643 OBJS += wpa_supplicant.c events.c 644 OBJS_t := $(OBJS) eapol_test.c radius.c radius_client.c 645 OBJS_t2 := $(OBJS) preauth_test.c 646 OBJS += $(CONFIG_MAIN).c drivers.c $(OBJS_d) 647 648 ifdef CONFIG_NDIS_EVENTS_INTEGRATED 649 L_CFLAGS += -DCONFIG_NDIS_EVENTS_INTEGRATED 650 OBJS += ndis_events.c 651 EXTRALIBS += -loleaut32 -lole32 -luuid 652 ifdef PLATFORMSDKLIB 653 EXTRALIBS += $(PLATFORMSDKLIB)/WbemUuid.Lib 654 else 655 EXTRALIBS += WbemUuid.Lib 656 endif 657 endif 658 659 ifeq ($(WPA_BUILD_SUPPLICANT),true) 660 661 ######################## 662 663 include $(CLEAR_VARS) 664 LOCAL_MODULE := wpa_cli 665 LOCAL_MODULE_TAGS := debug 666 LOCAL_SHARED_LIBRARIES := libc libcutils 667 LOCAL_CFLAGS := $(L_CFLAGS) 668 LOCAL_SRC_FILES := $(OBJS_c) 669 LOCAL_C_INCLUDES := $(INCLUDES) 670 include $(BUILD_EXECUTABLE) 671 672 ######################## 673 include $(CLEAR_VARS) 674 LOCAL_MODULE := wpa_supplicant 675 ifdef CONFIG_DRIVER_CUSTOM 676 LOCAL_STATIC_LIBRARIES := libCustomWifi 677 endif 678 ifneq ($(BOARD_WPA_SUPPLICANT_PRIVATE_LIB),) 679 LOCAL_STATIC_LIBRARIES += $(BOARD_WPA_SUPPLICANT_PRIVATE_LIB) 680 endif 681 LOCAL_SHARED_LIBRARIES := libc libcutils libcrypto libssl 682 LOCAL_CFLAGS := $(L_CFLAGS) 683 LOCAL_SRC_FILES := $(OBJS) 684 LOCAL_C_INCLUDES := $(INCLUDES) 685 include $(BUILD_EXECUTABLE) 686 687 ######################## 688 # 689 #include $(CLEAR_VARS) 690 #LOCAL_MODULE := eapol_test 691 #ifdef CONFIG_DRIVER_CUSTOM 692 #LOCAL_STATIC_LIBRARIES := libCustomWifi 693 #endif 694 #LOCAL_SHARED_LIBRARIES := libc libcrypto libssl 695 #LOCAL_CFLAGS := $(L_CFLAGS) 696 #LOCAL_SRC_FILES := $(OBJS_t) 697 #LOCAL_C_INCLUDES := $(INCLUDES) 698 #include $(BUILD_EXECUTABLE) 699 # 700 ######################## 701 # 702 #local_target_dir := $(TARGET_OUT)/etc/wifi 703 # 704 #include $(CLEAR_VARS) 705 #LOCAL_MODULE := wpa_supplicant.conf 706 #LOCAL_MODULE_TAGS := user 707 #LOCAL_MODULE_CLASS := ETC 708 #LOCAL_MODULE_PATH := $(local_target_dir) 709 #LOCAL_SRC_FILES := $(LOCAL_MODULE) 710 #include $(BUILD_PREBUILT) 711 # 712 ######################## 713 714 endif # ifeq ($(WPA_BUILD_SUPPLICANT),true) 715 716 include $(CLEAR_VARS) 717 LOCAL_MODULE = libwpa_client 718 LOCAL_CFLAGS = $(L_CFLAGS) 719 LOCAL_SRC_FILES = wpa_ctrl.c os_unix.c 720 LOCAL_C_INCLUDES = $(INCLUDES) 721 LOCAL_SHARED_LIBRARIES := libcutils 722 LOCAL_COPY_HEADERS_TO := libwpa_client 723 LOCAL_COPY_HEADERS := wpa_ctrl.h 724 include $(BUILD_SHARED_LIBRARY) 725 726 endif # VER_0_5_X 727