1e5b75505Sopenharmony_ciALL=hostapd hostapd_cli
2e5b75505Sopenharmony_ciCONFIG_FILE = .config
3e5b75505Sopenharmony_ciifeq ($(KERNEL_TYPE), linux)
4e5b75505Sopenharmony_ciCC=arm-himix410-linux-gcc
5e5b75505Sopenharmony_ciLD=arm-himix410-linux-ld
6e5b75505Sopenharmony_cielse
7e5b75505Sopenharmony_ciCC=../../../../prebuilts/gcc/linux-x86/arm/arm-linux-ohoseabi-gcc/bin/arm-linux-ohoseabi-gcc
8e5b75505Sopenharmony_ciendif
9e5b75505Sopenharmony_ci
10e5b75505Sopenharmony_ciinclude ../src/build.rules
11e5b75505Sopenharmony_ciifndef CFLAGS
12e5b75505Sopenharmony_ciifeq ($(LIB_TYPE),$(KERNEL_TYPE), 1,linux)
13e5b75505Sopenharmony_ciCFLAGS = -fvisibility=hidden -MMD -O2 -g -w -fsigned-char
14e5b75505Sopenharmony_cielse ifeq ($(LIB_TYPE), 1)
15e5b75505Sopenharmony_ciCFLAGS = -fvisibility=hidden -flto -MMD -O2 -g -w -fsigned-char
16e5b75505Sopenharmony_cielse
17e5b75505Sopenharmony_ciCFLAGS = -MMD -O2 -g -w -fsigned-char
18e5b75505Sopenharmony_ciendif
19e5b75505Sopenharmony_ciendif
20e5b75505Sopenharmony_ci
21e5b75505Sopenharmony_ciifdef LIBS
22e5b75505Sopenharmony_ci# If LIBS is set with some global build system defaults, clone those for
23e5b75505Sopenharmony_ci# LIBS_c, LIBS_h, and LIBS_n to cover hostapd_cli, hlr_auc_gw, and
24e5b75505Sopenharmony_ci# nt_password_hash as well.
25e5b75505Sopenharmony_ciifndef LIBS_c
26e5b75505Sopenharmony_ciLIBS_c := $(LIBS)
27e5b75505Sopenharmony_ciendif
28e5b75505Sopenharmony_ciifndef LIBS_h
29e5b75505Sopenharmony_ciLIBS_h := $(LIBS)
30e5b75505Sopenharmony_ciendif
31e5b75505Sopenharmony_ciifndef LIBS_n
32e5b75505Sopenharmony_ciLIBS_n := $(LIBS)
33e5b75505Sopenharmony_ciendif
34e5b75505Sopenharmony_ciifndef LIBS_s
35e5b75505Sopenharmony_ciLIBS_s := $(LIBS)
36e5b75505Sopenharmony_ciendif
37e5b75505Sopenharmony_ciendif
38e5b75505Sopenharmony_ci
39e5b75505Sopenharmony_ciCFLAGS += $(EXTRA_CFLAGS)
40e5b75505Sopenharmony_ciCFLAGS += -I$(abspath ../src)
41e5b75505Sopenharmony_ciCFLAGS += -I$(abspath ../src/utils)
42e5b75505Sopenharmony_ciCFLAGS += -I$(abspath ../src/drivers)
43e5b75505Sopenharmony_ciCFLAGS += -I$(abspath ./)
44e5b75505Sopenharmony_ciCFLAGS += -I$(abspath ../wpa_supplicant)
45e5b75505Sopenharmony_ciCFLAGS += -I$(abspath ../os_dep/include)
46e5b75505Sopenharmony_ciCFLAGS += -I$(abspath ../../../../drivers/framework/include)
47e5b75505Sopenharmony_ciCFLAGS += -I$(abspath ../../../../drivers/framework/include/utils)
48e5b75505Sopenharmony_ciCFLAGS += -I$(abspath ../../../../drivers/framework/utils/include)
49e5b75505Sopenharmony_ciCFLAGS += -I$(abspath ../../../../drivers/framework/include/osal)
50e5b75505Sopenharmony_ciCFLAGS += -I$(abspath ../../../../third_party/bounds_checking_function/include)
51e5b75505Sopenharmony_ciCFLAGS += -I$(abspath ../../../../drivers/framework/ability/sbuf/include)
52e5b75505Sopenharmony_ciCFLAGS += -I$(abspath ../../../../drivers/framework/include/core)
53e5b75505Sopenharmony_ciCFLAGS += -I$(abspath ../../../../drivers/framework/core//adapter/syscall/include)
54e5b75505Sopenharmony_ciCFLAGS += -I$(abspath ../../../../drivers/framework/core/shared/include)
55e5b75505Sopenharmony_ciCFLAGS += -I$(abspath ../../../../drivers/peripheral/wlan/client/include)
56e5b75505Sopenharmony_ciCFLAGS += -I$(abspath ../build/include)
57e5b75505Sopenharmony_ciCFLAGS += -shared -fPIC
58e5b75505Sopenharmony_ciCFLAGS += -fstack-protector-all
59e5b75505Sopenharmony_ciCFLAGS += -DUSERSPACE_CLIENT_SUPPORT
60e5b75505Sopenharmony_ciLIBS += -L$(DEPDIR) -lsec_shared -lhilog_shared -lwifi_driver_client
61e5b75505Sopenharmony_ci
62e5b75505Sopenharmony_ciexport BINDIR ?= /usr/local/bin/
63e5b75505Sopenharmony_ci
64e5b75505Sopenharmony_ciifeq ($(COMPILER_TYPE), clang)
65e5b75505Sopenharmony_ciSYSROOT_PATH ?= ../../../../sysroot
66e5b75505Sopenharmony_ciARCH_CFLAGS ?= --target=arm-liteos-ohos -march=armv7-a -mfloat-abi=softfp
67e5b75505Sopenharmony_ciCC := $(COMPILER_DIR)/bin/clang
68e5b75505Sopenharmony_ciCFLAGS += --sysroot=$(SYSROOT_PATH) $(ARCH_CFLAGS)
69e5b75505Sopenharmony_ciLDFLAGS += --sysroot=$(SYSROOT_PATH) $(ARCH_CFLAGS)
70e5b75505Sopenharmony_ciLDFLAGS += -lc
71e5b75505Sopenharmony_ciendif
72e5b75505Sopenharmony_ci
73e5b75505Sopenharmony_ciifndef CONFIG_NO_GITVER
74e5b75505Sopenharmony_ci# Add VERSION_STR postfix for builds from a git repository
75e5b75505Sopenharmony_ciifeq ($(wildcard ../.git),../.git)
76e5b75505Sopenharmony_ciGITVER := $(shell git describe --dirty=+)
77e5b75505Sopenharmony_ciifneq ($(GITVER),)
78e5b75505Sopenharmony_ciCFLAGS += -DGIT_VERSION_STR_POSTFIX=\"-$(GITVER)\"
79e5b75505Sopenharmony_ciendif
80e5b75505Sopenharmony_ciendif
81e5b75505Sopenharmony_ciendif
82e5b75505Sopenharmony_ci
83e5b75505Sopenharmony_ciifdef CONFIG_TESTING_OPTIONS
84e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_TESTING_OPTIONS
85e5b75505Sopenharmony_ciCONFIG_WPS_TESTING=y
86e5b75505Sopenharmony_ciendif
87e5b75505Sopenharmony_ci
88e5b75505Sopenharmony_ciifndef CONFIG_OS
89e5b75505Sopenharmony_ciifdef CONFIG_NATIVE_WINDOWS
90e5b75505Sopenharmony_ciCONFIG_OS=win32
91e5b75505Sopenharmony_cielse
92e5b75505Sopenharmony_ciCONFIG_OS=unix
93e5b75505Sopenharmony_ciendif
94e5b75505Sopenharmony_ciendif
95e5b75505Sopenharmony_ci
96e5b75505Sopenharmony_ciifeq ($(CONFIG_OS), internal)
97e5b75505Sopenharmony_ciCFLAGS += -DOS_NO_C_LIB_DEFINES
98e5b75505Sopenharmony_ciendif
99e5b75505Sopenharmony_ci
100e5b75505Sopenharmony_ciifdef CONFIG_NATIVE_WINDOWS
101e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_NATIVE_WINDOWS
102e5b75505Sopenharmony_ciLIBS += -lws2_32
103e5b75505Sopenharmony_ciendif
104e5b75505Sopenharmony_ci
105e5b75505Sopenharmony_ciOBJS += ap_main.o
106e5b75505Sopenharmony_ciOBJS += ap_config_file.o
107e5b75505Sopenharmony_ci
108e5b75505Sopenharmony_ciOBJS += ../src/ap/hostapd.o
109e5b75505Sopenharmony_ciOBJS += ../src/ap/wpa_auth_glue.o
110e5b75505Sopenharmony_ciOBJS += ../src/ap/drv_callbacks.o
111e5b75505Sopenharmony_ciOBJS += ../src/ap/ap_drv_ops.o
112e5b75505Sopenharmony_ciOBJS += ../src/ap/utils.o
113e5b75505Sopenharmony_ciOBJS += ../src/ap/authsrv.o
114e5b75505Sopenharmony_ciOBJS += ../src/ap/ieee802_1x.o
115e5b75505Sopenharmony_ciOBJS += ../src/ap/ap_config.o
116e5b75505Sopenharmony_ciOBJS += ../src/ap/eap_user_db.o
117e5b75505Sopenharmony_ciOBJS += ../src/ap/ieee802_11_auth.o
118e5b75505Sopenharmony_ciOBJS += ../src/ap/sta_info.o
119e5b75505Sopenharmony_ciOBJS += ../src/ap/wpa_auth.o
120e5b75505Sopenharmony_ciOBJS += ../src/ap/tkip_countermeasures.o
121e5b75505Sopenharmony_ciOBJS += ../src/ap/ap_mlme.o
122e5b75505Sopenharmony_ciOBJS += ../src/ap/wpa_auth_ie.o
123e5b75505Sopenharmony_ciOBJS += ../src/ap/preauth_auth.o
124e5b75505Sopenharmony_ciOBJS += ../src/ap/pmksa_cache_auth.o
125e5b75505Sopenharmony_ciOBJS += ../src/ap/ieee802_11_shared.o
126e5b75505Sopenharmony_ciOBJS += ../src/ap/beacon.o
127e5b75505Sopenharmony_ciOBJS += ../src/ap/bss_load.o
128e5b75505Sopenharmony_ciOBJS += ../src/ap/neighbor_db.o
129e5b75505Sopenharmony_ciOBJS += ../src/ap/ap_rrm.o
130e5b75505Sopenharmony_ci
131e5b75505Sopenharmony_ciOBJS_c = hostapd_cli.o
132e5b75505Sopenharmony_ciOBJS_c += ../src/common/wpa_ctrl.o
133e5b75505Sopenharmony_ciOBJS_c += ../src/utils/os_$(CONFIG_OS).o
134e5b75505Sopenharmony_ciOBJS_c += ../src/common/cli.o
135e5b75505Sopenharmony_ci
136e5b75505Sopenharmony_ciNEED_RC4=y
137e5b75505Sopenharmony_ciNEED_AES=y
138e5b75505Sopenharmony_ciNEED_MD5=y
139e5b75505Sopenharmony_ciNEED_SHA1=y
140e5b75505Sopenharmony_ci
141e5b75505Sopenharmony_ciOBJS += ../src/drivers/drivers.o
142e5b75505Sopenharmony_ciCFLAGS += -DHOSTAPD
143e5b75505Sopenharmony_ci
144e5b75505Sopenharmony_ciifdef CONFIG_TAXONOMY
145e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_TAXONOMY
146e5b75505Sopenharmony_ciOBJS += ../src/ap/taxonomy.o
147e5b75505Sopenharmony_ciendif
148e5b75505Sopenharmony_ci
149e5b75505Sopenharmony_ciifdef CONFIG_MODULE_TESTS
150e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_MODULE_TESTS
151e5b75505Sopenharmony_ciOBJS += hapd_module_tests.o
152e5b75505Sopenharmony_ciendif
153e5b75505Sopenharmony_ci
154e5b75505Sopenharmony_ciifdef CONFIG_WPA_TRACE
155e5b75505Sopenharmony_ciCFLAGS += -DWPA_TRACE
156e5b75505Sopenharmony_ciOBJS += ../src/utils/trace.o
157e5b75505Sopenharmony_ciHOBJS += ../src/utils/trace.o
158e5b75505Sopenharmony_ciLDFLAGS += -rdynamic
159e5b75505Sopenharmony_ciCFLAGS += -funwind-tables
160e5b75505Sopenharmony_ciifdef CONFIG_WPA_TRACE_BFD
161e5b75505Sopenharmony_ciCFLAGS += -DPACKAGE="hostapd" -DWPA_TRACE_BFD
162e5b75505Sopenharmony_ciLIBS += -lbfd -ldl -liberty -lz
163e5b75505Sopenharmony_ciLIBS_c += -lbfd -ldl -liberty -lz
164e5b75505Sopenharmony_ciLIBS_h += -lbfd -ldl -liberty -lz
165e5b75505Sopenharmony_ciLIBS_n += -lbfd -ldl -liberty -lz
166e5b75505Sopenharmony_ciLIBS_s += -lbfd -ldl -liberty -lz
167e5b75505Sopenharmony_ciendif
168e5b75505Sopenharmony_ciendif
169e5b75505Sopenharmony_ci
170e5b75505Sopenharmony_ciifndef CONFIG_ELOOP
171e5b75505Sopenharmony_ciCONFIG_ELOOP=eloop
172e5b75505Sopenharmony_ciendif
173e5b75505Sopenharmony_ciOBJS += ../src/utils/$(CONFIG_ELOOP).o
174e5b75505Sopenharmony_ciOBJS_c += ../src/utils/$(CONFIG_ELOOP).o
175e5b75505Sopenharmony_ci
176e5b75505Sopenharmony_ciifeq ($(CONFIG_ELOOP), eloop)
177e5b75505Sopenharmony_ci# Using glibc < 2.17 requires -lrt for clock_gettime()
178e5b75505Sopenharmony_ciLIBS += -lrt
179e5b75505Sopenharmony_ciLIBS_c += -lrt
180e5b75505Sopenharmony_ciLIBS_h += -lrt
181e5b75505Sopenharmony_ciLIBS_n += -lrt
182e5b75505Sopenharmony_ciendif
183e5b75505Sopenharmony_ci
184e5b75505Sopenharmony_ciifdef CONFIG_ELOOP_POLL
185e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_ELOOP_POLL
186e5b75505Sopenharmony_ciendif
187e5b75505Sopenharmony_ci
188e5b75505Sopenharmony_ciifdef CONFIG_ELOOP_EPOLL
189e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_ELOOP_EPOLL
190e5b75505Sopenharmony_ciendif
191e5b75505Sopenharmony_ci
192e5b75505Sopenharmony_ciifdef CONFIG_ELOOP_KQUEUE
193e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_ELOOP_KQUEUE
194e5b75505Sopenharmony_ciendif
195e5b75505Sopenharmony_ci
196e5b75505Sopenharmony_ciOBJS += ../src/utils/common.o
197e5b75505Sopenharmony_ciOBJS_c += ../src/utils/common.o
198e5b75505Sopenharmony_ciOBJS += ../src/utils/wpa_debug.o
199e5b75505Sopenharmony_ciOBJS_c += ../src/utils/wpa_debug.o
200e5b75505Sopenharmony_ciOBJS += ../src/utils/wpabuf.o
201e5b75505Sopenharmony_ciOBJS += ../src/utils/os_$(CONFIG_OS).o
202e5b75505Sopenharmony_ciOBJS += ../src/utils/ip_addr.o
203e5b75505Sopenharmony_ciOBJS += ../src/utils/crc32.o
204e5b75505Sopenharmony_ci
205e5b75505Sopenharmony_ciOBJS += ../src/common/ieee802_11_common.o
206e5b75505Sopenharmony_ciOBJS += ../src/common/wpa_common.o
207e5b75505Sopenharmony_ciOBJS += ../src/common/hw_features_common.o
208e5b75505Sopenharmony_ci
209e5b75505Sopenharmony_ciOBJS += ../src/eapol_auth/eapol_auth_sm.o
210e5b75505Sopenharmony_ci
211e5b75505Sopenharmony_ci
212e5b75505Sopenharmony_ciifdef CONFIG_CODE_COVERAGE
213e5b75505Sopenharmony_ciCFLAGS += -O0 -fprofile-arcs -ftest-coverage
214e5b75505Sopenharmony_ciLIBS += -lgcov
215e5b75505Sopenharmony_ciLIBS_c += -lgcov
216e5b75505Sopenharmony_ciLIBS_h += -lgcov
217e5b75505Sopenharmony_ciLIBS_n += -lgcov
218e5b75505Sopenharmony_ciendif
219e5b75505Sopenharmony_ci
220e5b75505Sopenharmony_ciifndef CONFIG_NO_DUMP_STATE
221e5b75505Sopenharmony_ci# define HOSTAPD_DUMP_STATE to include support for dumping internal state
222e5b75505Sopenharmony_ci# through control interface commands (undefine it, if you want to save in
223e5b75505Sopenharmony_ci# binary size)
224e5b75505Sopenharmony_ciCFLAGS += -DHOSTAPD_DUMP_STATE
225e5b75505Sopenharmony_ciOBJS += ../src/eapol_auth/eapol_auth_dump.o
226e5b75505Sopenharmony_ciendif
227e5b75505Sopenharmony_ci
228e5b75505Sopenharmony_ciifdef CONFIG_NO_RADIUS
229e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_NO_RADIUS
230e5b75505Sopenharmony_ciCONFIG_NO_ACCOUNTING=y
231e5b75505Sopenharmony_cielse
232e5b75505Sopenharmony_ciOBJS += ../src/radius/radius.o
233e5b75505Sopenharmony_ciOBJS += ../src/radius/radius_client.o
234e5b75505Sopenharmony_ciOBJS += ../src/radius/radius_das.o
235e5b75505Sopenharmony_ciendif
236e5b75505Sopenharmony_ci
237e5b75505Sopenharmony_ciifdef CONFIG_NO_ACCOUNTING
238e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_NO_ACCOUNTING
239e5b75505Sopenharmony_cielse
240e5b75505Sopenharmony_ciOBJS += ../src/ap/accounting.o
241e5b75505Sopenharmony_ciendif
242e5b75505Sopenharmony_ci
243e5b75505Sopenharmony_ciifdef CONFIG_NO_VLAN
244e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_NO_VLAN
245e5b75505Sopenharmony_cielse
246e5b75505Sopenharmony_ciOBJS += ../src/ap/vlan_init.o
247e5b75505Sopenharmony_ciOBJS += ../src/ap/vlan_ifconfig.o
248e5b75505Sopenharmony_ciOBJS += ../src/ap/vlan.o
249e5b75505Sopenharmony_ciifdef CONFIG_FULL_DYNAMIC_VLAN
250e5b75505Sopenharmony_ci# Define CONFIG_FULL_DYNAMIC_VLAN to have hostapd manipulate bridges
251e5b75505Sopenharmony_ci# and VLAN interfaces for the VLAN feature.
252e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_FULL_DYNAMIC_VLAN
253e5b75505Sopenharmony_ciOBJS += ../src/ap/vlan_full.o
254e5b75505Sopenharmony_ciifdef CONFIG_VLAN_NETLINK
255e5b75505Sopenharmony_ciOBJS += ../src/ap/vlan_util.o
256e5b75505Sopenharmony_cielse
257e5b75505Sopenharmony_ciOBJS += ../src/ap/vlan_ioctl.o
258e5b75505Sopenharmony_ciendif
259e5b75505Sopenharmony_ciendif
260e5b75505Sopenharmony_ciendif
261e5b75505Sopenharmony_ci
262e5b75505Sopenharmony_ciifdef CONFIG_NO_CTRL_IFACE
263e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_NO_CTRL_IFACE
264e5b75505Sopenharmony_cielse
265e5b75505Sopenharmony_ciifeq ($(CONFIG_CTRL_IFACE), udp)
266e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_CTRL_IFACE_UDP
267e5b75505Sopenharmony_cielse
268e5b75505Sopenharmony_ciifeq ($(CONFIG_CTRL_IFACE), udp6)
269e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_CTRL_IFACE_UDP
270e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_CTRL_IFACE_UDP_IPV6
271e5b75505Sopenharmony_cielse
272e5b75505Sopenharmony_ciifeq ($(CONFIG_CTRL_IFACE), udp-remote)
273e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_CTRL_IFACE_UDP
274e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_CTRL_IFACE_UDP_REMOTE
275e5b75505Sopenharmony_cielse
276e5b75505Sopenharmony_ciifeq ($(CONFIG_CTRL_IFACE), udp6-remote)
277e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_CTRL_IFACE_UDP
278e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_CTRL_IFACE_UDP_REMOTE
279e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_CTRL_IFACE_UDP_IPV6
280e5b75505Sopenharmony_cielse
281e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_CTRL_IFACE_UNIX
282e5b75505Sopenharmony_ciendif
283e5b75505Sopenharmony_ciendif
284e5b75505Sopenharmony_ciendif
285e5b75505Sopenharmony_ciendif
286e5b75505Sopenharmony_ciOBJS += ../src/common/ctrl_iface_common.o
287e5b75505Sopenharmony_ciOBJS += ap_ctrl_iface.o
288e5b75505Sopenharmony_ciOBJS += ../src/ap/ctrl_iface_ap.o
289e5b75505Sopenharmony_ciendif
290e5b75505Sopenharmony_ci
291e5b75505Sopenharmony_ciifndef CONFIG_NO_CTRL_IFACE
292e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_CTRL_IFACE
293e5b75505Sopenharmony_ciendif
294e5b75505Sopenharmony_ci
295e5b75505Sopenharmony_ciifdef CONFIG_RSN_PREAUTH
296e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_RSN_PREAUTH
297e5b75505Sopenharmony_ci#CONFIG_L2_PACKET=y
298e5b75505Sopenharmony_ciendif
299e5b75505Sopenharmony_ci
300e5b75505Sopenharmony_ciifdef CONFIG_HS20
301e5b75505Sopenharmony_ciCONFIG_PROXYARP=y
302e5b75505Sopenharmony_ciendif
303e5b75505Sopenharmony_ci
304e5b75505Sopenharmony_ciifdef CONFIG_PROXYARP
305e5b75505Sopenharmony_ci#CONFIG_L2_PACKET=y
306e5b75505Sopenharmony_ciendif
307e5b75505Sopenharmony_ci
308e5b75505Sopenharmony_ciifdef CONFIG_SUITEB
309e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_SUITEB
310e5b75505Sopenharmony_ciendif
311e5b75505Sopenharmony_ci
312e5b75505Sopenharmony_ciifdef CONFIG_SUITEB192
313e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_SUITEB192
314e5b75505Sopenharmony_ciNEED_SHA384=y
315e5b75505Sopenharmony_ciendif
316e5b75505Sopenharmony_ci
317e5b75505Sopenharmony_ciifdef CONFIG_OCV
318e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_OCV
319e5b75505Sopenharmony_ciOBJS += ../src/common/ocv.o
320e5b75505Sopenharmony_ciendif
321e5b75505Sopenharmony_ci
322e5b75505Sopenharmony_ciifdef CONFIG_IEEE80211R
323e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_IEEE80211R -DCONFIG_IEEE80211R_AP
324e5b75505Sopenharmony_ciOBJS += ../src/ap/wpa_auth_ft.o
325e5b75505Sopenharmony_ciNEED_AES_UNWRAP=y
326e5b75505Sopenharmony_ciNEED_AES_SIV=y
327e5b75505Sopenharmony_ciNEED_ETH_P_OUI=y
328e5b75505Sopenharmony_ciNEED_HMAC_SHA256_KDF=y
329e5b75505Sopenharmony_ciendif
330e5b75505Sopenharmony_ci
331e5b75505Sopenharmony_ciifdef NEED_ETH_P_OUI
332e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_ETH_P_OUI
333e5b75505Sopenharmony_ciOBJS += ../src/ap/eth_p_oui.o
334e5b75505Sopenharmony_ciendif
335e5b75505Sopenharmony_ci
336e5b75505Sopenharmony_ciifdef CONFIG_SAE
337e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_SAE
338e5b75505Sopenharmony_ciOBJS += ../src/common/sae.o
339e5b75505Sopenharmony_ciifdef CONFIG_SAE_PK
340e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_SAE_PK
341e5b75505Sopenharmony_ciOBJS += ../src/common/sae_pk.o
342e5b75505Sopenharmony_ciendif
343e5b75505Sopenharmony_ciNEED_ECC=y
344e5b75505Sopenharmony_ciNEED_DH_GROUPS=y
345e5b75505Sopenharmony_ciNEED_HMAC_SHA256_KDF=y
346e5b75505Sopenharmony_ciNEED_AP_MLME=y
347e5b75505Sopenharmony_ciNEED_DRAGONFLY=y
348e5b75505Sopenharmony_ciendif
349e5b75505Sopenharmony_ci
350e5b75505Sopenharmony_ciifdef CONFIG_OWE
351e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_OWE
352e5b75505Sopenharmony_ciNEED_ECC=y
353e5b75505Sopenharmony_ciNEED_HMAC_SHA256_KDF=y
354e5b75505Sopenharmony_ciNEED_HMAC_SHA384_KDF=y
355e5b75505Sopenharmony_ciNEED_HMAC_SHA512_KDF=y
356e5b75505Sopenharmony_ciNEED_SHA384=y
357e5b75505Sopenharmony_ciNEED_SHA512=y
358e5b75505Sopenharmony_ciendif
359e5b75505Sopenharmony_ci
360e5b75505Sopenharmony_ciifdef CONFIG_AIRTIME_POLICY
361e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_AIRTIME_POLICY
362e5b75505Sopenharmony_ciOBJS += ../src/ap/airtime_policy.o
363e5b75505Sopenharmony_ciendif
364e5b75505Sopenharmony_ci
365e5b75505Sopenharmony_ciifdef CONFIG_FILS
366e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_FILS
367e5b75505Sopenharmony_ciOBJS += ../src/ap/fils_hlp.o
368e5b75505Sopenharmony_ciNEED_SHA384=y
369e5b75505Sopenharmony_ciNEED_AES_SIV=y
370e5b75505Sopenharmony_ciifdef CONFIG_FILS_SK_PFS
371e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_FILS_SK_PFS
372e5b75505Sopenharmony_ciNEED_ECC=y
373e5b75505Sopenharmony_ciendif
374e5b75505Sopenharmony_ciendif
375e5b75505Sopenharmony_ci
376e5b75505Sopenharmony_ciifdef CONFIG_WNM
377e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_WNM -DCONFIG_WNM_AP
378e5b75505Sopenharmony_ciOBJS += ../src/ap/wnm_ap.o
379e5b75505Sopenharmony_ciendif
380e5b75505Sopenharmony_ci
381e5b75505Sopenharmony_ciifdef CONFIG_IEEE80211AC
382e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_IEEE80211AC
383e5b75505Sopenharmony_ciendif
384e5b75505Sopenharmony_ci
385e5b75505Sopenharmony_ciifdef CONFIG_IEEE80211AX
386e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_IEEE80211AX
387e5b75505Sopenharmony_ciOBJS += ../src/ap/ieee802_11_he.o
388e5b75505Sopenharmony_ciendif
389e5b75505Sopenharmony_ci
390e5b75505Sopenharmony_ciifdef CONFIG_MBO
391e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_MBO
392e5b75505Sopenharmony_ciOBJS += ../src/ap/mbo_ap.o
393e5b75505Sopenharmony_ciendif
394e5b75505Sopenharmony_ci
395e5b75505Sopenharmony_ciinclude ../src/drivers/drivers.mak
396e5b75505Sopenharmony_ciOBJS += $(DRV_AP_OBJS)
397e5b75505Sopenharmony_ciCFLAGS += $(DRV_AP_CFLAGS)
398e5b75505Sopenharmony_ciLDFLAGS += $(DRV_AP_LDFLAGS)
399e5b75505Sopenharmony_ciLIBS += $(DRV_AP_LIBS)
400e5b75505Sopenharmony_ci
401e5b75505Sopenharmony_ci#ifdef CONFIG_L2_PACKET
402e5b75505Sopenharmony_ci#ifdef CONFIG_DNET_PCAP
403e5b75505Sopenharmony_ci#ifdef CONFIG_L2_FREEBSD
404e5b75505Sopenharmony_ci#LIBS += -lpcap
405e5b75505Sopenharmony_ci#OBJS += ../src/l2_packet/l2_packet_freebsd.o
406e5b75505Sopenharmony_ci#else
407e5b75505Sopenharmony_ci#LIBS += -ldnet -lpcap
408e5b75505Sopenharmony_ci#OBJS += ../src/l2_packet/l2_packet_pcap.o
409e5b75505Sopenharmony_ci#endif
410e5b75505Sopenharmony_ci#else
411e5b75505Sopenharmony_ci#OBJS += ../src/l2_packet/l2_packet_linux.o
412e5b75505Sopenharmony_ci#endif
413e5b75505Sopenharmony_ci#else
414e5b75505Sopenharmony_ci#OBJS += ../src/l2_packet/l2_packet_none.o
415e5b75505Sopenharmony_ci#endif
416e5b75505Sopenharmony_ci
417e5b75505Sopenharmony_ciifndef CONFIG_L2_PACKET
418e5b75505Sopenharmony_ciCONFIG_L2_PACKET=rtos
419e5b75505Sopenharmony_ciendif
420e5b75505Sopenharmony_ci
421e5b75505Sopenharmony_ciOBJS += ../src/l2_packet/l2_packet_$(CONFIG_L2_PACKET).o
422e5b75505Sopenharmony_ci
423e5b75505Sopenharmony_ciifeq ($(CONFIG_L2_PACKET), pcap)
424e5b75505Sopenharmony_ciifdef CONFIG_WINPCAP
425e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_WINPCAP
426e5b75505Sopenharmony_ciLIBS += -lwpcap -lpacket
427e5b75505Sopenharmony_ciLIBS_w += -lwpcap
428e5b75505Sopenharmony_cielse
429e5b75505Sopenharmony_ciLIBS += -ldnet -lpcap
430e5b75505Sopenharmony_ciendif
431e5b75505Sopenharmony_ciendif
432e5b75505Sopenharmony_ci
433e5b75505Sopenharmony_ciifeq ($(CONFIG_L2_PACKET), winpcap)
434e5b75505Sopenharmony_ciLIBS += -lwpcap -lpacket
435e5b75505Sopenharmony_ciLIBS_w += -lwpcap
436e5b75505Sopenharmony_ciendif
437e5b75505Sopenharmony_ci
438e5b75505Sopenharmony_ciifeq ($(CONFIG_L2_PACKET), freebsd)
439e5b75505Sopenharmony_ciLIBS += -lpcap
440e5b75505Sopenharmony_ciendif
441e5b75505Sopenharmony_ci
442e5b75505Sopenharmony_ci
443e5b75505Sopenharmony_ciifdef CONFIG_ERP
444e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_ERP
445e5b75505Sopenharmony_ciNEED_HMAC_SHA256_KDF=y
446e5b75505Sopenharmony_ciendif
447e5b75505Sopenharmony_ci
448e5b75505Sopenharmony_ciifdef CONFIG_EAP_MD5
449e5b75505Sopenharmony_ciCFLAGS += -DEAP_SERVER_MD5
450e5b75505Sopenharmony_ciOBJS += ../src/eap_server/eap_server_md5.o
451e5b75505Sopenharmony_ciCHAP=y
452e5b75505Sopenharmony_ciendif
453e5b75505Sopenharmony_ci
454e5b75505Sopenharmony_ciifdef CONFIG_EAP_TLS
455e5b75505Sopenharmony_ciCFLAGS += -DEAP_SERVER_TLS
456e5b75505Sopenharmony_ciOBJS += ../src/eap_server/eap_server_tls.o
457e5b75505Sopenharmony_ciTLS_FUNCS=y
458e5b75505Sopenharmony_ciendif
459e5b75505Sopenharmony_ci
460e5b75505Sopenharmony_ciifdef CONFIG_EAP_UNAUTH_TLS
461e5b75505Sopenharmony_ciCFLAGS += -DEAP_SERVER_UNAUTH_TLS
462e5b75505Sopenharmony_ciifndef CONFIG_EAP_TLS
463e5b75505Sopenharmony_ciOBJS += ../src/eap_server/eap_server_tls.o
464e5b75505Sopenharmony_ciTLS_FUNCS=y
465e5b75505Sopenharmony_ciendif
466e5b75505Sopenharmony_ciendif
467e5b75505Sopenharmony_ci
468e5b75505Sopenharmony_ciifdef CONFIG_EAP_PEAP
469e5b75505Sopenharmony_ciCFLAGS += -DEAP_SERVER_PEAP
470e5b75505Sopenharmony_ciOBJS += ../src/eap_server/eap_server_peap.o
471e5b75505Sopenharmony_ciOBJS += ../src/eap_common/eap_peap_common.o
472e5b75505Sopenharmony_ciTLS_FUNCS=y
473e5b75505Sopenharmony_ciCONFIG_EAP_MSCHAPV2=y
474e5b75505Sopenharmony_ciendif
475e5b75505Sopenharmony_ci
476e5b75505Sopenharmony_ciifdef CONFIG_EAP_TTLS
477e5b75505Sopenharmony_ciCFLAGS += -DEAP_SERVER_TTLS
478e5b75505Sopenharmony_ciOBJS += ../src/eap_server/eap_server_ttls.o
479e5b75505Sopenharmony_ciTLS_FUNCS=y
480e5b75505Sopenharmony_ciCHAP=y
481e5b75505Sopenharmony_ciendif
482e5b75505Sopenharmony_ci
483e5b75505Sopenharmony_ciifdef CONFIG_EAP_MSCHAPV2
484e5b75505Sopenharmony_ciCFLAGS += -DEAP_SERVER_MSCHAPV2
485e5b75505Sopenharmony_ciOBJS += ../src/eap_server/eap_server_mschapv2.o
486e5b75505Sopenharmony_ciMS_FUNCS=y
487e5b75505Sopenharmony_ciendif
488e5b75505Sopenharmony_ci
489e5b75505Sopenharmony_ciifdef CONFIG_EAP_GTC
490e5b75505Sopenharmony_ciCFLAGS += -DEAP_SERVER_GTC
491e5b75505Sopenharmony_ciOBJS += ../src/eap_server/eap_server_gtc.o
492e5b75505Sopenharmony_ciendif
493e5b75505Sopenharmony_ci
494e5b75505Sopenharmony_ciifdef CONFIG_EAP_SIM
495e5b75505Sopenharmony_ciCFLAGS += -DEAP_SERVER_SIM
496e5b75505Sopenharmony_ciOBJS += ../src/eap_server/eap_server_sim.o
497e5b75505Sopenharmony_ciCONFIG_EAP_SIM_COMMON=y
498e5b75505Sopenharmony_ciNEED_AES_CBC=y
499e5b75505Sopenharmony_ciendif
500e5b75505Sopenharmony_ci
501e5b75505Sopenharmony_ciifdef CONFIG_EAP_AKA
502e5b75505Sopenharmony_ciCFLAGS += -DEAP_SERVER_AKA
503e5b75505Sopenharmony_ciOBJS += ../src/eap_server/eap_server_aka.o
504e5b75505Sopenharmony_ciCONFIG_EAP_SIM_COMMON=y
505e5b75505Sopenharmony_ciNEED_AES_CBC=y
506e5b75505Sopenharmony_ciendif
507e5b75505Sopenharmony_ci
508e5b75505Sopenharmony_ciifdef CONFIG_EAP_AKA_PRIME
509e5b75505Sopenharmony_ciCFLAGS += -DEAP_SERVER_AKA_PRIME
510e5b75505Sopenharmony_ciendif
511e5b75505Sopenharmony_ci
512e5b75505Sopenharmony_ciifdef CONFIG_EAP_SIM_COMMON
513e5b75505Sopenharmony_ciOBJS += ../src/eap_common/eap_sim_common.o
514e5b75505Sopenharmony_ci# Example EAP-SIM/AKA interface for GSM/UMTS authentication. This can be
515e5b75505Sopenharmony_ci# replaced with another file implementing the interface specified in
516e5b75505Sopenharmony_ci# eap_sim_db.h.
517e5b75505Sopenharmony_ciOBJS += ../src/eap_server/eap_sim_db.o
518e5b75505Sopenharmony_ciNEED_FIPS186_2_PRF=y
519e5b75505Sopenharmony_ciendif
520e5b75505Sopenharmony_ci
521e5b75505Sopenharmony_ciifdef CONFIG_EAP_PAX
522e5b75505Sopenharmony_ciCFLAGS += -DEAP_SERVER_PAX
523e5b75505Sopenharmony_ciOBJS += ../src/eap_server/eap_server_pax.o ../src/eap_common/eap_pax_common.o
524e5b75505Sopenharmony_ciendif
525e5b75505Sopenharmony_ci
526e5b75505Sopenharmony_ciifdef CONFIG_EAP_PSK
527e5b75505Sopenharmony_ciCFLAGS += -DEAP_SERVER_PSK
528e5b75505Sopenharmony_ciOBJS += ../src/eap_server/eap_server_psk.o ../src/eap_common/eap_psk_common.o
529e5b75505Sopenharmony_ciNEED_AES_ENCBLOCK=y
530e5b75505Sopenharmony_ciNEED_AES_EAX=y
531e5b75505Sopenharmony_ciendif
532e5b75505Sopenharmony_ci
533e5b75505Sopenharmony_ciifdef CONFIG_EAP_SAKE
534e5b75505Sopenharmony_ciCFLAGS += -DEAP_SERVER_SAKE
535e5b75505Sopenharmony_ciOBJS += ../src/eap_server/eap_server_sake.o ../src/eap_common/eap_sake_common.o
536e5b75505Sopenharmony_ciendif
537e5b75505Sopenharmony_ci
538e5b75505Sopenharmony_ciifdef CONFIG_EAP_GPSK
539e5b75505Sopenharmony_ciCFLAGS += -DEAP_SERVER_GPSK
540e5b75505Sopenharmony_ciOBJS += ../src/eap_server/eap_server_gpsk.o ../src/eap_common/eap_gpsk_common.o
541e5b75505Sopenharmony_ciifdef CONFIG_EAP_GPSK_SHA256
542e5b75505Sopenharmony_ciCFLAGS += -DEAP_GPSK_SHA256
543e5b75505Sopenharmony_ciendif
544e5b75505Sopenharmony_ciendif
545e5b75505Sopenharmony_ci
546e5b75505Sopenharmony_ciifdef CONFIG_EAP_PWD
547e5b75505Sopenharmony_ciCFLAGS += -DEAP_SERVER_PWD
548e5b75505Sopenharmony_ciOBJS += ../src/eap_server/eap_server_pwd.o ../src/eap_common/eap_pwd_common.o
549e5b75505Sopenharmony_ciNEED_ECC=y
550e5b75505Sopenharmony_ciNEED_DRAGONFLY=y
551e5b75505Sopenharmony_ciendif
552e5b75505Sopenharmony_ci
553e5b75505Sopenharmony_ciifdef CONFIG_EAP_EKE
554e5b75505Sopenharmony_ciCFLAGS += -DEAP_SERVER_EKE
555e5b75505Sopenharmony_ciOBJS += ../src/eap_server/eap_server_eke.o ../src/eap_common/eap_eke_common.o
556e5b75505Sopenharmony_ciNEED_DH_GROUPS=y
557e5b75505Sopenharmony_ciNEED_DH_GROUPS_ALL=y
558e5b75505Sopenharmony_ciendif
559e5b75505Sopenharmony_ci
560e5b75505Sopenharmony_ciifdef CONFIG_EAP_VENDOR_TEST
561e5b75505Sopenharmony_ciCFLAGS += -DEAP_SERVER_VENDOR_TEST
562e5b75505Sopenharmony_ciOBJS += ../src/eap_server/eap_server_vendor_test.o
563e5b75505Sopenharmony_ciendif
564e5b75505Sopenharmony_ci
565e5b75505Sopenharmony_ciifdef CONFIG_EAP_FAST
566e5b75505Sopenharmony_ciCFLAGS += -DEAP_SERVER_FAST
567e5b75505Sopenharmony_ciOBJS += ../src/eap_server/eap_server_fast.o
568e5b75505Sopenharmony_ciOBJS += ../src/eap_common/eap_fast_common.o
569e5b75505Sopenharmony_ciTLS_FUNCS=y
570e5b75505Sopenharmony_ciNEED_T_PRF=y
571e5b75505Sopenharmony_ciNEED_AES_UNWRAP=y
572e5b75505Sopenharmony_ciendif
573e5b75505Sopenharmony_ci
574e5b75505Sopenharmony_ciifdef CONFIG_EAP_TEAP
575e5b75505Sopenharmony_ciCFLAGS += -DEAP_SERVER_TEAP
576e5b75505Sopenharmony_ciOBJS += ../src/eap_server/eap_server_teap.o
577e5b75505Sopenharmony_ciOBJS += ../src/eap_common/eap_teap_common.o
578e5b75505Sopenharmony_ciTLS_FUNCS=y
579e5b75505Sopenharmony_ciNEED_T_PRF=y
580e5b75505Sopenharmony_ciNEED_SHA384=y
581e5b75505Sopenharmony_ciNEED_TLS_PRF_SHA256=y
582e5b75505Sopenharmony_ciNEED_TLS_PRF_SHA384=y
583e5b75505Sopenharmony_ciNEED_AES_UNWRAP=y
584e5b75505Sopenharmony_ciendif
585e5b75505Sopenharmony_ci
586e5b75505Sopenharmony_ciifdef CONFIG_WPS
587e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_WPS -DEAP_SERVER_WSC
588e5b75505Sopenharmony_ciOBJS += ../src/utils/uuid.o
589e5b75505Sopenharmony_ciOBJS += ../src/ap/wps_hostapd.o
590e5b75505Sopenharmony_ciOBJS += ../src/eap_server/eap_server_wsc.o ../src/eap_common/eap_wsc_common.o
591e5b75505Sopenharmony_ciOBJS += ../src/wps/wps.o
592e5b75505Sopenharmony_ciOBJS += ../src/wps/wps_common.o
593e5b75505Sopenharmony_ciOBJS += ../src/wps/wps_attr_parse.o
594e5b75505Sopenharmony_ciOBJS += ../src/wps/wps_attr_build.o
595e5b75505Sopenharmony_ciOBJS += ../src/wps/wps_attr_process.o
596e5b75505Sopenharmony_ciOBJS += ../src/wps/wps_dev_attr.o
597e5b75505Sopenharmony_ciOBJS += ../src/wps/wps_enrollee.o
598e5b75505Sopenharmony_ciOBJS += ../src/wps/wps_registrar.o
599e5b75505Sopenharmony_ciNEED_DH_GROUPS=y
600e5b75505Sopenharmony_ciNEED_BASE64=y
601e5b75505Sopenharmony_ciNEED_AES_CBC=y
602e5b75505Sopenharmony_ciNEED_MODEXP=y
603e5b75505Sopenharmony_ciCONFIG_EAP=y
604e5b75505Sopenharmony_ci
605e5b75505Sopenharmony_ciifdef CONFIG_WPS_NFC
606e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_WPS_NFC
607e5b75505Sopenharmony_ciOBJS += ../src/wps/ndef.o
608e5b75505Sopenharmony_ciNEED_WPS_OOB=y
609e5b75505Sopenharmony_ciendif
610e5b75505Sopenharmony_ci
611e5b75505Sopenharmony_ciifdef NEED_WPS_OOB
612e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_WPS_OOB
613e5b75505Sopenharmony_ciendif
614e5b75505Sopenharmony_ci
615e5b75505Sopenharmony_ciifdef CONFIG_WPS_UPNP
616e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_WPS_UPNP
617e5b75505Sopenharmony_ciOBJS += ../src/wps/wps_upnp.o
618e5b75505Sopenharmony_ciOBJS += ../src/wps/wps_upnp_ssdp.o
619e5b75505Sopenharmony_ciOBJS += ../src/wps/wps_upnp_web.o
620e5b75505Sopenharmony_ciOBJS += ../src/wps/wps_upnp_event.o
621e5b75505Sopenharmony_ciOBJS += ../src/wps/wps_upnp_ap.o
622e5b75505Sopenharmony_ciOBJS += ../src/wps/upnp_xml.o
623e5b75505Sopenharmony_ciOBJS += ../src/wps/httpread.o
624e5b75505Sopenharmony_ciOBJS += ../src/wps/http_client.o
625e5b75505Sopenharmony_ciOBJS += ../src/wps/http_server.o
626e5b75505Sopenharmony_ciendif
627e5b75505Sopenharmony_ci
628e5b75505Sopenharmony_ciifdef CONFIG_WPS_STRICT
629e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_WPS_STRICT
630e5b75505Sopenharmony_ciOBJS += ../src/wps/wps_validate.o
631e5b75505Sopenharmony_ciendif
632e5b75505Sopenharmony_ci
633e5b75505Sopenharmony_ciifdef CONFIG_WPS_TESTING
634e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_WPS_TESTING
635e5b75505Sopenharmony_ciendif
636e5b75505Sopenharmony_ci
637e5b75505Sopenharmony_ciendif
638e5b75505Sopenharmony_ci
639e5b75505Sopenharmony_ciifdef CONFIG_DPP
640e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_DPP
641e5b75505Sopenharmony_ciOBJS += ../src/common/dpp.o
642e5b75505Sopenharmony_ciOBJS += ../src/common/dpp_auth.o
643e5b75505Sopenharmony_ciOBJS += ../src/common/dpp_backup.o
644e5b75505Sopenharmony_ciOBJS += ../src/common/dpp_crypto.o
645e5b75505Sopenharmony_ciOBJS += ../src/common/dpp_pkex.o
646e5b75505Sopenharmony_ciOBJS += ../src/common/dpp_reconfig.o
647e5b75505Sopenharmony_ciOBJS += ../src/common/dpp_tcp.o
648e5b75505Sopenharmony_ciOBJS += ../src/ap/dpp_hostapd.o
649e5b75505Sopenharmony_ciOBJS += ../src/ap/gas_query_ap.o
650e5b75505Sopenharmony_ciNEED_AES_SIV=y
651e5b75505Sopenharmony_ciNEED_HMAC_SHA256_KDF=y
652e5b75505Sopenharmony_ciNEED_HMAC_SHA384_KDF=y
653e5b75505Sopenharmony_ciNEED_HMAC_SHA512_KDF=y
654e5b75505Sopenharmony_ciNEED_SHA384=y
655e5b75505Sopenharmony_ciNEED_SHA512=y
656e5b75505Sopenharmony_ciNEED_ECC=y
657e5b75505Sopenharmony_ciNEED_JSON=y
658e5b75505Sopenharmony_ciNEED_GAS=y
659e5b75505Sopenharmony_ciNEED_BASE64=y
660e5b75505Sopenharmony_ciNEED_ASN1=y
661e5b75505Sopenharmony_ciifdef CONFIG_DPP2
662e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_DPP2
663e5b75505Sopenharmony_ciendif
664e5b75505Sopenharmony_ciifdef CONFIG_DPP3
665e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_DPP3
666e5b75505Sopenharmony_ciendif
667e5b75505Sopenharmony_ciendif
668e5b75505Sopenharmony_ci
669e5b75505Sopenharmony_ciifdef CONFIG_PASN
670e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_PASN
671e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_PTKSA_CACHE
672e5b75505Sopenharmony_ciNEED_HMAC_SHA256_KDF=y
673e5b75505Sopenharmony_ciNEED_HMAC_SHA384_KDF=y
674e5b75505Sopenharmony_ciNEED_SHA256=y
675e5b75505Sopenharmony_ciNEED_SHA384=y
676e5b75505Sopenharmony_ciOBJS += ../src/common/ptksa_cache.o
677e5b75505Sopenharmony_ciendif
678e5b75505Sopenharmony_ci
679e5b75505Sopenharmony_ciifdef CONFIG_EAP_IKEV2
680e5b75505Sopenharmony_ciCFLAGS += -DEAP_SERVER_IKEV2
681e5b75505Sopenharmony_ciOBJS += ../src/eap_server/eap_server_ikev2.o ../src/eap_server/ikev2.o
682e5b75505Sopenharmony_ciOBJS += ../src/eap_common/eap_ikev2_common.o ../src/eap_common/ikev2_common.o
683e5b75505Sopenharmony_ciNEED_DH_GROUPS=y
684e5b75505Sopenharmony_ciNEED_DH_GROUPS_ALL=y
685e5b75505Sopenharmony_ciNEED_MODEXP=y
686e5b75505Sopenharmony_ciNEED_CIPHER=y
687e5b75505Sopenharmony_ciendif
688e5b75505Sopenharmony_ci
689e5b75505Sopenharmony_ciifdef CONFIG_EAP_TNC
690e5b75505Sopenharmony_ciCFLAGS += -DEAP_SERVER_TNC
691e5b75505Sopenharmony_ciOBJS += ../src/eap_server/eap_server_tnc.o
692e5b75505Sopenharmony_ciOBJS += ../src/eap_server/tncs.o
693e5b75505Sopenharmony_ciNEED_BASE64=y
694e5b75505Sopenharmony_ciifndef CONFIG_DRIVER_BSD
695e5b75505Sopenharmony_ciLIBS += -ldl
696e5b75505Sopenharmony_ciendif
697e5b75505Sopenharmony_ciendif
698e5b75505Sopenharmony_ci
699e5b75505Sopenharmony_ciifdef CONFIG_MACSEC
700e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_MACSEC
701e5b75505Sopenharmony_ciOBJS += ../src/ap/wpa_auth_kay.o
702e5b75505Sopenharmony_ciOBJS += ../src/pae/ieee802_1x_cp.o
703e5b75505Sopenharmony_ciOBJS += ../src/pae/ieee802_1x_kay.o
704e5b75505Sopenharmony_ciOBJS += ../src/pae/ieee802_1x_key.o
705e5b75505Sopenharmony_ciOBJS += ../src/pae/ieee802_1x_secy_ops.o
706e5b75505Sopenharmony_ciendif
707e5b75505Sopenharmony_ci
708e5b75505Sopenharmony_ci# Basic EAP functionality is needed for EAPOL
709e5b75505Sopenharmony_ciOBJS += ap_eap_register.o
710e5b75505Sopenharmony_ciOBJS += ../src/eap_server/eap_server.o
711e5b75505Sopenharmony_ciOBJS += ../src/eap_common/eap_common.o
712e5b75505Sopenharmony_ciOBJS += ../src/eap_server/eap_server_methods.o
713e5b75505Sopenharmony_ciOBJS += ../src/eap_server/eap_server_identity.o
714e5b75505Sopenharmony_ciCFLAGS += -DEAP_SERVER_IDENTITY
715e5b75505Sopenharmony_ci
716e5b75505Sopenharmony_ciifdef CONFIG_EAP
717e5b75505Sopenharmony_ciCFLAGS += -DEAP_SERVER
718e5b75505Sopenharmony_ciendif
719e5b75505Sopenharmony_ci
720e5b75505Sopenharmony_ciifdef CONFIG_PKCS12
721e5b75505Sopenharmony_ciCFLAGS += -DPKCS12_FUNCS
722e5b75505Sopenharmony_ciendif
723e5b75505Sopenharmony_ci
724e5b75505Sopenharmony_ciifdef NEED_DRAGONFLY
725e5b75505Sopenharmony_ciOBJS += ../src/common/dragonfly.o
726e5b75505Sopenharmony_ciendif
727e5b75505Sopenharmony_ci
728e5b75505Sopenharmony_ciifdef MS_FUNCS
729e5b75505Sopenharmony_ciOBJS += ../src/crypto/ms_funcs.o
730e5b75505Sopenharmony_ciNEED_DES=y
731e5b75505Sopenharmony_ciNEED_MD4=y
732e5b75505Sopenharmony_ciendif
733e5b75505Sopenharmony_ci
734e5b75505Sopenharmony_ciifdef CHAP
735e5b75505Sopenharmony_ciOBJS += ../src/eap_common/chap.o
736e5b75505Sopenharmony_ciendif
737e5b75505Sopenharmony_ci
738e5b75505Sopenharmony_ciifdef TLS_FUNCS
739e5b75505Sopenharmony_ciNEED_DES=y
740e5b75505Sopenharmony_ci# Shared TLS functions (needed for EAP_TLS, EAP_PEAP, and EAP_TTLS)
741e5b75505Sopenharmony_ciCFLAGS += -DEAP_TLS_FUNCS
742e5b75505Sopenharmony_ciOBJS += ../src/eap_server/eap_server_tls_common.o
743e5b75505Sopenharmony_ciNEED_TLS_PRF=y
744e5b75505Sopenharmony_ciendif
745e5b75505Sopenharmony_ci
746e5b75505Sopenharmony_ciifndef CONFIG_TLS
747e5b75505Sopenharmony_ciCONFIG_TLS=openssl
748e5b75505Sopenharmony_ciendif
749e5b75505Sopenharmony_ci
750e5b75505Sopenharmony_ciifdef CONFIG_TLSV11
751e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_TLSV11
752e5b75505Sopenharmony_ciendif
753e5b75505Sopenharmony_ci
754e5b75505Sopenharmony_ciifdef CONFIG_TLSV12
755e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_TLSV12
756e5b75505Sopenharmony_ciendif
757e5b75505Sopenharmony_ci
758e5b75505Sopenharmony_ciifeq ($(CONFIG_TLS), wolfssl)
759e5b75505Sopenharmony_ciCONFIG_CRYPTO=wolfssl
760e5b75505Sopenharmony_ciifdef TLS_FUNCS
761e5b75505Sopenharmony_ciOBJS += ../src/crypto/tls_wolfssl.o
762e5b75505Sopenharmony_ciLIBS += -lwolfssl -lm
763e5b75505Sopenharmony_ciendif
764e5b75505Sopenharmony_ciOBJS += ../src/crypto/crypto_wolfssl.o
765e5b75505Sopenharmony_ciHOBJS += ../src/crypto/crypto_wolfssl.o
766e5b75505Sopenharmony_ciifdef NEED_FIPS186_2_PRF
767e5b75505Sopenharmony_ciOBJS += ../src/crypto/fips_prf_wolfssl.o
768e5b75505Sopenharmony_ciendif
769e5b75505Sopenharmony_ciNEED_TLS_PRF_SHA256=y
770e5b75505Sopenharmony_ciLIBS += -lwolfssl -lm
771e5b75505Sopenharmony_ciLIBS_h += -lwolfssl -lm
772e5b75505Sopenharmony_ciifdef CONFIG_TLS_ADD_DL
773e5b75505Sopenharmony_ciLIBS += -ldl
774e5b75505Sopenharmony_ciLIBS_h += -ldl
775e5b75505Sopenharmony_ciendif
776e5b75505Sopenharmony_ciendif
777e5b75505Sopenharmony_ci
778e5b75505Sopenharmony_ciifeq ($(CONFIG_TLS), openssl)
779e5b75505Sopenharmony_ciCONFIG_CRYPTO=openssl
780e5b75505Sopenharmony_ciifdef TLS_FUNCS
781e5b75505Sopenharmony_ciOBJS += ../src/crypto/tls_openssl.o
782e5b75505Sopenharmony_ciOBJS += ../src/crypto/tls_openssl_ocsp.o
783e5b75505Sopenharmony_ciLIBS += -lssl
784e5b75505Sopenharmony_ciendif
785e5b75505Sopenharmony_ciOBJS += ../src/crypto/crypto_openssl.o
786e5b75505Sopenharmony_ciHOBJS += ../src/crypto/crypto_openssl.o
787e5b75505Sopenharmony_ciSOBJS += ../src/crypto/crypto_openssl.o
788e5b75505Sopenharmony_ciifdef NEED_FIPS186_2_PRF
789e5b75505Sopenharmony_ciOBJS += ../src/crypto/fips_prf_openssl.o
790e5b75505Sopenharmony_ciendif
791e5b75505Sopenharmony_ciNEED_TLS_PRF_SHA256=y
792e5b75505Sopenharmony_ciLIBS += -lcrypto
793e5b75505Sopenharmony_ciLIBS_h += -lcrypto
794e5b75505Sopenharmony_ciLIBS_n += -lcrypto
795e5b75505Sopenharmony_ciLIBS_s += -lcrypto
796e5b75505Sopenharmony_ciifdef CONFIG_TLS_ADD_DL
797e5b75505Sopenharmony_ciLIBS += -ldl
798e5b75505Sopenharmony_ciLIBS_h += -ldl
799e5b75505Sopenharmony_ciLIBS_s += -ldl
800e5b75505Sopenharmony_ciendif
801e5b75505Sopenharmony_ciifndef CONFIG_TLS_DEFAULT_CIPHERS
802e5b75505Sopenharmony_ciCONFIG_TLS_DEFAULT_CIPHERS = "DEFAULT:!EXP:!LOW"
803e5b75505Sopenharmony_ciendif
804e5b75505Sopenharmony_ciCFLAGS += -DTLS_DEFAULT_CIPHERS=\"$(CONFIG_TLS_DEFAULT_CIPHERS)\"
805e5b75505Sopenharmony_ciendif
806e5b75505Sopenharmony_ci
807e5b75505Sopenharmony_ciifeq ($(CONFIG_TLS), gnutls)
808e5b75505Sopenharmony_ciifndef CONFIG_CRYPTO
809e5b75505Sopenharmony_ci# default to libgcrypt
810e5b75505Sopenharmony_ciCONFIG_CRYPTO=gnutls
811e5b75505Sopenharmony_ciendif
812e5b75505Sopenharmony_ciifdef TLS_FUNCS
813e5b75505Sopenharmony_ciOBJS += ../src/crypto/tls_gnutls.o
814e5b75505Sopenharmony_ciLIBS += -lgnutls -lgpg-error
815e5b75505Sopenharmony_ciendif
816e5b75505Sopenharmony_ciOBJS += ../src/crypto/crypto_$(CONFIG_CRYPTO).o
817e5b75505Sopenharmony_ciHOBJS += ../src/crypto/crypto_$(CONFIG_CRYPTO).o
818e5b75505Sopenharmony_ciifdef NEED_FIPS186_2_PRF
819e5b75505Sopenharmony_ciOBJS += ../src/crypto/fips_prf_internal.o
820e5b75505Sopenharmony_ciSHA1OBJS += ../src/crypto/sha1-internal.o
821e5b75505Sopenharmony_ciendif
822e5b75505Sopenharmony_ciifeq ($(CONFIG_CRYPTO), gnutls)
823e5b75505Sopenharmony_ciLIBS += -lgcrypt
824e5b75505Sopenharmony_ciLIBS_h += -lgcrypt
825e5b75505Sopenharmony_ciLIBS_n += -lgcrypt
826e5b75505Sopenharmony_ciCONFIG_INTERNAL_RC4=y
827e5b75505Sopenharmony_ciCONFIG_INTERNAL_DH_GROUP5=y
828e5b75505Sopenharmony_ciendif
829e5b75505Sopenharmony_ciifeq ($(CONFIG_CRYPTO), nettle)
830e5b75505Sopenharmony_ciLIBS += -lnettle -lgmp
831e5b75505Sopenharmony_ciLIBS_p += -lnettle -lgmp
832e5b75505Sopenharmony_ciCONFIG_INTERNAL_RC4=y
833e5b75505Sopenharmony_ciCONFIG_INTERNAL_DH_GROUP5=y
834e5b75505Sopenharmony_ciendif
835e5b75505Sopenharmony_ciendif
836e5b75505Sopenharmony_ci
837e5b75505Sopenharmony_ciifeq ($(CONFIG_TLS), internal)
838e5b75505Sopenharmony_ciifndef CONFIG_CRYPTO
839e5b75505Sopenharmony_ciCONFIG_CRYPTO=internal
840e5b75505Sopenharmony_ciendif
841e5b75505Sopenharmony_ciifdef TLS_FUNCS
842e5b75505Sopenharmony_ciOBJS += ../src/crypto/crypto_internal-rsa.o
843e5b75505Sopenharmony_ciOBJS += ../src/crypto/tls_internal.o
844e5b75505Sopenharmony_ciOBJS += ../src/tls/tlsv1_common.o
845e5b75505Sopenharmony_ciOBJS += ../src/tls/tlsv1_record.o
846e5b75505Sopenharmony_ciOBJS += ../src/tls/tlsv1_cred.o
847e5b75505Sopenharmony_ciOBJS += ../src/tls/tlsv1_server.o
848e5b75505Sopenharmony_ciOBJS += ../src/tls/tlsv1_server_write.o
849e5b75505Sopenharmony_ciOBJS += ../src/tls/tlsv1_server_read.o
850e5b75505Sopenharmony_ciOBJS += ../src/tls/rsa.o
851e5b75505Sopenharmony_ciOBJS += ../src/tls/x509v3.o
852e5b75505Sopenharmony_ciOBJS += ../src/tls/pkcs1.o
853e5b75505Sopenharmony_ciOBJS += ../src/tls/pkcs5.o
854e5b75505Sopenharmony_ciOBJS += ../src/tls/pkcs8.o
855e5b75505Sopenharmony_ciNEED_ASN1=y
856e5b75505Sopenharmony_ciNEED_BASE64=y
857e5b75505Sopenharmony_ciNEED_TLS_PRF=y
858e5b75505Sopenharmony_ciifdef CONFIG_TLSV12
859e5b75505Sopenharmony_ciNEED_TLS_PRF_SHA256=y
860e5b75505Sopenharmony_ciendif
861e5b75505Sopenharmony_ciNEED_MODEXP=y
862e5b75505Sopenharmony_ciNEED_CIPHER=y
863e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_TLS_INTERNAL
864e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_TLS_INTERNAL_SERVER
865e5b75505Sopenharmony_ciendif
866e5b75505Sopenharmony_ciifdef NEED_CIPHER
867e5b75505Sopenharmony_ciNEED_DES=y
868e5b75505Sopenharmony_ciOBJS += ../src/crypto/crypto_internal-cipher.o
869e5b75505Sopenharmony_ciendif
870e5b75505Sopenharmony_ciifdef NEED_MODEXP
871e5b75505Sopenharmony_ciOBJS += ../src/crypto/crypto_internal-modexp.o
872e5b75505Sopenharmony_ciOBJS += ../src/tls/bignum.o
873e5b75505Sopenharmony_ciendif
874e5b75505Sopenharmony_ciifeq ($(CONFIG_CRYPTO), libtomcrypt)
875e5b75505Sopenharmony_ciOBJS += ../src/crypto/crypto_libtomcrypt.o
876e5b75505Sopenharmony_ciLIBS += -ltomcrypt -ltfm
877e5b75505Sopenharmony_ciLIBS_h += -ltomcrypt -ltfm
878e5b75505Sopenharmony_ciCONFIG_INTERNAL_SHA256=y
879e5b75505Sopenharmony_ciCONFIG_INTERNAL_RC4=y
880e5b75505Sopenharmony_ciCONFIG_INTERNAL_DH_GROUP5=y
881e5b75505Sopenharmony_ciendif
882e5b75505Sopenharmony_ciifeq ($(CONFIG_CRYPTO), internal)
883e5b75505Sopenharmony_ciOBJS += ../src/crypto/crypto_internal.o
884e5b75505Sopenharmony_ciNEED_AES_DEC=y
885e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_CRYPTO_INTERNAL
886e5b75505Sopenharmony_ciifdef CONFIG_INTERNAL_LIBTOMMATH
887e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_INTERNAL_LIBTOMMATH
888e5b75505Sopenharmony_ciifdef CONFIG_INTERNAL_LIBTOMMATH_FAST
889e5b75505Sopenharmony_ciCFLAGS += -DLTM_FAST
890e5b75505Sopenharmony_ciendif
891e5b75505Sopenharmony_cielse
892e5b75505Sopenharmony_ciLIBS += -ltommath
893e5b75505Sopenharmony_ciLIBS_h += -ltommath
894e5b75505Sopenharmony_ciendif
895e5b75505Sopenharmony_ciCONFIG_INTERNAL_AES=y
896e5b75505Sopenharmony_ciCONFIG_INTERNAL_DES=y
897e5b75505Sopenharmony_ciCONFIG_INTERNAL_SHA1=y
898e5b75505Sopenharmony_ciCONFIG_INTERNAL_MD4=y
899e5b75505Sopenharmony_ciCONFIG_INTERNAL_MD5=y
900e5b75505Sopenharmony_ciCONFIG_INTERNAL_SHA256=y
901e5b75505Sopenharmony_ciCONFIG_INTERNAL_SHA384=y
902e5b75505Sopenharmony_ciCONFIG_INTERNAL_SHA512=y
903e5b75505Sopenharmony_ciCONFIG_INTERNAL_RC4=y
904e5b75505Sopenharmony_ciCONFIG_INTERNAL_DH_GROUP5=y
905e5b75505Sopenharmony_ciendif
906e5b75505Sopenharmony_ciifeq ($(CONFIG_CRYPTO), cryptoapi)
907e5b75505Sopenharmony_ciOBJS += ../src/crypto/crypto_cryptoapi.o
908e5b75505Sopenharmony_ciOBJS_p += ../src/crypto/crypto_cryptoapi.o
909e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_CRYPTO_CRYPTOAPI
910e5b75505Sopenharmony_ciCONFIG_INTERNAL_SHA256=y
911e5b75505Sopenharmony_ciCONFIG_INTERNAL_RC4=y
912e5b75505Sopenharmony_ciendif
913e5b75505Sopenharmony_ciendif
914e5b75505Sopenharmony_ci
915e5b75505Sopenharmony_ciifeq ($(CONFIG_TLS), linux)
916e5b75505Sopenharmony_ciOBJS += ../src/crypto/crypto_linux.o
917e5b75505Sopenharmony_ciifdef TLS_FUNCS
918e5b75505Sopenharmony_ciOBJS += ../src/crypto/crypto_internal-rsa.o
919e5b75505Sopenharmony_ciOBJS += ../src/crypto/tls_internal.o
920e5b75505Sopenharmony_ciOBJS += ../src/tls/tlsv1_common.o
921e5b75505Sopenharmony_ciOBJS += ../src/tls/tlsv1_record.o
922e5b75505Sopenharmony_ciOBJS += ../src/tls/tlsv1_cred.o
923e5b75505Sopenharmony_ciOBJS += ../src/tls/tlsv1_server.o
924e5b75505Sopenharmony_ciOBJS += ../src/tls/tlsv1_server_write.o
925e5b75505Sopenharmony_ciOBJS += ../src/tls/tlsv1_server_read.o
926e5b75505Sopenharmony_ciOBJS += ../src/tls/rsa.o
927e5b75505Sopenharmony_ciOBJS += ../src/tls/x509v3.o
928e5b75505Sopenharmony_ciOBJS += ../src/tls/pkcs1.o
929e5b75505Sopenharmony_ciOBJS += ../src/tls/pkcs5.o
930e5b75505Sopenharmony_ciOBJS += ../src/tls/pkcs8.o
931e5b75505Sopenharmony_ciNEED_ASN1=y
932e5b75505Sopenharmony_ciNEED_BASE64=y
933e5b75505Sopenharmony_ciNEED_TLS_PRF=y
934e5b75505Sopenharmony_ciifdef CONFIG_TLSV12
935e5b75505Sopenharmony_ciNEED_TLS_PRF_SHA256=y
936e5b75505Sopenharmony_ciendif
937e5b75505Sopenharmony_ciNEED_MODEXP=y
938e5b75505Sopenharmony_ciNEED_CIPHER=y
939e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_TLS_INTERNAL
940e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_TLS_INTERNAL_SERVER
941e5b75505Sopenharmony_ciendif
942e5b75505Sopenharmony_ciifdef NEED_MODEXP
943e5b75505Sopenharmony_ciOBJS += ../src/crypto/crypto_internal-modexp.o
944e5b75505Sopenharmony_ciOBJS += ../src/tls/bignum.o
945e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_INTERNAL_LIBTOMMATH
946e5b75505Sopenharmony_ciCFLAGS += -DLTM_FAST
947e5b75505Sopenharmony_ciendif
948e5b75505Sopenharmony_ciCONFIG_INTERNAL_DH_GROUP5=y
949e5b75505Sopenharmony_ciifdef NEED_FIPS186_2_PRF
950e5b75505Sopenharmony_ciOBJS += ../src/crypto/fips_prf_internal.o
951e5b75505Sopenharmony_ciOBJS += ../src/crypto/sha1-internal.o
952e5b75505Sopenharmony_ciendif
953e5b75505Sopenharmony_ciendif
954e5b75505Sopenharmony_ci
955e5b75505Sopenharmony_ciifeq ($(CONFIG_TLS), none)
956e5b75505Sopenharmony_ciifdef TLS_FUNCS
957e5b75505Sopenharmony_ciOBJS += ../src/crypto/tls_none.o
958e5b75505Sopenharmony_ciCFLAGS += -DEAP_TLS_NONE
959e5b75505Sopenharmony_ciCONFIG_INTERNAL_AES=y
960e5b75505Sopenharmony_ciCONFIG_INTERNAL_SHA1=y
961e5b75505Sopenharmony_ciCONFIG_INTERNAL_MD5=y
962e5b75505Sopenharmony_ciendif
963e5b75505Sopenharmony_ciOBJS += ../src/crypto/crypto_none.o
964e5b75505Sopenharmony_ciOBJS_p += ../src/crypto/crypto_none.o
965e5b75505Sopenharmony_ciCONFIG_INTERNAL_SHA256=y
966e5b75505Sopenharmony_ciCONFIG_INTERNAL_RC4=y
967e5b75505Sopenharmony_ciendif
968e5b75505Sopenharmony_ci
969e5b75505Sopenharmony_ciifndef TLS_FUNCS
970e5b75505Sopenharmony_ciOBJS += ../src/crypto/tls_none.o
971e5b75505Sopenharmony_ciifeq ($(CONFIG_TLS), internal)
972e5b75505Sopenharmony_ciCONFIG_INTERNAL_AES=y
973e5b75505Sopenharmony_ciCONFIG_INTERNAL_SHA1=y
974e5b75505Sopenharmony_ciCONFIG_INTERNAL_MD5=y
975e5b75505Sopenharmony_ciCONFIG_INTERNAL_RC4=y
976e5b75505Sopenharmony_ciendif
977e5b75505Sopenharmony_ciendif
978e5b75505Sopenharmony_ci
979e5b75505Sopenharmony_ciAESOBJS = # none so far
980e5b75505Sopenharmony_ciifdef CONFIG_INTERNAL_AES
981e5b75505Sopenharmony_ciAESOBJS += ../src/crypto/aes-internal.o ../src/crypto/aes-internal-enc.o
982e5b75505Sopenharmony_ciendif
983e5b75505Sopenharmony_ci
984e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), openssl)
985e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), wolfssl)
986e5b75505Sopenharmony_ciAESOBJS += ../src/crypto/aes-wrap.o
987e5b75505Sopenharmony_ciendif
988e5b75505Sopenharmony_ciendif
989e5b75505Sopenharmony_ciifdef NEED_AES_EAX
990e5b75505Sopenharmony_ciAESOBJS += ../src/crypto/aes-eax.o
991e5b75505Sopenharmony_ciNEED_AES_CTR=y
992e5b75505Sopenharmony_ciendif
993e5b75505Sopenharmony_ciifdef NEED_AES_SIV
994e5b75505Sopenharmony_ciAESOBJS += ../src/crypto/aes-siv.o
995e5b75505Sopenharmony_ciNEED_AES_CTR=y
996e5b75505Sopenharmony_ciendif
997e5b75505Sopenharmony_ciifdef NEED_AES_CTR
998e5b75505Sopenharmony_ciAESOBJS += ../src/crypto/aes-ctr.o
999e5b75505Sopenharmony_ciendif
1000e5b75505Sopenharmony_ciifdef NEED_AES_ENCBLOCK
1001e5b75505Sopenharmony_ciAESOBJS += ../src/crypto/aes-encblock.o
1002e5b75505Sopenharmony_ciendif
1003e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), linux)
1004e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), wolfssl)
1005e5b75505Sopenharmony_ciAESOBJS += ../src/crypto/aes-omac1.o
1006e5b75505Sopenharmony_ciendif
1007e5b75505Sopenharmony_ciendif
1008e5b75505Sopenharmony_ciifdef NEED_AES_UNWRAP
1009e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), openssl)
1010e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), linux)
1011e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), wolfssl)
1012e5b75505Sopenharmony_ciNEED_AES_DEC=y
1013e5b75505Sopenharmony_ciAESOBJS += ../src/crypto/aes-unwrap.o
1014e5b75505Sopenharmony_ciendif
1015e5b75505Sopenharmony_ciendif
1016e5b75505Sopenharmony_ciendif
1017e5b75505Sopenharmony_ciendif
1018e5b75505Sopenharmony_ciifdef NEED_AES_CBC
1019e5b75505Sopenharmony_ciNEED_AES_DEC=y
1020e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), openssl)
1021e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), linux)
1022e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), wolfssl)
1023e5b75505Sopenharmony_ciAESOBJS += ../src/crypto/aes-cbc.o
1024e5b75505Sopenharmony_ciendif
1025e5b75505Sopenharmony_ciendif
1026e5b75505Sopenharmony_ciendif
1027e5b75505Sopenharmony_ciendif
1028e5b75505Sopenharmony_ciifdef NEED_AES_DEC
1029e5b75505Sopenharmony_ciifdef CONFIG_INTERNAL_AES
1030e5b75505Sopenharmony_ciAESOBJS += ../src/crypto/aes-internal-dec.o
1031e5b75505Sopenharmony_ciendif
1032e5b75505Sopenharmony_ciendif
1033e5b75505Sopenharmony_ciifdef NEED_AES
1034e5b75505Sopenharmony_ciOBJS += $(AESOBJS)
1035e5b75505Sopenharmony_ciendif
1036e5b75505Sopenharmony_ci
1037e5b75505Sopenharmony_ciifdef NEED_SHA1
1038e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), openssl)
1039e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), linux)
1040e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), gnutls)
1041e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), wolfssl)
1042e5b75505Sopenharmony_ciSHA1OBJS += ../src/crypto/sha1.o
1043e5b75505Sopenharmony_ciendif
1044e5b75505Sopenharmony_ciendif
1045e5b75505Sopenharmony_ciendif
1046e5b75505Sopenharmony_ciendif
1047e5b75505Sopenharmony_ciSHA1OBJS += ../src/crypto/sha1-prf.o
1048e5b75505Sopenharmony_ciifdef CONFIG_INTERNAL_SHA1
1049e5b75505Sopenharmony_ciSHA1OBJS += ../src/crypto/sha1-internal.o
1050e5b75505Sopenharmony_ciifdef NEED_FIPS186_2_PRF
1051e5b75505Sopenharmony_ciSHA1OBJS += ../src/crypto/fips_prf_internal.o
1052e5b75505Sopenharmony_ciendif
1053e5b75505Sopenharmony_ciendif
1054e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), openssl)
1055e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), wolfssl)
1056e5b75505Sopenharmony_ciSHA1OBJS += ../src/crypto/sha1-pbkdf2.o
1057e5b75505Sopenharmony_ciendif
1058e5b75505Sopenharmony_ciendif
1059e5b75505Sopenharmony_ciifdef NEED_T_PRF
1060e5b75505Sopenharmony_ciSHA1OBJS += ../src/crypto/sha1-tprf.o
1061e5b75505Sopenharmony_ciendif
1062e5b75505Sopenharmony_ciifdef NEED_TLS_PRF
1063e5b75505Sopenharmony_ciSHA1OBJS += ../src/crypto/sha1-tlsprf.o
1064e5b75505Sopenharmony_ciendif
1065e5b75505Sopenharmony_ciendif
1066e5b75505Sopenharmony_ci
1067e5b75505Sopenharmony_ciifdef NEED_SHA1
1068e5b75505Sopenharmony_ciOBJS += $(SHA1OBJS)
1069e5b75505Sopenharmony_ciendif
1070e5b75505Sopenharmony_ci
1071e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), openssl)
1072e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), linux)
1073e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), gnutls)
1074e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), wolfssl)
1075e5b75505Sopenharmony_ciOBJS += ../src/crypto/md5.o
1076e5b75505Sopenharmony_ciendif
1077e5b75505Sopenharmony_ciendif
1078e5b75505Sopenharmony_ciendif
1079e5b75505Sopenharmony_ciendif
1080e5b75505Sopenharmony_ci
1081e5b75505Sopenharmony_ciifdef NEED_MD5
1082e5b75505Sopenharmony_ciifdef CONFIG_INTERNAL_MD5
1083e5b75505Sopenharmony_ciOBJS += ../src/crypto/md5-internal.o
1084e5b75505Sopenharmony_ciHOBJS += ../src/crypto/md5-internal.o
1085e5b75505Sopenharmony_ciendif
1086e5b75505Sopenharmony_ciendif
1087e5b75505Sopenharmony_ci
1088e5b75505Sopenharmony_ciifdef NEED_MD4
1089e5b75505Sopenharmony_ciifdef CONFIG_INTERNAL_MD4
1090e5b75505Sopenharmony_ciOBJS += ../src/crypto/md4-internal.o
1091e5b75505Sopenharmony_ciendif
1092e5b75505Sopenharmony_ciendif
1093e5b75505Sopenharmony_ci
1094e5b75505Sopenharmony_ciifdef NEED_DES
1095e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_DES
1096e5b75505Sopenharmony_ciifdef CONFIG_INTERNAL_DES
1097e5b75505Sopenharmony_ciOBJS += ../src/crypto/des-internal.o
1098e5b75505Sopenharmony_ciendif
1099e5b75505Sopenharmony_ciendif
1100e5b75505Sopenharmony_ci
1101e5b75505Sopenharmony_ciifdef CONFIG_NO_RC4
1102e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_NO_RC4
1103e5b75505Sopenharmony_ciendif
1104e5b75505Sopenharmony_ci
1105e5b75505Sopenharmony_ciifdef NEED_RC4
1106e5b75505Sopenharmony_ciifdef CONFIG_INTERNAL_RC4
1107e5b75505Sopenharmony_ciifndef CONFIG_NO_RC4
1108e5b75505Sopenharmony_ciOBJS += ../src/crypto/rc4.o
1109e5b75505Sopenharmony_ciendif
1110e5b75505Sopenharmony_ciendif
1111e5b75505Sopenharmony_ciendif
1112e5b75505Sopenharmony_ci
1113e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_SHA256
1114e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), openssl)
1115e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), linux)
1116e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), gnutls)
1117e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), wolfssl)
1118e5b75505Sopenharmony_ciOBJS += ../src/crypto/sha256.o
1119e5b75505Sopenharmony_ciendif
1120e5b75505Sopenharmony_ciendif
1121e5b75505Sopenharmony_ciendif
1122e5b75505Sopenharmony_ciendif
1123e5b75505Sopenharmony_ciOBJS += ../src/crypto/sha256-prf.o
1124e5b75505Sopenharmony_ciifdef CONFIG_INTERNAL_SHA256
1125e5b75505Sopenharmony_ciOBJS += ../src/crypto/sha256-internal.o
1126e5b75505Sopenharmony_ciendif
1127e5b75505Sopenharmony_ciifdef NEED_TLS_PRF_SHA256
1128e5b75505Sopenharmony_ciOBJS += ../src/crypto/sha256-tlsprf.o
1129e5b75505Sopenharmony_ciendif
1130e5b75505Sopenharmony_ciifdef NEED_TLS_PRF_SHA384
1131e5b75505Sopenharmony_ciOBJS += ../src/crypto/sha384-tlsprf.o
1132e5b75505Sopenharmony_ciendif
1133e5b75505Sopenharmony_ciifdef NEED_HMAC_SHA256_KDF
1134e5b75505Sopenharmony_ciOBJS += ../src/crypto/sha256-kdf.o
1135e5b75505Sopenharmony_ciendif
1136e5b75505Sopenharmony_ciifdef NEED_HMAC_SHA384_KDF
1137e5b75505Sopenharmony_ciOBJS += ../src/crypto/sha384-kdf.o
1138e5b75505Sopenharmony_ciendif
1139e5b75505Sopenharmony_ciifdef NEED_HMAC_SHA512_KDF
1140e5b75505Sopenharmony_ciOBJS += ../src/crypto/sha512-kdf.o
1141e5b75505Sopenharmony_ciendif
1142e5b75505Sopenharmony_ciifdef NEED_SHA384
1143e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_SHA384
1144e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), openssl)
1145e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), linux)
1146e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), gnutls)
1147e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), wolfssl)
1148e5b75505Sopenharmony_ciOBJS += ../src/crypto/sha384.o
1149e5b75505Sopenharmony_ciendif
1150e5b75505Sopenharmony_ciendif
1151e5b75505Sopenharmony_ciendif
1152e5b75505Sopenharmony_ciendif
1153e5b75505Sopenharmony_ciOBJS += ../src/crypto/sha384-prf.o
1154e5b75505Sopenharmony_ciendif
1155e5b75505Sopenharmony_ciifdef NEED_SHA512
1156e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_SHA512
1157e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), openssl)
1158e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), linux)
1159e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), gnutls)
1160e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), wolfssl)
1161e5b75505Sopenharmony_ciOBJS += ../src/crypto/sha512.o
1162e5b75505Sopenharmony_ciendif
1163e5b75505Sopenharmony_ciendif
1164e5b75505Sopenharmony_ciendif
1165e5b75505Sopenharmony_ciendif
1166e5b75505Sopenharmony_ciOBJS += ../src/crypto/sha512-prf.o
1167e5b75505Sopenharmony_ciendif
1168e5b75505Sopenharmony_ci
1169e5b75505Sopenharmony_ciifdef CONFIG_INTERNAL_SHA384
1170e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_INTERNAL_SHA384
1171e5b75505Sopenharmony_ciOBJS += ../src/crypto/sha384-internal.o
1172e5b75505Sopenharmony_ciendif
1173e5b75505Sopenharmony_ci
1174e5b75505Sopenharmony_ciifdef CONFIG_INTERNAL_SHA512
1175e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_INTERNAL_SHA512
1176e5b75505Sopenharmony_ciOBJS += ../src/crypto/sha512-internal.o
1177e5b75505Sopenharmony_ciendif
1178e5b75505Sopenharmony_ci
1179e5b75505Sopenharmony_ciifdef NEED_ASN1
1180e5b75505Sopenharmony_ciOBJS += ../src/tls/asn1.o
1181e5b75505Sopenharmony_ciendif
1182e5b75505Sopenharmony_ci
1183e5b75505Sopenharmony_ciifdef NEED_DH_GROUPS
1184e5b75505Sopenharmony_ciOBJS += ../src/crypto/dh_groups.o
1185e5b75505Sopenharmony_ciendif
1186e5b75505Sopenharmony_ciifdef NEED_DH_GROUPS_ALL
1187e5b75505Sopenharmony_ciCFLAGS += -DALL_DH_GROUPS
1188e5b75505Sopenharmony_ciendif
1189e5b75505Sopenharmony_ciifdef CONFIG_INTERNAL_DH_GROUP5
1190e5b75505Sopenharmony_ciifdef NEED_DH_GROUPS
1191e5b75505Sopenharmony_ciOBJS += ../src/crypto/dh_group5.o
1192e5b75505Sopenharmony_ciendif
1193e5b75505Sopenharmony_ciendif
1194e5b75505Sopenharmony_ci
1195e5b75505Sopenharmony_ciifdef NEED_ECC
1196e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_ECC
1197e5b75505Sopenharmony_ciendif
1198e5b75505Sopenharmony_ci
1199e5b75505Sopenharmony_ciifdef CONFIG_NO_RANDOM_POOL
1200e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_NO_RANDOM_POOL
1201e5b75505Sopenharmony_cielse
1202e5b75505Sopenharmony_ciifdef CONFIG_GETRANDOM
1203e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_GETRANDOM
1204e5b75505Sopenharmony_ciendif
1205e5b75505Sopenharmony_ciOBJS += ../src/crypto/random.o
1206e5b75505Sopenharmony_ciHOBJS += ../src/crypto/random.o
1207e5b75505Sopenharmony_ciHOBJS += ../src/utils/eloop.o
1208e5b75505Sopenharmony_ciHOBJS += $(SHA1OBJS)
1209e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), openssl)
1210e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), linux)
1211e5b75505Sopenharmony_ciifneq ($(CONFIG_TLS), wolfssl)
1212e5b75505Sopenharmony_ciHOBJS += ../src/crypto/md5.o
1213e5b75505Sopenharmony_ciendif
1214e5b75505Sopenharmony_ciendif
1215e5b75505Sopenharmony_ciendif
1216e5b75505Sopenharmony_ciendif
1217e5b75505Sopenharmony_ci
1218e5b75505Sopenharmony_ciifdef CONFIG_RADIUS_SERVER
1219e5b75505Sopenharmony_ciCFLAGS += -DRADIUS_SERVER
1220e5b75505Sopenharmony_ciOBJS += ../src/radius/radius_server.o
1221e5b75505Sopenharmony_ciendif
1222e5b75505Sopenharmony_ci
1223e5b75505Sopenharmony_ciifdef CONFIG_IPV6
1224e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_IPV6
1225e5b75505Sopenharmony_ciendif
1226e5b75505Sopenharmony_ci
1227e5b75505Sopenharmony_ciifdef CONFIG_DRIVER_RADIUS_ACL
1228e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_DRIVER_RADIUS_ACL
1229e5b75505Sopenharmony_ciendif
1230e5b75505Sopenharmony_ci
1231e5b75505Sopenharmony_ciifdef NEED_BASE64
1232e5b75505Sopenharmony_ciOBJS += ../src/utils/base64.o
1233e5b75505Sopenharmony_ciendif
1234e5b75505Sopenharmony_ci
1235e5b75505Sopenharmony_ciifdef NEED_JSON
1236e5b75505Sopenharmony_ciOBJS += ../src/utils/json.o
1237e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_JSON
1238e5b75505Sopenharmony_ciendif
1239e5b75505Sopenharmony_ci
1240e5b75505Sopenharmony_ciifdef NEED_AP_MLME
1241e5b75505Sopenharmony_ciOBJS += ../src/ap/wmm.o
1242e5b75505Sopenharmony_ciOBJS += ../src/ap/ap_list.o
1243e5b75505Sopenharmony_ciOBJS += ../src/ap/ieee802_11.o
1244e5b75505Sopenharmony_ciOBJS += ../src/ap/hw_features.o
1245e5b75505Sopenharmony_ciOBJS += ../src/ap/dfs.o
1246e5b75505Sopenharmony_ciCFLAGS += -DNEED_AP_MLME
1247e5b75505Sopenharmony_ciendif
1248e5b75505Sopenharmony_ciOBJS += ../src/ap/ieee802_11_ht.o
1249e5b75505Sopenharmony_ci
1250e5b75505Sopenharmony_ciifdef CONFIG_IEEE80211AC
1251e5b75505Sopenharmony_ciOBJS += ../src/ap/ieee802_11_vht.o
1252e5b75505Sopenharmony_ciendif
1253e5b75505Sopenharmony_ci
1254e5b75505Sopenharmony_ciifdef CONFIG_P2P_MANAGER
1255e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_P2P_MANAGER
1256e5b75505Sopenharmony_ciOBJS += ../src/ap/p2p_hostapd.o
1257e5b75505Sopenharmony_ciendif
1258e5b75505Sopenharmony_ci
1259e5b75505Sopenharmony_ciifdef CONFIG_HS20
1260e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_HS20
1261e5b75505Sopenharmony_ciOBJS += ../src/ap/hs20.o
1262e5b75505Sopenharmony_ciCONFIG_INTERWORKING=y
1263e5b75505Sopenharmony_ciendif
1264e5b75505Sopenharmony_ci
1265e5b75505Sopenharmony_ciifdef CONFIG_INTERWORKING
1266e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_INTERWORKING
1267e5b75505Sopenharmony_ciNEED_GAS=y
1268e5b75505Sopenharmony_ciendif
1269e5b75505Sopenharmony_ci
1270e5b75505Sopenharmony_ciifdef NEED_GAS
1271e5b75505Sopenharmony_ciOBJS += ../src/common/gas.o
1272e5b75505Sopenharmony_ciOBJS += ../src/ap/gas_serv.o
1273e5b75505Sopenharmony_ciendif
1274e5b75505Sopenharmony_ci
1275e5b75505Sopenharmony_ciifdef CONFIG_PROXYARP
1276e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_PROXYARP
1277e5b75505Sopenharmony_ciOBJS += ../src/ap/x_snoop.o
1278e5b75505Sopenharmony_ciOBJS += ../src/ap/dhcp_snoop.o
1279e5b75505Sopenharmony_ciifdef CONFIG_IPV6
1280e5b75505Sopenharmony_ciOBJS += ../src/ap/ndisc_snoop.o
1281e5b75505Sopenharmony_ciendif
1282e5b75505Sopenharmony_ciendif
1283e5b75505Sopenharmony_ci
1284e5b75505Sopenharmony_ciOBJS += ../src/drivers/driver_common.o
1285e5b75505Sopenharmony_ci
1286e5b75505Sopenharmony_ciifdef CONFIG_WPA_CLI_EDIT
1287e5b75505Sopenharmony_ciOBJS_c += ../src/utils/edit.o
1288e5b75505Sopenharmony_cielse
1289e5b75505Sopenharmony_ciOBJS_c += ../src/utils/edit_simple.o
1290e5b75505Sopenharmony_ciendif
1291e5b75505Sopenharmony_ci
1292e5b75505Sopenharmony_ciifdef CONFIG_ACS
1293e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_ACS
1294e5b75505Sopenharmony_ciOBJS += ../src/ap/acs.o
1295e5b75505Sopenharmony_ciLIBS += -lm
1296e5b75505Sopenharmony_ciendif
1297e5b75505Sopenharmony_ci
1298e5b75505Sopenharmony_ci#ifdef CONFIG_NO_STDOUT_DEBUG
1299e5b75505Sopenharmony_ciifneq ($(DEBUG), 1)
1300e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_WPA_NO_LOG
1301e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_NO_STDOUT_DEBUG
1302e5b75505Sopenharmony_ciendif
1303e5b75505Sopenharmony_ci
1304e5b75505Sopenharmony_ciifdef CONFIG_DEBUG_SYSLOG
1305e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_DEBUG_SYSLOG
1306e5b75505Sopenharmony_ciendif
1307e5b75505Sopenharmony_ci
1308e5b75505Sopenharmony_ciifdef CONFIG_DEBUG_LINUX_TRACING
1309e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_DEBUG_LINUX_TRACING
1310e5b75505Sopenharmony_ciendif
1311e5b75505Sopenharmony_ci
1312e5b75505Sopenharmony_ciifdef CONFIG_DEBUG_FILE
1313e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_DEBUG_FILE
1314e5b75505Sopenharmony_ciendif
1315e5b75505Sopenharmony_ci
1316e5b75505Sopenharmony_ciifdef CONFIG_SQLITE
1317e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_SQLITE
1318e5b75505Sopenharmony_ciLIBS += -lsqlite3
1319e5b75505Sopenharmony_ciLIBS_h += -lsqlite3
1320e5b75505Sopenharmony_ciendif
1321e5b75505Sopenharmony_ci
1322e5b75505Sopenharmony_ciifdef CONFIG_FST
1323e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_FST
1324e5b75505Sopenharmony_ciOBJS += ../src/fst/fst.o
1325e5b75505Sopenharmony_ciOBJS += ../src/fst/fst_group.o
1326e5b75505Sopenharmony_ciOBJS += ../src/fst/fst_iface.o
1327e5b75505Sopenharmony_ciOBJS += ../src/fst/fst_session.o
1328e5b75505Sopenharmony_ciOBJS += ../src/fst/fst_ctrl_aux.o
1329e5b75505Sopenharmony_ciifdef CONFIG_FST_TEST
1330e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_FST_TEST
1331e5b75505Sopenharmony_ciendif
1332e5b75505Sopenharmony_ciifndef CONFIG_NO_CTRL_IFACE
1333e5b75505Sopenharmony_ciOBJS += ../src/fst/fst_ctrl_iface.o
1334e5b75505Sopenharmony_ciendif
1335e5b75505Sopenharmony_ciendif
1336e5b75505Sopenharmony_ci
1337e5b75505Sopenharmony_ciifdef CONFIG_WEP
1338e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_WEP
1339e5b75505Sopenharmony_ciCOPY_OBJS = copy_objs
1340e5b75505Sopenharmony_ciALL=$(COPY_OBJS) hostapd_cli
1341e5b75505Sopenharmony_ci
1342e5b75505Sopenharmony_ciall: verify_config $(ALL)
1343e5b75505Sopenharmony_ci
1344e5b75505Sopenharmony_ciQ=@
1345e5b75505Sopenharmony_ciE=echo
1346e5b75505Sopenharmony_ciifeq ($(V), 1)
1347e5b75505Sopenharmony_ciQ=
1348e5b75505Sopenharmony_ciE=true
1349e5b75505Sopenharmony_ciendif
1350e5b75505Sopenharmony_ci
1351e5b75505Sopenharmony_ciifdef CONFIG_NO_TKIP
1352e5b75505Sopenharmony_ciCFLAGS += -DCONFIG_NO_TKIP
1353e5b75505Sopenharmony_ciendif
1354e5b75505Sopenharmony_ci
1355e5b75505Sopenharmony_ci$(DESTDIR)$(BINDIR)/%: %
1356e5b75505Sopenharmony_ci	install -D $(<) $(@)
1357e5b75505Sopenharmony_ci
1358e5b75505Sopenharmony_ciinstall: $(addprefix $(DESTDIR)$(BINDIR)/,$(ALL))
1359e5b75505Sopenharmony_ci
1360e5b75505Sopenharmony_ci_OBJS_VAR := OBJS
1361e5b75505Sopenharmony_ciinclude ../src/objs.mk
1362e5b75505Sopenharmony_ci
1363e5b75505Sopenharmony_cihostapd: $(OBJS)
1364e5b75505Sopenharmony_ci	$(Q)$(CC) $(LDFLAGS) -o hostapd $(OBJS) $(LIBS)
1365e5b75505Sopenharmony_ci	@$(E) "  LD " $@
1366e5b75505Sopenharmony_ciBCHECK=../src/drivers/build.hostapd
1367e5b75505Sopenharmony_ci
1368e5b75505Sopenharmony_ci$(COPY_OBJS): $(OBJS)
1369e5b75505Sopenharmony_ci	cp $(OBJS) ../build/objs > /dev/null 2>&1
1370e5b75505Sopenharmony_ci
1371e5b75505Sopenharmony_ci#hostapd: $(BCHECK) $(OBJS)
1372e5b75505Sopenharmony_ci#	$(Q)$(CC) $(LDFLAGS) -o hostapd $(OBJS) $(LIBS)
1373e5b75505Sopenharmony_ci#	@$(E) "  LD " $@
1374e5b75505Sopenharmony_ci
1375e5b75505Sopenharmony_ciifdef CONFIG_WPA_TRACE
1376e5b75505Sopenharmony_ciOBJS_c += ../src/utils/trace.o
1377e5b75505Sopenharmony_ciendif
1378e5b75505Sopenharmony_ci
1379e5b75505Sopenharmony_ci_OBJS_VAR := OBJS_c
1380e5b75505Sopenharmony_ciinclude ../src/objs.mk
1381e5b75505Sopenharmony_ci
1382e5b75505Sopenharmony_cihostapd_cli: $(OBJS_c)
1383e5b75505Sopenharmony_ci	$(Q)$(CC) $(LDFLAGS) -o hostapd_cli $(OBJS_c) $(LIBS_c)
1384e5b75505Sopenharmony_ci	@$(E) "  LD " $@
1385e5b75505Sopenharmony_ci
1386e5b75505Sopenharmony_ciNOBJS = nt_password_hash.o ../src/crypto/ms_funcs.o $(SHA1OBJS)
1387e5b75505Sopenharmony_ciNOBJS += ../src/utils/common.o
1388e5b75505Sopenharmony_ciifdef NEED_RC4
1389e5b75505Sopenharmony_ciifdef CONFIG_INTERNAL_RC4
1390e5b75505Sopenharmony_ciifndef CONFIG_NO_RC4
1391e5b75505Sopenharmony_ciNOBJS += ../src/crypto/rc4.o
1392e5b75505Sopenharmony_ciendif
1393e5b75505Sopenharmony_ciendif
1394e5b75505Sopenharmony_ciendif
1395e5b75505Sopenharmony_ciifdef CONFIG_INTERNAL_MD5
1396e5b75505Sopenharmony_ciNOBJS += ../src/crypto/md5-internal.o
1397e5b75505Sopenharmony_ciendif
1398e5b75505Sopenharmony_ciNOBJS += ../src/crypto/crypto_$(CONFIG_CRYPTO).o
1399e5b75505Sopenharmony_ciNOBJS += ../src/utils/os_$(CONFIG_OS).o
1400e5b75505Sopenharmony_ciNOBJS += ../src/utils/wpa_debug.o
1401e5b75505Sopenharmony_ciNOBJS += ../src/utils/wpabuf.o
1402e5b75505Sopenharmony_ciifdef CONFIG_WPA_TRACE
1403e5b75505Sopenharmony_ciNOBJS += ../src/utils/trace.o
1404e5b75505Sopenharmony_ciendif
1405e5b75505Sopenharmony_ci
1406e5b75505Sopenharmony_ciHOBJS += hlr_auc_gw.o ../src/utils/common.o ../src/utils/wpa_debug.o ../src/utils/os_$(CONFIG_OS).o ../src/utils/wpabuf.o ../src/crypto/milenage.o
1407e5b75505Sopenharmony_ciHOBJS += ../src/crypto/aes-encblock.o
1408e5b75505Sopenharmony_ciifdef CONFIG_INTERNAL_AES
1409e5b75505Sopenharmony_ciHOBJS += ../src/crypto/aes-internal.o
1410e5b75505Sopenharmony_ciHOBJS += ../src/crypto/aes-internal-enc.o
1411e5b75505Sopenharmony_ciendif
1412e5b75505Sopenharmony_ciifeq ($(CONFIG_TLS), linux)
1413e5b75505Sopenharmony_ciHOBJS += ../src/crypto/crypto_linux.o
1414e5b75505Sopenharmony_ciendif
1415e5b75505Sopenharmony_ci
1416e5b75505Sopenharmony_ciSOBJS += sae_pk_gen.o
1417e5b75505Sopenharmony_ciSOBJS +=  ../src/utils/common.o
1418e5b75505Sopenharmony_ciSOBJS += ../src/utils/os_$(CONFIG_OS).o
1419e5b75505Sopenharmony_ciSOBJS += ../src/utils/base64.o
1420e5b75505Sopenharmony_ciSOBJS += ../src/utils/wpa_debug.o
1421e5b75505Sopenharmony_ciSOBJS += ../src/utils/wpabuf.o
1422e5b75505Sopenharmony_ciifdef CONFIG_WPA_TRACE
1423e5b75505Sopenharmony_ciSOBJS += ../src/utils/trace.o
1424e5b75505Sopenharmony_ciendif
1425e5b75505Sopenharmony_ciSOBJS += ../src/common/ieee802_11_common.o
1426e5b75505Sopenharmony_ciSOBJS += ../src/common/sae.o
1427e5b75505Sopenharmony_ciSOBJS += ../src/common/sae_pk.o
1428e5b75505Sopenharmony_ciSOBJS += ../src/common/dragonfly.o
1429e5b75505Sopenharmony_ciSOBJS += $(AESOBJS)
1430e5b75505Sopenharmony_ciSOBJS += ../src/crypto/sha256-prf.o
1431e5b75505Sopenharmony_ciSOBJS += ../src/crypto/sha384-prf.o
1432e5b75505Sopenharmony_ciSOBJS += ../src/crypto/sha512-prf.o
1433e5b75505Sopenharmony_ciSOBJS += ../src/crypto/dh_groups.o
1434e5b75505Sopenharmony_ciSOBJS += ../src/crypto/sha256-kdf.o
1435e5b75505Sopenharmony_ciSOBJS += ../src/crypto/sha384-kdf.o
1436e5b75505Sopenharmony_ciSOBJS += ../src/crypto/sha512-kdf.o
1437e5b75505Sopenharmony_ci
1438e5b75505Sopenharmony_ci_OBJS_VAR := NOBJS
1439e5b75505Sopenharmony_ciinclude ../src/objs.mk
1440e5b75505Sopenharmony_ci_OBJS_VAR := HOBJS
1441e5b75505Sopenharmony_ciinclude ../src/objs.mk
1442e5b75505Sopenharmony_ci_OBJS_VAR := SOBJS
1443e5b75505Sopenharmony_ciinclude ../src/objs.mk
1444e5b75505Sopenharmony_ci
1445e5b75505Sopenharmony_cint_password_hash: $(NOBJS)
1446e5b75505Sopenharmony_ci	$(Q)$(CC) $(LDFLAGS) -o nt_password_hash $(NOBJS) $(LIBS_n)
1447e5b75505Sopenharmony_ci	@$(E) "  LD " $@
1448e5b75505Sopenharmony_ci
1449e5b75505Sopenharmony_cihlr_auc_gw: $(HOBJS)
1450e5b75505Sopenharmony_ci	$(Q)$(CC) $(LDFLAGS) -o hlr_auc_gw $(HOBJS) $(LIBS_h)
1451e5b75505Sopenharmony_ci	@$(E) "  LD " $@
1452e5b75505Sopenharmony_ci
1453e5b75505Sopenharmony_cisae_pk_gen: $(SOBJS)
1454e5b75505Sopenharmony_ci	$(Q)$(CC) $(LDFLAGS) -o sae_pk_gen $(SOBJS) $(LIBS_s)
1455e5b75505Sopenharmony_ci	@$(E) "  LD " $@
1456e5b75505Sopenharmony_ci
1457e5b75505Sopenharmony_ci.PHONY: lcov-html
1458e5b75505Sopenharmony_cilcov-html:
1459e5b75505Sopenharmony_ci	lcov -c -d $(BUILDDIR) > lcov.info
1460e5b75505Sopenharmony_ci	genhtml lcov.info --output-directory lcov-html
1461e5b75505Sopenharmony_ci
1462e5b75505Sopenharmony_ciclean: common-clean
1463e5b75505Sopenharmony_ci	rm -f core *~ nt_password_hash hlr_auc_gw
1464e5b75505Sopenharmony_ci	rm -f sae_pk_gen
1465e5b75505Sopenharmony_ci	rm -f lcov.info
1466e5b75505Sopenharmony_ci	rm -rf lcov-html
1467