From 51d2dfa05d25d6dc7ba63a6501807562eacb47fc Mon Sep 17 00:00:00 2001 From: glx Date: Wed, 28 Feb 2007 23:52:04 +0000 Subject: (svn r8948) -Change: some sed implementations have problems with \n so rewrite r8832 using awk --- projects/generate | 32 +++++++++++++++++++------------- 1 file changed, 19 insertions(+), 13 deletions(-) (limited to 'projects/generate') diff --git a/projects/generate b/projects/generate index 841495885..f0fbbda2f 100755 --- a/projects/generate +++ b/projects/generate @@ -130,27 +130,33 @@ load_lang_data() { generate() { echo "Generating $2..." # Everything above the !!FILES!! marker - RES="`cat \"$ROOT_DIR/projects/$2\".in | tr '\r' '\n' | awk ' + cat "$ROOT_DIR/projects/$2".in | tr '\r' '\n' | awk ' /^$/ { next } /!!FILES!!/ { stop = 1; } { if (stop == 0) { print $0 } } - ' > \"$ROOT_DIR/projects/$2\"`" + ' > "$ROOT_DIR/projects/$2" # The files-list - if [ "$3" = "msvc2003" ]; then - echo "$1" | sed 's@\ \ @\n@' >> "$ROOT_DIR/projects/$2" - else - echo "$1" | sed ' - s@Filter="">@>@; - s@^\([ ]*\)\([^ <].*[^/]\)>$@\1\2\n\1>@g; - s@^ \([ ]*\)\([^ <].*\)/>$@ \1\2\n\1/>@g; - ' >> "$ROOT_DIR/projects/$2" - fi + echo "$1" | awk -v type="$3" ' + / / { + if (type == "msvc2003") gsub(" ", "\n", $0); + } + /Filter="">/ { + if (type == "msvc2005") gsub("Filter=\"\">", ">", $0); + } + /"\/>/ { + if (type == "msvc2005") gsub("/>", "\n" substr($0, 1, index($0, $1) - 2) "/>", $0); + } + /">/ { + if (type == "msvc2005") gsub(">", "\n" substr($0, 1, index($0, $1) - 1) ">", $0); + } + { print $0 } + ' >> "$ROOT_DIR/projects/$2" # Everything below the !!FILES!! marker - RES="`cat \"$ROOT_DIR/projects/$2\".in | tr '\r' '\n' | awk ' + cat "$ROOT_DIR/projects/$2".in | tr '\r' '\n' | awk ' BEGIN { stop = 1; } /^$/ { next } /!!FILES!!/ { stop = 2; } @@ -158,7 +164,7 @@ generate() { if (stop == 0) { print $0 } if (stop == 2) { stop = 0 } } - ' >> \"$ROOT_DIR/projects/$2\"`" + ' >> "$ROOT_DIR/projects/$2" } load_main_data "$ROOT_DIR/source.list" openttd -- cgit v1.2.3-54-g00ecf