Commit Graph

22 Commits

Author SHA1 Message Date
Chris Packham
f5e0d33ab4 Allow libsanitizer on architectures that support it
libsanitizer is only supported on selected architectures. Add
ARCH_SUPPORTS_LIBSANITIZER and have architectures select this option
based on the list of supported configurations from GCC's
libsanitizer/configure.tgt. Support for mips64 was added in GCC12 so
this is an additional condition for the mips architecture.

Fixes #1733

Signed-off-by: Chris Packham <judge.packham@gmail.com>
2022-07-11 19:49:23 +12:00
Chen Tao
c368525d5b kconfig: modify rules for multilibs configuration
fix conflict options when compiling multilibs on ARM based architecture.
"--with-arch", "--with-cpu", "--with-fpu", "--with-float", and
"--with-mode" should not be configured with "--with-multilib-list=list"
when configuring multilibs.

Signed-off-by: Chen Tao <t.clydechen@gmail.com>
2022-06-28 20:53:01 +12:00
Ola Olsson
d187ee46b3 Fix typo in ARM/thumb help
Signed-off-by: Ola Olsson <ola1olsson@gmail.com>
2019-08-28 14:19:30 +02:00
Alexey Neyman
d1910b945b Restrict flat format to architectures that support it
Fixes #878

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-12-01 15:08:46 -08:00
Alexey Neyman
481cbaac9b Disallow linux versions before 3.7 for aarch64
Fixes #1028

Signed-off-by: Alexey Neyman <stilor@att.net>
2018-09-29 11:30:54 -07:00
Alexey Neyman
9fdb93cce0 Make comp.libs use generated templates, too
This allows us to include the component-to-package relation in the
generated kconfig files and make use of that information in the
show-config.sh script.

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-11-29 23:44:49 -08:00
Alexey Neyman
413f5f6100 Super-H multilib toolchain fixes
1. On SuperH, configuring GCC with explicit variant of the CPU
(like "sh4") limits the default set of multilibs to just that CPU
and requires --with-multilib-list to change. Allow for "unspecified"
variant, so that we can defer to GCC to determine the list.

2. Support toolchains with both endiannesses at the same time.

3. Add a SuperH/newlib sample

4. Add more flags processing for uClibc

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-09-03 12:11:23 -07:00
Alexey Neyman
ff0a1a3da6 Switch gen-kconfig to new framework
Also:
- Move companion_* to comp_* to match the kconfig symbols
- Replace bootstrap with former gen-versions.sh
- Fold *.in.2 into their respective first parts; this moves common
  options to the end - if it is undesirable, inclusion of *.in
  can be moved where *.in.2 used to be (but that will also move
  version selection after common options).
- Retire addToolVersion.sh (may later replace with a more
  comprehensive script that tries to download the added tarballs,
  copy the patches and try to apply them, and create a version.desc).

Signed-off-by: Alexey Neyman <stilor@att.net>
2017-07-08 10:57:56 -07:00
Alexey Neyman
bb704f532a Allow --with-cpu/--with-tune for !arm.
The configure error mentioned in the commits that disable
--with-arch/--with-tune when --with-cpu is specified is specific to ARM
builds. For other architectures, it makes sense (hey, it even makes
sense for ARM - read 'info gcc'! - it is just a shortcoming of ARM
build, apparently).

Thus, add an arch setting ARCH_EXCLUSIVE_WITH_CPU (currently, set only
for ARM) that will trigger current behavior. Permit combinations of
--with-arch/cpu/tune for other arches.

Signed-off-by: Alexey Neyman <stilor@att.net>
2015-11-14 15:04:55 -08:00
Yann E. MORIN"
1bf982dd68 arch/arm: add support for AArch64
AArch64 id the 64-bit variant for ARM.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Zhenqiang Chen <zhenqiang.chen@linaro.org>
Cc: Michael Hope <michael.hope@linaro.org>
2013-12-30 23:28:18 +01:00
Yann E. MORIN"
4c592b8758 arch/arm: ARM supports setting the floating point type
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-11-24 19:38:37 +01:00
Yann E. MORIN"
88d01dd861 arch: rename the SUPPORT_XXX options
First, 'SUPPORT' should be spelled 'SUPPORTS'.

Second, 'SUPPORT_XXX' really means 'supports --with-xxx', so rename the
affected options accordingly. Update the affected archs to match the new
namings.

Reported-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-11-30 00:25:22 +01:00
Yann E. MORIN"
d6ab57ffcb arch/arm: ARM supports the softfp convention
ARM compilers can be built for soft float (software only, floats in
core registers), hard float (uses floating point instructions, floats
in FPU registers), or the half-way house softfp (uses floating point
instructions, floats in core registers).

