Remove selection for ARM variants from menuconfig, v2

Khem Raj raj.khem at gmail.com
Mon Jan 10 06:55:04 UTC 2011


On 1/8/2011 4:45 PM, Yann E. MORIN wrote:
> All,
>
> This patch series removes the variants selection for the ARM architecture.
> The initial idea is that the user is responsible for properly configuring
> the compiler in the first place, or passing appropriate EXTRA_CFLAGS to
> use settings that are not the compiler's default.
>
>
> I split the process in small steps, so that each step contains a single,
> semantically self-contained change that is easy to understand and review,
> and that does not break.
>
> For example, before we can remove the variants selection, we need a way to
> know if use of BX is possible, so we need to know if the CPU is Thumb-aware
> (and even Thumb-only). Then we can remove the CPUs selection, remove the
> forcing blind options, and add a prompt to the Thumb option.
>
> This means that some stuff added in one patch (mostly in patch #2) will get
> removed in a subsequent patch. Up to, and including patch #2, there is no
> change in  behavior, from the perspective of the user.
>
> Last patch, "remove EABI/OABI selection", might seem dubious in the first
> place, as Khem pointed out. Indeed, this means that to detect whether we
> are EABI or OABI, we need a cross-compiler. This poses no problem for
> NPTL, as a cross-compiler is required even to install the headers. But
> for LinuxThreads, we currently do not require a cross-compiler when
> installing the headers. Having to would be a serious regression. But
> from my experiments, headers do not depend on EABI or OABI.  The
> installed headers only differ in bits/uClibc_config.h:
>   - build date
>   - #define and #undef for OABI/EABI
>
> So I believe that removing the EABI selection is perfectly valid.
>
> For info, I produced a reference uClibc.so from origin, built each steps
> with corresponding options, objdumped the resulting uClibc.so and compared
> to the reference that the build would produce the same library.
>
>
> Changes since v1:
> - keep the "Compile n Thumb mode" option (thus it's a new feature)
> - fix variable names as per Khem's suggestion on IRC
> - reorder series, EABI selection removal now last in series
>
>   [PATCH 1/7] ARM: reorder "Use BX" option
>   [PATCH 2/7] ARM: introduce blind options to select&  force THUMB mode
>   [PATCH 3/7] ARM: remove sub-arch/variants selection from menuconfig
>   [PATCH 4/7] ARM: transform the EABI/OABI choice into a boolean
>   [PATCH 5/7] ARM: #include<bits/arm_asm.h>  where __USE_BX__ is used
>   [PATCH 6/7] ARM: detect BX availibility at build time
>   [PATCH 7/7] ARM: remove EABI/OABI selection
>
>   Rules.mak                              |   20 +-----
>   extra/Configs/Config.arm               |  122 ++----------------------------
>   ldso/ldso/arm/dl-startup.h             |    1 +
>   libc/sysdeps/linux/arm/Makefile.arch   |    9 ++-
>   libc/sysdeps/linux/arm/bits/arm_asm.h  |    9 ++-
>   libc/sysdeps/linux/arm/bits/huge_val.h |    4 +-
>   libc/sysdeps/linux/arm/sysdep.h        |    1 +
>   7 files changed, 28 insertions(+), 138 deletions(-)
>



this patchset looks good to me. I am currently testing it out in 
different builds and it has been holding good. I will try it out
in different combination and run the testsuite then if all
is ok consider it in.

> Regards,
> Yann E. MORIN.
> _______________________________________________
> uClibc mailing list
> uClibc at uclibc.org
> http://lists.busybox.net/mailman/listinfo/uclibc



More information about the uClibc mailing list