1 # SPDX-License-Identifier: GPL-2.0-only
3 # Copyright (C) 2006-2021 OpenWrt.org
5 include $(TOPDIR
)/rules.mk
10 PKG_SOURCE_URL
:=http
://w1.fi
/hostap.git
12 PKG_SOURCE_DATE
:=2023-03-29
13 PKG_SOURCE_VERSION
:=bb945b98fefc64887dffb40773a19d77585cee42
14 PKG_MIRROR_HASH
:=1da8a39c7c81ce257994874402a86d00080a6145b5eb5c5fc44b2fae1853fe8d
16 PKG_MAINTAINER
:=Felix Fietkau
<nbd@nbd.name
>
17 PKG_LICENSE
:=BSD-3-Clause
18 PKG_CPE_ID
:=cpe
:/a
:w1.fi
:hostapd
21 PKG_ASLR_PIE_REGULAR
:=1
23 PKG_CONFIG_DEPENDS
:= \
24 CONFIG_PACKAGE_kmod-ath9k \
25 CONFIG_PACKAGE_kmod-cfg80211 \
26 CONFIG_PACKAGE_hostapd \
27 CONFIG_PACKAGE_hostapd-basic \
28 CONFIG_PACKAGE_hostapd-mini \
29 CONFIG_WPA_RFKILL_SUPPORT \
30 CONFIG_DRIVER_11AC_SUPPORT \
31 CONFIG_DRIVER_11AX_SUPPORT \
34 PKG_BUILD_FLAGS
:=gc-sections lto
36 EAPOL_TEST_PROVIDERS
:=eapol-test eapol-test-openssl eapol-test-wolfssl
38 SUPPLICANT_PROVIDERS
:=
42 $(if
$(findstring wpad
,$(BUILD_VARIANT
)),wpad
, \
43 $(if
$(findstring supplicant
,$(BUILD_VARIANT
)),supplicant
, \
47 LOCAL_AND_LIB_VARIANT
=$(patsubst hostapd-
%,%,\
49 $(patsubst supplicant-
%,%,\
53 LOCAL_VARIANT
=$(patsubst %-internal
,%,\
54 $(patsubst %-openssl
,%,\
55 $(patsubst %-wolfssl
,%,\
56 $(patsubst %-mbedtls
,%,\
57 $(LOCAL_AND_LIB_VARIANT
)\
61 $(if
$(findstring openssl
,$(LOCAL_AND_LIB_VARIANT
)),openssl
,\
62 $(if
$(findstring wolfssl
,$(LOCAL_AND_LIB_VARIANT
)),wolfssl
,\
63 $(if
$(findstring mbedtls
,$(LOCAL_AND_LIB_VARIANT
)),mbedtls
,\
67 CONFIG_VARIANT
:=$(LOCAL_VARIANT
)
68 ifeq ($(LOCAL_VARIANT
),mesh
)
72 include $(INCLUDE_DIR
)/package.mk
74 STAMP_CONFIGURED
:=$(STAMP_CONFIGURED
)_
$(CONFIG_WPA_MSG_MIN_PRIORITY
)
76 ifneq ($(CONFIG_DRIVER_11AC_SUPPORT
),)
77 HOSTAPD_IEEE80211AC
:=y
80 ifneq ($(CONFIG_DRIVER_11AX_SUPPORT
),)
81 HOSTAPD_IEEE80211AX
:=y
85 CONFIG_ACS
=$(CONFIG_PACKAGE_kmod-cfg80211
) \
86 CONFIG_DRIVER_NL80211
=$(CONFIG_PACKAGE_kmod-cfg80211
) \
87 CONFIG_IEEE80211AC
=$(HOSTAPD_IEEE80211AC
) \
88 CONFIG_IEEE80211AX
=$(HOSTAPD_IEEE80211AX
) \
89 CONFIG_DPP
=$(CONFIG_WPA_DPP_SUPPORT
) \
90 CONFIG_MBO
=$(CONFIG_WPA_MBO_SUPPORT
)
92 ifeq ($(SSL_VARIANT
),openssl
)
93 DRIVER_MAKEOPTS
+= CONFIG_TLS
=openssl CONFIG_SAE
=y
94 TARGET_LDFLAGS
+= -lcrypto
-lssl
96 ifeq ($(LOCAL_VARIANT
),basic
)
97 DRIVER_MAKEOPTS
+= CONFIG_OWE
=y
99 ifeq ($(LOCAL_VARIANT
),mesh
)
100 DRIVER_MAKEOPTS
+= CONFIG_AP
=y CONFIG_MESH
=y
102 ifeq ($(LOCAL_VARIANT
),full
)
103 DRIVER_MAKEOPTS
+= CONFIG_OWE
=y CONFIG_SUITEB192
=y CONFIG_AP
=y CONFIG_MESH
=y
107 ifeq ($(SSL_VARIANT
),wolfssl
)
108 DRIVER_MAKEOPTS
+= CONFIG_TLS
=wolfssl CONFIG_SAE
=y
109 TARGET_LDFLAGS
+= -lwolfssl
111 ifeq ($(LOCAL_VARIANT
),basic
)
112 DRIVER_MAKEOPTS
+= CONFIG_OWE
=y
114 ifeq ($(LOCAL_VARIANT
),mesh
)
115 DRIVER_MAKEOPTS
+= CONFIG_AP
=y CONFIG_MESH
=y CONFIG_WPS_NFC
=1
117 ifeq ($(LOCAL_VARIANT
),full
)
118 DRIVER_MAKEOPTS
+= CONFIG_OWE
=y CONFIG_SUITEB192
=y CONFIG_AP
=y CONFIG_MESH
=y CONFIG_WPS_NFC
=1
122 ifeq ($(SSL_VARIANT
),mbedtls
)
123 DRIVER_MAKEOPTS
+= CONFIG_TLS
=mbedtls CONFIG_SAE
=y
124 TARGET_LDFLAGS
+= -lmbedcrypto
-lmbedx509
-lmbedtls
126 ifeq ($(LOCAL_VARIANT
),basic
)
127 DRIVER_MAKEOPTS
+= CONFIG_OWE
=y
129 ifeq ($(LOCAL_VARIANT
),mesh
)
130 DRIVER_MAKEOPTS
+= CONFIG_AP
=y CONFIG_MESH
=y CONFIG_WPS_NFC
=1
132 ifeq ($(LOCAL_VARIANT
),full
)
133 DRIVER_MAKEOPTS
+= CONFIG_OWE
=y CONFIG_SUITEB192
=y CONFIG_AP
=y CONFIG_MESH
=y CONFIG_WPS_NFC
=1
137 ifneq ($(LOCAL_TYPE
),hostapd
)
138 ifdef CONFIG_WPA_RFKILL_SUPPORT
139 DRIVER_MAKEOPTS
+= NEED_RFKILL
=y
143 DRV_DEPENDS
:=+PACKAGE_kmod-cfg80211
:libnl-tiny
146 define Package
/hostapd
/Default
150 TITLE
:=IEEE
802.1x Authenticator
151 URL
:=http
://hostap.epitest.fi
/
152 DEPENDS
:=$(DRV_DEPENDS
) +hostapd-common
+libubus
153 EXTRA_DEPENDS
:=hostapd-common
(=$(PKG_VERSION
)-$(PKG_RELEASE
))
154 USERID
:=network
=101:network
=101
156 CONFLICTS
:=$(HOSTAPD_PROVIDERS
)
157 HOSTAPD_PROVIDERS
+=$(1)
160 define Package
/hostapd
161 $(call Package
/hostapd
/Default
,$(1))
162 TITLE
+= (built-in full
)
163 VARIANT
:=full-internal
166 define Package
/hostapd
/description
167 This package contains a full featured IEEE
802.1x
/WPA
/EAP
/RADIUS
171 define Package
/hostapd-openssl
172 $(call Package
/hostapd
/Default
,$(1))
173 TITLE
+= (OpenSSL full
)
174 VARIANT
:=full-openssl
175 DEPENDS
+=+PACKAGE_hostapd-openssl
:libopenssl
178 Package
/hostapd-openssl
/description
= $(Package
/hostapd
/description
)
180 define Package
/hostapd-wolfssl
181 $(call Package
/hostapd
/Default
,$(1))
182 TITLE
+= (wolfSSL full
)
183 VARIANT
:=full-wolfssl
184 DEPENDS
+=+PACKAGE_hostapd-wolfssl
:libwolfssl
187 Package
/hostapd-wolfssl
/description
= $(Package
/hostapd
/description
)
189 define Package
/hostapd-mbedtls
190 $(call Package
/hostapd
/Default
,$(1))
191 TITLE
+= (mbedTLS full
)
192 VARIANT
:=full-mbedtls
193 DEPENDS
+=+PACKAGE_hostapd-mbedtls
:libmbedtls
196 Package
/hostapd-mbedtls
/description
= $(Package
/hostapd
/description
)
198 define Package
/hostapd-basic
199 $(call Package
/hostapd
/Default
,$(1))
200 TITLE
+= (WPA-PSK
, 11r
, 11w
)
204 define Package
/hostapd-basic
/description
205 This package contains a basic IEEE
802.1x
/WPA Authenticator with WPA-PSK
, 802.11r and
802.11w support.
208 define Package
/hostapd-basic-openssl
209 $(call Package
/hostapd
/Default
,$(1))
210 TITLE
+= (WPA-PSK
, 11r and
11w
)
211 VARIANT
:=basic-openssl
212 DEPENDS
+=+PACKAGE_hostapd-basic-openssl
:libopenssl
215 define Package
/hostapd-basic-openssl
/description
216 This package contains a basic IEEE
802.1x
/WPA Authenticator with WPA-PSK
, 802.11r and
802.11w support.
219 define Package
/hostapd-basic-wolfssl
220 $(call Package
/hostapd
/Default
,$(1))
221 TITLE
+= (WPA-PSK
, 11r and
11w
)
222 VARIANT
:=basic-wolfssl
223 DEPENDS
+=+PACKAGE_hostapd-basic-wolfssl
:libwolfssl
226 define Package
/hostapd-basic-wolfssl
/description
227 This package contains a basic IEEE
802.1x
/WPA Authenticator with WPA-PSK
, 802.11r and
802.11w support.
230 define Package
/hostapd-basic-mbedtls
231 $(call Package
/hostapd
/Default
,$(1))
232 TITLE
+= (WPA-PSK
, 11r and
11w
)
233 VARIANT
:=basic-mbedtls
234 DEPENDS
+=+PACKAGE_hostapd-basic-mbedtls
:libmbedtls
237 define Package
/hostapd-basic-mbedtls
/description
238 This package contains a basic IEEE
802.1x
/WPA Authenticator with WPA-PSK
, 802.11r and
802.11w support.
241 define Package
/hostapd-mini
242 $(call Package
/hostapd
/Default
,$(1))
243 TITLE
+= (WPA-PSK only
)
247 define Package
/hostapd-mini
/description
248 This package contains a minimal IEEE
802.1x
/WPA Authenticator
(WPA-PSK only
).
252 define Package
/wpad
/Default
256 TITLE
:=IEEE
802.1x Auth
/Supplicant
257 DEPENDS
:=$(DRV_DEPENDS
) +hostapd-common
+libubus
258 EXTRA_DEPENDS
:=hostapd-common
(=$(PKG_VERSION
)-$(PKG_RELEASE
))
259 USERID
:=network
=101:network
=101
260 URL
:=http
://hostap.epitest.fi
/
261 PROVIDES
:=hostapd wpa-supplicant
262 CONFLICTS
:=$(HOSTAPD_PROVIDERS
) $(SUPPLICANT_PROVIDERS
)
263 HOSTAPD_PROVIDERS
+=$(1)
264 SUPPLICANT_PROVIDERS
+=$(1)
268 $(call Package
/wpad
/Default
,$(1))
269 TITLE
+= (built-in full
)
270 VARIANT
:=wpad-full-internal
273 define Package
/wpad
/description
274 This package contains a full featured IEEE
802.1x
/WPA
/EAP
/RADIUS
275 Authenticator and Supplicant
278 define Package
/wpad-openssl
279 $(call Package
/wpad
/Default
,$(1))
280 TITLE
+= (OpenSSL full
)
281 VARIANT
:=wpad-full-openssl
282 DEPENDS
+=+PACKAGE_wpad-openssl
:libopenssl
285 Package
/wpad-openssl
/description
= $(Package
/wpad
/description
)
287 define Package
/wpad-wolfssl
288 $(call Package
/wpad
/Default
,$(1))
289 TITLE
+= (wolfSSL full
)
290 VARIANT
:=wpad-full-wolfssl
291 DEPENDS
+=+PACKAGE_wpad-wolfssl
:libwolfssl
294 Package
/wpad-wolfssl
/description
= $(Package
/wpad
/description
)
296 define Package
/wpad-mbedtls
297 $(call Package
/wpad
/Default
,$(1))
298 TITLE
+= (mbedTLS full
)
299 VARIANT
:=wpad-full-mbedtls
300 DEPENDS
+=+PACKAGE_wpad-mbedtls
:libmbedtls
303 Package
/wpad-mbedtls
/description
= $(Package
/wpad
/description
)
305 define Package
/wpad-basic
306 $(call Package
/wpad
/Default
,$(1))
307 TITLE
+= (WPA-PSK
, 11r
, 11w
)
311 define Package
/wpad-basic
/description
312 This package contains a basic IEEE
802.1x
/WPA Authenticator and Supplicant with WPA-PSK
, 802.11r and
802.11w support.
315 define Package
/wpad-basic-openssl
316 $(call Package
/wpad
/Default
,$(1))
317 TITLE
+= (OpenSSL
, 11r
, 11w
)
318 VARIANT
:=wpad-basic-openssl
319 DEPENDS
+=+PACKAGE_wpad-basic-openssl
:libopenssl
322 define Package
/wpad-basic-openssl
/description
323 This package contains a basic IEEE
802.1x
/WPA Authenticator and Supplicant with WPA-PSK
, SAE
(WPA3-Personal
), 802.11r and
802.11w support.
326 define Package
/wpad-basic-wolfssl
327 $(call Package
/wpad
/Default
,$(1))
328 TITLE
+= (wolfSSL
, 11r
, 11w
)
329 VARIANT
:=wpad-basic-wolfssl
330 DEPENDS
+=+PACKAGE_wpad-basic-wolfssl
:libwolfssl
333 define Package
/wpad-basic-wolfssl
/description
334 This package contains a basic IEEE
802.1x
/WPA Authenticator and Supplicant with WPA-PSK
, SAE
(WPA3-Personal
), 802.11r and
802.11w support.
337 define Package
/wpad-basic-mbedtls
338 $(call Package
/wpad
/Default
,$(1))
339 TITLE
+= (mbedTLS
, 11r
, 11w
)
340 VARIANT
:=wpad-basic-mbedtls
341 DEPENDS
+=+PACKAGE_wpad-basic-mbedtls
:libmbedtls
344 define Package
/wpad-basic-mbedtls
/description
345 This package contains a basic IEEE
802.1x
/WPA Authenticator and Supplicant with WPA-PSK
, SAE
(WPA3-Personal
), 802.11r and
802.11w support.
348 define Package
/wpad-mini
349 $(call Package
/wpad
/Default
,$(1))
350 TITLE
+= (WPA-PSK only
)
354 define Package
/wpad-mini
/description
355 This package contains a minimal IEEE
802.1x
/WPA Authenticator and Supplicant
(WPA-PSK only
).
358 define Package
/wpad-mesh
359 $(call Package
/wpad
/Default
,$(1))
360 DEPENDS
+=@PACKAGE_kmod-cfg80211 @
(!TARGET_uml||BROKEN
)
361 PROVIDES
+=wpa-supplicant-mesh wpad-mesh
364 define Package
/wpad-mesh
/description
365 This package contains a minimal IEEE
802.1x
/WPA Authenticator and Supplicant
(with
802.11s mesh and SAE support
).
368 define Package
/wpad-mesh-openssl
369 $(call Package
/wpad-mesh
,$(1))
370 TITLE
+= (OpenSSL
, 11s
, SAE
)
371 DEPENDS
+=+PACKAGE_wpad-mesh-openssl
:libopenssl
372 VARIANT
:=wpad-mesh-openssl
375 Package
/wpad-mesh-openssl
/description
= $(Package
/wpad-mesh
/description
)
377 define Package
/wpad-mesh-wolfssl
378 $(call Package
/wpad-mesh
,$(1))
379 TITLE
+= (wolfSSL
, 11s
, SAE
)
380 DEPENDS
+=+PACKAGE_wpad-mesh-wolfssl
:libwolfssl
381 VARIANT
:=wpad-mesh-wolfssl
384 Package
/wpad-mesh-wolfssl
/description
= $(Package
/wpad-mesh
/description
)
386 define Package
/wpad-mesh-mbedtls
387 $(call Package
/wpad-mesh
,$(1))
388 TITLE
+= (mbedTLS
, 11s
, SAE
)
389 DEPENDS
+=+PACKAGE_wpad-mesh-mbedtls
:libmbedtls
390 VARIANT
:=wpad-mesh-mbedtls
393 Package
/wpad-mesh-mbedtls
/description
= $(Package
/wpad-mesh
/description
)
396 define Package
/wpa-supplicant
/Default
400 TITLE
:=WPA Supplicant
401 URL
:=http
://hostap.epitest.fi
/wpa_supplicant
/
402 DEPENDS
:=$(DRV_DEPENDS
) +hostapd-common
+libubus
403 EXTRA_DEPENDS
:=hostapd-common
(=$(PKG_VERSION
)-$(PKG_RELEASE
))
404 USERID
:=network
=101:network
=101
405 PROVIDES
:=wpa-supplicant
406 CONFLICTS
:=$(SUPPLICANT_PROVIDERS
)
407 SUPPLICANT_PROVIDERS
+=$(1)
410 define Package
/wpa-supplicant
411 $(call Package
/wpa-supplicant
/Default
,$(1))
412 TITLE
+= (built-in full
)
413 VARIANT
:=supplicant-full-internal
416 define Package
/wpa-supplicant-openssl
417 $(call Package
/wpa-supplicant
/Default
,$(1))
418 TITLE
+= (OpenSSL full
)
419 VARIANT
:=supplicant-full-openssl
420 DEPENDS
+=+PACKAGE_wpa-supplicant-openssl
:libopenssl
423 define Package
/wpa-supplicant-wolfssl
424 $(call Package
/wpa-supplicant
/Default
,$(1))
425 TITLE
+= (wolfSSL full
)
426 VARIANT
:=supplicant-full-wolfssl
427 DEPENDS
+=+PACKAGE_wpa-supplicant-wolfssl
:libwolfssl
430 define Package
/wpa-supplicant-mbedtls
431 $(call Package
/wpa-supplicant
/Default
,$(1))
432 TITLE
+= (mbedTLS full
)
433 VARIANT
:=supplicant-full-mbedtls
434 DEPENDS
+=+PACKAGE_wpa-supplicant-mbedtls
:libmbedtls
437 define Package
/wpa-supplicant
/config
438 source
"$(SOURCE)/Config.in"
441 define Package
/wpa-supplicant-p2p
442 $(call Package
/wpa-supplicant
/Default
,$(1))
443 TITLE
+= (Wi-Fi P2P support
)
444 DEPENDS
+=@PACKAGE_kmod-cfg80211
445 VARIANT
:=supplicant-p2p-internal
448 define Package
/wpa-supplicant-mesh
/Default
449 $(call Package
/wpa-supplicant
/Default
,$(1))
450 DEPENDS
+=@PACKAGE_kmod-cfg80211 @
(!TARGET_uml||BROKEN
)
451 PROVIDES
+=wpa-supplicant-mesh
454 define Package
/wpa-supplicant-mesh-openssl
455 $(call Package
/wpa-supplicant-mesh
/Default
,$(1))
456 TITLE
+= (OpenSSL
, 11s
, SAE
)
457 VARIANT
:=supplicant-mesh-openssl
458 DEPENDS
+=+PACKAGE_wpa-supplicant-mesh-openssl
:libopenssl
461 define Package
/wpa-supplicant-mesh-wolfssl
462 $(call Package
/wpa-supplicant-mesh
/Default
,$(1))
463 TITLE
+= (wolfSSL
, 11s
, SAE
)
464 VARIANT
:=supplicant-mesh-wolfssl
465 DEPENDS
+=+PACKAGE_wpa-supplicant-mesh-wolfssl
:libwolfssl
468 define Package
/wpa-supplicant-mesh-mbedtls
469 $(call Package
/wpa-supplicant-mesh
/Default
,$(1))
470 TITLE
+= (mbedTLS
, 11s
, SAE
)
471 VARIANT
:=supplicant-mesh-mbedtls
472 DEPENDS
+=+PACKAGE_wpa-supplicant-mesh-mbedtls
:libmbedtls
475 define Package
/wpa-supplicant-basic
476 $(call Package
/wpa-supplicant
/Default
,$(1))
478 VARIANT
:=supplicant-basic
481 define Package
/wpa-supplicant-mini
482 $(call Package
/wpa-supplicant
/Default
,$(1))
484 VARIANT
:=supplicant-mini
488 define Package
/hostapd-common
489 TITLE
:=hostapd
/wpa_supplicant common support files
495 define Package
/hostapd-utils
499 TITLE
:=IEEE
802.1x Authenticator
(utils
)
500 URL
:=http
://hostap.epitest.fi
/
501 DEPENDS
:=@
$(subst $(space
),||
,$(foreach pkg
,$(HOSTAPD_PROVIDERS
),PACKAGE_
$(pkg
)))
505 define Package
/hostapd-utils
/description
506 This package contains a command line utility to control the
507 IEEE
802.1x
/WPA
/EAP
/RADIUS Authenticator.
510 define Package
/wpa-cli
514 DEPENDS
:=@
$(subst $(space
),||
,$(foreach pkg
,$(SUPPLICANT_PROVIDERS
),PACKAGE_
$(pkg
)))
515 TITLE
:=WPA Supplicant command line control utility
519 define Package
/eapol-test
/Default
520 TITLE
:=802.1x auth
test utility
524 DEPENDS
:=$(DRV_DEPENDS
) +libubus
527 define Package
/eapol-test
528 $(call Package
/eapol-test
/Default
,$(1))
529 TITLE
+= (built-in full
)
530 VARIANT
:=supplicant-full-internal
533 define Package
/eapol-test-openssl
534 $(call Package
/eapol-test
/Default
,$(1))
535 TITLE
+= (OpenSSL full
)
536 VARIANT
:=supplicant-full-openssl
537 CONFLICTS
:=$(filter-out eapol-test-openssl
,$(EAPOL_TEST_PROVIDERS
))
538 DEPENDS
+=+PACKAGE_eapol-test-openssl
:libopenssl
542 define Package
/eapol-test-wolfssl
543 $(call Package
/eapol-test
/Default
,$(1))
544 TITLE
+= (wolfSSL full
)
545 VARIANT
:=supplicant-full-wolfssl
546 CONFLICTS
:=$(filter-out eapol-test-openssl
,$(filter-out eapol-test-wolfssl
,$(EAPOL_TEST_PROVIDERS
)))
547 DEPENDS
+=+PACKAGE_eapol-test-wolfssl
:libwolfssl
551 define Package
/eapol-test-mbedtls
552 $(call Package
/eapol-test
/Default
,$(1))
553 TITLE
+= (mbedTLS full
)
554 VARIANT
:=supplicant-full-mbedtls
555 CONFLICTS
:=$(filter-out eapol-test-openssl
,$(filter-out eapol-test-mbedtls
,$(EAPOL_TEST_PROVIDERS
)))
556 DEPENDS
+=+PACKAGE_eapol-test-mbedtls
:libmbedtls
561 ifneq ($(wildcard $(PKG_BUILD_DIR
)/.config_
*),$(subst .configured_
,.config_
,$(STAMP_CONFIGURED
)))
562 define Build
/Configure
/rebuild
563 $(FIND
) $(PKG_BUILD_DIR
) -name \
*.o
-or
-name \
*.a |
$(XARGS
) rm -f
564 rm -f
$(PKG_BUILD_DIR
)/hostapd
/hostapd
565 rm -f
$(PKG_BUILD_DIR
)/wpa_supplicant
/wpa_supplicant
566 rm -f
$(PKG_BUILD_DIR
)/.config_
*
567 touch
$(subst .configured_
,.config_
,$(STAMP_CONFIGURED
))
571 define Build
/Configure
572 $(Build
/Configure
/rebuild
)
573 $(if
$(wildcard .
/files
/hostapd-
$(CONFIG_VARIANT
).config
), \
574 $(CP
) .
/files
/hostapd-
$(CONFIG_VARIANT
).config
$(PKG_BUILD_DIR
)/hostapd
/.config \
576 $(if
$(wildcard .
/files
/wpa_supplicant-
$(CONFIG_VARIANT
).config
), \
577 $(CP
) .
/files
/wpa_supplicant-
$(CONFIG_VARIANT
).config
$(PKG_BUILD_DIR
)/wpa_supplicant
/.config
582 -I
$(STAGING_DIR
)/usr
/include/libnl-tiny \
583 -I
$(PKG_BUILD_DIR
)/src
/crypto \
587 $(if
$(CONFIG_WPA_MSG_MIN_PRIORITY
),-DCONFIG_MSG_MIN_PRIORITY
=$(CONFIG_WPA_MSG_MIN_PRIORITY
))
589 TARGET_LDFLAGS
+= -lubox
-lubus
591 ifdef CONFIG_PACKAGE_kmod-cfg80211
592 TARGET_LDFLAGS
+= -lm
-lnl-tiny
595 ifdef CONFIG_WPA_ENABLE_WEP
596 DRIVER_MAKEOPTS
+= CONFIG_WEP
=y
600 CFLAGS
="$(TARGET_CPPFLAGS) $(TARGET_CFLAGS)" \
601 $(MAKE
) $(PKG_JOBS
) -C
$(PKG_BUILD_DIR
)/$(1) \
602 $(TARGET_CONFIGURE_OPTS
) \
604 LIBS
="$(TARGET_LDFLAGS)" \
605 LIBS_c
="$(TARGET_LDFLAGS_C)" \
606 AR
="$(TARGET_CROSS)gcc-ar" \
608 $(if
$(findstring s
,$(OPENWRT_VERBOSE
)),V
=1) \
612 define Build
/Compile
/wpad
614 $(call Build/RunMake,hostapd,-s MULTICALL=1 dump_cflags); \
615 $(call Build/RunMake,wpa_supplicant,-s MULTICALL=1 dump_cflags) | \
616 sed -e 's,-n ,,g' -e 's^$(TARGET_CFLAGS)^^' \
617 ` > $(PKG_BUILD_DIR
)/.
cflags
618 sed
-i
's/"/\\"/g' $(PKG_BUILD_DIR
)/.
cflags
619 +$(call Build
/RunMake
,hostapd
, \
620 CFLAGS
="$$$$(cat $(PKG_BUILD_DIR)/.cflags)" \
622 hostapd_cli hostapd_multi.a \
624 +$(call Build
/RunMake
,wpa_supplicant
, \
625 CFLAGS
="$$$$(cat $(PKG_BUILD_DIR)/.cflags)" \
627 wpa_cli wpa_supplicant_multi.a \
629 +export MAKEFLAGS
="$(MAKE_JOBSERVER)"; $(TARGET_CC
) -o
$(PKG_BUILD_DIR
)/wpad \
631 .
/files
/multicall.c \
632 $(PKG_BUILD_DIR
)/hostapd
/hostapd_multi.a \
633 $(PKG_BUILD_DIR
)/wpa_supplicant
/wpa_supplicant_multi.a \
637 define Build
/Compile
/hostapd
638 +$(call Build
/RunMake
,hostapd
, \
639 hostapd hostapd_cli \
643 define Build
/Compile
/supplicant
644 +$(call Build
/RunMake
,wpa_supplicant
, \
645 wpa_cli wpa_supplicant \
649 define Build
/Compile
/supplicant-full-internal
650 +$(call Build
/RunMake
,wpa_supplicant
, \
655 define Build
/Compile
/supplicant-full-openssl
656 +$(call Build
/RunMake
,wpa_supplicant
, \
661 define Build
/Compile
/supplicant-full-wolfssl
662 +$(call Build
/RunMake
,wpa_supplicant
, \
667 define Build
/Compile
/supplicant-full-mbedtls
668 +$(call Build
/RunMake
,wpa_supplicant
, \
674 $(Build
/Compile
/$(LOCAL_TYPE
))
675 $(Build
/Compile
/$(BUILD_VARIANT
))
678 define Install
/hostapd
679 $(INSTALL_DIR
) $(1)/usr
/sbin
682 define Install
/supplicant
683 $(INSTALL_DIR
) $(1)/usr
/sbin
686 define Package
/hostapd-common
/install
687 $(INSTALL_DIR
) $(1)/etc
/capabilities
$(1)/etc
/rc.button
$(1)/etc
/hotplug.d
/ieee80211
$(1)/etc
/init.d
$(1)/lib
/netifd
$(1)/usr
/share
/acl.d
688 $(INSTALL_BIN
) .
/files
/dhcp-get-server.sh
$(1)/lib
/netifd
/dhcp-get-server.sh
689 $(INSTALL_DATA
) .
/files
/hostapd.sh
$(1)/lib
/netifd
/hostapd.sh
690 $(INSTALL_BIN
) .
/files
/wpad.init
$(1)/etc
/init.d
/wpad
691 $(INSTALL_BIN
) .
/files
/wps-hotplug.sh
$(1)/etc
/rc.button
/wps
692 $(INSTALL_DATA
) .
/files
/wpad_acl.json
$(1)/usr
/share
/acl.d
693 $(INSTALL_DATA
) .
/files
/wpad.json
$(1)/etc
/capabilities
696 define Package
/hostapd
/install
697 $(call Install
/hostapd
,$(1))
698 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/hostapd
/hostapd
$(1)/usr
/sbin
/
700 Package
/hostapd-basic
/install = $(Package
/hostapd
/install)
701 Package
/hostapd-basic-openssl
/install = $(Package
/hostapd
/install)
702 Package
/hostapd-basic-wolfssl
/install = $(Package
/hostapd
/install)
703 Package
/hostapd-basic-mbedtls
/install = $(Package
/hostapd
/install)
704 Package
/hostapd-mini
/install = $(Package
/hostapd
/install)
705 Package
/hostapd-openssl
/install = $(Package
/hostapd
/install)
706 Package
/hostapd-wolfssl
/install = $(Package
/hostapd
/install)
707 Package
/hostapd-mbedtls
/install = $(Package
/hostapd
/install)
709 ifneq ($(LOCAL_TYPE
),supplicant
)
710 define Package
/hostapd-utils
/install
711 $(INSTALL_DIR
) $(1)/usr
/sbin
712 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/hostapd
/hostapd_cli
$(1)/usr
/sbin
/
716 define Package
/wpad
/install
717 $(call Install
/hostapd
,$(1))
718 $(call Install
/supplicant
,$(1))
719 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/wpad
$(1)/usr
/sbin
/
720 $(LN
) wpad
$(1)/usr
/sbin
/hostapd
721 $(LN
) wpad
$(1)/usr
/sbin
/wpa_supplicant
723 Package
/wpad-basic
/install = $(Package
/wpad
/install)
724 Package
/wpad-basic-openssl
/install = $(Package
/wpad
/install)
725 Package
/wpad-basic-wolfssl
/install = $(Package
/wpad
/install)
726 Package
/wpad-basic-mbedtls
/install = $(Package
/wpad
/install)
727 Package
/wpad-mini
/install = $(Package
/wpad
/install)
728 Package
/wpad-openssl
/install = $(Package
/wpad
/install)
729 Package
/wpad-wolfssl
/install = $(Package
/wpad
/install)
730 Package
/wpad-mbedtls
/install = $(Package
/wpad
/install)
731 Package
/wpad-mesh-openssl
/install = $(Package
/wpad
/install)
732 Package
/wpad-mesh-wolfssl
/install = $(Package
/wpad
/install)
733 Package
/wpad-mesh-mbedtls
/install = $(Package
/wpad
/install)
735 define Package
/wpa-supplicant
/install
736 $(call Install
/supplicant
,$(1))
737 $(INSTALL_BIN
) $(PKG_BUILD_DIR
)/wpa_supplicant
/wpa_supplicant
$(1)/usr
/sbin
/
739 Package
/wpa-supplicant-basic
/install = $(Package
/wpa-supplicant
/install)
740 Package
/wpa-supplicant-mini
/install = $(Package
/wpa-supplicant
/install)
741 Package
/wpa-supplicant-p2p
/install = $(Package
/wpa-supplicant
/install)
742 Package
/wpa-supplicant-openssl
/install = $(Package
/wpa-supplicant
/install)
743 Package
/wpa-supplicant-wolfssl
/install = $(Package
/wpa-supplicant
/install)
744 Package
/wpa-supplicant-mbedtls
/install = $(Package
/wpa-supplicant
/install)
745 Package
/wpa-supplicant-mesh-openssl
/install = $(Package
/wpa-supplicant
/install)
746 Package
/wpa-supplicant-mesh-wolfssl
/install = $(Package
/wpa-supplicant
/install)
747 Package
/wpa-supplicant-mesh-mbedtls
/install = $(Package
/wpa-supplicant
/install)
749 ifneq ($(LOCAL_TYPE
),hostapd
)
750 define Package
/wpa-cli
/install
751 $(INSTALL_DIR
) $(1)/usr
/sbin
752 $(CP
) $(PKG_BUILD_DIR
)/wpa_supplicant
/wpa_cli
$(1)/usr
/sbin
/
756 ifeq ($(BUILD_VARIANT
),supplicant-full-internal
)
757 define Package
/eapol-test
/install
758 $(INSTALL_DIR
) $(1)/usr
/sbin
759 $(CP
) $(PKG_BUILD_DIR
)/wpa_supplicant
/eapol_test
$(1)/usr
/sbin
/
763 ifeq ($(BUILD_VARIANT
),supplicant-full-openssl
)
764 define Package
/eapol-test-openssl
/install
765 $(INSTALL_DIR
) $(1)/usr
/sbin
766 $(CP
) $(PKG_BUILD_DIR
)/wpa_supplicant
/eapol_test
$(1)/usr
/sbin
/
770 ifeq ($(BUILD_VARIANT
),supplicant-full-wolfssl
)
771 define Package
/eapol-test-wolfssl
/install
772 $(INSTALL_DIR
) $(1)/usr
/sbin
773 $(CP
) $(PKG_BUILD_DIR
)/wpa_supplicant
/eapol_test
$(1)/usr
/sbin
/
777 ifeq ($(BUILD_VARIANT
),supplicant-full-mbedtls
)
778 define Package
/eapol-test-mbedtls
/install
779 $(INSTALL_DIR
) $(1)/usr
/sbin
780 $(CP
) $(PKG_BUILD_DIR
)/wpa_supplicant
/eapol_test
$(1)/usr
/sbin
/
784 # Build hostapd-common before its dependents, to avoid
785 # spurious rebuilds when building multiple variants.
786 $(eval
$(call BuildPackage
,hostapd-common
))
787 $(eval
$(call BuildPackage
,hostapd
))
788 $(eval
$(call BuildPackage
,hostapd-basic
))
789 $(eval
$(call BuildPackage
,hostapd-basic-openssl
))
790 $(eval
$(call BuildPackage
,hostapd-basic-wolfssl
))
791 $(eval
$(call BuildPackage
,hostapd-basic-mbedtls
))
792 $(eval
$(call BuildPackage
,hostapd-mini
))
793 $(eval
$(call BuildPackage
,hostapd-openssl
))
794 $(eval
$(call BuildPackage
,hostapd-wolfssl
))
795 $(eval
$(call BuildPackage
,hostapd-mbedtls
))
796 $(eval
$(call BuildPackage
,wpad
))
797 $(eval
$(call BuildPackage
,wpad-mesh-openssl
))
798 $(eval
$(call BuildPackage
,wpad-mesh-wolfssl
))
799 $(eval
$(call BuildPackage
,wpad-mesh-mbedtls
))
800 $(eval
$(call BuildPackage
,wpad-basic
))
801 $(eval
$(call BuildPackage
,wpad-basic-openssl
))
802 $(eval
$(call BuildPackage
,wpad-basic-wolfssl
))
803 $(eval
$(call BuildPackage
,wpad-basic-mbedtls
))
804 $(eval
$(call BuildPackage
,wpad-mini
))
805 $(eval
$(call BuildPackage
,wpad-openssl
))
806 $(eval
$(call BuildPackage
,wpad-wolfssl
))
807 $(eval
$(call BuildPackage
,wpad-mbedtls
))
808 $(eval
$(call BuildPackage
,wpa-supplicant
))
809 $(eval
$(call BuildPackage
,wpa-supplicant-mesh-openssl
))
810 $(eval
$(call BuildPackage
,wpa-supplicant-mesh-wolfssl
))
811 $(eval
$(call BuildPackage
,wpa-supplicant-mesh-mbedtls
))
812 $(eval
$(call BuildPackage
,wpa-supplicant-basic
))
813 $(eval
$(call BuildPackage
,wpa-supplicant-mini
))
814 $(eval
$(call BuildPackage
,wpa-supplicant-p2p
))
815 $(eval
$(call BuildPackage
,wpa-supplicant-openssl
))
816 $(eval
$(call BuildPackage
,wpa-supplicant-wolfssl
))
817 $(eval
$(call BuildPackage
,wpa-supplicant-mbedtls
))
818 $(eval
$(call BuildPackage
,wpa-cli
))
819 $(eval
$(call BuildPackage
,hostapd-utils
))
820 $(eval
$(call BuildPackage
,eapol-test
))
821 $(eval
$(call BuildPackage
,eapol-test-openssl
))
822 $(eval
$(call BuildPackage
,eapol-test-wolfssl
))
823 $(eval
$(call BuildPackage
,eapol-test-mbedtls
))