Messages in this thread | | | From | Arnd Bergmann <> | Date | Wed, 21 Feb 2018 17:03:25 +0100 | Subject | Re: [PATCH 00/23] kconfig: move compiler capability tests to Kconfig |
| |
On Wed, Feb 21, 2018 at 1:57 PM, Masahiro Yamada <yamada.masahiro@socionext.com> wrote: > 2018-02-21 19:52 GMT+09:00 Arnd Bergmann <arnd@arndb.de>: >> On Wed, Feb 21, 2018 at 11:20 AM, Masahiro Yamada >> <yamada.masahiro@socionext.com> wrote: >>> 2018-02-21 18:56 GMT+09:00 Arnd Bergmann <arnd@arndb.de>: >>>> On Wed, Feb 21, 2018 at 8:38 AM, Masahiro Yamada >>>> <yamada.masahiro@socionext.com> wrote: >>>>> 2018-02-20 0:18 GMT+09:00 Ulf Magnusson <ulfalizer@gmail.com>: > > Hmm, I think I can implement those somehow. > But, I hope we do not have many instances like this... > > > If you know more naive cases, please share your knowledge. >
One case that comes to mind would be architecture level selection on 32-bit ARM, which is roughly this (I probably have some details wrong, but you get the idea):
- older compilers don't support the latest architecture setting (-march=armv8 or -march=armv7ve) - newer compilers no longer support really old architectures (-march=armv4) - setting -mthumb requires setting one of -march=armv7-a, armv7ve, armv7-m or armv8 if the compiler doesn't default to those - on a compiler that defaults to -marm, setting -march=armv7-m requires setting -mthumb (IIRC) - really old compilers only support OABI, but not EABI - newer compilers no longer support OABI - mthumb requires EABI - armv6 and higher are subtly broken with OABI, but only when using certain inline assembly with 64-bit arguments in register pairs.
I think we just shouldn't try to capture all of the above correctly in Kconfig conditionals.
Arnd
| |