]> git.pld-linux.org Git - packages/kernel.git/blobdiff - kernel.spec
- rel 3; vserver patch up to patch-3.9.4-vs2.3.6.3.diff
[packages/kernel.git] / kernel.spec
index cabcc9a5bdf7e575df188d370efe1e2bf3f73c50..ba73b313280f7a25b9e463db5b277c50fc95e539 100644 (file)
@@ -66,9 +66,9 @@
 %define                have_pcmcia     0
 %endif
 
-%define                rel             1
-%define                basever         3.6
-%define                postver         .9
+%define                rel             3
+%define                basever         3.9
+%define                postver         .4
 
 # __alt_kernel is list of features, empty string if none set
 # _alt kernel is defined as: %{nil}%{?alt_kernel:-%{?alt_kernel}} (defined in rpm.macros)
@@ -108,11 +108,12 @@ Epoch:            3
 License:       GPL v2
 Group:         Base/Kernel
 Source0:       http://www.kernel.org/pub/linux/kernel/v3.x/linux-%{basever}.tar.xz
-# Source0-md5: 1a1760420eac802c541a20ab51a093d1
+# Source0-md5: 4348c9b6b2eb3144d601e87c19d5d909
 %if "%{postver}" != ".0"
 Patch0:                http://www.kernel.org/pub/linux/kernel/v3.x/patch-%{version}.bz2
-# Patch0-md5:  521206b52f0c159f4f3e3d2e975977dc
+# Patch0-md5:  c0f20f2c33265b128610d735cb344e9a
 %endif
+Source1:       kernel.sysconfig
 
 Source3:       kernel-autoconf.h
 Source4:       kernel-config.h
@@ -161,11 +162,12 @@ Patch40:  kernel-layer7.patch
 # http://zph.bratcheda.org/linux-2.6.26.3-zph.patch
 Patch49:       kernel-zph.patch
 
-# based on http://www.linuximq.net/patchs/patch-imqmq-3.1.diff.bz2
+# http://www.linuximq.net
+# http://tech.groups.yahoo.com/group/linuximq/message/3096
 Patch50:       kernel-imq.patch
 
-Patch51:       http://downloads.sourceforge.net/project/reiser4/reiser4-for-linux-3.x/reiser4-for-3.6.4.patch.gz
-# Patch51-md5: 4128aa3bd062d0289117dda6775a7f20
+Patch51:       http://downloads.sourceforge.net/project/reiser4/reiser4-for-linux-3.x/reiser4-for-3.9.2.patch.gz
+# Patch51-md5: 6f7e3f62e887c073844281be90716c28
 
 # http://fatooh.org/esfq-2.6/sfq-2.6.24.1.tar.bz2
 Patch53:       kernel-esfq.patch
@@ -182,7 +184,10 @@ Patch59:   kernel-rndis_host-wm5.patch
 # http://patches.aircrack-ng.org/hostap-kernel-2.6.18.patch
 Patch85:       kernel-hostap.patch
 
-# http://vserver.13thfloor.at/Experimental/patch-3.6.9-vs2.3.4.4.diff
+# http://vserver.13thfloor.at/Experimental/patch-3.9.4-vs2.3.6.3.diff
+# note there are additional patches from above url:
+# - *fix* are real fixes (we want these)
+# - *feat* are new features/tests (we don't want these)
 Patch100:      kernel-vserver-2.3.patch
 Patch101:      kernel-vserver-fixes.patch
 
@@ -206,7 +211,7 @@ Patch122:   ovl13-overlayfs-copy-up-i_uid-i_gid-from-the-underlying-in.patch
 # Patch creation:
 # git clone git://aufs.git.sourceforge.net/gitroot/aufs/aufs3-standalone.git
 # cd aufs3-standalone
-# git checkout -b aufs3.6 origin/aufs3.6
+# git checkout -b aufs3.8 origin/aufs3.8
 # cat aufs3-kbuild.patch aufs3-base.patch aufs3-standalone.patch > ~/rpm/packages/kernel/kernel-aufs3.patch
 # mkdir linux
 # cp -a Documentation fs include linux
@@ -255,16 +260,17 @@ BuildRequires:    rpm-build >= 4.5-24
 BuildRequires: rpmbuild(macros) >= 1.652
 Requires(post):        coreutils
 Requires(post):        geninitrd >= 10000-3
