You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							93 lines
						
					
					
						
							1.8 KiB
						
					
					
				
			
		
		
	
	
							93 lines
						
					
					
						
							1.8 KiB
						
					
					
				| #!/bin/sh -e | |
| # --- T2-COPYRIGHT-NOTE-BEGIN --- | |
| # This copyright note is auto-generated by ./scripts/Create-CopyPatch. | |
| #  | |
| # T2 SDE: package/.../linux-header/generate-asm | |
| # Copyright (C) 2006 The T2 SDE Project | |
| #  | |
| # More information can be found in the files COPYING and README. | |
| #  | |
| # This program is free software; you can redistribute it and/or modify | |
| # it under the terms of the GNU General Public License as published by | |
| # the Free Software Foundation; version 2 of the License. A copy of the | |
| # GNU General Public License can be found in the file COPYING. | |
| # --- T2-COPYRIGHT-NOTE-END --- | |
|  | |
| # Idea borrowed from RedHat's kernel package | |
| # Borrowed from Debian GNU/Linux for sparc64 | |
| # Extended for x86-64 and T2 -ReneR | |
|  | |
| # Usage:  | |
|  | |
| dir="$1" | |
| name1="asm-$2" | |
| name2="asm-$3" | |
| define="$4" | |
|  | |
| if [ ! -d "$dir" ] ; then | |
| 	echo E: $dir is not a directory. | |
| 	exit 1 | |
| fi | |
|  | |
| cd $dir | |
|  | |
| if [ ! -d "$name1" -o ! -d "$name2" ] ; then | |
| 	echo E: $name1 and $name2 must exist, or you will have problems. | |
| 	exit 1 | |
| fi | |
|  | |
| if [ ! "$define" ] ; then | |
| 	echo E: No define specified - this will not work. | |
| 	exit 1 | |
| fi | |
|  | |
| rm -rf asm | |
| mkdir asm | |
|  | |
| for h in `( ls $name1; ls $name2 ) | grep '\.h$' | sort -u`; do | |
| 	name=`echo $h | tr a-z. A-Z_` | |
| 	# common header | |
| 	cat > asm/$h << EOF | |
| /* All asm/ files are generated and point to the corresponding | |
|  * file in $name1 or $name2. | |
|  */ | |
|  | |
| #ifndef __ASMSTUB__${name}__ | |
| #define __ASMSTUB__${name}__ | |
|  | |
| EOF | |
|  | |
| 	# common for $name1 and $name2 | |
| 	if [ -f $name1/$h -a -f $name2/$h ]; then | |
| 		cat >> asm/$h <<EOF | |
| #ifdef $define | |
| #include <$name2/$h> | |
| #else | |
| #include <$name1/$h> | |
| #endif | |
| EOF | |
|  | |
| 	# $name1 only | |
| 	elif [ -f $name1/$h ]; then | |
| 		cat >> asm/$h <<EOF | |
| #ifndef $define | |
| #include <$name1/$h> | |
| #endif | |
| EOF | |
| 	# $name2 only | |
| 	else | |
| 		cat >> asm/$h <<EOF | |
| #ifdef $define | |
| #include <$name2/$h> | |
| #endif | |
| EOF | |
| 	fi | |
|  | |
| 	# common footer | |
| 	cat >> asm/$h <<EOF | |
|  | |
| #endif /* !__ASMSTUB__${name}__ */ | |
| EOF | |
|  | |
| done | |
| 
 | |
| 
 |