re-apply "Make sure we have ${destdir} on copy_to_chroot and simplify exec_in_chroot.""
authorRick Farina (Zero_Chaos) <zerochaos@gentoo.org>
Fri, 2 Nov 2012 00:57:44 +0000 (20:57 -0400)
committerRick Farina (Zero_Chaos) <zerochaos@gentoo.org>
Fri, 2 Nov 2012 00:57:44 +0000 (20:57 -0400)
targets/support/functions.sh

index a0eaae28c391ef0c52e489d981c312d65c23c539..af57c10f52de2141f34bb8e492db2e0ff5337061 100644 (file)
@@ -1,6 +1,7 @@
 copy_to_chroot() {
        local src_file=$1
        local dest_dir=${clst_chroot_path}${2:-/tmp}
+       mkdir -p ${dest_dir}
        echo "copying ${src_file##*/} to ${dest_dir}"
        cp -pPR "${src_file}" "${dest_dir}"/
 }
@@ -18,34 +19,19 @@ exec_in_chroot(){
 # copies the file to the /tmp directory of the chroot
 # and executes it.
        local file_name=$(basename ${1})
-       local subdir=${2#/}
-
-       if [ "${subdir}" != "" ]
-       then
-               copy_to_chroot ${1} ${subdir}/tmp/
-               chroot_path=${clst_chroot_path}${subdir}
-               copy_to_chroot ${clst_sharedir}/targets/support/chroot-functions.sh \
-                       ${subdir}/tmp/
-               echo "Running ${file_name} in chroot ${chroot_path}"
-               ${clst_CHROOT} ${chroot_path} /tmp/${file_name} || exit 1
-       else
-               copy_to_chroot ${1} tmp/
-               chroot_path=${clst_chroot_path}
-               copy_to_chroot ${clst_sharedir}/targets/support/chroot-functions.sh \
-                       tmp/
-               echo "Running ${file_name} in chroot ${chroot_path}"
-               ${clst_CHROOT} ${chroot_path}/ /tmp/${file_name} || exit 1
-       fi
-
-       rm -f ${chroot_path}/tmp/${file_name}
-       if [ "${subdir}" != "" ]
-       then
-               delete_from_chroot ${subdir}/tmp/${file_name}
-               delete_from_chroot ${subdir}/tmp/chroot-functions.sh
-       else
-               delete_from_chroot tmp/chroot-functions.sh
-               delete_from_chroot tmp/${file_name}
-       fi
+       local subdir=${2}
+       local destdir=${subdir}/tmp
+       destdir=${destdir#/}
+
+       copy_to_chroot ${1} ${destdir}
+       chroot_path=${clst_chroot_path}${subdir}
+       copy_to_chroot ${clst_sharedir}/targets/support/chroot-functions.sh \
+               ${destdir}
+       echo "Running ${file_name} in chroot ${chroot_path}"
+       ${clst_CHROOT} ${chroot_path} ${destdir}/${file_name} || exit 1
+
+       delete_from_chroot ${destdir}/${file_name}
+       delete_from_chroot ${destdir}/chroot-functions.sh
 }
 
 #return codes