wok-undigest diff linux/stuff/tools/install_module_headers.sh @ rev 1217
copied linux receipt and stuff from wok-next
author | Hans-G?nter Theisgen |
---|---|
date | Fri Nov 15 16:49:43 2019 +0100 (2019-11-15) |
parents | |
children |
line diff
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/linux/stuff/tools/install_module_headers.sh Fri Nov 15 16:49:43 2019 +0100 1.3 @@ -0,0 +1,105 @@ 1.4 +#!/bin/sh 1.5 +# install_module_headers 1.6 +# $1 = $install or $install/linux64 1.7 +src="$2"; KVERSION="$3" 1.8 + 1.9 +path="usr/src/linux-$KVERSION" 1.10 + 1.11 +mkdir -p $1/lib/modules/$KVERSION 1.12 +ln -sf /$path $1/lib/modules/$KVERSION/build 1.13 +install -D -m644 $src/Makefile $1/$path/Makefile 1.14 +install -D -m644 $src/kernel/Makefile $1/$path/kernel/Makefile 1.15 +install -D -m644 $src/.config $1/$path/.config 1.16 + 1.17 +cp -a $src/include $1/$path 1.18 + 1.19 +# copy arch includes for external modules 1.20 +mkdir -p $1/$path/arch/x86/ 1.21 +cp -a $src/arch/x86/include $1/$path/arch/x86/ 1.22 + 1.23 +# copy files necessary for later builds, like nvidia and vmware 1.24 +cp -a $src/Module.symvers $1/$path 1.25 +cp -a $src/scripts $1/$path 1.26 + 1.27 +# fix permissions on scripts dir 1.28 +chmod og-w -R $1/$path/scripts 1.29 +mkdir -p $1/$path/.tmp_versions 1.30 + 1.31 +mkdir -p $1/$path/arch/x86/kernel/ 1.32 +cp $src/arch/x86/Makefile $1/$path/arch/x86/ 1.33 +cp $src/arch/x86/Makefile_32.cpu $1/$path/arch/x86/ 1.34 +cp $src/arch/x86/kernel/asm-offsets.s $1/$path/arch/x86/kernel/ 1.35 + 1.36 +# add headers for lirc package 1.37 +#mkdir -p $1/$path/drivers/media/video 1.38 +#cp -a $src/drivers/media/video/*.h $1/$path/drivers/media/video/ 1.39 +#for i in bt8xx cpia2 cx25840 cx88 em28xx et61x251 pwc saa7134 sn9c102 ; do 1.40 +# mkdir -p $1/$path/drivers/media/video/$i 1.41 +# cp -a $src/drivers/media/video/$i/*.h $1/$path/drivers/media/video/$i 1.42 +#done 1.43 + 1.44 +# add docbook makefile 1.45 +[ -f "$src/Documentation/DocBook/Makefile" ] && 1.46 +install -D -m644 $src/Documentation/DocBook/Makefile \ 1.47 + $1/$path/Documentation/DocBook/Makefile 1.48 + 1.49 +# add md headers 1.50 +mkdir -p $1/$path/drivers/md/ 1.51 +cp $src/drivers/md/*.h $1/$path/drivers/md/ 1.52 + 1.53 +# add inotify.h 1.54 +mkdir -p $1/$path/include/linux/ 1.55 +cp $src/include/linux/inotify.h $1/$path/include/linux/ 1.56 + 1.57 +# add wireless headers 1.58 +mkdir -p $1/$path/net/mac80211/ 1.59 +cp $src/net/mac80211/*.h $1/$path/net/mac80211/ 1.60 + 1.61 +# add dvb headers for external modules 1.62 +# in reference to http://bugs.archlinux.org/task/9912 1.63 +# mkdir -p $1/$path/drivers/media/dvb-core/ 1.64 +# cp $src/drivers/media/dvb-core/*.h $1/$path/drivers/media/dvb-core/ 1.65 +# and http://bugs.archlinux.org/task/11194 1.66 +if [ -d $src/include/config/dvb/ ]; then 1.67 + mkdir -p $1/$path/include/config/dvb/ 1.68 + cp $src/include/config/dvb/*.h $1/$path/include/config/dvb/ 1.69 +fi 1.70 + 1.71 +# add dvb headers for http://mcentral.de/hg/~mrec/em28xx-new 1.72 +# in reference to http://bugs.archlinux.org/task/13146 1.73 +mkdir -p $1/$path/drivers/media/dvb-frontends/ 1.74 +cp $src/drivers/media/dvb-frontends/lgdt330x.h $1/$path/drivers/media/dvb-frontends/ 1.75 +mkdir -p $1/$path/drivers/media/i2c/ 1.76 +cp $src/drivers/media/i2c/msp3400-driver.h $1/$path/drivers/media/i2c/ 1.77 + 1.78 +# add dvb headers 1.79 +# in reference to http://bugs.archlinux.org/task/20402 1.80 +mkdir -p $1/$path/drivers/media/usb/dvb-usb/ 1.81 +cp $src/drivers/media/usb/dvb-usb/*.h $1/$path/drivers/media/usb/dvb-usb/ 1.82 +mkdir -p $1/$path/drivers/media/dvb-frontends/ 1.83 +cp $src/drivers/media/dvb-frontends/*.h $1/$path/drivers/media/dvb-frontends/ 1.84 +mkdir -p $1/$path/drivers/media/tuners/ 1.85 +cp $src/drivers/media/tuners/*.h $1/$path/drivers/media/tuners/ 1.86 + 1.87 +# add xfs and shmem for aufs building 1.88 +mkdir -p $1/$path/fs/xfs $1/$path/mm 1.89 + 1.90 +# copy in Kconfig files 1.91 +for i in $(find . -name "Kconfig*"); do 1.92 + mkdir -p $1/$path/$(dirname $i) 1.93 + cp $src/$i $1/$path/$i 1.94 +done 1.95 + 1.96 +# add objtool for external module building and enabled VALIDATION_STACK option 1.97 +if [ -f $src/tools/objtool/objtool ]; then 1.98 + mkdir -p $1/$path/tools/objtool/ 1.99 + cp -a $src/tools/objtool/objtool $1/$path/tools/objtool/ 1.100 +fi 1.101 + 1.102 +chown -R root.root $1/$path 1.103 +find $1/$path -type d -exec chmod 755 \{\} \; 1.104 + 1.105 +# remove unneeded architectures, leave x86 and x86_64 1.106 +for i in $(ls $1/$path/arch | grep -v x86); do 1.107 + rm -rf $1/$path/arch/$i 1.108 +done