 bbd908025c
			
		
	
	
		bbd908025c
		
	
	
	
	
		
			
			This fixes these warnings from shellcheck:
    ^-- SC2006: Use $(..) instead of deprecated `..`
Update also a comment using the same pattern.
Signed-off-by: Stefan Weil <sw@weilnetz.de>
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
		
	
			
		
			
				
	
	
		
			31 lines
		
	
	
		
			735 B
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
		
			735 B
		
	
	
	
		
			Bash
		
	
	
	
	
	
| #! /bin/sh
 | |
| # Writes a target device config file to stdout, from a default and from
 | |
| # include directives therein.  Also emits Makefile dependencies.
 | |
| #
 | |
| # Usage: make_device_config.sh SRC DEPFILE-NAME DEPFILE-TARGET > DEST
 | |
| 
 | |
| src=$1
 | |
| dep=$2
 | |
| target=$3
 | |
| src_dir=$(dirname $src)
 | |
| all_includes=
 | |
| 
 | |
| process_includes () {
 | |
|   cat $1 | grep '^include' | \
 | |
|   while read include file ; do
 | |
|     all_includes="$all_includes $src_dir/$file"
 | |
|     process_includes $src_dir/$file
 | |
|   done
 | |
| }
 | |
| 
 | |
| f=$src
 | |
| while [ -n "$f" ] ; do
 | |
|   f=$(cat $f | tr -d '\r' | awk '/^include / {printf "'$src_dir'/%s ", $2}')
 | |
|   [ $? = 0 ] || exit 1
 | |
|   all_includes="$all_includes $f"
 | |
| done
 | |
| process_includes $src
 | |
| 
 | |
| cat $src $all_includes | grep -v '^include'
 | |
| echo "$target: $all_includes" > $dep
 |