blob: 6351b22e347fc205c30fe3112719700e8bd01bad [file] [log] [blame]
developer29c4d2d2022-12-26 19:41:22 +08001SUMMARY = "User space daemon for extended IEEE 802.11 management"
2HOMEPAGE = "http://w1.fi/hostapd/"
3SECTION = "kernel/userland"
4LICENSE = "BSD-3-Clause"
5LIC_FILES_CHKSUM = "file://hostapd/README;md5=c905478466c90f1cefc0df987c40e172"
6
developer2a209692023-08-14 20:23:42 +08007DEPENDS = "libnl openssl ubus ucode"
developer29c4d2d2022-12-26 19:41:22 +08008DEPENDS_append = " ${@bb.utils.contains('DISTRO_FEATURES', 'telemetry2_0', 'telemetry', '', d)}"
9LDFLAGS_append = " ${@bb.utils.contains('DISTRO_FEATURES', 'telemetry2_0', ' -ltelemetry_msgsender ', '', d)}"
developer2a209692023-08-14 20:23:42 +080010RDEPENDS_${PN} += "gawk ucode"
developer29c4d2d2022-12-26 19:41:22 +080011
12FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
13FILESEXTRAPATHS_prepend := "${THISDIR}/files/patches-${PV}:"
14
developere35b8e42023-10-16 11:04:00 +080015SRCREV ?= "e5ccbfc69ecf297590341ae8b461edba9d8e964c"
developer29c4d2d2022-12-26 19:41:22 +080016SRC_URI = " \
17 git://w1.fi/hostap.git;protocol=https;branch=main \
18 file://hostapd-full.config \
developer65857c02023-02-13 20:07:19 +080019 file://hostapd-2G-EHT.conf \
20 file://hostapd-5G-EHT.conf \
21 file://hostapd-6G-EHT.conf \
developer29c4d2d2022-12-26 19:41:22 +080022 file://hostapd-5G-7915.conf \
23 file://hostapd-5G-7916.conf \
24 file://hostapd.service \
25 file://hostapd-init.sh \
developerca672072023-02-24 18:01:27 +080026 file://mac80211-EHT.sh \
developer29c4d2d2022-12-26 19:41:22 +080027 file://init-uci-config.service \
developer2a209692023-08-14 20:23:42 +080028 file://hostapd.uc \
29 file://common.uc \
30 file://wdev.uc \
developere6670672023-10-25 17:01:28 +080031 file://wpa_supplicant.uc \
developer2a209692023-08-14 20:23:42 +080032 file://src-${PV} \
33 file://002-rdkb-add-ucode-support.patch;apply=no \
developere6670672023-10-25 17:01:28 +080034 file://003-rdkb-uc-script-support.patch;apply=no \
developer29c4d2d2022-12-26 19:41:22 +080035"
36require files/patches-${PV}/patches.inc
37
38B = "${WORKDIR}/git/hostapd"
39S = "${WORKDIR}/git"
40
41inherit update-rc.d systemd pkgconfig features_check
42INITSCRIPT_NAME = "hostapd"
43
44SYSTEMD_AUTO_ENABLE_${PN} = "enable"
45SYSTEMD_SERVICE_${PN} = "hostapd.service"
46SYSTEMD_SERVICE_${PN} += " init-uci-config.service"
developer2a209692023-08-14 20:23:42 +080047INSANE_SKIP_${PN} += "file-rdeps"
developer29c4d2d2022-12-26 19:41:22 +080048do_unpack_append() {
49 bb.build.exec_func('do_copy_openwrt_src', d)
50}
51
52do_copy_openwrt_src() {
developer2a209692023-08-14 20:23:42 +080053 cp -Rfp ${WORKDIR}/src-${PV}/* ${S}/
developer29c4d2d2022-12-26 19:41:22 +080054}
55
56do_configure_append() {
57 install -m 0644 ${WORKDIR}/hostapd-full.config ${B}/.config
58
59 echo "CONFIG_MBO=y" >> ${B}/.config
60 echo "CONFIG_WPS_UPNP=y" >> ${B}/.config
61 echo "CONFIG_DPP=y" >> ${B}/.config
62 echo "CONFIG_DPP2=y" >> ${B}/.config
63 echo "CONFIG_DPP3=y" >> ${B}/.config
64
65 echo "CONFIG_ACS=y" >> ${B}/.config
66 echo "CONFIG_IEEE80211AX=y" >> ${B}/.config
67 echo "CONFIG_TLS=openssl" >> ${B}/.config
68 echo "CONFIG_SAE=y" >> ${B}/.config
69 echo "CONFIG_OWE=y" >> ${B}/.config
70 echo "CONFIG_SUITEB192=y" >> ${B}/.config
71 echo "CONFIG_AP=y" >> ${B}/.config
72 echo "CONFIG_MESH=y" >> ${B}/.config
73 echo "CONFIG_WEP=y" >> ${B}/.config
74 echo "CONFIG_FILS=y" >> ${B}/.config
developer5eddc512023-02-13 16:01:56 +080075 echo "CONFIG_IEEE80211BE=y" >> ${B}/.config
developerff00d542023-06-08 11:36:33 +080076 echo "CONFIG_TESTING_OPTIONS=y" >> ${B}/.config
developer2a209692023-08-14 20:23:42 +080077 echo "CONFIG_UCODE=y" >> ${B}/.config
developer29c4d2d2022-12-26 19:41:22 +080078}
79
80do_filogic_patches() {
81 cd ${S}
82 if [ ! -e patch_applied ]; then
developer2a209692023-08-14 20:23:42 +080083 patch -p1 < ${WORKDIR}/002-rdkb-add-ucode-support.patch
developere6670672023-10-25 17:01:28 +080084 cd ${WORKDIR}
85 patch -p1 < ${WORKDIR}/003-rdkb-uc-script-support.patch
86 cd ${S}
developer29c4d2d2022-12-26 19:41:22 +080087 touch patch_applied
88 fi
89}
90
91addtask filogic_patches after do_patch before do_compile
92
93do_compile() {
94 export CFLAGS="-MMD -O2 -Wall -g -I${STAGING_INCDIR}/libnl3"
95 export EXTRA_CFLAGS="${CFLAGS}"
96 make V=1
97}
98
99do_install() {
developer2a209692023-08-14 20:23:42 +0800100 install -d ${D}${sbindir} ${D}${sysconfdir} ${D}${systemd_unitdir}/system/ ${D}${base_libdir}/rdk ${D}${datadir}/hostap
developer29c4d2d2022-12-26 19:41:22 +0800101 install -m 0755 ${B}/hostapd ${D}${sbindir}
102 install -m 0755 ${B}/hostapd_cli ${D}${sbindir}
developer65857c02023-02-13 20:07:19 +0800103 install -m 0644 ${WORKDIR}/hostapd-2G-EHT.conf ${D}${sysconfdir}/hostapd-2G.conf
104 install -m 0644 ${WORKDIR}/hostapd-5G-EHT.conf ${D}${sysconfdir}/hostapd-5G.conf
105 install -m 0644 ${WORKDIR}/hostapd-6G-EHT.conf ${D}${sysconfdir}/hostapd-6G.conf
developer29c4d2d2022-12-26 19:41:22 +0800106 install -m 0644 ${WORKDIR}/hostapd-5G-7915.conf ${D}${sysconfdir}
107 install -m 0644 ${WORKDIR}/hostapd-5G-7916.conf ${D}${sysconfdir}
108 install -m 0644 ${WORKDIR}/hostapd.service ${D}${systemd_unitdir}/system
109 install -m 0755 ${WORKDIR}/hostapd-init.sh ${D}${base_libdir}/rdk
110 install -m 0644 ${WORKDIR}/init-uci-config.service ${D}${systemd_unitdir}/system
developerca672072023-02-24 18:01:27 +0800111 install -m 0755 ${WORKDIR}/mac80211-EHT.sh ${D}${sbindir}/mac80211.sh
developer2a209692023-08-14 20:23:42 +0800112 install -m 0755 ${WORKDIR}/hostapd.uc ${D}${datadir}/hostap
113 install -m 0755 ${WORKDIR}/wdev.uc ${D}${datadir}/hostap
114 install -m 0755 ${WORKDIR}/common.uc ${D}${datadir}/hostap
developere6670672023-10-25 17:01:28 +0800115 install -m 0755 ${WORKDIR}/wpa_supplicant.uc ${D}${datadir}/hostap
developer29c4d2d2022-12-26 19:41:22 +0800116}
117
118FILES_${PN} += " \
119 ${systemd_unitdir}/system/hostapd.service \
developer65857c02023-02-13 20:07:19 +0800120 ${sysconfdir}/hostapd-2G-EHT.conf \
121 ${sysconfdir}/hostapd-5G-EHT.conf \
122 ${sysconfdir}/hostapd-6G-EHT.conf \
developer29c4d2d2022-12-26 19:41:22 +0800123 ${sysconfdir}/hostapd-5G-7915.conf \
124 ${sysconfdir}/hostapd-5G-7916.conf \
125 ${base_libdir}/rdk/hostapd-init.sh \
126 ${systemd_unitdir}/system/init-uci-config.service \
developer2a209692023-08-14 20:23:42 +0800127 ${datadir}/hostap/hostapd.uc \
128 ${datadir}/hostap/wdev.uc \
129 ${datadir}/hostap/common.uc \
developere6670672023-10-25 17:01:28 +0800130 ${datadir}/hostap/wpa_supplicant.uc \
developer29c4d2d2022-12-26 19:41:22 +0800131"