forked from torvalds/linux
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[PATCH] kbuild scripts: replace gawk, head, bc with shell, update
Replacing overhead of using some (external) programs instead of good old `sh'. Cc: Roman Zippel <[email protected]> Cc: Sam Ravnborg <[email protected]> Cc: William Stearns <[email protected]> Cc: Martin Schlemmer <[email protected]> Signed-off-by: Oleg Verych <[email protected]> Acked-by: Mark Lord <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
- Loading branch information
Oleg Verych
authored and
Linus Torvalds
committed
Feb 6, 2007
1 parent
62d0cfc
commit f6112ec
Showing
2 changed files
with
39 additions
and
38 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,6 @@ | ||
#!/bin/bash | ||
# Copyright (C) Martin Schlemmer <[email protected]> | ||
# Copyright (c) 2006 Sam Ravnborg <[email protected]> | ||
# Copyright (C) 2006 Sam Ravnborg <[email protected]> | ||
# | ||
# Released under the terms of the GNU GPL | ||
# | ||
|
@@ -17,15 +17,15 @@ cat << EOF | |
Usage: | ||
$0 [-o <file>] [-u <uid>] [-g <gid>] {-d | <cpio_source>} ... | ||
-o <file> Create gzipped initramfs file named <file> using | ||
gen_init_cpio and gzip | ||
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. | ||
-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. | ||
<cpio_source> File list or directory for cpio archive. | ||
If <cpio_source> is a .cpio file it will be used | ||
If <cpio_source> is a .cpio file it will be used | ||
as direct input to initramfs. | ||
-d Output the default cpio list. | ||
|
@@ -36,6 +36,12 @@ to reset the root/group mapping. | |
EOF | ||
} | ||
|
||
# awk style field access | ||
# $1 - field number; rest is argument string | ||
field() { | ||
shift $1 ; echo $1 | ||
} | ||
|
||
list_default_initramfs() { | ||
# echo usr/kinit/kinit | ||
: | ||
|
@@ -119,22 +125,17 @@ parse() { | |
str="${ftype} ${name} ${location} ${str}" | ||
;; | ||
"nod") | ||
local dev_type= | ||
local maj=$(LC_ALL=C ls -l "${location}" | \ | ||
gawk '{sub(/,/, "", $5); print $5}') | ||
local min=$(LC_ALL=C ls -l "${location}" | \ | ||
gawk '{print $6}') | ||
|
||
if [ -b "${location}" ]; then | ||
dev_type="b" | ||
else | ||
dev_type="c" | ||
fi | ||
str="${ftype} ${name} ${str} ${dev_type} ${maj} ${min}" | ||
local dev=`LC_ALL=C ls -l "${location}"` | ||
local maj=`field 5 ${dev}` | ||
local min=`field 6 ${dev}` | ||
maj=${maj%,} | ||
|
||
[ -b "${location}" ] && dev="b" || dev="c" | ||
|
||
str="${ftype} ${name} ${str} ${dev} ${maj} ${min}" | ||
;; | ||
"slink") | ||
local target=$(LC_ALL=C ls -l "${location}" | \ | ||
gawk '{print $11}') | ||
local target=`field 11 $(LC_ALL=C ls -l "${location}")` | ||
str="${ftype} ${name} ${target} ${str}" | ||
;; | ||
*) | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,31 +1,31 @@ | ||
#!/bin/bash | ||
#!/bin/sh | ||
# A script to dump mixed source code & assembly | ||
# with correct relocations from System.map | ||
# Requires the following lines in Rules.make. | ||
# Author(s): DJ Barrow ([email protected],[email protected]) | ||
# William Stearns <[email protected]> | ||
# Requires the following lines in makefile: | ||
#%.lst: %.c | ||
# $(CC) $(CFLAGS) $(EXTRA_CFLAGS) $(CFLAGS_$@) -g -c -o $*.o $< | ||
# $(TOPDIR)/scripts/makelst $*.o $(TOPDIR)/System.map $(OBJDUMP) | ||
# $(srctree)/scripts/makelst $*.o $(objtree)/System.map $(OBJDUMP) | ||
# | ||
# Copyright (C) 2000 IBM Corporation | ||
# Author(s): DJ Barrow ([email protected],[email protected]) | ||
# Copyright (C) 2000 IBM Corporation | ||
# Author(s): DJ Barrow ([email protected],[email protected]) | ||
# William Stearns <[email protected]> | ||
# | ||
|
||
t1=`$3 --syms $1 | grep .text | grep " F " | head -n 1` | ||
# awk style field access | ||
field() { | ||
shift $1 ; echo $1 | ||
} | ||
|
||
t1=`$3 --syms $1 | grep .text | grep -m1 " F "` | ||
if [ -n "$t1" ]; then | ||
t2=`echo $t1 | gawk '{ print $6 }'` | ||
t2=`field 6 $t1` | ||
if [ ! -r $2 ]; then | ||
echo "No System.map" >&2 | ||
t7=0 | ||
else | ||
t3=`grep $t2 $2` | ||
t4=`echo $t3 | gawk '{ print $1 }'` | ||
t5=`echo $t1 | gawk '{ print $1 }'` | ||
t6=`echo $t4 - $t5 | tr a-f A-F` | ||
t7=`( echo ibase=16 ; echo $t6 ) | bc` | ||
t4=`field 1 $t3` | ||
t5=`field 1 $t1` | ||
t6=`printf "%lu" $((0x$t4 - 0x$t5))` | ||
fi | ||
else | ||
t7=0 | ||
fi | ||
$3 -r --source --adjust-vma=$t7 $1 | ||
$3 -r --source --adjust-vma=${t6:-0} $1 |