From 89c590cda8f732820f899bb75d60549bafb21d6e Mon Sep 17 00:00:00 2001 From: Travis Cross Date: Tue, 8 May 2012 19:40:43 +0000 Subject: [PATCH] bootstrap.sh: wait better Be more explicit about what we're waiting for, among other changes. This appears to fully correct the wait issues. --- bootstrap.sh | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) 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 }