diff options
Diffstat (limited to 'net/wifibox-alpine/Makefile')
-rw-r--r-- | net/wifibox-alpine/Makefile | 122 |
1 files changed, 94 insertions, 28 deletions
diff --git a/net/wifibox-alpine/Makefile b/net/wifibox-alpine/Makefile index 682d17233ede..54a3719c4aae 100644 --- a/net/wifibox-alpine/Makefile +++ b/net/wifibox-alpine/Makefile @@ -1,5 +1,5 @@ PORTNAME= wifibox-alpine -PORTVERSION= 20220430 +PORTVERSION= 20220625 CATEGORIES= net MAINTAINER= pali.gabor@gmail.com @@ -20,12 +20,14 @@ BUILD_DEPENDS= patchelf>0:sysutils/patchelf \ ${flavor}_PKGNAMESUFFIX= -${flavor} .endfor +OPTIONS_DEFINE= UDS_PASSTHRU OPTIONS_SUB= yes -OPTIONS_SINGLE= COMPRESSION +OPTIONS_SINGLE= COMPRESSION APPLICATION OPTIONS_SINGLE_COMPRESSION= COMP_GZIP COMP_LZO COMP_LZ4 COMP_XZ COMP_ZSTD +OPTIONS_SINGLE_APPLICATION= APP_HOSTAPD APP_WPA_SUPPLICANT -OPTIONS_DEFAULT= COMP_XZ +OPTIONS_DEFAULT= COMP_XZ APP_WPA_SUPPLICANT UDS_PASSTHRU COMP_GZIP_DESC= gzip COMP_LZO_DESC= lzo @@ -33,6 +35,12 @@ COMP_LZ4_DESC= lz4 COMP_XZ_DESC= xz COMP_ZSTD_DESC= zstd +UDS_PASSTHRU_DESC= Control socket pass-through +APP_HOSTAPD_DESC= Access Point (hostapd) +APP_WPA_SUPPLICANT_DESC= WPA Supplicant (wpa_supplicant) + +UDS_PASSTHRU_RUN_DEPENDS= socat>0:net/socat + .if ${FLAVOR:U} == default OPTIONS_GROUP= FIRMWARE EXTRAS OPTIONS_GROUP_FIRMWARE= FW_ATH10K FW_ATH11K FW_ATMEL FW_B43 FW_B43LEGACY FW_BRCM\ @@ -70,9 +78,10 @@ _GITHUB_SITE= https://github.com/pgj/freebsd-wifibox-alpine/releases/download USE_GITHUB= nodefault GH_ACCOUNT= pgj GH_PROJECT= freebsd-wifibox-alpine:scripts -GH_TAGNAME= dac84c054786b6eb6f329662748d9a199b05f2df:scripts +GH_TAGNAME= 51b3ad35e4ac0505f4bbb3a5e07eabce14ff48d7:scripts -ALPINE_VERSION= 3.15.4 +ALPINE_VERSION= 3.16.0 +ALPINE_DATE= 2022.06.25 _ALPINE_VER= ${ALPINE_VERSION:C@([0-9]+)\.([0-9]+).*@\1.\2@} .if defined(ALPINE_DATE) @@ -83,7 +92,7 @@ _ALPINE_SITE= https://mirror.fit.cvut.cz/alpine/v${_ALPINE_VER} .endif _LINUXFW_SITE= https://git.kernel.org/pub/scm/linux/kernel/git/firmware/ -_LINUXFW_TAG= 20220411 +_LINUXFW_TAG= 20220610 _LINUXFW= linux-firmware-${_LINUXFW_TAG} MASTER_SITES+= ${_ALPINE_SITE}/releases/x86_64/:rootfs \ @@ -97,26 +106,26 @@ MASTER_SITES+= ${_ALPINE_SITE}/releases/x86_64/:rootfs \ https://github.com/openwrt/mt76/archive/:mt76 _MINIROOTFS= alpine-minirootfs-${ALPINE_VERSION}-x86_64.tar.gz -_PACKAGES= baselayout-3.2.0-r18:wifibox \ - busybox-1.34.1-r5:wifibox \ - ifupdown-ng-0.11.3-r0:wifibox \ - iptables-1.8.7-r1:wifibox \ +_PACKAGES= baselayout-3.2.0-r19:wifibox \ + busybox-1.35.0-r0:wifibox \ + ifupdown-ng-0.12.1-r0:wifibox \ + iptables-1.8.8-r0:wifibox \ iw-5.16-r0:community \ - libcrypto1.1-1.1.1n-r0 \ - libmnl-1.0.4-r2 \ + libcrypto1.1-1.1.1o-r0 \ + libmnl-1.0.5-r0 \ libnftnl-1.2.1-r0 \ libnl3-3.5.0-r0 \ - libssl1.1-1.1.1n-r0 \ - linux-lts-5.15.36-r0:wifibox \ - musl-1.2.2-r7 \ - openrc-0.44.7-r5:wifibox \ - pcsc-lite-libs-1.9.4-r0 \ - socat-1.7.4.2-r0:wifibox \ - wpa_passthru-0.1.1-r0:wifibox \ - wpa_supplicant-2.9-r17:wifibox + libssl1.1-1.1.1o-r0 \ + linux-lts-5.15.49-r0:wifibox \ + musl-1.2.3-r0 \ + openrc-0.44.10-r0:wifibox _GUEST_MEM= 45M +_BOOT_SERVICES= networking urandom bootmisc modules hostname hwclock sysctl syslog +_DEFAULT_SERVICES= acpid crond iptables udhcpd +_SYSINIT_SERVICES= devfs dmesg hwdrivers mdev + _ATMEL_FIRMWARE= atmel-firmware-1.3 _B43LEGACY_FIRMWARE= wl_apsta-3.130.20.0 _B43_FIRMWARE= broadcom-wl-6.30.163.46 @@ -124,21 +133,56 @@ _IPW2100_FIRMWARE= ipw/ipw2100-1.3 \ ipw/ipw2100-1.3-i _IPW2200_FIRMWARE= iwi/ipw2200-bss \ iwi/ipw2200-ibss -_MT76_FIRMWARE= eecbb49920732b9b364f15c1ef0066342544b22b +_MT76_FIRMWARE= b6e865e2cc7080c91ec34a9dd3648d25f7ce04c6 + +_LINUX64_KMOD!= (kldstat -qn linux64 && echo "found") || echo "" + +.if empty(_LINUX64_KMOD) +IGNORE= needs the linux64 kernel module to build +.endif pre-everything:: .if !defined(FIRMWARE_FILES) @${ECHO_MSG} "===> NOTICE:" @${ECHO_MSG} - @${ECHO_MSG} "Use the FIRMWARE_FILES make(1) variable to keep only the firmware" - @${ECHO_MSG} "files that are used by the driver to reduce the size of the disk" - @${ECHO_MSG} "image." + @${ECHO_MSG} "Use the FIRMWARE_FILES make(1) variable to keep only the firmware files that" + @${ECHO_MSG} "are used by the driver to reduce the size of the disk image." @${ECHO_MSG} @sleep 1 .endif .include <bsd.port.options.mk> +.if ${PORT_OPTIONS:MUDS_PASSTHRU} +_BOOT_SERVICES+= uds_passthru +.endif + +.if ${PORT_OPTIONS:MUDS_PASSTHRU} || make(makesum) +_PACKAGES+= socat-1.7.4.3-r0:wifibox \ + uds_passthru-0.1.0-r0:wifibox +.endif + +.if ${PORT_OPTIONS:MAPP_WPA_SUPPLICANT} +_VIRTFS_MOUNTS= app_config:/etc/wpa_supplicant +_BOOT_SERVICES+= wpa_supplicant +_ETC_SRCS= etc/wpa_supplicant +.endif + +.if ${PORT_OPTIONS:MAPP_WPA_SUPPLICANT} || make(makesum) +_PACKAGES+= pcsc-lite-libs-1.9.6-r0 \ + wpa_supplicant-2.10-r0:wifibox +.endif + +.if ${PORT_OPTIONS:MAPP_HOSTAPD} +_VIRTFS_MOUNTS= app_config:/etc/hostapd +_BOOT_SERVICES+= hostapd +_ETC_SRCS= etc/hostapd +.endif + +.if ${PORT_OPTIONS:MAPP_HOSTAPD} || make(makesum) +_PACKAGES+= hostapd-2.10-r1:wifibox +.endif + .for flavor in ${_FLAVORS} .if ${FLAVOR:U} == ${flavor} PORT_OPTIONS+= FW_${flavor:tu} @@ -168,12 +212,15 @@ LINUX_FIRMWARE+= ${L${fw_opt}_FILES} .endfor .if ${PORT_OPTIONS:MXX_DRIVER_WL} -_PACKAGES+= broadcom-wl-6.30.223.271-r0:wifibox _GUEST_MEM= 50M .endif -.if ${PORT_OPTIONS:MXX_DRIVER_RTW89} -_PACKAGES+= rtw89-20220421-r0:wifibox +.if ${PORT_OPTIONS:MXX_DRIVER_WL} || make(makesum) +_PACKAGES+= broadcom-wl-6.30.223.271-r3:wifibox +.endif + +.if ${PORT_OPTIONS:MXX_DRIVER_RTW89} || make(makesum) +_PACKAGES+= rtw89-20220421-r3:wifibox .endif .if !empty(LINUX_FIRMWARE) @@ -193,7 +240,9 @@ DISTFILES+= ${package:C@^([^:]*):wifibox$@\1@}.apk:main_packages _APK_FILES+= ${_DISTDIR}/${package:C@^([^:]*):.*$@\1@}.apk .endfor -_FIRMWAREDIR= ${WRKSRC}/guest/lib/firmware +_GUESTDIR= ${WRKSRC}/guest +_ETCDIR= ${_GUESTDIR}/etc +_FIRMWAREDIR= ${_GUESTDIR}/lib/firmware .if ${PORT_OPTIONS:MFW_ATMEL} DISTFILES+= ${_ATMEL_FIRMWARE}.tar.gz:atmel @@ -225,6 +274,12 @@ DISTFILES+= ${_MT76_FIRMWARE}.zip:mt76 .endif pre-build: +.if ${PORT_OPTIONS:MAPP_WPA_SUPPLICANT} + ${MKDIR} ${_ETCDIR}/wpa_supplicant +.endif +.if ${PORT_OPTIONS:MAPP_HOSTAPD} + ${MKDIR} ${_ETCDIR}/hostapd +.endif ${MKDIR} ${_FIRMWAREDIR} .for fw in ${PORT_OPTIONS:MFW_B43*} .if ${fw} @@ -258,6 +313,12 @@ pre-build: .endif post-install: +.if empty(PORT_OPTIONS:MUDS_PASSTHRU) + ${RM} ${STAGEDIR}${PREFIX}/etc/wifibox/appliance/uds_passthru.conf.sample +.endif +.if ${PORT_OPTIONS:MAPP_HOSTAPD} && ${PORT_OPTIONS:MUDS_PASSTHRU} + ${MKDIR} ${STAGEDIR}/var/run/hostapd +.endif ${PRINTF} "cpus=1\nmemory=${_GUEST_MEM}\n" \ > ${STAGEDIR}${PREFIX}/share/wifibox/bhyve.conf @@ -265,6 +326,11 @@ WRKSRC= ${WRKSRC_scripts} MAKE_ARGS+= VERSION=${PORTVERSION} \ MINIROOTFS=${_DISTDIR}/${_MINIROOTFS} \ PACKAGES="${_APK_FILES}" \ + BOOT_SERVICES="${_BOOT_SERVICES}" \ + DEFAULT_SERVICES="${_DEFAULT_SERVICES}" \ + SYSINIT_SERVICES="${_SYSINIT_SERVICES}" \ + ETC_SRCS="${_ETC_SRCS}" \ + EXTRA_VIRTFS_MOUNTS="${_VIRTFS_MOUNTS}" \ SQUASHFS_COMP=${PORT_OPTIONS:MCOMP_*:S/COMP_//:tl} .if defined(FIRMWARE_FILES) |