 23bf49b5ec
			
		
	
	
		23bf49b5ec
		
	
	
	
	
		
			
			config-devices.mak.d is included from Makefile.target, i.e. from inside the *-softmmu/ directory. It included the directory path, so never applied to the actual ./config-devices.mak. Symptoms were spurious build failures due to missing dependency on default-configs/pci.mak. Fix this by using `basename` to strip the directory path. Reported-by: Gerhard Wiesinger <lists@wiesinger.com> Cc: qemu-stable@nongnu.org Signed-off-by: Andreas Färber <afaerber@suse.de> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
		
			
				
	
	
		
			29 lines
		
	
	
		
			649 B
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
		
			649 B
		
	
	
	
		
			Bash
		
	
	
	
	
	
| #! /bin/sh
 | |
| # Construct a target device config file from a default, pulling in any
 | |
| # files from include directives.
 | |
| 
 | |
| dest=$1.tmp
 | |
| dep=$1.d
 | |
| src=$2
 | |
| 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=`tr -d '\r' < $f | awk '/^include / {printf "'$src_dir'/%s", $2}'`
 | |
|   [ $? = 0 ] || exit 1
 | |
|   all_includes="$all_includes $f"
 | |
| done
 | |
| process_includes $src > $dest
 | |
| 
 | |
| cat $src $all_includes | grep -v '^include' > $dest
 | |
| echo "`basename $1`: $all_includes" > $dep
 |