commit:     1d4ba1fa03d91a8cef9df6eb43c48d1064264812
Author:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Sat Aug  1 22:29:13 2020 +0000
Commit:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Sat Aug  1 22:29:13 2020 +0000
URL:        https://gitweb.gentoo.org/proj/genkernel.git/commit/?id=1d4ba1fa

gen_package.sh: gen_kerncache_extract_kernel(): Create target directory if 
missing

Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org>

 gen_package.sh | 17 ++++++++++-------
 1 file changed, 10 insertions(+), 7 deletions(-)

diff --git a/gen_package.sh b/gen_package.sh
index 271f038..5182d51 100755
--- a/gen_package.sh
+++ b/gen_package.sh
@@ -204,15 +204,18 @@ gen_kerncache_extract_kernel() {
 }
 
 gen_kerncache_extract_modules() {
-       print_info 1 "Extracting kerncache kernel modules from '${KERNCACHE}' 
..."
-       if [ -n "${INSTALL_MOD_PATH}" ]
+       local modules_dir=/lib
+       [ -n "${INSTALL_MOD_PATH}" ] && modules_dir="${INSTALL_MOD_PATH}/lib"
+
+       if [ ! -d "${modules_dir}" ]
        then
-               "${TAR_COMMAND}" -xf "${KERNCACHE}" --strip-components 1 -C 
"${INSTALL_MOD_PATH}"/lib \
-                       || gen_die "Failed to extract kerncache modules from 
'${KERNCACHE}' to '${INSTALL_MOD_PATH}/lib'!"
-       else
-               "${TAR_COMMAND}" -xf "${KERNCACHE}" --strip-components 1 -C 
/lib \
-                       || gen_die "Failed to extract kerncache modules from 
'${KERNCACHE}' to '${INSTALL_MOD_PATH}/lib'!"
+               mkdir -p "${modules_dir}" ||  gen_die "Failed to create 
'${modules_dir}'!"
        fi
+
+       print_info 1 "Extracting kerncache kernel modules from '${KERNCACHE}' 
into '${modules_dir}' ..."
+
+       "${TAR_COMMAND}" -xf "${KERNCACHE}" --strip-components 1 -C 
"${modules_dir}" \
+               || gen_die "Failed to extract kerncache modules from 
'${KERNCACHE}' to '${modules_dir}'!"
 }
 
 gen_kerncache_extract_config() {

Reply via email to