-Requires(post):        virtual(module-tools)
+Requires(post):        kmod >= 12-2
 Requires:      /sbin/depmod
 Requires:      coreutils
 Requires:      geninitrd >= 10000-3
-Requires:      virtual(module-tools)
+Requires:      kmod >= 12-2
 %if %{with pae}
 %ifarch i686 athlon pentium3 pentium4
 Requires:      cpuinfo(pae)
 %endif
 %endif
+Suggests:      crda
 Suggests:      dracut
 Suggests:      keyutils
 Suggests:      linux-firmware
@@ -305,7 +311,7 @@ Conflicts:  udev < 1:081
 Conflicts:     util-linux < 2.10o
 Conflicts:     util-vserver < 0.30.216
 Conflicts:     xfsprogs < 2.6.0
-ExclusiveArch: %{ix86} %{x8664} alpha arm ia64 ppc ppc64 sparc sparc64
+ExclusiveArch: i486 i586 i686 pentium3 pentium4 athlon %{x8664} alpha arm ia64 ppc ppc64 sparc sparc64
 ExclusiveOS:   Linux
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
@@ -554,6 +560,9 @@ Summary(pl.UTF-8):  Kod źródłowy jądra Linuksa
 Group:         Development/Building
 Requires:      %{name}-module-build = %{epoch}:%{version}-%{release}
 AutoReqProv:   no
+%if "%{_rpmversion}" >= "5"
+BuildArch:     noarch
+%endif
 
 %description source
 This is the source code for the Linux kernel. You can build a custom
@@ -584,6 +593,9 @@ Summary(de.UTF-8):  Kernel Dokumentation
 Summary(pl.UTF-8):     Dokumentacja do jądra Linuksa
 Group:         Documentation
 AutoReqProv:   no
+%if "%{_rpmversion}" >= "5"
+BuildArch:     noarch
+%endif
 
 %description doc
 This is the documentation for the Linux kernel, as found in
