From feb0328d7a519eb63999fdbc450cd706bec8df51 Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN\"" Date: Tue, 7 Aug 2007 18:05:41 +0000 Subject: 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. 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 -- cgit v0.10.2-6-g49f6