summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexey Neyman <stilor@att.net>2019-03-17 18:37:43 (GMT)
committerGitHub <noreply@github.com>2019-03-17 18:37:43 (GMT)
commit89ba62fb1daad737cdb33c3b1ef69092beeaab0b (patch)
tree34ea6400ccf438cd9de5d42afe636fde0a011f50
parentc4126d9397353a74ca5aff602dd2c0c527e1dd07 (diff)
parente4475c33df8702ec780f24ac482d5d9c2fc72d6d (diff)
Merge pull request #1163 from stilor/docker-fixescrosstool-ng-1.24.0-rc3
Fix build on CentOS6/7
-rw-r--r--config/comp_tools/bison.in1
-rw-r--r--config/comp_tools/make.in7
-rw-r--r--config/configure.in.in15
-rw-r--r--config/debug/gdb.in18
-rw-r--r--config/debug/gdb.in.gdbserver71
-rw-r--r--config/debug/gdb.in.native46
-rw-r--r--config/libc/glibc.in31
-rw-r--r--configure.ac32
-rw-r--r--ct-ng.in2
-rw-r--r--m4/ax_cxx_compile_stdcxx.m4948
-rw-r--r--m4/ctng_set_kconfig_option.m42
-rw-r--r--m4/ctng_version_check.m44
-rw-r--r--packages/bison/3.0.5/chksum8
-rw-r--r--packages/bison/3.0.5/version.desc0
-rw-r--r--packages/bison/3.1/chksum8
-rw-r--r--packages/bison/3.1/version.desc0
-rw-r--r--packages/bison/3.2.4/chksum8
-rw-r--r--packages/bison/3.2.4/version.desc0
-rw-r--r--packages/bison/3.3.2/chksum8
-rw-r--r--packages/bison/3.3.2/version.desc0
-rw-r--r--packages/bison/package.desc6
-rw-r--r--packages/gdb/7.11.1/0004-include-order.patch43
-rw-r--r--packages/gdb/7.11.1/0005-include-gregset.h.patch73
-rw-r--r--packages/gdb/7.12.1/0005-include-order.patch43
-rw-r--r--packages/gdb/7.12.1/0006-duplicate-typedef.patch18
-rw-r--r--packages/glibc/package.desc2
-rw-r--r--packages/make/package.desc1
-rw-r--r--paths.sh.in1
-rw-r--r--samples/aarch64-rpi3-linux-gnu/crosstool.config2
-rw-r--r--samples/aarch64-unknown-linux-android/crosstool.config2
-rw-r--r--samples/aarch64-unknown-linux-gnu/crosstool.config2
-rw-r--r--samples/aarch64-unknown-linux-uclibc/crosstool.config2
-rw-r--r--samples/alphaev56-unknown-linux-gnu/crosstool.config2
-rw-r--r--samples/alphaev67-unknown-linux-gnu/crosstool.config2
-rw-r--r--samples/arc-arc700-linux-uclibc/crosstool.config2
-rw-r--r--samples/arc-multilib-elf32/crosstool.config2
-rw-r--r--samples/arc-multilib-linux-uclibc/crosstool.config2
-rw-r--r--samples/arm-bare_newlib_cortex_m3_nommu-eabi/crosstool.config2
-rw-r--r--samples/arm-cortex_a15-linux-gnueabihf/crosstool.config2
-rw-r--r--samples/arm-cortex_a8-linux-gnueabi/crosstool.config2
-rw-r--r--samples/arm-cortexa5-linux-uclibcgnueabihf/crosstool.config2
-rw-r--r--samples/arm-cortexa9_neon-linux-gnueabihf/crosstool.config2
-rw-r--r--samples/arm-multilib-linux-uclibcgnueabi/crosstool.config2
-rw-r--r--samples/arm-nano-eabi/crosstool.config2
-rw-r--r--samples/arm-unknown-eabi/crosstool.config2
-rw-r--r--samples/arm-unknown-linux-gnueabi/crosstool.config2
-rw-r--r--samples/arm-unknown-linux-musleabi/crosstool.config2
-rw-r--r--samples/arm-unknown-linux-uclibcgnueabi/crosstool.config2
-rw-r--r--samples/arm-unknown-linux-uclibcgnueabihf/crosstool.config2
-rw-r--r--samples/armeb-unknown-eabi/crosstool.config2
-rw-r--r--samples/armeb-unknown-linux-gnueabi/crosstool.config2
-rw-r--r--samples/armeb-unknown-linux-uclibcgnueabi/crosstool.config2
-rw-r--r--samples/armv6-nommu-linux-uclibcgnueabi/crosstool.config3
-rw-r--r--samples/armv6-rpi-linux-gnueabi/crosstool.config2
-rw-r--r--samples/armv7-rpi2-linux-gnueabihf/crosstool.config2
-rw-r--r--samples/armv8-rpi3-linux-gnueabihf/crosstool.config2
-rw-r--r--samples/avr/crosstool.config2
-rw-r--r--samples/i586-geode-linux-uclibc/crosstool.config2
-rw-r--r--samples/i686-centos6-linux-gnu/crosstool.config2
-rw-r--r--samples/i686-centos7-linux-gnu/crosstool.config2
-rw-r--r--samples/i686-nptl-linux-gnu/crosstool.config2
-rw-r--r--samples/i686-ubuntu12.04-linux-gnu/crosstool.config2
-rw-r--r--samples/i686-ubuntu14.04-linux-gnu/crosstool.config2
-rw-r--r--samples/i686-ubuntu16.04-linux-gnu/crosstool.config2
-rw-r--r--samples/i686-w64-mingw32,nios2-spico-elf/crosstool.config2
-rw-r--r--samples/i686-w64-mingw32/crosstool.config2
-rw-r--r--samples/m68k-unknown-elf/crosstool.config2
-rw-r--r--samples/m68k-unknown-uclinux-uclibc/crosstool.config2
-rw-r--r--samples/mips-ar2315-linux-gnu/crosstool.config2
-rw-r--r--samples/mips-malta-linux-gnu/crosstool.config2
-rw-r--r--samples/mips-unknown-elf/crosstool.config2
-rw-r--r--samples/mips-unknown-linux-uclibc/crosstool.config2
-rw-r--r--samples/mips64el-multilib-linux-uclibc/crosstool.config2
-rw-r--r--samples/mipsel-multilib-linux-gnu/crosstool.config2
-rw-r--r--samples/mipsel-sde-elf/crosstool.config2
-rw-r--r--samples/mipsel-unknown-linux-gnu/crosstool.config2
-rw-r--r--samples/moxie-unknown-elf/crosstool.config2
-rw-r--r--samples/moxiebox/crosstool.config2
-rw-r--r--samples/msp430-unknown-elf/crosstool.config2
-rw-r--r--samples/nios2-altera-linux-gnu/crosstool.config2
-rw-r--r--samples/nios2-unknown-elf/crosstool.config2
-rw-r--r--samples/powerpc-405-linux-gnu/crosstool.config2
-rw-r--r--samples/powerpc-8540-linux-gnu/crosstool.config2
-rw-r--r--samples/powerpc-860-linux-gnu/crosstool.config2
-rw-r--r--samples/powerpc-e300c3-linux-gnu/crosstool.config2
-rw-r--r--samples/powerpc-e500v2-linux-gnuspe/crosstool.config2
-rw-r--r--samples/powerpc-unknown-linux-gnu/crosstool.config2
-rw-r--r--samples/powerpc-unknown-linux-uclibc,m68k-unknown-uclinux-uclibc/crosstool.config2
-rw-r--r--samples/powerpc-unknown-linux-uclibc/crosstool.config2
-rw-r--r--samples/powerpc-unknown_nofpu-linux-gnu/crosstool.config2
-rw-r--r--samples/powerpc64-multilib-linux-gnu/crosstool.config2
-rw-r--r--samples/powerpc64-unknown-linux-gnu/crosstool.config2
-rw-r--r--samples/powerpc64le-unknown-linux-gnu/crosstool.config2
-rw-r--r--samples/riscv32-hifive1-elf/crosstool.config2
-rw-r--r--samples/riscv32-unknown-elf/crosstool.config2
-rw-r--r--samples/riscv64-unknown-elf/crosstool.config2
-rw-r--r--samples/riscv64-unknown-linux-gnu/crosstool.config2
-rw-r--r--samples/s390-ibm-linux-gnu/crosstool.config2
-rw-r--r--samples/s390x-ibm-linux-gnu/crosstool.config2
-rw-r--r--samples/sh-multilib-linux-gnu/crosstool.config2
-rw-r--r--samples/sh-multilib-linux-uclibc/crosstool.config2
-rw-r--r--samples/sh-unknown-elf/crosstool.config2
-rw-r--r--samples/sparc-leon-linux-uclibc/crosstool.config2
-rw-r--r--samples/sparc-unknown-linux-gnu/crosstool.config2
-rw-r--r--samples/sparc64-multilib-linux-gnu/crosstool.config2
-rw-r--r--samples/x86_64-centos6-linux-gnu/crosstool.config2
-rw-r--r--samples/x86_64-centos7-linux-gnu/crosstool.config2
-rw-r--r--samples/x86_64-multilib-linux-gnu/crosstool.config2
-rw-r--r--samples/x86_64-multilib-linux-musl/crosstool.config2
-rw-r--r--samples/x86_64-multilib-linux-uclibc,moxie-unknown-moxiebox/crosstool.config2
-rw-r--r--samples/x86_64-multilib-linux-uclibc,powerpc-unknown-elf/crosstool.config2
-rw-r--r--samples/x86_64-multilib-linux-uclibc/crosstool.config2
-rw-r--r--samples/x86_64-ubuntu12.04-linux-gnu/crosstool.config2
-rw-r--r--samples/x86_64-ubuntu14.04-linux-gnu/crosstool.config2
-rw-r--r--samples/x86_64-ubuntu16.04-linux-gnu/crosstool.config2
-rw-r--r--samples/x86_64-unknown-linux-gnu/crosstool.config2
-rw-r--r--samples/x86_64-unknown-linux-uclibc/crosstool.config2
-rw-r--r--samples/x86_64-w64-mingw32,arm-cortexa9_neon-linux-gnueabihf/crosstool.config2
-rw-r--r--samples/x86_64-w64-mingw32,x86_64-pc-linux-gnu/crosstool.config2
-rw-r--r--samples/x86_64-w64-mingw32/crosstool.config2
-rw-r--r--samples/xtensa-fsf-elf/crosstool.config2
-rw-r--r--samples/xtensa-fsf-linux-uclibc/crosstool.config2
-rw-r--r--scripts/build/companion_libs/220-ncurses.sh2
-rw-r--r--scripts/build/companion_tools/050-make.sh6
-rw-r--r--scripts/build/companion_tools/510-bison.sh66
-rw-r--r--scripts/build/debug/300-gdb.sh464
-rw-r--r--scripts/crosstool-NG.sh3
-rw-r--r--scripts/upgrade/v225
-rw-r--r--testing/docker/alpine3.8/EXPERIMENTAL11
-rw-r--r--testing/docker/centos6/Dockerfile3
-rw-r--r--testing/docker/centos7/Dockerfile4
-rwxr-xr-xtesting/docker/dmgr.sh24
-rw-r--r--testing/docker/fedora29/Dockerfile (renamed from testing/docker/fedora28/Dockerfile)4
-rw-r--r--testing/docker/mint19-amd64/Dockerfile2
-rw-r--r--testing/upgrade/kconfig-list/32562
-rwxr-xr-xtesting/upgrade/run.sh25
136 files changed, 4310 insertions, 476 deletions
diff --git a/config/comp_tools/bison.in b/config/comp_tools/bison.in
new file mode 100644
index 0000000..b0dc9e1
--- /dev/null
+++ b/config/comp_tools/bison.in
@@ -0,0 +1 @@
+# GNU bison
diff --git a/config/comp_tools/make.in b/config/comp_tools/make.in
index 8d0ac29..ca7996b 100644
--- a/config/comp_tools/make.in
+++ b/config/comp_tools/make.in
@@ -3,6 +3,7 @@
## default y if !CONFIGURE_has_make_3_81_or_newer
config MAKE_GMAKE_SYMLINK
- bool
- prompt "Add gmake symlink to companion gnu/make"
- depends on COMP_TOOLS_MAKE
+ bool "Create 'gmake' symlink"
+
+config MAKE_GNUMAKE_SYMLINK
+ bool "Create 'gnumake' symlink"
diff --git a/config/configure.in.in b/config/configure.in.in
index 49fdb2e..e042019 100644
--- a/config/configure.in.in
+++ b/config/configure.in.in
@@ -3,6 +3,9 @@
config CONFIGURE_has_static_link
@KCONFIG_static_link@
+config CONFIGURE_has_cxx11
+ @KCONFIG_has_cxx11@
+
config CONFIGURE_has_lzip
@KCONFIG_lzip@
@@ -15,6 +18,9 @@ config CONFIGURE_has_curl
config CONFIGURE_has_make_3_81_or_newer
@KCONFIG_make_3_81_or_newer@
+config CONFIGURE_has_make_4_0_or_newer
+ @KCONFIG_make_4_0_or_newer@
+
config CONFIGURE_has_libtool_2_4_or_newer
@KCONFIG_libtool_2_4_or_newer@
@@ -33,6 +39,15 @@ config CONFIGURE_has_automake_1_15_or_newer
config CONFIGURE_has_gnu_m4_1_4_12_or_newer
@KCONFIG_gnu_m4_1_4_12_or_newer@
+config CONFIGURE_has_python_3_4_or_newer
+ @KCONFIG_python_3_4_or_newer@
+
+config CONFIGURE_has_bison_2_7_or_newer
+ @KCONFIG_bison_2_7_or_newer@
+
+config CONFIGURE_has_python
+ @KCONFIG_python@
+
config CONFIGURE_has_dtc
@KCONFIG_dtc@
diff --git a/config/debug/gdb.in b/config/debug/gdb.in
index a9fab10..7fc539e 100644
--- a/config/debug/gdb.in
+++ b/config/debug/gdb.in
@@ -4,7 +4,6 @@
source "config/debug/gdb.in.cross"
source "config/debug/gdb.in.native"
-source "config/debug/gdb.in.gdbserver"
config GDB_HAS_PKGVERSION_BUGURL
bool
@@ -24,3 +23,20 @@ config GDB_INSTALL_GDBINIT
config GDB_HAS_DISABLE_CXX_BUILD
def_bool y
depends on GDB_7_12_or_later && !GDB_8_0_or_later
+
+# GDB 8.0 requires not just any C++, but recent enough to support C++11.
+# Yes, in 2019 there are still LTS systems still lacking such support.
+# I am looking at you, CentOS 6: no cookie for you, use an older GDB.
+config GDB_DEP_CXX11
+ def_bool y
+ depends on !CONFIGURE_has_cxx11
+ select GDB_REQUIRE_older_than_8_0
+
+config GDB_HAS_IPA_LIB
+ def_bool y
+ depends on GDB_7_2_or_later
+
+# Does GDB need ps_get_thread_area with const qualifier?
+config GDB_CONST_GET_THREAD_AREA
+ bool
+ default y if GDB_older_than_7_12
diff --git a/config/debug/gdb.in.gdbserver b/config/debug/gdb.in.gdbserver
deleted file mode 100644
index d7f1bb8..0000000
--- a/config/debug/gdb.in.gdbserver
+++ /dev/null
@@ -1,71 +0,0 @@
-# Menu for the native gdbserver
-
-config GDB_GDBSERVER
- bool
- prompt "gdbserver"
- default y
- depends on ! BARE_METAL
- select LIBC_UCLIBC_WCHAR if LIBC_UCLIBC && GDB_8_0_or_later
- help
- Build and install a gdbserver for the target, to run on the target.
-
-if GDB_GDBSERVER
-
-config GDB_GDBSERVER_HAS_IPA_LIB
- bool
- depends on GDB_7_2_or_later
- default y
-
-config GDB_GDBSERVER_STATIC
- bool
- prompt "Build a static gdbserver"
- depends on EXPERIMENTAL
- help
- In case you have trouble with dynamic loading of shared libraries,
- you will find that a static gdbserver comes in handy.
-
- However, it has been noticed at least on x86 that enabling this
- option produces an invalid gdbserver binary. It is linked with
- "-static -Wl,--dynamic-list=..." which
- # (a) requests invalid program interpreter
- # (b) crashes glibc/uClibc-ng and does not work with musl
- # See https://sourceware.org/ml/libc-alpha/2017-03/msg00267.html
-
- It is possible it would work with other architectures, hence it is
- not completely removed. Use with care and report to the mailing list
- if the resulting gdbserver works.
-
- For further details, see:
- https://sourceware.org/bugzilla/show_bug.cgi?id=19617
- https://sourceware.org/bugzilla/show_bug.cgi?id=21086
-
-config GDB_GDBSERVER_STATIC_LIBSTDCXX
- bool
- prompt "Link against static libstdc+++"
- depends on !GDB_GDBSERVER_STATIC
- default n
- help
- Say 'y' if you do not want gdbserver to require libstdc++.so on the
- target.
-
-config GDB_GDBSERVER_BUILD_IPA_LIB
- bool
- prompt "Build the IPA library"
- depends on GDB_GDBSERVER_HAS_IPA_LIB && !GDB_GDBSERVER_STATIC
- help
- gdbserver >= 7.2 comes with an optional library to use tracepoints,
- the In Process Agent (IPA) library, libinproctrace.so.
-
- Say 'y' if you indend to use tracepoints when debugging your
- programs with gdbserver.
-
- Note: Currently, building this library is not possible when the
- gdbserver is built statically. This is a limitation in
- crosstool-NG, so do not bug upstream about it...
-
-endif # GDB_GDBSERVER
-
-if BARE_METAL
-comment "In bare-metal, you'll need to "
-comment "provide your own gdbserver stub."
-endif # BARE_METAL
diff --git a/config/debug/gdb.in.native b/config/debug/gdb.in.native
index 48c8575..1ee8ad1 100644
--- a/config/debug/gdb.in.native
+++ b/config/debug/gdb.in.native
@@ -1,4 +1,4 @@
-# Menu for the native GDB
+# Menu for the native GDB binaries (GDB itself and gdbserver)
config GDB_NATIVE
bool
@@ -12,11 +12,35 @@ config GDB_NATIVE
help
Build and install a native gdb for the target, to run on the target.
-if GDB_NATIVE
+config GDB_GDBSERVER
+ bool
+ prompt "gdbserver"
+ default y
+ depends on ! BARE_METAL
+ select LIBC_UCLIBC_WCHAR if LIBC_UCLIBC && GDB_8_0_or_later
+ help
+ Build and install a gdbserver for the target, to run on the target.
+
+if GDB_NATIVE || GDB_GDBSERVER
+
+config GDB_NATIVE_BUILD_IPA_LIB
+ bool
+ prompt "Build the IPA library"
+ depends on GDB_HAS_IPA_LIB && !GDB_NATIVE_STATIC
+ help
+ gdbserver >= 7.2 comes with an optional library to use tracepoints,
+ the In Process Agent (IPA) library, libinproctrace.so.
+
+ Say 'y' if you intend to use tracepoints when debugging your
+ programs with gdbserver.
+
+ Note: Currently, building this library is not possible when the
+ gdbserver is built statically. This is a limitation in
+ crosstool-NG, so do not bug upstream about it...
config GDB_NATIVE_STATIC
bool
- prompt "Build a static native gdb"
+ prompt "Build a static gdb binaries"
depends on EXPERIMENTAL
help
In case you have trouble with dynamic loading of shared libraries,
@@ -31,10 +55,24 @@ config GDB_NATIVE_STATIC
It is possible it would work with other architectures, hence it is
not completely removed. Use with care and report to the mailing list
- if the resulting gdbserver works.
+ if the resulting binaries work.
For further details, see:
https://sourceware.org/bugzilla/show_bug.cgi?id=19617
https://sourceware.org/bugzilla/show_bug.cgi?id=21086
+config GDB_NATIVE_STATIC_LIBSTDCXX
+ bool
+ prompt "Link against static libstdc+++"
+ depends on !GDB_NATIVE_STATIC
+ default n
+ help
+ Say 'y' if you do not want gdbserver to require libstdc++.so on the
+ target.
+
endif # GDB_NATIVE
+
+if BARE_METAL
+comment "In bare-metal, you'll need to "
+comment "provide your own gdbserver stub."
+endif # BARE_METAL
diff --git a/config/libc/glibc.in b/config/libc/glibc.in
index 6598c31..4138707 100644
--- a/config/libc/glibc.in
+++ b/config/libc/glibc.in
@@ -23,8 +23,8 @@ endif
# Glibc has some dependencies on the kernel headers:
config GLIBC_DEP_KERNEL_HEADERS_VERSION
- def_bool y
- select LINUX_REQUIRE_3_2_or_later if GLIBC_2_24_or_later
+ def_bool y
+ select LINUX_REQUIRE_3_2_or_later if GLIBC_2_24_or_later
# Glibc 2.26 requires at least binutils 2.25.
# Also, binutils 2.30 fail while compiling aarch64 glibc; fixed in 2.27
@@ -35,6 +35,33 @@ config GLIBC_DEP_BINUTILS
select BINUTILS_REQUIRE_2_25_or_later if GLIBC_2_26_or_later
select BINUTILS_REQUIRE_older_than_2_30 if GLIBC_older_than_2_26 && ARCH_ARM && ARCH_64
+# Glibc 2.29 requires GCC5+ or, for ppc64le, GCC6.2+. We only support the latest
+# release on GCC6 branch, so just assume it is newer than 6.2
+config GLIBC_DEP_GCC
+ def_bool y
+ select GCC_REQUIRE_5_or_later if GLIBC_2_29_or_later
+ select GCC_REQUIRE_6_or_later if GLIBC_2_29_or_later && ARCH_POWERPC && ARCH_64 && ARCH_LE
+
+# Glibc 2.29 requires bison 2.7 or later. All versions in ct-ng satisfy that
+# version requirement.
+config GLIBC_DEP_BISON
+ def_bool y
+ depends on GLIBC_2_29_or_later && !CONFIGURE_has_bison_2_7_or_newer
+ select COMP_TOOLS_BISON
+
+# Glibc 2.29 now requires Python 3.4 or later, and make 4.0 or later. Ensure
+# we build 'make' as a companion tool if host's make isn't new enough.
+config GLIBC_DEP_PYTHON
+ def_bool y
+ select GLIBC_REQUIRE_older_than_2_29 if !CONFIGURE_has_python_3_4_or_newer
+
+config GLIBC_DEP_MAKE_4_0
+ def_bool y
+ depends on GLIBC_2_29_or_later && !CONFIGURE_has_make_4_0_or_newer
+ select COMP_TOOLS_MAKE
+ select MAKE_REQUIRE_4_0_or_later
+ select MAKE_GNUMAKE_SYMLINK # Override old host make in .build/tools/bin
+
config GLIBC_DEP_GCC
def_bool y
select GCC_REQUIRE_4_9_or_later if GLIBC_2_26_or_later
diff --git a/configure.ac b/configure.ac
index dddbd27..ae4a027 100644
--- a/configure.ac
+++ b/configure.ac
@@ -97,6 +97,9 @@ AC_PROG_YACC
AS_IF([test -z "$CC" -o -z "$CXX"],
[AC_MSG_ERROR([no suitable compiler found])])
+AX_CXX_COMPILE_STDCXX([11],, [optional])
+CTNG_SET_KCONFIG_OPTION([has_cxx11], [${HAVE_CXX11}])
+
# Check to see if the compiler can link statically
AC_MSG_CHECKING([if $CC can static link])
echo "int main() {}" | ${CC} -static -o /dev/null -xc - > /dev/null 2>&1
@@ -113,7 +116,6 @@ AC_PROG_RANLIB
CTNG_PATH_TOOL_REQ([OBJCOPY], [gobjcopy objcopy], [objcopy])
CTNG_PATH_TOOL_REQ([OBJDUMP], [gobjdump objdump], [objdump])
CTNG_PATH_TOOL_REQ([READELF], [greadelf readelf], [readelf])
-CTNG_PATH_TOOL_REQ([BISON], [bison], [bison])
CTNG_CHECK_PROGS_REQ([flex], [flex])
CTNG_CHECK_PROGS_REQ([makeinfo], [makeinfo])
@@ -182,6 +184,13 @@ CTNG_PROG_VERSION_REQ_ANY([MAKE],
[^GNU Make (3\.8[1-9]|3\.9[0-9]|[4-9]\.)],
[make_3_81_or_newer])
+CTNG_PROG_VERSION_REQ_ANY([MAKE],
+ [GNU make >= 4.0],
+ [make],
+ [gmake make],
+ [^GNU Make [4-9]\.],
+ [make_4_0_or_newer])
+
# Check other companion tools that we may or may not build.
CTNG_PROG_VERSION_REQ_ANY([LIBTOOL],
[GNU libtool >= 2.4],
@@ -225,6 +234,27 @@ CTNG_PROG_VERSION([M4],
[\(GNU M4\) ([2-9]\.|1\.[5-9]|1\.[1-4][0-9]|1\.4\.[2-9][0-9]|1\.4\.1[2-9])],
[gnu_m4_1_4_12_or_newer])
+CTNG_PROG_VERSION([PYTHON],
+ [Python],
+ [python],
+ [python37 python3.7 python36 python3.6 python35 python3.5 python34 python3.4 python33 python3.3 python32 python3.2 python31 python3.1 python3 python27 python2.7 python26 python2.6 python2 python],
+ [^Python [23]\.],
+ [python])
+
+CTNG_PROG_VERSION([PYTHON],
+ [Python >= 3.4],
+ [python],
+ [python37 python3.7 python36 python3.6 python35 python3.5 python34 python3.4 python3 python],
+ [^Python 3\.([4-9]|[1-9][0-9]+)\.],
+ [python_3_4_or_newer])
+
+CTNG_PROG_VERSION([BISON],
+ [bison >= 2.7],
+ [bison],
+ [bison],
+ [\(GNU Bison\) (2\.[7-9]|2\.[1-9][0-9]|[3-9]\.)],
+ [bison_2_7_or_newer])
+
AC_SUBST([kconfig_options])
AC_CHECK_PROGS([dtc], [dtc])
diff --git a/ct-ng.in b/ct-ng.in
index 0a12e09..2fad224 100644
--- a/ct-ng.in
+++ b/ct-ng.in
@@ -41,7 +41,7 @@ export CT_VCHECK=
# need to pass it to the upgrade script - which may receive an input that
# was not preprocessed by kconfig, and hence have no string for "up-to-date"
# version.
-export CT_CONFIG_VERSION_CURRENT=2
+export CT_CONFIG_VERSION_CURRENT=3
# Download agents used by scripts.mk
CT_WGET := @wget@
diff --git a/m4/ax_cxx_compile_stdcxx.m4 b/m4/ax_cxx_compile_stdcxx.m4
new file mode 100644
index 0000000..9e9eaed
--- /dev/null
+++ b/m4/ax_cxx_compile_stdcxx.m4
@@ -0,0 +1,948 @@
+# ===========================================================================
+# https://www.gnu.org/software/autoconf-archive/ax_cxx_compile_stdcxx.html
+# ===========================================================================
+#
+# SYNOPSIS
+#
+# AX_CXX_COMPILE_STDCXX(VERSION, [ext|noext], [mandatory|optional])
+#
+# DESCRIPTION
+#
+# Check for baseline language coverage in the compiler for the specified
+# version of the C++ standard. If necessary, add switches to CXX and
+# CXXCPP to enable support. VERSION may be '11' (for the C++11 standard)
+# or '14' (for the C++14 standard).
+#
+# The second argument, if specified, indicates whether you insist on an
+# extended mode (e.g. -std=gnu++11) or a strict conformance mode (e.g.
+# -std=c++11). If neither is specified, you get whatever works, with
+# preference for an extended mode.
+#
+# The third argument, if specified 'mandatory' or if left unspecified,
+# indicates that baseline support for the specified C++ standard is
+# required and that the macro should error out if no mode with that
+# support is found. If specified 'optional', then configuration proceeds
+# regardless, after defining HAVE_CXX${VERSION} if and only if a
+# supporting mode is found.
+#
+# LICENSE
+#
+# Copyright (c) 2008 Benjamin Kosnik <bkoz@redhat.com>
+# Copyright (c) 2012 Zack Weinberg <zackw@panix.com>
+# Copyright (c) 2013 Roy Stogner <roystgnr@ices.utexas.edu>
+# Copyright (c) 2014, 2015 Google Inc.; contributed by Alexey Sokolov <sokolov@google.com>
+# Copyright (c) 2015 Paul Norman <penorman@mac.com>
+# Copyright (c) 2015 Moritz Klammler <moritz@klammler.eu>
+# Copyright (c) 2016, 2018 Krzesimir Nowak <qdlacz@gmail.com>
+#
+# Copying and distribution of this file, with or without modification, are
+# permitted in any medium without royalty provided the copyright notice
+# and this notice are preserved. This file is offered as-is, without any
+# warranty.
+
+#serial 10
+
+dnl This macro is based on the code from the AX_CXX_COMPILE_STDCXX_11 macro
+dnl (serial version number 13).
+
+AC_DEFUN([AX_CXX_COMPILE_STDCXX], [dnl
+ m4_if([$1], [11], [ax_cxx_compile_alternatives="11 0x"],
+ [$1], [14], [ax_cxx_compile_alternatives="14 1y"],
+ [$1], [17], [ax_cxx_compile_alternatives="17 1z"],
+ [m4_fatal([invalid first argument `$1' to AX_CXX_COMPILE_STDCXX])])dnl
+ m4_if([$2], [], [],
+ [$2], [ext], [],
+ [$2], [noext], [],
+ [m4_fatal([invalid second argument `$2' to AX_CXX_COMPILE_STDCXX])])dnl
+ m4_if([$3], [], [ax_cxx_compile_cxx$1_required=true],
+ [$3], [mandatory], [ax_cxx_compile_cxx$1_required=true],
+ [$3], [optional], [ax_cxx_compile_cxx$1_required=false],
+ [m4_fatal([invalid third argument `$3' to AX_CXX_COMPILE_STDCXX])])
+ AC_LANG_PUSH([C++])dnl
+ ac_success=no
+
+ m4_if([$2], [noext], [], [dnl
+ if test x$ac_success = xno; then
+ for alternative in ${ax_cxx_compile_alternatives}; do
+ switch="-std=gnu++${alternative}"
+ cachevar=AS_TR_SH([ax_cv_cxx_compile_cxx$1_$switch])
+ AC_CACHE_CHECK(whether $CXX supports C++$1 features with $switch,
+ $cachevar,
+ [ac_save_CXX="$CXX"
+ CXX="$CXX $switch"
+ AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_testbody_$1])],
+ [eval $cachevar=yes],
+ [eval $cachevar=no])
+ CXX="$ac_save_CXX"])
+ if eval test x\$$cachevar = xyes; then
+ CXX="$CXX $switch"
+ if test -n "$CXXCPP" ; then
+ CXXCPP="$CXXCPP $switch"
+ fi
+ ac_success=yes
+ break
+ fi
+ done
+ fi])
+
+ m4_if([$2], [ext], [], [dnl
+ if test x$ac_success = xno; then
+ dnl HP's aCC needs +std=c++11 according to:
+ dnl http://h21007.www2.hp.com/portal/download/files/unprot/aCxx/PDF_Release_Notes/769149-001.pdf
+ dnl Cray's crayCC needs "-h std=c++11"
+ for alternative in ${ax_cxx_compile_alternatives}; do
+ for switch in -std=c++${alternative} +std=c++${alternative} "-h std=c++${alternative}"; do
+ cachevar=AS_TR_SH([ax_cv_cxx_compile_cxx$1_$switch])
+ AC_CACHE_CHECK(whether $CXX supports C++$1 features with $switch,
+ $cachevar,
+ [ac_save_CXX="$CXX"
+ CXX="$CXX $switch"
+ AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_testbody_$1])],
+ [eval $cachevar=yes],
+ [eval $cachevar=no])
+ CXX="$ac_save_CXX"])
+ if eval test x\$$cachevar = xyes; then
+ CXX="$CXX $switch"
+ if test -n "$CXXCPP" ; then
+ CXXCPP="$CXXCPP $switch"
+ fi
+ ac_success=yes
+ break
+ fi
+ done
+ if test x$ac_success = xyes; then
+ break
+ fi
+ done
+ fi])
+ AC_LANG_POP([C++])
+ if test x$ax_cxx_compile_cxx$1_required = xtrue; then
+ if test x$ac_success = xno; then
+ AC_MSG_ERROR([*** A compiler with support for C++$1 language features is required.])
+ fi
+ fi
+ if test x$ac_success = xno; then
+ HAVE_CXX$1=0
+ AC_MSG_NOTICE([No compiler with C++$1 support was found])
+ else
+ HAVE_CXX$1=1
+ AC_DEFINE(HAVE_CXX$1,1,
+ [define if the compiler supports basic C++$1 syntax])
+ fi
+ AC_SUBST(HAVE_CXX$1)
+])
+
+
+dnl Test body for checking C++11 support
+
+m4_define([_AX_CXX_COMPILE_STDCXX_testbody_11],
+ _AX_CXX_COMPILE_STDCXX_testbody_new_in_11
+)
+
+
+dnl Test body for checking C++14 support
+
+m4_define([_AX_CXX_COMPILE_STDCXX_testbody_14],
+ _AX_CXX_COMPILE_STDCXX_testbody_new_in_11
+ _AX_CXX_COMPILE_STDCXX_testbody_new_in_14
+)
+
+m4_define([_AX_CXX_COMPILE_STDCXX_testbody_17],
+ _AX_CXX_COMPILE_STDCXX_testbody_new_in_11
+ _AX_CXX_COMPILE_STDCXX_testbody_new_in_14
+ _AX_CXX_COMPILE_STDCXX_testbody_new_in_17
+)
+
+dnl Tests for new features in C++11
+
+m4_define([_AX_CXX_COMPILE_STDCXX_testbody_new_in_11], [[
+
+// If the compiler admits that it is not ready for C++11, why torture it?
+// Hopefully, this will speed up the test.
+
+#ifndef __cplusplus
+
+#error "This is not a C++ compiler"
+
+#elif __cplusplus < 201103L
+
+#error "This is not a C++11 compiler"
+
+#else
+
+namespace cxx11
+{
+
+ namespace test_static_assert
+ {
+
+ template <typename T>
+ struct check
+ {
+ static_assert(sizeof(int) <= sizeof(T), "not big enough");
+ };
+
+ }
+
+ namespace test_final_override
+ {
+
+ struct Base
+ {
+ virtual void f() {}
+ };
+
+ struct Derived : public Base
+ {
+ virtual void f() override {}
+ };
+
+ }
+
+ namespace test_double_right_angle_brackets
+ {
+
+ template < typename T >
+ struct check {};
+
+ typedef check<void> single_type;
+ typedef check<check<void>> double_type;
+ typedef check<check<check<void>>> triple_type;
+ typedef check<check<check<check<void>>>> quadruple_type;
+
+ }
+
+ namespace test_decltype
+ {
+
+ int
+ f()
+ {
+ int a = 1;
+ decltype(a) b = 2;
+ return a + b;
+ }
+
+ }
+
+ namespace test_type_deduction
+ {
+
+ template < typename T1, typename T2 >
+ struct is_same
+ {
+ static const bool value = false;
+ };
+
+ template < typename T >
+ struct is_same<T, T>
+ {
+ static const bool value = true;
+ };
+
+ template < typename T1, typename T2 >
+ auto
+ add(T1 a1, T2 a2) -> decltype(a1 + a2)
+ {
+ return a1 + a2;
+ }
+
+ int
+ test(const int c, volatile int v)
+ {
+ static_assert(is_same<int, decltype(0)>::value == true, "");
+ static_assert(is_same<int, decltype(c)>::value == false, "");
+ static_assert(is_same<int, decltype(v)>::value == false, "");
+ auto ac = c;
+ auto av = v;
+ auto sumi = ac + av + 'x';
+ auto sumf = ac + av + 1.0;
+ static_assert(is_same<int, decltype(ac)>::value == true, "");
+ static_assert(is_same<int, decltype(av)>::value == true, "");
+ static_assert(is_same<int, decltype(sumi)>::value == true, "");
+ static_assert(is_same<int, decltype(sumf)>::value == false, "");
+ static_assert(is_same<int, decltype(add(c, v))>::value == true, "");
+ return (sumf > 0.0) ? sumi : add(c, v);
+ }
+
+ }
+
+ namespace test_noexcept
+ {
+
+ int f() { return 0; }
+ int g() noexcept { return 0; }
+
+ static_assert(noexcept(f()) == false, "");
+ static_assert(noexcept(g()) == true, "");
+
+ }
+
+ namespace test_constexpr
+ {
+
+ template < typename CharT >
+ unsigned long constexpr
+ strlen_c_r(const CharT *const s, const unsigned long acc) noexcept
+ {
+ return *s ? strlen_c_r(s + 1, acc + 1) : acc;
+ }
+
+ template < typename CharT >
+ unsigned long constexpr
+ strlen_c(const CharT *const s) noexcept
+ {
+ return strlen_c_r(s, 0UL);
+ }
+
+ static_assert(strlen_c("") == 0UL, "");
+ static_assert(strlen_c("1") == 1UL, "");
+ static_assert(strlen_c("example") == 7UL, "");
+ static_assert(strlen_c("another\0example") == 7UL, "");
+
+ }
+
+ namespace test_rvalue_references
+ {
+
+ template < int N >
+ struct answer
+ {
+ static constexpr int value = N;
+ };
+
+ answer<1> f(int&) { return answer<1>(); }
+ answer<2> f(const int&) { return answer<2>(); }
+ answer<3> f(int&&) { return answer<3>(); }
+
+ void
+ test()
+ {
+ int i = 0;
+ const int c = 0;
+ static_assert(decltype(f(i))::value == 1, "");
+ static_assert(decltype(f(c))::value == 2, "");
+ static_assert(decltype(f(0))::value == 3, "");
+ }
+
+ }
+
+ namespace test_uniform_initialization
+ {
+
+ struct test
+ {
+ static const int zero {};
+ static const int one {1};
+ };
+
+ static_assert(test::zero == 0, "");
+ static_assert(test::one == 1, "");
+
+ }
+
+ namespace test_lambdas
+ {
+
+ void
+ test1()
+ {
+ auto lambda1 = [](){};
+ auto lambda2 = lambda1;
+ lambda1();
+ lambda2();
+ }
+
+ int
+ test2()
+ {
+ auto a = [](int i, int j){ return i + j; }(1, 2);
+ auto b = []() -> int { return '0'; }();
+ auto c = [=](){ return a + b; }();
+ auto d = [&](){ return c; }();
+ auto e = [a, &b](int x) mutable {
+ const auto identity = [](int y){ return y; };
+ for (auto i = 0; i < a; ++i)
+ a += b--;
+ return x + identity(a + b);
+ }(0);
+ return a + b + c + d + e;
+ }
+
+ int
+ test3()
+ {
+ const auto nullary = [](){ return 0; };
+ const auto unary = [](int x){ return x; };
+ using nullary_t = decltype(nullary);
+ using unary_t = decltype(unary);
+ const auto higher1st = [](nullary_t f){ return f(); };
+ const auto higher2nd = [unary](nullary_t f1){
+ return [unary, f1](unary_t f2){ return f2(unary(f1())); };
+ };
+ return higher1st(nullary) + higher2nd(nullary)(unary);
+ }
+
+ }
+
+ namespace test_variadic_templates
+ {
+
+ template <int...>
+ struct sum;
+
+ template <int N0, int... N1toN>
+ struct sum<N0, N1toN...>
+ {
+ static constexpr auto value = N0 + sum<N1toN...>::value;
+ };
+
+ template <>
+ struct sum<>
+ {
+ static constexpr auto value = 0;
+ };
+
+ static_assert(sum<>::value == 0, "");
+ static_assert(sum<1>::value == 1, "");
+ static_assert(sum<23>::value == 23, "");
+ static_assert(sum<1, 2>::value == 3, "");
+ static_assert(sum<5, 5, 11>::value == 21, "");
+ static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, "");
+
+ }
+
+ // http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae
+ // Clang 3.1 fails with headers of libstd++ 4.8.3 when using std::function
+ // because of this.
+ namespace test_template_alias_sfinae
+ {
+
+ struct foo {};
+
+ template<typename T>
+ using member = typename T::member_type;
+
+ template<typename T>
+ void func(...) {}
+
+ template<typename T>
+ void func(member<T>*) {}
+
+ void test();
+
+ void test() { func<foo>(0); }
+
+ }
+
+} // namespace cxx11
+
+#endif // __cplusplus >= 201103L
+
+]])
+
+
+dnl Tests for new features in C++14
+
+m4_define([_AX_CXX_COMPILE_STDCXX_testbody_new_in_14], [[
+
+// If the compiler admits that it is not ready for C++14, why torture it?
+// Hopefully, this will speed up the test.
+
+#ifndef __cplusplus
+
+#error "This is not a C++ compiler"
+
+#elif __cplusplus < 201402L
+
+#error "This is not a C++14 compiler"
+
+#else
+
+namespace cxx14
+{
+
+ namespace test_polymorphic_lambdas
+ {
+
+ int
+ test()
+ {
+ const auto lambda = [](auto&&... args){
+ const auto istiny = [](auto x){
+ return (sizeof(x) == 1UL) ? 1 : 0;
+ };
+ const int aretiny[] = { istiny(args)... };
+ return aretiny[0];
+ };
+ return lambda(1, 1L, 1.0f, '1');
+ }
+
+ }
+
+ namespace test_binary_literals
+ {
+
+ constexpr auto ivii = 0b0000000000101010;
+ static_assert(ivii == 42, "wrong value");
+
+ }
+
+ namespace test_generalized_constexpr
+ {
+
+ template < typename CharT >
+ constexpr unsigned long
+ strlen_c(const CharT *const s) noexcept
+ {
+ auto length = 0UL;
+ for (auto p = s; *p; ++p)
+ ++length;
+ return length;
+ }
+
+ static_assert(strlen_c("") == 0UL, "");
+ static_assert(strlen_c("x") == 1UL, "");
+ static_assert(strlen_c("test") == 4UL, "");
+ static_assert(strlen_c("another\0test") == 7UL, "");
+
+ }
+
+ namespace test_lambda_init_capture
+ {
+
+ int
+ test()
+ {
+ auto x = 0;
+ const auto lambda1 = [a = x](int b){ return a + b; };
+ const auto lambda2 = [a = lambda1(x)](){ return a; };
+ return lambda2();
+ }
+
+ }
+
+ namespace test_digit_separators
+ {
+
+ constexpr auto ten_million = 100'000'000;
+ static_assert(ten_million == 100000000, "");
+
+ }
+
+ namespace test_return_type_deduction
+ {
+
+ auto f(int& x) { return x; }
+ decltype(auto) g(int& x) { return x; }
+
+ template < typename T1, typename T2 >
+ struct is_same
+ {
+ static constexpr auto value = false;
+ };
+
+ template < typename T >
+ struct is_same<T, T>
+ {
+ static constexpr auto value = true;
+ };
+
+ int
+ test()
+ {
+ auto x = 0;
+ static_assert(is_same<int, decltype(f(x))>::value, "");
+ static_assert(is_same<int&, decltype(g(x))>::value, "");
+ return x;
+ }
+
+ }
+
+} // namespace cxx14
+
+#endif // __cplusplus >= 201402L
+
+]])
+
+
+dnl Tests for new features in C++17
+
+m4_define([_AX_CXX_COMPILE_STDCXX_testbody_new_in_17], [[
+
+// If the compiler admits that it is not ready for C++17, why torture it?
+// Hopefully, this will speed up the test.
+
+#ifndef __cplusplus
+
+#error "This is not a C++ compiler"
+
+#elif __cplusplus < 201703L
+
+#error "This is not a C++17 compiler"
+
+#else
+
+#include <initializer_list>
+#include <utility>
+#include <type_traits>
+
+namespace cxx17
+{
+
+ namespace test_constexpr_lambdas
+ {
+
+ constexpr int foo = [](){return 42;}();
+
+ }
+
+ namespace test::nested_namespace::definitions
+ {
+
+ }
+
+ namespace test_fold_expression
+ {
+
+ template<typename... Args>
+ int multiply(Args... args)
+ {
+ return (args * ... * 1);
+ }
+
+ template<typename... Args>
+ bool all(Args... args)
+ {
+ return (args && ...);
+ }
+
+ }
+
+ namespace test_extended_static_assert
+ {
+
+ static_assert (true);
+
+ }
+
+ namespace test_auto_brace_init_list
+ {
+
+ auto foo = {5};
+ auto bar {5};
+
+ static_assert(std::is_same<std::initializer_list<int>, decltype(foo)>::value);
+ static_assert(std::is_same<int, decltype(bar)>::value);
+ }
+
+ namespace test_typename_in_template_template_parameter
+ {
+
+ template<template<typename> typename X> struct D;
+
+ }
+
+ namespace test_fallthrough_nodiscard_maybe_unused_attributes
+ {
+
+ int f1()
+ {
+ return 42;
+ }
+
+ [[nodiscard]] int f2()
+ {
+ [[maybe_unused]] auto unused = f1();
+
+ switch (f1())
+ {
+ case 17:
+ f1();
+ [[fallthrough]];
+ case 42:
+ f1();
+ }
+ return f1();
+ }
+
+ }
+
+ namespace test_extended_aggregate_initialization
+ {
+
+ struct base1
+ {
+ int b1, b2 = 42;
+ };
+
+ struct base2
+ {
+ base2() {
+ b3 = 42;
+ }
+ int b3;
+ };
+
+ struct derived : base1, base2
+ {
+ int d;
+ };
+
+ derived d1 {{1, 2}, {}, 4}; // full initialization
+ derived d2 {{}, {}, 4}; // value-initialized bases
+
+ }
+
+ namespace test_general_range_based_for_loop
+ {
+
+ struct iter
+ {
+ int i;
+
+ int& operator* ()
+ {
+ return i;
+ }
+
+ const int& operator* () const
+ {
+ return i;
+ }
+
+ iter& operator++()
+ {
+ ++i;
+ return *this;
+ }
+ };
+
+ struct sentinel
+ {
+ int i;
+ };
+
+ bool operator== (const iter& i, const sentinel& s)
+ {
+ return i.i == s.i;
+ }
+
+ bool operator!= (const iter& i, const sentinel& s)
+ {
+ return !(i == s);
+ }
+
+ struct range
+ {
+ iter begin() const
+ {
+ return {0};
+ }
+
+ sentinel end() const
+ {
+ return {5};
+ }
+ };
+
+ void f()
+ {
+ range r {};
+
+ for (auto i : r)
+ {
+ [[maybe_unused]] auto v = i;
+ }
+ }
+
+ }
+
+ namespace test_lambda_capture_asterisk_this_by_value
+ {
+
+ struct t
+ {
+ int i;
+ int foo()
+ {
+ return [*this]()
+ {
+ return i;
+ }();
+ }
+ };
+
+ }
+
+ namespace test_enum_class_construction
+ {
+
+ enum class byte : unsigned char
+ {};
+
+ byte foo {42};
+
+ }
+
+ namespace test_constexpr_if
+ {
+
+ template <bool cond>
+ int f ()
+ {
+ if constexpr(cond)
+ {
+ return 13;
+ }
+ else
+ {
+ return 42;
+ }
+ }
+
+ }
+
+ namespace test_selection_statement_with_initializer
+ {
+
+ int f()
+ {
+ return 13;
+ }
+
+ int f2()
+ {
+ if (auto i = f(); i > 0)
+ {
+ return 3;
+ }
+
+ switch (auto i = f(); i + 4)
+ {
+ case 17:
+ return 2;
+
+ default:
+ return 1;
+ }
+ }
+
+ }
+
+ namespace test_template_argument_deduction_for_class_templates
+ {
+
+ template <typename T1, typename T2>
+ struct pair
+ {
+ pair (T1 p1, T2 p2)
+ : m1 {p1},
+ m2 {p2}
+ {}
+
+ T1 m1;
+ T2 m2;
+ };
+
+ void f()
+ {
+ [[maybe_unused]] auto p = pair{13, 42u};
+ }
+
+ }
+
+ namespace test_non_type_auto_template_parameters
+ {
+
+ template <auto n>
+ struct B
+ {};
+
+ B<5> b1;
+ B<'a'> b2;
+
+ }
+
+ namespace test_structured_bindings
+ {
+
+ int arr[2] = { 1, 2 };
+ std::pair<int, int> pr = { 1, 2 };
+
+ auto f1() -> int(&)[2]
+ {
+ return arr;
+ }
+
+ auto f2() -> std::pair<int, int>&
+ {
+ return pr;
+ }
+
+ struct S
+ {
+ int x1 : 2;
+ volatile double y1;
+ };
+
+ S f3()
+ {
+ return {};
+ }
+
+ auto [ x1, y1 ] = f1();
+ auto& [ xr1, yr1 ] = f1();
+ auto [ x2, y2 ] = f2();
+ auto& [ xr2, yr2 ] = f2();
+ const auto [ x3, y3 ] = f3();
+
+ }
+
+ namespace test_exception_spec_type_system
+ {
+
+ struct Good {};
+ struct Bad {};
+
+ void g1() noexcept;
+ void g2();
+
+ template<typename T>
+ Bad
+ f(T*, T*);
+
+ template<typename T1, typename T2>
+ Good
+ f(T1*, T2*);
+
+ static_assert (std::is_same_v<Good, decltype(f(g1, g2))>);
+
+ }
+
+ namespace test_inline_variables
+ {
+
+ template<class T> void f(T)
+ {}
+
+ template<class T> inline T g(T)
+ {
+ return T{};
+ }
+
+ template<> inline void f<>(int)
+ {}
+
+ template<> int g<>(int)
+ {
+ return 5;
+ }
+
+ }
+
+} // namespace cxx17
+
+#endif // __cplusplus < 201703L
+
+]])
diff --git a/m4/ctng_set_kconfig_option.m4 b/m4/ctng_set_kconfig_option.m4
index 2c2968c..f483701 100644
--- a/m4/ctng_set_kconfig_option.m4
+++ b/m4/ctng_set_kconfig_option.m4
@@ -1,7 +1,7 @@
# Set the kconfig option.
AC_DEFUN([CTNG_SET_KCONFIG_OPTION],
[AS_IF(
- [test -n "$$1" -o "$2" = "y"],
+ [test -n "$$1" -o "$2" = "y" -o "$2" = "1" ],
[AC_SUBST([KCONFIG_$1], ["def_bool y"])],
[AC_SUBST([KCONFIG_$1], ["bool"])])
])
diff --git a/m4/ctng_version_check.m4 b/m4/ctng_version_check.m4
index fee522e..fe80e73 100644
--- a/m4/ctng_version_check.m4
+++ b/m4/ctng_version_check.m4
@@ -18,7 +18,7 @@ AC_DEFUN([CTNG_PROG_VERSION],
[ac_cv_path_$1="$$1"
CTNG_PATH_ABSNAME([ac_cv_path_$1])
CTNG_MSG_LOG_ENVVAR([ac_cv_path_$1])
- ver=$(eval $ac_cv_path_$1 --version 2>/dev/null)
+ ver=$(eval $ac_cv_path_$1 --version 2>&1)
CTNG_MSG_LOG([looking for '[$5]' regexp in])
CTNG_MSG_LOG_ENVVAR([ver], [version info for $ac_cv_path_$1])
ver=$(AS_ECHO(["$ver"]) | $EGREP '[$5]')
@@ -26,7 +26,7 @@ AC_DEFUN([CTNG_PROG_VERSION],
[AC_CACHE_CHECK([for $3], [ac_cv_path_$1],
[AC_PATH_PROGS_FEATURE_CHECK([$1], [$4],
[CTNG_MSG_LOG_ENVVAR([ac_path_$1], [checking $1 at])
- ver=$($ac_path_$1 --version 2>/dev/null)
+ ver=$($ac_path_$1 --version 2>&1)
CTNG_MSG_LOG([looking for '[$5]' regexp in])
CTNG_MSG_LOG_ENVVAR([ver], [version info])
ver=$(AS_ECHO(["$ver"]) | $EGREP '[$5]')
diff --git a/packages/bison/3.0.5/chksum b/packages/bison/3.0.5/chksum
new file mode 100644
index 0000000..e3c010d
--- /dev/null
+++ b/packages/bison/3.0.5/chksum
@@ -0,0 +1,8 @@
+md5 bison-3.0.5.tar.xz 3e54f20988ecd1b62044e25481e5f06b
+sha1 bison-3.0.5.tar.xz 45e904d04d88c821df95833c4be4414ce5a47a4b
+sha256 bison-3.0.5.tar.xz 075cef2e814642e30e10e8155e93022e4a91ca38a65aa1d5467d4e969f97f338
+sha512 bison-3.0.5.tar.xz 00b448db8abe91b07e32ff5273c6617bc1350d806f92073a9472f4c2f0de5d22c152795674171b74f2eb9eff8d36f8173b82dacb215601bb071ae39404d4a8a2
+md5 bison-3.0.5.tar.gz 41ad57813157b61bfa47e33067a9d6f0
+sha1 bison-3.0.5.tar.gz 326135383c6ef4439781f5817475948b28501dbc
+sha256 bison-3.0.5.tar.gz cd399d2bee33afa712bac4b1f4434e20379e9b4099bce47189e09a7675a2d566
+sha512 bison-3.0.5.tar.gz 2087f5ced90518a93416c0c2d914f0ddbb55fb87af94becf03c7097f5d2365a05a3c287241018e86883d8a8bc3519dd7f175606edde96a30b3a54ca0b8a84642
diff --git a/packages/bison/3.0.5/version.desc b/packages/bison/3.0.5/version.desc
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/packages/bison/3.0.5/version.desc
diff --git a/packages/bison/3.1/chksum b/packages/bison/3.1/chksum
new file mode 100644
index 0000000..9ae47fb
--- /dev/null
+++ b/packages/bison/3.1/chksum
@@ -0,0 +1,8 @@
+md5 bison-3.1.tar.xz db7e431785ad96870bfa570a15cab079
+sha1 bison-3.1.tar.xz 84e5b016fa76f6cd4246131b1ca11a0f926e7922
+sha256 bison-3.1.tar.xz 7c2464ad6cb7b513b2c350a092d919327e1f63d12ff024836acbb504475da5c6
+sha512 bison-3.1.tar.xz 2a8e217ffb55ed5b1fcc989377ac348a066e62b8a4b0b0da40c3c7202f3ea487b2aab6a704a10b48d2d17673be0e22f6ff1be91fc05c4e0a57969b42a59d0152
+md5 bison-3.1.tar.gz ba1f1c7d286adc79339c0f1d0f696963
+sha1 bison-3.1.tar.gz 6d42cbe38023a3020df498f1c22dc46439ee08b3
+sha256 bison-3.1.tar.gz a7cb36b55316eeec626865c03d2a44210617a17c7d393ee63d8553e0649ee946
+sha512 bison-3.1.tar.gz 5864bcc211bf326d7bde27a0f2603385e1796d475e607ac8904e360ef50c8e069033cc3701eb010e8077eec7f265276e0921dcae8beb9c1779b42ef598e59908
diff --git a/packages/bison/3.1/version.desc b/packages/bison/3.1/version.desc
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/packages/bison/3.1/version.desc
diff --git a/packages/bison/3.2.4/chksum b/packages/bison/3.2.4/chksum
new file mode 100644
index 0000000..9bb466f
--- /dev/null
+++ b/packages/bison/3.2.4/chksum
@@ -0,0 +1,8 @@
+md5 bison-3.2.4.tar.xz 4c8cec0ca8b637d46f24902d032b9296
+sha1 bison-3.2.4.tar.xz 950c7fa571677828eab963126b93a4ed9d496b74
+sha256 bison-3.2.4.tar.xz 523d44419f4df68286503740c95c7b3400b748d7d8b797209195ee5d67f05634
+sha512 bison-3.2.4.tar.xz 652b54fdee969bbc17eeb04d05d65f143e8e0e1b46ac2574e3a76687b9bd916c9a0c97658b4f8357958d64e87fe2a6a2a98a6c312970f0e74fb4445962e9daae
+md5 bison-3.2.4.tar.gz eeecdf612b423097ea9182979ca3e093
+sha1 bison-3.2.4.tar.gz 5e10f5d5036907f9d58232372754bce58af651c2
+sha256 bison-3.2.4.tar.gz cb673e2298d34b5e46ba7df0641afa734da1457ce47de491863407a587eec79a
+sha512 bison-3.2.4.tar.gz 2670a5aa0d4e9a9433b4b132e11b0af42da8500fdd085fdf7c11033418baf4b0d5d6ca9e56d701c9b406c33231f2d0979a72c15f2ecdade34bc01fa31a690ce0
diff --git a/packages/bison/3.2.4/version.desc b/packages/bison/3.2.4/version.desc
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/packages/bison/3.2.4/version.desc
diff --git a/packages/bison/3.3.2/chksum b/packages/bison/3.3.2/chksum
new file mode 100644
index 0000000..23fc937
--- /dev/null
+++ b/packages/bison/3.3.2/chksum
@@ -0,0 +1,8 @@
+md5 bison-3.3.2.tar.xz c9b552dee234b2f6b66e56b27e5234c9
+sha1 bison-3.3.2.tar.xz 6a09cd588f7a0f985839fc8cecdc80da948f7de7
+sha256 bison-3.3.2.tar.xz 039ee45b61d95e5003e7e8376f9080001b4066ff357bde271b7faace53b9d804
+sha512 bison-3.3.2.tar.xz 63c67291ea1bd00f4412fc589ffb891ede3e2577253016a9a185e00fb2d702371f3862486639a8f52f8a887f340a639575ff3b7ba93c152170cbfd8c9585c1dc
+md5 bison-3.3.2.tar.gz a2d208a01a72eb98c2d7e3a2ec2bc51e
+sha1 bison-3.3.2.tar.gz 364991dad2ae8e255564fdcb6f77e8da608243d5
+sha256 bison-3.3.2.tar.gz 0fda1d034185397430eb7b0c9e140fb37e02fbfc53b90252fa5575e382b6dbd1
+sha512 bison-3.3.2.tar.gz 42cc3de5a1f349eb8677869f85ea44c8590d3c59ba2488bab04f1575c840c25f80bfb3b5650dfa9cbad530238c1e5efb9b683571fe2e87346e1b01a392a3508b
diff --git a/packages/bison/3.3.2/version.desc b/packages/bison/3.3.2/version.desc
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/packages/bison/3.3.2/version.desc
diff --git a/packages/bison/package.desc b/packages/bison/package.desc
new file mode 100644
index 0000000..b4c6cbc
--- /dev/null
+++ b/packages/bison/package.desc
@@ -0,0 +1,6 @@
+repository='git https://git.savannah.gnu.org/git/bison.git'
+bootstrap='./bootstrap'
+mirrors='$(CT_Mirrors GNU bison)'
+relevantpattern='*.*|.'
+archive_formats='.tar.xz .tar.gz'
+signature_format='packed/.sig'
diff --git a/packages/gdb/7.11.1/0004-include-order.patch b/packages/gdb/7.11.1/0004-include-order.patch
new file mode 100644
index 0000000..c2f5952
--- /dev/null
+++ b/packages/gdb/7.11.1/0004-include-order.patch
@@ -0,0 +1,43 @@
+commit 5a6c3296a7a90694ad4042f6256f3da6d4fa4ee8
+Author: James Clarke <jrtc27@jrtc27.com>
+Date: Fri Jan 19 17:22:49 2018 +0000
+
+ gdb: Fix ia64 defining TRAP_HWBKPT before including gdb_wait.h
+
+ On ia64, gdb_wait.h eventually includes siginfo-consts-arch.h, which
+ contains an enum with TRAP_HWBKPT, along with a #define. Thus we cannot
+ define TRAP_HWBKPT to 4 beforehand, and so gdb_wait.h must be included
+ earlier; include it from linux-ptrace.h so it can never come afterwards.
+
+ gdb/ChangeLog:
+
+ * nat/linux-ptrace.c: Remove unnecessary reinclusion of
+ gdb_ptrace.h, and move including gdb_wait.h ...
+ * nat/linux-ptrace.h: ... to here.
+
+---
+ gdb/nat/linux-ptrace.c | 2 --
+ gdb/nat/linux-ptrace.h | 1 +
+ 2 files changed, 1 insertion(+), 2 deletions(-)
+
+--- a/gdb/nat/linux-ptrace.c
++++ b/gdb/nat/linux-ptrace.c
+@@ -21,8 +21,6 @@
+ #include "linux-procfs.h"
+ #include "linux-waitpid.h"
+ #include "buffer.h"
+-#include "gdb_wait.h"
+-#include "gdb_ptrace.h"
+
+ /* Stores the ptrace options supported by the running kernel.
+ A value of -1 means we did not check for features yet. A value
+--- a/gdb/nat/linux-ptrace.h
++++ b/gdb/nat/linux-ptrace.h
+@@ -21,6 +21,7 @@
+ struct buffer;
+
+ #include "nat/gdb_ptrace.h"
++#include "gdb_wait.h"
+
+ #ifdef __UCLIBC__
+ #if !(defined(__UCLIBC_HAS_MMU__) || defined(__ARCH_HAS_MMU__))
diff --git a/packages/gdb/7.11.1/0005-include-gregset.h.patch b/packages/gdb/7.11.1/0005-include-gregset.h.patch
new file mode 100644
index 0000000..9a588ba
--- /dev/null
+++ b/packages/gdb/7.11.1/0005-include-gregset.h.patch
@@ -0,0 +1,73 @@
+commit 31925464a80970e37c06192a0c49f8948a2f5da0
+Author: Matthew Wahab <matthew.wahab@arm.com>
+Date: Mon Aug 15 13:09:04 2016 +0100
+
+ [GDB] Fix builds broken by proc-service changes.
+
+ GLIBC BZ#20311 introduced a change to install proc_service.h so that gdb
+ didn't have to use the version it embeds in gdb_proc_service.h. The
+ embedded version is guarded by HAVE_PROC_SERVICE_H and
+ gdb_proc_service.h has a number other of includes and definitions, all
+ of which are uncondional except for an include for gregset.h. This is
+ only included if HAVE_PROC_SERIVCE_H is not defined.
+
+ This causes a build failure when cross compiling gdb with the latest
+ glibc because type definitions in gregset are used independently of
+ HAVE_PROC_SERIVCE_H. In particular, they are used in gdb_proc_service.h
+ when PRFPREGSET_T_BROKEN is set.
+
+ The error messages on the failure are
+ ----
+ binutils-gdb/gdb/gdb_proc_service.h:173:9: error: ‘gdb_fpregset_t’ does
+ not name a type; did you mean ‘elf_fpregset_t’?
+ typedef gdb_fpregset_t gdb_prfpregset_t;
+ ^~~~~~~~~~~~~~
+ elf_fpregset_t
+
+ binutils-gdb/gdb/gdb_proc_service.h:173:9: error: ‘gdb_fpregset_t’ does
+ not name a type; did you mean ‘elf_fpregset_t’?
+ typedef gdb_fpregset_t gdb_prfpregset_t;
+ ^~~~~~~~~~~~~~
+ elf_fpregset_t
+
+ binutils-gdb/gdb/proc-service.c:218:15: error: ‘gdb_prfpregset_t’ does
+ not name a type; did you mean ‘gdb_fpregset_t’?
+ const gdb_prfpregset_t *fpregset)
+ ^~~~~~~~~~~~~~~~
+ gdb_fpregset_t
+ ----
+
+ This patch moves the include for gregset.h to before the code guarded by
+ HAVE_PROC_SERIVCE_H, so that it is always included. This is enough to
+ fix the build.
+
+ 2016-08-15 Matthew Wahab <matthew.wahab@arm.com>
+
+ PR gdb/20457
+ * gdb_proc_service.h: Add an include of gregset.h
+ [!HAVE_PROC_SERVICE_H]: Remove the include of gregset.h.
+
+---
+ gdb/gdb_proc_service.h | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/gdb/gdb_proc_service.h
++++ b/gdb/gdb_proc_service.h
+@@ -21,6 +21,8 @@
+
+ #include <sys/types.h>
+
++#include "gregset.h"
++
+ #ifdef HAVE_PROC_SERVICE_H
+
+ /* glibc's proc_service.h doesn't wrap itself with extern "C". Need
+@@ -60,8 +62,6 @@
+ #include <sys/procfs.h>
+ #endif
+
+-#include "gregset.h"
+-
+ EXTERN_C_PUSH
+
+ /* Functions in this interface return one of these status codes. */
diff --git a/packages/gdb/7.12.1/0005-include-order.patch b/packages/gdb/7.12.1/0005-include-order.patch
new file mode 100644
index 0000000..8cc1ea9
--- /dev/null
+++ b/packages/gdb/7.12.1/0005-include-order.patch
@@ -0,0 +1,43 @@
+commit 5a6c3296a7a90694ad4042f6256f3da6d4fa4ee8
+Author: James Clarke <jrtc27@jrtc27.com>
+Date: Fri Jan 19 17:22:49 2018 +0000
+
+ gdb: Fix ia64 defining TRAP_HWBKPT before including gdb_wait.h
+
+ On ia64, gdb_wait.h eventually includes siginfo-consts-arch.h, which
+ contains an enum with TRAP_HWBKPT, along with a #define. Thus we cannot
+ define TRAP_HWBKPT to 4 beforehand, and so gdb_wait.h must be included
+ earlier; include it from linux-ptrace.h so it can never come afterwards.
+
+ gdb/ChangeLog:
+
+ * nat/linux-ptrace.c: Remove unnecessary reinclusion of
+ gdb_ptrace.h, and move including gdb_wait.h ...
+ * nat/linux-ptrace.h: ... to here.
+
+---
+ gdb/nat/linux-ptrace.c | 2 --
+ gdb/nat/linux-ptrace.h | 1 +
+ 2 files changed, 1 insertion(+), 2 deletions(-)
+
+--- a/gdb/nat/linux-ptrace.c
++++ b/gdb/nat/linux-ptrace.c
+@@ -21,8 +21,6 @@
+ #include "linux-procfs.h"
+ #include "linux-waitpid.h"
+ #include "buffer.h"
+-#include "gdb_wait.h"
+-#include "gdb_ptrace.h"
+ #include <sys/procfs.h>
+
+ /* Stores the ptrace options supported by the running kernel.
+--- a/gdb/nat/linux-ptrace.h
++++ b/gdb/nat/linux-ptrace.h
+@@ -21,6 +21,7 @@
+ struct buffer;
+
+ #include "nat/gdb_ptrace.h"
++#include "gdb_wait.h"
+
+ #ifdef __UCLIBC__
+ #if !(defined(__UCLIBC_HAS_MMU__) || defined(__ARCH_HAS_MMU__))
diff --git a/packages/gdb/7.12.1/0006-duplicate-typedef.patch b/packages/gdb/7.12.1/0006-duplicate-typedef.patch
new file mode 100644
index 0000000..cbbc3e2
--- /dev/null
+++ b/packages/gdb/7.12.1/0006-duplicate-typedef.patch
@@ -0,0 +1,18 @@
+diff -urpN gdb-7.12.1.orig/gdb/event-loop.h gdb-7.12.1/gdb/event-loop.h
+--- gdb-7.12.1.orig/gdb/event-loop.h 2017-01-21 05:46:46.000000000 -0800
++++ gdb-7.12.1/gdb/event-loop.h 2019-03-14 11:55:56.280325742 -0700
+@@ -66,6 +66,8 @@
+ infinite loop.
+
+ Corollary tasks are the creation and deletion of event sources. */
++#ifndef _EVENT_LOOP_H_
++#define _EVENT_LOOP_H_
+
+ typedef void *gdb_client_data;
+ struct async_signal_handler;
+@@ -127,3 +129,5 @@ extern void mark_async_event_handler (st
+ extern void clear_async_event_handler (struct async_event_handler *handler);
+
+ extern void initialize_async_signal_handlers (void);
++
++#endif
diff --git a/packages/glibc/package.desc b/packages/glibc/package.desc
index 64e1409..bc49fe0 100644
--- a/packages/glibc/package.desc
+++ b/packages/glibc/package.desc
@@ -3,6 +3,6 @@ repository='git git://sourceware.org/git/glibc.git'
mirrors='$(CT_Mirrors GNU glibc)'
# Cannot use MAJOR.MINOR as the releant part because of 2.12: 2.12.2 was the most recent
# bugfix release, but it didn't have glibc-ports released alongside it.
-milestones='2.14 2.17 2.20 2.23 2.24 2.25 2.26 2.27'
+milestones='2.14 2.17 2.20 2.23 2.24 2.25 2.26 2.27 2.29'
archive_formats='.tar.xz .tar.bz2 .tar.gz'
signature_format='packed/.sig'
diff --git a/packages/make/package.desc b/packages/make/package.desc
index b72af79..086a84a 100644
--- a/packages/make/package.desc
+++ b/packages/make/package.desc
@@ -4,3 +4,4 @@ mirrors='$(CT_Mirrors GNU make)'
relevantpattern='*.*|.'
archive_formats='.tar.bz2 .tar.gz'
signature_format='packed/.sig'
+milestones='4.0'
diff --git a/paths.sh.in b/paths.sh.in
index 7b57a8a..ad3d684 100644
--- a/paths.sh.in
+++ b/paths.sh.in
@@ -6,6 +6,7 @@ export grep="@GREP@"
export gmake="@MAKE@"
export gnumake="@MAKE@"
export make="@MAKE@"
+export python="@PYTHON@"
export sed="@SED@"
export libtool="@LIBTOOL@"
export libtoolize="@LIBTOOLIZE@"
diff --git a/samples/aarch64-rpi3-linux-gnu/crosstool.config b/samples/aarch64-rpi3-linux-gnu/crosstool.config
index daa715d..dc9f364 100644
--- a/samples/aarch64-rpi3-linux-gnu/crosstool.config
+++ b/samples/aarch64-rpi3-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_ARM=y
CT_ARCH_CPU="cortex-a53"
CT_ARCH_64=y
diff --git a/samples/aarch64-unknown-linux-android/crosstool.config b/samples/aarch64-unknown-linux-android/crosstool.config
index 6564573..9bafead 100644
--- a/samples/aarch64-unknown-linux-android/crosstool.config
+++ b/samples/aarch64-unknown-linux-android/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_EXPERIMENTAL=y
CT_ARCH_ARM=y
CT_ARCH_64=y
diff --git a/samples/aarch64-unknown-linux-gnu/crosstool.config b/samples/aarch64-unknown-linux-gnu/crosstool.config
index 113b24e..255a005 100644
--- a/samples/aarch64-unknown-linux-gnu/crosstool.config
+++ b/samples/aarch64-unknown-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_ARM=y
CT_ARCH_64=y
CT_TARGET_VENDOR=""
diff --git a/samples/aarch64-unknown-linux-uclibc/crosstool.config b/samples/aarch64-unknown-linux-uclibc/crosstool.config
index 533bac7..e2ac47b 100644
--- a/samples/aarch64-unknown-linux-uclibc/crosstool.config
+++ b/samples/aarch64-unknown-linux-uclibc/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_ARM=y
CT_ARCH_64=y
CT_TARGET_VENDOR=""
diff --git a/samples/alphaev56-unknown-linux-gnu/crosstool.config b/samples/alphaev56-unknown-linux-gnu/crosstool.config
index 44ea047..cd713cc 100644
--- a/samples/alphaev56-unknown-linux-gnu/crosstool.config
+++ b/samples/alphaev56-unknown-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_ALPHA_EV56=y
CT_KERNEL_LINUX=y
CT_BINUTILS_PLUGINS=y
diff --git a/samples/alphaev67-unknown-linux-gnu/crosstool.config b/samples/alphaev67-unknown-linux-gnu/crosstool.config
index f82b313..4d7aa51 100644
--- a/samples/alphaev67-unknown-linux-gnu/crosstool.config
+++ b/samples/alphaev67-unknown-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_ALPHA_EV67=y
CT_KERNEL_LINUX=y
CT_BINUTILS_PLUGINS=y
diff --git a/samples/arc-arc700-linux-uclibc/crosstool.config b/samples/arc-arc700-linux-uclibc/crosstool.config
index 8da0b13..caa0cf1 100644
--- a/samples/arc-arc700-linux-uclibc/crosstool.config
+++ b/samples/arc-arc700-linux-uclibc/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_ARC=y
CT_ARCH_CPU="arc700"
CT_TARGET_CFLAGS="-mno-atomic"
diff --git a/samples/arc-multilib-elf32/crosstool.config b/samples/arc-multilib-elf32/crosstool.config
index 826d3a9..0cc3cdd 100644
--- a/samples/arc-multilib-elf32/crosstool.config
+++ b/samples/arc-multilib-elf32/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_ARC=y
CT_MULTILIB=y
CT_TARGET_VENDOR="multilib"
diff --git a/samples/arc-multilib-linux-uclibc/crosstool.config b/samples/arc-multilib-linux-uclibc/crosstool.config
index c4bed05..b1862a5 100644
--- a/samples/arc-multilib-linux-uclibc/crosstool.config
+++ b/samples/arc-multilib-linux-uclibc/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_ARC=y
CT_MULTILIB=y
CT_TARGET_CFLAGS="-matomic"
diff --git a/samples/arm-bare_newlib_cortex_m3_nommu-eabi/crosstool.config b/samples/arm-bare_newlib_cortex_m3_nommu-eabi/crosstool.config
index 3e4623c..4d3a79f 100644
--- a/samples/arm-bare_newlib_cortex_m3_nommu-eabi/crosstool.config
+++ b/samples/arm-bare_newlib_cortex_m3_nommu-eabi/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_ARM=y
CT_ARCH_CPU="cortex-m3"
CT_ARCH_ARM_MODE_THUMB=y
diff --git a/samples/arm-cortex_a15-linux-gnueabihf/crosstool.config b/samples/arm-cortex_a15-linux-gnueabihf/crosstool.config
index ab4a6a9..48d8dc3 100644
--- a/samples/arm-cortex_a15-linux-gnueabihf/crosstool.config
+++ b/samples/arm-cortex_a15-linux-gnueabihf/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_ARM=y
CT_ARCH_CPU="cortex-a15"
CT_ARCH_FPU="neon-vfpv4"
diff --git a/samples/arm-cortex_a8-linux-gnueabi/crosstool.config b/samples/arm-cortex_a8-linux-gnueabi/crosstool.config
index 448327c..aa65f23 100644
--- a/samples/arm-cortex_a8-linux-gnueabi/crosstool.config
+++ b/samples/arm-cortex_a8-linux-gnueabi/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_ARM=y
CT_ARCH_CPU="cortex-a8"
CT_ARCH_FLOAT_SW=y
diff --git a/samples/arm-cortexa5-linux-uclibcgnueabihf/crosstool.config b/samples/arm-cortexa5-linux-uclibcgnueabihf/crosstool.config
index a0a5f10..bed9894 100644
--- a/samples/arm-cortexa5-linux-uclibcgnueabihf/crosstool.config
+++ b/samples/arm-cortexa5-linux-uclibcgnueabihf/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_EXPERIMENTAL=y
CT_ARCH_ARM=y
CT_ARCH_CPU="cortex-a5"
diff --git a/samples/arm-cortexa9_neon-linux-gnueabihf/crosstool.config b/samples/arm-cortexa9_neon-linux-gnueabihf/crosstool.config
index 1aa23fb..e85d440 100644
--- a/samples/arm-cortexa9_neon-linux-gnueabihf/crosstool.config
+++ b/samples/arm-cortexa9_neon-linux-gnueabihf/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_EXPERIMENTAL=y
CT_ARCH_ARM=y
CT_ARCH_CPU="cortex-a9"
diff --git a/samples/arm-multilib-linux-uclibcgnueabi/crosstool.config b/samples/arm-multilib-linux-uclibcgnueabi/crosstool.config
index 7d7936a..50a7507 100644
--- a/samples/arm-multilib-linux-uclibcgnueabi/crosstool.config
+++ b/samples/arm-multilib-linux-uclibcgnueabi/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_ARM=y
CT_MULTILIB=y
CT_ARCH_FLOAT_SW=y
diff --git a/samples/arm-nano-eabi/crosstool.config b/samples/arm-nano-eabi/crosstool.config
index 8625724..bbdcb39 100644
--- a/samples/arm-nano-eabi/crosstool.config
+++ b/samples/arm-nano-eabi/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_ARM=y
CT_MULTILIB=y
CT_ARCH_FLOAT_SW=y
diff --git a/samples/arm-unknown-eabi/crosstool.config b/samples/arm-unknown-eabi/crosstool.config
index dff2fea..5636c36 100644
--- a/samples/arm-unknown-eabi/crosstool.config
+++ b/samples/arm-unknown-eabi/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_ARM=y
CT_ARCH_FLOAT_SW=y
CT_LIBC_NEWLIB_IO_C99FMT=y
diff --git a/samples/arm-unknown-linux-gnueabi/crosstool.config b/samples/arm-unknown-linux-gnueabi/crosstool.config
index fec7611..f4fc942 100644
--- a/samples/arm-unknown-linux-gnueabi/crosstool.config
+++ b/samples/arm-unknown-linux-gnueabi/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
# CT_REMOVE_DOCS is not set
CT_ARCH_ARM=y
CT_ARCH_FLOAT_SW=y
diff --git a/samples/arm-unknown-linux-musleabi/crosstool.config b/samples/arm-unknown-linux-musleabi/crosstool.config
index 15dc56e..a4d8486 100644
--- a/samples/arm-unknown-linux-musleabi/crosstool.config
+++ b/samples/arm-unknown-linux-musleabi/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_EXPERIMENTAL=y
CT_ARCH_ARM=y
CT_KERNEL_LINUX=y
diff --git a/samples/arm-unknown-linux-uclibcgnueabi/crosstool.config b/samples/arm-unknown-linux-uclibcgnueabi/crosstool.config
index 9ff7937..84243cf 100644
--- a/samples/arm-unknown-linux-uclibcgnueabi/crosstool.config
+++ b/samples/arm-unknown-linux-uclibcgnueabi/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_ARM=y
CT_ARCH_CPU="arm926ej-s"
CT_ARCH_FLOAT_SW=y
diff --git a/samples/arm-unknown-linux-uclibcgnueabihf/crosstool.config b/samples/arm-unknown-linux-uclibcgnueabihf/crosstool.config
index 83b5eab..633493c 100644
--- a/samples/arm-unknown-linux-uclibcgnueabihf/crosstool.config
+++ b/samples/arm-unknown-linux-uclibcgnueabihf/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_EXPERIMENTAL=y
CT_ARCH_ARM=y
CT_ARCH_CPU="arm926ej-s"
diff --git a/samples/armeb-unknown-eabi/crosstool.config b/samples/armeb-unknown-eabi/crosstool.config
index 38277ad..9e18e96 100644
--- a/samples/armeb-unknown-eabi/crosstool.config
+++ b/samples/armeb-unknown-eabi/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_ARM=y
CT_ARCH_BE=y
CT_ARCH_FLOAT_SW=y
diff --git a/samples/armeb-unknown-linux-gnueabi/crosstool.config b/samples/armeb-unknown-linux-gnueabi/crosstool.config
index 46daaf2..a030f4c 100644
--- a/samples/armeb-unknown-linux-gnueabi/crosstool.config
+++ b/samples/armeb-unknown-linux-gnueabi/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_ARM=y
CT_ARCH_BE=y
CT_ARCH_ARCH="armv5te"
diff --git a/samples/armeb-unknown-linux-uclibcgnueabi/crosstool.config b/samples/armeb-unknown-linux-uclibcgnueabi/crosstool.config
index bb05f92..ad24f4d 100644
--- a/samples/armeb-unknown-linux-uclibcgnueabi/crosstool.config
+++ b/samples/armeb-unknown-linux-uclibcgnueabi/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_ARM=y
CT_ARCH_CPU="xscale"
CT_ARCH_BE=y
diff --git a/samples/armv6-nommu-linux-uclibcgnueabi/crosstool.config b/samples/armv6-nommu-linux-uclibcgnueabi/crosstool.config
index 3dc9052..0f1dd4d 100644
--- a/samples/armv6-nommu-linux-uclibcgnueabi/crosstool.config
+++ b/samples/armv6-nommu-linux-uclibcgnueabi/crosstool.config
@@ -1,11 +1,10 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_ARM=y
CT_ARCH_SUFFIX="v6"
# CT_ARCH_USE_MMU is not set
CT_TARGET_VENDOR="nommu"
CT_KERNEL_LINUX=y
# CT_KERNEL_LINUX_INSTALL_CHECK is not set
-# CT_SHARED_LIBS is not set
CT_BINUTILS_PLUGINS=y
CT_THREADS_NONE=y
CT_CC_GCC_DISABLE_PCH=y
diff --git a/samples/armv6-rpi-linux-gnueabi/crosstool.config b/samples/armv6-rpi-linux-gnueabi/crosstool.config
index a34de69..c18e70a 100644
--- a/samples/armv6-rpi-linux-gnueabi/crosstool.config
+++ b/samples/armv6-rpi-linux-gnueabi/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_ARM=y
CT_ARCH_CPU="arm1176jzf-s"
CT_ARCH_SUFFIX="v6"
diff --git a/samples/armv7-rpi2-linux-gnueabihf/crosstool.config b/samples/armv7-rpi2-linux-gnueabihf/crosstool.config
index bbe0b14..fdabda6 100644
--- a/samples/armv7-rpi2-linux-gnueabihf/crosstool.config
+++ b/samples/armv7-rpi2-linux-gnueabihf/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_ARM=y
CT_ARCH_CPU="cortex-a7"
CT_ARCH_SUFFIX="v7"
diff --git a/samples/armv8-rpi3-linux-gnueabihf/crosstool.config b/samples/armv8-rpi3-linux-gnueabihf/crosstool.config
index 33175bd..1197ee4 100644
--- a/samples/armv8-rpi3-linux-gnueabihf/crosstool.config
+++ b/samples/armv8-rpi3-linux-gnueabihf/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_ARM=y
CT_ARCH_CPU="cortex-a53"
CT_ARCH_SUFFIX="v8"
diff --git a/samples/avr/crosstool.config b/samples/avr/crosstool.config
index c0ad517..fe4b16c 100644
--- a/samples/avr/crosstool.config
+++ b/samples/avr/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_AVR=y
CT_CC_LANG_CXX=y
CT_DEBUG_GDB=y
diff --git a/samples/i586-geode-linux-uclibc/crosstool.config b/samples/i586-geode-linux-uclibc/crosstool.config
index b6863a1..87c5f92 100644
--- a/samples/i586-geode-linux-uclibc/crosstool.config
+++ b/samples/i586-geode-linux-uclibc/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_X86=y
CT_ARCH_ARCH="pentium-mmx"
CT_TARGET_VENDOR="geode"
diff --git a/samples/i686-centos6-linux-gnu/crosstool.config b/samples/i686-centos6-linux-gnu/crosstool.config
index 02c16af..cb7f713 100644
--- a/samples/i686-centos6-linux-gnu/crosstool.config
+++ b/samples/i686-centos6-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_OBSOLETE=y
CT_ARCH_X86=y
CT_ARCH_ARCH="i686"
diff --git a/samples/i686-centos7-linux-gnu/crosstool.config b/samples/i686-centos7-linux-gnu/crosstool.config
index 033cecf..98d9fd9 100644
--- a/samples/i686-centos7-linux-gnu/crosstool.config
+++ b/samples/i686-centos7-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_OBSOLETE=y
CT_ARCH_X86=y
CT_ARCH_ARCH="i686"
diff --git a/samples/i686-nptl-linux-gnu/crosstool.config b/samples/i686-nptl-linux-gnu/crosstool.config
index 407c010..546e9cd 100644
--- a/samples/i686-nptl-linux-gnu/crosstool.config
+++ b/samples/i686-nptl-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_X86=y
CT_ARCH_ARCH="i686"
CT_TARGET_VENDOR="nptl"
diff --git a/samples/i686-ubuntu12.04-linux-gnu/crosstool.config b/samples/i686-ubuntu12.04-linux-gnu/crosstool.config
index c23c14b..e5ece3e 100644
--- a/samples/i686-ubuntu12.04-linux-gnu/crosstool.config
+++ b/samples/i686-ubuntu12.04-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_OBSOLETE=y
CT_ARCH_X86=y
CT_ARCH_ARCH="i686"
diff --git a/samples/i686-ubuntu14.04-linux-gnu/crosstool.config b/samples/i686-ubuntu14.04-linux-gnu/crosstool.config
index bb84510..50fb873 100644
--- a/samples/i686-ubuntu14.04-linux-gnu/crosstool.config
+++ b/samples/i686-ubuntu14.04-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_OBSOLETE=y
CT_ARCH_X86=y
CT_ARCH_ARCH="i686"
diff --git a/samples/i686-ubuntu16.04-linux-gnu/crosstool.config b/samples/i686-ubuntu16.04-linux-gnu/crosstool.config
index 8cd1108..6155de2 100644
--- a/samples/i686-ubuntu16.04-linux-gnu/crosstool.config
+++ b/samples/i686-ubuntu16.04-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_OBSOLETE=y
CT_ARCH_X86=y
CT_ARCH_ARCH="i686"
diff --git a/samples/i686-w64-mingw32,nios2-spico-elf/crosstool.config b/samples/i686-w64-mingw32,nios2-spico-elf/crosstool.config
index 2ecef5b..4e628af 100644
--- a/samples/i686-w64-mingw32,nios2-spico-elf/crosstool.config
+++ b/samples/i686-w64-mingw32,nios2-spico-elf/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_EXPERIMENTAL=y
# CT_REMOVE_DOCS is not set
CT_ARCH_NIOS2=y
diff --git a/samples/i686-w64-mingw32/crosstool.config b/samples/i686-w64-mingw32/crosstool.config
index 741cbd2..bba5738 100644
--- a/samples/i686-w64-mingw32/crosstool.config
+++ b/samples/i686-w64-mingw32/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_EXPERIMENTAL=y
CT_ARCH_X86=y
CT_ARCH_ARCH="i686"
diff --git a/samples/m68k-unknown-elf/crosstool.config b/samples/m68k-unknown-elf/crosstool.config
index acb66a2..6c8199b 100644
--- a/samples/m68k-unknown-elf/crosstool.config
+++ b/samples/m68k-unknown-elf/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_M68K=y
CT_ARCH_CPU="cpu32"
CT_ARCH_BINFMT_FLAT=y
diff --git a/samples/m68k-unknown-uclinux-uclibc/crosstool.config b/samples/m68k-unknown-uclinux-uclibc/crosstool.config
index 29d4bb2..15cf7d0 100644
--- a/samples/m68k-unknown-uclinux-uclibc/crosstool.config
+++ b/samples/m68k-unknown-uclinux-uclibc/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_M68K=y
CT_KERNEL_LINUX=y
CT_THREADS_LT=y
diff --git a/samples/mips-ar2315-linux-gnu/crosstool.config b/samples/mips-ar2315-linux-gnu/crosstool.config
index b4f3111..51d9180 100644
--- a/samples/mips-ar2315-linux-gnu/crosstool.config
+++ b/samples/mips-ar2315-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_MIPS=y
CT_ARCH_TUNE="4kc"
CT_ARCH_ARCH="4kc"
diff --git a/samples/mips-malta-linux-gnu/crosstool.config b/samples/mips-malta-linux-gnu/crosstool.config
index 67ea272..2b9c8bc 100644
--- a/samples/mips-malta-linux-gnu/crosstool.config
+++ b/samples/mips-malta-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_MIPS=y
CT_TARGET_VENDOR="malta"
CT_KERNEL_LINUX=y
diff --git a/samples/mips-unknown-elf/crosstool.config b/samples/mips-unknown-elf/crosstool.config
index 266b19d..d99ad7f 100644
--- a/samples/mips-unknown-elf/crosstool.config
+++ b/samples/mips-unknown-elf/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_MIPS=y
CT_ARCH_FLOAT_SW=y
CT_LIBC_NONE=y
diff --git a/samples/mips-unknown-linux-uclibc/crosstool.config b/samples/mips-unknown-linux-uclibc/crosstool.config
index 69e95d1..001a641 100644
--- a/samples/mips-unknown-linux-uclibc/crosstool.config
+++ b/samples/mips-unknown-linux-uclibc/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_MIPS=y
CT_ARCH_ARCH="mips1"
CT_ARCH_FLOAT_SW=y
diff --git a/samples/mips64el-multilib-linux-uclibc/crosstool.config b/samples/mips64el-multilib-linux-uclibc/crosstool.config
index 2508cd0..72908e5 100644
--- a/samples/mips64el-multilib-linux-uclibc/crosstool.config
+++ b/samples/mips64el-multilib-linux-uclibc/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_MIPS=y
CT_MULTILIB=y
CT_ARCH_LE=y
diff --git a/samples/mipsel-multilib-linux-gnu/crosstool.config b/samples/mipsel-multilib-linux-gnu/crosstool.config
index c7967a4..6f1e65a 100644
--- a/samples/mipsel-multilib-linux-gnu/crosstool.config
+++ b/samples/mipsel-multilib-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_MIPS=y
CT_MULTILIB=y
CT_ARCH_LE=y
diff --git a/samples/mipsel-sde-elf/crosstool.config b/samples/mipsel-sde-elf/crosstool.config
index b481a7f..23a01a4 100644
--- a/samples/mipsel-sde-elf/crosstool.config
+++ b/samples/mipsel-sde-elf/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_MIPS=y
CT_ARCH_LE=y
CT_ARCH_FLOAT_SW=y
diff --git a/samples/mipsel-unknown-linux-gnu/crosstool.config b/samples/mipsel-unknown-linux-gnu/crosstool.config
index 3e0271a..7d6c4f2 100644
--- a/samples/mipsel-unknown-linux-gnu/crosstool.config
+++ b/samples/mipsel-unknown-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_MIPS=y
CT_ARCH_LE=y
CT_ARCH_ARCH="mips1"
diff --git a/samples/moxie-unknown-elf/crosstool.config b/samples/moxie-unknown-elf/crosstool.config
index 5002bfb..50e0534 100644
--- a/samples/moxie-unknown-elf/crosstool.config
+++ b/samples/moxie-unknown-elf/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_EXPERIMENTAL=y
CT_ARCH_MOXIE=y
CT_DEBUG_GDB=y
diff --git a/samples/moxiebox/crosstool.config b/samples/moxiebox/crosstool.config
index fed00ed..2008fd5 100644
--- a/samples/moxiebox/crosstool.config
+++ b/samples/moxiebox/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_EXPERIMENTAL=y
CT_ARCH_MOXIE=y
CT_ARCH_LE=y
diff --git a/samples/msp430-unknown-elf/crosstool.config b/samples/msp430-unknown-elf/crosstool.config
index b791c99..7eb82c9 100644
--- a/samples/msp430-unknown-elf/crosstool.config
+++ b/samples/msp430-unknown-elf/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_EXPERIMENTAL=y
CT_ARCH_MSP430=y
CT_DEBUG_GDB=y
diff --git a/samples/nios2-altera-linux-gnu/crosstool.config b/samples/nios2-altera-linux-gnu/crosstool.config
index 6ecf6d5..c6f51c5 100644
--- a/samples/nios2-altera-linux-gnu/crosstool.config
+++ b/samples/nios2-altera-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_NIOS2=y
CT_ARCH_USE_MMU=y
CT_TARGET_VENDOR="altera"
diff --git a/samples/nios2-unknown-elf/crosstool.config b/samples/nios2-unknown-elf/crosstool.config
index 521c6a7..541a5c5 100644
--- a/samples/nios2-unknown-elf/crosstool.config
+++ b/samples/nios2-unknown-elf/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_NIOS2=y
CT_CC_LANG_CXX=y
CT_DEBUG_GDB=y
diff --git a/samples/powerpc-405-linux-gnu/crosstool.config b/samples/powerpc-405-linux-gnu/crosstool.config
index 6705d71..21de17a 100644
--- a/samples/powerpc-405-linux-gnu/crosstool.config
+++ b/samples/powerpc-405-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_POWERPC=y
CT_ARCH_CPU="405"
CT_ARCH_FLOAT_SW=y
diff --git a/samples/powerpc-8540-linux-gnu/crosstool.config b/samples/powerpc-8540-linux-gnu/crosstool.config
index 1cf0c15..d449c61 100644
--- a/samples/powerpc-8540-linux-gnu/crosstool.config
+++ b/samples/powerpc-8540-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_POWERPC=y
CT_ARCH_CPU="8540"
# CT_DEMULTILIB is not set
diff --git a/samples/powerpc-860-linux-gnu/crosstool.config b/samples/powerpc-860-linux-gnu/crosstool.config
index 7fafb1d..f5a2b35 100644
--- a/samples/powerpc-860-linux-gnu/crosstool.config
+++ b/samples/powerpc-860-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_POWERPC=y
CT_ARCH_CPU="860"
CT_ARCH_FLOAT_SW=y
diff --git a/samples/powerpc-e300c3-linux-gnu/crosstool.config b/samples/powerpc-e300c3-linux-gnu/crosstool.config
index 77039a2..b339e12 100644
--- a/samples/powerpc-e300c3-linux-gnu/crosstool.config
+++ b/samples/powerpc-e300c3-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_POWERPC=y
CT_ARCH_CPU="e300c3"
CT_TARGET_VENDOR="e300c3"
diff --git a/samples/powerpc-e500v2-linux-gnuspe/crosstool.config b/samples/powerpc-e500v2-linux-gnuspe/crosstool.config
index 5d9aece..b85928e 100644
--- a/samples/powerpc-e500v2-linux-gnuspe/crosstool.config
+++ b/samples/powerpc-e500v2-linux-gnuspe/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_POWERPC=y
CT_ARCH_CPU="8548"
CT_ARCH_powerpc_ABI_SPE=y
diff --git a/samples/powerpc-unknown-linux-gnu/crosstool.config b/samples/powerpc-unknown-linux-gnu/crosstool.config
index a5f17c5..67b36a9 100644
--- a/samples/powerpc-unknown-linux-gnu/crosstool.config
+++ b/samples/powerpc-unknown-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_POWERPC=y
CT_KERNEL_LINUX=y
CT_BINUTILS_PLUGINS=y
diff --git a/samples/powerpc-unknown-linux-uclibc,m68k-unknown-uclinux-uclibc/crosstool.config b/samples/powerpc-unknown-linux-uclibc,m68k-unknown-uclinux-uclibc/crosstool.config
index ee92573..9c209fd 100644
--- a/samples/powerpc-unknown-linux-uclibc,m68k-unknown-uclinux-uclibc/crosstool.config
+++ b/samples/powerpc-unknown-linux-uclibc,m68k-unknown-uclinux-uclibc/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_M68K=y
CT_CANADIAN=y
CT_HOST="powerpc-unknown-linux-uclibc"
diff --git a/samples/powerpc-unknown-linux-uclibc/crosstool.config b/samples/powerpc-unknown-linux-uclibc/crosstool.config
index 655b636..0950dcd 100644
--- a/samples/powerpc-unknown-linux-uclibc/crosstool.config
+++ b/samples/powerpc-unknown-linux-uclibc/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_POWERPC=y
CT_ARCH_FLOAT_SW=y
CT_KERNEL_LINUX=y
diff --git a/samples/powerpc-unknown_nofpu-linux-gnu/crosstool.config b/samples/powerpc-unknown_nofpu-linux-gnu/crosstool.config
index c560bdb..b2983ba 100644
--- a/samples/powerpc-unknown_nofpu-linux-gnu/crosstool.config
+++ b/samples/powerpc-unknown_nofpu-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_POWERPC=y
CT_ARCH_FLOAT_SW=y
CT_TARGET_VENDOR="unknown_nofpu"
diff --git a/samples/powerpc64-multilib-linux-gnu/crosstool.config b/samples/powerpc64-multilib-linux-gnu/crosstool.config
index 83babea..05b9787 100644
--- a/samples/powerpc64-multilib-linux-gnu/crosstool.config
+++ b/samples/powerpc64-multilib-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_POWERPC=y
CT_MULTILIB=y
CT_ARCH_64=y
diff --git a/samples/powerpc64-unknown-linux-gnu/crosstool.config b/samples/powerpc64-unknown-linux-gnu/crosstool.config
index 72f4604..0469628 100644
--- a/samples/powerpc64-unknown-linux-gnu/crosstool.config
+++ b/samples/powerpc64-unknown-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_POWERPC=y
CT_ARCH_64=y
CT_KERNEL_LINUX=y
diff --git a/samples/powerpc64le-unknown-linux-gnu/crosstool.config b/samples/powerpc64le-unknown-linux-gnu/crosstool.config
index 12b69d7..95d8025 100644
--- a/samples/powerpc64le-unknown-linux-gnu/crosstool.config
+++ b/samples/powerpc64le-unknown-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_POWERPC=y
CT_ARCH_LE=y
CT_ARCH_64=y
diff --git a/samples/riscv32-hifive1-elf/crosstool.config b/samples/riscv32-hifive1-elf/crosstool.config
index e525c27..49c9340 100644
--- a/samples/riscv32-hifive1-elf/crosstool.config
+++ b/samples/riscv32-hifive1-elf/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_EXPERIMENTAL=y
CT_ARCH_RISCV=y
CT_ARCH_ARCH="rv32ima"
diff --git a/samples/riscv32-unknown-elf/crosstool.config b/samples/riscv32-unknown-elf/crosstool.config
index df459bd..1d68b8f 100644
--- a/samples/riscv32-unknown-elf/crosstool.config
+++ b/samples/riscv32-unknown-elf/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_EXPERIMENTAL=y
CT_ARCH_RISCV=y
CT_TARGET_VENDOR=""
diff --git a/samples/riscv64-unknown-elf/crosstool.config b/samples/riscv64-unknown-elf/crosstool.config
index 0110f56..87e9b71 100644
--- a/samples/riscv64-unknown-elf/crosstool.config
+++ b/samples/riscv64-unknown-elf/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_EXPERIMENTAL=y
CT_ARCH_RISCV=y
# CT_DEMULTILIB is not set
diff --git a/samples/riscv64-unknown-linux-gnu/crosstool.config b/samples/riscv64-unknown-linux-gnu/crosstool.config
index 215ff51..a03f6e8 100644
--- a/samples/riscv64-unknown-linux-gnu/crosstool.config
+++ b/samples/riscv64-unknown-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_EXPERIMENTAL=y
CT_ARCH_RISCV=y
# CT_DEMULTILIB is not set
diff --git a/samples/s390-ibm-linux-gnu/crosstool.config b/samples/s390-ibm-linux-gnu/crosstool.config
index 6587f1f..bf6fbe0 100644
--- a/samples/s390-ibm-linux-gnu/crosstool.config
+++ b/samples/s390-ibm-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_EXPERIMENTAL=y
CT_ARCH_S390=y
CT_KERNEL_LINUX=y
diff --git a/samples/s390x-ibm-linux-gnu/crosstool.config b/samples/s390x-ibm-linux-gnu/crosstool.config
index 307af1c..55b1622 100644
--- a/samples/s390x-ibm-linux-gnu/crosstool.config
+++ b/samples/s390x-ibm-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_S390=y
CT_ARCH_64=y
CT_KERNEL_LINUX=y
diff --git a/samples/sh-multilib-linux-gnu/crosstool.config b/samples/sh-multilib-linux-gnu/crosstool.config
index e697d22..78e0ce4 100644
--- a/samples/sh-multilib-linux-gnu/crosstool.config
+++ b/samples/sh-multilib-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_SH=y
CT_ARCH_CPU="sh4"
CT_ARCH_LE_BE=y
diff --git a/samples/sh-multilib-linux-uclibc/crosstool.config b/samples/sh-multilib-linux-uclibc/crosstool.config
index 3b6bb57..c4514f6 100644
--- a/samples/sh-multilib-linux-uclibc/crosstool.config
+++ b/samples/sh-multilib-linux-uclibc/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_SH=y
CT_ARCH_CPU="sh4"
CT_ARCH_LE_BE=y
diff --git a/samples/sh-unknown-elf/crosstool.config b/samples/sh-unknown-elf/crosstool.config
index 1bae40e..cf06c37 100644
--- a/samples/sh-unknown-elf/crosstool.config
+++ b/samples/sh-unknown-elf/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_SH=y
CT_ARCH_LE_BE=y
CT_BINUTILS_PLUGINS=y
diff --git a/samples/sparc-leon-linux-uclibc/crosstool.config b/samples/sparc-leon-linux-uclibc/crosstool.config
index 19e855f..88bb7a7 100644
--- a/samples/sparc-leon-linux-uclibc/crosstool.config
+++ b/samples/sparc-leon-linux-uclibc/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_SPARC=y
CT_ARCH_CPU="leon"
CT_ARCH_TUNE="leon"
diff --git a/samples/sparc-unknown-linux-gnu/crosstool.config b/samples/sparc-unknown-linux-gnu/crosstool.config
index cf37073..ee5191c 100644
--- a/samples/sparc-unknown-linux-gnu/crosstool.config
+++ b/samples/sparc-unknown-linux-gnu/crosstool.config
@@ -1,3 +1,3 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_SPARC=y
CT_KERNEL_LINUX=y
diff --git a/samples/sparc64-multilib-linux-gnu/crosstool.config b/samples/sparc64-multilib-linux-gnu/crosstool.config
index 87a01fa..ea23563 100644
--- a/samples/sparc64-multilib-linux-gnu/crosstool.config
+++ b/samples/sparc64-multilib-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_SPARC=y
CT_MULTILIB=y
CT_ARCH_64=y
diff --git a/samples/x86_64-centos6-linux-gnu/crosstool.config b/samples/x86_64-centos6-linux-gnu/crosstool.config
index 51a9002..24e8a11 100644
--- a/samples/x86_64-centos6-linux-gnu/crosstool.config
+++ b/samples/x86_64-centos6-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_OBSOLETE=y
CT_ARCH_X86=y
CT_ARCH_64=y
diff --git a/samples/x86_64-centos7-linux-gnu/crosstool.config b/samples/x86_64-centos7-linux-gnu/crosstool.config
index 9fec08e..0831970 100644
--- a/samples/x86_64-centos7-linux-gnu/crosstool.config
+++ b/samples/x86_64-centos7-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_OBSOLETE=y
CT_ARCH_X86=y
CT_ARCH_64=y
diff --git a/samples/x86_64-multilib-linux-gnu/crosstool.config b/samples/x86_64-multilib-linux-gnu/crosstool.config
index f571ac4..b581456 100644
--- a/samples/x86_64-multilib-linux-gnu/crosstool.config
+++ b/samples/x86_64-multilib-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_X86=y
CT_MULTILIB=y
CT_ARCH_64=y
diff --git a/samples/x86_64-multilib-linux-musl/crosstool.config b/samples/x86_64-multilib-linux-musl/crosstool.config
index a5f3b2a..83edf11 100644
--- a/samples/x86_64-multilib-linux-musl/crosstool.config
+++ b/samples/x86_64-multilib-linux-musl/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_EXPERIMENTAL=y
CT_ARCH_X86=y
CT_MULTILIB=y
diff --git a/samples/x86_64-multilib-linux-uclibc,moxie-unknown-moxiebox/crosstool.config b/samples/x86_64-multilib-linux-uclibc,moxie-unknown-moxiebox/crosstool.config
index 7581820..5fd79e4 100644
--- a/samples/x86_64-multilib-linux-uclibc,moxie-unknown-moxiebox/crosstool.config
+++ b/samples/x86_64-multilib-linux-uclibc,moxie-unknown-moxiebox/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_EXPERIMENTAL=y
CT_ARCH_MOXIE=y
CT_CANADIAN=y
diff --git a/samples/x86_64-multilib-linux-uclibc,powerpc-unknown-elf/crosstool.config b/samples/x86_64-multilib-linux-uclibc,powerpc-unknown-elf/crosstool.config
index fee71b8..07c0155 100644
--- a/samples/x86_64-multilib-linux-uclibc,powerpc-unknown-elf/crosstool.config
+++ b/samples/x86_64-multilib-linux-uclibc,powerpc-unknown-elf/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_POWERPC=y
CT_TARGET_VENDOR=""
CT_CANADIAN=y
diff --git a/samples/x86_64-multilib-linux-uclibc/crosstool.config b/samples/x86_64-multilib-linux-uclibc/crosstool.config
index 81626a3..0136376 100644
--- a/samples/x86_64-multilib-linux-uclibc/crosstool.config
+++ b/samples/x86_64-multilib-linux-uclibc/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_X86=y
CT_MULTILIB=y
CT_ARCH_64=y
diff --git a/samples/x86_64-ubuntu12.04-linux-gnu/crosstool.config b/samples/x86_64-ubuntu12.04-linux-gnu/crosstool.config
index 6b65e94..45d80bc 100644
--- a/samples/x86_64-ubuntu12.04-linux-gnu/crosstool.config
+++ b/samples/x86_64-ubuntu12.04-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_OBSOLETE=y
CT_ARCH_X86=y
CT_ARCH_64=y
diff --git a/samples/x86_64-ubuntu14.04-linux-gnu/crosstool.config b/samples/x86_64-ubuntu14.04-linux-gnu/crosstool.config
index 3339623..535df2b 100644
--- a/samples/x86_64-ubuntu14.04-linux-gnu/crosstool.config
+++ b/samples/x86_64-ubuntu14.04-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_OBSOLETE=y
CT_ARCH_X86=y
CT_ARCH_64=y
diff --git a/samples/x86_64-ubuntu16.04-linux-gnu/crosstool.config b/samples/x86_64-ubuntu16.04-linux-gnu/crosstool.config
index b7193f4..4948c00 100644
--- a/samples/x86_64-ubuntu16.04-linux-gnu/crosstool.config
+++ b/samples/x86_64-ubuntu16.04-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_OBSOLETE=y
CT_ARCH_X86=y
CT_ARCH_64=y
diff --git a/samples/x86_64-unknown-linux-gnu/crosstool.config b/samples/x86_64-unknown-linux-gnu/crosstool.config
index c1026ec..27637ed 100644
--- a/samples/x86_64-unknown-linux-gnu/crosstool.config
+++ b/samples/x86_64-unknown-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_X86=y
CT_ARCH_64=y
CT_KERNEL_LINUX=y
diff --git a/samples/x86_64-unknown-linux-uclibc/crosstool.config b/samples/x86_64-unknown-linux-uclibc/crosstool.config
index 101294e..9b1687e 100644
--- a/samples/x86_64-unknown-linux-uclibc/crosstool.config
+++ b/samples/x86_64-unknown-linux-uclibc/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_X86=y
CT_ARCH_64=y
CT_KERNEL_LINUX=y
diff --git a/samples/x86_64-w64-mingw32,arm-cortexa9_neon-linux-gnueabihf/crosstool.config b/samples/x86_64-w64-mingw32,arm-cortexa9_neon-linux-gnueabihf/crosstool.config
index 1f44af2..638c6c1 100644
--- a/samples/x86_64-w64-mingw32,arm-cortexa9_neon-linux-gnueabihf/crosstool.config
+++ b/samples/x86_64-w64-mingw32,arm-cortexa9_neon-linux-gnueabihf/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_EXPERIMENTAL=y
CT_ARCH_ARM=y
CT_ARCH_CPU="cortex-a9"
diff --git a/samples/x86_64-w64-mingw32,x86_64-pc-linux-gnu/crosstool.config b/samples/x86_64-w64-mingw32,x86_64-pc-linux-gnu/crosstool.config
index cd801b0..64cfbcd 100644
--- a/samples/x86_64-w64-mingw32,x86_64-pc-linux-gnu/crosstool.config
+++ b/samples/x86_64-w64-mingw32,x86_64-pc-linux-gnu/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_EXPERIMENTAL=y
# CT_STRIP_HOST_TOOLCHAIN_EXECUTABLES is not set
CT_ARCH_X86=y
diff --git a/samples/x86_64-w64-mingw32/crosstool.config b/samples/x86_64-w64-mingw32/crosstool.config
index 66aedc5..40cbe12 100644
--- a/samples/x86_64-w64-mingw32/crosstool.config
+++ b/samples/x86_64-w64-mingw32/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_EXPERIMENTAL=y
CT_ARCH_X86=y
CT_MULTILIB=y
diff --git a/samples/xtensa-fsf-elf/crosstool.config b/samples/xtensa-fsf-elf/crosstool.config
index 8a65f79..131df9e 100644
--- a/samples/xtensa-fsf-elf/crosstool.config
+++ b/samples/xtensa-fsf-elf/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_EXPERIMENTAL=y
CT_ALLOW_BUILD_AS_ROOT=y
CT_ALLOW_BUILD_AS_ROOT_SURE=y
diff --git a/samples/xtensa-fsf-linux-uclibc/crosstool.config b/samples/xtensa-fsf-linux-uclibc/crosstool.config
index 81ea170..3c524b0 100644
--- a/samples/xtensa-fsf-linux-uclibc/crosstool.config
+++ b/samples/xtensa-fsf-linux-uclibc/crosstool.config
@@ -1,4 +1,4 @@
-CT_CONFIG_VERSION="2"
+CT_CONFIG_VERSION="3"
CT_ARCH_XTENSA=y
CT_ARCH_BE=y
CT_TARGET_CFLAGS="-mlongcalls -mtext-section-literals"
diff --git a/scripts/build/companion_libs/220-ncurses.sh b/scripts/build/companion_libs/220-ncurses.sh
index b5dee13..decfa9e 100644
--- a/scripts/build/companion_libs/220-ncurses.sh
+++ b/scripts/build/companion_libs/220-ncurses.sh
@@ -125,7 +125,7 @@ do_ncurses_backend() {
for arg in "$@"; do
case "$arg" in
--*)
- ncurses_opts+=("$arg")
+ ncurses_opts+=("${arg}")
;;
*)
eval "${arg// /\\ }"
diff --git a/scripts/build/companion_tools/050-make.sh b/scripts/build/companion_tools/050-make.sh
index 4c6dc4c..aecea1a 100644
--- a/scripts/build/companion_tools/050-make.sh
+++ b/scripts/build/companion_tools/050-make.sh
@@ -23,6 +23,9 @@ do_companion_tools_make_for_build()
if [ "${CT_MAKE_GMAKE_SYMLINK}" = "y" ]; then
CT_DoExecLog ALL ln -sv make "${CT_BUILD_COMPTOOLS_DIR}/bin/gmake"
fi
+ if [ "${CT_MAKE_GNUMAKE_SYMLINK}" = "y" ]; then
+ CT_DoExecLog ALL ln -sv make "${CT_BUILD_COMPTOOLS_DIR}/bin/gnumake"
+ fi
CT_EndStep
}
@@ -39,6 +42,9 @@ do_companion_tools_make_for_host()
if [ "${CT_MAKE_GMAKE_SYMLINK}" = "y" ]; then
CT_DoExecLog ALL ln -sv make "${CT_PREFIX_DIR}/bin/gmake"
fi
+ if [ "${CT_MAKE_GNUMAKE_SYMLINK}" = "y" ]; then
+ CT_DoExecLog ALL ln -sv make "${CT_PREFIX_DIR}/bin/gnumake"
+ fi
CT_EndStep
}
diff --git a/scripts/build/companion_tools/510-bison.sh b/scripts/build/companion_tools/510-bison.sh
new file mode 100644
index 0000000..9379ea8
--- /dev/null
+++ b/scripts/build/companion_tools/510-bison.sh
@@ -0,0 +1,66 @@
+# Build script for bison
+
+do_companion_tools_bison_get()
+{
+ CT_Fetch BISON
+}
+
+do_companion_tools_bison_extract()
+{
+ CT_ExtractPatch BISON
+}
+
+do_companion_tools_bison_for_build()
+{
+ CT_DoStep INFO "Installing bison for build"
+ CT_mkdir_pushd "${CT_BUILD_DIR}/build-bison-build"
+ do_bison_backend \
+ host=${CT_BUILD} \
+ prefix="${CT_BUILD_COMPTOOLS_DIR}" \
+ cflags="${CT_CFLAGS_FOR_BUILD}" \
+ ldflags="${CT_LDFLAGS_FOR_BUILD}"
+ CT_Popd
+ CT_EndStep
+}
+
+do_companion_tools_bison_for_host()
+{
+ CT_DoStep INFO "Installing bison for host"
+ CT_mkdir_pushd "${CT_BUILD_DIR}/build-bison-host"
+ do_bison_backend \
+ host=${CT_HOST} \
+ prefix="${CT_PREFIX_DIR}" \
+ cflags="${CT_CFLAGS_FOR_HOST}" \
+ ldflags="${CT_LDFLAGS_FOR_HOST}"
+ CT_Popd
+ CT_EndStep
+}
+
+do_bison_backend()
+{
+ local host
+ local prefix
+ local cflags
+ local ldflags
+ local -a extra_config
+
+ for arg in "$@"; do
+ eval "${arg// /\\ }"
+ done
+
+ CT_DoLog EXTRA "Configuring bison"
+ CT_DoExecLog CFG \
+ CFLAGS="${cflags}" \
+ LDFLAGS="${ldflags}" \
+ ${CONFIG_SHELL} \
+ "${CT_SRC_DIR}/bison/configure" \
+ --host="${host}" \
+ --prefix="${prefix}" \
+ "${extra_config[@]}"
+
+ CT_DoLog EXTRA "Building bison"
+ CT_DoExecLog ALL make
+
+ CT_DoLog EXTRA "Installing bison"
+ CT_DoExecLog ALL make install
+}
diff --git a/scripts/build/debug/300-gdb.sh b/scripts/build/debug/300-gdb.sh
index 72d13df..15e0684 100644
--- a/scripts/build/debug/300-gdb.sh
+++ b/scripts/build/debug/300-gdb.sh
@@ -1,78 +1,38 @@
# Build script for the gdb debug facility
-do_debug_gdb_get() {
+do_debug_gdb_get()
+{
CT_Fetch GDB
}
-do_debug_gdb_extract() {
+do_debug_gdb_extract()
+{
CT_ExtractPatch GDB
-}
-
-do_debug_gdb_build() {
- local -a extra_config
-
- # These variables should be global and shared between all packages.
- local CT_TARGET_CPP="${CT_TARGET}-cpp"
- local CT_TARGET_CC="${CT_TARGET}-gcc"
- local CT_TARGET_CXX="${CT_TARGET}-g++"
- local CT_TARGET_LD="${CT_TARGET}-ld"
- local CT_HOST_CPP="${CT_HOST}-cpp"
- local CT_HOST_CC="${CT_HOST}-gcc"
- local CT_HOST_CXX="${CT_HOST}-g++"
- local CT_HOST_LD="${CT_HOST}-ld"
- gdb_src_dir="${CT_SRC_DIR}/gdb"
-
- if [ "${CT_GDB_HAS_PKGVERSION_BUGURL}" = "y" ]; then
- [ -n "${CT_PKGVERSION}" ] && extra_config+=("--with-pkgversion=${CT_PKGVERSION}")
- [ -n "${CT_TOOLCHAIN_BUGURL}" ] && extra_config+=("--with-bugurl=${CT_TOOLCHAIN_BUGURL}")
- fi
+ # Workaround for bad versions, where the configure
+ # script for gdbserver is not executable...
+ # Bah, GNU folks strike again... :-(
+ chmod a+x "${CT_SRC_DIR}/gdb/gdb/gdbserver/configure"
+}
+do_debug_gdb_build()
+{
if [ "${CT_GDB_CROSS}" = "y" ]; then
- local -a cross_extra_config
local gcc_version p _p
- local cross_CFLAGS cross_LDFLAGS
+ local -a cross_extra_config
CT_DoStep INFO "Installing cross-gdb"
- CT_DoLog EXTRA "Configuring cross-gdb"
-
- mkdir -p "${CT_BUILD_DIR}/build-gdb-cross"
- cd "${CT_BUILD_DIR}/build-gdb-cross"
-
- cross_extra_config=("${extra_config[@]}")
-
- if [ "${CT_GDB_HAS_DISABLE_CXX_BUILD}" = "y" ]; then
- cross_extra_config+=("--disable-build-with-cxx")
- fi
-
- # For gdb-cross this combination of flags forces
- # gdb configure to fall back to default '-lexpat' flag
- # which is acceptable.
- #
- # NOTE: DO NOT USE --with-libexpat-prefix (until GDB configure is smarter)!!!
- # It conflicts with a static build: GDB's configure script will find the shared
- # version of expat and will attempt to link that, despite the -static flag.
- # The link will fail, and configure will abort with "expat missing or unusable"
- # message.
- cross_extra_config+=("--with-expat")
- cross_extra_config+=("--without-libexpat-prefix")
-
- case "${CT_THREADS}" in
- none) cross_extra_config+=("--disable-threads");;
- *) cross_extra_config+=("--enable-threads");;
- esac
+ CT_mkdir_pushd "${CT_BUILD_DIR}/build-gdb-cross"
+ cross_extra_config=( "${CT_GDB_CROSS_EXTRA_CONFIG_ARRAY[@]}" )
if [ "${CT_GDB_CROSS_PYTHON}" = "y" ]; then
if [ -z "${CT_GDB_CROSS_PYTHON_BINARY}" ]; then
- for p in python python3 python2; do
- _p=$( which "${p}" || true )
- if [ -n "${_p}" ]; then
- cross_extra_config+=("--with-python=${_p}")
- break
- fi
- done
- if [ -z "${_p}" ]; then
- CT_Abort "Python support requested in cross-gdb, but Python not found. Set CT_GDB_CROSS_PYTHON_BINARY in your config."
+ if [ "${CT_CANADIAN}" = "y" -o "${CT_CROSS_NATIVE}" = "y" ]; then
+ CT_Abort "For canadian build, Python wrapper runnable on the build machine must be provided. Set CT_GDB_CROSS_PYTHON_BINARY."
+ elif [ "${CT_CONFIGURE_has_python}" = "y" ]; then
+ cross_extra_config+=("--with-python=${python}")
+ else
+ CT_Abort "Python support requested in GDB, but Python not found. Set CT_GDB_CROSS_PYTHON_BINARY."
fi
else
cross_extra_config+=("--with-python=${CT_GDB_CROSS_PYTHON_BINARY}")
@@ -87,18 +47,6 @@ do_debug_gdb_build() {
cross_extra_config+=("--disable-sim")
fi
- if [ "${CT_TOOLCHAIN_ENABLE_NLS}" != "y" ]; then
- cross_extra_config+=("--disable-nls")
- fi
-
- cross_CFLAGS="${CT_CFLAGS_FOR_HOST}"
- cross_LDFLAGS="${CT_LDFLAGS_FOR_HOST}"
-
- if [ "${CT_GDB_CROSS_STATIC}" = "y" ]; then
- cross_CFLAGS+=" -static"
- cross_LDFLAGS+=" -static"
- fi
-
if ${CT_HOST}-gcc --version 2>&1 | grep clang; then
# clang detects the line from gettext's _ macro as format string
# not being a string literal and produces a lot of warnings - which
@@ -107,45 +55,15 @@ do_debug_gdb_build() {
cross_extra_config+=("--enable-build-warnings=,-Wno-format-nonliteral,-Wno-format-security")
fi
- # Fix up whitespace. Some older GDB releases (e.g. 6.8a) get confused if there
- # are multiple consecutive spaces: sub-configure scripts replace them with a
- # single space and then complain that $CC value changed from that in
- # the master directory.
- cross_CFLAGS=`echo ${cross_CFLAGS}`
- cross_LDFLAGS=`echo ${cross_LDFLAGS}`
-
- # Disable binutils options when building from the binutils-gdb repo.
- cross_extra_config+=("--disable-binutils")
- cross_extra_config+=("--disable-ld")
- cross_extra_config+=("--disable-gas")
-
- CT_DoLog DEBUG "Extra config passed: '${cross_extra_config[*]}'"
-
- CT_DoExecLog CFG \
- CPP="${CT_HOST_CPP}" \
- CC="${CT_HOST_CC}" \
- CXX="${CT_HOST_CXX}" \
- LD="${CT_HOST_LD}" \
- CFLAGS="${cross_CFLAGS}" \
- CXXFLAGS="${cross_CFLAGS}" \
- LDFLAGS="${cross_LDFLAGS}" \
- ${CONFIG_SHELL} \
- "${gdb_src_dir}/configure" \
- --build=${CT_BUILD} \
- --host=${CT_HOST} \
- --target=${CT_TARGET} \
- --prefix="${CT_PREFIX_DIR}" \
- --with-build-sysroot="${CT_SYSROOT_DIR}" \
+ do_gdb_backend \
+ buildtype=cross \
+ host="${CT_HOST}" \
+ cflags="${CT_CFLAGS_FOR_HOST}" \
+ ldflags="${CT_LDFLAGS_FOR_HOST}" \
+ prefix="${CT_PREFIX_DIR}" \
+ static="${CT_GDB_CROSS_STATIC}" \
--with-sysroot="${CT_SYSROOT_DIR}" \
- --disable-werror \
- "${cross_extra_config[@]}" \
- "${CT_GDB_CROSS_EXTRA_CONFIG_ARRAY[@]}"
-
- CT_DoLog EXTRA "Building cross-gdb"
- CT_DoExecLog ALL make ${JOBSFLAGS}
-
- CT_DoLog EXTRA "Installing cross-gdb"
- CT_DoExecLog ALL make install
+ "${cross_extra_config[@]}"
if [ "${CT_BUILD_MANUALS}" = "y" ]; then
CT_DoLog EXTRA "Building and installing the cross-GDB manuals"
@@ -171,209 +89,201 @@ do_debug_gdb_build() {
>"${CT_PREFIX_DIR}/share/gdb/gdbinit"
fi # Install gdbinit sample
+ CT_Popd
CT_EndStep
fi
- # TBD combine GDB native and gdbserver backends, build either or both in a single pass.
- if [ "${CT_GDB_NATIVE}" = "y" ]; then
+ if [ "${CT_GDB_NATIVE}" = "y" -o "${CT_GDB_GDBSERVER}" = "y" ]; then
local -a native_extra_config
- local native_CFLAGS native_LDFLAGS
+ local subdir
CT_DoStep INFO "Installing native gdb"
- CT_DoLog EXTRA "Configuring native gdb"
-
- mkdir -p "${CT_BUILD_DIR}/build-gdb-native"
- cd "${CT_BUILD_DIR}/build-gdb-native"
+ CT_mkdir_pushd "${CT_BUILD_DIR}/build-gdb-native"
- native_extra_config=("${extra_config[@]}")
-
- # We may not have C++ language configured for target
- if [ "${CT_GDB_HAS_DISABLE_CXX_BUILD}" = "y" ]; then
- native_extra_config+=("--disable-build-with-cxx")
- fi
+ native_extra_config+=("--program-prefix=")
# GDB on Mingw depends on PDcurses, not ncurses
if [ "${CT_MINGW32}" != "y" ]; then
native_extra_config+=("--with-curses")
fi
- # Build a native gdbserver later if required.
+ # Build a native gdbserver if needed. If building only
+ # gdbserver, configure in the subdirectory.
# Newer versions enable it automatically for a native target by default.
- native_extra_config+=("--enable-gdbserver=no")
-
- # Target libexpat resides in sysroot and does not have
- # any dependencies, so just passing '-lexpat' to gcc is enough.
- #
- # By default gdb configure looks for expat in '$prefix/lib'
- # directory. In our case '$prefix/lib' resolves to '/usr/lib'
- # where libexpat for build platform lives, which is
- # unacceptable for cross-compiling.
- #
- # To prevent this '--without-libexpat-prefix' flag must be passed.
- # Thus configure falls back to '-lexpat', which is exactly what we want.
- #
- # NOTE: DO NOT USE --with-libexpat-prefix (until GDB configure is smarter)!!!
- # It conflicts with a static build: GDB's configure script will find the shared
- # version of expat and will attempt to link that, despite the -static flag.
- # The link will fail, and configure will abort with "expat missing or unusable"
- # message.
- native_extra_config+=("--with-expat")
- native_extra_config+=("--without-libexpat-prefix")
-
- case "${CT_THREADS}" in
- none) native_extra_config+=("--disable-threads");;
- *) native_extra_config+=("--enable-threads");;
- esac
-
- if [ "${CT_TOOLCHAIN_ENABLE_NLS}" != "y" ]; then
- native_extra_config+=("--disable-nls")
- fi
-
- native_CFLAGS="${CT_ALL_TARGET_CFLAGS}"
- native_LDFLAGS="${CT_ALL_TARGET_LDFLAGS}"
-
- if [ "${CT_GDB_NATIVE_STATIC}" = "y" ]; then
- native_CFLAGS+=" -static"
- native_LDFLAGS+=" -static"
+ if [ "${CT_GDB_GDBSERVER}" != "y" ]; then
+ native_extra_config+=("--disable-gdbserver")
+ else
+ native_extra_config+=("--enable-gdbserver")
+ if [ "${CT_GDB_NATIVE_BUILD_IPA_LIB}" = "y" ]; then
+ gdbserver_extra_config+=("--enable-inprocess-agent")
+ else
+ gdbserver_extra_config+=("--disable-inprocess-agent")
+ fi
+ if [ "${CT_GDB_NATIVE}" != "y" ]; then
+ subdir=gdb/gdbserver/
+ fi
fi
export ac_cv_func_strncmp_works=yes
- # Disable binutils options when building from the binutils-gdb repo.
- native_extra_config+=("--disable-binutils")
- native_extra_config+=("--disable-ld")
- native_extra_config+=("--disable-gas")
-
- native_CFLAGS=`echo ${native_CFLAGS}`
- native_LDFLAGS=`echo ${native_LDFLAGS}`
-
- CT_DoLog DEBUG "Extra config passed: '${native_extra_config[*]}'"
-
- CT_DoExecLog CFG \
- CPP="${CT_TARGET_CPP}" \
- CC="${CT_TARGET_CC}" \
- CXX="${CT_TARGET_CXX}" \
- LD="${CT_TARGET_LD}" \
- CFLAGS="${native_CFLAGS}" \
- CXXFLAGS="${native_CFLAGS}" \
- LDFLAGS="${native_LDFLAGS}" \
- ${CONFIG_SHELL} \
- "${gdb_src_dir}/configure" \
- --build=${CT_BUILD} \
- --host=${CT_TARGET} \
- --target=${CT_TARGET} \
- --prefix=/usr \
- --with-build-sysroot="${CT_SYSROOT_DIR}" \
- --without-uiout \
- --disable-tui \
- --disable-gdbtk \
- --without-x \
- --disable-sim \
- --disable-werror \
- --without-included-gettext \
- --without-develop \
+ # TBD do we need all these? Eg why do we disable TUI if we build curses for target?
+ native_extra_config+=(
+ --without-uiout
+ --disable-tui
+ --disable-gdbtk
+ --without-x
+ --disable-sim
+ --without-included-gettext
+ --without-develop
+ --sysconfdir=/etc
+ --localstatedir=/var
+ )
+
+ do_gdb_backend \
+ buildtype=native \
+ subdir=${subdir} \
+ host="${CT_TARGET}" \
+ cflags="${CT_ALL_TARGET_CFLAGS}" \
+ ldflags="${CT_ALL_TARGET_LDFLAGS}" \
+ static="${CT_GDB_NATIVE_STATIC}" \
+ static_libstdc="${CT_GDB_NATIVE_STATIC_LIBSTDC}" \
+ prefix=/usr \
+ destdir="${CT_DEBUGROOT_DIR}" \
"${native_extra_config[@]}"
- CT_DoLog EXTRA "Building native gdb"
- CT_DoExecLog ALL make ${JOBSFLAGS}
-
- CT_DoLog EXTRA "Installing native gdb"
- CT_DoExecLog ALL make DESTDIR="${CT_DEBUGROOT_DIR}" install
-
- # Building a native gdb also builds a gdbserver
- find "${CT_DEBUGROOT_DIR}" -type f -name gdbserver -exec rm -fv {} \; 2>&1 |CT_DoLog ALL
-
unset ac_cv_func_strncmp_works
+ CT_Popd
CT_EndStep # native gdb build
fi
+}
- if [ "${CT_GDB_GDBSERVER}" = "y" ]; then
- local -a gdbserver_extra_config
- local gdbserver_CFLAGS gdbserver_LDFLAGS
+do_gdb_backend()
+{
+ local host prefix destdir cflags ldflags static buildtype subdir
+ local -a extra_config
- CT_DoStep INFO "Installing gdbserver"
- CT_DoLog EXTRA "Configuring gdbserver"
+ for arg in "$@"; do
+ case "$arg" in
+ --*)
+ extra_config+=("${arg}")
+ ;;
+ *)
+ eval "${arg// /\\ }"
+ ;;
+ esac
+ done
+
+ # Starting with glibc 2.25, it now provides a <proc_service.h> header. The
+ # problem is that GDB releases prior to 7.12 used to implement one of the
+ # interfaces, ps_get_thread_are with a const qualifier on one of the arguments.
+ # Therefore, such older versions cannot be compiled against a newer glibc.
+ # If we detect such a combination, mitigate by creating a local proc_service.h
+ # with a prototype adjusted for GDB requirements.
+ if [ -r "${CT_HEADERS_DIR}/proc_service.h" -a "${CT_GDB_CONST_GET_THREAD_AREA}" = "y" ]; then
+ CT_DoLog DEBUG "Fixing up the prototype in <proc_service.h>"
+ CT_DoExecLog ALL mkdir -p gdb/gdbserver
+ CT_DoExecLog ALL cp "${CT_HEADERS_DIR}/proc_service.h" gdb/proc_service.h
+ CT_DoExecLog ALL sed -i \
+ "s/\(ps_get_thread_area *(\).*\(struct ps_prochandle\)/\1const \2/" \
+ gdb/proc_service.h
+ CT_DoExecLog ALL cp gdb/proc_service.h gdb/gdbserver/proc_service.h
+ fi
- mkdir -p "${CT_BUILD_DIR}/build-gdb-gdbserver"
- cd "${CT_BUILD_DIR}/build-gdb-gdbserver"
+ if [ "${CT_GDB_HAS_PKGVERSION_BUGURL}" = "y" ]; then
+ [ -n "${CT_PKGVERSION}" ] && extra_config+=("--with-pkgversion=${CT_PKGVERSION}")
+ [ -n "${CT_TOOLCHAIN_BUGURL}" ] && extra_config+=("--with-bugurl=${CT_TOOLCHAIN_BUGURL}")
+ fi
- # Workaround for bad versions, where the configure
- # script for gdbserver is not executable...
- # Bah, GNU folks strike again... :-(
- chmod a+x "${gdb_src_dir}/gdb/gdbserver/configure"
+ # Disable binutils options when building from the binutils-gdb repo.
+ extra_config+=("--disable-binutils")
+ extra_config+=("--disable-ld")
+ extra_config+=("--disable-gas")
- gdbserver_extra_config=("${extra_config[@]}")
+ if [ "${CT_GDB_HAS_DISABLE_CXX_BUILD}" = "y" ]; then
+ extra_config+=("--disable-build-with-cxx")
+ fi
- # We may not have C++ language configured for target
- if [ "${CT_GDB_HAS_DISABLE_CXX_BUILD}" = "y" ]; then
- gdbserver_extra_config+=("--disable-build-with-cxx")
- fi
+ case "${CT_THREADS}" in
+ none) extra_config+=("--disable-threads");;
+ *) extra_config+=("--enable-threads");;
+ esac
- if [ "${CT_GDB_GDBSERVER_HAS_IPA_LIB}" = "y" ]; then
- if [ "${CT_GDB_GDBSERVER_BUILD_IPA_LIB}" = "y" ]; then
- gdbserver_extra_config+=("--enable-inprocess-agent")
- else
- gdbserver_extra_config+=("--disable-inprocess-agent")
- fi
- fi
+ if [ "${CT_TOOLCHAIN_ENABLE_NLS}" != "y" ]; then
+ extra_config+=("--disable-nls")
+ fi
- # Disable binutils options when building from the binutils-gdb repo.
- gdbserver_extra_config+=("--disable-binutils")
- gdbserver_extra_config+=("--disable-ld")
- gdbserver_extra_config+=("--disable-gas")
+ # Target libexpat resides in sysroot and does not have
+ # any dependencies, so just passing '-lexpat' to gcc is enough.
+ #
+ # By default gdb configure looks for expat in '$prefix/lib'
+ # directory. In our case '$prefix/lib' resolves to '/usr/lib'
+ # where libexpat for build platform lives, which is
+ # unacceptable for cross-compiling.
+ #
+ # To prevent this '--without-libexpat-prefix' flag must be passed.
+ # Thus configure falls back to '-lexpat', which is exactly what we want.
+ #
+ # NOTE: DO NOT USE --with-libexpat-prefix (until GDB configure is smarter)!!!
+ # It conflicts with a static build: GDB's configure script will find the shared
+ # version of expat and will attempt to link that, despite the -static flag.
+ # The link will fail, and configure will abort with "expat missing or unusable"
+ # message.
+ extra_config+=("--with-expat")
+ extra_config+=("--without-libexpat-prefix")
+
+ if [ "${static}" = "y" ]; then
+ cflags+=" -static"
+ ldflags+=" -static"
+ fi
+ if [ "${static_libstdc}" = "y" ]; then
+ ldflags+=" -static-libstdc++"
+ fi
- gdbserver_CFLAGS="${CT_ALL_TARGET_CFLAGS}"
- gdbserver_LDFLAGS="${CT_ALL_TARGET_LDFLAGS}"
- if [ "${CT_GDB_GDBSERVER_STATIC}" = "y" ]; then
- gdbserver_CFLAGS+=" -static"
- gdbserver_LDFLAGS+=" -static"
- fi
+ # Fix up whitespace. Some older GDB releases (e.g. 6.8a) get confused if there
+ # are multiple consecutive spaces: sub-configure scripts replace them with a
+ # single space and then complain that $CC value changed from that in
+ # the master directory.
+ cflags=`echo ${cflags}`
+ ldflags=`echo ${ldflags}`
- if [ "${CT_GDB_GDBSERVER_STATIC_LIBSTDCXX}" = "y" ]; then
- gdbserver_LDFLAGS+=" -static-libstdc++"
- fi
+ CT_DoLog EXTRA "Configuring ${buildtype} gdb"
+ CT_DoLog DEBUG "Extra config passed: '${extra_config[*]}'"
- gdbserver_CFLAGS=`echo ${gdbserver_CFLAGS}`
- gdbserver_LDFLAGS=`echo ${gdbserver_LDFLAGS}`
-
- CT_DoLog DEBUG "Extra config passed: '${gdbserver_extra_config[*]}'"
-
- CT_DoExecLog CFG \
- CPP="${CT_TARGET_CPP}" \
- CC="${CT_TARGET_CC}" \
- CXX="${CT_TARGET_CXX}" \
- LD="${CT_TARGET_LD}" \
- CFLAGS="${gdbserver_CFLAGS}" \
- CXXFLAGS="${gdbserver_CFLAGS}" \
- LDFLAGS="${gdbserver_LDFLAGS}" \
- ${CONFIG_SHELL} \
- "${gdb_src_dir}/gdb/gdbserver/configure" \
- --build=${CT_BUILD} \
- --host=${CT_TARGET} \
- --target=${CT_TARGET} \
- --prefix=/usr \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --includedir="${CT_HEADERS_DIR}" \
- --with-build-sysroot="${CT_SYSROOT_DIR}" \
- --program-prefix= \
- --without-uiout \
- --disable-tui \
- --disable-gdbtk \
- --without-x \
- --without-included-gettext \
- --without-develop \
- --disable-werror \
- "${gdbserver_extra_config[@]}"
-
- CT_DoLog EXTRA "Building gdbserver"
- CT_DoExecLog ALL make ${JOBSFLAGS} CC=${CT_TARGET}-${CT_CC}
-
- CT_DoLog EXTRA "Installing gdbserver"
- CT_DoExecLog ALL make DESTDIR="${CT_DEBUGROOT_DIR}" install
+ # Run configure/make in the matching subdirectory so that any fixups
+ # prepared in a given subdirectory apply.
+ if [ -n "${subdir}" ]; then
+ CT_mkdir_pushd "${subdir}"
+ fi
- CT_EndStep
+ # TBD: is passing CPP/CC/CXX/LD needed? GCC should be determining this automatically from the triplets
+ CT_DoExecLog CFG \
+ CPP="${host}-cpp" \
+ CC="${host}-gcc" \
+ CXX="${host}-g++" \
+ LD="${host}-ld" \
+ CFLAGS="${cflags}" \
+ CXXFLAGS="${cflags}" \
+ LDFLAGS="${ldflags}" \
+ ${CONFIG_SHELL} \
+ "${CT_SRC_DIR}/gdb/${subdir}configure" \
+ --build=${CT_BUILD} \
+ --host=${host} \
+ --target=${CT_TARGET} \
+ --prefix="${prefix}" \
+ --with-build-sysroot="${CT_SYSROOT_DIR}" \
+ --includedir="${CT_HEADERS_DIR}" \
+ --disable-werror \
+ "${extra_config[@]}" \
+
+ CT_DoLog EXTRA "Building ${buildtype} gdb"
+ CT_DoExecLog ALL make ${JOBSFLAGS}
+
+ CT_DoLog EXTRA "Installing ${buildtype} gdb"
+ CT_DoExecLog ALL make install ${destdir:+DESTDIR="${destdir}"}
+
+ if [ -n "${subdir}" ]; then
+ CT_Popd
fi
}
diff --git a/scripts/crosstool-NG.sh b/scripts/crosstool-NG.sh
index 2e60f20..db15b89 100644
--- a/scripts/crosstool-NG.sh
+++ b/scripts/crosstool-NG.sh
@@ -458,6 +458,7 @@ if [ -z "${CT_RESTART}" ]; then
fi
# Not all tools are available for all platforms, but some are required.
+ # TBD do we need these as shell wrappers? exec is slow on Cygwin, and this makes exec twice for each compiler/linker run
if [ -n "${where}" ]; then
CT_DoLog DEBUG " '${!v}-${tool}' -> '${where}'"
printf "#${BANG}${CT_CONFIG_SHELL}\nexec '${where}' \"\${@}\"\n" >"${CT_BUILDTOOLS_PREFIX_DIR}/bin/${!v}-${tool}"
@@ -468,7 +469,7 @@ if [ -z "${CT_RESTART}" ]; then
ar|as|gcc|ld|nm|objcopy|objdump|ranlib)
CT_Abort "Missing: '${t}${tool}${!s}' or '${t}${tool}' or '${tool}' : either needed!"
;;
- # Some are conditionnally required
+ # Some are conditionally required
# Add them in alphabetical (C locale) ordering
g++)
# g++ (needed for companion lib), only needed for HOST
diff --git a/scripts/upgrade/v2 b/scripts/upgrade/v2
new file mode 100644
index 0000000..afff176
--- /dev/null
+++ b/scripts/upgrade/v2
@@ -0,0 +1,25 @@
+# vim: set filetype=sh :
+
+# Upgrade v2 -> v3: unified build of native gdb and gdbserver,
+# combining their options
+upgrade()
+{
+ case "${opt}" in
+ CT_GDB_GDBSERVER_BUILD_IPA_LIB)
+ replace CT_GDB_NATIVE_BUILD_IPA_LIB
+ ;;
+ CT_GDB_GDBSERVER_STATIC)
+ if [ "${CT_GDB_GDBSERVER_STATIC}" != "${CT_GDB_GDBSERVER_STATIC}" ]; then
+ warning "Both native gdb and gdbserver must now be built in the same way"
+ fi
+ unset opt
+ ;;
+ CT_GDB_GDBSERVER_STATIC_LIBSTDCXX)
+ replace GDB_NATIVE_STATIC_LIBSTDCXX
+ ;;
+ CT_GDB_GDBSERVER_HAS_IPA_LIB)
+ # not user-selectable
+ unset opt
+ ;;
+ esac
+}
diff --git a/testing/docker/alpine3.8/EXPERIMENTAL b/testing/docker/alpine3.8/EXPERIMENTAL
new file mode 100644
index 0000000..4d4d6d7
--- /dev/null
+++ b/testing/docker/alpine3.8/EXPERIMENTAL
@@ -0,0 +1,11 @@
+Support for Alpine Linux as a build or host platform is EXPERIMENTAL. Some of
+the packages try to compile binaries for the build or the machine and fail
+because they expect certain GLIBC-specific types, etc: Alpine Linux does not
+use GNU libc, it uses musl.
+
+Only the following bug reports will be looked into:
+- A sample configuration used to build successfully and no longer does. Identify
+the commit ID that builds successfully for you.
+- A pull request that fixes the build for any sample on the Alpine Linux.
+
+All other bug reports against Alpine as a build/host will be summarily closed.
diff --git a/testing/docker/centos6/Dockerfile b/testing/docker/centos6/Dockerfile
index c3a0da8..6c224cd 100644
--- a/testing/docker/centos6/Dockerfile
+++ b/testing/docker/centos6/Dockerfile
@@ -3,8 +3,9 @@ ARG CTNG_UID
ARG CTNG_GID
RUN groupadd -g $CTNG_GID ctng
RUN useradd -d /home/ctng -m -g $CTNG_GID -u $CTNG_UID -s /bin/bash ctng
+RUN yum install -y epel-release
RUN yum install -y autoconf gperf bison flex texinfo help2man gcc-c++ libtool libtool-bin patch \
- ncurses-devel python-devel perl-Thread-Queue bzip2 git wget xz unzip
+ ncurses-devel python34-devel perl-Thread-Queue bzip2 git wget xz unzip
RUN wget -O /sbin/dumb-init https://github.com/Yelp/dumb-init/releases/download/v1.2.1/dumb-init_1.2.1_amd64
RUN chmod a+x /sbin/dumb-init
RUN echo 'export PATH=/opt/ctng/bin:$PATH' >> /etc/profile
diff --git a/testing/docker/centos7/Dockerfile b/testing/docker/centos7/Dockerfile
index b0f928d..0631c19 100644
--- a/testing/docker/centos7/Dockerfile
+++ b/testing/docker/centos7/Dockerfile
@@ -3,8 +3,10 @@ ARG CTNG_UID
ARG CTNG_GID
RUN groupadd -g $CTNG_GID ctng
RUN useradd -d /home/ctng -m -g $CTNG_GID -u $CTNG_UID -s /bin/bash ctng
+RUN yum install -y epel-release
RUN yum install -y autoconf gperf bison file flex texinfo help2man gcc-c++ libtool make patch \
- ncurses-devel python-devel perl-Thread-Queue bzip2 git wget which xz unzip
+ ncurses-devel python36-devel perl-Thread-Queue bzip2 git wget which xz unzip
+RUN ln -sf python36 /usr/bin/python3
RUN wget -O /sbin/dumb-init https://github.com/Yelp/dumb-init/releases/download/v1.2.1/dumb-init_1.2.1_amd64
RUN chmod a+x /sbin/dumb-init
RUN echo 'export PATH=/opt/ctng/bin:$PATH' >> /etc/profile
diff --git a/testing/docker/dmgr.sh b/testing/docker/dmgr.sh
index 1330867..825362a 100755
--- a/testing/docker/dmgr.sh
+++ b/testing/docker/dmgr.sh
@@ -3,11 +3,19 @@
# Run from the directory containing this script
cd `dirname $0`
+# Global return code (flags an error if any of the actions fail)
+global_rc=0
+
msg()
{
echo "INFO :: $*" >&2
}
+warn()
+{
+ echo "WARN :: $*" >&2
+}
+
error()
{
echo "ERROR :: $*" >&2
@@ -52,6 +60,8 @@ action_build()
{
local cntr=$1
+ msg "Cleaning up previous runs for ${cntr}"
+ do_cleanup ${cntr}/{build,install,xtools}
msg "Building Docker container for ${cntr}"
set -x
docker build --no-cache -t "ctng-${cntr}" --build-arg CTNG_GID=`id -g` --build-arg CTNG_UID=`id -u` "${cntr}"
@@ -81,6 +91,9 @@ _dckr()
else
$prefix su -l ctng
fi
+ if [ $? != 0 ]; then
+ global_rc=1
+ fi
}
# Run the test
@@ -91,8 +104,11 @@ action_install()
# The test assumes the top directory is bootstrapped, but clean.
msg "Setting up crosstool-NG in ${cntr}"
do_cleanup ${cntr}/build
- _dckr "${cntr}" /common-scripts/ctng-install && \
- _dckr "${cntr}" /common-scripts/ctng-test-basic
+ if ! _dckr "${cntr}" /common-scripts/ctng-install; then
+ warn "Installation failed"
+ elif ! _dckr "${cntr}" /common-scripts/ctng-test-basic; then
+ warn "Basic tests failed"
+ fi
}
# Run the test
@@ -164,3 +180,7 @@ case "${action}" in
usage "Unknown action ${action}."
;;
esac
+if [ "${global_rc}" != 0 ]; then
+ error "Some of the actions failed, see warnings above"
+fi
+exit ${global_rc}
diff --git a/testing/docker/fedora28/Dockerfile b/testing/docker/fedora29/Dockerfile
index 20363c9..65a0c60 100644
--- a/testing/docker/fedora28/Dockerfile
+++ b/testing/docker/fedora29/Dockerfile
@@ -1,10 +1,10 @@
-FROM fedora:28
+FROM fedora:29
ARG CTNG_UID
ARG CTNG_GID
RUN groupadd -g $CTNG_GID ctng
RUN useradd -d /home/ctng -m -g $CTNG_GID -u $CTNG_UID -s /bin/bash ctng
RUN yum install -y autoconf gperf bison file flex texinfo help2man gcc-c++ libtool make patch \
- ncurses-devel python-devel perl-Thread-Queue bzip2 git wget which xz unzip
+ ncurses-devel python3-devel perl-Thread-Queue bzip2 git wget which xz unzip
RUN wget -O /sbin/dumb-init https://github.com/Yelp/dumb-init/releases/download/v1.2.1/dumb-init_1.2.1_amd64
RUN chmod a+x /sbin/dumb-init
RUN echo 'export PATH=/opt/ctng/bin:$PATH' >> /etc/profile
diff --git a/testing/docker/mint19-amd64/Dockerfile b/testing/docker/mint19-amd64/Dockerfile
index 7a0e4ba..2b4f1ae 100644
--- a/testing/docker/mint19-amd64/Dockerfile
+++ b/testing/docker/mint19-amd64/Dockerfile
@@ -5,7 +5,7 @@ RUN groupadd -g $CTNG_GID ctng
RUN useradd -d /home/ctng -m -g $CTNG_GID -u $CTNG_UID -s /bin/bash ctng
RUN apt-get update
RUN apt-get install -y gcc gperf bison flex texinfo help2man make libncurses5-dev \
- python-dev autoconf automake libtool libtool-bin gawk wget
+ python3-dev autoconf automake libtool libtool-bin gawk wget
RUN wget -O /sbin/dumb-init https://github.com/Yelp/dumb-init/releases/download/v1.2.1/dumb-init_1.2.1_amd64
RUN chmod a+x /sbin/dumb-init
RUN echo 'export PATH=/opt/ctng/bin:$PATH' >> /etc/profile
diff --git a/testing/upgrade/kconfig-list/3 b/testing/upgrade/kconfig-list/3
new file mode 100644
index 0000000..b0fc0af
--- /dev/null
+++ b/testing/upgrade/kconfig-list/3
@@ -0,0 +1,2562 @@
+CT_ALLOW_BUILD_AS_ROOT
+CT_ALLOW_BUILD_AS_ROOT_SURE
+CT_ALL_ARCH_CHOICES
+CT_ALL_BINUTILS_CHOICES
+CT_ALL_CC_CHOICES
+CT_ALL_COMP_LIBS_CHOICES
+CT_ALL_COMP_TOOLS_CHOICES
+CT_ALL_DEBUG_CHOICES
+CT_ALL_KERNEL_CHOICES
+CT_ALL_LIBC_CHOICES
+CT_ANDROID_API
+CT_ANDROID_API_12
+CT_ANDROID_API_13
+CT_ANDROID_API_14
+CT_ANDROID_API_15
+CT_ANDROID_API_16
+CT_ANDROID_API_17
+CT_ANDROID_API_18
+CT_ANDROID_API_19
+CT_ANDROID_API_21
+CT_ANDROID_API_22
+CT_ANDROID_API_23
+CT_ANDROID_API_24
+CT_ANDROID_API_26
+CT_ANDROID_API_27
+CT_ANDROID_API_28
+CT_ANDROID_API_9
+CT_ANDROID_NDK_ARCHIVE_DIRNAME
+CT_ANDROID_NDK_ARCHIVE_FILENAME
+CT_ANDROID_NDK_ARCHIVE_FORMATS
+CT_ANDROID_NDK_CUSTOM_LOCATION
+CT_ANDROID_NDK_DEVEL_BOOTSTRAP
+CT_ANDROID_NDK_DEVEL_BRANCH
+CT_ANDROID_NDK_DEVEL_REVISION
+CT_ANDROID_NDK_DEVEL_SUBDIR
+CT_ANDROID_NDK_DEVEL_URL
+CT_ANDROID_NDK_DEVEL_VCS
+CT_ANDROID_NDK_DEVEL_VCS_cvs
+CT_ANDROID_NDK_DEVEL_VCS_git
+CT_ANDROID_NDK_DEVEL_VCS_hg
+CT_ANDROID_NDK_DEVEL_VCS_svn
+CT_ANDROID_NDK_DIR_NAME
+CT_ANDROID_NDK_MIRRORS
+CT_ANDROID_NDK_PATCH_BUNDLED
+CT_ANDROID_NDK_PATCH_BUNDLED_LOCAL
+CT_ANDROID_NDK_PATCH_GLOBAL
+CT_ANDROID_NDK_PATCH_LOCAL
+CT_ANDROID_NDK_PATCH_LOCAL_BUNDLED
+CT_ANDROID_NDK_PATCH_NONE
+CT_ANDROID_NDK_PATCH_ORDER
+CT_ANDROID_NDK_PKG_NAME
+CT_ANDROID_NDK_SIGNATURE_FORMAT
+CT_ANDROID_NDK_SRC_CUSTOM
+CT_ANDROID_NDK_SRC_DEVEL
+CT_ANDROID_NDK_SRC_RELEASE
+CT_ANDROID_NDK_VERSION
+CT_ANDROID_NDK_VERY_NEW
+CT_ANDROID_NDK_VERY_OLD
+CT_ANDROID_NDK_V_R10
+CT_ANDROID_NDK_V_R11
+CT_ANDROID_NDK_V_R12
+CT_ANDROID_NDK_V_R13
+CT_ANDROID_NDK_V_R14
+CT_ANDROID_NDK_V_R15
+CT_ANDROID_NDK_V_R16
+CT_ANDROID_NDK_V_R17
+CT_ARCH
+CT_ARCH_16
+CT_ARCH_32
+CT_ARCH_64
+CT_ARCH_8
+CT_ARCH_ABI
+CT_ARCH_ALPHA
+CT_ARCH_ALPHA_EV4
+CT_ARCH_ALPHA_EV45
+CT_ARCH_ALPHA_EV5
+CT_ARCH_ALPHA_EV56
+CT_ARCH_ALPHA_EV6
+CT_ARCH_ALPHA_EV67
+CT_ARCH_ALPHA_PKG_KSYM
+CT_ARCH_ALPHA_SHOW
+CT_ARCH_ALPHA_VARIANT
+CT_ARCH_ARC
+CT_ARCH_ARCH
+CT_ARCH_ARC_PKG_KSYM
+CT_ARCH_ARC_SHOW
+CT_ARCH_ARM
+CT_ARCH_ARM_ABI_OK
+CT_ARCH_ARM_EABI
+CT_ARCH_ARM_EABI_FORCE
+CT_ARCH_ARM_INTERWORKING
+CT_ARCH_ARM_MODE
+CT_ARCH_ARM_MODE_ARM
+CT_ARCH_ARM_MODE_THUMB
+CT_ARCH_ARM_PKG_KSYM
+CT_ARCH_ARM_SHOW
+CT_ARCH_ARM_TUPLE_USE_EABIHF
+CT_ARCH_AVR
+CT_ARCH_AVR_PKG_KSYM
+CT_ARCH_AVR_SHOW
+CT_ARCH_BE
+CT_ARCH_BE_LE
+CT_ARCH_BINFMT_ELF
+CT_ARCH_BINFMT_FDPIC
+CT_ARCH_BINFMT_FLAT
+CT_ARCH_BITNESS
+CT_ARCH_CHOICE_KSYM
+CT_ARCH_CPU
+CT_ARCH_DEFAULT_16
+CT_ARCH_DEFAULT_32
+CT_ARCH_DEFAULT_64
+CT_ARCH_DEFAULT_8
+CT_ARCH_DEFAULT_BE
+CT_ARCH_DEFAULT_BE_LE
+CT_ARCH_DEFAULT_HAS_MMU
+CT_ARCH_DEFAULT_LE
+CT_ARCH_DEFAULT_LE_BE
+CT_ARCH_ENDIAN
+CT_ARCH_EXCLUSIVE_WITH_CPU
+CT_ARCH_FLOAT
+CT_ARCH_FLOAT_AUTO
+CT_ARCH_FLOAT_HW
+CT_ARCH_FLOAT_SOFTFP
+CT_ARCH_FLOAT_SW
+CT_ARCH_FPU
+CT_ARCH_LE
+CT_ARCH_LE_BE
+CT_ARCH_M68K
+CT_ARCH_M68K_PKG_KSYM
+CT_ARCH_M68K_SHOW
+CT_ARCH_MICROBLAZE
+CT_ARCH_MICROBLAZE_PKG_KSYM
+CT_ARCH_MICROBLAZE_SHOW
+CT_ARCH_MIPS
+CT_ARCH_MIPS_PKG_KSYM
+CT_ARCH_MIPS_SHOW
+CT_ARCH_MOXIE
+CT_ARCH_MOXIE_PKG_KSYM
+CT_ARCH_MOXIE_SHOW
+CT_ARCH_MSP430
+CT_ARCH_MSP430_PKG_KSYM
+CT_ARCH_MSP430_SHOW
+CT_ARCH_NIOS2
+CT_ARCH_NIOS2_PKG_KSYM
+CT_ARCH_NIOS2_SHOW
+CT_ARCH_POWERPC
+CT_ARCH_POWERPC_PKG_KSYM
+CT_ARCH_POWERPC_SHOW
+CT_ARCH_REQUIRES_MULTILIB
+CT_ARCH_RISCV
+CT_ARCH_RISCV_PKG_KSYM
+CT_ARCH_RISCV_SHOW
+CT_ARCH_S390
+CT_ARCH_S390_PKG_KSYM
+CT_ARCH_S390_SHOW
+CT_ARCH_SH
+CT_ARCH_SH_PKG_KSYM
+CT_ARCH_SH_SH
+CT_ARCH_SH_SH1
+CT_ARCH_SH_SH2
+CT_ARCH_SH_SH2A
+CT_ARCH_SH_SH2E
+CT_ARCH_SH_SH3
+CT_ARCH_SH_SH3E
+CT_ARCH_SH_SH4
+CT_ARCH_SH_SH4A
+CT_ARCH_SH_SHOW
+CT_ARCH_SH_VARIANT
+CT_ARCH_SPARC
+CT_ARCH_SPARC_PKG_KSYM
+CT_ARCH_SPARC_SHOW
+CT_ARCH_SUFFIX
+CT_ARCH_SUPPORTS_16
+CT_ARCH_SUPPORTS_32
+CT_ARCH_SUPPORTS_64
+CT_ARCH_SUPPORTS_8
+CT_ARCH_SUPPORTS_BOTH_ENDIAN
+CT_ARCH_SUPPORTS_BOTH_MMU
+CT_ARCH_SUPPORTS_EITHER_ENDIAN
+CT_ARCH_SUPPORTS_FLAT_FORMAT
+CT_ARCH_SUPPORTS_SOFTFP
+CT_ARCH_SUPPORTS_WITH_ABI
+CT_ARCH_SUPPORTS_WITH_ARCH
+CT_ARCH_SUPPORTS_WITH_CPU
+CT_ARCH_SUPPORTS_WITH_ENDIAN
+CT_ARCH_SUPPORTS_WITH_FLOAT
+CT_ARCH_SUPPORTS_WITH_FPU
+CT_ARCH_SUPPORTS_WITH_TUNE
+CT_ARCH_TUNE
+CT_ARCH_USE_MMU
+CT_ARCH_X86
+CT_ARCH_X86_PKG_KSYM
+CT_ARCH_X86_SHOW
+CT_ARCH_XTENSA
+CT_ARCH_XTENSA_PKG_KSYM
+CT_ARCH_XTENSA_SHOW
+CT_ARCH_mips_ABI
+CT_ARCH_mips_n32
+CT_ARCH_mips_n64
+CT_ARCH_mips_o32
+CT_ARCH_powerpc_ABI
+CT_ARCH_powerpc_ABI_DEFAULT
+CT_ARCH_powerpc_ABI_EABI
+CT_ARCH_powerpc_ABI_SPE
+CT_ARCH_xtensa_fsf
+CT_AUTOCONF_ARCHIVE_DIRNAME
+CT_AUTOCONF_ARCHIVE_FILENAME
+CT_AUTOCONF_ARCHIVE_FORMATS
+CT_AUTOCONF_CUSTOM_LOCATION
+CT_AUTOCONF_DEVEL_BOOTSTRAP
+CT_AUTOCONF_DEVEL_BRANCH
+CT_AUTOCONF_DEVEL_REVISION
+CT_AUTOCONF_DEVEL_SUBDIR
+CT_AUTOCONF_DEVEL_URL
+CT_AUTOCONF_DEVEL_VCS
+CT_AUTOCONF_DEVEL_VCS_cvs
+CT_AUTOCONF_DEVEL_VCS_git
+CT_AUTOCONF_DEVEL_VCS_hg
+CT_AUTOCONF_DEVEL_VCS_svn
+CT_AUTOCONF_DIR_NAME
+CT_AUTOCONF_MIRRORS
+CT_AUTOCONF_PATCH_BUNDLED
+CT_AUTOCONF_PATCH_BUNDLED_LOCAL
+CT_AUTOCONF_PATCH_GLOBAL
+CT_AUTOCONF_PATCH_LOCAL
+CT_AUTOCONF_PATCH_LOCAL_BUNDLED
+CT_AUTOCONF_PATCH_NONE
+CT_AUTOCONF_PATCH_ORDER
+CT_AUTOCONF_PKG_NAME
+CT_AUTOCONF_SIGNATURE_FORMAT
+CT_AUTOCONF_SRC_CUSTOM
+CT_AUTOCONF_SRC_DEVEL
+CT_AUTOCONF_SRC_RELEASE
+CT_AUTOCONF_VERSION
+CT_AUTOCONF_VERY_NEW
+CT_AUTOCONF_VERY_OLD
+CT_AUTOCONF_V_2_65
+CT_AUTOCONF_V_2_69
+CT_AUTOMAKE_ARCHIVE_DIRNAME
+CT_AUTOMAKE_ARCHIVE_FILENAME
+CT_AUTOMAKE_ARCHIVE_FORMATS
+CT_AUTOMAKE_CUSTOM_LOCATION
+CT_AUTOMAKE_DEVEL_BOOTSTRAP
+CT_AUTOMAKE_DEVEL_BRANCH
+CT_AUTOMAKE_DEVEL_REVISION
+CT_AUTOMAKE_DEVEL_SUBDIR
+CT_AUTOMAKE_DEVEL_URL
+CT_AUTOMAKE_DEVEL_VCS
+CT_AUTOMAKE_DEVEL_VCS_cvs
+CT_AUTOMAKE_DEVEL_VCS_git
+CT_AUTOMAKE_DEVEL_VCS_hg
+CT_AUTOMAKE_DEVEL_VCS_svn
+CT_AUTOMAKE_DIR_NAME
+CT_AUTOMAKE_MIRRORS
+CT_AUTOMAKE_PATCH_BUNDLED
+CT_AUTOMAKE_PATCH_BUNDLED_LOCAL
+CT_AUTOMAKE_PATCH_GLOBAL
+CT_AUTOMAKE_PATCH_LOCAL
+CT_AUTOMAKE_PATCH_LOCAL_BUNDLED
+CT_AUTOMAKE_PATCH_NONE
+CT_AUTOMAKE_PATCH_ORDER
+CT_AUTOMAKE_PKG_NAME
+CT_AUTOMAKE_SIGNATURE_FORMAT
+CT_AUTOMAKE_SRC_CUSTOM
+CT_AUTOMAKE_SRC_DEVEL
+CT_AUTOMAKE_SRC_RELEASE
+CT_AUTOMAKE_VERSION
+CT_AUTOMAKE_VERY_NEW
+CT_AUTOMAKE_VERY_OLD
+CT_AUTOMAKE_V_1_11
+CT_AUTOMAKE_V_1_14
+CT_AUTOMAKE_V_1_15
+CT_AUTOMAKE_V_1_16
+CT_AVR_LIBC_ARCHIVE_DIRNAME
+CT_AVR_LIBC_ARCHIVE_FILENAME
+CT_AVR_LIBC_ARCHIVE_FORMATS
+CT_AVR_LIBC_CUSTOM_LOCATION
+CT_AVR_LIBC_DEVEL_BOOTSTRAP
+CT_AVR_LIBC_DEVEL_BRANCH
+CT_AVR_LIBC_DEVEL_REVISION
+CT_AVR_LIBC_DEVEL_SUBDIR
+CT_AVR_LIBC_DEVEL_URL
+CT_AVR_LIBC_DEVEL_VCS
+CT_AVR_LIBC_DEVEL_VCS_cvs
+CT_AVR_LIBC_DEVEL_VCS_git
+CT_AVR_LIBC_DEVEL_VCS_hg
+CT_AVR_LIBC_DEVEL_VCS_svn
+CT_AVR_LIBC_DIR_NAME
+CT_AVR_LIBC_MIRRORS
+CT_AVR_LIBC_PATCH_BUNDLED
+CT_AVR_LIBC_PATCH_BUNDLED_LOCAL
+CT_AVR_LIBC_PATCH_GLOBAL
+CT_AVR_LIBC_PATCH_LOCAL
+CT_AVR_LIBC_PATCH_LOCAL_BUNDLED
+CT_AVR_LIBC_PATCH_NONE
+CT_AVR_LIBC_PATCH_ORDER
+CT_AVR_LIBC_PKG_NAME
+CT_AVR_LIBC_SIGNATURE_FORMAT
+CT_AVR_LIBC_SRC_CUSTOM
+CT_AVR_LIBC_SRC_DEVEL
+CT_AVR_LIBC_SRC_RELEASE
+CT_AVR_LIBC_VERSION
+CT_AVR_LIBC_VERY_NEW
+CT_AVR_LIBC_VERY_OLD
+CT_AVR_LIBC_V_1_8_1
+CT_AVR_LIBC_V_2_0_0
+CT_BARE_METAL
+CT_BINUTILS
+CT_BINUTILS_2_23_or_later
+CT_BINUTILS_2_23_or_older
+CT_BINUTILS_2_25_or_later
+CT_BINUTILS_2_25_or_older
+CT_BINUTILS_2_27_or_later
+CT_BINUTILS_2_27_or_older
+CT_BINUTILS_2_30_or_later
+CT_BINUTILS_2_30_or_older
+CT_BINUTILS_ARCHIVE_DIRNAME
+CT_BINUTILS_ARCHIVE_FILENAME
+CT_BINUTILS_ARCHIVE_FORMATS
+CT_BINUTILS_BINUTILS
+CT_BINUTILS_BINUTILS_PKG_KSYM
+CT_BINUTILS_BINUTILS_SHOW
+CT_BINUTILS_CHOICE_KSYM
+CT_BINUTILS_CUSTOM_LOCATION
+CT_BINUTILS_DEVEL_BOOTSTRAP
+CT_BINUTILS_DEVEL_BRANCH
+CT_BINUTILS_DEVEL_REVISION
+CT_BINUTILS_DEVEL_SUBDIR
+CT_BINUTILS_DEVEL_URL
+CT_BINUTILS_DEVEL_VCS
+CT_BINUTILS_DEVEL_VCS_cvs
+CT_BINUTILS_DEVEL_VCS_git
+CT_BINUTILS_DEVEL_VCS_hg
+CT_BINUTILS_DEVEL_VCS_svn
+CT_BINUTILS_DIR_NAME
+CT_BINUTILS_EXTRA_CONFIG_ARRAY
+CT_BINUTILS_FORCE_LD_BFD_DEFAULT
+CT_BINUTILS_FORCE_LD_BFD_ONLY
+CT_BINUTILS_FOR_TARGET
+CT_BINUTILS_FOR_TARGET_BFD
+CT_BINUTILS_FOR_TARGET_IBERTY
+CT_BINUTILS_GOLD_INSTALLED
+CT_BINUTILS_GOLD_SUPPORT
+CT_BINUTILS_GOLD_SUPPORTS_ARCH
+CT_BINUTILS_GOLD_THREADS
+CT_BINUTILS_HAS_GOLD
+CT_BINUTILS_HAS_HASH_STYLE
+CT_BINUTILS_HAS_PKGVERSION_BUGURL
+CT_BINUTILS_HAS_PLUGINS
+CT_BINUTILS_LD_WRAPPER
+CT_BINUTILS_LINARO_ARCHIVE_DIRNAME
+CT_BINUTILS_LINARO_ARCHIVE_FILENAME
+CT_BINUTILS_LINARO_ARCHIVE_FORMATS
+CT_BINUTILS_LINARO_CUSTOM_LOCATION
+CT_BINUTILS_LINARO_DEVEL_BOOTSTRAP
+CT_BINUTILS_LINARO_DEVEL_BRANCH
+CT_BINUTILS_LINARO_DEVEL_REVISION
+CT_BINUTILS_LINARO_DEVEL_SUBDIR
+CT_BINUTILS_LINARO_DEVEL_URL
+CT_BINUTILS_LINARO_DEVEL_VCS
+CT_BINUTILS_LINARO_DEVEL_VCS_cvs
+CT_BINUTILS_LINARO_DEVEL_VCS_git
+CT_BINUTILS_LINARO_DEVEL_VCS_hg
+CT_BINUTILS_LINARO_DEVEL_VCS_svn
+CT_BINUTILS_LINARO_MIRRORS
+CT_BINUTILS_LINARO_PATCH_BUNDLED
+CT_BINUTILS_LINARO_PATCH_BUNDLED_LOCAL
+CT_BINUTILS_LINARO_PATCH_GLOBAL
+CT_BINUTILS_LINARO_PATCH_LOCAL
+CT_BINUTILS_LINARO_PATCH_LOCAL_BUNDLED
+CT_BINUTILS_LINARO_PATCH_NONE
+CT_BINUTILS_LINARO_PATCH_ORDER
+CT_BINUTILS_LINARO_PKG_NAME
+CT_BINUTILS_LINARO_SIGNATURE_FORMAT
+CT_BINUTILS_LINARO_SRC_CUSTOM
+CT_BINUTILS_LINARO_SRC_DEVEL
+CT_BINUTILS_LINARO_SRC_RELEASE
+CT_BINUTILS_LINARO_VERSION
+CT_BINUTILS_LINARO_VERY_NEW
+CT_BINUTILS_LINARO_VERY_OLD
+CT_BINUTILS_LINARO_V_2_23
+CT_BINUTILS_LINARO_V_2_24
+CT_BINUTILS_LINARO_V_2_25
+CT_BINUTILS_LINKERS_LIST
+CT_BINUTILS_LINKER_BOTH
+CT_BINUTILS_LINKER_DEFAULT
+CT_BINUTILS_LINKER_GOLD
+CT_BINUTILS_LINKER_GOLD_LD
+CT_BINUTILS_LINKER_LD
+CT_BINUTILS_LINKER_LD_GOLD
+CT_BINUTILS_MIRRORS
+CT_BINUTILS_PATCH_BUNDLED
+CT_BINUTILS_PATCH_BUNDLED_LOCAL
+CT_BINUTILS_PATCH_GLOBAL
+CT_BINUTILS_PATCH_LOCAL
+CT_BINUTILS_PATCH_LOCAL_BUNDLED
+CT_BINUTILS_PATCH_NONE
+CT_BINUTILS_PATCH_ORDER
+CT_BINUTILS_PKG_NAME
+CT_BINUTILS_PLUGINS
+CT_BINUTILS_RELRO
+CT_BINUTILS_REQUIRE_2_23_or_later
+CT_BINUTILS_REQUIRE_2_23_or_older
+CT_BINUTILS_REQUIRE_2_25_or_later
+CT_BINUTILS_REQUIRE_2_25_or_older
+CT_BINUTILS_REQUIRE_2_27_or_later
+CT_BINUTILS_REQUIRE_2_27_or_older
+CT_BINUTILS_REQUIRE_2_30_or_later
+CT_BINUTILS_REQUIRE_2_30_or_older
+CT_BINUTILS_REQUIRE_later_than_2_23
+CT_BINUTILS_REQUIRE_later_than_2_25
+CT_BINUTILS_REQUIRE_later_than_2_27
+CT_BINUTILS_REQUIRE_later_than_2_30
+CT_BINUTILS_REQUIRE_older_than_2_23
+CT_BINUTILS_REQUIRE_older_than_2_25
+CT_BINUTILS_REQUIRE_older_than_2_27
+CT_BINUTILS_REQUIRE_older_than_2_30
+CT_BINUTILS_SIGNATURE_FORMAT
+CT_BINUTILS_SRC_CUSTOM
+CT_BINUTILS_SRC_DEVEL
+CT_BINUTILS_SRC_RELEASE
+CT_BINUTILS_USE
+CT_BINUTILS_USE_GNU
+CT_BINUTILS_USE_LINARO
+CT_BINUTILS_VERSION
+CT_BINUTILS_VERY_NEW
+CT_BINUTILS_VERY_OLD
+CT_BINUTILS_V_2_23
+CT_BINUTILS_V_2_24
+CT_BINUTILS_V_2_25
+CT_BINUTILS_V_2_26
+CT_BINUTILS_V_2_27
+CT_BINUTILS_V_2_28
+CT_BINUTILS_V_2_29
+CT_BINUTILS_V_2_30
+CT_BINUTILS_V_2_31
+CT_BINUTILS_V_2_32
+CT_BINUTILS_later_than_2_23
+CT_BINUTILS_later_than_2_25
+CT_BINUTILS_later_than_2_27
+CT_BINUTILS_later_than_2_30
+CT_BINUTILS_older_than_2_23
+CT_BINUTILS_older_than_2_25
+CT_BINUTILS_older_than_2_27
+CT_BINUTILS_older_than_2_30
+CT_BISON_ARCHIVE_DIRNAME
+CT_BISON_ARCHIVE_FILENAME
+CT_BISON_ARCHIVE_FORMATS
+CT_BISON_CUSTOM_LOCATION
+CT_BISON_DEVEL_BOOTSTRAP
+CT_BISON_DEVEL_BRANCH
+CT_BISON_DEVEL_REVISION
+CT_BISON_DEVEL_SUBDIR
+CT_BISON_DEVEL_URL
+CT_BISON_DEVEL_VCS
+CT_BISON_DEVEL_VCS_cvs
+CT_BISON_DEVEL_VCS_git
+CT_BISON_DEVEL_VCS_hg
+CT_BISON_DEVEL_VCS_svn
+CT_BISON_DIR_NAME
+CT_BISON_MIRRORS
+CT_BISON_PATCH_BUNDLED
+CT_BISON_PATCH_BUNDLED_LOCAL
+CT_BISON_PATCH_GLOBAL
+CT_BISON_PATCH_LOCAL
+CT_BISON_PATCH_LOCAL_BUNDLED
+CT_BISON_PATCH_NONE
+CT_BISON_PATCH_ORDER
+CT_BISON_PKG_NAME
+CT_BISON_SIGNATURE_FORMAT
+CT_BISON_SRC_CUSTOM
+CT_BISON_SRC_DEVEL
+CT_BISON_SRC_RELEASE
+CT_BISON_VERSION
+CT_BISON_VERY_NEW
+CT_BISON_VERY_OLD
+CT_BISON_V_3_0
+CT_BISON_V_3_1
+CT_BISON_V_3_2
+CT_BISON_V_3_3
+CT_BUILD
+CT_BUILD_MANUALS
+CT_BUILD_PREFIX
+CT_BUILD_SUFFIX
+CT_BUILD_TOP_DIR
+CT_CANADIAN
+CT_CC
+CT_CC_CHOICE_KSYM
+CT_CC_CORE_PASSES_NEEDED
+CT_CC_CORE_PASS_1_NEEDED
+CT_CC_CORE_PASS_2_NEEDED
+CT_CC_CXA_ATEXIT
+CT_CC_GCC
+CT_CC_GCC_BUILD_ID
+CT_CC_GCC_CONFIG_TLS
+CT_CC_GCC_CORE_EXTRA_CONFIG_ARRAY
+CT_CC_GCC_DEC_FLOATS
+CT_CC_GCC_DEC_FLOATS_NO
+CT_CC_GCC_DEC_FLOAT_AUTO
+CT_CC_GCC_DEC_FLOAT_BID
+CT_CC_GCC_DEC_FLOAT_DPD
+CT_CC_GCC_DISABLE_PCH
+CT_CC_GCC_ENABLE_CXX_FLAGS
+CT_CC_GCC_ENABLE_PLUGINS
+CT_CC_GCC_ENABLE_TARGET_OPTSPACE
+CT_CC_GCC_EXTRA_CONFIG_ARRAY
+CT_CC_GCC_GOLD
+CT_CC_GCC_HAS_ARCH_OPTIONS
+CT_CC_GCC_HAS_LIBMPX
+CT_CC_GCC_LDBL_128
+CT_CC_GCC_LIBGOMP
+CT_CC_GCC_LIBMPX
+CT_CC_GCC_LIBMUDFLAP
+CT_CC_GCC_LIBQUADMATH
+CT_CC_GCC_LIBSANITIZER
+CT_CC_GCC_LIBSSP
+CT_CC_GCC_LNK_HASH_STYLE
+CT_CC_GCC_LNK_HASH_STYLE_BOTH
+CT_CC_GCC_LNK_HASH_STYLE_DEFAULT
+CT_CC_GCC_LNK_HASH_STYLE_GNU
+CT_CC_GCC_LNK_HASH_STYLE_SYSV
+CT_CC_GCC_MULTILIB_LIST
+CT_CC_GCC_PKG_KSYM
+CT_CC_GCC_SHOW
+CT_CC_GCC_SJLJ_EXCEPTIONS
+CT_CC_GCC_STATIC_LIBSTDCXX
+CT_CC_GCC_SYSTEM_ZLIB
+CT_CC_GCC_USE_GRAPHITE
+CT_CC_GCC_USE_LTO
+CT_CC_GCC_mips_llsc
+CT_CC_GCC_mips_plt
+CT_CC_GCC_mips_synci
+CT_CC_LANG_ADA
+CT_CC_LANG_CXX
+CT_CC_LANG_FORTRAN
+CT_CC_LANG_GOLANG
+CT_CC_LANG_JAVA
+CT_CC_LANG_JAVA_USE_ECJ
+CT_CC_LANG_OBJC
+CT_CC_LANG_OBJCXX
+CT_CC_LANG_OTHERS
+CT_CC_SUPPORT_ADA
+CT_CC_SUPPORT_CXX
+CT_CC_SUPPORT_FORTRAN
+CT_CC_SUPPORT_GOLANG
+CT_CC_SUPPORT_JAVA
+CT_CC_SUPPORT_OBJC
+CT_CC_SUPPORT_OBJCXX
+CT_CLOOG
+CT_CLOOG_0_18_1_or_later
+CT_CLOOG_0_18_1_or_older
+CT_CLOOG_0_18_4_or_later
+CT_CLOOG_0_18_4_or_older
+CT_CLOOG_ARCHIVE_DIRNAME
+CT_CLOOG_ARCHIVE_FILENAME
+CT_CLOOG_ARCHIVE_FORMATS
+CT_CLOOG_CUSTOM_LOCATION
+CT_CLOOG_DEVEL_BOOTSTRAP
+CT_CLOOG_DEVEL_BRANCH
+CT_CLOOG_DEVEL_REVISION
+CT_CLOOG_DEVEL_SUBDIR
+CT_CLOOG_DEVEL_URL
+CT_CLOOG_DEVEL_VCS
+CT_CLOOG_DEVEL_VCS_cvs
+CT_CLOOG_DEVEL_VCS_git
+CT_CLOOG_DEVEL_VCS_hg
+CT_CLOOG_DEVEL_VCS_svn
+CT_CLOOG_DIR_NAME
+CT_CLOOG_MIRRORS
+CT_CLOOG_NEEDED
+CT_CLOOG_PATCH_BUNDLED
+CT_CLOOG_PATCH_BUNDLED_LOCAL
+CT_CLOOG_PATCH_GLOBAL
+CT_CLOOG_PATCH_LOCAL
+CT_CLOOG_PATCH_LOCAL_BUNDLED
+CT_CLOOG_PATCH_NONE
+CT_CLOOG_PATCH_ORDER
+CT_CLOOG_PKG_NAME
+CT_CLOOG_REQUIRE_0_18_1_or_later
+CT_CLOOG_REQUIRE_0_18_1_or_older
+CT_CLOOG_REQUIRE_0_18_4_or_later
+CT_CLOOG_REQUIRE_0_18_4_or_older
+CT_CLOOG_REQUIRE_later_than_0_18_1
+CT_CLOOG_REQUIRE_later_than_0_18_4
+CT_CLOOG_REQUIRE_older_than_0_18_1
+CT_CLOOG_REQUIRE_older_than_0_18_4
+CT_CLOOG_SIGNATURE_FORMAT
+CT_CLOOG_SRC_CUSTOM
+CT_CLOOG_SRC_DEVEL
+CT_CLOOG_SRC_RELEASE
+CT_CLOOG_VERSION
+CT_CLOOG_VERY_NEW
+CT_CLOOG_VERY_OLD
+CT_CLOOG_V_0_18_1
+CT_CLOOG_V_0_18_4
+CT_CLOOG_later_than_0_18_1
+CT_CLOOG_later_than_0_18_4
+CT_CLOOG_older_than_0_18_1
+CT_CLOOG_older_than_0_18_4
+CT_COMPLIBS_CHECK
+CT_COMP_LIBS_CLOOG
+CT_COMP_LIBS_CLOOG_PKG_KSYM
+CT_COMP_LIBS_EXPAT
+CT_COMP_LIBS_EXPAT_PKG_KSYM
+CT_COMP_LIBS_GETTEXT
+CT_COMP_LIBS_GETTEXT_PKG_KSYM
+CT_COMP_LIBS_GMP
+CT_COMP_LIBS_GMP_PKG_KSYM
+CT_COMP_LIBS_ISL
+CT_COMP_LIBS_ISL_PKG_KSYM
+CT_COMP_LIBS_LIBELF
+CT_COMP_LIBS_LIBELF_PKG_KSYM
+CT_COMP_LIBS_LIBICONV
+CT_COMP_LIBS_LIBICONV_PKG_KSYM
+CT_COMP_LIBS_MPC
+CT_COMP_LIBS_MPC_PKG_KSYM
+CT_COMP_LIBS_MPFR
+CT_COMP_LIBS_MPFR_PKG_KSYM
+CT_COMP_LIBS_NCURSES
+CT_COMP_LIBS_NCURSES_PKG_KSYM
+CT_COMP_LIBS_ZLIB
+CT_COMP_LIBS_ZLIB_PKG_KSYM
+CT_COMP_TOOLS_AUTOCONF
+CT_COMP_TOOLS_AUTOCONF_PKG_KSYM
+CT_COMP_TOOLS_AUTOMAKE
+CT_COMP_TOOLS_AUTOMAKE_PKG_KSYM
+CT_COMP_TOOLS_BISON
+CT_COMP_TOOLS_BISON_PKG_KSYM
+CT_COMP_TOOLS_DTC
+CT_COMP_TOOLS_DTC_PKG_KSYM
+CT_COMP_TOOLS_FOR_HOST
+CT_COMP_TOOLS_LIBTOOL
+CT_COMP_TOOLS_LIBTOOL_PKG_KSYM
+CT_COMP_TOOLS_M4
+CT_COMP_TOOLS_M4_PKG_KSYM
+CT_COMP_TOOLS_MAKE
+CT_COMP_TOOLS_MAKE_PKG_KSYM
+CT_CONFIGURE_has_autoconf_2_65_or_newer
+CT_CONFIGURE_has_automake_1_15_or_newer
+CT_CONFIGURE_has_autoreconf_2_65_or_newer
+CT_CONFIGURE_has_bison_2_7_or_newer
+CT_CONFIGURE_has_curl
+CT_CONFIGURE_has_cvs
+CT_CONFIGURE_has_cxx11
+CT_CONFIGURE_has_dtc
+CT_CONFIGURE_has_git
+CT_CONFIGURE_has_gnu_m4_1_4_12_or_newer
+CT_CONFIGURE_has_install_with_strip_program
+CT_CONFIGURE_has_libtool_2_4_or_newer
+CT_CONFIGURE_has_libtoolize_2_4_or_newer
+CT_CONFIGURE_has_lzip
+CT_CONFIGURE_has_make_3_81_or_newer
+CT_CONFIGURE_has_make_4_0_or_newer
+CT_CONFIGURE_has_md5sum
+CT_CONFIGURE_has_python
+CT_CONFIGURE_has_python_3_4_or_newer
+CT_CONFIGURE_has_sha1sum
+CT_CONFIGURE_has_sha256sum
+CT_CONFIGURE_has_sha512sum
+CT_CONFIGURE_has_static_link
+CT_CONFIGURE_has_svn
+CT_CONFIGURE_has_wget
+CT_CONFIG_SHELL
+CT_CONFIG_SHELL_ASH
+CT_CONFIG_SHELL_BASH
+CT_CONFIG_SHELL_CUSTOM
+CT_CONFIG_SHELL_CUSTOM_PATH
+CT_CONFIG_SHELL_SH
+CT_CONFIG_VERSION
+CT_CONFIG_VERSION_CURRENT
+CT_CONFIG_VERSION_ENV
+CT_CONNECT_TIMEOUT
+CT_CREATE_LDSO_CONF
+CT_CROSS
+CT_CROSS_NATIVE
+CT_DEBUG_CT
+CT_DEBUG_CT_SAVE_STEPS
+CT_DEBUG_CT_SAVE_STEPS_GZIP
+CT_DEBUG_DUMA
+CT_DEBUG_DUMA_PKG_KSYM
+CT_DEBUG_GDB
+CT_DEBUG_GDB_PKG_KSYM
+CT_DEBUG_INTERACTIVE
+CT_DEBUG_LTRACE
+CT_DEBUG_LTRACE_PKG_KSYM
+CT_DEBUG_PAUSE_STEPS
+CT_DEBUG_STRACE
+CT_DEBUG_STRACE_PKG_KSYM
+CT_DEMULTILIB
+CT_DOWNLOAD_AGENT_CURL
+CT_DOWNLOAD_AGENT_NONE
+CT_DOWNLOAD_AGENT_WGET
+CT_DOWNLOAD_CURL_OPTIONS
+CT_DOWNLOAD_WGET_OPTIONS
+CT_DTC_ARCHIVE_DIRNAME
+CT_DTC_ARCHIVE_FILENAME
+CT_DTC_ARCHIVE_FORMATS
+CT_DTC_CUSTOM_LOCATION
+CT_DTC_DEVEL_BOOTSTRAP
+CT_DTC_DEVEL_BRANCH
+CT_DTC_DEVEL_REVISION
+CT_DTC_DEVEL_SUBDIR
+CT_DTC_DEVEL_URL
+CT_DTC_DEVEL_VCS
+CT_DTC_DEVEL_VCS_cvs
+CT_DTC_DEVEL_VCS_git
+CT_DTC_DEVEL_VCS_hg
+CT_DTC_DEVEL_VCS_svn
+CT_DTC_DIR_NAME
+CT_DTC_MIRRORS
+CT_DTC_PATCH_BUNDLED
+CT_DTC_PATCH_BUNDLED_LOCAL
+CT_DTC_PATCH_GLOBAL
+CT_DTC_PATCH_LOCAL
+CT_DTC_PATCH_LOCAL_BUNDLED
+CT_DTC_PATCH_NONE
+CT_DTC_PATCH_ORDER
+CT_DTC_PKG_NAME
+CT_DTC_SIGNATURE_FORMAT
+CT_DTC_SRC_CUSTOM
+CT_DTC_SRC_DEVEL
+CT_DTC_SRC_RELEASE
+CT_DTC_VERBOSE
+CT_DTC_VERSION
+CT_DTC_VERY_NEW
+CT_DTC_VERY_OLD
+CT_DTC_V_1_4
+CT_DUMA_ARCHIVE_DIRNAME
+CT_DUMA_ARCHIVE_FILENAME
+CT_DUMA_ARCHIVE_FORMATS
+CT_DUMA_CUSTOM_LOCATION
+CT_DUMA_CUSTOM_WRAPPER
+CT_DUMA_DEVEL_BOOTSTRAP
+CT_DUMA_DEVEL_BRANCH
+CT_DUMA_DEVEL_REVISION
+CT_DUMA_DEVEL_SUBDIR
+CT_DUMA_DEVEL_URL
+CT_DUMA_DEVEL_VCS
+CT_DUMA_DEVEL_VCS_cvs
+CT_DUMA_DEVEL_VCS_git
+CT_DUMA_DEVEL_VCS_hg
+CT_DUMA_DEVEL_VCS_svn
+CT_DUMA_DIR_NAME
+CT_DUMA_MIRRORS
+CT_DUMA_PATCH_BUNDLED
+CT_DUMA_PATCH_BUNDLED_LOCAL
+CT_DUMA_PATCH_GLOBAL
+CT_DUMA_PATCH_LOCAL
+CT_DUMA_PATCH_LOCAL_BUNDLED
+CT_DUMA_PATCH_NONE
+CT_DUMA_PATCH_ORDER
+CT_DUMA_PKG_NAME
+CT_DUMA_SIGNATURE_FORMAT
+CT_DUMA_SO
+CT_DUMA_SRC_CUSTOM
+CT_DUMA_SRC_DEVEL
+CT_DUMA_SRC_RELEASE
+CT_DUMA_VERSION
+CT_DUMA_VERY_NEW
+CT_DUMA_VERY_OLD
+CT_DUMA_V_2_5_15
+CT_ELF2FLT_CUSTOM_LOCATION
+CT_ELF2FLT_DEVEL_BOOTSTRAP
+CT_ELF2FLT_DEVEL_BRANCH
+CT_ELF2FLT_DEVEL_REVISION
+CT_ELF2FLT_DEVEL_SUBDIR
+CT_ELF2FLT_DEVEL_URL
+CT_ELF2FLT_DEVEL_VCS
+CT_ELF2FLT_DEVEL_VCS_cvs
+CT_ELF2FLT_DEVEL_VCS_git
+CT_ELF2FLT_DEVEL_VCS_hg
+CT_ELF2FLT_DEVEL_VCS_svn
+CT_ELF2FLT_DIR_NAME
+CT_ELF2FLT_EXTRA_CONFIG_ARRAY
+CT_ELF2FLT_PATCH_BUNDLED
+CT_ELF2FLT_PATCH_BUNDLED_LOCAL
+CT_ELF2FLT_PATCH_GLOBAL
+CT_ELF2FLT_PATCH_LOCAL
+CT_ELF2FLT_PATCH_LOCAL_BUNDLED
+CT_ELF2FLT_PATCH_NONE
+CT_ELF2FLT_PATCH_ORDER
+CT_ELF2FLT_PKG_NAME
+CT_ELF2FLT_REQUIRES
+CT_ELF2FLT_SRC_CUSTOM
+CT_ELF2FLT_SRC_DEVEL
+CT_ELF2FLT_VERSION
+CT_EXPAT
+CT_EXPAT_ARCHIVE_DIRNAME
+CT_EXPAT_ARCHIVE_FILENAME
+CT_EXPAT_ARCHIVE_FORMATS
+CT_EXPAT_CUSTOM_LOCATION
+CT_EXPAT_DEVEL_BOOTSTRAP
+CT_EXPAT_DEVEL_BRANCH
+CT_EXPAT_DEVEL_REVISION
+CT_EXPAT_DEVEL_SUBDIR
+CT_EXPAT_DEVEL_URL
+CT_EXPAT_DEVEL_VCS
+CT_EXPAT_DEVEL_VCS_cvs
+CT_EXPAT_DEVEL_VCS_git
+CT_EXPAT_DEVEL_VCS_hg
+CT_EXPAT_DEVEL_VCS_svn
+CT_EXPAT_DIR_NAME
+CT_EXPAT_MIRRORS
+CT_EXPAT_NEEDED
+CT_EXPAT_PATCH_BUNDLED
+CT_EXPAT_PATCH_BUNDLED_LOCAL
+CT_EXPAT_PATCH_GLOBAL
+CT_EXPAT_PATCH_LOCAL
+CT_EXPAT_PATCH_LOCAL_BUNDLED
+CT_EXPAT_PATCH_NONE
+CT_EXPAT_PATCH_ORDER
+CT_EXPAT_PKG_NAME
+CT_EXPAT_SIGNATURE_FORMAT
+CT_EXPAT_SRC_CUSTOM
+CT_EXPAT_SRC_DEVEL
+CT_EXPAT_SRC_RELEASE
+CT_EXPAT_TARGET
+CT_EXPAT_VERSION
+CT_EXPAT_VERY_NEW
+CT_EXPAT_VERY_OLD
+CT_EXPAT_V_2_1
+CT_EXPAT_V_2_2
+CT_EXPERIMENTAL
+CT_EXTRA_CFLAGS_FOR_BUILD
+CT_EXTRA_CFLAGS_FOR_HOST
+CT_EXTRA_LDFLAGS_FOR_BUILD
+CT_EXTRA_LDFLAGS_FOR_HOST
+CT_FORBID_DOWNLOAD
+CT_FORCE_DOWNLOAD
+CT_FORCE_EXTRACT
+CT_FORCE_MIRROR
+CT_FORCE_SYSROOT
+CT_GCC_4_8_or_later
+CT_GCC_4_8_or_older
+CT_GCC_4_9_or_later
+CT_GCC_4_9_or_older
+CT_GCC_5_or_later
+CT_GCC_5_or_older
+CT_GCC_6_or_later
+CT_GCC_6_or_older
+CT_GCC_7_or_later
+CT_GCC_7_or_older
+CT_GCC_ARCHIVE_DIRNAME
+CT_GCC_ARCHIVE_FILENAME
+CT_GCC_ARCHIVE_FORMATS
+CT_GCC_CUSTOM_LOCATION
+CT_GCC_DEVEL_BOOTSTRAP
+CT_GCC_DEVEL_BRANCH
+CT_GCC_DEVEL_REVISION
+CT_GCC_DEVEL_SUBDIR
+CT_GCC_DEVEL_URL
+CT_GCC_DEVEL_VCS
+CT_GCC_DEVEL_VCS_cvs
+CT_GCC_DEVEL_VCS_git
+CT_GCC_DEVEL_VCS_hg
+CT_GCC_DEVEL_VCS_svn
+CT_GCC_DIR_NAME
+CT_GCC_LINARO_ARCHIVE_DIRNAME
+CT_GCC_LINARO_ARCHIVE_FILENAME
+CT_GCC_LINARO_ARCHIVE_FORMATS
+CT_GCC_LINARO_CUSTOM_LOCATION
+CT_GCC_LINARO_DEVEL_BOOTSTRAP
+CT_GCC_LINARO_DEVEL_BRANCH
+CT_GCC_LINARO_DEVEL_REVISION
+CT_GCC_LINARO_DEVEL_SUBDIR
+CT_GCC_LINARO_DEVEL_URL
+CT_GCC_LINARO_DEVEL_VCS
+CT_GCC_LINARO_DEVEL_VCS_cvs
+CT_GCC_LINARO_DEVEL_VCS_git
+CT_GCC_LINARO_DEVEL_VCS_hg
+CT_GCC_LINARO_DEVEL_VCS_svn
+CT_GCC_LINARO_MIRRORS
+CT_GCC_LINARO_PATCH_BUNDLED
+CT_GCC_LINARO_PATCH_BUNDLED_LOCAL
+CT_GCC_LINARO_PATCH_GLOBAL
+CT_GCC_LINARO_PATCH_LOCAL
+CT_GCC_LINARO_PATCH_LOCAL_BUNDLED
+CT_GCC_LINARO_PATCH_NONE
+CT_GCC_LINARO_PATCH_ORDER
+CT_GCC_LINARO_PKG_NAME
+CT_GCC_LINARO_SIGNATURE_FORMAT
+CT_GCC_LINARO_SRC_CUSTOM
+CT_GCC_LINARO_SRC_DEVEL
+CT_GCC_LINARO_SRC_RELEASE
+CT_GCC_LINARO_VERSION
+CT_GCC_LINARO_VERY_NEW
+CT_GCC_LINARO_VERY_OLD
+CT_GCC_LINARO_V_4_8
+CT_GCC_LINARO_V_4_9
+CT_GCC_LINARO_V_5
+CT_GCC_LINARO_V_6
+CT_GCC_LINARO_V_7
+CT_GCC_MIRRORS
+CT_GCC_PATCH_BUNDLED
+CT_GCC_PATCH_BUNDLED_LOCAL
+CT_GCC_PATCH_GLOBAL
+CT_GCC_PATCH_LOCAL
+CT_GCC_PATCH_LOCAL_BUNDLED
+CT_GCC_PATCH_NONE
+CT_GCC_PATCH_ORDER
+CT_GCC_PKG_NAME
+CT_GCC_REQUIRE_4_8_or_later
+CT_GCC_REQUIRE_4_8_or_older
+CT_GCC_REQUIRE_4_9_or_later
+CT_GCC_REQUIRE_4_9_or_older
+CT_GCC_REQUIRE_5_or_later
+CT_GCC_REQUIRE_5_or_older
+CT_GCC_REQUIRE_6_or_later
+CT_GCC_REQUIRE_6_or_older
+CT_GCC_REQUIRE_7_or_later
+CT_GCC_REQUIRE_7_or_older
+CT_GCC_REQUIRE_later_than_4_8
+CT_GCC_REQUIRE_later_than_4_9
+CT_GCC_REQUIRE_later_than_5
+CT_GCC_REQUIRE_later_than_6
+CT_GCC_REQUIRE_later_than_7
+CT_GCC_REQUIRE_older_than_4_8
+CT_GCC_REQUIRE_older_than_4_9
+CT_GCC_REQUIRE_older_than_5
+CT_GCC_REQUIRE_older_than_6
+CT_GCC_REQUIRE_older_than_7
+CT_GCC_SIGNATURE_FORMAT
+CT_GCC_SRC_CUSTOM
+CT_GCC_SRC_DEVEL
+CT_GCC_SRC_RELEASE
+CT_GCC_USE
+CT_GCC_USE_GNU
+CT_GCC_USE_LINARO
+CT_GCC_VERSION
+CT_GCC_VERY_NEW
+CT_GCC_VERY_OLD
+CT_GCC_V_4_8
+CT_GCC_V_4_9
+CT_GCC_V_5
+CT_GCC_V_6
+CT_GCC_V_7
+CT_GCC_V_8
+CT_GCC_later_than_4_8
+CT_GCC_later_than_4_9
+CT_GCC_later_than_5
+CT_GCC_later_than_6
+CT_GCC_later_than_7
+CT_GCC_older_than_4_8
+CT_GCC_older_than_4_9
+CT_GCC_older_than_5
+CT_GCC_older_than_6
+CT_GCC_older_than_7
+CT_GDB_7_0_or_later
+CT_GDB_7_0_or_older
+CT_GDB_7_12_or_later
+CT_GDB_7_12_or_older
+CT_GDB_7_2_or_later
+CT_GDB_7_2_or_older
+CT_GDB_8_0_or_later
+CT_GDB_8_0_or_older
+CT_GDB_ARCHIVE_DIRNAME
+CT_GDB_ARCHIVE_FILENAME
+CT_GDB_ARCHIVE_FORMATS
+CT_GDB_CROSS
+CT_GDB_CROSS_EXTRA_CONFIG_ARRAY
+CT_GDB_CROSS_PYTHON
+CT_GDB_CROSS_PYTHON_BINARY
+CT_GDB_CROSS_SIM
+CT_GDB_CROSS_STATIC
+CT_GDB_CUSTOM_LOCATION
+CT_GDB_DEP_CXX11
+CT_GDB_DEVEL_BOOTSTRAP
+CT_GDB_DEVEL_BRANCH
+CT_GDB_DEVEL_REVISION
+CT_GDB_DEVEL_SUBDIR
+CT_GDB_DEVEL_URL
+CT_GDB_DEVEL_VCS
+CT_GDB_DEVEL_VCS_cvs
+CT_GDB_DEVEL_VCS_git
+CT_GDB_DEVEL_VCS_hg
+CT_GDB_DEVEL_VCS_svn
+CT_GDB_DIR_NAME
+CT_GDB_GDBSERVER
+CT_GDB_HAS_DISABLE_CXX_BUILD
+CT_GDB_HAS_IPA_LIB
+CT_GDB_HAS_PKGVERSION_BUGURL
+CT_GDB_HAS_PYTHON
+CT_GDB_INSTALL_GDBINIT
+CT_GDB_LINARO_ARCHIVE_DIRNAME
+CT_GDB_LINARO_ARCHIVE_FILENAME
+CT_GDB_LINARO_ARCHIVE_FORMATS
+CT_GDB_LINARO_CUSTOM_LOCATION
+CT_GDB_LINARO_DEVEL_BOOTSTRAP
+CT_GDB_LINARO_DEVEL_BRANCH
+CT_GDB_LINARO_DEVEL_REVISION
+CT_GDB_LINARO_DEVEL_SUBDIR
+CT_GDB_LINARO_DEVEL_URL
+CT_GDB_LINARO_DEVEL_VCS
+CT_GDB_LINARO_DEVEL_VCS_cvs
+CT_GDB_LINARO_DEVEL_VCS_git
+CT_GDB_LINARO_DEVEL_VCS_hg
+CT_GDB_LINARO_DEVEL_VCS_svn
+CT_GDB_LINARO_MIRRORS
+CT_GDB_LINARO_PATCH_BUNDLED
+CT_GDB_LINARO_PATCH_BUNDLED_LOCAL
+CT_GDB_LINARO_PATCH_GLOBAL
+CT_GDB_LINARO_PATCH_LOCAL
+CT_GDB_LINARO_PATCH_LOCAL_BUNDLED
+CT_GDB_LINARO_PATCH_NONE
+CT_GDB_LINARO_PATCH_ORDER
+CT_GDB_LINARO_PKG_NAME
+CT_GDB_LINARO_SIGNATURE_FORMAT
+CT_GDB_LINARO_SRC_CUSTOM
+CT_GDB_LINARO_SRC_DEVEL
+CT_GDB_LINARO_SRC_RELEASE
+CT_GDB_LINARO_VERSION
+CT_GDB_LINARO_VERY_NEW
+CT_GDB_LINARO_VERY_OLD
+CT_GDB_LINARO_V_7_3
+CT_GDB_LINARO_V_7_4
+CT_GDB_LINARO_V_7_5
+CT_GDB_LINARO_V_7_6
+CT_GDB_LINARO_V_7_7
+CT_GDB_LINARO_V_7_8
+CT_GDB_MIRRORS
+CT_GDB_NATIVE
+CT_GDB_NATIVE_BUILD_IPA_LIB
+CT_GDB_NATIVE_STATIC
+CT_GDB_NATIVE_STATIC_LIBSTDCXX
+CT_GDB_PATCH_BUNDLED
+CT_GDB_PATCH_BUNDLED_LOCAL
+CT_GDB_PATCH_GLOBAL
+CT_GDB_PATCH_LOCAL
+CT_GDB_PATCH_LOCAL_BUNDLED
+CT_GDB_PATCH_NONE
+CT_GDB_PATCH_ORDER
+CT_GDB_PKG_NAME
+CT_GDB_REQUIRE_7_0_or_later
+CT_GDB_REQUIRE_7_0_or_older
+CT_GDB_REQUIRE_7_12_or_later
+CT_GDB_REQUIRE_7_12_or_older
+CT_GDB_REQUIRE_7_2_or_later
+CT_GDB_REQUIRE_7_2_or_older
+CT_GDB_REQUIRE_8_0_or_later
+CT_GDB_REQUIRE_8_0_or_older
+CT_GDB_REQUIRE_later_than_7_0
+CT_GDB_REQUIRE_later_than_7_12
+CT_GDB_REQUIRE_later_than_7_2
+CT_GDB_REQUIRE_later_than_8_0
+CT_GDB_REQUIRE_older_than_7_0
+CT_GDB_REQUIRE_older_than_7_12
+CT_GDB_REQUIRE_older_than_7_2
+CT_GDB_REQUIRE_older_than_8_0
+CT_GDB_SIGNATURE_FORMAT
+CT_GDB_SRC_CUSTOM
+CT_GDB_SRC_DEVEL
+CT_GDB_SRC_RELEASE
+CT_GDB_USE
+CT_GDB_USE_GNU
+CT_GDB_USE_LINARO
+CT_GDB_VERSION
+CT_GDB_VERY_NEW
+CT_GDB_VERY_OLD
+CT_GDB_V_6_8
+CT_GDB_V_7_0
+CT_GDB_V_7_1
+CT_GDB_V_7_10
+CT_GDB_V_7_11
+CT_GDB_V_7_12
+CT_GDB_V_7_2
+CT_GDB_V_7_3
+CT_GDB_V_7_4
+CT_GDB_V_7_5
+CT_GDB_V_7_6
+CT_GDB_V_7_7
+CT_GDB_V_7_8
+CT_GDB_V_7_9
+CT_GDB_V_8_0
+CT_GDB_V_8_1
+CT_GDB_V_8_2
+CT_GDB_later_than_7_0
+CT_GDB_later_than_7_12
+CT_GDB_later_than_7_2
+CT_GDB_later_than_8_0
+CT_GDB_older_than_7_0
+CT_GDB_older_than_7_12
+CT_GDB_older_than_7_2
+CT_GDB_older_than_8_0
+CT_GETTEXT
+CT_GETTEXT_ARCHIVE_DIRNAME
+CT_GETTEXT_ARCHIVE_FILENAME
+CT_GETTEXT_ARCHIVE_FORMATS
+CT_GETTEXT_CUSTOM_LOCATION
+CT_GETTEXT_DEVEL_BOOTSTRAP
+CT_GETTEXT_DEVEL_BRANCH
+CT_GETTEXT_DEVEL_REVISION
+CT_GETTEXT_DEVEL_SUBDIR
+CT_GETTEXT_DEVEL_URL
+CT_GETTEXT_DEVEL_VCS
+CT_GETTEXT_DEVEL_VCS_cvs
+CT_GETTEXT_DEVEL_VCS_git
+CT_GETTEXT_DEVEL_VCS_hg
+CT_GETTEXT_DEVEL_VCS_svn
+CT_GETTEXT_DIR_NAME
+CT_GETTEXT_MIRRORS
+CT_GETTEXT_NEEDED
+CT_GETTEXT_PATCH_BUNDLED
+CT_GETTEXT_PATCH_BUNDLED_LOCAL
+CT_GETTEXT_PATCH_GLOBAL
+CT_GETTEXT_PATCH_LOCAL
+CT_GETTEXT_PATCH_LOCAL_BUNDLED
+CT_GETTEXT_PATCH_NONE
+CT_GETTEXT_PATCH_ORDER
+CT_GETTEXT_PKG_NAME
+CT_GETTEXT_SIGNATURE_FORMAT
+CT_GETTEXT_SRC_CUSTOM
+CT_GETTEXT_SRC_DEVEL
+CT_GETTEXT_SRC_RELEASE
+CT_GETTEXT_VERSION
+CT_GETTEXT_VERY_NEW
+CT_GETTEXT_VERY_OLD
+CT_GETTEXT_V_0_19_7
+CT_GETTEXT_V_0_19_8_1
+CT_GLIBC_2_14_or_later
+CT_GLIBC_2_14_or_older
+CT_GLIBC_2_17_or_later
+CT_GLIBC_2_17_or_older
+CT_GLIBC_2_20_or_later
+CT_GLIBC_2_20_or_older
+CT_GLIBC_2_23_or_later
+CT_GLIBC_2_23_or_older
+CT_GLIBC_2_24_or_later
+CT_GLIBC_2_24_or_older
+CT_GLIBC_2_25_or_later
+CT_GLIBC_2_25_or_older
+CT_GLIBC_2_26_or_later
+CT_GLIBC_2_26_or_older
+CT_GLIBC_2_27_or_later
+CT_GLIBC_2_27_or_older
+CT_GLIBC_2_29_or_later
+CT_GLIBC_2_29_or_older
+CT_GLIBC_ARCHIVE_DIRNAME
+CT_GLIBC_ARCHIVE_FILENAME
+CT_GLIBC_ARCHIVE_FORMATS
+CT_GLIBC_BUILD_SSP
+CT_GLIBC_CONFIGPARMS
+CT_GLIBC_CUSTOM_LOCATION
+CT_GLIBC_DEP_BINUTILS
+CT_GLIBC_DEP_BISON
+CT_GLIBC_DEP_GCC
+CT_GLIBC_DEP_KERNEL_HEADERS_VERSION
+CT_GLIBC_DEP_MAKE_4_0
+CT_GLIBC_DEP_PYTHON
+CT_GLIBC_DEVEL_BOOTSTRAP
+CT_GLIBC_DEVEL_BRANCH
+CT_GLIBC_DEVEL_REVISION
+CT_GLIBC_DEVEL_SUBDIR
+CT_GLIBC_DEVEL_URL
+CT_GLIBC_DEVEL_VCS
+CT_GLIBC_DEVEL_VCS_cvs
+CT_GLIBC_DEVEL_VCS_git
+CT_GLIBC_DEVEL_VCS_hg
+CT_GLIBC_DEVEL_VCS_svn
+CT_GLIBC_DIR_NAME
+CT_GLIBC_DISABLE_VERSIONING
+CT_GLIBC_ENABLE_FORTIFIED_BUILD
+CT_GLIBC_ENABLE_OBSOLETE_RPC
+CT_GLIBC_ENABLE_WERROR
+CT_GLIBC_EXTRA_CFLAGS
+CT_GLIBC_EXTRA_CONFIG_ARRAY
+CT_GLIBC_FORCE_UNWIND
+CT_GLIBC_HAS_LIBIDN_ADDON
+CT_GLIBC_HAS_NPTL_ADDON
+CT_GLIBC_HAS_OBSOLETE_RPC
+CT_GLIBC_HAS_PORTS_ADDON
+CT_GLIBC_HAS_PORTS_ADDON_EXTERNAL
+CT_GLIBC_KERNEL_VERSION_AS_HEADERS
+CT_GLIBC_KERNEL_VERSION_CHOSEN
+CT_GLIBC_KERNEL_VERSION_NONE
+CT_GLIBC_LINARO_ARCHIVE_DIRNAME
+CT_GLIBC_LINARO_ARCHIVE_FILENAME
+CT_GLIBC_LINARO_ARCHIVE_FORMATS
+CT_GLIBC_LINARO_CUSTOM_LOCATION
+CT_GLIBC_LINARO_DEVEL_BOOTSTRAP
+CT_GLIBC_LINARO_DEVEL_BRANCH
+CT_GLIBC_LINARO_DEVEL_REVISION
+CT_GLIBC_LINARO_DEVEL_SUBDIR
+CT_GLIBC_LINARO_DEVEL_URL
+CT_GLIBC_LINARO_DEVEL_VCS
+CT_GLIBC_LINARO_DEVEL_VCS_cvs
+CT_GLIBC_LINARO_DEVEL_VCS_git
+CT_GLIBC_LINARO_DEVEL_VCS_hg
+CT_GLIBC_LINARO_DEVEL_VCS_svn
+CT_GLIBC_LINARO_MIRRORS
+CT_GLIBC_LINARO_PATCH_BUNDLED
+CT_GLIBC_LINARO_PATCH_BUNDLED_LOCAL
+CT_GLIBC_LINARO_PATCH_GLOBAL
+CT_GLIBC_LINARO_PATCH_LOCAL
+CT_GLIBC_LINARO_PATCH_LOCAL_BUNDLED
+CT_GLIBC_LINARO_PATCH_NONE
+CT_GLIBC_LINARO_PATCH_ORDER
+CT_GLIBC_LINARO_PKG_NAME
+CT_GLIBC_LINARO_SIGNATURE_FORMAT
+CT_GLIBC_LINARO_SRC_CUSTOM
+CT_GLIBC_LINARO_SRC_DEVEL
+CT_GLIBC_LINARO_SRC_RELEASE
+CT_GLIBC_LINARO_VERSION
+CT_GLIBC_LINARO_VERY_NEW
+CT_GLIBC_LINARO_VERY_OLD
+CT_GLIBC_LINARO_V_2_20
+CT_GLIBC_LOCALES
+CT_GLIBC_MIN_KERNEL
+CT_GLIBC_MIN_KERNEL_VERSION
+CT_GLIBC_MIRRORS
+CT_GLIBC_NO_SPARC_V8
+CT_GLIBC_OLDEST_ABI
+CT_GLIBC_PATCH_BUNDLED
+CT_GLIBC_PATCH_BUNDLED_LOCAL
+CT_GLIBC_PATCH_GLOBAL
+CT_GLIBC_PATCH_LOCAL
+CT_GLIBC_PATCH_LOCAL_BUNDLED
+CT_GLIBC_PATCH_NONE
+CT_GLIBC_PATCH_ORDER
+CT_GLIBC_PKG_NAME
+CT_GLIBC_PORTS_ARCHIVE_DIRNAME
+CT_GLIBC_PORTS_ARCHIVE_FILENAME
+CT_GLIBC_PORTS_ARCHIVE_FORMATS
+CT_GLIBC_PORTS_CUSTOM_LOCATION
+CT_GLIBC_PORTS_DEVEL_BOOTSTRAP
+CT_GLIBC_PORTS_DEVEL_BRANCH
+CT_GLIBC_PORTS_DEVEL_REVISION
+CT_GLIBC_PORTS_DEVEL_SUBDIR
+CT_GLIBC_PORTS_DEVEL_URL
+CT_GLIBC_PORTS_DEVEL_VCS
+CT_GLIBC_PORTS_DEVEL_VCS_cvs
+CT_GLIBC_PORTS_DEVEL_VCS_git
+CT_GLIBC_PORTS_DEVEL_VCS_hg
+CT_GLIBC_PORTS_DEVEL_VCS_svn
+CT_GLIBC_PORTS_DIR_NAME
+CT_GLIBC_PORTS_MIRRORS
+CT_GLIBC_PORTS_PATCH_BUNDLED
+CT_GLIBC_PORTS_PATCH_BUNDLED_LOCAL
+CT_GLIBC_PORTS_PATCH_GLOBAL
+CT_GLIBC_PORTS_PATCH_LOCAL
+CT_GLIBC_PORTS_PATCH_LOCAL_BUNDLED
+CT_GLIBC_PORTS_PATCH_NONE
+CT_GLIBC_PORTS_PATCH_ORDER
+CT_GLIBC_PORTS_PKG_NAME
+CT_GLIBC_PORTS_SIGNATURE_FORMAT
+CT_GLIBC_PORTS_SRC_CUSTOM
+CT_GLIBC_PORTS_SRC_DEVEL
+CT_GLIBC_PORTS_SRC_RELEASE
+CT_GLIBC_PORTS_VERSION
+CT_GLIBC_PORTS_V_2_12_1
+CT_GLIBC_PORTS_V_2_13
+CT_GLIBC_PORTS_V_2_14_1
+CT_GLIBC_PORTS_V_2_15
+CT_GLIBC_PORTS_V_2_16_0
+CT_GLIBC_REQUIRE_2_14_or_later
+CT_GLIBC_REQUIRE_2_14_or_older
+CT_GLIBC_REQUIRE_2_17_or_later
+CT_GLIBC_REQUIRE_2_17_or_older
+CT_GLIBC_REQUIRE_2_20_or_later
+CT_GLIBC_REQUIRE_2_20_or_older
+CT_GLIBC_REQUIRE_2_23_or_later
+CT_GLIBC_REQUIRE_2_23_or_older
+CT_GLIBC_REQUIRE_2_24_or_later
+CT_GLIBC_REQUIRE_2_24_or_older
+CT_GLIBC_REQUIRE_2_25_or_later
+CT_GLIBC_REQUIRE_2_25_or_older
+CT_GLIBC_REQUIRE_2_26_or_later
+CT_GLIBC_REQUIRE_2_26_or_older
+CT_GLIBC_REQUIRE_2_27_or_later
+CT_GLIBC_REQUIRE_2_27_or_older
+CT_GLIBC_REQUIRE_2_29_or_later
+CT_GLIBC_REQUIRE_2_29_or_older
+CT_GLIBC_REQUIRE_later_than_2_14
+CT_GLIBC_REQUIRE_later_than_2_17
+CT_GLIBC_REQUIRE_later_than_2_20
+CT_GLIBC_REQUIRE_later_than_2_23
+CT_GLIBC_REQUIRE_later_than_2_24
+CT_GLIBC_REQUIRE_later_than_2_25
+CT_GLIBC_REQUIRE_later_than_2_26
+CT_GLIBC_REQUIRE_later_than_2_27
+CT_GLIBC_REQUIRE_later_than_2_29
+CT_GLIBC_REQUIRE_older_than_2_14
+CT_GLIBC_REQUIRE_older_than_2_17
+CT_GLIBC_REQUIRE_older_than_2_20
+CT_GLIBC_REQUIRE_older_than_2_23
+CT_GLIBC_REQUIRE_older_than_2_24
+CT_GLIBC_REQUIRE_older_than_2_25
+CT_GLIBC_REQUIRE_older_than_2_26
+CT_GLIBC_REQUIRE_older_than_2_27
+CT_GLIBC_REQUIRE_older_than_2_29
+CT_GLIBC_SIGNATURE_FORMAT
+CT_GLIBC_SRC_CUSTOM
+CT_GLIBC_SRC_DEVEL
+CT_GLIBC_SRC_RELEASE
+CT_GLIBC_SSP
+CT_GLIBC_SSP_ALL
+CT_GLIBC_SSP_DEFAULT
+CT_GLIBC_SSP_NO
+CT_GLIBC_SSP_STRONG
+CT_GLIBC_SSP_YES
+CT_GLIBC_USE
+CT_GLIBC_USE_GNU
+CT_GLIBC_USE_LIBIDN_ADDON
+CT_GLIBC_USE_LINARO
+CT_GLIBC_USE_NPTL_ADDON
+CT_GLIBC_USE_PORTS_ADDON
+CT_GLIBC_USE_PORTS_EXTERNAL
+CT_GLIBC_VERSION
+CT_GLIBC_VERY_NEW
+CT_GLIBC_VERY_OLD
+CT_GLIBC_V_2_12_1
+CT_GLIBC_V_2_12_2
+CT_GLIBC_V_2_13
+CT_GLIBC_V_2_14_1
+CT_GLIBC_V_2_15
+CT_GLIBC_V_2_16_0
+CT_GLIBC_V_2_17
+CT_GLIBC_V_2_18
+CT_GLIBC_V_2_19
+CT_GLIBC_V_2_20
+CT_GLIBC_V_2_21
+CT_GLIBC_V_2_22
+CT_GLIBC_V_2_23
+CT_GLIBC_V_2_24
+CT_GLIBC_V_2_25
+CT_GLIBC_V_2_26
+CT_GLIBC_V_2_27
+CT_GLIBC_V_2_28
+CT_GLIBC_V_2_29
+CT_GLIBC_later_than_2_14
+CT_GLIBC_later_than_2_17
+CT_GLIBC_later_than_2_20
+CT_GLIBC_later_than_2_23
+CT_GLIBC_later_than_2_24
+CT_GLIBC_later_than_2_25
+CT_GLIBC_later_than_2_26
+CT_GLIBC_later_than_2_27
+CT_GLIBC_later_than_2_29
+CT_GLIBC_older_than_2_14
+CT_GLIBC_older_than_2_17
+CT_GLIBC_older_than_2_20
+CT_GLIBC_older_than_2_23
+CT_GLIBC_older_than_2_24
+CT_GLIBC_older_than_2_25
+CT_GLIBC_older_than_2_26
+CT_GLIBC_older_than_2_27
+CT_GLIBC_older_than_2_29
+CT_GMP
+CT_GMP_5_0_0_or_later
+CT_GMP_5_0_0_or_older
+CT_GMP_5_1_0_or_later
+CT_GMP_5_1_0_or_older
+CT_GMP_ARCHIVE_DIRNAME
+CT_GMP_ARCHIVE_FILENAME
+CT_GMP_ARCHIVE_FORMATS
+CT_GMP_CUSTOM_LOCATION
+CT_GMP_DEVEL_BOOTSTRAP
+CT_GMP_DEVEL_BRANCH
+CT_GMP_DEVEL_REVISION
+CT_GMP_DEVEL_SUBDIR
+CT_GMP_DEVEL_URL
+CT_GMP_DEVEL_VCS
+CT_GMP_DEVEL_VCS_cvs
+CT_GMP_DEVEL_VCS_git
+CT_GMP_DEVEL_VCS_hg
+CT_GMP_DEVEL_VCS_svn
+CT_GMP_DIR_NAME
+CT_GMP_HAS_MPBSD
+CT_GMP_MIRRORS
+CT_GMP_NEEDED
+CT_GMP_PATCH_BUNDLED
+CT_GMP_PATCH_BUNDLED_LOCAL
+CT_GMP_PATCH_GLOBAL
+CT_GMP_PATCH_LOCAL
+CT_GMP_PATCH_LOCAL_BUNDLED
+CT_GMP_PATCH_NONE
+CT_GMP_PATCH_ORDER
+CT_GMP_PKG_NAME
+CT_GMP_REQUIRE_5_0_0_or_later
+CT_GMP_REQUIRE_5_0_0_or_older
+CT_GMP_REQUIRE_5_1_0_or_later
+CT_GMP_REQUIRE_5_1_0_or_older
+CT_GMP_REQUIRE_later_than_5_0_0
+CT_GMP_REQUIRE_later_than_5_1_0
+CT_GMP_REQUIRE_older_than_5_0_0
+CT_GMP_REQUIRE_older_than_5_1_0
+CT_GMP_SIGNATURE_FORMAT
+CT_GMP_SRC_CUSTOM
+CT_GMP_SRC_DEVEL
+CT_GMP_SRC_RELEASE
+CT_GMP_VERSION
+CT_GMP_VERY_NEW
+CT_GMP_VERY_OLD
+CT_GMP_V_4_3
+CT_GMP_V_5_0
+CT_GMP_V_5_1
+CT_GMP_V_6_0
+CT_GMP_V_6_1
+CT_GMP_later_than_5_0_0
+CT_GMP_later_than_5_1_0
+CT_GMP_older_than_5_0_0
+CT_GMP_older_than_5_1_0
+CT_HOST
+CT_HOST_PREFIX
+CT_HOST_SUFFIX
+CT_INSTALL_LICENSES
+CT_ISL
+CT_ISL_0_12_or_later
+CT_ISL_0_12_or_older
+CT_ISL_0_13_or_later
+CT_ISL_0_13_or_older
+CT_ISL_0_14_or_later
+CT_ISL_0_14_or_older
+CT_ISL_0_15_or_later
+CT_ISL_0_15_or_older
+CT_ISL_0_18_or_later
+CT_ISL_0_18_or_older
+CT_ISL_ARCHIVE_DIRNAME
+CT_ISL_ARCHIVE_FILENAME
+CT_ISL_ARCHIVE_FORMATS
+CT_ISL_CUSTOM_LOCATION
+CT_ISL_DEVEL_BOOTSTRAP
+CT_ISL_DEVEL_BRANCH
+CT_ISL_DEVEL_REVISION
+CT_ISL_DEVEL_SUBDIR
+CT_ISL_DEVEL_URL
+CT_ISL_DEVEL_VCS
+CT_ISL_DEVEL_VCS_cvs
+CT_ISL_DEVEL_VCS_git
+CT_ISL_DEVEL_VCS_hg
+CT_ISL_DEVEL_VCS_svn
+CT_ISL_DIR_NAME
+CT_ISL_HAS_WITH_PIPLIB
+CT_ISL_MIRRORS
+CT_ISL_NEEDED
+CT_ISL_NEEDS_WITH_GMP
+CT_ISL_PATCH_BUNDLED
+CT_ISL_PATCH_BUNDLED_LOCAL
+CT_ISL_PATCH_GLOBAL
+CT_ISL_PATCH_LOCAL
+CT_ISL_PATCH_LOCAL_BUNDLED
+CT_ISL_PATCH_NONE
+CT_ISL_PATCH_ORDER
+CT_ISL_PKG_NAME
+CT_ISL_REQUIRE_0_12_or_later
+CT_ISL_REQUIRE_0_12_or_older
+CT_ISL_REQUIRE_0_13_or_later
+CT_ISL_REQUIRE_0_13_or_older
+CT_ISL_REQUIRE_0_14_or_later
+CT_ISL_REQUIRE_0_14_or_older
+CT_ISL_REQUIRE_0_15_or_later
+CT_ISL_REQUIRE_0_15_or_older
+CT_ISL_REQUIRE_0_18_or_later
+CT_ISL_REQUIRE_0_18_or_older
+CT_ISL_REQUIRE_later_than_0_12
+CT_ISL_REQUIRE_later_than_0_13
+CT_ISL_REQUIRE_later_than_0_14
+CT_ISL_REQUIRE_later_than_0_15
+CT_ISL_REQUIRE_later_than_0_18
+CT_ISL_REQUIRE_older_than_0_12
+CT_ISL_REQUIRE_older_than_0_13
+CT_ISL_REQUIRE_older_than_0_14
+CT_ISL_REQUIRE_older_than_0_15
+CT_ISL_REQUIRE_older_than_0_18
+CT_ISL_SIGNATURE_FORMAT
+CT_ISL_SRC_CUSTOM
+CT_ISL_SRC_DEVEL
+CT_ISL_SRC_RELEASE
+CT_ISL_VERSION
+CT_ISL_VERY_NEW
+CT_ISL_VERY_OLD
+CT_ISL_V_0_11
+CT_ISL_V_0_12
+CT_ISL_V_0_14
+CT_ISL_V_0_15
+CT_ISL_V_0_16
+CT_ISL_V_0_17
+CT_ISL_V_0_18
+CT_ISL_V_0_19
+CT_ISL_V_0_20
+CT_ISL_later_than_0_12
+CT_ISL_later_than_0_13
+CT_ISL_later_than_0_14
+CT_ISL_later_than_0_15
+CT_ISL_later_than_0_18
+CT_ISL_older_than_0_12
+CT_ISL_older_than_0_13
+CT_ISL_older_than_0_14
+CT_ISL_older_than_0_15
+CT_ISL_older_than_0_18
+CT_KERNEL
+CT_KERNEL_BARE_METAL
+CT_KERNEL_BARE_METAL_PKG_KSYM
+CT_KERNEL_BARE_METAL_SHOW
+CT_KERNEL_CHOICE_KSYM
+CT_KERNEL_LINUX
+CT_KERNEL_LINUX_INSTALL_CHECK
+CT_KERNEL_LINUX_PKG_KSYM
+CT_KERNEL_LINUX_SHOW
+CT_KERNEL_LINUX_VERBOSE_LEVEL
+CT_KERNEL_LINUX_VERBOSITY_0
+CT_KERNEL_LINUX_VERBOSITY_1
+CT_KERNEL_LINUX_VERBOSITY_2
+CT_KERNEL_SUPPORTS_SHARED_LIBS
+CT_KERNEL_WINDOWS
+CT_KERNEL_WINDOWS_PKG_KSYM
+CT_KERNEL_WINDOWS_SHOW
+CT_LDSO_CONF_EXTRA_DIRS_ARRAY
+CT_LIBC
+CT_LIBC_AVR_LIBC
+CT_LIBC_AVR_LIBC_EXTRA_CONFIG_ARRAY
+CT_LIBC_AVR_LIBC_PKG_KSYM
+CT_LIBC_AVR_LIBC_SHOW
+CT_LIBC_BIONIC
+CT_LIBC_BIONIC_PKG_KSYM
+CT_LIBC_BIONIC_SHOW
+CT_LIBC_CHOICE_KSYM
+CT_LIBC_GLIBC
+CT_LIBC_GLIBC_PKG_KSYM
+CT_LIBC_GLIBC_SHOW
+CT_LIBC_MINGW_W64
+CT_LIBC_MINGW_W64_PKG_KSYM
+CT_LIBC_MINGW_W64_SHOW
+CT_LIBC_MOXIEBOX
+CT_LIBC_MOXIEBOX_PKG_KSYM
+CT_LIBC_MOXIEBOX_SHOW
+CT_LIBC_MUSL
+CT_LIBC_MUSL_DEBUG
+CT_LIBC_MUSL_OPTIMIZE
+CT_LIBC_MUSL_OPTIMIZE_AUTO
+CT_LIBC_MUSL_OPTIMIZE_NONE
+CT_LIBC_MUSL_OPTIMIZE_SIZE
+CT_LIBC_MUSL_OPTIMIZE_SPEED
+CT_LIBC_MUSL_PKG_KSYM
+CT_LIBC_MUSL_SHOW
+CT_LIBC_MUSL_WARNINGS
+CT_LIBC_NEWLIB
+CT_LIBC_NEWLIB_ATEXIT_DYNAMIC_ALLOC
+CT_LIBC_NEWLIB_DISABLE_SUPPLIED_SYSCALLS
+CT_LIBC_NEWLIB_ENABLE_TARGET_OPTSPACE
+CT_LIBC_NEWLIB_EXTRA_CONFIG_ARRAY
+CT_LIBC_NEWLIB_EXTRA_SECTIONS
+CT_LIBC_NEWLIB_FSEEK_OPTIMIZATION
+CT_LIBC_NEWLIB_FVWRITE_IN_STREAMIO
+CT_LIBC_NEWLIB_GLOBAL_ATEXIT
+CT_LIBC_NEWLIB_IO_C99FMT
+CT_LIBC_NEWLIB_IO_FLOAT
+CT_LIBC_NEWLIB_IO_LDBL
+CT_LIBC_NEWLIB_IO_LL
+CT_LIBC_NEWLIB_IO_POS_ARGS
+CT_LIBC_NEWLIB_LITE_EXIT
+CT_LIBC_NEWLIB_LTO
+CT_LIBC_NEWLIB_MULTITHREAD
+CT_LIBC_NEWLIB_NANO_FORMATTED_IO
+CT_LIBC_NEWLIB_NANO_MALLOC
+CT_LIBC_NEWLIB_PKG_KSYM
+CT_LIBC_NEWLIB_REENT_SMALL
+CT_LIBC_NEWLIB_REGISTER_FINI
+CT_LIBC_NEWLIB_SHOW
+CT_LIBC_NEWLIB_TARGET_CFLAGS
+CT_LIBC_NEWLIB_UNBUF_STREAM_OPT
+CT_LIBC_NEWLIB_WIDE_ORIENT
+CT_LIBC_NONE
+CT_LIBC_NONE_PKG_KSYM
+CT_LIBC_NONE_SHOW
+CT_LIBC_PROVIDES_CXA_ATEXIT
+CT_LIBC_SUPPORT_THREADS_ANY
+CT_LIBC_SUPPORT_THREADS_LT
+CT_LIBC_SUPPORT_THREADS_NATIVE
+CT_LIBC_SUPPORT_THREADS_NONE
+CT_LIBC_SUPPORT_THREADS_POSIX
+CT_LIBC_UCLIBC
+CT_LIBC_UCLIBC_BUILD_SSP
+CT_LIBC_UCLIBC_CONFIG_FILE
+CT_LIBC_UCLIBC_DEBUG_LEVEL
+CT_LIBC_UCLIBC_DEBUG_LEVEL_0
+CT_LIBC_UCLIBC_DEBUG_LEVEL_1
+CT_LIBC_UCLIBC_DEBUG_LEVEL_2
+CT_LIBC_UCLIBC_DEBUG_LEVEL_3
+CT_LIBC_UCLIBC_FENV
+CT_LIBC_UCLIBC_HAS_LIBICONV
+CT_LIBC_UCLIBC_HAS_SSP
+CT_LIBC_UCLIBC_HAS_SUNRPC
+CT_LIBC_UCLIBC_IPV6
+CT_LIBC_UCLIBC_LIBICONV
+CT_LIBC_UCLIBC_LNXTHRD
+CT_LIBC_UCLIBC_LNXTHRD_NEW
+CT_LIBC_UCLIBC_LNXTHRD_OLD
+CT_LIBC_UCLIBC_LOCALES
+CT_LIBC_UCLIBC_NG
+CT_LIBC_UCLIBC_PARALLEL
+CT_LIBC_UCLIBC_PKG_KSYM
+CT_LIBC_UCLIBC_RPC
+CT_LIBC_UCLIBC_SHOW
+CT_LIBC_UCLIBC_USE_GNU_SUFFIX
+CT_LIBC_UCLIBC_VERBOSITY
+CT_LIBC_UCLIBC_VERBOSITY_0
+CT_LIBC_UCLIBC_VERBOSITY_1
+CT_LIBC_UCLIBC_VERBOSITY_2
+CT_LIBC_UCLIBC_WCHAR
+CT_LIBC_XLDD
+CT_LIBELF
+CT_LIBELF_ARCHIVE_DIRNAME
+CT_LIBELF_ARCHIVE_FILENAME
+CT_LIBELF_ARCHIVE_FORMATS
+CT_LIBELF_CUSTOM_LOCATION
+CT_LIBELF_DEVEL_BOOTSTRAP
+CT_LIBELF_DEVEL_BRANCH
+CT_LIBELF_DEVEL_REVISION
+CT_LIBELF_DEVEL_SUBDIR
+CT_LIBELF_DEVEL_URL
+CT_LIBELF_DEVEL_VCS
+CT_LIBELF_DEVEL_VCS_cvs
+CT_LIBELF_DEVEL_VCS_git
+CT_LIBELF_DEVEL_VCS_hg
+CT_LIBELF_DEVEL_VCS_svn
+CT_LIBELF_DIR_NAME
+CT_LIBELF_MIRRORS
+CT_LIBELF_NEEDED
+CT_LIBELF_PATCH_BUNDLED
+CT_LIBELF_PATCH_BUNDLED_LOCAL
+CT_LIBELF_PATCH_GLOBAL
+CT_LIBELF_PATCH_LOCAL
+CT_LIBELF_PATCH_LOCAL_BUNDLED
+CT_LIBELF_PATCH_NONE
+CT_LIBELF_PATCH_ORDER
+CT_LIBELF_PKG_NAME
+CT_LIBELF_SIGNATURE_FORMAT
+CT_LIBELF_SRC_CUSTOM
+CT_LIBELF_SRC_DEVEL
+CT_LIBELF_SRC_RELEASE
+CT_LIBELF_TARGET
+CT_LIBELF_VERSION
+CT_LIBELF_VERY_NEW
+CT_LIBELF_VERY_OLD
+CT_LIBELF_V_0_8
+CT_LIBICONV
+CT_LIBICONV_ARCHIVE_DIRNAME
+CT_LIBICONV_ARCHIVE_FILENAME
+CT_LIBICONV_ARCHIVE_FORMATS
+CT_LIBICONV_CUSTOM_LOCATION
+CT_LIBICONV_DEVEL_BOOTSTRAP
+CT_LIBICONV_DEVEL_BRANCH
+CT_LIBICONV_DEVEL_REVISION
+CT_LIBICONV_DEVEL_SUBDIR
+CT_LIBICONV_DEVEL_URL
+CT_LIBICONV_DEVEL_VCS
+CT_LIBICONV_DEVEL_VCS_cvs
+CT_LIBICONV_DEVEL_VCS_git
+CT_LIBICONV_DEVEL_VCS_hg
+CT_LIBICONV_DEVEL_VCS_svn
+CT_LIBICONV_DIR_NAME
+CT_LIBICONV_MIRRORS
+CT_LIBICONV_NEEDED
+CT_LIBICONV_PATCH_BUNDLED
+CT_LIBICONV_PATCH_BUNDLED_LOCAL
+CT_LIBICONV_PATCH_GLOBAL
+CT_LIBICONV_PATCH_LOCAL
+CT_LIBICONV_PATCH_LOCAL_BUNDLED
+CT_LIBICONV_PATCH_NONE
+CT_LIBICONV_PATCH_ORDER
+CT_LIBICONV_PKG_NAME
+CT_LIBICONV_SIGNATURE_FORMAT
+CT_LIBICONV_SRC_CUSTOM
+CT_LIBICONV_SRC_DEVEL
+CT_LIBICONV_SRC_RELEASE
+CT_LIBICONV_VERSION
+CT_LIBICONV_VERY_NEW
+CT_LIBICONV_VERY_OLD
+CT_LIBICONV_V_1_14
+CT_LIBICONV_V_1_15
+CT_LIBTOOL_ARCHIVE_DIRNAME
+CT_LIBTOOL_ARCHIVE_FILENAME
+CT_LIBTOOL_ARCHIVE_FORMATS
+CT_LIBTOOL_CUSTOM_LOCATION
+CT_LIBTOOL_DEVEL_BOOTSTRAP
+CT_LIBTOOL_DEVEL_BRANCH
+CT_LIBTOOL_DEVEL_REVISION
+CT_LIBTOOL_DEVEL_SUBDIR
+CT_LIBTOOL_DEVEL_URL
+CT_LIBTOOL_DEVEL_VCS
+CT_LIBTOOL_DEVEL_VCS_cvs
+CT_LIBTOOL_DEVEL_VCS_git
+CT_LIBTOOL_DEVEL_VCS_hg
+CT_LIBTOOL_DEVEL_VCS_svn
+CT_LIBTOOL_DIR_NAME
+CT_LIBTOOL_MIRRORS
+CT_LIBTOOL_PATCH_BUNDLED
+CT_LIBTOOL_PATCH_BUNDLED_LOCAL
+CT_LIBTOOL_PATCH_GLOBAL
+CT_LIBTOOL_PATCH_LOCAL
+CT_LIBTOOL_PATCH_LOCAL_BUNDLED
+CT_LIBTOOL_PATCH_NONE
+CT_LIBTOOL_PATCH_ORDER
+CT_LIBTOOL_PKG_NAME
+CT_LIBTOOL_SIGNATURE_FORMAT
+CT_LIBTOOL_SRC_CUSTOM
+CT_LIBTOOL_SRC_DEVEL
+CT_LIBTOOL_SRC_RELEASE
+CT_LIBTOOL_VERSION
+CT_LIBTOOL_VERY_NEW
+CT_LIBTOOL_VERY_OLD
+CT_LIBTOOL_V_2_4
+CT_LINUX_3_2_or_later
+CT_LINUX_3_2_or_older
+CT_LINUX_3_7_or_later
+CT_LINUX_3_7_or_older
+CT_LINUX_4_8_or_later
+CT_LINUX_4_8_or_older
+CT_LINUX_ARCHIVE_DIRNAME
+CT_LINUX_ARCHIVE_FILENAME
+CT_LINUX_ARCHIVE_FORMATS
+CT_LINUX_CUSTOM_LOCATION
+CT_LINUX_DEVEL_BOOTSTRAP
+CT_LINUX_DEVEL_BRANCH
+CT_LINUX_DEVEL_REVISION
+CT_LINUX_DEVEL_SUBDIR
+CT_LINUX_DEVEL_URL
+CT_LINUX_DEVEL_VCS
+CT_LINUX_DEVEL_VCS_cvs
+CT_LINUX_DEVEL_VCS_git
+CT_LINUX_DEVEL_VCS_hg
+CT_LINUX_DEVEL_VCS_svn
+CT_LINUX_DIR_NAME
+CT_LINUX_MIRRORS
+CT_LINUX_PATCH_BUNDLED
+CT_LINUX_PATCH_BUNDLED_LOCAL
+CT_LINUX_PATCH_GLOBAL
+CT_LINUX_PATCH_LOCAL
+CT_LINUX_PATCH_LOCAL_BUNDLED
+CT_LINUX_PATCH_NONE
+CT_LINUX_PATCH_ORDER
+CT_LINUX_PKG_NAME
+CT_LINUX_REQUIRE_3_2_or_later
+CT_LINUX_REQUIRE_3_2_or_older
+CT_LINUX_REQUIRE_3_7_or_later
+CT_LINUX_REQUIRE_3_7_or_older
+CT_LINUX_REQUIRE_4_8_or_later
+CT_LINUX_REQUIRE_4_8_or_older
+CT_LINUX_REQUIRE_later_than_3_2
+CT_LINUX_REQUIRE_later_than_3_7
+CT_LINUX_REQUIRE_later_than_4_8
+CT_LINUX_REQUIRE_older_than_3_2
+CT_LINUX_REQUIRE_older_than_3_7
+CT_LINUX_REQUIRE_older_than_4_8
+CT_LINUX_SIGNATURE_FORMAT
+CT_LINUX_SRC_CUSTOM
+CT_LINUX_SRC_DEVEL
+CT_LINUX_SRC_RELEASE
+CT_LINUX_VERSION
+CT_LINUX_VERY_NEW
+CT_LINUX_VERY_OLD
+CT_LINUX_V_2_6_32
+CT_LINUX_V_2_6_33
+CT_LINUX_V_2_6_34
+CT_LINUX_V_2_6_35
+CT_LINUX_V_2_6_36
+CT_LINUX_V_2_6_37
+CT_LINUX_V_2_6_38
+CT_LINUX_V_2_6_39
+CT_LINUX_V_3_0
+CT_LINUX_V_3_1
+CT_LINUX_V_3_10
+CT_LINUX_V_3_11
+CT_LINUX_V_3_12
+CT_LINUX_V_3_13
+CT_LINUX_V_3_14
+CT_LINUX_V_3_15
+CT_LINUX_V_3_16
+CT_LINUX_V_3_17
+CT_LINUX_V_3_18
+CT_LINUX_V_3_19
+CT_LINUX_V_3_2
+CT_LINUX_V_3_3
+CT_LINUX_V_3_4
+CT_LINUX_V_3_5
+CT_LINUX_V_3_6
+CT_LINUX_V_3_7
+CT_LINUX_V_3_8
+CT_LINUX_V_3_9
+CT_LINUX_V_4_0
+CT_LINUX_V_4_1
+CT_LINUX_V_4_10
+CT_LINUX_V_4_11
+CT_LINUX_V_4_12
+CT_LINUX_V_4_13
+CT_LINUX_V_4_14
+CT_LINUX_V_4_15
+CT_LINUX_V_4_16
+CT_LINUX_V_4_17
+CT_LINUX_V_4_18
+CT_LINUX_V_4_19
+CT_LINUX_V_4_2
+CT_LINUX_V_4_20
+CT_LINUX_V_4_3
+CT_LINUX_V_4_4
+CT_LINUX_V_4_5
+CT_LINUX_V_4_6
+CT_LINUX_V_4_7
+CT_LINUX_V_4_8
+CT_LINUX_V_4_9
+CT_LINUX_later_than_3_2
+CT_LINUX_later_than_3_7
+CT_LINUX_later_than_4_8
+CT_LINUX_older_than_3_2
+CT_LINUX_older_than_3_7
+CT_LINUX_older_than_4_8
+CT_LOAD
+CT_LOCAL_PATCH_DIR
+CT_LOCAL_TARBALLS_DIR
+CT_LOG_ALL
+CT_LOG_DEBUG
+CT_LOG_ERROR
+CT_LOG_EXTRA
+CT_LOG_FILE_COMPRESS
+CT_LOG_INFO
+CT_LOG_LEVEL_MAX
+CT_LOG_PROGRESS_BAR
+CT_LOG_SEE_TOOLS_WARN
+CT_LOG_TO_FILE
+CT_LOG_WARN
+CT_LTRACE_0_5_3_CONFIGURE
+CT_LTRACE_ARCHIVE_DIRNAME
+CT_LTRACE_ARCHIVE_FILENAME
+CT_LTRACE_ARCHIVE_FORMATS
+CT_LTRACE_CUSTOM_LOCATION
+CT_LTRACE_DEVEL_BOOTSTRAP
+CT_LTRACE_DEVEL_BRANCH
+CT_LTRACE_DEVEL_REVISION
+CT_LTRACE_DEVEL_SUBDIR
+CT_LTRACE_DEVEL_URL
+CT_LTRACE_DEVEL_VCS
+CT_LTRACE_DEVEL_VCS_cvs
+CT_LTRACE_DEVEL_VCS_git
+CT_LTRACE_DEVEL_VCS_hg
+CT_LTRACE_DEVEL_VCS_svn
+CT_LTRACE_DIR_NAME
+CT_LTRACE_MIRRORS
+CT_LTRACE_PATCH_BUNDLED
+CT_LTRACE_PATCH_BUNDLED_LOCAL
+CT_LTRACE_PATCH_GLOBAL
+CT_LTRACE_PATCH_LOCAL
+CT_LTRACE_PATCH_LOCAL_BUNDLED
+CT_LTRACE_PATCH_NONE
+CT_LTRACE_PATCH_ORDER
+CT_LTRACE_PKG_NAME
+CT_LTRACE_SIGNATURE_FORMAT
+CT_LTRACE_SRC_CUSTOM
+CT_LTRACE_SRC_DEVEL
+CT_LTRACE_SRC_RELEASE
+CT_LTRACE_VERSION
+CT_LTRACE_VERY_NEW
+CT_LTRACE_VERY_OLD
+CT_LTRACE_V_0_5_3
+CT_LTRACE_V_0_7_3
+CT_M4_ARCHIVE_DIRNAME
+CT_M4_ARCHIVE_FILENAME
+CT_M4_ARCHIVE_FORMATS
+CT_M4_CUSTOM_LOCATION
+CT_M4_DEVEL_BOOTSTRAP
+CT_M4_DEVEL_BRANCH
+CT_M4_DEVEL_REVISION
+CT_M4_DEVEL_SUBDIR
+CT_M4_DEVEL_URL
+CT_M4_DEVEL_VCS
+CT_M4_DEVEL_VCS_cvs
+CT_M4_DEVEL_VCS_git
+CT_M4_DEVEL_VCS_hg
+CT_M4_DEVEL_VCS_svn
+CT_M4_DIR_NAME
+CT_M4_MIRRORS
+CT_M4_PATCH_BUNDLED
+CT_M4_PATCH_BUNDLED_LOCAL
+CT_M4_PATCH_GLOBAL
+CT_M4_PATCH_LOCAL
+CT_M4_PATCH_LOCAL_BUNDLED
+CT_M4_PATCH_NONE
+CT_M4_PATCH_ORDER
+CT_M4_PKG_NAME
+CT_M4_SIGNATURE_FORMAT
+CT_M4_SRC_CUSTOM
+CT_M4_SRC_DEVEL
+CT_M4_SRC_RELEASE
+CT_M4_VERSION
+CT_M4_VERY_NEW
+CT_M4_VERY_OLD
+CT_M4_V_1_4
+CT_MAKE_4_0_or_later
+CT_MAKE_4_0_or_older
+CT_MAKE_ARCHIVE_DIRNAME
+CT_MAKE_ARCHIVE_FILENAME
+CT_MAKE_ARCHIVE_FORMATS
+CT_MAKE_CUSTOM_LOCATION
+CT_MAKE_DEVEL_BOOTSTRAP
+CT_MAKE_DEVEL_BRANCH
+CT_MAKE_DEVEL_REVISION
+CT_MAKE_DEVEL_SUBDIR
+CT_MAKE_DEVEL_URL
+CT_MAKE_DEVEL_VCS
+CT_MAKE_DEVEL_VCS_cvs
+CT_MAKE_DEVEL_VCS_git
+CT_MAKE_DEVEL_VCS_hg
+CT_MAKE_DEVEL_VCS_svn
+CT_MAKE_DIR_NAME
+CT_MAKE_GMAKE_SYMLINK
+CT_MAKE_GNUMAKE_SYMLINK
+CT_MAKE_MIRRORS
+CT_MAKE_PATCH_BUNDLED
+CT_MAKE_PATCH_BUNDLED_LOCAL
+CT_MAKE_PATCH_GLOBAL
+CT_MAKE_PATCH_LOCAL
+CT_MAKE_PATCH_LOCAL_BUNDLED
+CT_MAKE_PATCH_NONE
+CT_MAKE_PATCH_ORDER
+CT_MAKE_PKG_NAME
+CT_MAKE_REQUIRE_4_0_or_later
+CT_MAKE_REQUIRE_4_0_or_older
+CT_MAKE_REQUIRE_later_than_4_0
+CT_MAKE_REQUIRE_older_than_4_0
+CT_MAKE_SIGNATURE_FORMAT
+CT_MAKE_SRC_CUSTOM
+CT_MAKE_SRC_DEVEL
+CT_MAKE_SRC_RELEASE
+CT_MAKE_VERSION
+CT_MAKE_VERY_NEW
+CT_MAKE_VERY_OLD
+CT_MAKE_V_3_81
+CT_MAKE_V_4_0
+CT_MAKE_V_4_1
+CT_MAKE_V_4_2
+CT_MAKE_later_than_4_0
+CT_MAKE_older_than_4_0
+CT_MINGW_DDK
+CT_MINGW_DIRECTX
+CT_MINGW_SECURE_API
+CT_MINGW_TOOLS
+CT_MINGW_TOOL_LIST_ARRAY
+CT_MINGW_W64_ARCHIVE_DIRNAME
+CT_MINGW_W64_ARCHIVE_FILENAME
+CT_MINGW_W64_ARCHIVE_FORMATS
+CT_MINGW_W64_CUSTOM_LOCATION
+CT_MINGW_W64_DEVEL_BOOTSTRAP
+CT_MINGW_W64_DEVEL_BRANCH
+CT_MINGW_W64_DEVEL_REVISION
+CT_MINGW_W64_DEVEL_SUBDIR
+CT_MINGW_W64_DEVEL_URL
+CT_MINGW_W64_DEVEL_VCS
+CT_MINGW_W64_DEVEL_VCS_cvs
+CT_MINGW_W64_DEVEL_VCS_git
+CT_MINGW_W64_DEVEL_VCS_hg
+CT_MINGW_W64_DEVEL_VCS_svn
+CT_MINGW_W64_DIR_NAME
+CT_MINGW_W64_MIRRORS
+CT_MINGW_W64_PATCH_BUNDLED
+CT_MINGW_W64_PATCH_BUNDLED_LOCAL
+CT_MINGW_W64_PATCH_GLOBAL
+CT_MINGW_W64_PATCH_LOCAL
+CT_MINGW_W64_PATCH_LOCAL_BUNDLED
+CT_MINGW_W64_PATCH_NONE
+CT_MINGW_W64_PATCH_ORDER
+CT_MINGW_W64_PKG_NAME
+CT_MINGW_W64_REQUIRES_W64_VENDOR
+CT_MINGW_W64_REQUIRE_V4_or_later
+CT_MINGW_W64_REQUIRE_V4_or_older
+CT_MINGW_W64_REQUIRE_later_than_V4
+CT_MINGW_W64_REQUIRE_older_than_V4
+CT_MINGW_W64_SIGNATURE_FORMAT
+CT_MINGW_W64_SRC_CUSTOM
+CT_MINGW_W64_SRC_DEVEL
+CT_MINGW_W64_SRC_RELEASE
+CT_MINGW_W64_V4_or_later
+CT_MINGW_W64_V4_or_older
+CT_MINGW_W64_VERSION
+CT_MINGW_W64_VERY_NEW
+CT_MINGW_W64_VERY_OLD
+CT_MINGW_W64_V_V2_0
+CT_MINGW_W64_V_V3_0
+CT_MINGW_W64_V_V3_1
+CT_MINGW_W64_V_V3_2
+CT_MINGW_W64_V_V3_3
+CT_MINGW_W64_V_V4_0
+CT_MINGW_W64_V_V5_0
+CT_MINGW_W64_V_V6_0
+CT_MINGW_W64_later_than_V4
+CT_MINGW_W64_older_than_V4
+CT_MIRROR_BASE_URL
+CT_MODULES
+CT_MOXIEBOX_CUSTOM_LOCATION
+CT_MOXIEBOX_DEVEL_BOOTSTRAP
+CT_MOXIEBOX_DEVEL_BRANCH
+CT_MOXIEBOX_DEVEL_REVISION
+CT_MOXIEBOX_DEVEL_SUBDIR
+CT_MOXIEBOX_DEVEL_URL
+CT_MOXIEBOX_DEVEL_VCS
+CT_MOXIEBOX_DEVEL_VCS_cvs
+CT_MOXIEBOX_DEVEL_VCS_git
+CT_MOXIEBOX_DEVEL_VCS_hg
+CT_MOXIEBOX_DEVEL_VCS_svn
+CT_MOXIEBOX_DIR_NAME
+CT_MOXIEBOX_PATCH_BUNDLED
+CT_MOXIEBOX_PATCH_BUNDLED_LOCAL
+CT_MOXIEBOX_PATCH_GLOBAL
+CT_MOXIEBOX_PATCH_LOCAL
+CT_MOXIEBOX_PATCH_LOCAL_BUNDLED
+CT_MOXIEBOX_PATCH_NONE
+CT_MOXIEBOX_PATCH_ORDER
+CT_MOXIEBOX_PKG_NAME
+CT_MOXIEBOX_SHORT_TUPLE
+CT_MOXIEBOX_SRC_CUSTOM
+CT_MOXIEBOX_SRC_DEVEL
+CT_MOXIEBOX_VERSION
+CT_MPC
+CT_MPC_1_1_0_or_later
+CT_MPC_1_1_0_or_older
+CT_MPC_ARCHIVE_DIRNAME
+CT_MPC_ARCHIVE_FILENAME
+CT_MPC_ARCHIVE_FORMATS
+CT_MPC_CUSTOM_LOCATION
+CT_MPC_DEVEL_BOOTSTRAP
+CT_MPC_DEVEL_BRANCH
+CT_MPC_DEVEL_REVISION
+CT_MPC_DEVEL_SUBDIR
+CT_MPC_DEVEL_URL
+CT_MPC_DEVEL_VCS
+CT_MPC_DEVEL_VCS_cvs
+CT_MPC_DEVEL_VCS_git
+CT_MPC_DEVEL_VCS_hg
+CT_MPC_DEVEL_VCS_svn
+CT_MPC_DIR_NAME
+CT_MPC_MIRRORS
+CT_MPC_NEEDED
+CT_MPC_PATCH_BUNDLED
+CT_MPC_PATCH_BUNDLED_LOCAL
+CT_MPC_PATCH_GLOBAL
+CT_MPC_PATCH_LOCAL
+CT_MPC_PATCH_LOCAL_BUNDLED
+CT_MPC_PATCH_NONE
+CT_MPC_PATCH_ORDER
+CT_MPC_PKG_NAME
+CT_MPC_REQUIRE_1_1_0_or_later
+CT_MPC_REQUIRE_1_1_0_or_older
+CT_MPC_REQUIRE_later_than_1_1_0
+CT_MPC_REQUIRE_older_than_1_1_0
+CT_MPC_SIGNATURE_FORMAT
+CT_MPC_SRC_CUSTOM
+CT_MPC_SRC_DEVEL
+CT_MPC_SRC_RELEASE
+CT_MPC_VERSION
+CT_MPC_VERY_NEW
+CT_MPC_VERY_OLD
+CT_MPC_V_0_7
+CT_MPC_V_0_8
+CT_MPC_V_0_9
+CT_MPC_V_1_0
+CT_MPC_V_1_1
+CT_MPC_later_than_1_1_0
+CT_MPC_older_than_1_1_0
+CT_MPFR
+CT_MPFR_3_0_0_or_later
+CT_MPFR_3_0_0_or_older
+CT_MPFR_4_0_0_or_later
+CT_MPFR_4_0_0_or_older
+CT_MPFR_ARCHIVE_DIRNAME
+CT_MPFR_ARCHIVE_FILENAME
+CT_MPFR_ARCHIVE_FORMATS
+CT_MPFR_CUSTOM_LOCATION
+CT_MPFR_DEVEL_BOOTSTRAP
+CT_MPFR_DEVEL_BRANCH
+CT_MPFR_DEVEL_REVISION
+CT_MPFR_DEVEL_SUBDIR
+CT_MPFR_DEVEL_URL
+CT_MPFR_DEVEL_VCS
+CT_MPFR_DEVEL_VCS_cvs
+CT_MPFR_DEVEL_VCS_git
+CT_MPFR_DEVEL_VCS_hg
+CT_MPFR_DEVEL_VCS_svn
+CT_MPFR_DIR_NAME
+CT_MPFR_MIRRORS
+CT_MPFR_NEEDED
+CT_MPFR_PATCH_BUNDLED
+CT_MPFR_PATCH_BUNDLED_LOCAL
+CT_MPFR_PATCH_GLOBAL
+CT_MPFR_PATCH_LOCAL
+CT_MPFR_PATCH_LOCAL_BUNDLED
+CT_MPFR_PATCH_NONE
+CT_MPFR_PATCH_ORDER
+CT_MPFR_PKG_NAME
+CT_MPFR_REQUIRE_3_0_0_or_later
+CT_MPFR_REQUIRE_3_0_0_or_older
+CT_MPFR_REQUIRE_4_0_0_or_later
+CT_MPFR_REQUIRE_4_0_0_or_older
+CT_MPFR_REQUIRE_later_than_3_0_0
+CT_MPFR_REQUIRE_later_than_4_0_0
+CT_MPFR_REQUIRE_older_than_3_0_0
+CT_MPFR_REQUIRE_older_than_4_0_0
+CT_MPFR_SIGNATURE_FORMAT
+CT_MPFR_SRC_CUSTOM
+CT_MPFR_SRC_DEVEL
+CT_MPFR_SRC_RELEASE
+CT_MPFR_VERSION
+CT_MPFR_VERY_NEW
+CT_MPFR_VERY_OLD
+CT_MPFR_V_2_4
+CT_MPFR_V_3_0
+CT_MPFR_V_3_1
+CT_MPFR_V_4_0
+CT_MPFR_later_than_3_0_0
+CT_MPFR_later_than_4_0_0
+CT_MPFR_older_than_3_0_0
+CT_MPFR_older_than_4_0_0
+CT_MULTILIB
+CT_MUSL_ARCHIVE_DIRNAME
+CT_MUSL_ARCHIVE_FILENAME
+CT_MUSL_ARCHIVE_FORMATS
+CT_MUSL_CUSTOM_LOCATION
+CT_MUSL_DEVEL_BOOTSTRAP
+CT_MUSL_DEVEL_BRANCH
+CT_MUSL_DEVEL_REVISION
+CT_MUSL_DEVEL_SUBDIR
+CT_MUSL_DEVEL_URL
+CT_MUSL_DEVEL_VCS
+CT_MUSL_DEVEL_VCS_cvs
+CT_MUSL_DEVEL_VCS_git
+CT_MUSL_DEVEL_VCS_hg
+CT_MUSL_DEVEL_VCS_svn
+CT_MUSL_DIR_NAME
+CT_MUSL_MIRRORS
+CT_MUSL_PATCH_BUNDLED
+CT_MUSL_PATCH_BUNDLED_LOCAL
+CT_MUSL_PATCH_GLOBAL
+CT_MUSL_PATCH_LOCAL
+CT_MUSL_PATCH_LOCAL_BUNDLED
+CT_MUSL_PATCH_NONE
+CT_MUSL_PATCH_ORDER
+CT_MUSL_PKG_NAME
+CT_MUSL_SIGNATURE_FORMAT
+CT_MUSL_SRC_CUSTOM
+CT_MUSL_SRC_DEVEL
+CT_MUSL_SRC_RELEASE
+CT_MUSL_VERSION
+CT_MUSL_VERY_NEW
+CT_MUSL_VERY_OLD
+CT_MUSL_V_1_1_15
+CT_MUSL_V_1_1_16
+CT_MUSL_V_1_1_17
+CT_MUSL_V_1_1_18
+CT_MUSL_V_1_1_19
+CT_MUSL_V_1_1_20
+CT_MUSL_V_1_1_21
+CT_NATIVE
+CT_NCURSES
+CT_NCURSES_ARCHIVE_DIRNAME
+CT_NCURSES_ARCHIVE_FILENAME
+CT_NCURSES_ARCHIVE_FORMATS
+CT_NCURSES_CUSTOM_LOCATION
+CT_NCURSES_DEVEL_BOOTSTRAP
+CT_NCURSES_DEVEL_BRANCH
+CT_NCURSES_DEVEL_REVISION
+CT_NCURSES_DEVEL_SUBDIR
+CT_NCURSES_DEVEL_URL
+CT_NCURSES_DEVEL_VCS
+CT_NCURSES_DEVEL_VCS_cvs
+CT_NCURSES_DEVEL_VCS_git
+CT_NCURSES_DEVEL_VCS_hg
+CT_NCURSES_DEVEL_VCS_svn
+CT_NCURSES_DIR_NAME
+CT_NCURSES_HOST_CONFIG_ARGS
+CT_NCURSES_HOST_DISABLE_DB
+CT_NCURSES_HOST_FALLBACKS
+CT_NCURSES_MIRRORS
+CT_NCURSES_NEEDED
+CT_NCURSES_NEW_ABI
+CT_NCURSES_PATCH_BUNDLED
+CT_NCURSES_PATCH_BUNDLED_LOCAL
+CT_NCURSES_PATCH_GLOBAL
+CT_NCURSES_PATCH_LOCAL
+CT_NCURSES_PATCH_LOCAL_BUNDLED
+CT_NCURSES_PATCH_NONE
+CT_NCURSES_PATCH_ORDER
+CT_NCURSES_PKG_NAME
+CT_NCURSES_SIGNATURE_FORMAT
+CT_NCURSES_SRC_CUSTOM
+CT_NCURSES_SRC_DEVEL
+CT_NCURSES_SRC_RELEASE
+CT_NCURSES_TARGET
+CT_NCURSES_TARGET_CONFIG_ARGS
+CT_NCURSES_TARGET_DISABLE_DB
+CT_NCURSES_TARGET_FALLBACKS
+CT_NCURSES_VERSION
+CT_NCURSES_VERY_NEW
+CT_NCURSES_VERY_OLD
+CT_NCURSES_V_6_0
+CT_NCURSES_V_6_1
+CT_NEWLIB_2_0_or_later
+CT_NEWLIB_2_0_or_older
+CT_NEWLIB_2_1_or_later
+CT_NEWLIB_2_1_or_older
+CT_NEWLIB_2_2_or_later
+CT_NEWLIB_2_2_or_older
+CT_NEWLIB_ARCHIVE_DIRNAME
+CT_NEWLIB_ARCHIVE_FILENAME
+CT_NEWLIB_ARCHIVE_FORMATS
+CT_NEWLIB_CUSTOM_LOCATION
+CT_NEWLIB_CXA_ATEXIT
+CT_NEWLIB_DEVEL_BOOTSTRAP
+CT_NEWLIB_DEVEL_BRANCH
+CT_NEWLIB_DEVEL_REVISION
+CT_NEWLIB_DEVEL_SUBDIR
+CT_NEWLIB_DEVEL_URL
+CT_NEWLIB_DEVEL_VCS
+CT_NEWLIB_DEVEL_VCS_cvs
+CT_NEWLIB_DEVEL_VCS_git
+CT_NEWLIB_DEVEL_VCS_hg
+CT_NEWLIB_DEVEL_VCS_svn
+CT_NEWLIB_DIR_NAME
+CT_NEWLIB_HAS_NANO_FORMATTED_IO
+CT_NEWLIB_HAS_NANO_MALLOC
+CT_NEWLIB_LINARO_ARCHIVE_DIRNAME
+CT_NEWLIB_LINARO_ARCHIVE_FILENAME
+CT_NEWLIB_LINARO_ARCHIVE_FORMATS
+CT_NEWLIB_LINARO_CUSTOM_LOCATION
+CT_NEWLIB_LINARO_DEVEL_BOOTSTRAP
+CT_NEWLIB_LINARO_DEVEL_BRANCH
+CT_NEWLIB_LINARO_DEVEL_REVISION
+CT_NEWLIB_LINARO_DEVEL_SUBDIR
+CT_NEWLIB_LINARO_DEVEL_URL
+CT_NEWLIB_LINARO_DEVEL_VCS
+CT_NEWLIB_LINARO_DEVEL_VCS_cvs
+CT_NEWLIB_LINARO_DEVEL_VCS_git
+CT_NEWLIB_LINARO_DEVEL_VCS_hg
+CT_NEWLIB_LINARO_DEVEL_VCS_svn
+CT_NEWLIB_LINARO_MIRRORS
+CT_NEWLIB_LINARO_PATCH_BUNDLED
+CT_NEWLIB_LINARO_PATCH_BUNDLED_LOCAL
+CT_NEWLIB_LINARO_PATCH_GLOBAL
+CT_NEWLIB_LINARO_PATCH_LOCAL
+CT_NEWLIB_LINARO_PATCH_LOCAL_BUNDLED
+CT_NEWLIB_LINARO_PATCH_NONE
+CT_NEWLIB_LINARO_PATCH_ORDER
+CT_NEWLIB_LINARO_PKG_NAME
+CT_NEWLIB_LINARO_SIGNATURE_FORMAT
+CT_NEWLIB_LINARO_SRC_CUSTOM
+CT_NEWLIB_LINARO_SRC_DEVEL
+CT_NEWLIB_LINARO_SRC_RELEASE
+CT_NEWLIB_LINARO_VERSION
+CT_NEWLIB_LINARO_VERY_NEW
+CT_NEWLIB_LINARO_VERY_OLD
+CT_NEWLIB_LINARO_V_2_1
+CT_NEWLIB_LINARO_V_2_2
+CT_NEWLIB_MIRRORS
+CT_NEWLIB_PATCH_BUNDLED
+CT_NEWLIB_PATCH_BUNDLED_LOCAL
+CT_NEWLIB_PATCH_GLOBAL
+CT_NEWLIB_PATCH_LOCAL
+CT_NEWLIB_PATCH_LOCAL_BUNDLED
+CT_NEWLIB_PATCH_NONE
+CT_NEWLIB_PATCH_ORDER
+CT_NEWLIB_PKG_NAME
+CT_NEWLIB_REQUIRE_2_0_or_later
+CT_NEWLIB_REQUIRE_2_0_or_older
+CT_NEWLIB_REQUIRE_2_1_or_later
+CT_NEWLIB_REQUIRE_2_1_or_older
+CT_NEWLIB_REQUIRE_2_2_or_later
+CT_NEWLIB_REQUIRE_2_2_or_older
+CT_NEWLIB_REQUIRE_later_than_2_0
+CT_NEWLIB_REQUIRE_later_than_2_1
+CT_NEWLIB_REQUIRE_later_than_2_2
+CT_NEWLIB_REQUIRE_older_than_2_0
+CT_NEWLIB_REQUIRE_older_than_2_1
+CT_NEWLIB_REQUIRE_older_than_2_2
+CT_NEWLIB_SIGNATURE_FORMAT
+CT_NEWLIB_SRC_CUSTOM
+CT_NEWLIB_SRC_DEVEL
+CT_NEWLIB_SRC_RELEASE
+CT_NEWLIB_USE
+CT_NEWLIB_USE_LINARO
+CT_NEWLIB_USE_REDHAT
+CT_NEWLIB_VERSION
+CT_NEWLIB_VERY_NEW
+CT_NEWLIB_VERY_OLD
+CT_NEWLIB_V_1_17
+CT_NEWLIB_V_1_18
+CT_NEWLIB_V_1_19
+CT_NEWLIB_V_1_20
+CT_NEWLIB_V_2_0
+CT_NEWLIB_V_2_1
+CT_NEWLIB_V_2_2
+CT_NEWLIB_V_2_3
+CT_NEWLIB_V_2_4
+CT_NEWLIB_V_2_5
+CT_NEWLIB_V_3_0
+CT_NEWLIB_V_3_1
+CT_NEWLIB_later_than_2_0
+CT_NEWLIB_later_than_2_1
+CT_NEWLIB_later_than_2_2
+CT_NEWLIB_older_than_2_0
+CT_NEWLIB_older_than_2_1
+CT_NEWLIB_older_than_2_2
+CT_NO_OVERRIDE_LC_MESSAGES
+CT_OBSOLETE
+CT_OMIT_TARGET_ARCH
+CT_OMIT_TARGET_VENDOR
+CT_ONLY_DOWNLOAD
+CT_ONLY_EXTRACT
+CT_OVERLAY_LOCATION
+CT_OVERLAY_NAME
+CT_OVERRIDE_CONFIG_GUESS_SUB
+CT_PARALLEL_JOBS
+CT_PATCH_BUNDLED
+CT_PATCH_BUNDLED_LOCAL
+CT_PATCH_LOCAL
+CT_PATCH_LOCAL_BUNDLED
+CT_PATCH_NONE
+CT_PATCH_ORDER
+CT_PATCH_USE_LOCAL
+CT_PREFIX_DIR
+CT_PREFIX_DIR_RO
+CT_REMOVE_DOCS
+CT_RM_RF_PREFIX_DIR
+CT_SAVE_TARBALLS
+CT_SHARED_LIBS
+CT_SHOW_CT_VERSION
+CT_STATIC_TOOLCHAIN
+CT_STRACE_ARCHIVE_DIRNAME
+CT_STRACE_ARCHIVE_FILENAME
+CT_STRACE_ARCHIVE_FORMATS
+CT_STRACE_CUSTOM_LOCATION
+CT_STRACE_DEVEL_BOOTSTRAP
+CT_STRACE_DEVEL_BRANCH
+CT_STRACE_DEVEL_REVISION
+CT_STRACE_DEVEL_SUBDIR
+CT_STRACE_DEVEL_URL
+CT_STRACE_DEVEL_VCS
+CT_STRACE_DEVEL_VCS_cvs
+CT_STRACE_DEVEL_VCS_git
+CT_STRACE_DEVEL_VCS_hg
+CT_STRACE_DEVEL_VCS_svn
+CT_STRACE_DIR_NAME
+CT_STRACE_MIRRORS
+CT_STRACE_PATCH_BUNDLED
+CT_STRACE_PATCH_BUNDLED_LOCAL
+CT_STRACE_PATCH_GLOBAL
+CT_STRACE_PATCH_LOCAL
+CT_STRACE_PATCH_LOCAL_BUNDLED
+CT_STRACE_PATCH_NONE
+CT_STRACE_PATCH_ORDER
+CT_STRACE_PKG_NAME
+CT_STRACE_SIGNATURE_FORMAT
+CT_STRACE_SRC_CUSTOM
+CT_STRACE_SRC_DEVEL
+CT_STRACE_SRC_RELEASE
+CT_STRACE_VERSION
+CT_STRACE_VERY_NEW
+CT_STRACE_VERY_OLD
+CT_STRACE_V_4_10
+CT_STRACE_V_4_11
+CT_STRACE_V_4_12
+CT_STRACE_V_4_13
+CT_STRACE_V_4_14
+CT_STRACE_V_4_15
+CT_STRACE_V_4_16
+CT_STRACE_V_4_17
+CT_STRACE_V_4_18
+CT_STRACE_V_4_19
+CT_STRACE_V_4_20
+CT_STRACE_V_4_21
+CT_STRACE_V_4_22
+CT_STRACE_V_4_23
+CT_STRACE_V_4_24
+CT_STRACE_V_4_25
+CT_STRACE_V_4_26
+CT_STRACE_V_4_5_20
+CT_STRACE_V_4_6
+CT_STRACE_V_4_7
+CT_STRACE_V_4_8
+CT_STRACE_V_4_9
+CT_STRIP_HOST_TOOLCHAIN_EXECUTABLES
+CT_STRIP_TARGET_TOOLCHAIN_EXECUTABLES
+CT_SYSROOT_DIR_PREFIX
+CT_SYSROOT_NAME
+CT_TARBALLS_BUILDROOT_LAYOUT
+CT_TARGET_ALIAS
+CT_TARGET_ALIAS_SED_EXPR
+CT_TARGET_CFLAGS
+CT_TARGET_LDFLAGS
+CT_TARGET_SKIP_CONFIG_SUB
+CT_TARGET_USE_OVERLAY
+CT_TARGET_VENDOR
+CT_TEST_SUITE
+CT_TEST_SUITE_GCC
+CT_THREADS
+CT_THREADS_LT
+CT_THREADS_NATIVE
+CT_THREADS_NONE
+CT_THREADS_POSIX
+CT_TOOLCHAIN_BUGURL
+CT_TOOLCHAIN_ENABLE_NLS
+CT_TOOLCHAIN_PKGVERSION
+CT_TOOLCHAIN_TYPE
+CT_UCLIBC_0_9_33_2_or_later
+CT_UCLIBC_0_9_33_2_or_older
+CT_UCLIBC_1_0_0_or_later
+CT_UCLIBC_1_0_0_or_older
+CT_UCLIBC_1_0_15_or_later
+CT_UCLIBC_1_0_15_or_older
+CT_UCLIBC_1_0_21_or_later
+CT_UCLIBC_1_0_21_or_older
+CT_UCLIBC_1_0_23_or_later
+CT_UCLIBC_1_0_23_or_older
+CT_UCLIBC_ARCHIVE_DIRNAME
+CT_UCLIBC_ARCHIVE_FILENAME
+CT_UCLIBC_ARCHIVE_FORMATS
+CT_UCLIBC_CUSTOM_LOCATION
+CT_UCLIBC_DEVEL_BOOTSTRAP
+CT_UCLIBC_DEVEL_BRANCH
+CT_UCLIBC_DEVEL_REVISION
+CT_UCLIBC_DEVEL_SUBDIR
+CT_UCLIBC_DEVEL_URL
+CT_UCLIBC_DEVEL_VCS
+CT_UCLIBC_DEVEL_VCS_cvs
+CT_UCLIBC_DEVEL_VCS_git
+CT_UCLIBC_DEVEL_VCS_hg
+CT_UCLIBC_DEVEL_VCS_svn
+CT_UCLIBC_DIR_NAME
+CT_UCLIBC_MERGED_LINUXTHREADS
+CT_UCLIBC_MIRRORS
+CT_UCLIBC_NG_ARCHIVE_DIRNAME
+CT_UCLIBC_NG_ARCHIVE_FILENAME
+CT_UCLIBC_NG_ARCHIVE_FORMATS
+CT_UCLIBC_NG_CUSTOM_LOCATION
+CT_UCLIBC_NG_DEVEL_BOOTSTRAP
+CT_UCLIBC_NG_DEVEL_BRANCH
+CT_UCLIBC_NG_DEVEL_REVISION
+CT_UCLIBC_NG_DEVEL_SUBDIR
+CT_UCLIBC_NG_DEVEL_URL
+CT_UCLIBC_NG_DEVEL_VCS
+CT_UCLIBC_NG_DEVEL_VCS_cvs
+CT_UCLIBC_NG_DEVEL_VCS_git
+CT_UCLIBC_NG_DEVEL_VCS_hg
+CT_UCLIBC_NG_DEVEL_VCS_svn
+CT_UCLIBC_NG_MIRRORS
+CT_UCLIBC_NG_PATCH_BUNDLED
+CT_UCLIBC_NG_PATCH_BUNDLED_LOCAL
+CT_UCLIBC_NG_PATCH_GLOBAL
+CT_UCLIBC_NG_PATCH_LOCAL
+CT_UCLIBC_NG_PATCH_LOCAL_BUNDLED
+CT_UCLIBC_NG_PATCH_NONE
+CT_UCLIBC_NG_PATCH_ORDER
+CT_UCLIBC_NG_PKG_NAME
+CT_UCLIBC_NG_SIGNATURE_FORMAT
+CT_UCLIBC_NG_SRC_CUSTOM
+CT_UCLIBC_NG_SRC_DEVEL
+CT_UCLIBC_NG_SRC_RELEASE
+CT_UCLIBC_NG_VERSION
+CT_UCLIBC_NG_VERY_NEW
+CT_UCLIBC_NG_VERY_OLD
+CT_UCLIBC_NG_V_1_0_25
+CT_UCLIBC_NG_V_1_0_26
+CT_UCLIBC_NG_V_1_0_27
+CT_UCLIBC_NG_V_1_0_28
+CT_UCLIBC_NG_V_1_0_29
+CT_UCLIBC_NG_V_1_0_30
+CT_UCLIBC_NG_V_1_0_31
+CT_UCLIBC_PATCH_BUNDLED
+CT_UCLIBC_PATCH_BUNDLED_LOCAL
+CT_UCLIBC_PATCH_GLOBAL
+CT_UCLIBC_PATCH_LOCAL
+CT_UCLIBC_PATCH_LOCAL_BUNDLED
+CT_UCLIBC_PATCH_NONE
+CT_UCLIBC_PATCH_ORDER
+CT_UCLIBC_PKG_NAME
+CT_UCLIBC_REQUIRE_0_9_33_2_or_later
+CT_UCLIBC_REQUIRE_0_9_33_2_or_older
+CT_UCLIBC_REQUIRE_1_0_0_or_later
+CT_UCLIBC_REQUIRE_1_0_0_or_older
+CT_UCLIBC_REQUIRE_1_0_15_or_later
+CT_UCLIBC_REQUIRE_1_0_15_or_older
+CT_UCLIBC_REQUIRE_1_0_21_or_later
+CT_UCLIBC_REQUIRE_1_0_21_or_older
+CT_UCLIBC_REQUIRE_1_0_23_or_later
+CT_UCLIBC_REQUIRE_1_0_23_or_older
+CT_UCLIBC_REQUIRE_later_than_0_9_33_2
+CT_UCLIBC_REQUIRE_later_than_1_0_0
+CT_UCLIBC_REQUIRE_later_than_1_0_15
+CT_UCLIBC_REQUIRE_later_than_1_0_21
+CT_UCLIBC_REQUIRE_later_than_1_0_23
+CT_UCLIBC_REQUIRE_older_than_0_9_33_2
+CT_UCLIBC_REQUIRE_older_than_1_0_0
+CT_UCLIBC_REQUIRE_older_than_1_0_15
+CT_UCLIBC_REQUIRE_older_than_1_0_21
+CT_UCLIBC_REQUIRE_older_than_1_0_23
+CT_UCLIBC_SIGNATURE_FORMAT
+CT_UCLIBC_SRC_CUSTOM
+CT_UCLIBC_SRC_DEVEL
+CT_UCLIBC_SRC_RELEASE
+CT_UCLIBC_USE
+CT_UCLIBC_USE_UCLIBC_NG_ORG
+CT_UCLIBC_USE_UCLIBC_ORG
+CT_UCLIBC_VERSION
+CT_UCLIBC_VERY_NEW
+CT_UCLIBC_VERY_OLD
+CT_UCLIBC_V_0_9_33_2
+CT_UCLIBC_later_than_0_9_33_2
+CT_UCLIBC_later_than_1_0_0
+CT_UCLIBC_later_than_1_0_15
+CT_UCLIBC_later_than_1_0_21
+CT_UCLIBC_later_than_1_0_23
+CT_UCLIBC_older_than_0_9_33_2
+CT_UCLIBC_older_than_1_0_0
+CT_UCLIBC_older_than_1_0_15
+CT_UCLIBC_older_than_1_0_21
+CT_UCLIBC_older_than_1_0_23
+CT_USE_MIRROR
+CT_USE_PIPES
+CT_USE_SYSROOT
+CT_VCHECK
+CT_VERIFY_DOWNLOAD_DIGEST
+CT_VERIFY_DOWNLOAD_DIGEST_ALG
+CT_VERIFY_DOWNLOAD_DIGEST_MD5
+CT_VERIFY_DOWNLOAD_DIGEST_SHA1
+CT_VERIFY_DOWNLOAD_DIGEST_SHA256
+CT_VERIFY_DOWNLOAD_DIGEST_SHA512
+CT_VERIFY_DOWNLOAD_SIGNATURE
+CT_VERSION
+CT_WANTS_STATIC_LINK
+CT_WANTS_STATIC_LINK_CXX
+CT_WINDOWS
+CT_WORK_DIR
+CT_XTENSA_CUSTOM
+CT_ZLIB
+CT_ZLIB_ARCHIVE_DIRNAME
+CT_ZLIB_ARCHIVE_FILENAME
+CT_ZLIB_ARCHIVE_FORMATS
+CT_ZLIB_CUSTOM_LOCATION
+CT_ZLIB_DEVEL_BOOTSTRAP
+CT_ZLIB_DEVEL_BRANCH
+CT_ZLIB_DEVEL_REVISION
+CT_ZLIB_DEVEL_SUBDIR
+CT_ZLIB_DEVEL_URL
+CT_ZLIB_DEVEL_VCS
+CT_ZLIB_DEVEL_VCS_cvs
+CT_ZLIB_DEVEL_VCS_git
+CT_ZLIB_DEVEL_VCS_hg
+CT_ZLIB_DEVEL_VCS_svn
+CT_ZLIB_DIR_NAME
+CT_ZLIB_MIRRORS
+CT_ZLIB_NEEDED
+CT_ZLIB_PATCH_BUNDLED
+CT_ZLIB_PATCH_BUNDLED_LOCAL
+CT_ZLIB_PATCH_GLOBAL
+CT_ZLIB_PATCH_LOCAL
+CT_ZLIB_PATCH_LOCAL_BUNDLED
+CT_ZLIB_PATCH_NONE
+CT_ZLIB_PATCH_ORDER
+CT_ZLIB_PKG_NAME
+CT_ZLIB_SIGNATURE_FORMAT
+CT_ZLIB_SRC_CUSTOM
+CT_ZLIB_SRC_DEVEL
+CT_ZLIB_SRC_RELEASE
+CT_ZLIB_VERSION
+CT_ZLIB_VERY_NEW
+CT_ZLIB_VERY_OLD
+CT_ZLIB_V_1_2_11
diff --git a/testing/upgrade/run.sh b/testing/upgrade/run.sh
index 98da8ae..0d3173f 100755
--- a/testing/upgrade/run.sh
+++ b/testing/upgrade/run.sh
@@ -117,19 +117,28 @@ curver=`sed -n 's,export CT_CONFIG_VERSION_CURRENT=,,p' ${CTNG}`
if [ -z "${curver}" ]; then
echo "Cannot determine config version" >&${LOG}
fail
-elif [ ! -r "kconfig-list/${curver}" ]; then
- echo "No saved kconfig data for version ${curver}" >&${LOG}
- fail
else
grep -hr '^\(menu\)\?config ' "${dirs[@]}" ../../config | \
grep -v '^Binary ' | \
sed 's,^.* ,CT_,' | LANG=C sort | uniq > logs/current-kconfig-list
- diff -U 10000 "kconfig-list/${curver}" logs/current-kconfig-list | \
- grep '^-CT_' > logs/current-kconfig-retired || true
- nretired=`wc -l logs/current-kconfig-retired | sed 's/ .*//'`
- echo "${nretired} kconfig options have been removed without bumping the config version" >&${LOG}
- if [ "${nretired}" != "0" ]; then
+ if [ ! -r "kconfig-list/${curver}" ]; then
+ echo "No saved kconfig data for version ${curver}" >&${LOG}
+ if [ -r "kconfig-list/$[ curver - 1 ]" ]; then
+ echo "Comparing with previous version $[ curver - 1 ]"
+ echo "Verify that the following options are handled:"
+ diff -U 10000 "kconfig-list/$[ curver - 1 ]" logs/current-kconfig-list | \
+ grep '^-CT_' || true
+ echo "Then rename logs/current-kconfig-list to kconfig-list/${curver}"
+ fi >&${LOG}
fail
+ else
+ diff -U 10000 "kconfig-list/${curver}" logs/current-kconfig-list | \
+ grep '^-CT_' > logs/current-kconfig-retired || true
+ nretired=`wc -l logs/current-kconfig-retired | sed 's/ .*//'`
+ if [ "${nretired}" != "0" ]; then
+ echo "${nretired} kconfig options have been removed without bumping the config version" >&${LOG}
+ fail
+ fi
fi
fi
finish