diff options
author | Matthias Andree <matthias.andree@gmx.de> | 2014-01-10 14:54:37 +0400 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2014-01-10 14:54:37 +0400 |
commit | 9b76f895bcd50c97df66c7e0192e045245eb519f (patch) | |
tree | 0ce5dac1b3f7a0996a9bc098d137f278de3b1ced | |
parent | 3deabea8932715dae2b7b95e08b1be96d1bc0361 (diff) |
build system: fix non-portable sed constructs.
This includes proper line breaks for labels and closing braces,
and removing non-portable \n and \t in s/// functions.
Signed-off-by: Matthias Andree <matthias.andree@gmx.de>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rwxr-xr-x | scripts/gen_build_files.sh | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/scripts/gen_build_files.sh b/scripts/gen_build_files.sh index 0989b2fe5..e8fa831be 100755 --- a/scripts/gen_build_files.sh +++ b/scripts/gen_build_files.sh @@ -31,7 +31,12 @@ generate() # copy stdin to stdout cat # print everything after INSERT line - sed -n '/^INSERT$/ { :l; n; p; bl }' "${src}" + sed -n '/^INSERT$/ { + :l + n + p + bl + }' "${src}" } >"${dst}.tmp" if ! cmp -s "${dst}" "${dst}.tmp"; then gen "${dst}" @@ -52,7 +57,12 @@ sed -n 's@^//applet:@@p' "$srctree"/*/*.c "$srctree"/*/*/*.c \ # We add line continuation backslash after each line, # and insert empty line before each line which doesn't start # with space or tab -sed -n -e 's@^//usage:\([ \t].*\)$@\1 \\@p' -e 's@^//usage:\([^ \t].*\)$@\n\1 \\@p' \ +TAB="$(printf '\tX')" +TAB="${TAB%X}" +LF="$(printf '\nX')" +LF="${LF%X}" +sed -n -e 's@^//usage:\([ '"$TAB"'].*\)$@\1 \\@p' \ + -e 's@^//usage:\([^ '"$TAB"'].*\)$@\'"$LF"'\1 \\@p' \ "$srctree"/*/*.c "$srctree"/*/*/*.c \ | generate \ "$srctree/include/usage.src.h" \ |