@@ -749,6 +761,9 @@ RescueConfig() {
                # CONFIG_PHONE is not set
                # CONFIG_STRICT_DEVMEM is not set
                # CONFIG_IMA is not set
+               # CONFIG_MEDIA_SUPPORT is not set
+               # CONFIG_UWB is not set
+               # CONFIG_PWM is not set
                CONFIG_AUFS=y
                CONFIG_AUFS_FS=y
                CONFIG_AUFS_BR_RAMFS=y
@@ -894,6 +909,7 @@ done
 # /boot
 install -d $RPM_BUILD_ROOT/boot
 cp -a %{objdir}/System.map $RPM_BUILD_ROOT/boot/System.map-%{kernel_release}
+cp -aL %{objdir}/.config $RPM_BUILD_ROOT/boot/config-%{kernel_release}
 %ifarch %{ix86} %{x8664}
        cp -a %{objdir}/arch/%{target_arch_dir}/boot/bzImage $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
        install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinux-%{kernel_release}
@@ -935,6 +951,9 @@ touch $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/modules.dep
 # /etc/modrobe.d
 install -d $RPM_BUILD_ROOT%{_sysconfdir}/modprobe.d/%{kernel_release}
 
+install -d $RPM_BUILD_ROOT/etc/sysconfig
+install %{SOURCE1} $RPM_BUILD_ROOT/etc/sysconfig/kernel
+
 # /usr/src/linux
 install -d $RPM_BUILD_ROOT%{_kernelsrcdir}
 
@@ -954,6 +973,10 @@ for dir in $(cd %{objdir} && find arch -name generated -type d); do
        find $RPM_BUILD_ROOT%{_kernelsrcdir}/$dir -name '.*.cmd' -exec rm "{}" ";"
 done
 
+# version.h location changed in 3.7, but a lot of external modules don't know about it
+# add a compatibility symlink
+ln -s ../generated/uapi/linux/version.h $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux/version.h
+
 # disable this here, causes a lot of build-time problems and our rpm-build disables it anyway
 %{__sed} -i -e 's|\(CONSTIFY_PLUGIN.*:=.*\)|# \1|' $RPM_BUILD_ROOT%{_kernelsrcdir}/Makefile
 
@@ -975,14 +998,18 @@ for f in `find %{objdir}/scripts -type f -print | grep -v "/\.\|\.o$"` ; do
        cp -a "$f" "$RPM_BUILD_ROOT%{_kernelsrcdir}/$ff"
 done
 
+%if %{with doc}
 # move to %{_docdir} so we wouldn't depend on any kernel package for dirs
 install -d $RPM_BUILD_ROOT%{_docdir}
 mv $RPM_BUILD_ROOT{%{_kernelsrcdir}/Documentation,%{_docdir}/%{name}-%{version}}
 
-rm -f $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/dontdiff
-rm -f $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/Makefile
-rm -f $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/*/Makefile
-rm -f $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/*/*/Makefile
+%{__rm} $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/dontdiff
+%{__rm} $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/Makefile
+%{__rm} $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/*/Makefile
+%{__rm} $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/*/*/Makefile
+%else
+%{__rm} -r $RPM_BUILD_ROOT%{_kernelsrcdir}/Documentation
+%endif
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -993,33 +1020,47 @@ if [ -x /sbin/new-kernel-pkg ]; then
 fi
 
 %post
+[ -f /etc/sysconfig/kernel ] && . /etc/sysconfig/kernel
+if [[ "$CREATE_SYMLINKS" != [Nn][Oo] ]]; then
 %ifarch ia64
-mv -f /boot/efi/vmlinuz{,.old} 2> /dev/null
-%{?alt_kernel:mv -f /boot/efi/vmlinuz%{_alt_kernel}{,.old} 2> /dev/null}
-ln -sf vmlinuz-%{kernel_release} /boot/efi/vmlinuz
-%{?alt_kernel:ln -sf vmlinuz-%{kernel_release} /boot/efi/vmlinuz%{_alt_kernel}}
-%endif
-mv -f /boot/vmlinuz{,.old} 2> /dev/null
-%{?alt_kernel:mv -f /boot/vmlinuz%{_alt_kernel}{,.old} 2> /dev/null}
-mv -f /boot/System.map{,.old} 2> /dev/null
-%{?alt_kernel:mv -f /boot/System%{_alt_kernel}.map{,.old} 2> /dev/null}
-ln -sf vmlinuz-%{kernel_release} /boot/vmlinuz
-%{?alt_kernel:ln -sf vmlinuz-%{kernel_release} /boot/vmlinuz%{_alt_kernel}}
-ln -sf System.map-%{kernel_release} /boot/System.map
-%{?alt_kernel:ln -sf System.map-%{kernel_release} /boot/System.map%{_alt_kernel}}
+       mv -f /boot/efi/vmlinuz{,.old} 2> /dev/null
+       ln -sf vmlinuz-%{kernel_release} /boot/efi/vmlinuz
+%if 0%{?alt_kernel:1}
+       mv -f /boot/efi/vmlinuz%{_alt_kernel}{,.old} 2> /dev/null
+       ln -sf vmlinuz-%{kernel_release} /boot/efi/vmlinuz%{_alt_kernel}
+%endif
+%endif
+       mv -f /boot/vmlinuz{,.old} 2> /dev/null
+       mv -f /boot/System.map{,.old} 2> /dev/null
+       ln -sf vmlinuz-%{kernel_release} /boot/vmlinuz
+       ln -sf System.map-%{kernel_release} /boot/System.map
+%if 0%{?alt_kernel:1}
+       mv -f /boot/vmlinuz%{_alt_kernel}{,.old} 2> /dev/null
+       mv -f /boot/System%{_alt_kernel}.map{,.old} 2> /dev/null
+       ln -sf vmlinuz-%{kernel_release} /boot/vmlinuz%{_alt_kernel}
+       ln -sf System.map-%{kernel_release} /boot/System.map%{_alt_kernel}
+%endif
+fi
 
 %depmod %{kernel_release}
 
 %posttrans
-# generate initrd after all dependant modules are installed
-/sbin/geninitrd -f --initrdfs=initramfs %{initrd_dir}/initrd-%{kernel_release}.gz %{kernel_release}
-mv -f %{initrd_dir}/initrd{,.old} 2> /dev/null
-%{?alt_kernel:mv -f %{initrd_dir}/initrd%{_alt_kernel}{,.old} 2> /dev/null}
-ln -sf initrd-%{kernel_release}.gz %{initrd_dir}/initrd
-%{?alt_kernel:ln -sf initrd-%{kernel_release}.gz %{initrd_dir}/initrd%{_alt_kernel}}
+# use posttrans to generate initrd after all dependant module packages (-drm, etc) are installed
+[ -f /etc/sysconfig/kernel ] && . /etc/sysconfig/kernel
+if [[ "$USE_GENINITRD" != [Nn][Oo] ]]; then
+       /sbin/geninitrd -f --initrdfs=initramfs %{initrd_dir}/initrd-%{kernel_release}.gz %{kernel_release} || :
+fi
+if [[ "$CREATE_SYMLINKS" != [Nn][Oo] ]]; then
+       mv -f %{initrd_dir}/initrd{,.old} 2> /dev/null
+       ln -sf initrd-%{kernel_release}.gz %{initrd_dir}/initrd
+%if 0%{?alt_kernel:1}
+       mv -f %{initrd_dir}/initrd%{_alt_kernel}{,.old} 2> /dev/null
+       ln -sf initrd-%{kernel_release}.gz %{initrd_dir}/initrd%{_alt_kernel}
+%endif
+fi
 
 # if dracut is present then generate full-featured initramfs
-if [ -x /sbin/dracut ]; then
+if [[ "$USE_DRACUT" != [Nn][Oo] ]] && [ -x /sbin/dracut ]; then
        /sbin/dracut --force --quiet /boot/initramfs-%{kernel_release}.img %{kernel_release}
 fi
 
@@ -1037,10 +1078,15 @@ if [ -x /sbin/rc-boot ]; then
 fi
 
 %post vmlinux
-mv -f /boot/vmlinux{,.old} 2> /dev/null
-%{?alt_kernel:mv -f /boot/vmlinux-%{alt_kernel}{,.old} 2> /dev/null}
-ln -sf vmlinux-%{kernel_release} /boot/vmlinux
-%{?alt_kernel:ln -sf vmlinux-%{kernel_release} /boot/vmlinux-%{alt_kernel}}
+[ -f /etc/sysconfig/kernel ] && . /etc/sysconfig/kernel
+if [[ "$CREATE_SYMLINKS" != [Nn][Oo] ]]; then
+       mv -f /boot/vmlinux{,.old} 2> /dev/null
+       ln -sf vmlinux-%{kernel_release} /boot/vmlinux
+%if 0%{?alt_kernel:1}
+       mv -f /boot/vmlinux-%{alt_kernel}{,.old} 2> /dev/null
+       ln -sf vmlinux-%{kernel_release} /boot/vmlinux-%{alt_kernel}
+%endif
+fi
 
 %post drm
 %depmod %{kernel_release}
@@ -1089,6 +1135,7 @@ fi
 
 %files
 %defattr(644,root,root,755)
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/kernel
 %ifarch sparc sparc64
 /boot/vmlinux.aout-%{kernel_release}
 %endif
@@ -1097,6 +1144,7 @@ fi
 %endif
 /boot/vmlinuz-%{kernel_release}
 /boot/System.map-%{kernel_release}
+/boot/config-%{kernel_release}
 %ghost %{initrd_dir}/initrd-%{kernel_release}.gz
 %ghost %{initrd_dir}/initramfs-%{kernel_release}.img
 /lib/firmware/%{kernel_release}
@@ -1119,9 +1167,9 @@ fi
 /lib/modules/%{kernel_release}/kernel/sound/ac97_bus.ko*
 /lib/modules/%{kernel_release}/kernel/sound/sound*.ko*
 %ifnarch sparc
-%exclude /lib/modules/%{kernel_release}/kernel/drivers/media/video/cx88/cx88-alsa.ko*
-%exclude /lib/modules/%{kernel_release}/kernel/drivers/media/video/em28xx/em28xx-alsa.ko*
-%exclude /lib/modules/%{kernel_release}/kernel/drivers/media/video/saa7134/saa7134-alsa.ko*
+%exclude /lib/modules/%{kernel_release}/kernel/drivers/media/pci/cx88/cx88-alsa.ko*
+%exclude /lib/modules/%{kernel_release}/kernel/drivers/media/usb/em28xx/em28xx-alsa.ko*
+%exclude /lib/modules/%{kernel_release}/kernel/drivers/media/pci/saa7134/saa7134-alsa.ko*
 %endif
 %endif
 %dir /lib/modules/%{kernel_release}/misc
@@ -1134,7 +1182,6 @@ fi
 %exclude /lib/modules/%{kernel_release}/kernel/drivers/bluetooth/*_cs.ko*
 %exclude /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
 %exclude /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/b1pcmcia.ko*
-%exclude /lib/modules/%{kernel_release}/kernel/drivers/staging/telephony/ixj_pcmcia.ko*
 %exclude /lib/modules/%{kernel_release}/kernel/drivers/usb/gadget/g_midi.ko*
 %endif
 %exclude /lib/modules/%{kernel_release}/kernel/drivers/ide/ide-cs.ko*
@@ -1193,9 +1240,8 @@ fi
 /lib/modules/%{kernel_release}/kernel/drivers/bluetooth/*_cs.ko*
 /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
 /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/b1pcmcia.ko*
-/lib/modules/%{kernel_release}/kernel/drivers/staging/telephony/ixj_pcmcia.ko*
-%endif
 /lib/modules/%{kernel_release}/kernel/drivers/ata/pata_pcmcia.ko*
+%endif
 /lib/modules/%{kernel_release}/kernel/drivers/ide/ide-cs.ko*
 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/*_cs.ko*
 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/b43
@@ -1218,9 +1264,9 @@ fi
 %endif
 %ifnarch sparc
 /lib/modules/%{kernel_release}/kernel/drivers/usb/gadget/g_midi.ko*
-/lib/modules/%{kernel_release}/kernel/drivers/media/video/cx88/cx88-alsa.ko*
-/lib/modules/%{kernel_release}/kernel/drivers/media/video/em28xx/em28xx-alsa.ko*
-/lib/modules/%{kernel_release}/kernel/drivers/media/video/saa7134/saa7134-alsa.ko*
+/lib/modules/%{kernel_release}/kernel/drivers/media/pci/cx88/cx88-alsa.ko*
+/lib/modules/%{kernel_release}/kernel/drivers/media/usb/em28xx/em28xx-alsa.ko*
+/lib/modules/%{kernel_release}/kernel/drivers/media/pci/saa7134/saa7134-alsa.ko*
 %endif
 
 %if %{have_oss}
@@ -1252,7 +1298,7 @@ fi
 %{_kernelsrcdir}/arch/*/kernel/asm-offsets*
 %{_kernelsrcdir}/arch/*/kernel/sigframe*.h
 %{_kernelsrcdir}/drivers/lguest/lg.h
-%{_kernelsrcdir}/drivers/media/video/bt8xx/bttv.h
+%{_kernelsrcdir}/drivers/media/pci/bt8xx/bttv.h
 %{_kernelsrcdir}/kernel/bounds.c
 %{_kernelsrcdir}/scripts/basic/*.c
 %attr(755,root,root) %{_kernelsrcdir}/scripts/kconfig/*.sh
@@ -1271,7 +1317,7 @@ fi
 %{_kernelsrcdir}/scripts/kconfig/[m-u]*.h
 %{_kernelsrcdir}/scripts/kconfig/lxdialog
 %{_kernelsrcdir}/scripts/mod/*.c
-%{_kernelsrcdir}/scripts/mod/[^e]*.h
+%{_kernelsrcdir}/scripts/mod/modpost.h
 %attr(755,root,root) %{_kernelsrcdir}/scripts/mkcompile_h
 %{_kernelsrcdir}/scripts/mkmakefile
 %{_kernelsrcdir}/scripts/module-common.lds
@@ -1313,12 +1359,13 @@ fi
 %ifarch ppc ppc64
 %exclude %{_kernelsrcdir}/arch/powerpc/lib/crtsavres.*
 %endif
+%{_kernelsrcdir}/arch/arm/kvm
 %{_kernelsrcdir}/arch/s390/kvm
 %{_kernelsrcdir}/arch/x86/kvm
 %exclude %{_kernelsrcdir}/arch/*/kernel/asm-offsets*
 %exclude %{_kernelsrcdir}/arch/*/kernel/sigframe*.h
 %exclude %{_kernelsrcdir}/drivers/lguest/lg.h
-%exclude %{_kernelsrcdir}/drivers/media/video/bt8xx/bttv.h
+%exclude %{_kernelsrcdir}/drivers/media/pci/bt8xx/bttv.h
 %{_kernelsrcdir}/block
 %{_kernelsrcdir}/crypto
 %{_kernelsrcdir}/drivers
This page took 0.042048 seconds and 4 git commands to generate.