diff --git a/config/libc/uClibc.in b/config/libc/uClibc.in index 219426a0..e830662c 100644 --- a/config/libc/uClibc.in +++ b/config/libc/uClibc.in @@ -35,7 +35,8 @@ choice prompt "uClibc Version Name" config LIBC_UCLIBC_CUSTOM_UCLIBC - bool "uClibc" + bool "uClibc (OBSOLETE)" + depends on OBSOLETE select LIBC_UCLIBC_0_9_33_2_or_later config LIBC_UCLIBC_CUSTOM_UCLIBC_NG @@ -100,7 +101,8 @@ config LIBC_UCLIBC_NG_V_1_0_20 config LIBC_UCLIBC_V_0_9_33_2 bool - prompt "0.9.33.2" + prompt "0.9.33.2 (OBSOLETE)" + depends on OBSOLETE select LIBC_UCLIBC_0_9_33_2_or_later endchoice diff --git a/contrib/uClibc-defconfigs/uClibc-ng.config b/contrib/uClibc-defconfigs/uClibc-ng.config index c17603db..1f0a8c17 100644 --- a/contrib/uClibc-defconfigs/uClibc-ng.config +++ b/contrib/uClibc-defconfigs/uClibc-ng.config @@ -5,7 +5,6 @@ KERNEL_HEADERS="/usr/src/linux/include" LDSO_RUNPATH=y LDSO_RUNPATH_OF_EXECUTABLE=y MALLOC_GLIBC_COMPAT=y -UCLIBC_HAS_OBSTACK=y UCLIBC_HAS_UTMPX=y UCLIBC_HAS_UTMP=y UCLIBC_SUSV2_LEGACY=y diff --git a/patches/uClibc/0.9.33.2/999-make-olddefconfig.patch b/patches/uClibc/0.9.33.2/999-make-olddefconfig.patch new file mode 100644 index 00000000..8bc87ec1 --- /dev/null +++ b/patches/uClibc/0.9.33.2/999-make-olddefconfig.patch @@ -0,0 +1,41 @@ +diff -urpN uClibc-0.9.33.2.orig/extra/config/conf.c uClibc-0.9.33.2/extra/config/conf.c +--- uClibc-0.9.33.2.orig/extra/config/conf.c 2017-02-04 12:57:38.488808014 -0800 ++++ uClibc-0.9.33.2/extra/config/conf.c 2017-02-04 20:26:28.613244457 -0800 +@@ -435,6 +435,7 @@ int main(int ac, char **av) + const char *name; + const char *configname = conf_get_configname(); + struct stat tmpstat; ++ int olddefconfig = 0; + + setlocale(LC_ALL, ""); + bindtextdomain(PACKAGE, LOCALEDIR); +@@ -451,6 +452,7 @@ int main(int ac, char **av) + break; + case 'd': + input_mode = set_default; ++ olddefconfig = 1; + break; + case 'D': + input_mode = set_default; +@@ -514,7 +516,7 @@ int main(int ac, char **av) + switch (input_mode) { + case set_default: + if (!defconfig_file) +- defconfig_file = conf_get_default_confname(); ++ defconfig_file = olddefconfig ? NULL : conf_get_default_confname(); + if (conf_read(defconfig_file)) { + printf(_("***\n" + "*** Can't find default configuration \"%s\"!\n" +diff -urpN uClibc-0.9.33.2.orig/Makefile.in uClibc-0.9.33.2/Makefile.in +--- uClibc-0.9.33.2.orig/Makefile.in 2017-02-04 12:57:38.484807980 -0800 ++++ uClibc-0.9.33.2/Makefile.in 2017-02-04 12:59:34.625789324 -0800 +@@ -460,6 +460,9 @@ allyesconfig: $(conf) + allnoconfig: $(conf) + $(Q)$< -n extra/Configs/Config.in + ++olddefconfig: $(conf) ++ $(Q)$< -d extra/Configs/Config.in ++ + defconfig: $(conf) + $(Q)$< -D extra/Configs/defconfigs/$(ARCH)/$@ extra/Configs/Config.in + diff --git a/scripts/build/libc/uClibc.sh b/scripts/build/libc/uClibc.sh index e58912cb..e87abafa 100644 --- a/scripts/build/libc/uClibc.sh +++ b/scripts/build/libc/uClibc.sh @@ -138,7 +138,7 @@ do_libc_backend_once() { fi manage_uClibc_config "${CT_LIBC_UCLIBC_CONFIG_FILE}" .config "${multi_flags}" - CT_DoYes | CT_DoExecLog ALL make "${make_args[@]}" oldconfig + CT_DoExecLog ALL make "${make_args[@]}" olddefconfig # Now filter the multilib flags. manage_uClibc_config did the opposite of # what Rules.mak in uClibc would do: by the multilib's CFLAGS, it determined diff --git a/scripts/functions b/scripts/functions index 9489f186..9f852b39 100644 --- a/scripts/functions +++ b/scripts/functions @@ -585,14 +585,6 @@ CT_DoForceRmdir() { done } -# Echoes the specified string on stdout until the pipe breaks. -# Doesn't fail -# $1: string to echo -# Usage: CT_DoYes "" |make oldconfig -CT_DoYes() { - yes "$1" || true -} - # Add the specified directory to LD_LIBRARY_PATH, and export it # If the specified patch is already present, just export # $1: path to add