summaryrefslogtreecommitdiff
path: root/config
diff options
context:
space:
mode:
authorAlexey Neyman <stilor@att.net>2017-02-11 07:55:33 (GMT)
committerGitHub <noreply@github.com>2017-02-11 07:55:33 (GMT)
commit4d49730711731efc99f371da3b533c3f703fa3e5 (patch)
tree483c0a382d7f68f197df56d89bc4eacb4c92bc21 /config
parent93db5800918ad7afbb6e6781fd48f504eb1eca76 (diff)
parent4ccbf49d1109bc435253d24b901d53feb37fb22b (diff)
Merge pull request #586 from stilor/restore-old-kernel-libc
Restore old kernel/glibc versions
Diffstat (limited to 'config')
-rw-r--r--config/kernel/linux.in179
-rw-r--r--config/libc/glibc.in68
-rw-r--r--config/libc/glibc.in.247
3 files changed, 263 insertions, 31 deletions
diff --git a/config/kernel/linux.in b/config/kernel/linux.in
index 940d92e..0886f4c 100644
--- a/config/kernel/linux.in
+++ b/config/kernel/linux.in
@@ -38,6 +38,11 @@ endif # KERNEL_LINUX_CUSTOM
if ! KERNEL_LINUX_CUSTOM
+# GLIBC and kernel are special when it comes to obsoletion. Users
+# of crosstool-ng depend on the ability to build new toolchains matching
+# the kernel/libc versions of a particular target system, and LTS releases
+# are still using quite ancient versions. Please do not retire versions
+# (including versions in between) until the EOL dates indicated below.
choice
bool
prompt "Linux kernel version"
@@ -53,38 +58,184 @@ config KERNEL_V_4_8
prompt "4.8.17 (EOL)"
depends on OBSOLETE
+config KERNEL_V_4_7
+ bool
+ prompt "4.7.10 (EOL)"
+ depends on OBSOLETE
+
+config KERNEL_V_4_6
+ bool
+ prompt "4.6.7 (EOL)"
+ depends on OBSOLETE
+
+config KERNEL_V_4_5
+ bool
+ prompt "4.5.7 (EOL)"
+ depends on OBSOLETE
+
+# EOL 04/2021 [Ubuntu16.04]
config KERNEL_V_4_4
bool
prompt "4.4.47"
+config KERNEL_V_4_3
+ bool
+ prompt "4.3.6 (EOL)"
+ depends on OBSOLETE
+
+config KERNEL_V_4_2
+ bool
+ prompt "4.2.8 (EOL)"
+ depends on OBSOLETE
+
config KERNEL_V_4_1
bool
prompt "4.1.38"
+config KERNEL_V_4_0
+ bool
+ prompt "4.0.9 (EOL)"
+ depends on OBSOLETE
+
+config KERNEL_V_3_19
+ bool
+ prompt "3.19.8 (EOL)"
+ depends on OBSOLETE
+
config KERNEL_V_3_18
bool
prompt "3.18.47 (EOL)"
+ depends on OBSOLETE
+
+config KERNEL_V_3_17
+ bool
+ prompt "3.17.8 (EOL)"
+ depends on OBSOLETE
config KERNEL_V_3_16
bool
prompt "3.16.39"
+config KERNEL_V_3_15
+ bool
+ prompt "3.15.10 (EOL)"
+ depends on OBSOLETE
+
+config KERNEL_V_3_14
+ bool
+ prompt "3.14.79 (EOL)"
+ depends on OBSOLETE
+
+# EOL 04/2019 [Ubuntu14.04]
+config KERNEL_V_3_13
+ bool
+ prompt "3.13.11 (EOL)"
+ depends on OBSOLETE
+
config KERNEL_V_3_12
bool
prompt "3.12.70"
+config KERNEL_V_3_11
+ bool
+ prompt "3.11.10 (EOL)"
+ depends on OBSOLETE
+
+# EOL 06/2024 [CentOS7.x]
config KERNEL_V_3_10
bool
prompt "3.10.104"
+config KERNEL_V_3_9
+ bool
+ prompt "3.9.11 (EOL)"
+ depends on OBSOLETE
+
+config KERNEL_V_3_8
+ bool
+ prompt "3.8.13 (EOL)"
+ depends on OBSOLETE
+
+config KERNEL_V_3_7
+ bool
+ prompt "3.7.10 (EOL)"
+ depends on OBSOLETE
+
+config KERNEL_V_3_6
+ bool
+ prompt "3.6.11 (EOL)"
+ depends on OBSOLETE
+
+config KERNEL_V_3_5
+ bool
+ prompt "3.5.7 (EOL)"
+ depends on OBSOLETE
+
config KERNEL_V_3_4
bool
prompt "3.4.113"
+config KERNEL_V_3_3
+ bool
+ prompt "3.3.8 (EOL)"
+ depends on OBSOLETE
+
+# EOL 04/2017 [Ubuntu12.04]
config KERNEL_V_3_2
bool
prompt "3.2.84"
+config KERNEL_V_3_1
+ bool
+ prompt "3.1.10 (EOL)"
+ depends on OBSOLETE
+
+config KERNEL_V_3_0
+ bool
+ prompt "3.0.101 (EOL)"
+ depends on OBSOLETE
+
+config KERNEL_V_2_6_39
+ bool
+ prompt "2.6.39.4 (EOL)"
+ depends on OBSOLETE
+
+config KERNEL_V_2_6_38
+ bool
+ prompt "2.6.38.8 (EOL)"
+ depends on OBSOLETE
+
+config KERNEL_V_2_6_37
+ bool
+ prompt "2.6.37.6 (EOL)"
+ depends on OBSOLETE
+
+config KERNEL_V_2_6_36
+ bool
+ prompt "2.6.36.4 (EOL)"
+ depends on OBSOLETE
+
+config KERNEL_V_2_6_35
+ bool
+ prompt "2.6.35.9 (EOL)"
+ depends on OBSOLETE
+
+config KERNEL_V_2_6_34
+ bool
+ prompt "2.6.34.7 (EOL)"
+ depends on OBSOLETE
+
+config KERNEL_V_2_6_33
+ bool
+ prompt "2.6.33.7 (EOL)"
+ depends on OBSOLETE
+
+# EOL 11/2020 [CentOS6.x]
+config KERNEL_V_2_6_32
+ bool
+ prompt "2.6.32.27 (EOL)"
+ depends on OBSOLETE
+
endchoice
config KERNEL_VERSION
@@ -93,13 +244,41 @@ config KERNEL_VERSION
# CT_INSERT_VERSION_STRING_BELOW
default "4.9.8" if KERNEL_V_4_9
default "4.8.17" if KERNEL_V_4_8
+ default "4.7.10" if KERNEL_V_4_7
+ default "4.6.7" if KERNEL_V_4_6
+ default "4.5.7" if KERNEL_V_4_5
default "4.4.47" if KERNEL_V_4_4
+ default "4.3.6" if KERNEL_V_4_3
+ default "4.2.8" if KERNEL_V_4_2
default "4.1.38" if KERNEL_V_4_1
+ default "4.0.9" if KERNEL_V_4_0
+ default "3.19.8" if KERNEL_V_3_19
default "3.18.47" if KERNEL_V_3_18
+ default "3.17.8" if KERNEL_V_3_17
default "3.16.39" if KERNEL_V_3_16
+ default "3.15.10" if KERNEL_V_3_15
+ default "3.14.79" if KERNEL_V_3_14
+ default "3.13.11" if KERNEL_V_3_13
default "3.12.70" if KERNEL_V_3_12
+ default "3.11.10" if KERNEL_V_3_11
default "3.10.104" if KERNEL_V_3_10
+ default "3.9.11" if KERNEL_V_3_9
+ default "3.8.13" if KERNEL_V_3_8
+ default "3.7.10" if KERNEL_V_3_7
+ default "3.6.11" if KERNEL_V_3_6
+ default "3.5.7" if KERNEL_V_3_5
default "3.4.113" if KERNEL_V_3_4
+ default "3.3.8" if KERNEL_V_3_3
default "3.2.84" if KERNEL_V_3_2
+ default "3.1.10" if KERNEL_V_3_1
+ default "3.0.101" if KERNEL_V_3_0
+ default "2.6.39.4" if KERNEL_V_2_6_39
+ default "2.6.38.8" if KERNEL_V_2_6_38
+ default "2.6.37.6" if KERNEL_V_2_6_37
+ default "2.6.36.4" if KERNEL_V_2_6_36
+ default "2.6.35.9" if KERNEL_V_2_6_35
+ default "2.6.34.7" if KERNEL_V_2_6_34
+ default "2.6.33.7" if KERNEL_V_2_6_33
+ default "2.6.32.27" if KERNEL_V_2_6_32
endif # ! KERNEL_LINUX_CUSTOM
diff --git a/config/libc/glibc.in b/config/libc/glibc.in
index 767cbbf..9e4ff56 100644
--- a/config/libc/glibc.in
+++ b/config/libc/glibc.in
@@ -65,6 +65,11 @@ config CC_GLIBC_SHOW_LINARO
Linaro: http://www.linaro.org/
+# GLIBC and kernel are special when it comes to obsoletion. Users
+# of crosstool-ng depend on the ability to build new toolchains matching
+# the kernel/libc versions of a particular target system, and LTS releases
+# are still using quite ancient versions. Please do not retire versions
+# (including versions in between) until the EOL dates indicated below.
choice
bool
prompt "glibc version"
@@ -81,6 +86,7 @@ config LIBC_GLIBC_V_2_24
prompt "2.24"
select LIBC_GLIBC_2_23_or_later
+# EOL 04/2021 [Ubuntu16.04]
config LIBC_GLIBC_V_2_23
bool
prompt "2.23"
@@ -111,15 +117,64 @@ config LIBC_GLIBC_V_2_20
select LIBC_GLIBC_2_20_or_later
depends on OBSOLETE
+# EOL 04/2019 [Ubuntu14.04]
config LIBC_GLIBC_V_2_19
bool
prompt "2.19 (OBSOLETE)"
depends on OBSOLETE
+ select LIBC_GLIBC_2_17_or_later
config LIBC_GLIBC_V_2_18
bool
prompt "2.18 (OBSOLETE)"
depends on OBSOLETE
+ select LIBC_GLIBC_2_17_or_later
+
+# EOL 06/2024 [CentOS7.x]
+config LIBC_GLIBC_V_2_17
+ bool
+ prompt "2.17 (OBSOLETE)"
+ depends on OBSOLETE
+ select LIBC_GLIBC_2_17_or_later
+
+config LIBC_GLIBC_V_2_16_0
+ bool
+ prompt "2.16.0 (OBSOLETE)"
+ depends on OBSOLETE
+
+# EOL 04/2017 [Ubuntu12.04]
+config LIBC_GLIBC_V_2_15
+ bool
+ prompt "2.15 (OBSOLETE)"
+ depends on OBSOLETE
+
+config LIBC_GLIBC_V_2_14_1
+ bool
+ prompt "2.14.1 (OBSOLETE)"
+ depends on OBSOLETE
+
+config LIBC_GLIBC_V_2_14
+ bool
+ prompt "2.14 (OBSOLETE)"
+ depends on OBSOLETE
+
+config LIBC_GLIBC_V_2_13
+ bool
+ prompt "2.13 (OBSOLETE)"
+ depends on OBSOLETE
+
+# This version did not have glibc-ports addon released
+config LIBC_GLIBC_V_2_12_2
+ bool
+ prompt "2.12.2 (OBSOLETE)"
+ depends on OBSOLETE
+ depends on !LIBC_GLIBC_NEEDS_PORTS
+
+# EOL 11/2020 [CentOS6.x]
+config LIBC_GLIBC_V_2_12_1
+ bool
+ prompt "2.12.1 (OBSOLETE)"
+ depends on OBSOLETE
endchoice
@@ -134,6 +189,11 @@ config LIBC_GLIBC_2_23_or_later
# It is no longer possible to build glibc without pthread!
config LIBC_GLIBC_2_20_or_later
bool
+ select LIBC_GLIBC_2_17_or_later
+
+# DeMark no more ports
+config LIBC_GLIBC_2_17_or_later
+ bool
if ! LIBC_GLIBC_CUSTOM
@@ -150,5 +210,13 @@ config LIBC_VERSION
default "2.20" if LIBC_GLIBC_V_2_20
default "2.19" if LIBC_GLIBC_V_2_19
default "2.18" if LIBC_GLIBC_V_2_18
+ default "2.17" if LIBC_GLIBC_V_2_17
+ default "2.16.0" if LIBC_GLIBC_V_2_16_0
+ default "2.15" if LIBC_GLIBC_V_2_15
+ default "2.14.1" if LIBC_GLIBC_V_2_14_1
+ default "2.14" if LIBC_GLIBC_V_2_14
+ default "2.13" if LIBC_GLIBC_V_2_13
+ default "2.12.2" if LIBC_GLIBC_V_2_12_2
+ default "2.12.1" if LIBC_GLIBC_V_2_12_1
endif # ! LIBC_GLIBC_CUSTOM
diff --git a/config/libc/glibc.in.2 b/config/libc/glibc.in.2
index 77afc1b..9d3c2e1 100644
--- a/config/libc/glibc.in.2
+++ b/config/libc/glibc.in.2
@@ -5,19 +5,22 @@
# This list must be carefully in sync with the architectures names
# we can find in config/arch/*
+# Ports were integrated into the main tarball in 2.17
config LIBC_GLIBC_PORTS_EXTERNAL
- bool
- default n
+ def_bool y
+ depends on !LIBC_GLIBC_2_17_or_later
-config LIBC_GLIBC_MAY_FORCE_PORTS
- bool
- default y if ARCH_arm
- default y if ARCH_mips
- select LIBC_GLIBC_USE_PORTS
- depends on !LIBC_GLIBC_2_20_or_later
+config LIBC_GLIBC_NEEDS_PORTS
+ def_bool y
+ depends on ARCH_alpha || ARCH_arm || ARCH_m68k || ARCH_mips || ARCH_powerpc
+
+# Ports are no longer an add-on starting with 2.20
+config LIBC_GLIBC_USE_PORTS
+ def_bool y
+ depends on LIBC_GLIBC_NEEDS_PORTS && !LIBC_GLIBC_2_20_or_later
# Force using the BFD linker during the toolchain build
-config LIBC_glibc_familly
+config LIBC_glibc_family
bool
default y
select BINUTILS_FORCE_LD_BFD_DEFAULT
@@ -109,19 +112,6 @@ config LIBC_GLIBC_FORCE_UNWIND
of glibc on some architectures
(seen on s390, s390x and x86_64).
-config LIBC_GLIBC_USE_PORTS
- bool
- prompt "Use the ports addon"
- depends on !LIBC_GLIBC_2_20_or_later
- help
- The ports addon contains some architecture ports that are not available
- in the official distribution.
-
- For example, this is the case for ARM with glibc-2.4 and above.
-
- Say n only if you're sure that your architecture is in the official
- distribution for your chosen version.
-
config LIBC_ADDONS_LIST
string
prompt "Extra addons"
@@ -131,17 +121,12 @@ config LIBC_ADDONS_LIST
You need to specify neither linuxthreads nor nptl, as they are added
automagically for you depending on the threading model you chose
- earlier.
+ earlier and on libc version selected.
- Eg.: crypt (for very old libces)
+ Also, do not specify ports even if applicable to the selected libc
+ version/architecture; it is selected automatically.
-if LIBC_GLIBC_USE_PORTS || ( LIBC_ADDONS_LIST != "" )
-comment "WARNING !!! "
-comment "| For glibc >= 2.8, it can happen that the tarballs "
-comment "| for the addons are not available for download. "
-comment "| If that happens, bad luck... Try a previous version "
-comment "| or try again later... :-( "
-endif
+ Eg.: libidn
config LIBC_LOCALES
bool