1#Copyright (c) 2021-2023 Huawei Device Co., Ltd. 2# Licensed under the Apache License, Version 2.0 (the "License"); 3# you may not use this file except in compliance with the License. 4# You may obtain a copy of the License at 5# 6# http://www.apache.org/licenses/LICENSE-2.0 7# 8# Unless required by applicable law or agreed to in writing, software 9# distributed under the License is distributed on an "AS IS" BASIS, 10# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11# See the License for the specific language governing permissions and 12# limitations under the License. 13 14if (defined(ohos_lite)) { 15 import("//build/lite/config/component/lite_component.gni") 16} else { 17 import("//build/ohos.gni") 18} 19 20import("//third_party/wpa_supplicant/wpa_supplicant-2.9_standard/wpa.gni") 21import( 22 "//third_party/wpa_supplicant/wpa_supplicant-2.9_standard/wpa_vendor_ext.gni") 23 24declare_args() { 25 wpa_supplicant_driver_nl80211_hisi = false 26 wpa_supplicant_driver_nl80211 = false 27 wpa_supplicant_ohos_certmgr = true 28 wpa_supplicant_ohos_eapauth = true 29 wpa_supplicant_config_hilog = true 30 wpa_supplicant_config_openssl = true 31 wpa_supplicant_config_wfd = true 32 wpa_supplicant_config_mlo = false 33} 34 35if (wpa_supplicant_ohos_certmgr) { 36 cert_manager_sources = [ 37 "$WPA_ROOT_DIR/wpa_supplicant_lib/cert_mgr_deps/src/cert_manager_api.c", 38 "$WPA_ROOT_DIR/wpa_supplicant_lib/cert_mgr_deps/src/cm_ipc_client.c", 39 "$WPA_ROOT_DIR/wpa_supplicant_lib/cert_mgr_deps/src/cm_ipc_client_serialization.c", 40 "$WPA_ROOT_DIR/wpa_supplicant_lib/cert_mgr_deps/src/cm_load_sa.cpp", 41 "$WPA_ROOT_DIR/wpa_supplicant_lib/cert_mgr_deps/src/cm_mem.c", 42 "$WPA_ROOT_DIR/wpa_supplicant_lib/cert_mgr_deps/src/cm_param.c", 43 "$WPA_ROOT_DIR/wpa_supplicant_lib/cert_mgr_deps/src/cm_request.cpp", 44 ] 45 46 cert_manager_include_dirs = 47 [ "$WPA_ROOT_DIR/wpa_supplicant_lib/cert_mgr_deps/include" ] 48 49 cert_manager_external_deps = [ 50 "c_utils:utils", 51 "ipc:ipc_single", 52 "openssl:libcrypto_shared", 53 "samgr:samgr_proxy", 54 ] 55} 56 57if (wpa_supplicant_driver_nl80211_hisi) { 58 CONFIG_HISI = "true" 59} else { 60 CONFIG_HISI = "false" 61} 62if (wpa_supplicant_driver_nl80211) { 63 CONFIG_DRIVER = "nl80211" 64} else { 65 CONFIG_DRIVER = "hdf" 66} 67if (wpa_supplicant_ohos_eapauth) { 68 CONFIG_EAPAUTH = "true" 69} else { 70 CONFIG_EAPAUTH = "false" 71} 72if (wpa_supplicant_config_mlo) { 73 CONFIG_MLO = "true" 74} else { 75 CONFIG_MLO = "false" 76} 77 78CONFIG_OS = "unix" 79CONFIG_ELOOP = "eloop" 80if ("${CONFIG_DRIVER}" == "nl80211") { 81 CONFIG_L2_PACKET = "linux" 82} else { 83 CONFIG_L2_PACKET = "rtos" 84} 85 86CONFIG_MAIN = "main" 87 88config("wpa_warnings") { 89 cflags = [ "-Wno-error=sign-compare" ] 90 ldflags = [ 91 "-flto", 92 "-fsanitize=cfi", 93 "-Wl,-plugin-opt,O1", 94 ] 95} 96 97wpa_client_base_sources = [ 98 "$WPA_ROOT_DIR/src/common/wpa_ctrl.c", 99 "$WPA_ROOT_DIR/src/utils/common.c", 100 "$WPA_ROOT_DIR/src/utils/os_${CONFIG_OS}.c", 101 "$WPA_ROOT_DIR/src/utils/wpa_debug.c", 102] 103 104wpa_client_base_include_dirs = [ 105 "$WPA_ROOT_DIR/src", 106 "$WPA_ROOT_DIR/src/utils", 107 "$WPA_ROOT_DIR/src/drivers", 108 "$WPA_ROOT_DIR/wpa_supplicant", 109 "$WPA_ROOT_DIR/build/include", 110] 111 112wpa_client_vendor_base_include_dirs = [ 113 "$WPA_ROOT_DIR/src", 114 "$WPA_ROOT_DIR/src/utils", 115 "$WPA_ROOT_DIR/src/drivers", 116 "$WPA_ROOT_DIR/wpa_supplicant", 117 "$WPA_ROOT_DIR/build/include", 118] 119 120config("wpa_base_public_config") { 121 include_dirs = [ 122 "$WPA_ROOT_DIR/src", 123 "$WPA_ROOT_DIR/src/common", 124 "$WPA_ROOT_DIR/src/utils", 125 "$WPA_ROOT_DIR/wpa_supplicant", 126 "$WPA_ROOT_DIR/hostapd", 127 "$WPA_ROOT_DIR/wpa_supplicant_lib", 128 ] 129} 130 131config("wpa_client_updater_public_config") { 132 include_dirs = [ 133 "$WPA_ROOT_DIR/src", 134 "$WPA_ROOT_DIR/src/common", 135 "$WPA_ROOT_DIR/src/utils", 136 "$WPA_ROOT_DIR/wpa_supplicant", 137 ] 138} 139 140wpa_client_base_cflags = [ 141 "-UANDROID", 142 "-fsigned-char", 143 "-DCONFIG_IEEE80211W", 144 "-DCONFIG_IEEE80211R", 145 "-DCONFIG_NO_VLAN", 146 "-DCONFIG_NO_RADIUS", 147 "-DCONFIG_NO_RANDOM_POOL", 148 "-DCONFIG_SHA256", 149 "-DCONFIG_CRYPTO_INTERNAL", 150 "-DCONFIG_INTERNAL_LIBTOMMATH", 151 "-DCONFIG_INTERNAL_SHA384", 152 "-DCONFIG_INTERNAL_SHA512", 153 "-DCONFIG_CTRL_IFACE", 154 "-DCONFIG_IBSS_RSN", 155 "-DIEEE8021X_EAPOL", 156 "-DCONFIG_BACEND_FILE", 157 "-DCONFIG_NO_CONFIG_BLOBS", 158 "-DUSERSPACE_CLIENT_SUPPORT", 159 "-DCONFIG_DEBUG_FILE", 160 "-DCONFIG_OPEN_HARMONY_PATCH", 161] 162 163ohos_shared_library("wpa_client") { 164 sanitize = { 165 cfi = true 166 cfi_cross_dso = true 167 debug = false 168 } 169 170 output_name = "wpa_client" 171 sources = wpa_client_base_sources 172 173 include_dirs = wpa_client_base_include_dirs 174 175 cflags = wpa_client_base_cflags 176 if ("${CONFIG_CTRL_IFACE}" == "udp") { 177 cflags += [ "-DCONFIG_CTRL_IFACE_UDP" ] 178 } else { 179 cflags += [ "-DCONFIG_CTRL_IFACE_UNIX" ] 180 } 181 182 external_deps = [ "init:libbegetutil" ] 183 if (wpa_supplicant_config_hilog) { 184 external_deps += [ "hilog:libhilog" ] 185 } 186 if ("${CONFIG_DRIVER}" == "nl80211") { 187 include_dirs += [ "$WPA_ROOT_DIR/libnl/include/libnl3" ] 188 cflags += [ 189 "-DCONFIG_DRIVER_NL80211", 190 "-DCONFIG_LIBNL32", 191 ] 192 } else { 193 cflags += [ 194 "-DCONFIG_DRIVER_HDF", 195 "-DCONFIG_OHOS_P2P", 196 ] 197 } 198 public_configs = [ ":wpa_base_public_config" ] 199 configs = [ ":wpa_warnings" ] 200 part_name = "wpa_supplicant" 201 subsystem_name = "thirdparty" 202 install_images = [ "system" ] 203} 204 205ohos_shared_library("wpa_client_vendor") { 206 sanitize = { 207 cfi = true 208 cfi_cross_dso = true 209 debug = false 210 } 211 212 output_name = "wpa_client_vendor" 213 sources = wpa_client_base_sources 214 215 include_dirs = wpa_client_vendor_base_include_dirs 216 217 cflags = wpa_client_base_cflags 218 if ("${CONFIG_CTRL_IFACE}" == "udp") { 219 cflags += [ "-DCONFIG_CTRL_IFACE_UDP" ] 220 } else { 221 cflags += [ "-DCONFIG_CTRL_IFACE_UNIX" ] 222 } 223 224 external_deps = [ "init:libbegetutil" ] 225 if (wpa_supplicant_config_hilog) { 226 external_deps += [ "hilog:libhilog" ] 227 } 228 if ("${CONFIG_DRIVER}" == "nl80211") { 229 include_dirs += [ "$WPA_ROOT_DIR/libnl/include/libnl3" ] 230 cflags += [ 231 "-DCONFIG_DRIVER_NL80211", 232 "-DCONFIG_LIBNL32", 233 ] 234 } else { 235 cflags += [ 236 "-DCONFIG_DRIVER_HDF", 237 "-DCONFIG_OHOS_P2P", 238 ] 239 } 240 public_configs = [ ":wpa_base_public_config" ] 241 configs = [ ":wpa_warnings" ] 242 part_name = "wpa_supplicant" 243 subsystem_name = "thirdparty" 244 install_images = [ chipset_base_dir ] 245} 246 247ohos_shared_library("wpa_client_updater") { 248 sanitize = { 249 cfi = true 250 cfi_cross_dso = true 251 debug = false 252 } 253 254 output_name = "wpa_client_updater" 255 symlink_target_name = [ "libwpa_client.z.so" ] 256 sources = wpa_client_base_sources 257 258 include_dirs = wpa_client_base_include_dirs 259 260 cflags = wpa_client_base_cflags 261 if ("${CONFIG_CTRL_IFACE}" == "udp") { 262 cflags += [ "-DCONFIG_CTRL_IFACE_UDP" ] 263 } else { 264 cflags += [ "-DCONFIG_CTRL_IFACE_UNIX" ] 265 } 266 267 external_deps = [ "init:libbegetutil" ] 268 if (wpa_supplicant_config_hilog) { 269 external_deps += [ "hilog:libhilog" ] 270 } 271 272 if ("${CONFIG_DRIVER}" == "nl80211") { 273 include_dirs += [ "$WPA_ROOT_DIR/libnl/include/libnl3" ] 274 cflags += [ 275 "-DCONFIG_DRIVER_NL80211", 276 "-DCONFIG_LIBNL32", 277 ] 278 } else { 279 cflags += [ 280 "-DCONFIG_DRIVER_HDF", 281 "-DCONFIG_OHOS_P2P", 282 ] 283 } 284 public_configs = [ ":wpa_client_updater_public_config" ] 285 defines = [ "OHOS_EUPDATER" ] 286 configs = [ ":wpa_warnings" ] 287 part_name = "wpa_supplicant" 288 subsystem_name = "thirdparty" 289 install_images = [ "updater" ] 290} 291 292wpa_base_sources = [ 293 # wpa & hostapd 294 "$WPA_ROOT_DIR/hostapd/ap_config_file.c", 295 "$WPA_ROOT_DIR/hostapd/ap_ctrl_iface.c", 296 "$WPA_ROOT_DIR/hostapd/ap_eap_register.c", 297 298 # hostapd 299 "$WPA_ROOT_DIR/hostapd/ap_main.c", 300 "$WPA_ROOT_DIR/src/ap/ap_config.c", 301 "$WPA_ROOT_DIR/src/ap/ap_drv_ops.c", 302 "$WPA_ROOT_DIR/src/ap/ap_list.c", 303 "$WPA_ROOT_DIR/src/ap/ap_mlme.c", 304 "$WPA_ROOT_DIR/src/ap/ap_rrm.c", 305 "$WPA_ROOT_DIR/src/ap/authsrv.c", 306 "$WPA_ROOT_DIR/src/ap/beacon.c", 307 "$WPA_ROOT_DIR/src/ap/bss_load.c", 308 "$WPA_ROOT_DIR/src/ap/ctrl_iface_ap.c", 309 "$WPA_ROOT_DIR/src/ap/dfs.c", 310 "$WPA_ROOT_DIR/src/ap/drv_callbacks.c", 311 "$WPA_ROOT_DIR/src/ap/eap_user_db.c", 312 "$WPA_ROOT_DIR/src/ap/hostapd.c", 313 "$WPA_ROOT_DIR/src/ap/hw_features.c", 314 "$WPA_ROOT_DIR/src/ap/ieee802_11.c", 315 "$WPA_ROOT_DIR/src/ap/ieee802_11_auth.c", 316 "$WPA_ROOT_DIR/src/ap/ieee802_11_ht.c", 317 "$WPA_ROOT_DIR/src/ap/ieee802_11_shared.c", 318 "$WPA_ROOT_DIR/src/ap/ieee802_1x.c", 319 "$WPA_ROOT_DIR/src/ap/neighbor_db.c", 320 "$WPA_ROOT_DIR/src/ap/pmksa_cache_auth.c", 321 "$WPA_ROOT_DIR/src/ap/preauth_auth.c", 322 "$WPA_ROOT_DIR/src/ap/sta_info.c", 323 "$WPA_ROOT_DIR/src/ap/tkip_countermeasures.c", 324 "$WPA_ROOT_DIR/src/ap/utils.c", 325 "$WPA_ROOT_DIR/src/ap/wmm.c", 326 "$WPA_ROOT_DIR/src/ap/wpa_auth.c", 327 "$WPA_ROOT_DIR/src/ap/wpa_auth_glue.c", 328 "$WPA_ROOT_DIR/src/ap/wpa_auth_ie.c", 329 "$WPA_ROOT_DIR/src/common/ctrl_iface_common.c", 330 "$WPA_ROOT_DIR/src/common/hw_features_common.c", 331 "$WPA_ROOT_DIR/src/common/ieee802_11_common.c", 332 "$WPA_ROOT_DIR/src/common/wpa_common.c", 333 "$WPA_ROOT_DIR/src/crypto/aes-internal.c", 334 "$WPA_ROOT_DIR/src/crypto/aes-omac1.c", 335 "$WPA_ROOT_DIR/src/crypto/sha1-prf.c", 336 "$WPA_ROOT_DIR/src/crypto/sha256-prf.c", 337 "$WPA_ROOT_DIR/src/drivers/driver_common.c", 338 "$WPA_ROOT_DIR/src/drivers/drivers.c", 339 "$WPA_ROOT_DIR/src/eap_common/eap_common.c", 340 "$WPA_ROOT_DIR/src/eap_peer/eap.c", 341 "$WPA_ROOT_DIR/src/eap_peer/eap_methods.c", 342 "$WPA_ROOT_DIR/src/eap_server/eap_server.c", 343 "$WPA_ROOT_DIR/src/eap_server/eap_server_identity.c", 344 "$WPA_ROOT_DIR/src/eap_server/eap_server_methods.c", 345 "$WPA_ROOT_DIR/src/eapol_auth/eapol_auth_sm.c", 346 "$WPA_ROOT_DIR/src/eapol_supp/eapol_supp_sm.c", 347 "$WPA_ROOT_DIR/src/l2_packet/l2_packet_${CONFIG_L2_PACKET}.c", 348 "$WPA_ROOT_DIR/src/rsn_supp/pmksa_cache.c", 349 "$WPA_ROOT_DIR/src/rsn_supp/preauth.c", 350 "$WPA_ROOT_DIR/src/rsn_supp/wpa.c", 351 "$WPA_ROOT_DIR/src/rsn_supp/wpa_ft.c", 352 "$WPA_ROOT_DIR/src/rsn_supp/wpa_i.h", 353 "$WPA_ROOT_DIR/src/rsn_supp/wpa_ie.c", 354 "$WPA_ROOT_DIR/src/utils/${CONFIG_ELOOP}.c", 355 "$WPA_ROOT_DIR/src/utils/bitfield.c", 356 "$WPA_ROOT_DIR/src/utils/common.c", 357 "$WPA_ROOT_DIR/src/utils/ip_addr.c", 358 "$WPA_ROOT_DIR/src/utils/os_${CONFIG_OS}.c", 359 "$WPA_ROOT_DIR/src/utils/radiotap.c", 360 "$WPA_ROOT_DIR/src/utils/wpa_debug.c", 361 "$WPA_ROOT_DIR/src/utils/wpabuf.c", 362 "$WPA_ROOT_DIR/wpa_supplicant/${CONFIG_MAIN}.c", 363 "$WPA_ROOT_DIR/wpa_supplicant/bss.c", 364 "$WPA_ROOT_DIR/wpa_supplicant/bssid_ignore.c", 365 366 # wpa_supplicant 367 "$WPA_ROOT_DIR/src/crypto/sha384-kdf.c", 368 "$WPA_ROOT_DIR/src/crypto/sha384-prf.c", 369 "$WPA_ROOT_DIR/wpa_supplicant/config.c", 370 "$WPA_ROOT_DIR/wpa_supplicant/config_file.c", 371 "$WPA_ROOT_DIR/wpa_supplicant/ctrl_iface.c", 372 "$WPA_ROOT_DIR/wpa_supplicant/ctrl_iface_${CONFIG_CTRL_IFACE}.c", 373 "$WPA_ROOT_DIR/wpa_supplicant/eap_register.c", 374 "$WPA_ROOT_DIR/wpa_supplicant/events.c", 375 "$WPA_ROOT_DIR/wpa_supplicant/ibss_rsn.c", 376 "$WPA_ROOT_DIR/wpa_supplicant/notify.c", 377 "$WPA_ROOT_DIR/wpa_supplicant/op_classes.c", 378 "$WPA_ROOT_DIR/wpa_supplicant/robust_av.c", 379 "$WPA_ROOT_DIR/wpa_supplicant/rrm.c", 380 "$WPA_ROOT_DIR/wpa_supplicant/scan.c", 381 "$WPA_ROOT_DIR/wpa_supplicant/wmm_ac.c", 382 "$WPA_ROOT_DIR/wpa_supplicant/wpa_supplicant.c", 383 "$WPA_ROOT_DIR/wpa_supplicant/wpas_glue.c", 384 385 #sae 386 "$WPA_ROOT_DIR/src/common/sae.c", 387 "$WPA_ROOT_DIR/wpa_supplicant/sme.c", 388 389 #p2p 390 "$WPA_ROOT_DIR/src/ap/p2p_hostapd.c", 391 "$WPA_ROOT_DIR/src/ap/wps_hostapd.c", 392 "$WPA_ROOT_DIR/src/common/dragonfly.c", 393 "$WPA_ROOT_DIR/src/common/gas.c", 394 "$WPA_ROOT_DIR/src/crypto/crypto_openssl.c", 395 "$WPA_ROOT_DIR/src/crypto/dh_groups.c", 396 "$WPA_ROOT_DIR/src/crypto/fips_prf_openssl.c", 397 "$WPA_ROOT_DIR/src/crypto/ms_funcs.c", 398 "$WPA_ROOT_DIR/src/crypto/sha1-tlsprf.c", 399 "$WPA_ROOT_DIR/src/crypto/sha256-kdf.c", 400 "$WPA_ROOT_DIR/src/crypto/tls_openssl.c", 401 "$WPA_ROOT_DIR/src/crypto/tls_openssl_ocsp.c", 402 "$WPA_ROOT_DIR/src/eap_common/chap.c", 403 "$WPA_ROOT_DIR/src/eap_common/eap_peap_common.c", 404 "$WPA_ROOT_DIR/src/eap_common/eap_pwd_common.c", 405 "$WPA_ROOT_DIR/src/eap_common/eap_sim_common.c", 406 "$WPA_ROOT_DIR/src/eap_common/eap_wsc_common.c", 407 "$WPA_ROOT_DIR/src/eap_peer/eap_aka.c", 408 "$WPA_ROOT_DIR/src/eap_peer/eap_gtc.c", 409 "$WPA_ROOT_DIR/src/eap_peer/eap_mschapv2.c", 410 "$WPA_ROOT_DIR/src/eap_peer/eap_peap.c", 411 "$WPA_ROOT_DIR/src/eap_peer/eap_pwd.c", 412 "$WPA_ROOT_DIR/src/eap_peer/eap_sim.c", 413 "$WPA_ROOT_DIR/src/eap_peer/eap_tls.c", 414 "$WPA_ROOT_DIR/src/eap_peer/eap_tls_common.c", 415 "$WPA_ROOT_DIR/src/eap_peer/eap_ttls.c", 416 "$WPA_ROOT_DIR/src/eap_peer/eap_wsc.c", 417 "$WPA_ROOT_DIR/src/eap_peer/mschapv2.c", 418 "$WPA_ROOT_DIR/src/eap_server/eap_server_wsc.c", 419 "$WPA_ROOT_DIR/src/p2p/p2p.c", 420 "$WPA_ROOT_DIR/src/p2p/p2p_build.c", 421 "$WPA_ROOT_DIR/src/p2p/p2p_dev_disc.c", 422 "$WPA_ROOT_DIR/src/p2p/p2p_go_neg.c", 423 "$WPA_ROOT_DIR/src/p2p/p2p_group.c", 424 "$WPA_ROOT_DIR/src/p2p/p2p_invitation.c", 425 "$WPA_ROOT_DIR/src/p2p/p2p_parse.c", 426 "$WPA_ROOT_DIR/src/p2p/p2p_pd.c", 427 "$WPA_ROOT_DIR/src/p2p/p2p_sd.c", 428 "$WPA_ROOT_DIR/src/p2p/p2p_utils.c", 429 "$WPA_ROOT_DIR/src/tls/bignum.c", 430 "$WPA_ROOT_DIR/src/utils/base64.c", 431 "$WPA_ROOT_DIR/src/utils/config.c", 432 "$WPA_ROOT_DIR/src/utils/crc32.c", 433 "$WPA_ROOT_DIR/src/utils/uuid.c", 434 "$WPA_ROOT_DIR/src/wps/wps.c", 435 "$WPA_ROOT_DIR/src/wps/wps_attr_build.c", 436 "$WPA_ROOT_DIR/src/wps/wps_attr_parse.c", 437 "$WPA_ROOT_DIR/src/wps/wps_attr_process.c", 438 "$WPA_ROOT_DIR/src/wps/wps_common.c", 439 "$WPA_ROOT_DIR/src/wps/wps_dev_attr.c", 440 "$WPA_ROOT_DIR/src/wps/wps_enrollee.c", 441 "$WPA_ROOT_DIR/src/wps/wps_registrar.c", 442 "$WPA_ROOT_DIR/wpa_supplicant/ap.c", 443 "$WPA_ROOT_DIR/wpa_supplicant/gas_query.c", 444 "$WPA_ROOT_DIR/wpa_supplicant/offchannel.c", 445 "$WPA_ROOT_DIR/wpa_supplicant/p2p_supplicant.c", 446 "$WPA_ROOT_DIR/wpa_supplicant/p2p_supplicant_sd.c", 447 "$WPA_ROOT_DIR/wpa_supplicant/wps_supplicant.c", 448 "$WPA_ROOT_DIR/wpa_supplicant_lib/wpa_magiclink.c", 449] 450 451if ("${CONFIG_EAPAUTH}" == "true") { 452 wpa_base_sources += [ 453 "$WPA_ROOT_DIR/src/crypto/aes-encblock.c", 454 "$WPA_ROOT_DIR/src/crypto/milenage.c", 455 ] 456} 457 458if (wpa_supplicant_config_wfd) { 459 wpa_base_sources += [ "$WPA_ROOT_DIR/wpa_supplicant/wifi_display.c" ] 460} 461 462wpa_base_include_dirs = [ 463 "$WPA_ROOT_DIR/src", 464 "$WPA_ROOT_DIR/src/ap", 465 "$WPA_ROOT_DIR/src/common", 466 "$WPA_ROOT_DIR/src/utils", 467 "$WPA_ROOT_DIR/src/drivers", 468 "$WPA_ROOT_DIR/wpa_supplicant", 469 "$WPA_ROOT_DIR/build/include", 470 "$WPA_ROOT_DIR/wpa_supplicant_lib", 471 "$WPA_ROOT_DIR/src/crypto", 472 "$WPA_ROOT_DIR/src/eap_common", 473] 474 475if (wpa_supplicant_vendor_ext) { 476 wpa_base_include_dirs += wpa_vendor_ext_inc_path 477} 478 479if (wpa_supplicant_vendor_ext == false || wpa_supplicant_wapi == false) { 480 wpa_base_include_dirs += [ "$WPA_ROOT_DIR/wpa_supplicant/wapi" ] 481 wpa_base_sources += [ "$WPA_ROOT_DIR/wpa_supplicant/wapi/wapi_asue_i.c" ] 482} 483 484ohos_shared_library("wpa_sys") { 485 sanitize = { 486 cfi = true 487 cfi_cross_dso = true 488 debug = false 489 } 490 output_name = "wpa_sys" 491 sources = wpa_base_sources 492 493 include_dirs = wpa_base_include_dirs 494 495 cflags = [ 496 "-UANDROID", 497 "-fsigned-char", 498 "-DCONFIG_IEEE80211W", 499 "-DCONFIG_NO_VLAN", 500 "-DCONFIG_NO_RADIUS", 501 "-DCONFIG_NO_RANDOM_POOL", 502 "-DCONFIG_SHA256", 503 "-DCONFIG_CRYPTO_INTERNAL", 504 "-DCONFIG_INTERNAL_LIBTOMMATH", 505 "-DCONFIG_INTERNAL_SHA384", 506 "-DCONFIG_INTERNAL_SHA512", 507 "-DCONFIG_CTRL_IFACE", 508 "-DCONFIG_IBSS_RSN", 509 "-DIEEE8021X_EAPOL", 510 "-DUSERSPACE_CLIENT_SUPPORT", 511 "-DCONFIG_BACKEND_FILE", 512 "-DCONFIG_NO_CONFIG_BLOBS", 513 "-DCONFIG_NO_ACCOUNTING", 514 "-DEAP_SERVER_IDENTITY", 515 "-DCONFIG_IEEE80211N", 516 "-DHOSTAPD", 517 "-DNEED_AP_MLME", 518 "-DCONFIG_WPS", 519 "-DCONFIG_AP", 520 "-DCONFIG_P2P", 521 "-DEAP_WSC", 522 "-DEAP_SERVER_WSC", 523 "-DEAP_SERVER", 524 "-DCONFIG_GAS", 525 "-DCONFIG_OFFCHANNEL", 526 "-DCONFIG_MAGICLINK", 527 "-DCONFIG_MAGICLINK_PC", 528 "-DCONFIG_OPEN_HARMONY_PATCH", 529 "-DEAP_MSCHAPV2", 530 "-DEAP_TLS", 531 "-DEAP_PEAP", 532 "-DEAP_TTLS", 533 "-DEAP_SIM", 534 "-DEAP_PWD", 535 "-DEAP_MSCHAPv2", 536 "-DCONFIG_SHA256", 537 "-DCONFIG_ECC", 538 "-DEAP_AKA", 539 "-DEAP_AKA_PRIME", 540 "-DEAP_TLS_OPENSSL", 541 "-DCONFIG_SAE", 542 "-DCONFIG_SUITEB192", 543 "-DCONFIG_SHA384", 544 "-DCONFIG_SUITEB", 545 "-DCONFIG_SME", 546 "-DCONFIG_WEP", 547 "-DPKCS12_FUNCS", 548 "-DEAP_GTC", 549 ] 550 if ("${CONFIG_CTRL_IFACE}" == "udp") { 551 cflags += [ "-DCONFIG_CTRL_IFACE_UDP" ] 552 } else { 553 cflags += [ "-DCONFIG_CTRL_IFACE_UNIX" ] 554 } 555 556 if (wpa_supplicant_config_wfd) { 557 cflags += [ "-DCONFIG_WIFI_DISPLAY" ] 558 } 559 560 defines = [ 561 "TLS_DEFAULT_CIPHERS = \"DEFAULT:!EXP:!LOW\"", 562 "OPENSSL_SUPPRESS_DEPRECATED", 563 ] 564 565 external_deps = [ 566 "bounds_checking_function:libsec_static", 567 "drivers_peripheral_wlan:wifi_driver_client", 568 "init:libbegetutil", 569 ] 570 if (wpa_supplicant_config_openssl) { 571 external_deps += [ 572 "openssl:libcrypto_shared", 573 "openssl:libssl_shared", 574 ] 575 } 576 577 if (wpa_supplicant_config_hilog) { 578 external_deps += [ "hilog:libhilog" ] 579 } 580 581 if ("${CONFIG_DRIVER}" == "nl80211") { 582 sources += [ 583 "$WPA_ROOT_DIR/src/ap/ieee802_11_he.c", 584 "$WPA_ROOT_DIR/src/ap/ieee802_11_vht.c", 585 "$WPA_ROOT_DIR/src/drivers/driver_nl80211.c", 586 "$WPA_ROOT_DIR/src/drivers/driver_nl80211_capa.c", 587 "$WPA_ROOT_DIR/src/drivers/driver_nl80211_event.c", 588 "$WPA_ROOT_DIR/src/drivers/driver_nl80211_monitor.c", 589 "$WPA_ROOT_DIR/src/drivers/driver_nl80211_scan.c", 590 "$WPA_ROOT_DIR/src/drivers/linux_ioctl.c", 591 "$WPA_ROOT_DIR/src/drivers/netlink.c", 592 "$WPA_ROOT_DIR/src/drivers/rfkill.c", 593 ] 594 include_dirs += [ 595 "$WPA_ROOT_DIR/libnl/include/libnl3", 596 "$WPA_ROOT_DIR/wpa_supplicant_lib", 597 ] 598 599 cflags += [ 600 "-DCONFIG_DRIVER_NL80211", 601 "-DCONFIG_LIBNL32", 602 "-DCONFIG_LIBNL20", 603 "-DCONFIG_DEBUG_FILE", 604 "-DCONFIG_IEEE80211AC", 605 "-DCONFIG_IEEE80211AX", 606 ] 607 external_deps += [ "libnl:libnl_share" ] 608 } else { 609 sources += [ 610 "$WPA_ROOT_DIR/src/drivers/wpa_hal.c", 611 "$WPA_ROOT_DIR/src/drivers/wpa_hal_event.c", 612 ] 613 cflags += [ 614 "-DCONFIG_DRIVER_HDF", 615 "-DCONFIG_OHOS_P2P", 616 ] 617 } 618 if ("${CONFIG_HISI}" == "true") { 619 sources += [ "$WPA_ROOT_DIR/wpa_supplicant_lib/driver_nl80211_hisi.c" ] 620 cflags += [ 621 "-DCONFIG_DRIVER_NL80211_HISI", 622 "-DCONFIG_P2P_160M", 623 ] 624 if (use_musl) { 625 cflags += [ "-DCONFIG_DRIVER_NL80211_HISI_TRUNK" ] 626 } 627 } 628 cflags += ext_cflags 629 630 if (wpa_supplicant_ohos_certmgr) { 631 sources += [ "$WPA_ROOT_DIR/wpa_supplicant_lib/wpa_evp_key.c" ] 632 sources += cert_manager_sources 633 external_deps += cert_manager_external_deps 634 include_dirs += cert_manager_include_dirs 635 defines += [ "CONFIG_OHOS_CERTMGR" ] 636 } 637 if (wpa_supplicant_vendor_ext) { 638 sources += wpa_vendor_ext_src 639 external_deps += [ "cJSON:cjson" ] 640 if (defined(global_parts_info.hiviewdfx_hisysevent)) { 641 external_deps += [ "hisysevent:libhisysevent" ] 642 } 643 } 644 if ("${CONFIG_EAPAUTH}" == "true") { 645 cflags += [ "-DCONFIG_EAP_AUTH" ] 646 } 647 configs = [ ":wpa_warnings" ] 648 part_name = "wpa_supplicant" 649 subsystem_name = "thirdparty" 650} 651 652ohos_shared_library("wpa_sys_updater") { 653 sanitize = { 654 cfi = true 655 integer_overflow = true 656 cfi_cross_dso = true 657 debug = false 658 } 659 output_name = "wpa_sys_updater" 660 sources = wpa_base_sources 661 include_dirs = wpa_base_include_dirs 662 symlink_target_name = [ "libwpa_sys.z.so" ] 663 664 cflags = [ 665 "-UANDROID", 666 "-fsigned-char", 667 "-DCONFIG_IEEE80211W", 668 "-DCONFIG_NO_VLAN", 669 "-DCONFIG_NO_RADIUS", 670 "-DCONFIG_NO_RANDOM_POOL", 671 "-DCONFIG_SHA256", 672 "-DCONFIG_CRYPTO_INTERNAL", 673 "-DCONFIG_INTERNAL_LIBTOMMATH", 674 "-DCONFIG_INTERNAL_SHA384", 675 "-DCONFIG_INTERNAL_SHA512", 676 "-DCONFIG_CTRL_IFACE", 677 "-DCONFIG_IBSS_RSN", 678 "-DIEEE8021X_EAPOL", 679 "-DUSERSPACE_CLIENT_SUPPORT", 680 "-DCONFIG_BACKEND_FILE", 681 "-DCONFIG_NO_CONFIG_BLOBS", 682 "-DCONFIG_NO_ACCOUNTING", 683 "-DCONFIG_IEEE80211N", 684 "-DHOSTAPD", 685 "-DNEED_AP_MLME", 686 "-DCONFIG_WPS", 687 "-DCONFIG_AP", 688 "-DCONFIG_P2P", 689 "-DCONFIG_GAS", 690 "-DCONFIG_OFFCHANNEL", 691 "-DCONFIG_MAGICLINK", 692 "-DCONFIG_MAGICLINK_PC", 693 "-DCONFIG_OPEN_HARMONY_PATCH", 694 "-DCONFIG_SHA256", 695 "-DCONFIG_ECC", 696 "-DCONFIG_SAE", 697 "-DCONFIG_SME", 698 "-DCONFIG_SUITEB192", 699 "-DCONFIG_SHA384", 700 "-DCONFIG_SUITEB", 701 "-DCONFIG_WEP", 702 "-DPKCS12_FUNCS", 703 ] 704 if ("${CONFIG_CTRL_IFACE}" == "udp") { 705 cflags += [ "-DCONFIG_CTRL_IFACE_UDP" ] 706 } else { 707 cflags += [ "-DCONFIG_CTRL_IFACE_UNIX" ] 708 } 709 710 if (wpa_supplicant_config_wfd) { 711 cflags += [ "-DCONFIG_WIFI_DISPLAY" ] 712 } 713 714 defines = [ 715 "TLS_DEFAULT_CIPHERS = \"DEFAULT:!EXP:!LOW\"", 716 "OPENSSL_SUPPRESS_DEPRECATED", 717 ] 718 719 external_deps = [ 720 "bounds_checking_function:libsec_static", 721 "drivers_peripheral_wlan:wifi_driver_client", 722 "init:libbegetutil", 723 ] 724 if (wpa_supplicant_config_openssl) { 725 external_deps += [ 726 "openssl:libcrypto_shared", 727 "openssl:libssl_shared", 728 ] 729 } 730 if (wpa_supplicant_config_hilog) { 731 external_deps += [ "hilog:libhilog" ] 732 } 733 734 if ("${CONFIG_DRIVER}" == "nl80211") { 735 sources += [ 736 "$WPA_ROOT_DIR/src/ap/ieee802_11_he.c", 737 "$WPA_ROOT_DIR/src/ap/ieee802_11_vht.c", 738 "$WPA_ROOT_DIR/src/drivers/driver_nl80211.c", 739 "$WPA_ROOT_DIR/src/drivers/driver_nl80211_capa.c", 740 "$WPA_ROOT_DIR/src/drivers/driver_nl80211_event.c", 741 "$WPA_ROOT_DIR/src/drivers/driver_nl80211_monitor.c", 742 "$WPA_ROOT_DIR/src/drivers/driver_nl80211_scan.c", 743 "$WPA_ROOT_DIR/src/drivers/linux_ioctl.c", 744 "$WPA_ROOT_DIR/src/drivers/netlink.c", 745 "$WPA_ROOT_DIR/src/drivers/rfkill.c", 746 ] 747 include_dirs += [ 748 "$WPA_ROOT_DIR/libnl/include/libnl3", 749 "$WPA_ROOT_DIR/wpa_supplicant_lib", 750 ] 751 752 cflags += [ 753 "-DCONFIG_DRIVER_NL80211", 754 "-DCONFIG_LIBNL32", 755 "-DCONFIG_LIBNL20", 756 "-DCONFIG_DEBUG_FILE", 757 "-DCONFIG_IEEE80211AC", 758 "-DCONFIG_IEEE80211AX", 759 ] 760 external_deps += [ "libnl:libnl_share" ] 761 } else { 762 sources += [ 763 "$WPA_ROOT_DIR/src/drivers/wpa_hal.c", 764 "$WPA_ROOT_DIR/src/drivers/wpa_hal_event.c", 765 ] 766 cflags += [ 767 "-DCONFIG_DRIVER_HDF", 768 "-DCONFIG_OHOS_P2P", 769 ] 770 } 771 if ("${CONFIG_HISI}" == "true") { 772 sources += [ "$WPA_ROOT_DIR/wpa_supplicant_lib/driver_nl80211_hisi.c" ] 773 cflags += [ 774 "-DCONFIG_DRIVER_NL80211_HISI", 775 "-DCONFIG_P2P_160M", 776 ] 777 if (use_musl) { 778 cflags += [ "-DCONFIG_DRIVER_NL80211_HISI_TRUNK" ] 779 } 780 } 781 cflags += ext_cflags 782 783 if (wpa_supplicant_vendor_ext) { 784 sources += wpa_vendor_ext_src 785 external_deps += [ "cJSON:cjson" ] 786 if (defined(global_parts_info.hiviewdfx_hisysevent)) { 787 external_deps += [ "hisysevent:libhisysevent" ] 788 } 789 } 790 if ("${CONFIG_EAPAUTH}" == "true") { 791 cflags += [ "-DCONFIG_EAP_AUTH" ] 792 } 793 configs = [ ":wpa_warnings" ] 794 install_images = [ "updater" ] 795 part_name = "wpa_supplicant" 796 subsystem_name = "thirdparty" 797} 798 799ohos_shared_library("wpa") { 800 sanitize = { 801 cfi = true 802 cfi_cross_dso = true 803 debug = false 804 } 805 output_name = "wpa" 806 sources = wpa_base_sources 807 808 include_dirs = wpa_base_include_dirs 809 include_dirs += [ "hostapd/ap_ctrl_iface.h" ] 810 811 cflags = [ 812 "-UANDROID", 813 "-fsigned-char", 814 "-DCONFIG_IEEE80211W", 815 "-DCONFIG_IEEE80211R", 816 "-DCONFIG_NO_VLAN", 817 "-DCONFIG_NO_RADIUS", 818 "-DCONFIG_NO_RANDOM_POOL", 819 "-DCONFIG_SHA256", 820 "-DCONFIG_CRYPTO_INTERNAL", 821 "-DCONFIG_INTERNAL_LIBTOMMATH", 822 "-DCONFIG_INTERNAL_SHA384", 823 "-DCONFIG_INTERNAL_SHA512", 824 "-DCONFIG_CTRL_IFACE", 825 "-DCONFIG_IBSS_RSN", 826 "-DIEEE8021X_EAPOL", 827 "-DUSERSPACE_CLIENT_SUPPORT", 828 "-DCONFIG_BACKEND_FILE", 829 "-DCONFIG_NO_CONFIG_BLOBS", 830 "-DCONFIG_NO_ACCOUNTING", 831 "-DEAP_SERVER_IDENTITY", 832 "-DCONFIG_IEEE80211N", 833 "-DHOSTAPD", 834 "-DNEED_AP_MLME", 835 "-DCONFIG_WPS", 836 "-DCONFIG_AP", 837 "-DCONFIG_P2P", 838 "-DEAP_WSC", 839 "-DEAP_SERVER_WSC", 840 "-DEAP_SERVER", 841 "-DCONFIG_GAS", 842 "-DCONFIG_OFFCHANNEL", 843 "-DCONFIG_MAGICLINK", 844 "-DCONFIG_MAGICLINK_PC", 845 "-DCONFIG_OPEN_HARMONY_PATCH", 846 "-DEAP_MSCHAPV2", 847 "-DEAP_TLS", 848 "-DEAP_PEAP", 849 "-DEAP_TTLS", 850 "-DEAP_SIM", 851 "-DEAP_PWD", 852 "-DEAP_MSCHAPv2", 853 "-DCONFIG_SHA256", 854 "-DCONFIG_ECC", 855 "-DEAP_AKA", 856 "-DEAP_AKA_PRIME", 857 "-DEAP_TLS_OPENSSL", 858 "-DCONFIG_SAE", 859 "-DCONFIG_SUITEB192", 860 "-DCONFIG_SHA384", 861 "-DCONFIG_SUITEB", 862 "-DCONFIG_SME", 863 "-DCONFIG_WEP", 864 "-DPKCS12_FUNCS", 865 "-DEAP_GTC", 866 "-DCONFIG_LIBWPA_VENDOR", 867 ] 868 if ("${CONFIG_CTRL_IFACE}" == "udp") { 869 cflags += [ "-DCONFIG_CTRL_IFACE_UDP" ] 870 } else { 871 cflags += [ "-DCONFIG_CTRL_IFACE_UNIX" ] 872 } 873 874 if ("${CONFIG_MLO}" == "true") { 875 cflags += [ "-DCONFIG_MLD_PATCH" ] 876 } 877 878 if (wpa_supplicant_config_wfd) { 879 cflags += [ "-DCONFIG_WIFI_DISPLAY" ] 880 } 881 882 defines = [ 883 "TLS_DEFAULT_CIPHERS = \"DEFAULT:!EXP:!LOW\"", 884 "OPENSSL_SUPPRESS_DEPRECATED", 885 ] 886 887 external_deps = [ "bounds_checking_function:libsec_static" ] 888 if (wpa_supplicant_config_openssl) { 889 external_deps += [ 890 "openssl:libcrypto_shared", 891 "openssl:libssl_shared", 892 ] 893 } 894 external_deps += [ 895 "drivers_peripheral_wlan:hostapd_hdi_client", 896 "drivers_peripheral_wlan:wifi_driver_client", 897 "drivers_peripheral_wlan:wpa_hdi_client", 898 "init:libbegetutil", 899 ] 900 if (wpa_supplicant_config_hilog) { 901 external_deps += [ "hilog:libhilog" ] 902 } 903 904 if ("${CONFIG_DRIVER}" == "nl80211") { 905 sources += [ 906 "$WPA_ROOT_DIR/src/ap/ieee802_11_he.c", 907 "$WPA_ROOT_DIR/src/ap/ieee802_11_vht.c", 908 "$WPA_ROOT_DIR/src/drivers/driver_nl80211.c", 909 "$WPA_ROOT_DIR/src/drivers/driver_nl80211_capa.c", 910 "$WPA_ROOT_DIR/src/drivers/driver_nl80211_event.c", 911 "$WPA_ROOT_DIR/src/drivers/driver_nl80211_monitor.c", 912 "$WPA_ROOT_DIR/src/drivers/driver_nl80211_scan.c", 913 "$WPA_ROOT_DIR/src/drivers/linux_ioctl.c", 914 "$WPA_ROOT_DIR/src/drivers/netlink.c", 915 "$WPA_ROOT_DIR/src/drivers/rfkill.c", 916 ] 917 include_dirs += [ 918 "$WPA_ROOT_DIR/libnl/include/libnl3", 919 "$WPA_ROOT_DIR/wpa_supplicant_lib", 920 ] 921 922 cflags += [ 923 "-DCONFIG_DRIVER_NL80211", 924 "-DCONFIG_LIBNL32", 925 "-DCONFIG_LIBNL20", 926 "-DCONFIG_DEBUG_FILE", 927 "-DCONFIG_IEEE80211AC", 928 "-DCONFIG_IEEE80211AX", 929 ] 930 external_deps += [ "libnl:libnl_share" ] 931 } else { 932 sources += [ 933 "$WPA_ROOT_DIR/src/drivers/wpa_hal.c", 934 "$WPA_ROOT_DIR/src/drivers/wpa_hal_event.c", 935 ] 936 cflags += [ 937 "-DCONFIG_DRIVER_HDF", 938 "-DCONFIG_OHOS_P2P", 939 ] 940 } 941 if ("${CONFIG_HISI}" == "true") { 942 sources += [ "$WPA_ROOT_DIR/wpa_supplicant_lib/driver_nl80211_hisi.c" ] 943 cflags += [ 944 "-DCONFIG_DRIVER_NL80211_HISI", 945 "-DCONFIG_P2P_160M", 946 ] 947 if (use_musl) { 948 cflags += [ "-DCONFIG_DRIVER_NL80211_HISI_TRUNK" ] 949 } 950 } 951 cflags += ext_cflags 952 953 if (wpa_supplicant_ohos_certmgr) { 954 sources += [ "$WPA_ROOT_DIR/wpa_supplicant_lib/wpa_evp_key.c" ] 955 sources += cert_manager_sources 956 external_deps += cert_manager_external_deps 957 include_dirs += cert_manager_include_dirs 958 defines += [ "CONFIG_OHOS_CERTMGR" ] 959 } 960 if (wpa_supplicant_vendor_ext) { 961 sources += wpa_vendor_ext_src 962 external_deps += [ "cJSON:cjson" ] 963 if (defined(global_parts_info.hiviewdfx_hisysevent)) { 964 external_deps += [ "hisysevent:libhisysevent" ] 965 } 966 } 967 if ("${CONFIG_EAPAUTH}" == "true") { 968 cflags += [ "-DCONFIG_EAP_AUTH" ] 969 } 970 971 public_configs = [ ":wpa_base_public_config" ] 972 install_images = [ chipset_base_dir ] 973 configs = [ ":wpa_warnings" ] 974 part_name = "wpa_supplicant" 975 subsystem_name = "thirdparty" 976} 977 978ohos_shared_library("wpa_updater") { 979 sanitize = { 980 cfi = true 981 cfi_cross_dso = true 982 debug = false 983 } 984 output_name = "wpa_updater" 985 sources = wpa_base_sources 986 987 include_dirs = wpa_base_include_dirs 988 989 cflags = [ 990 "-UANDROID", 991 "-fsigned-char", 992 "-DCONFIG_IEEE80211W", 993 "-DCONFIG_NO_VLAN", 994 "-DCONFIG_NO_RADIUS", 995 "-DCONFIG_NO_RANDOM_POOL", 996 "-DCONFIG_SHA256", 997 "-DCONFIG_CRYPTO_INTERNAL", 998 "-DCONFIG_INTERNAL_LIBTOMMATH", 999 "-DCONFIG_INTERNAL_SHA384", 1000 "-DCONFIG_INTERNAL_SHA512", 1001 "-DCONFIG_CTRL_IFACE", 1002 "-DCONFIG_IBSS_RSN", 1003 "-DIEEE8021X_EAPOL", 1004 "-DUSERSPACE_CLIENT_SUPPORT", 1005 "-DCONFIG_BACKEND_FILE", 1006 "-DCONFIG_NO_CONFIG_BLOBS", 1007 "-DCONFIG_NO_ACCOUNTING", 1008 "-DCONFIG_IEEE80211N", 1009 "-DHOSTAPD", 1010 "-DNEED_AP_MLME", 1011 "-DCONFIG_WPS", 1012 "-DCONFIG_AP", 1013 "-DCONFIG_P2P", 1014 "-DCONFIG_GAS", 1015 "-DCONFIG_OFFCHANNEL", 1016 "-DCONFIG_MAGICLINK", 1017 "-DCONFIG_OPEN_HARMONY_PATCH", 1018 "-DCONFIG_SHA256", 1019 "-DCONFIG_ECC", 1020 "-DCONFIG_SAE", 1021 "-DCONFIG_SUITEB192", 1022 "-DCONFIG_SHA384", 1023 "-DCONFIG_SUITEB", 1024 "-DCONFIG_SME", 1025 "-DCONFIG_WEP", 1026 "-DPKCS12_FUNCS", 1027 ] 1028 if ("${CONFIG_CTRL_IFACE}" == "udp") { 1029 cflags += [ "-DCONFIG_CTRL_IFACE_UDP" ] 1030 } else { 1031 cflags += [ "-DCONFIG_CTRL_IFACE_UNIX" ] 1032 } 1033 1034 if (wpa_supplicant_config_wfd) { 1035 cflags += [ "-DCONFIG_WIFI_DISPLAY" ] 1036 } 1037 1038 defines = [ 1039 "TLS_DEFAULT_CIPHERS = \"DEFAULT:!EXP:!LOW\"", 1040 "OPENSSL_SUPPRESS_DEPRECATED", 1041 "OHOS_EUPDATER", 1042 ] 1043 external_deps = [ 1044 "bounds_checking_function:libsec_static", 1045 "drivers_peripheral_wlan:wifi_driver_client", 1046 "drivers_peripheral_wlan:wpa_hdi_client", 1047 "init:libbegetutil", 1048 ] 1049 if (wpa_supplicant_config_openssl) { 1050 external_deps += [ 1051 "openssl:libcrypto_shared", 1052 "openssl:libssl_shared", 1053 ] 1054 } 1055 1056 if (wpa_supplicant_config_hilog) { 1057 external_deps += [ "hilog:libhilog" ] 1058 } 1059 1060 if ("${CONFIG_DRIVER}" == "nl80211") { 1061 sources += [ 1062 "$WPA_ROOT_DIR/src/ap/ieee802_11_he.c", 1063 "$WPA_ROOT_DIR/src/ap/ieee802_11_vht.c", 1064 "$WPA_ROOT_DIR/src/drivers/driver_nl80211.c", 1065 "$WPA_ROOT_DIR/src/drivers/driver_nl80211_capa.c", 1066 "$WPA_ROOT_DIR/src/drivers/driver_nl80211_event.c", 1067 "$WPA_ROOT_DIR/src/drivers/driver_nl80211_monitor.c", 1068 "$WPA_ROOT_DIR/src/drivers/driver_nl80211_scan.c", 1069 "$WPA_ROOT_DIR/src/drivers/linux_ioctl.c", 1070 "$WPA_ROOT_DIR/src/drivers/netlink.c", 1071 "$WPA_ROOT_DIR/src/drivers/rfkill.c", 1072 ] 1073 include_dirs += [ 1074 "$WPA_ROOT_DIR/libnl/include/libnl3", 1075 "$WPA_ROOT_DIR/wpa_supplicant_lib", 1076 ] 1077 1078 cflags += [ 1079 "-DCONFIG_DRIVER_NL80211", 1080 "-DCONFIG_LIBNL32", 1081 "-DCONFIG_LIBNL20", 1082 "-DCONFIG_DEBUG_FILE", 1083 "-DCONFIG_IEEE80211AC", 1084 "-DCONFIG_IEEE80211AX", 1085 ] 1086 external_deps += [ "libnl:libnl_share" ] 1087 } else { 1088 sources += [ 1089 "$WPA_ROOT_DIR/src/drivers/wpa_hal.c", 1090 "$WPA_ROOT_DIR/src/drivers/wpa_hal_event.c", 1091 ] 1092 cflags += [ 1093 "-DCONFIG_DRIVER_HDF", 1094 "-DCONFIG_OHOS_P2P", 1095 ] 1096 } 1097 if ("${CONFIG_HISI}" == "true") { 1098 sources += [ "$WPA_ROOT_DIR/wpa_supplicant_lib/driver_nl80211_hisi.c" ] 1099 cflags += [ "-DCONFIG_DRIVER_NL80211_HISI" ] 1100 if (use_musl) { 1101 cflags += [ "-DCONFIG_DRIVER_NL80211_HISI_TRUNK" ] 1102 } 1103 } 1104 symlink_target_name = [ "libwpa.z.so" ] 1105 configs = [ ":wpa_warnings" ] 1106 part_name = "wpa_supplicant" 1107 subsystem_name = "thirdparty" 1108 install_images = [ "updater" ] 1109} 1110 1111ohos_executable("wpa_cli") { 1112 sources = [ 1113 "$WPA_ROOT_DIR/src/common/cli.c", 1114 "$WPA_ROOT_DIR/src/common/wpa_ctrl.c", 1115 "$WPA_ROOT_DIR/src/utils/${CONFIG_ELOOP}.c", 1116 "$WPA_ROOT_DIR/src/utils/common.c", 1117 "$WPA_ROOT_DIR/src/utils/edit_simple.c", 1118 "$WPA_ROOT_DIR/src/utils/os_${CONFIG_OS}.c", 1119 "$WPA_ROOT_DIR/src/utils/wpa_debug.c", 1120 "$WPA_ROOT_DIR/wpa_supplicant/wpa_cli.c", 1121 ] 1122 1123 include_dirs = [ 1124 "$WPA_ROOT_DIR/src", 1125 "$WPA_ROOT_DIR/src/utils", 1126 "$WPA_ROOT_DIR/src/drivers", 1127 "$WPA_ROOT_DIR/wpa_supplicant", 1128 "$WPA_ROOT_DIR/build/include", 1129 ] 1130 1131 cflags = [ 1132 "-UANDROID", 1133 "-fsigned-char", 1134 "-DCONFIG_IEEE80211W", 1135 "-DCONFIG_NO_VLAN", 1136 "-DCONFIG_NO_RADIUS", 1137 "-DCONFIG_NO_RANDOM_POOL", 1138 "-DCONFIG_SHA256", 1139 "-DCONFIG_CRYPTO_INTERNAL", 1140 "-DCONFIG_INTERNAL_LIBTOMMATH", 1141 "-DCONFIG_INTERNAL_SHA384", 1142 "-DCONFIG_INTERNAL_SHA512", 1143 "-DCONFIG_CTRL_IFACE", 1144 "-DCONFIG_IBSS_RSN", 1145 "-DIEEE8021X_EAPOL", 1146 "-DUSERSPACE_CLIENT_SUPPORT", 1147 "-DCONFIG_BACKEND_FILE", 1148 "-DCONFIG_NO_CONFIG_BLOBS", 1149 "-DCONFIG_WPS", 1150 "-DCONFIG_AP", 1151 "-DCONFIG_P2P", 1152 "-DEAP_WSC", 1153 "-DEAP_SERVER_WSC", 1154 "-DEAP_SERVER", 1155 "-DCONFIG_GAS", 1156 "-DCONFIG_OFFCHANNEL", 1157 "-DCONFIG_MAGICLINK", 1158 "-DCONFIG_DEBUG_FILE", 1159 "-DCONFIG_OPEN_HARMONY_PATCH", 1160 ] 1161 if ("${CONFIG_CTRL_IFACE}" == "udp") { 1162 cflags += [ "-DCONFIG_CTRL_IFACE_UDP" ] 1163 } else { 1164 cflags += [ "-DCONFIG_CTRL_IFACE_UNIX" ] 1165 } 1166 1167 if (wpa_supplicant_config_wfd) { 1168 cflags += [ "-DCONFIG_WIFI_DISPLAY" ] 1169 } 1170 1171 if ("${CONFIG_DRIVER}" == "nl80211") { 1172 include_dirs += [ "$WPA_ROOT_DIR/libnl/include/libnl3" ] 1173 cflags += [ 1174 "-DCONFIG_DRIVER_NL80211", 1175 "-DCONFIG_LIBNL32", 1176 ] 1177 } else { 1178 cflags += [ 1179 "-DCONFIG_DRIVER_HDF", 1180 "-DCONFIG_OHOS_P2P", 1181 ] 1182 } 1183 1184 if (wpa_supplicant_vendor_ext) { 1185 include_dirs += wpa_vendor_ext_inc_path 1186 sources += wpa_vendor_ext_src_cli 1187 cflags += ext_cflags 1188 } 1189 1190 external_deps = [ "init:libbegetutil" ] 1191 if (wpa_supplicant_config_hilog) { 1192 external_deps += [ "hilog:libhilog" ] 1193 } 1194 1195 configs = [ ":wpa_warnings" ] 1196 part_name = "wpa_supplicant" 1197 subsystem_name = "thirdparty" 1198 install_images = [ chipset_base_dir ] 1199} 1200 1201ohos_executable("hostapd_cli") { 1202 sources = [ 1203 "$WPA_ROOT_DIR/hostapd/hostapd_cli.c", 1204 "$WPA_ROOT_DIR/src/common/cli.c", 1205 "$WPA_ROOT_DIR/src/common/wpa_ctrl.c", 1206 "$WPA_ROOT_DIR/src/utils/${CONFIG_ELOOP}.c", 1207 "$WPA_ROOT_DIR/src/utils/common.c", 1208 "$WPA_ROOT_DIR/src/utils/edit_simple.c", 1209 "$WPA_ROOT_DIR/src/utils/os_${CONFIG_OS}.c", 1210 "$WPA_ROOT_DIR/src/utils/wpa_debug.c", 1211 ] 1212 1213 include_dirs = [ 1214 "$WPA_ROOT_DIR/src", 1215 "$WPA_ROOT_DIR/src/utils", 1216 "$WPA_ROOT_DIR/src/drivers", 1217 "$WPA_ROOT_DIR/wpa_supplicant", 1218 "$WPA_ROOT_DIR/build/include", 1219 "$WPA_ROOT_DIR/libnl/include/libnl3", 1220 ] 1221 1222 cflags = [ 1223 "-UANDROID", 1224 "-fsigned-char", 1225 "-DCONFIG_IEEE80211W", 1226 "-DCONFIG_NO_VLAN", 1227 "-DCONFIG_NO_RADIUS", 1228 "-DCONFIG_NO_RANDOM_POOL", 1229 "-DCONFIG_SHA256", 1230 "-DCONFIG_CRYPTO_INTERNAL", 1231 "-DCONFIG_INTERNAL_LIBTOMMATH", 1232 "-DCONFIG_INTERNAL_SHA384", 1233 "-DCONFIG_INTERNAL_SHA512", 1234 "-DCONFIG_CTRL_IFACE", 1235 "-DCONFIG_IBSS_RSN", 1236 "-DIEEE8021X_EAPOL", 1237 "-DUSERSPACE_CLIENT_SUPPORT", 1238 "-DCONFIG_BACKEND_FILE", 1239 "-DCONFIG_NO_CONFIG_BLOBS", 1240 "-DCONFIG_NO_ACCOUNTING", 1241 "-DEAP_SERVER_IDENTITY", 1242 "-DCONFIG_IEEE80211N", 1243 "-DHOSTAPD", 1244 "-DNEED_AP_MLME", 1245 "-DCONFIG_WPS", 1246 "-DCONFIG_AP", 1247 "-DCONFIG_P2P", 1248 "-DEAP_WSC", 1249 "-DEAP_SERVER_WSC", 1250 "-DEAP_SERVER", 1251 "-DCONFIG_GAS", 1252 "-DCONFIG_OFFCHANNEL", 1253 "-DCONFIG_DEBUG_FILE", 1254 "-DCONFIG_OPEN_HARMONY_PATCH", 1255 ] 1256 1257 if ("${CONFIG_CTRL_IFACE}" == "udp") { 1258 cflags += [ "-DCONFIG_CTRL_IFACE_UDP" ] 1259 } else { 1260 cflags += [ "-DCONFIG_CTRL_IFACE_UNIX" ] 1261 } 1262 1263 if (wpa_supplicant_config_wfd) { 1264 cflags += [ "-DCONFIG_WIFI_DISPLAY" ] 1265 } 1266 1267 external_deps = [ "init:libbegetutil" ] 1268 if (wpa_supplicant_config_hilog) { 1269 external_deps += [ "hilog:libhilog" ] 1270 } 1271 1272 if ("${CONFIG_DRIVER}" == "nl80211") { 1273 cflags += [ 1274 "-DCONFIG_DRIVER_NL80211", 1275 "-DCONFIG_LIBNL32", 1276 ] 1277 } else { 1278 cflags += [ 1279 "-DCONFIG_DRIVER_HDF", 1280 "-DCONFIG_OHOS_P2P", 1281 ] 1282 } 1283 configs = [ ":wpa_warnings" ] 1284 part_name = "wpa_supplicant" 1285 subsystem_name = "thirdparty" 1286 install_images = [ chipset_base_dir ] 1287} 1288 1289ohos_executable("wpa_supplicant") { 1290 sources = [ "$WPA_ROOT_DIR/wpa_test/wpa_sample.c" ] 1291 1292 include_dirs = [ "$WPA_ROOT_DIR/build/include" ] 1293 1294 deps = [ ":wpa" ] 1295 1296 if (factory == true || build_variant != "user") { 1297 deps += [ ":wpa_cli" ] 1298 } 1299 1300 configs = [ ":wpa_warnings" ] 1301 cflags = [ 1302 "-DCONFIG_DEBUG_FILE", 1303 "-DCONFIG_OPEN_HARMONY_PATCH", 1304 ] 1305 install_images = [ chipset_base_dir ] 1306 part_name = "wpa_supplicant" 1307 subsystem_name = "thirdparty" 1308} 1309 1310ohos_executable("hostapd") { 1311 sources = [ "$WPA_ROOT_DIR/hostapd_test/hostapd_sample.c" ] 1312 1313 include_dirs = [ "$WPA_ROOT_DIR/build/include" ] 1314 1315 deps = [ ":wpa" ] 1316 1317 configs = [ ":wpa_warnings" ] 1318 cflags = [ 1319 "-DCONFIG_DEBUG_FILE", 1320 "-DCONFIG_OPEN_HARMONY_PATCH", 1321 ] 1322 install_images = [ chipset_base_dir ] 1323 part_name = "wpa_supplicant" 1324 subsystem_name = "thirdparty" 1325} 1326 1327group("wpa_supplicant_test") { 1328 testonly = true 1329 if (wpa_supplicant_vendor_ext) { 1330 deps = [ "//vendor/huawei/foundation/communication/wpa_supplicant_ext/test:wpa_vendor_test" ] 1331 } 1332} 1333