Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 153f0114 authored by Jamey Sharp's avatar Jamey Sharp Committed by Michal Marek
Browse files

scripts/gen_initramfs_list.sh: Convert to a /bin/sh script



Replace bashisms with POSIX-compatible shell scripting.

Notably, de-duplicate '/' using a sed command from elsewhere in the same script
rather than "${name//\/\///}".

Commit by Jamey Sharp and Josh Triplett.

Signed-off-by: default avatarJamey Sharp <jamey@minilop.net>
Signed-off-by: default avatarJosh Triplett <josh@joshtriplett.org>
Cc: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarMichal Marek <mmarek@suse.cz>
parent 43f67c98
Loading
Loading
Loading
Loading
+7 −7
Original line number Diff line number Diff line
#!/bin/bash
#!/bin/sh
# Copyright (C) Martin Schlemmer <azarah@nosferatu.za.org>
# Copyright (C) 2006 Sam Ravnborg <sam@ravnborg.org>
#
@@ -105,9 +105,9 @@ list_parse() {
# for links, devices etc the format differs. See gen_init_cpio for details
parse() {
	local location="$1"
	local name="${location/${srcdir}//}"
	local name="/${location#${srcdir}}"
	# change '//' into '/'
	name="${name//\/\///}"
	name=$(echo "$name" | sed -e 's://*:/:g')
	local mode="$2"
	local uid="$3"
	local gid="$4"
@@ -117,8 +117,8 @@ parse() {
	[ "$root_gid" = "squash" ] && gid=0 || [ "$gid" -eq "$root_gid" ] && gid=0
	local str="${mode} ${uid} ${gid}"

	[ "${ftype}" == "invalid" ] && return 0
	[ "${location}" == "${srcdir}" ] && return 0
	[ "${ftype}" = "invalid" ] && return 0
	[ "${location}" = "${srcdir}" ] && return 0

	case "${ftype}" in
		"file")
@@ -192,7 +192,7 @@ input_file() {
	if [ -f "$1" ]; then
		${dep_list}header "$1"
		is_cpio="$(echo "$1" | sed 's/^.*\.cpio\(\..*\)\?/cpio/')"
		if [ $2 -eq 0 -a ${is_cpio} == "cpio" ]; then
		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"
@@ -204,7 +204,7 @@ input_file() {
		else
		        echo "$1 \\"
			cat "$1" | while read type dir file perm ; do
				if [ "$type" == "file" ]; then
				if [ "$type" = "file" ]; then
					echo "$file \\";
				fi
			done