On 05/10/11 17:54, Loïc Minier wrote:
On Wed, Oct 05, 2011, dann frazier wrote:
At this point I'd like to submit both patches as an RFC. I suspect the static patch might be fine (and safest) for distributions like Debian that don't yet enable bi-arch on armhf, but not for distros like Ubuntu which do. The dynamic version should work in the bi-arch case, but it also will change the default linker path for soft-float binaries and I suspect we *don't* want to do that. Perhaps we need to #ifdef that out somehow if we're building for a soft-float default target?
- -dynamic-linker " LINUX_DYNAMIC_LINKER " \
- %{msoft-float:-dynamic-linker " GLIBC_DYNAMIC_LINKEREL "} \
- %{mfloat-abi=soft*:-dynamic-linker " GLIBC_DYNAMIC_LINKEREL "} \
- %{mhard-float:-dynamic-linker " GLIBC_DYNAMIC_LINKERHF "} \
- %{mfloat-abi=hard:-dynamic-linker " GLIBC_DYNAMIC_LINKERHF "} \
There's an unfortunate issue with spec files which will prevent the biarch case from supporting -mhard-float/-msoft-float along -mfloat-abi in the near term: http://lists.linaro.org/pipermail/linaro-toolchain/2011-March/000964.html
Otherwise, looks good to me; thanks for the patches
Perhaps something like this?
%:arm_choose_dynamic_linker(%{msoft-float&mhard-float&mfloat-abi=*})
And then implement arm_choose_dynamic_linker in driver-arm.c (which doesn't yet exist for arm, but will once my native tuning patch is approved).
Andrew