Netgear D7800 build

Update on the progress of package/kernel/lantiq/ltq-vdsl-mei (drv_mei_cpe-1.5.17.6.tar.gz), not much I'm afraid (hopefully I'll get better with practice).
Looking into the mfloat-abi hard/soft issue (sorry this will be basic knowledge for some), my target triplet states (where arm-openwrt-linux-gcc -> arm-openwrt-linux-muslgnueabi-gcc):
> arm-openwrt-linux-gcc -dumpmachine
= arm-openwrt-linux-muslgnueabi
= target=arm
vendor=openwrt
os=linux-muslgnueabi
musl = New standard C library. musl is lightweight, fast, simple, free, and strives to be correct in the sense of standards-conformance and safety
gnueabi = ARM=eabi = The ARM EABI port is the default port in Debian for the ARM architecture, named armel.
https://wiki.debian.org/ArmEabiPort states:
Arm EABI uses VFP (Vector Floating Points), which uses a different instruction set than FPA and stores floats in natural-endian.
I also found:
http://stackoverflow.com/questions/22561929/how-to-cross-compile-to-both-arm-hard-and-soft-float-softfp-with-a-single-g
http://stackoverflow.com/questions/37418986/how-to-interpret-the-output-of-gcc-print-multi-lib
Which indicates to use mfloat-abi=hard and soft together is a multilib feature, according to the default compiler:
> arm-openwrt-linux-gcc -print-multi-lib
= .;
= no multilibs found
> arm-openwrt-linux-gcc -print-multi-directory
= .
> arm-openwrt-linux-gcc -print-multi-os-directory
= .
So from this there is no multilib support in the compiler which explains why CFLAGS -mfloat-abi=soft and -mfloat-abi=hard don't work together.
I can see that source/rules.mk injects -mfloat-abi=hard into the CFLAGS list however I can't see where -mfliat-abi=soft is injected. Any ideas?