summaryrefslogtreecommitdiffstats
path: root/bin/helper-functions.sh
diff options
context:
space:
mode:
Diffstat (limited to 'bin/helper-functions.sh')
-rw-r--r--bin/helper-functions.sh26
1 files changed, 13 insertions, 13 deletions
diff --git a/bin/helper-functions.sh b/bin/helper-functions.sh
index c7400fa4b..65f41f6d0 100644
--- a/bin/helper-functions.sh
+++ b/bin/helper-functions.sh
@@ -10,42 +10,42 @@ source "${PORTAGE_BIN_PATH:-/usr/lib/portage/bin}"/isolated-functions.sh
#
# API functions for doing parallel processing
#
-numjobs() {
+__numjobs() {
# Copied from eutils.eclass:makeopts_jobs()
local jobs=$(echo " ${MAKEOPTS} " | \
sed -r -n 's:.*[[:space:]](-j|--jobs[=[:space:]])[[:space:]]*([0-9]+).*:\2:p')
echo ${jobs:-1}
}
-multijob_init() {
+__multijob_init() {
# Setup a pipe for children to write their pids to when they finish.
mj_control_pipe=$(mktemp -t multijob.XXXXXX)
rm "${mj_control_pipe}"
mkfifo "${mj_control_pipe}"
- redirect_alloc_fd mj_control_fd "${mj_control_pipe}"
+ __redirect_alloc_fd mj_control_fd "${mj_control_pipe}"
rm -f "${mj_control_pipe}"
# See how many children we can fork based on the user's settings.
- mj_max_jobs=$(numjobs)
+ mj_max_jobs=$(__numjobs)
mj_num_jobs=0
}
-multijob_child_init() {
+__multijob_child_init() {
trap 'echo ${BASHPID} $? >&'${mj_control_fd} EXIT
trap 'exit 1' INT TERM
}
-multijob_finish_one() {
+__multijob_finish_one() {
local pid ret
read -r -u ${mj_control_fd} pid ret
: $(( --mj_num_jobs ))
return ${ret}
}
-multijob_finish() {
+__multijob_finish() {
local ret=0
while [[ ${mj_num_jobs} -gt 0 ]] ; do
- multijob_finish_one
+ __multijob_finish_one
: $(( ret |= $? ))
done
# Let bash clean up its internal child tracking state.
@@ -53,21 +53,21 @@ multijob_finish() {
return ${ret}
}
-multijob_post_fork() {
+__multijob_post_fork() {
: $(( ++mj_num_jobs ))
if [[ ${mj_num_jobs} -ge ${mj_max_jobs} ]] ; then
- multijob_finish_one
+ __multijob_finish_one
fi
return $?
}
-# @FUNCTION: redirect_alloc_fd
+# @FUNCTION: __redirect_alloc_fd
# @USAGE: <var> <file> [redirection]
# @DESCRIPTION:
# Find a free fd and redirect the specified file via it. Store the new
# fd in the specified variable. Useful for the cases where we don't care
# about the exact fd #.
-redirect_alloc_fd() {
+__redirect_alloc_fd() {
local var=$1 file=$2 redir=${3:-"<>"}
if [[ $(( (BASH_VERSINFO[0] << 8) + BASH_VERSINFO[1] )) -ge $(( (4 << 8) + 1 )) ]] ; then
@@ -82,7 +82,7 @@ redirect_alloc_fd() {
if [[ ! -e /dev/fd/${fd} ]] && [[ ! -L /dev/fd/${fd} ]] ; then
eval "exec ${fd}${redir}'${file}'" && break
fi
- [[ ${fd} -gt 1024 ]] && die "redirect_alloc_fd failed"
+ [[ ${fd} -gt 1024 ]] && die "__redirect_alloc_fd failed"
: $(( ++fd ))
done
: $(( ${var} = fd ))