How to change the compilation standard of the package?

I want to change the compilation standard ISO c90 to c99.
Because my software package reported an error as/home/hpzgpu/route/openwrt/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7621/mt7615d-5.0.4.0/mt_wifi_ap/../mt_wifi/embedded/ap/ap.c:4002:9: ### error: ISO C90 forbids variable length array 'FrameBuf' [-Werror=vla] 4002 | UCHAR FrameBuf[frame_len + 32];

You have to ask mediatek (or whomever gave you non-mainline driver to compile)
mainline mt76+hostap works close to perfect nowadays.

Post

ubus call system board

If you think your setup is among supported devices.

My device is phicomm k2p.

Install official version:
https://firmware-selector.openwrt.org/?version=23.05.5&target=ramips%2Fmt7621&id=phicomm_k2p
Mainline kernel mt76 driver should be fine.

I changed the hardware of my device. 512MB of memory and 64MB of storage.I successfully compiled in version 22 but failed to compile in version 23. The main issue is the MT7615d closed source driver error.

make[3]: Entering directory '/home/hpzgpu/route/openwrt/package/hpz/mt/drivers/mt7615d'
rm -f /home/hpzgpu/route/openwrt/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7621/mt7615d-5.0.4.0/.built
touch /home/hpzgpu/route/openwrt/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7621/mt7615d-5.0.4.0/.built_check
make -C "/home/hpzgpu/route/openwrt/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7621/linux-5.15.167" KCFLAGS="-fmacro-prefix-map=/home/hpzgpu/route/openwrt/build_dir/target-mipsel_24kc_musl=target-mipsel_24kc_musl -fno-caller-saves " HOSTCFLAGS="-O2 -I/home/hpzgpu/route/openwrt/staging_dir/host/include -I/home/hpzgpu/route/openwrt/staging_dir/hostpkg/include -I/home/hpzgpu/route/openwrt/staging_dir/target-mipsel_24kc_musl/host/include -Wall -Wmissing-prototypes -Wstrict-prototypes" CROSS_COMPILE="mipsel-openwrt-linux-musl-" ARCH="mips" KBUILD_HAVE_NLS=no KBUILD_BUILD_USER="" KBUILD_BUILD_HOST="" KBUILD_BUILD_TIMESTAMP="Mon Sep 23 12:34:46 2024" KBUILD_BUILD_VERSION="0" KBUILD_HOSTLDFLAGS="-L/home/hpzgpu/route/openwrt/staging_dir/host/lib" CONFIG_SHELL="bash" V='' cmd_syscalls= KBUILD_EXTRA_SYMBOLS="/home/hpzgpu/route/openwrt/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7621/symvers/gpio-button-hotplug.symvers" KERNELRELEASE=5.15.167 CONFIG_RT_FIRST_CARD=7615 CONFIG_RT_FIRST_IF_RF_OFFSET=0xc0000 CONFIG_MT_WIFI=y CONFIG_WIFI_BASIC_FUNC=y CONFIG_MT_WIFI_PATH="mt_wifi" CONFIG_FIRST_IF_EEPROM_FLASH=y CONFIG_RT_FIRST_CARD_EEPROM="flash" CONFIG_SECOND_IF_NONE=y CONFIG_WIFI_BASIC_FUNC=y CONFIG_DOT11_N_SUPPORT=y CONFIG_DOT11_VHT_AC=y CONFIG_WIFI_DRIVER=y CONFIG_G_BAND_256QAM_SUPPORT=y CONFIG_BRCM_256QAM_SUPPORT=y CONFIG_ICAP_SUPPORT=y CONFIG_MT_AP_SUPPORT=y CONFIG_BACKGROUND_SCAN_SUPPORT=y CONFIG_SMART_CARRIER_SENSE_SUPPORT=y CONFIG_MT_DFS_SUPPORT=y CONFIG_HDR_TRANS_TX_SUPPORT=y CONFIG_CHIP_MT7615E=y CONFIG_HDR_TRANS_RX_SUPPORT=y CONFIG_DBDC_MODE=y CONFIG_MULTI_PROFILE_SUPPORT=y CONFIG_DEFAULT_5G_PROFILE=y CONFIG_WSC_INCLUDED=y CONFIG_WSC_V2_SUPPORT=y CONFIG_DOT11W_PMF_SUPPORT=y CONFIG_TXBF_SUPPORT=y CONFIG_IGMP_SNOOP_SUPPORT=y CONFIG_RTMP_FLASH_SUPPORT=y CONFIG_ATE_SUPPORT=y CONFIG_UAPSD=y CONFIG_WIFI_MODE_AP=y CONFIG_WDS_SUPPORT=y CONFIG_MBSS_SUPPORT=y CONFIG_APCLI_SUPPORT=y CONFIG_MAC_REPEATER_SUPPORT=y CONFIG_VOW_SUPPORT=y CONFIG_BAND_STEERING=y CONFIG_WIFI_MT_MAC=y CONFIG_CHIP_MT7615E=y CONFIG_MT_MAC=y CONFIG_SUPPORT_OPENWRT=y CONFIG_MUMIMO_SUPPORT=y CONFIG_MU_RA_SUPPORT=y CONFIG_LED_CONTROL_SUPPORT=y CONFIG_TPC_SUPPORT=y CONFIG_RLM_CAL_CACHE_SUPPORT=y CONFIG_RED_SUPPORT=y CONFIG_FIRST_IF_IPAILNA=y CONFIG_FIRST_IF_MT7615E=y CONFIG_THIRD_IF_NONE=y CONFIG_SPECTRUM_SUPPORT=y CONFIG_PRE_CAL_TRX_SET1_SUPPORT=y CONFIG_MCAST_RATE_SPECIFIC=y CONFIG_LINUX_NET_TXQ_SUPPORT=y CONFIG_PRE_CAL_TRX_SET2_SUPPORT=y CONFIG_TCP_RACK_SUPPORT=y CONFIG_BRCM_256QAM_SUPPORT=y CONFIG_VHT_TXBF_2G_EPIGRAM_IE_SUPPORT=y CONFIG_PCIE_ASPM_DYM_CTRL_SUPPORT=y M="/home/hpzgpu/route/openwrt/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7621/mt7615d-5.0.4.0/mt_wifi_ap" V=1 modules
make[4]: Entering directory '/home/hpzgpu/route/openwrt/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7621/linux-5.15.167'
test -e include/generated/autoconf.h -a -e include/config/auto.conf || (
echo >&2;
echo >&2 " ERROR: Kernel configuration is invalid.";
echo >&2 " include/generated/autoconf.h or include/config/auto.conf are missing.";
echo >&2 " Run 'make oldconfig && make prepare' on kernel src to fix it.";
echo >&2 ;
/bin/false)
make -f ./scripts/Makefile.build obj=/home/hpzgpu/route/openwrt/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7621/mt7615d-5.0.4.0/mt_wifi_ap
single-build=
need-builtin=1 need-modorder=1
mipsel-openwrt-linux-musl-gcc -Wp,-MMD,/home/hpzgpu/route/openwrt/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7621/mt7615d-5.0.4.0/mt_wifi_ap/../mt_wifi/embedded/ap/.ap.o.d -nostdinc -isystem /home/hpzgpu/route/openwrt/staging_dir/toolchain-mipsel_24kc_gcc-12.3.0_musl/lib/gcc/mipsel-openwrt-linux-musl/12.3.0/include -I./arch/mips/include -I./arch/mips/include/generated -I./include -I./arch/mips/include/uapi -I./arch/mips/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -include ./include/linux/compiler_types.h -D__KERNEL__ -DVMLINUX_LOAD_ADDRESS=0xffffffff80001000 -DLINKER_LOAD_ADDRESS=0x80001000 -DDATAOFFSET=0 -fmacro-prefix-map=./= -Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -fshort-wchar -fno-PIE -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Wno-format-security -std=gnu11 -mno-check-zero-division -mabi=32 -G 0 -mno-abicalls -fno-pic -pipe -mno-branch-likely -msoft-float -DGAS_HAS_SET_HARDFLOAT -Wa,-msoft-float -ffreestanding -EL -fno-stack-check -Wa,-mno-fix-loongson3-llsc -march=mips32r2 -mtune=34kc -Wa,--trap -DTOOLCHAIN_SUPPORTS_VIRT -DTOOLCHAIN_SUPPORTS_XPA -DTOOLCHAIN_SUPPORTS_CRC -DTOOLCHAIN_SUPPORTS_DSP -DTOOLCHAIN_SUPPORTS_GINV -I./arch/mips/include/asm/mach-ralink -I./arch/mips/include/asm/mach-ralink/mt7621 -I./arch/mips/include/asm/mach-generic -fno-asynchronous-unwind-tables -fno-delete-null-pointer-checks -Wno-frame-address -Wno-format-truncation -Wno-format-overflow -Wno-address-of-packed-member -O2 -fno-allow-store-data-races -Wframe-larger-than=1024 -fstack-protector -Werror -Wimplicit-fallthrough=5 -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-dangling-pointer -fomit-frame-pointer -fno-stack-clash-protection -g -fno-var-tracking -femit-struct-debug-baseonly -Wdeclaration-after-statement -Wvla -Wno-pointer-sign -Wno-stringop-truncation -Wno-zero-length-bounds -Wno-array-bounds -Wno-stringop-overflow -Wno-restrict -Wno-maybe-uninitialized -Wno-alloc-size-larger-than -fno-strict-overflow -fno-stack-check -fconserve-stack -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wno-packed-not-aligned -fmacro-prefix-map=/home/hpzgpu/route/openwrt/build_dir/target-mipsel_24kc_musl=target-mipsel_24kc_musl -fno-caller-saves -I/home/hpzgpu/route/openwrt/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7621/mt7615d-5.0.4.0/mt_wifi_ap/../mt_wifi/include -I/home/hpzgpu/route/openwrt/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7621/mt7615d-5.0.4.0/mt_wifi_ap/../mt_wifi/embedded/include -I/home/hpzgpu/route/openwrt/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7621/mt7615d-5.0.4.0/mt_wifi_ap/../mt_wifi/ate/include -I/home/hpzgpu/route/openwrt/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7621/mt7615d-5.0.4.0/mt_wifi_ap/../mt_wifi/include/mcu -DCONFIG_SUPPORT_OPENWRT -DCONFIG_RT_FIRST_CARD=7615 -DCONFIG_RT_FIRST_IF_RF_OFFSET=0xc0000 -DCONFIG_RT_FIRST_CARD_EEPROM=""flash"" -DCONFIG_FIRST_IF_IPAILNA -DWIFI_SYS_FW_V1 -DWIFI_SYS_FW_V2 -DMULTI_PROFILE -DDEFAULT_5G_PROFILE -DUAPSD_SUPPORT -DUAPSD_DEBUG -DWSC_INCLUDED -DWSC_SINGLE_TRIGGER -DWSC_AP_SUPPORT -DWSC_V2_SUPPORT -DDOT11_VHT_AC -DDOT11W_PMF_SUPPORT -DTPC_SUPPORT -DBACKGROUND_SCAN_SUPPORT -DMT_DFS_SUPPORT -DCUSTOMISE_RDD_THRESHOLD_SUPPORT -DRDM_FALSE_ALARM_DEBUG_SUPPORT -DONDEMAND_DFS -DIGMP_SNOOP_SUPPORT -DSMART_CARRIER_SENSE_SUPPORT -DMBSS_SUPPORT -DWDS_SUPPORT -DAPCLI_SUPPORT -DMAT_SUPPORT -DMULTI_APCLI_SUPPORT -DAPCLI_AUTO_CONNECT_SUPPORT -DAPCLI_AUTO_BW_TMP -DDHCP_UC_SUPPORT -DFAST_EAPOL_WAR -DBT_APCLI_SUPPORT -DMAC_REPEATER_SUPPORT -DPCIE_ASPM_DYM_CTRL_SUPPORT -DCONFIG_ATE -DCONFIG_QA -DCONFIG_RT2880_ATE_CMD_NEW -DCONFIG_HW_HAL_OFFLOAD -DINTERNAL_CAPTURE_SUPPORT -DWIFI_SPECTRUM_SUPPORT -DRTMP_FLASH_SUPPORT -DPRE_CAL_TRX_SET1_SUPPORT -DRLM_CAL_CACHE_SUPPORT -DPRE_CAL_TRX_SET2_SUPPORT -DMCS_LUT_SUPPORT -DTXBF_SUPPORT -DVHT_TXBF_SUPPORT -DCFG_SUPPORT_MU_MIMO -DCFG_SUPPORT_MU_MIMO_RA -DMCAST_RATE_SPECIFIC -DBAND_STEERING -DVOW_SUPPORT -DRED_SUPPORT -DLINUX_NET_TXQ_SUPPORT -DDBDC_MODE -DMT7615 -DMT_BBP -DMT_RF -DRTMP_RF_RW_SUPPORT -DMT_MAC -DRTMP_MAC_PCI -DRTMP_PCI_SUPPORT -DMCS_LUT_SUPPORT -DA_BAND_SUPPORT -DRTMP_EFUSE_SUPPORT -DCAL_FREE_IC_SUPPORT -DBCN_OFFLOAD_SUPPORT -DERR_RECOVERY -DCONFIG_ANDES_SUPPORT -DCUT_THROUGH -DUNIFY_FW_CMD -DNEED_ROM_PATCH -DTXPWRMANUAL -DMAC_INIT_OFFLOAD -DENHANCED_STAT_DISPLAY -DCONFIG_FWOWN_SUPPORT -DNEWSEC -DSINGLE_SKU_V2 -DTX_POWER_CONTROL_SUPPORT -DTHERMAL_PROTECT_SUPPORT -DRESOURCE_PRE_ALLOC -DCONFIG_HW_HAL_OFFLOAD -DRX_SCATTER -DPKT_BUDGET_CTRL_SUPPORT -DRATE_ADAPTION -DRATE_ADAPT_AGBS_SUPPORT -DRACTRL_FW_OFFLOAD_SUPPORT -DCONFIG_TX_DELAY -DRELEASE_EXCLUDE -DPRE_CAL_TRX_SET1_SUPPORT -DRLM_CAL_CACHE_SUPPORT -DPRE_CAL_TRX_SET2_SUPPORT -DCONFIG_PROPRIETARY_DRIVER -DG_BAND_256QAM -DBRCM_256QAM -Wframe-larger-than=4096 -DHDR_TRANS_TX_SUPPORT -DCUT_THROUGH_FULL_OFFLOAD -DHDR_TRANS_RX_SUPPORT -DREDUCE_TCP_ACK_SUPPORT -DLED_CONTROL_SUPPORT -DCONFIG_WIFI_MTD -DLED_CONTROL_SUPPORT -DAGGREGATION_SUPPORT -DPIGGYBACK_SUPPORT -DWMM_SUPPORT -DLINUX -Wstrict-prototypes -Wno-trigraphs -Wall -Wno-unused-but-set-variable -DOLDSEC -DCONFIG_AP_SUPPORT -DSCAN_SUPPORT -DAP_SCAN_SUPPORT -DDOT11_N_SUPPORT -DDOT11N_DRAFT3 -DSTATS_COUNT_SUPPORT -DIAPP_SUPPORT -DDOT1X_SUPPORT -DDBG -DCONFIG_WIFI_PKT_FWD -DMTFWD -DIP_ASSEMBLY -DOUI_CHECK_SUPPORT -DHTC_DECRYPT_IOT -Inet/nat -DMT_WIFI_MODULE -DMODULE -mno-long-calls -DKBUILD_BASENAME='"ap"' -DKBUILD_MODNAME='"mt_wifi"' -D__KBUILD_MODNAME=kmod_mt_wifi -c -o /home/hpzgpu/route/openwrt/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7621/mt7615d-5.0.4.0/mt_wifi_ap/../mt_wifi/embedded/ap/ap.o /home/hpzgpu/route/openwrt/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7621/mt7615d-5.0.4.0/mt_wifi_ap/../mt_wifi/embedded/ap/ap.c
/home/hpzgpu/route/openwrt/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7621/mt7615d-5.0.4.0/mt_wifi_ap/../mt_wifi/embedded/ap/ap.c: In function 'MacTableMaintenance':
/home/hpzgpu/route/openwrt/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7621/mt7615d-5.0.4.0/mt_wifi_ap/../mt_wifi/embedded/ap/ap.c:2243:33: error: this 'if' clause does not guard... [-Werror=misleading-indentation]
2243 | if (CLIENT_STATUS_TEST_FLAG(pEntry, fCLIENT_STATUS_WMM_CAPABLE))
| ^~
/home/hpzgpu/route/openwrt/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7621/mt7615d-5.0.4.0/mt_wifi_ap/../mt_wifi/embedded/ap/ap.c:2246:41: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
2246 | ApCliRTMPSendNullFrame(pAd, pEntry->CurrTxRate, ApclibQosNull, pEntry, PWR_ACTIVE);
| ^~~~~~~~~~~~~~~~~~~~~~
/home/hpzgpu/route/openwrt/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7621/mt7615d-5.0.4.0/mt_wifi_ap/../mt_wifi/embedded/ap/ap.c: In function 'DOT1X_EapTriggerAction':
/home/hpzgpu/route/openwrt/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7621/mt7615d-5.0.4.0/mt_wifi_ap/../mt_wifi/embedded/ap/ap.c:4002:9: ### error: ISO C90 forbids variable length array 'FrameBuf' [-Werror=vla]
4002 | UCHAR FrameBuf[frame_len + 32];
| ^~~~~
cc1: all warnings being treated as errors
make[5]: *** [scripts/Makefile.build:289: /home/hpzgpu/route/openwrt/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7621/mt7615d-5.0.4.0/mt_wifi_ap/../mt_wifi/embedded/ap/ap.o] Error 1
make[4]: *** [Makefile:1907: /home/hpzgpu/route/openwrt/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7621/mt7615d-5.0.4.0/mt_wifi_ap] Error 2
make[4]: Leaving directory '/home/hpzgpu/route/openwrt/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7621/linux-5.15.167'
make[3]: *** [Makefile:254: /home/hpzgpu/route/openwrt/build_dir/target-mipsel_24kc_musl/linux-ramips_mt7621/mt7615d-5.0.4.0/.built] Error 2
make[3]: Leaving directory '/home/hpzgpu/route/openwrt/package/hpz/mt/drivers/mt7615d'
time: package/hpz/mt/drivers/mt7615d/compile#2.57#0.70#3.18
ERROR: package/hpz/mt/drivers/mt7615d failed to build.
make[2]: *** [package/Makefile:129: package/hpz/mt/drivers/mt7615d/compile] Error 1
make[2]: Leaving directory '/home/hpzgpu/route/openwrt'
make[1]: *** [package/Makefile:123: /home/hpzgpu/route/openwrt/staging_dir/target-mipsel_24kc_musl/stamp/.package_compile] Error 2
make[1]: Leaving directory '/home/hpzgpu/route/openwrt'
make: *** [/home/hpzgpu/route/openwrt/include/toplevel.mk:233:world] 错误 2

It is the driver from other place, you have to ask there.