git.openpandora.org
/
pandora-kernel.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
x86_64: fake apicid_to_node mapping for fake numa
[pandora-kernel.git]
/
scripts
/
gen_initramfs_list.sh
diff --git
a/scripts/gen_initramfs_list.sh
b/scripts/gen_initramfs_list.sh
index
43f75d6
..
684fb9c
100644
(file)
--- a/
scripts/gen_initramfs_list.sh
+++ b/
scripts/gen_initramfs_list.sh
@@
-19,11
+19,11
@@
$0 [-o <file>] [-u <uid>] [-g <gid>] {-d | <cpio_source>} ...
-o <file> Create gzipped initramfs file named <file> using
gen_init_cpio and gzip
-u <uid> User ID to map to user ID 0 (root).
-o <file> Create gzipped initramfs file named <file> using
gen_init_cpio and gzip
-u <uid> User ID to map to user ID 0 (root).
- <uid> is only meaningful if <cpio_source>
-
is a directory
.
+ <uid> is only meaningful if <cpio_source>
is a
+
directory. "squash" forces all files to uid 0
.
-g <gid> Group ID to map to group ID 0 (root).
-g <gid> Group ID to map to group ID 0 (root).
- <gid> is only meaningful if <cpio_source>
-
is a directory
.
+ <gid> is only meaningful if <cpio_source>
is a
+
directory. "squash" forces all files to gid 0
.
<cpio_source> File list or directory for cpio archive.
If <cpio_source> is a .cpio file it will be used
as direct input to initramfs.
<cpio_source> File list or directory for cpio archive.
If <cpio_source> is a .cpio file it will be used
as direct input to initramfs.
@@
-113,8
+113,8
@@
parse() {
local gid="$4"
local ftype=$(filetype "${location}")
# remap uid/gid to 0 if necessary
local gid="$4"
local ftype=$(filetype "${location}")
# remap uid/gid to 0 if necessary
- [ "$uid" -eq "$root_uid" ] && uid=0
- [ "$gid" -eq "$root_gid" ] && gid=0
+ [ "$
root_uid" = "squash" ] && uid=0 || [ "$
uid" -eq "$root_uid" ] && uid=0
+ [ "$
root_gid" = "squash" ] && gid=0 || [ "$
gid" -eq "$root_gid" ] && gid=0
local str="${mode} ${uid} ${gid}"
[ "${ftype}" == "invalid" ] && return 0
local str="${mode} ${uid} ${gid}"
[ "${ftype}" == "invalid" ] && return 0
@@
-171,7
+171,7
@@
dir_filelist() {
${dep_list}header "$1"
srcdir=$(echo "$1" | sed -e 's://*:/:g')
${dep_list}header "$1"
srcdir=$(echo "$1" | sed -e 's://*:/:g')
- dirlist=$(find "${srcdir}" -printf "%p %m %U %G\n"
2>/dev/null
)
+ dirlist=$(find "${srcdir}" -printf "%p %m %U %G\n")
# If $dirlist is only one line, then the directory is empty
if [ "$(echo "${dirlist}" | wc -l)" -gt 1 ]; then
# If $dirlist is only one line, then the directory is empty
if [ "$(echo "${dirlist}" | wc -l)" -gt 1 ]; then
@@
-191,9
+191,10
@@
input_file() {
source="$1"
if [ -f "$1" ]; then
${dep_list}header "$1"
source="$1"
if [ -f "$1" ]; then
${dep_list}header "$1"
- is_cpio="$(echo "$1" | sed 's/^.*\.cpio/cpio/')"
+ is_cpio="$(echo "$1" | sed 's/^.*\.cpio
\(\..*\)\?
/cpio/')"
if [ $2 -eq 0 -a ${is_cpio} == "cpio" ]; then
cpio_file=$1
if [ $2 -eq 0 -a ${is_cpio} == "cpio" ]; then
cpio_file=$1
+ echo "$1" | grep -q '^.*\.cpio\..*' && is_cpio_compressed="compressed"
[ ! -z ${dep_list} ] && echo "$1"
return 0
fi
[ ! -z ${dep_list} ] && echo "$1"
return 0
fi
@@
-223,6
+224,7
@@
cpio_file=
cpio_list=
output="/dev/stdout"
output_file=""
cpio_list=
output="/dev/stdout"
output_file=""
+is_cpio_compressed=
arg="$1"
case "$arg" in
arg="$1"
case "$arg" in
@@
-282,7
+284,11
@@
if [ ! -z ${output_file} ]; then
cpio_tfile=${cpio_file}
fi
rm ${cpio_list}
cpio_tfile=${cpio_file}
fi
rm ${cpio_list}
- cat ${cpio_tfile} | gzip -f -9 - > ${output_file}
+ if [ "${is_cpio_compressed}" = "compressed" ]; then
+ cat ${cpio_tfile} > ${output_file}
+ else
+ cat ${cpio_tfile} | gzip -f -9 - > ${output_file}
+ fi
[ -z ${cpio_file} ] && rm ${cpio_tfile}
fi
exit 0
[ -z ${cpio_file} ] && rm ${cpio_tfile}
fi
exit 0