aboutsummaryrefslogtreecommitdiffstats
path: root/mkinitfs.in
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2014-03-18 14:36:21 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2014-03-18 14:57:01 +0000
commited669bc46f5796014d7a5785f0deaff9659eeaad (patch)
treee36f0ec5e7b480145b9a6b79daa30cdfe462c235 /mkinitfs.in
parentdb054160522546a1ad1110aa9bedc8dae456e3f0 (diff)
downloadmkinitfs-ed669bc46f5796014d7a5785f0deaff9659eeaad.tar.bz2
mkinitfs-ed669bc46f5796014d7a5785f0deaff9659eeaad.tar.xz
move files.d/* and modules.d/* to features.d/*.{files,modules}
Diffstat (limited to 'mkinitfs.in')
-rwxr-xr-xmkinitfs.in26
1 files changed, 14 insertions, 12 deletions
diff --git a/mkinitfs.in b/mkinitfs.in
index a7dd090..7b52196 100755
--- a/mkinitfs.in
+++ b/mkinitfs.in
@@ -29,13 +29,14 @@ _cp() {
}
feature_files() {
- local dir="$1"
- local glob file
+ local suffix="$1"
+ local dir="$features_dir"
+ local glob file
for f in $features; do
- if [ ! -f "$dir/$f" ]; then
+ if [ ! -f "$dir/$f.$suffix" ]; then
continue
fi
- for glob in $(sed 's:^/\+::' "$dir/$f"); do
+ for glob in $(sed 's:^/\+::' "$dir/$f.$suffix"); do
for file in $glob; do
if [ -d $file ]; then
find $file -type f
@@ -56,7 +57,7 @@ initfs_base() {
[ -z "$list_sources" ] && mkdir -p $dirs
cd "${basedir:-/}"
- for file in $(feature_files "$filelists_dir"); do
+ for file in $(feature_files files); do
_cp $file
done
@@ -107,12 +108,12 @@ BEGIN {
END {
for (i in mod)
recursedeps(i);
-}'
+}'
}
find_kmods() {
cd "$kerneldir" || return 1
- for file in $(feature_files $modulelists_dir); do
+ for file in $(feature_files modules); do
if ! [ -e ${file} ]; then
echo "$file: No such file or directory" >&2
continue
@@ -193,14 +194,15 @@ done
shift $(( $OPTIND - 1 ))
. $(readlink -f "$config")
-filelists_dir=${filelists_dir:-"$sysconfdir/files.d"}
-modulelists_dir=${modules_dir:-"$sysconfdir/modules.d"}
+features_dir=${features_dir:-"$sysconfdir/features.d"}
[ -n "$myfeatures" ] && features="$myfeatures"
if [ -n "$list_features" ]; then
- for i in $filelists_dir $modulelists_dir; do
- ( [ -d "$i" ] && cd $i && ls )
- done | sort | uniq
+ for i in $features_dir/*.files $features_dir/*.modules; do
+ [ -e "$i" ] || continue
+ local file=${i##*/}
+ echo ${file%.*}
+ done | sort -u
exit 0
fi