--- /usr/portage/sys-libs/musl/musl-1.1.15.ebuild 2016-07-06 18:45:20.000000000 -0500 +++ /usr/portage/sys-libs/musl/musl-1.1.15-r1.ebuild 2016-08-27 14:04:02.899994890 -0500 @@ -57,6 +57,20 @@ esac } +arm_is_hardfloat() { + cat >"${T}"/arm-ext.c </dev/null 2>&1; then + return 0; + else + return 1; + fi +} + pkg_setup() { if [ ${CTARGET} == ${CHOST} ] ; then case ${CHOST} in @@ -108,7 +122,7 @@ local endian=$(musl_endian) case ${target} in amd64) arch="x86_64";; - arm) arch="armhf";; # We only have hardfloat right now + arm) arm_is_hardfloat && arch="armhf" || arch="arm";; mips) arch="mips${endian}";; ppc) arch="powerpc";; x86) arch="i386";;