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