aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/build-otp
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/build-otp')
-rwxr-xr-xscripts/build-otp31
1 files changed, 27 insertions, 4 deletions
diff --git a/scripts/build-otp b/scripts/build-otp
index 388fa8c276..92031c79c8 100755
--- a/scripts/build-otp
+++ b/scripts/build-otp
@@ -1,18 +1,41 @@
#!/bin/bash
+function progress {
+ local file=$1
+ ls=$(ls -l $file)
+ while [ true ]; do
+ sleep 10
+ new_ls=$(ls -l $file)
+ if [ "$new_ls" != "$ls" ]; then
+ echo -n "."
+ fi
+ ls="$new_ls"
+ done
+}
+
function do_and_log {
- log="scripts/latest-log.$$"
- echo -n "$1... "
+ log="logs/latest-log.$$"
+ echo "" >$log
+ echo -n "$1..."
+ (progress $log) &
+ pid=$!
+ disown
if ./otp_build $2 $3 >$log 2>&1; then
- echo "done."
+ kill $pid >/dev/null 2>&1
+ echo " done."
else
- echo "failed."
+ kill $pid >/dev/null 2>&1
+ echo " failed."
tail -n 200 $log
echo "*** Failed ***"
exit 1
fi
}
+if [ ! -d "logs" ]; then
+ mkdir logs
+fi
+
do_and_log "Autoconfing" autoconf
do_and_log "Configuring" configure
do_and_log "Building OTP" boot -a