aboutsummaryrefslogtreecommitdiff
path: root/config
diff options
context:
space:
mode:
Diffstat (limited to 'config')
-rw-r--r--config/arch/arc.in16
-rw-r--r--config/arch/arm.in1
-rw-r--r--config/arch/riscv.in3
-rw-r--r--config/cc/gcc.in4
-rw-r--r--config/configure.in.in12
-rw-r--r--config/debug/gdb.in7
-rw-r--r--config/debug/gdb.in.gdbserver1
-rw-r--r--config/global/download.in5
-rw-r--r--config/global/extract.in18
-rw-r--r--config/global/paths.in2
-rw-r--r--config/libc/glibc.in12
11 files changed, 66 insertions, 15 deletions
diff --git a/config/arch/arc.in b/config/arch/arc.in
new file mode 100644
index 00000000..d7c6e043
--- /dev/null
+++ b/config/arch/arc.in
@@ -0,0 +1,16 @@
+# ARC specific configuration file
+
+## no-package
+## select ARCH_SUPPORTS_32
+## select ARCH_DEFAULT_32
+## select ARCH_SUPPORTS_BOTH_MMU
+## select ARCH_DEFAULT_HAS_MMU
+## select ARCH_SUPPORTS_EITHER_ENDIAN
+## select ARCH_DEFAULT_LE
+## select ARCH_SUPPORTS_WITH_CPU
+## select GCC_REQUIRE_7_or_later
+## select BINUTILS_REQUIRE_2_30_or_later
+## select LINUX_REQUIRE_4_8_or_later if KERNEL_LINUX
+##
+## help The Synopsys DesignWare ARC architecture, see more info here:
+## help https://www.synopsys.com/designware-ip/processor-solutions/arc-processors.html
diff --git a/config/arch/arm.in b/config/arch/arm.in
index 7ce7ef0f..37575aa0 100644
--- a/config/arch/arm.in
+++ b/config/arch/arm.in
@@ -15,6 +15,7 @@
## select ARCH_SUPPORTS_WITH_FLOAT if ARCH_32
## select ARCH_SUPPORTS_WITH_FPU if ARCH_32
## select ARCH_SUPPORTS_SOFTFP if ARCH_32
+## select LINUX_REQUIRE_3_7_or_later if ARCH_64 && KERNEL_LINUX
## help The ARM architecture, as defined by:
## help http://www.arm.com/
diff --git a/config/arch/riscv.in b/config/arch/riscv.in
index 4efde976..109556a7 100644
--- a/config/arch/riscv.in
+++ b/config/arch/riscv.in
@@ -4,9 +4,12 @@
## depends on EXPERIMENTAL
##
## select ARCH_SUPPORTS_32
+## select ARCH_SUPPORTS_64
## select ARCH_DEFAULT_32
+## select ARCH_SUPPORTS_BOTH_MMU
## select ARCH_SUPPORTS_WITH_ABI
## select ARCH_SUPPORTS_WITH_ARCH
+## select ARCH_SUPPORTS_WITH_TUNE
## select GCC_REQUIRE_7_or_later
## help The RISC-V architecture, as defined by:
diff --git a/config/cc/gcc.in b/config/cc/gcc.in
index 48ec5562..74fbb70a 100644
--- a/config/cc/gcc.in
+++ b/config/cc/gcc.in
@@ -11,8 +11,10 @@
## select ISL_REQUIRE_0_15_or_later if ISL_NEEDED && GCC_7_or_later
# GCC6 requires ISL 0.14+ (it says 0.14-0.16, but accepts newer ISL as well)
## select ISL_REQUIRE_0_14_or_later if ISL_NEEDED && GCC_6_or_later
-# GCC5 requires ISL 0.12+ (again, it says 0.12-0.16, but also accepts newer ISL)
+# GCC5 requires ISL 0.12+ (again, it says 0.12-0.16, but also accepts newer ISL up to 0.18;
+# fails to compile with 0.19+)
## select ISL_REQUIRE_0_12_or_later if ISL_NEEDED && GCC_5_or_later
+## select ISL_REQUIRE_0_18_or_older if ISL_NEEDED && GCC_5_or_later && !GCC_6_or_later
# GCC4.9 requires ISL 0.10..0.15
# GCC4.8 requires ISL 0.10..0.14
## select ISL_REQUIRE_0_10_or_later if ISL_NEEDED && GCC_4_8_or_later
diff --git a/config/configure.in.in b/config/configure.in.in
index c8003a03..3d6a628b 100644
--- a/config/configure.in.in
+++ b/config/configure.in.in
@@ -45,5 +45,17 @@ config CONFIGURE_has_svn
config CONFIGURE_has_git
@KCONFIG_git@
+config CONFIGURE_has_md5sum
+ @KCONFIG_md5sum@
+
+config CONFIGURE_has_sha1sum
+ @KCONFIG_sha1sum@
+
+config CONFIGURE_has_sha256sum
+ @KCONFIG_sha256sum@
+
+config CONFIGURE_has_sha512sum
+ @KCONFIG_sha512sum@
+
config CONFIGURE_has_install_with_strip_program
@KCONFIG_install_with_strip_program@
diff --git a/config/debug/gdb.in b/config/debug/gdb.in
index 02882aa0..a9fab104 100644
--- a/config/debug/gdb.in
+++ b/config/debug/gdb.in
@@ -17,3 +17,10 @@ config GDB_HAS_PYTHON
config GDB_INSTALL_GDBINIT
bool
default y if GDB_7_0_or_later
+
+# GDB 8.0 now requires C++ for build. GDB 7.12 offered a configure
+# switch to fall back to C. We want to use that option because
+# the conversion in 7.12 was incomplete and had some breakages.
+config GDB_HAS_DISABLE_CXX_BUILD
+ def_bool y
+ depends on GDB_7_12_or_later && !GDB_8_0_or_later
diff --git a/config/debug/gdb.in.gdbserver b/config/debug/gdb.in.gdbserver
index 8e999b41..d7f1bb81 100644
--- a/config/debug/gdb.in.gdbserver
+++ b/config/debug/gdb.in.gdbserver
@@ -16,7 +16,6 @@ config GDB_GDBSERVER_HAS_IPA_LIB
depends on GDB_7_2_or_later
default y
-# gdbserver is then linked with "-static -Wl,--dynamic-list=..." which
config GDB_GDBSERVER_STATIC
bool
prompt "Build a static gdbserver"
diff --git a/config/global/download.in b/config/global/download.in
index 89b05cea..57f42e6f 100644
--- a/config/global/download.in
+++ b/config/global/download.in
@@ -135,6 +135,7 @@ endif # USE_MIRROR
config VERIFY_DOWNLOAD_DIGEST
bool "Verify download digests (checksums)"
default y
+ depends on CONFIGURE_has_sha512sum || CONFIGURE_has_sha256sum || CONFIGURE_has_sha1sum || CONFIGURE_has_md5sum
if VERIFY_DOWNLOAD_DIGEST
@@ -143,14 +144,18 @@ choice
config VERIFY_DOWNLOAD_DIGEST_SHA512
bool "SHA-512"
+ depends on CONFIGURE_has_sha512sum
config VERIFY_DOWNLOAD_DIGEST_SHA256
+ depends on CONFIGURE_has_sha256sum
bool "SHA-256"
config VERIFY_DOWNLOAD_DIGEST_SHA1
+ depends on CONFIGURE_has_sha1sum
bool "SHA-1"
config VERIFY_DOWNLOAD_DIGEST_MD5
+ depends on CONFIGURE_has_md5sum
bool "MD5"
endchoice
diff --git a/config/global/extract.in b/config/global/extract.in
index 58f7b956..ba7f5f4c 100644
--- a/config/global/extract.in
+++ b/config/global/extract.in
@@ -40,19 +40,16 @@ config ONLY_EXTRACT
Useful to look at the code before doing the build itself.
choice
- prompt "Patches origin"
- bool
+ bool "Patches origin"
default PATCH_BUNDLED
config PATCH_BUNDLED
- bool
- prompt "Bundled only"
+ bool "Bundled only"
help
Only apply patches bundled with crosstool-NG.
config PATCH_LOCAL
- bool
- prompt "Local only (EXPERIMENTAL)"
+ bool "Local only"
select PATCH_USE_LOCAL
depends on EXPERIMENTAL
help
@@ -61,16 +58,14 @@ config PATCH_LOCAL
copy them into your local directory if needed.
config PATCH_BUNDLED_LOCAL
- bool
- prompt "Bundled, then local"
+ bool "Bundled, then local"
select PATCH_USE_LOCAL
help
Apply the patches bundled with crosstool-NG, then apply your local
patches.
config PATCH_LOCAL_BUNDLED
- bool
- prompt "Local, then bundled"
+ bool "Local, then bundled"
select PATCH_USE_LOCAL
depends on EXPERIMENTAL
help
@@ -79,8 +74,7 @@ config PATCH_LOCAL_BUNDLED
to apply on top of your local patches.
config PATCH_NONE
- bool
- prompt "None"
+ bool "None"
depends on EXPERIMENTAL
help
Don't use any patch at all.
diff --git a/config/global/paths.in b/config/global/paths.in
index 39e15f35..b4e93ee0 100644
--- a/config/global/paths.in
+++ b/config/global/paths.in
@@ -42,7 +42,7 @@ config WORK_DIR
config BUILD_TOP_DIR
string
- default "${CT_WORK_DIR}/${CT_HOST:+HOST-${CT_HOST}/}${CT_TARGET}"
+ default "${CT_WORK_DIR:-${CT_TOP_DIR}/.build}/${CT_HOST:+HOST-${CT_HOST}/}${CT_TARGET}"
config PREFIX_DIR
string
diff --git a/config/libc/glibc.in b/config/libc/glibc.in
index a297bb15..5916a83c 100644
--- a/config/libc/glibc.in
+++ b/config/libc/glibc.in
@@ -320,4 +320,16 @@ config GLIBC_MIN_KERNEL
default LINUX_VERSION if GLIBC_KERNEL_VERSION_AS_HEADERS
default GLIBC_MIN_KERNEL_VERSION if GLIBC_KERNEL_VERSION_CHOSEN
+# All supported versions of glibc build cleanly with GCC7 and earlier.
+# GCC8-related fixes were only available in glibc 2.27.
+config GLIBC_ENABLE_WERROR
+ bool "Enable -Werror during the build"
+ default y if GCC_7_or_older
+ default y if GCC_8_or_later && GLIBC_2_27_or_later
+ help
+ By default, glibc enables strict warning checks during the build.
+ However, older version of glibc may not build with newer versions
+ of the compiler than there were available at the time of a glibc
+ release (because newer compilers typically have better diagnostics).
+
endif # KERNEL_LINUX