mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-03 18:20:25 +02:00 
			
		
		
		
	kbuild, deb-pkg: select userland architecture based on UTS_MACHINE
Instead of creating the debian package for the compiling userland, create it for a userland matching the kernel thats being compiled. This patch supports all Lenny release architectures, and Linux-based architecture candidates for Squeeze. If it can't find a proper Debian userspace it displays a warning, and fallback to let deb-gencontrol use the host's userspace arch. Eg. with this patch the following make command: make ARCH=i386 deb-pkg will output an i386 Debian package instead of an amd64 one, when run on an amd64 machine. Signed-off-by: Asbjoern Sloth Toennesen <asbjorn@asbjorn.biz> Acked-by: maximilian attems <max@stro.at> Signed-off-by: Michal Marek <mmarek@suse.cz>
This commit is contained in:
		
							parent
							
								
									e86c2412c8
								
							
						
					
					
						commit
						10f26fa642
					
				
					 1 changed files with 34 additions and 1 deletions
				
			
		| 
						 | 
					@ -25,8 +25,41 @@ create_package() {
 | 
				
			||||||
	chown -R root:root "$pdir"
 | 
						chown -R root:root "$pdir"
 | 
				
			||||||
	chmod -R go-w "$pdir"
 | 
						chmod -R go-w "$pdir"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						# Attempt to find the correct Debian architecture
 | 
				
			||||||
 | 
						local forcearch="" debarch=""
 | 
				
			||||||
 | 
						case "$UTS_MACHINE" in
 | 
				
			||||||
 | 
						i386|ia64|alpha)
 | 
				
			||||||
 | 
							debarch="$UTS_MACHINE" ;;
 | 
				
			||||||
 | 
						x86_64)
 | 
				
			||||||
 | 
							debarch=amd64 ;;
 | 
				
			||||||
 | 
						sparc*)
 | 
				
			||||||
 | 
							debarch=sparc ;;
 | 
				
			||||||
 | 
						s390*)
 | 
				
			||||||
 | 
							debarch=s390 ;;
 | 
				
			||||||
 | 
						ppc*)
 | 
				
			||||||
 | 
							debarch=powerpc ;;
 | 
				
			||||||
 | 
						parisc*)
 | 
				
			||||||
 | 
							debarch=hppa ;;
 | 
				
			||||||
 | 
						mips*)
 | 
				
			||||||
 | 
							debarch=mips$(grep -q CPU_LITTLE_ENDIAN=y .config && echo el) ;;
 | 
				
			||||||
 | 
						arm*)
 | 
				
			||||||
 | 
							debarch=arm$(grep -q CONFIG_AEABI=y .config && echo el) ;;
 | 
				
			||||||
 | 
						*)
 | 
				
			||||||
 | 
							echo "" >&2
 | 
				
			||||||
 | 
							echo "** ** **  WARNING  ** ** **" >&2
 | 
				
			||||||
 | 
							echo "" >&2
 | 
				
			||||||
 | 
							echo "Your architecture doesn't have it's equivalent" >&2
 | 
				
			||||||
 | 
							echo "Debian userspace architecture defined!" >&2
 | 
				
			||||||
 | 
							echo "Falling back to using your current userspace instead!" >&2
 | 
				
			||||||
 | 
							echo "Please add support for $UTS_MACHINE to ${0} ..." >&2
 | 
				
			||||||
 | 
							echo "" >&2
 | 
				
			||||||
 | 
						esac
 | 
				
			||||||
 | 
						if [ -n "$debarch" ] ; then
 | 
				
			||||||
 | 
							forcearch="-DArchitecture=$debarch"
 | 
				
			||||||
 | 
						fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	# Create the package
 | 
						# Create the package
 | 
				
			||||||
	dpkg-gencontrol -isp -p$pname -P"$pdir"
 | 
						dpkg-gencontrol -isp $forcearch -p$pname -P"$pdir"
 | 
				
			||||||
	dpkg --build "$pdir" ..
 | 
						dpkg --build "$pdir" ..
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in a new issue