forked from mirrors/linux
		
	kbuild: Do not write to builddir in modules_install
Let depmod.sh create a temporary directory in /tmp instead of writing to the build directory as root. The mktemp utility should be available on any recent system (and there is already scripts/gen_initramfs_list.sh relying on it). Reported-by: Christian Kujau <lists@nerdbynature.de> Signed-off-by: Michal Marek <mmarek@suse.cz>
This commit is contained in:
		
							parent
							
								
									569658dddf
								
							
						
					
					
						commit
						8fc62e5942
					
				
					 1 changed files with 6 additions and 4 deletions
				
			
		| 
						 | 
					@ -21,13 +21,15 @@ fi
 | 
				
			||||||
# older versions of depmod require the version string to start with three
 | 
					# older versions of depmod require the version string to start with three
 | 
				
			||||||
# numbers, so we cheat with a symlink here
 | 
					# numbers, so we cheat with a symlink here
 | 
				
			||||||
depmod_hack_needed=true
 | 
					depmod_hack_needed=true
 | 
				
			||||||
mkdir -p .tmp_depmod/lib/modules/$KERNELRELEASE
 | 
					tmp_dir=$(mktemp -d ${TMPDIR:-/tmp}/depmod.XXXXXX)
 | 
				
			||||||
if "$DEPMOD" -b .tmp_depmod $KERNELRELEASE 2>/dev/null; then
 | 
					mkdir -p "$tmp_dir/lib/modules/$KERNELRELEASE"
 | 
				
			||||||
	if test -e .tmp_depmod/lib/modules/$KERNELRELEASE/modules.dep -o \
 | 
					if "$DEPMOD" -b "$tmp_dir" $KERNELRELEASE 2>/dev/null; then
 | 
				
			||||||
		-e .tmp_depmod/lib/modules/$KERNELRELEASE/modules.dep.bin; then
 | 
						if test -e "$tmp_dir/lib/modules/$KERNELRELEASE/modules.dep" -o \
 | 
				
			||||||
 | 
							-e "$tmp_dir/lib/modules/$KERNELRELEASE/modules.dep.bin"; then
 | 
				
			||||||
		depmod_hack_needed=false
 | 
							depmod_hack_needed=false
 | 
				
			||||||
	fi
 | 
						fi
 | 
				
			||||||
fi
 | 
					fi
 | 
				
			||||||
 | 
					rm -rf "$tmp_dir"
 | 
				
			||||||
if $depmod_hack_needed; then
 | 
					if $depmod_hack_needed; then
 | 
				
			||||||
	symlink="$INSTALL_MOD_PATH/lib/modules/99.98.$KERNELRELEASE"
 | 
						symlink="$INSTALL_MOD_PATH/lib/modules/99.98.$KERNELRELEASE"
 | 
				
			||||||
	ln -s "$KERNELRELEASE" "$symlink"
 | 
						ln -s "$KERNELRELEASE" "$symlink"
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in a new issue