aboutsummaryrefslogtreecommitdiffstats
path: root/mkinitfs.in
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2014-03-24 10:05:15 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2014-03-24 10:05:15 +0000
commit8cb0e815133c1000a84f59939620ed8a32696e2d (patch)
tree1701613c192db446e8747a15646617886301a1a7 /mkinitfs.in
parent9e98184edd8ded24006cf028f8bf72a40bbd7ee6 (diff)
downloadmkinitfs-8cb0e815133c1000a84f59939620ed8a32696e2d.tar.bz2
mkinitfs-8cb0e815133c1000a84f59939620ed8a32696e2d.tar.xz
mkinitfs: make sure basedir is always set
and make it work with relative paths too
Diffstat (limited to 'mkinitfs.in')
-rwxr-xr-xmkinitfs.in18
1 files changed, 11 insertions, 7 deletions
diff --git a/mkinitfs.in b/mkinitfs.in
index aee3355..c0d00cf 100755
--- a/mkinitfs.in
+++ b/mkinitfs.in
@@ -41,7 +41,7 @@ initfs_base() {
mkdir -p $dirs
local oldpwd="$PWD"
- cd "${basedir:-/}"
+ cd "${basedir}"
for file in $(feature_files files); do
echo "${file#/}"
done | cpio -pdm "$tmpdir"
@@ -56,7 +56,7 @@ initfs_base() {
}
find_kmod_deps() {
- awk -v prepend="/lib/modules/$kernel/" -v modulesdep="$basedir/lib/modules/$kernel/modules.dep" '
+ awk -v prepend="/lib/modules/$kernel/" -v modulesdep="${basedir}lib/modules/$kernel/modules.dep" '
function recursedeps(k, j, dep) {
if (k in visited)
return;
@@ -108,11 +108,11 @@ initfs_kmods() {
rm -rf "$tmpdir"/lib/modules
# make sure we have modules.dep
if ! [ -f "$kerneldir"/modules.dep ]; then
- depmod -b "${basedir:-/}" $kernel
+ depmod -b "${basedir}" $kernel
fi
files=$(find_kmods)
local oldpwd="$PWD"
- cd ${basedir:-/}
+ cd "${basedir}"
for file in $files; do
echo "${file#/}"
done | cpio -pdm "$tmpdir"
@@ -122,7 +122,7 @@ initfs_kmods() {
initfs_apk_keys() {
mkdir -p "$tmpdir"/etc/apk/keys
- cp "$basedir"/etc/apk/keys/* "$tmpdir"/etc/apk/keys/
+ cp "${basedir}etc/apk/keys/"* "$tmpdir"/etc/apk/keys/
}
initfs_cpio() {
@@ -192,15 +192,19 @@ if [ -n "$list_features" ]; then
exit 0
fi
+basedir="${basedir%/}/"
+[ "${basedir}" = "${basedir#/}" ] && basedir="${PWD}/${basedir}"
+
+
[ -n "$1" ] && kernel="$1"
[ -z "$kernel" ] && kernel=$(uname -r)
-kerneldir="$basedir/lib/modules/$kernel"
+kerneldir="${basedir}lib/modules/$kernel"
imagename=${kernel##*-}
[ "$imagename" = "$kernel" ] && imagename=initrd
if [ -z "$outfile" ]; then
- outfile="$basedir"/boot/${imagename}.gz
+ outfile="${basedir}boot/${imagename}.gz"
fi
if [ ! -d "$kerneldir" ]; then