summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta/recipes-devtools/autoconf/autoconf/performance.patch60
-rw-r--r--meta/recipes-devtools/autoconf/autoconf_2.69.bb1
2 files changed, 61 insertions, 0 deletions
diff --git a/meta/recipes-devtools/autoconf/autoconf/performance.patch b/meta/recipes-devtools/autoconf/autoconf/performance.patch
new file mode 100644
index 0000000000..1842fe92b7
--- /dev/null
+++ b/meta/recipes-devtools/autoconf/autoconf/performance.patch
@@ -0,0 +1,60 @@
1The check for solaris 'print' causes significant problems on a linux machine
2with dash as /bin/sh since it triggers the execution of "print" which on some
3linux systems is a perl script which is part of mailcap. Worse, this perl
4script calls "which file" and if successful ignores the path file was found
5in and just runs "file" without a path. Each exection causes PATH to be searched.
6
7Simply assuming the shell's printf function works cuts out all the fork overhead
8and when parallel tasks are running, this overhead appears to be significant.
9
10RP
112015/11/28
12Upstream-Status: Inappropriate
13
14Index: autoconf-2.69/lib/m4sugar/m4sh.m4
15===================================================================
16--- autoconf-2.69.orig/lib/m4sugar/m4sh.m4
17+++ autoconf-2.69/lib/m4sugar/m4sh.m4
18@@ -1045,40 +1045,8 @@ m4_defun([_AS_ECHO_PREPARE],
19 [[as_nl='
20 '
21 export as_nl
22-# Printing a long string crashes Solaris 7 /usr/bin/printf.
23-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
24-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
25-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
26-# Prefer a ksh shell builtin over an external printf program on Solaris,
27-# but without wasting forks for bash or zsh.
28-if test -z "$BASH_VERSION$ZSH_VERSION" \
29- && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
30- as_echo='print -r --'
31- as_echo_n='print -rn --'
32-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
33- as_echo='printf %s\n'
34- as_echo_n='printf %s'
35-else
36- if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
37- as_echo_body='eval /usr/ucb/echo -n "$][1$as_nl"'
38- as_echo_n='/usr/ucb/echo -n'
39- else
40- as_echo_body='eval expr "X$][1" : "X\\(.*\\)"'
41- as_echo_n_body='eval
42- arg=$][1;
43- case $arg in @%:@(
44- *"$as_nl"*)
45- expr "X$arg" : "X\\(.*\\)$as_nl";
46- arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
47- esac;
48- expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
49- '
50- export as_echo_n_body
51- as_echo_n='sh -c $as_echo_n_body as_echo'
52- fi
53- export as_echo_body
54- as_echo='sh -c $as_echo_body as_echo'
55-fi
56+as_echo='printf %s\n'
57+as_echo_n='printf %s'
58 ]])# _AS_ECHO_PREPARE
59
60
diff --git a/meta/recipes-devtools/autoconf/autoconf_2.69.bb b/meta/recipes-devtools/autoconf/autoconf_2.69.bb
index b9f6883c39..adb6ad7ccf 100644
--- a/meta/recipes-devtools/autoconf/autoconf_2.69.bb
+++ b/meta/recipes-devtools/autoconf/autoconf_2.69.bb
@@ -14,6 +14,7 @@ SRC_URI += "file://autoreconf-include.patch \
14 file://preferbash.patch \ 14 file://preferbash.patch \
15 file://autotest-automake-result-format.patch \ 15 file://autotest-automake-result-format.patch \
16 file://add_musl_config.patch \ 16 file://add_musl_config.patch \
17 file://performance.patch \
17 " 18 "
18 19
19SRC_URI[md5sum] = "82d05e03b93e45f5a39b828dc9c6c29b" 20SRC_URI[md5sum] = "82d05e03b93e45f5a39b828dc9c6c29b"