summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYann E. MORIN" <yann.morin.1998@anciens.enib.fr>2007-08-07 18:05:41 (GMT)
committerYann E. MORIN" <yann.morin.1998@anciens.enib.fr>2007-08-07 18:05:41 (GMT)
commitfeb0328d7a519eb63999fdbc450cd706bec8df51 (patch)
tree45fb279fc532b06dde1a8f2487fc79672d52ac03
parenta43770ab06261620debcfe1a9bab28babf5ec37f (diff)
Make use of setsid to spawn removal processes: we don't want the rm's to stop if the main script fails and ends before all directories were removed.
-rwxr-xr-xscripts/crosstool.sh14
-rw-r--r--tools/populate.in2
2 files changed, 8 insertions, 8 deletions
diff --git a/scripts/crosstool.sh b/scripts/crosstool.sh
index 654efd2..3eabcec 100755
--- a/scripts/crosstool.sh
+++ b/scripts/crosstool.sh
@@ -147,7 +147,7 @@ CT_DoLog EXTRA "Preparing working directories"
if [ -d "${CT_BUILD_DIR}" ]; then
mv "${CT_BUILD_DIR}" "${CT_BUILD_DIR}.$$"
chmod -R u+w "${CT_BUILD_DIR}.$$"
- nohup rm -rf "${CT_BUILD_DIR}.$$" >/dev/null 2>&1 &
+ setsid nohup rm -rf "${CT_BUILD_DIR}.$$" >/dev/null 2>&1 &
fi
# Don't eradicate directories if we need to restart
@@ -158,28 +158,28 @@ if [ -z "${CT_RESTART}" ]; then
if [ "${CT_FORCE_DOWNLOAD}" = "y" -a -d "${CT_TARBALLS_DIR}" ]; then
mv "${CT_TARBALLS_DIR}" "${CT_TARBALLS_DIR}.$$"
chmod -R u+w "${CT_TARBALLS_DIR}.$$"
- nohup rm -rf "${CT_TARBALLS_DIR}.$$" >/dev/null 2>&1 &
+ setsid nohup rm -rf "${CT_TARBALLS_DIR}.$$" >/dev/null 2>&1 &
fi
if [ "${CT_FORCE_EXTRACT}" = "y" -a -d "${CT_SRC_DIR}" ]; then
mv "${CT_SRC_DIR}" "${CT_SRC_DIR}.$$"
chmod -R u+w "${CT_SRC_DIR}.$$"
- nohup rm -rf "${CT_SRC_DIR}.$$" >/dev/null 2>&1 &
+ setsid nohup rm -rf "${CT_SRC_DIR}.$$" >/dev/null 2>&1 &
fi
if [ -d "${CT_INSTALL_DIR}" ]; then
mv "${CT_INSTALL_DIR}" "${CT_INSTALL_DIR}.$$"
chmod -R u+w "${CT_INSTALL_DIR}.$$"
- nohup rm -rf "${CT_INSTALL_DIR}.$$" >/dev/null 2>&1 &
+ setsid nohup rm -rf "${CT_INSTALL_DIR}.$$" >/dev/null 2>&1 &
fi
if [ -d "${CT_DEBUG_INSTALL_DIR}" ]; then
mv "${CT_DEBUG_INSTALL_DIR}" "${CT_DEBUG_INSTALL_DIR}.$$"
chmod -R u+w "${CT_DEBUG_INSTALL_DIR}.$$"
- nohup rm -rf "${CT_DEBUG_INSTALL_DIR}.$$" >/dev/null 2>&1 &
+ setsid nohup rm -rf "${CT_DEBUG_INSTALL_DIR}.$$" >/dev/null 2>&1 &
fi
# In case we start anew, get rid of the previously saved state directory
if [ -d "${CT_STATE_DIR}" ]; then
mv "${CT_STATE_DIR}" "${CT_STATE_DIR}.$$"
chmod -R u+w "${CT_STATE_DIR}.$$"
- nohup rm -rf "${CT_STATE_DIR}.$$" >/dev/null 2>&1 &
+ setsid nohup rm -rf "${CT_STATE_DIR}.$$" >/dev/null 2>&1 &
fi
fi
@@ -364,7 +364,7 @@ if [ -z "${CT_RESTART}" ]; then
if [ "${CT_ONLY_DOWNLOAD}" != "y" ]; then
if [ "${CT_FORCE_EXTRACT}" = "y" ]; then
mv "${CT_SRC_DIR}" "${CT_SRC_DIR}.$$"
- nohup rm -rf "${CT_SRC_DIR}.$$" >/dev/null 2>&1
+ setsid nohup rm -rf "${CT_SRC_DIR}.$$" >/dev/null 2>&1
fi
CT_DoStep INFO "Extracting and patching toolchain components"
do_kernel_extract
diff --git a/tools/populate.in b/tools/populate.in
index 6d50fbe..690dc5f 100644
--- a/tools/populate.in
+++ b/tools/populate.in
@@ -71,7 +71,7 @@ fi
# Get rid of potentially older destination directory
if [ -d "${CT_ROOT_DST_DIR}" ]; then
mv "${CT_ROOT_DST_DIR}" "${CT_ROOT_DST_DIR}.$$"
- nohup rm -rf "${CT_ROOT_DST_DIR}.$$" >/dev/null 2>&1 &
+ setsid nohup rm -rf "${CT_ROOT_DST_DIR}.$$" >/dev/null 2>&1 &
fi
# Create the working copy