diff options
| -rw-r--r-- | meta/recipes-devtools/autoconf/autoconf/performance.patch | 60 | ||||
| -rw-r--r-- | meta/recipes-devtools/autoconf/autoconf_2.69.bb | 1 |
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 @@ | |||
| 1 | The check for solaris 'print' causes significant problems on a linux machine | ||
| 2 | with dash as /bin/sh since it triggers the execution of "print" which on some | ||
| 3 | linux systems is a perl script which is part of mailcap. Worse, this perl | ||
| 4 | script calls "which file" and if successful ignores the path file was found | ||
| 5 | in and just runs "file" without a path. Each exection causes PATH to be searched. | ||
| 6 | |||
| 7 | Simply assuming the shell's printf function works cuts out all the fork overhead | ||
| 8 | and when parallel tasks are running, this overhead appears to be significant. | ||
| 9 | |||
| 10 | RP | ||
| 11 | 2015/11/28 | ||
| 12 | Upstream-Status: Inappropriate | ||
| 13 | |||
| 14 | Index: 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 | ||
| 19 | SRC_URI[md5sum] = "82d05e03b93e45f5a39b828dc9c6c29b" | 20 | SRC_URI[md5sum] = "82d05e03b93e45f5a39b828dc9c6c29b" |