Signed-off-by: Michael Hope <michael.hope@linaro.org>
[yann.morin.1998@anciens.enib.fr: split the original patch]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-10-19 15:27:32 +13:00
Yann E. MORIN"
53892de14c config: fix recursive deps
The latest kconfig stuff is more stringent when it comes to validating
the dependency of the symbols. It is no longer possible to have a symbol
depend on itself (such as our construct for arch/cc/libc/... was doing).

Fix our generated-file infrastructure to avoid these situations when the
new kconfig stuff will be merged (in a following changeset).

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2011-05-08 19:02:44 +02:00
Yann E. MORIN"
4ae10919c1 arch/arm: move config-options to second-part
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
2010-09-11 12:42:22 +02:00
Yann E. MORIN"
a5035761e7 config/arch: always select the adequate bitness
Even if the selected ARCH does not support different bitness (or we do
not support building with another bitness), still select the appropriate
bitness.
2010-01-09 15:52:06 +01:00
Yann E. MORIN"
c916a69abf arch/arm: add THUMB interworking support
Add config option to build wtarget code with THUMB interworking.
This is used to build the C library as well as all other code
that runs on the target.
2009-10-26 23:11:10 +01:00
Yann E. MORIN"
d2324af8c7 arch/arm: add THUMB mode config option 2009-10-26 09:10:38 +01:00
Yann E. MORIN"
7bf7b7ff9a arch/arm: add support for noMMU
Some ARM cores do not have an MMU (eg. Cortex-Mx and Cortex-Rx series).
Thus, allow the user to configure out the MMU for ARM.
2009-10-21 18:22:05 +02:00
Yann E. MORIN"
288173ce56 config/arch/arm: default to EABI 2009-10-21 18:08:31 +02:00
Yann E. MORIN"
45747a6453 Merge the uClinux/noMMU stuff back to /trunk:
- merge Linux and uClinux back to a single kernel
- add ARCH_USE_MMU and acquainted config options that
  architectures can auto-select
- make binutils and elf2flt two "Binary utilities" that
  go in a single common sub-{menu,directory} structure

 -------- diffstat follows --------
 /trunk/scripts/build/kernel/uclinux.sh      |    2     0     2     0 -
 /trunk/scripts/build/kernel/linux.sh        |  206   204     2     0 +++++++++++++++++++++++++++++
 /trunk/scripts/build/kernel/linux-common.sh |  198     0   198     0 ----------------------------
 /trunk/scripts/build/binutils.sh            |  232     0   232     0 --------------------------------
 /trunk/scripts/build/elf2flt.sh             |  150     0   150     0 ---------------------
 /trunk/scripts/crosstool-NG.sh.in           |    6     4     2     0 +
 /trunk/config/kernel/linux.in               |  249   249     0     0 +++++++++++++++++++++++++++++++++++
 /trunk/config/kernel/linux.in-common        |  252     0   252     0 -----------------------------------
 /trunk/config/kernel/uclinux.in             |   21     0    21     0 ---
 /trunk/config/target.in                     |   23    22     1     0 +++
 /trunk/config/elf2flt.in                    |   49     0    49     0 -------
 /trunk/config/libc/glibc.in                 |    2     1     1     0
 /trunk/config/libc/eglibc.in                |    2     1     1     0
 /trunk/config/config.in                     |    1     0     1     0 -
 /trunk/config/arch/sh.in                    |    1     1     0     0 +
 /trunk/config/arch/arm.in                   |    2     1     1     0
 /trunk/config/arch/powerpc.in               |    1     1     0     0 +
 /trunk/config/arch/ia64.in                  |    1     1     0     0 +
 /trunk/config/arch/alpha.in                 |    1     1     0     0 +
 /trunk/config/arch/x86.in                   |    1     1     0     0 +
 /trunk/config/arch/mips.in                  |    1     1     0     0 +
 /trunk/config/arch/powerpc64.in             |    1     1     0     0 +
 22 files changed, 489 insertions(+), 913 deletions(-)
2009-05-20 20:13:13 +00:00
Yann E. MORIN"
b8d189b296 Separate the architecture config file and function script.
/trunk/kconfig/kconfig.mk   |   46    23    23     0 +++++++++++++++++++++++-----------------------
 /trunk/scripts/crosstool.sh |    2     1     1     0 +-
 /trunk/docs/overview.txt    |   28    11    17     0 +++++++++++-----------------
 3 files changed, 35 insertions(+), 41 deletions(-)
2008-10-05 15:32:00 +00:00