1# 2# Copyright (c) 2024 Nordic Semiconductor ASA 3# 4# SPDX-License-Identifier: Apache-2.0 5# 6 7zephyr_library_named(wifi_credentials) 8zephyr_library_sources(wifi_credentials.c) 9 10if (CONFIG_WIFI_CREDENTIALS_BACKEND_PSA) 11zephyr_library_include_directories( 12 $<TARGET_PROPERTY:tfm,TFM_BINARY_DIR>/api_ns/interface/include 13) 14endif() 15 16zephyr_library_sources_ifdef( 17 CONFIG_WIFI_CREDENTIALS_BACKEND_SETTINGS 18 wifi_credentials_backend_settings.c) 19 20zephyr_library_sources_ifdef( 21 CONFIG_WIFI_CREDENTIALS_BACKEND_PSA 22 wifi_credentials_backend_psa.c) 23 24zephyr_library_sources_ifdef( 25 CONFIG_WIFI_CREDENTIALS_BACKEND_NONE 26 wifi_credentials_backend_none.c) 27 28zephyr_library_sources_ifdef( 29 CONFIG_WIFI_CREDENTIALS_SHELL 30 wifi_credentials_shell.c) 31 32if(WIFI_CREDENTIALS_STATIC_SSID) 33 message(WARNING 34 "Static Wi-Fi configuration is used, please remove before deployment!" 35 ) 36endif() 37 38if(DEFINED CONFIG_WIFI_NM_WPA_SUPPLICANT_CRYPTO_ENTERPRISE AND NOT DEFINED CONFIG_NET_L2_WIFI_SHELL) 39 # Wi-Fi Enterprise test certificates handling 40 set(gen_inc_dir ${ZEPHYR_BINARY_DIR}/misc/generated) 41 set(gen_dir ${gen_inc_dir}/wifi_enterprise_test_certs) 42 if(NOT DEFINED WIFI_TEST_CERTS_DIR) 43 set(WIFI_TEST_CERTS_DIR ${ZEPHYR_BASE}/samples/net/wifi/test_certs/rsa3k) 44 endif() 45 # Create output directory for test certs 46 file(MAKE_DIRECTORY ${gen_dir}) 47 48 # convert .pem files to array data at build time 49 zephyr_include_directories(${gen_inc_dir}) 50 51 foreach(cert_file IN ITEMS 52 ${WIFI_TEST_CERTS_DIR}/client.pem 53 ${WIFI_TEST_CERTS_DIR}/client-key.pem 54 ${WIFI_TEST_CERTS_DIR}/ca.pem 55 ${WIFI_TEST_CERTS_DIR}/client2.pem 56 ${WIFI_TEST_CERTS_DIR}/client-key2.pem 57 ${WIFI_TEST_CERTS_DIR}/ca2.pem 58 ) 59 60 if(EXISTS ${cert_file}) 61 get_filename_component(cert_name ${cert_file} NAME) 62 generate_inc_file_for_target( 63 app 64 ${cert_file} 65 ${gen_dir}/${cert_name}.inc 66 ) 67 else() 68 get_filename_component(cert_name ${cert_file} NAME) 69 file(WRITE ${gen_dir}/${cert_name}.inc "// Empty file generated because ${cert_file} does not exist\n") 70 endif() 71 endforeach() 72 73 # Add explicit dependency on app target for ZEPHYR_CURRENT_LIBRARY, so these 74 # headers are generated at the correct point in the build 75 add_dependencies(${ZEPHYR_CURRENT_LIBRARY} app) 76endif() 77