1*49cdfc7eSAndroid Build Coastguard Worker#!/bin/sh 2*49cdfc7eSAndroid Build Coastguard Worker# Copyright (c) 2023 Petr Vorel <[email protected]> 3*49cdfc7eSAndroid Build Coastguard Worker 4*49cdfc7eSAndroid Build Coastguard Workerask() 5*49cdfc7eSAndroid Build Coastguard Worker{ 6*49cdfc7eSAndroid Build Coastguard Worker local msg="$1" 7*49cdfc7eSAndroid Build Coastguard Worker local answer 8*49cdfc7eSAndroid Build Coastguard Worker 9*49cdfc7eSAndroid Build Coastguard Worker printf "\n$msg. Proceed? [N/y]: " 10*49cdfc7eSAndroid Build Coastguard Worker read answer 11*49cdfc7eSAndroid Build Coastguard Worker case "$answer" in 12*49cdfc7eSAndroid Build Coastguard Worker [Yy]*) : ;; 13*49cdfc7eSAndroid Build Coastguard Worker *) exit 2 14*49cdfc7eSAndroid Build Coastguard Worker esac 15*49cdfc7eSAndroid Build Coastguard Worker} 16*49cdfc7eSAndroid Build Coastguard Worker 17*49cdfc7eSAndroid Build Coastguard Workerquit() 18*49cdfc7eSAndroid Build Coastguard Worker{ 19*49cdfc7eSAndroid Build Coastguard Worker printf "\n$@\n" >&2 20*49cdfc7eSAndroid Build Coastguard Worker exit 1 21*49cdfc7eSAndroid Build Coastguard Worker} 22*49cdfc7eSAndroid Build Coastguard Worker 23*49cdfc7eSAndroid Build Coastguard Workerrod() 24*49cdfc7eSAndroid Build Coastguard Worker{ 25*49cdfc7eSAndroid Build Coastguard Worker eval "$@" || quit "$@ failed" 26*49cdfc7eSAndroid Build Coastguard Worker} 27*49cdfc7eSAndroid Build Coastguard Worker 28*49cdfc7eSAndroid Build Coastguard Workertitle() 29*49cdfc7eSAndroid Build Coastguard Worker{ 30*49cdfc7eSAndroid Build Coastguard Worker echo "===== $1 =====" 31*49cdfc7eSAndroid Build Coastguard Worker} 32