From: Travis Cross Date: Tue, 8 May 2012 19:40:43 +0000 (+0000) Subject: bootstrap.sh: wait better X-Git-Tag: v1.2.0~488 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=89c590cda8f732820f899bb75d60549bafb21d6e;p=thirdparty%2Ffreeswitch.git bootstrap.sh: wait better Be more explicit about what we're waiting for, among other changes. This appears to fully correct the wait issues. --- diff --git a/bootstrap.sh b/bootstrap.sh index b8f1dcd843..5aaed673c5 100755 --- a/bootstrap.sh +++ b/bootstrap.sh @@ -438,10 +438,16 @@ bootstrap_libs_post() { } bootstrap_libs() { + local jobs="" for i in ${SUBDIRS}; do case "$i" in apr|fs|libzrtp) - ${BGJOB} && wait + if ${BGJOB}; then + for x in $jobs; do + wait $jobs + done + fi + jobs="" bootstrap_$i continue ;; @@ -450,10 +456,16 @@ bootstrap_libs() { if ! ${BGJOB}; then libbootstrap ${i} ; bootstrap_libs_post ${i} else - ((libbootstrap ${i} ; bootstrap_libs_post ${i}) &) + (libbootstrap ${i} ; bootstrap_libs_post ${i}) & + local x=$! + jobs="$jobs $x" fi done - ${BGJOB} && wait + if ${BGJOB}; then + for x in $jobs; do + wait $x + done + fi } run() { @@ -468,7 +480,6 @@ run() { check_libtoolize print_autotools_vers bootstrap_libs - ${BGJOB} && wait return 0 }