--- admin/PlamoBuild-template-20170713 2017-07-13 13:07:00.000000000 +0900 +++ plamo/09_kernel/old/kernelsrc-20170727/PlamoBuild.kernelsrc-4.9.36_plamoRPi2 2017-07-27 11:37:59.000000000 +0900 @@ -1,19 +1,28 @@ -#!/bin/sh +#!/bin/sh -x ###################################################################### -url="" +url="https://www.kernel.org/pub/linux/kernel/v4.x/linux-4.9.36.tar.xz + ftp://plamo.linet.gr.jp/pub/Plamo-test/kernelsrc_patches/UNICON/vd_unicon-kernel-20161217-4.9.patch + ftp://plamo.linet.gr.jp/pub/Plamo-test/kernelsrc_patches/UNICON/vd_unicon-kernel-fonts-20140614.patch.bz2 + https://github.com/sfjro/aufs4-standalone.git + ftp://plamo.linet.gr.jp/pub/Plamo-test/kernelsrc_patches/mcp/4.9-panic_beep.patch + ftp://plamo.linet.gr.jp/pub/Plamo-test/kernelsrc_patches/mcp/4.9-morse_code_panics.patch + ftp://plamo.linet.gr.jp/pub/Plamo-test/kernelsrc_patches/toi/tuxonice-for-linux-4.9.1-2017-01-06.patch.bz2 + ftp://plamo.linet.gr.jp/pub/Plamo-test/kernelsrc_patches/ovlfs/overlayfs-allow_unprivileged_mounts.patch + ftp://plamo.linet.gr.jp/pub/Plamo-test/kernelsrc_patches/rpi/rpi-4.9.36-20170705-3ecb1db.patch.xz + ftp://plamo.linet.gr.jp/pub/Plamo-test/kernelsrc_patches/config-4.9.36-plamo@LV@" verify= digest= -branch= -commitid= -pkgbase= -vers= -arch=`uname -m` +branch[3]=aufs4.9 +commitid[3]=c8baf66 +pkgbase=kernelsrc +vers=4.9.36_plamo@LV@ +arch=noarch build=P1 -src=$pkgbase-$vers +src=linux-4.9.36 patchfiles="" OPT_CONFIG="" -DOCS="README" +DOCS="" template=20170713 tmplurl=ftp://plamo.linet.gr.jp/pub/Plamo-src/admin ###################################################################### @@ -28,6 +37,8 @@ fi fscheck +case `uname -m` in i686) lv=SMP ;; x86_64) lv=64 ;; armv7l) lv=RPi2 ;; esac +url=${url/@LV@/$lv} ; vers=${vers/@LV@/$lv} prepare "$@" if [ $opt_download -eq 1 ] ; then download_sources @@ -37,6 +48,27 @@ if [ -d ${B[$i]} ] ; then rm -rf ${B[$i]} ; fi ; cp -a ${S[$i]} ${B[$i]} done apply_patches + cd $B + patch -Np1 -i $W/vd_unicon-kernel-20161217-4.9.patch + bunzip2 -c $W/vd_unicon-kernel-fonts-20140614.patch.bz2 | patch -Np1 -i - + patch -Np1 -i $W/aufs4-standalone/aufs4-kbuild.patch + patch -Np1 -i $W/aufs4-standalone/aufs4-base.patch + patch -Np1 -i $W/aufs4-standalone/aufs4-mmap.patch + patch -Np1 -i $W/aufs4-standalone/aufs4-standalone.patch + cp -av $W/aufs4-standalone/Documentation . + cp -av $W/aufs4-standalone/fs . + cp -pv $W/aufs4-standalone/include/uapi/linux/aufs_type.h include/uapi/linux + patch -Np1 -i $W/4.9-panic_beep.patch + patch -Np1 -i $W/4.9-morse_code_panics.patch + bunzip2 -c $W/tuxonice-for-linux-4.9.1-2017-01-06.patch.bz2 | patch -Np1 -i - + chmod 755 scripts/tuxonice_output_to_csv.sh + patch -Np1 -i $W/overlayfs-allow_unprivileged_mounts.patch + if [ `uname -m` == armv7l ] ; then + unxz -c $W/rpi-4.9.36-20170705-3ecb1db.patch.xz | patch -Np1 -i - + chmod 755 drivers/net/wireless/realtek/rtl8192cu/{clean,runwpa,wlan0dhcp} + chmod 755 scripts/{knlinfo,mkknlimg} + fi + cp -p $W/config-4.9.36-plamo$lv .config for i in `seq 0 $((${#B[@]} - 1))` ; do cd ${B[$i]} if [ -x configure ] ; then @@ -50,7 +82,10 @@ for i in `seq 0 $((${#B[@]} - 1))` ; do cd ${B[$i]} if [ -f Makefile ] ; then - make + make prepare scripts + mv include/generated/bounds.h $W + make clean + mv $W/bounds.h include/generated fi done fi @@ -61,20 +96,90 @@ touch $W/i.st ; sleep 1 for i in `seq 0 $((${#B[@]} - 1))` ; do cd ${B[$i]} - if [ -f Makefile ] ; then + false && if [ -f Makefile ] ; then make install DESTDIR=$P fi done + install -d $P/usr/src + cp -dR . $P/usr/src/$src + find $P/usr/src/$src \( -name ".cocciconfig" \ + -o -name ".get_maintainer.ignore" -o -name ".gitattributes" \ + -o -name ".gitignore" -o -name ".mailmap" \ + -o -name "*.orig" \) -exec rm {} \; + ln -s $src $P/usr/src/linux + install -d $P/sbin + if [ `uname -m` == i686 -o `uname -m` == x86_64 ] ; then + sed '/^verify/,$d' $B/arch/x86/boot/install.sh > $P/sbin/installkernel + else + sed '/^verify/,$d' $B/arch/arm/boot/install.sh > $P/sbin/installkernel + fi + cat <<- "EOF" >> $P/sbin/installkernel + [ -f $4/config ] && mv $4/config $4/config.old + cp .config $4/config + EOF + if [ `uname -m` == i686 -o `uname -m` == x86_64 ] ; then + cat <<- "EOF" >> $P/sbin/installkernel + [ -f $4/vmlinuz ] && mv $4/vmlinuz $4/vmlinuz.old + cat $2 > $4/vmlinuz + EOF + else + cat <<- "EOF" >> $P/sbin/installkernel + [ -f $4/kernel7.img ] && mv $4/kernel7.img $4/kernel7.old + scripts/mkknlimg $2 $4/kernel7.img + EOF + fi + cat <<- "EOF" >> $P/sbin/installkernel + [ -f $4/System.map ] && mv $4/System.map $4/System.old + cp $3 $4/System.map + + EOF + if [ `uname -m` == i686 -o `uname -m` == x86_64 ] ; then + cat <<- "EOF" >> $P/sbin/installkernel + if [ -x /sbin/lilo -a -f /etc/lilo.conf ] ; then + /sbin/lilo + EOF + else + cat <<- "EOF" >> $P/sbin/installkernel + if [ -x /sbin/loadmap ] ; then + /sbin/loadmap + EOF + fi + cat <<- "EOF" >> $P/sbin/installkernel + else + sync + fi + EOF + chmod 755 $P/sbin/installkernel touch $W/i.et cd $W find $P ! -type l -newer i.st ! -newer i.et \ -exec touch -t `date '+%m%d0900'` {} \; compress + install -d $docdir/$src setup_docdir convert_links - tar cvpf $pkg.tar -C $P `cd $P ; find usr/bin | tail -n+2` - tar rvpf $pkg.tar -C $P `cd $P ; find usr/share/man/man1 | tail -n+2` + prune_symlink $P/usr/src + touch -t `date '+%m%d0900'` $P/usr/src/$src/arch/arm/boot/dts + touch -t `date '+%m%d0900'` $P/usr/src/$src/arch/arm/boot/dts/include + touch -t `date '+%m%d0900'` $P/usr/src/$src/arch/arm64/boot/dts + touch -t `date '+%m%d0900'` $P/usr/src/$src/arch/arm64/boot/dts/arm + touch -t `date '+%m%d0900'` $P/usr/src/$src/arch/arm64/boot/dts/broadcom + touch -t `date '+%m%d0900'` $P/usr/src/$src/arch/arm64/boot/dts/include + touch -t `date '+%m%d0900'` $P/usr/src/$src/arch/arm64/boot/dts/socionext + touch -t `date '+%m%d0900'` $P/usr/src/$src/arch/cris/boot/dts/include + touch -t `date '+%m%d0900'` $P/usr/src/$src/arch/metag/boot/dts/include + touch -t `date '+%m%d0900'` $P/usr/src/$src/arch/mips/boot/dts/include + touch -t `date '+%m%d0900'` $P/usr/src/$src/arch/powerpc/boot/dts/include + touch -t `date '+%m%d0900'` $P/usr/src/$src/include/dt-bindings/input + touch -t `date '+%m%d0900'` $P/usr/src/$src/tools/testing/selftests/powerpc/copyloops + touch -t `date '+%m%d0900'` $P/usr/src/$src/tools/testing/selftests/powerpc/primitives + touch -t `date '+%m%d0900'` $P/usr/src/$src/tools/testing/selftests/powerpc/primitives/asm + touch -t `date '+%m%d0900'` $P/usr/src/$src/tools/testing/selftests/powerpc/stringloops + touch -t `date '+%m%d0900'` $P/usr/src/$src/tools/testing/selftests/powerpc/vphn + tar cvpf $pkg.tar -C $P `cd $P ; find usr/src -maxdepth 1 | tail -n+2` + tar rvpf $pkg.tar -C $P `cd $P ; find sbin | tail -n+2` tar rvpf $pkg.tar -C $P usr/share/doc/$src + tar rvpf $pkg.tar -C $P install/doinst.sh touch -t `date '+%m%d0900'` $pkg.tar ; xz $pkg.tar ; touch $pkg.tar.xz mv $pkg.tar.xz $pkg.txz cleanup