X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=kernel.spec;h=ce24d210f10843197dad6c1680f0fb33ca89fbf4;hb=6f4b6a546ab265bf1193181d5e4ccc086236eca4;hp=1c797c2ebcb7f6e3b3f3b8fc9733edefa082d752;hpb=c06a8ce3c653ae31d4fe4fdbc34a86037ca55bbf;p=packages%2Fkernel.git diff --git a/kernel.spec b/kernel.spec index 1c797c2e..ce24d210 100644 --- a/kernel.spec +++ b/kernel.spec @@ -20,7 +20,6 @@ %bcond_without pcmcia # don't build pcmcia %bcond_with verbose # verbose build (V=1) -%bcond_with reiser4 # support for reiser4 fs (experimental) %bcond_with fbcondecor # build fbcondecor (disable FB_TILEBLITTING and affected fb modules) %bcond_without pae # build PAE (HIGHMEM64G) support on 32bit i686 athlon pentium3 pentium4 @@ -29,8 +28,9 @@ %bcond_without imq # imq support %bcond_without esfq # esfq support %bcond_without ipv6 # ipv6 support +%bcond_with padmcrypt # parallel dm-crypt -%bcond_without vserver # support for VServer (enabled by default) +%bcond_without vserver # support for VServer %bcond_with vanilla # don't include any patches %bcond_with rescuecd # build kernel for our rescue @@ -39,6 +39,7 @@ %{?debug:%define with_verbose 1} %define have_drm 1 +%define have_ide 1 %define have_oss 1 %define have_sound 1 %define have_pcmcia 1 @@ -51,6 +52,7 @@ %if %{with myown} %define have_drm 0 +%define have_ide 0 %define have_oss 0 %define have_sound 0 %define have_pcmcia 0 @@ -66,9 +68,11 @@ %define have_pcmcia 0 %endif -%define rel 0.1 -%define basever 3.10 -%define postver .0 +%define rel 1 +%define basever 3.14 +%define postver .15 + +%define versuffix -%{basever} # __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) @@ -101,17 +105,17 @@ Summary(de.UTF-8): Der Linux-Kernel (Kern des Linux-Betriebssystems) Summary(et.UTF-8): Linuxi kernel (ehk operatsioonisüsteemi tuum) Summary(fr.UTF-8): Le Kernel-Linux (La partie centrale du systeme) Summary(pl.UTF-8): Jądro Linuksa -Name: kernel%{_alt_kernel} +Name: kernel%{versuffix}%{_alt_kernel} Version: %{basever}%{postver} Release: %{rel} Epoch: 3 License: GPL v2 Group: Base/Kernel Source0: http://www.kernel.org/pub/linux/kernel/v3.x/linux-%{basever}.tar.xz -# Source0-md5: 4f25cd5bec5f8d5a7d935b3f2ccb8481 +# Source0-md5: b621207b3f6ecbb67db18b13258f8ea8 %if "%{postver}" != ".0" Patch0: http://www.kernel.org/pub/linux/kernel/v3.x/patch-%{version}.xz -# Patch0-md5: c5f2166686a913abf550bfed8b77df27 +# Patch0-md5: 497579393986bb76e08abc355e59550c %endif Source1: kernel.sysconfig @@ -135,7 +139,6 @@ Source41: kernel-patches.config Source43: kernel-vserver.config Source55: kernel-imq.config -Source56: kernel-reiser4.config Source58: kernel-inittmpfs.config @@ -143,6 +146,7 @@ Source58: kernel-inittmpfs.config Patch3: kernel-fbcondecor.patch Patch4: kernel-fbcon-margins.patch Patch5: linux-wistron-amilo8210.patch +Patch6: linux-wistron-nx.patch # netfilter related stuff mostly based on patch-o-matic-ng # snapshot 20070806 with some fixes. Some modules @@ -163,12 +167,8 @@ Patch40: kernel-layer7.patch Patch49: kernel-zph.patch # 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.9.2.patch.gz -# Patch51-md5: 6f7e3f62e887c073844281be90716c28 - # http://fatooh.org/esfq-2.6/sfq-2.6.24.1.tar.bz2 Patch53: kernel-esfq.patch @@ -184,10 +184,7 @@ Patch59: kernel-rndis_host-wm5.patch # http://patches.aircrack-ng.org/hostap-kernel-2.6.18.patch Patch85: kernel-hostap.patch -# http://www.linuxtv.org/wiki/index.php/TechniSat_CableStar_Combo_HD_CI#Patch -Patch90: kernel-technisat-combo-hd-ci.patch - -# http://vserver.13thfloor.at/Experimental/patch-3.9.5-vs2.3.6.5.diff +# http://vserver.13thfloor.at/Experimental/patch-3.13.6-vs2.3.6.11.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) @@ -210,14 +207,16 @@ Patch118: ovl09-fs-limit-filesystem-stacking-depth.patch # Patch creation: # git clone git://aufs.git.sourceforge.net/gitroot/aufs/aufs3-standalone.git # cd aufs3-standalone -# git checkout -b aufs3.8 origin/aufs3.8 -# cat aufs3-kbuild.patch aufs3-base.patch aufs3-standalone.patch > ~/rpm/packages/kernel/kernel-aufs3.patch +# git checkout -b aufs3.14 origin/aufs3.14 +# cat aufs3-kbuild.patch aufs3-base.patch aufs3-mmap.patch aufs3-standalone.patch > ~/rpm/packages/kernel/kernel-aufs3.patch # mkdir linux # cp -a Documentation fs include linux # diff -urN /usr/share/empty linux >> ~/rpm/packages/kernel/kernel-aufs3.patch # drop hunk at the end of patch (hunk is patching include/linux/Kbuild with single line change) +# cat aufs3-loopback.patch >> ~/rpm/packages/kernel/kernel-aufs3.patch # Patch145: kernel-aufs3.patch +Patch146: kernel-aufs3+vserver.patch # Show normal colors in menuconfig with ncurses ABI 6 Patch250: kernel-fix_256colors_menuconfig.patch @@ -225,11 +224,23 @@ Patch250: kernel-fix_256colors_menuconfig.patch # https://patchwork.kernel.org/patch/236261/ Patch400: kernel-virtio-gl-accel.patch +# http://people.redhat.com/mpatocka/patches/kernel/dm-crypt-paralelizace/current/series.html +Patch500: dm-crypt-remove-percpu.patch +Patch501: bio-kmalloc-align.patch +Patch502: dm-crypt-per_bio_data.patch +Patch503: dm-crypt-unbound-workqueue.patch +Patch504: dm-crypt-dont-allocate-partial-pages.patch +Patch505: dm-crypt-fix-allocation-deadlock.patch +Patch506: dm-crypt-remove-io-pool.patch +Patch507: dm-crypt-offload-writes-to-thread.patch +Patch508: dm-crypt-sort-requests.patch + Patch2000: kernel-small_fixes.patch Patch2001: kernel-pwc-uncompress.patch Patch2003: kernel-regressions.patch -# http://git.kernel.org/?p=linux/kernel/git/jj/linux-apparmor.git;a=shortlog;h=refs/heads/v3.5-aa2.8 +# bzr co lp:apparmor +# ls apparmor/kernel-patches/3.12 Patch5000: kernel-apparmor.patch # for rescuecd @@ -241,6 +252,7 @@ Patch7000: kernel-inittmpfs.patch #Patch50000: kernel-usb_reset.patch URL: http://www.kernel.org/ +BuildRequires: bc BuildRequires: binutils >= 3:2.18 %ifarch sparc sparc64 BuildRequires: elftoaout @@ -272,6 +284,7 @@ Requires: cpuinfo(pae) Suggests: crda Suggests: dracut Suggests: keyutils +Suggests: kernel%{versuffix}-ide = %{epoch}:%{version}-%{release} Suggests: linux-firmware Provides: %{name}(netfilter) = 20070806 Provides: %{name}(vermagic) = %{kernel_release} @@ -295,6 +308,7 @@ Obsoletes: kernel-smp Conflicts: e2fsprogs < 1.29 Conflicts: isdn4k-utils < 3.1pre1 Conflicts: jfsutils < 1.1.3 +Conflicts: libusb < 1.0.9 Conflicts: linux-firmware < 20120720 Conflicts: lvm2 < 2.02.40 Conflicts: module-init-tools < 3.16 @@ -303,7 +317,6 @@ Conflicts: oprofile < 0.9 Conflicts: ppp < 1:2.4.0 Conflicts: procps < 3.2.0 Conflicts: quota-tools < 3.09 -%{?with_reiserfs4:Conflicts: reiser4progs < 1.0.0} Conflicts: reiserfsprogs < 3.6.3 Conflicts: rpm < 4.4.2-0.2 Conflicts: udev < 1:081 @@ -343,9 +356,9 @@ BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %define topdir %{_builddir}/%{name}-%{version} %define srcdir %{topdir}/linux-%{basever} %define objdir %{topdir}/%{targetobj} -%define targetobj %{_target_base_arch}-gcc-%(%{kgcc} -dumpversion) +%define targetobj %{_target_base_arch}-gcc-%(%{__cc} -dumpversion) -%define _kernelsrcdir /usr/src/linux%{_alt_kernel}-%{version} +%define _kernelsrcdir /usr/src/linux%{versuffix}%{_alt_kernel}-%{version} %if "%{_target_base_arch}" != "%{_host_base_arch}" %define CrossOpts ARCH=%{_target_base_arch} CROSS_COMPILE=%{_target_cpu}-pld-linux- @@ -377,9 +390,12 @@ BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %endif %define DepMod /sbin/depmod %endif -%define MakeOpts %{CrossOpts} HOSTCC="%{__cc}" +# use 64-bit offsets for fixdeps to work with 64-bit inodes +%define MakeOpts %{CrossOpts} HOSTCC="%{__cc} -D_FILE_OFFSET_BITS=64" %define __features \ +%{?with_vserver:Vserver - enabled}\ +%{!?with_vserver:WARNING: VSERVER IS DISABLED IN THIS KERNEL BUILD!}\ %{?with_fbcondecor:Fbsplash/fbcondecor - enabled }\ %{?with_nfsroot:Root on NFS - enabled}\ @@ -450,6 +466,24 @@ DRM Kernel Treiber. %description drm -l pl.UTF-8 Sterowniki DRM. +%package ide +Summary: IDE kernel modules +Summary(de.UTF-8): IDE Kernel Treiber +Summary(pl.UTF-8): Sterowniki IDE +Group: Base/Kernel +Requires(postun): %{name} = %{epoch}:%{version}-%{release} +Requires: %{name} = %{epoch}:%{version}-%{release} +AutoReqProv: no + +%description ide +IDE kernel modules. + +%description ide -l de.UTF-8 +IDE Kernel Treiber. + +%description ide -l pl.UTF-8 +Sterowniki IDE. + %package pcmcia Summary: PCMCIA modules Summary(de.UTF-8): PCMCIA Module @@ -537,6 +571,7 @@ Summary(de.UTF-8): Development Dateien die beim Kernel Modul kompilationen gebra Summary(pl.UTF-8): Pliki służące do budowania modułów jądra Group: Development/Building Requires: %{name}-headers = %{epoch}:%{version}-%{release} +Requires: make Conflicts: rpmbuild(macros) < 1.652 AutoReqProv: no @@ -625,6 +660,7 @@ cd linux-%{basever} %endif %patch4 -p1 %patch5 -p1 +%patch6 -p1 ## netfilter # @@ -650,11 +686,6 @@ cd linux-%{basever} %patch50 -p1 %endif -# reiser4 -%if %{with reiser4} -%patch51 -p1 -%endif - # esfq %if %{with esfq} %patch53 -p1 @@ -669,9 +700,6 @@ cd linux-%{basever} # hostap enhancements from/for aircrack-ng %patch85 -p1 -# TechniSat_CableStar_Combo_HD_CI -%patch90 -p1 - # vserver %if %{with vserver} %patch100 -p1 @@ -690,6 +718,9 @@ cd linux-%{basever} # aufs3 %patch145 -p1 +%if %{with vserver} +%patch146 -p1 +%endif %if %{with rescuecd} %patch7000 -p1 @@ -703,6 +734,19 @@ cd linux-%{basever} # virtio-gl %patch400 -p1 +# parallel dm-crypt +%if %{with padmcrypt} +%patch500 -p1 +%patch501 -p1 +%patch502 -p1 +%patch503 -p1 +%patch504 -p1 +%patch505 -p1 +%patch506 -p1 +%patch507 -p1 +%patch508 -p1 +%endif + %endif # vanilla # Small fixes: @@ -730,7 +774,7 @@ SRCARCH := %{target_arch_dir} ARCH := %{_target_base_arch} Q := %{!?with_verbose:@} MAKE_OPTS := %{MakeOpts} -DEFCONFIG := %{defconfig} +DEFCONFIG := %{defconfig} EOF RescueConfig() { @@ -744,7 +788,6 @@ RescueConfig() { # CONFIG_DVB_CORE is not set # CONFIG_HAMRADIO is not set # CONFIG_ARCNET is not set - # CONFIG_FB is not set # CONFIG_DRM is not set # CONFIG_WATCHDOG is not set # CONFIG_INPUT_JOYSTICK is not set @@ -762,6 +805,60 @@ RescueConfig() { # CONFIG_MEDIA_SUPPORT is not set # CONFIG_UWB is not set # CONFIG_PWM is not set + # CONFIG_COMEDI_NI_LABPC_ISA is not set + # CONFIG_FB_SYS_FILLRECT is not set + # CONFIG_FB_SYS_COPYAREA is not set + # CONFIG_FB_SYS_IMAGEBLIT is not set + # CONFIG_FB_SYS_FOPS is not set + # CONFIG_FB_HECUBA is not set + # CONFIG_FB_SVGALIB is not set + # CONFIG_FB_CIRRUS is not set + # CONFIG_FB_PM2 is not set + # CONFIG_FB_CYBER2000 is not set + # CONFIG_FB_ARC is not set + # CONFIG_FB_ASILIANT is not set + # CONFIG_FB_IMSTT is not set + # CONFIG_FB_VGA16 is not set + # CONFIG_FB_UVESA is not set + # CONFIG_FB_N411 is not set + # CONFIG_FB_HGA is not set + # CONFIG_FB_S1D13XXX is not set + # CONFIG_FB_NVIDIA is not set + # CONFIG_FB_RIVA is not set + # CONFIG_FB_I740 is not set + # CONFIG_FB_LE80578 is not set + # CONFIG_FB_CARILLO_RANCH is not set + # CONFIG_FB_MATROX is not set + # CONFIG_FB_RADEON is not set + # CONFIG_FB_ATY128 is not set + # CONFIG_FB_ATY is not set + # CONFIG_FB_S3 is not set + # CONFIG_FB_SAVAGE is not set + # CONFIG_FB_SIS is not set + # CONFIG_FB_VIA is not set + # CONFIG_FB_NEOMAGIC is not set + # CONFIG_FB_KYRO is not set + # CONFIG_FB_3DFX is not set + # CONFIG_FB_VOODOO1 is not set + # CONFIG_FB_VT8623 is not set + # CONFIG_FB_TRIDENT is not set + # CONFIG_FB_ARK is not set + # CONFIG_FB_PM3 is not set + # CONFIG_FB_CARMINE is not set + # CONFIG_FB_GEODE is not set + # CONFIG_FB_TMIO is not set + # CONFIG_FB_SM501 is not set + # CONFIG_FB_SMSCUFX is not set + # CONFIG_FB_UDL is not set + # CONFIG_FB_GOLDFISH is not set + # CONFIG_XEN_FBDEV_FRONTEND is not set + # CONFIG_FB_METRONOME is not set + # CONFIG_FB_MB862XX is not set + # CONFIG_FB_BROADSHEET is not set + # CONFIG_FB_AUO_K190X is not set + # CONFIG_FB_AUO_K1900 is not set + # CONFIG_FB_AUO_K1901 is not set + # CONFIG_FB_HYPERV is not set CONFIG_AUFS=y CONFIG_AUFS_FS=y CONFIG_AUFS_BR_RAMFS=y @@ -770,6 +867,9 @@ RescueConfig() { CONFIG_ISO9660_FS=y CONFIG_NLS_UTF8=y CONFIG_SQUASHFS=y + CONFIG_FB=y + CONFIG_FB_EFI=y + CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y EOCONFIG return 0 @@ -798,12 +898,12 @@ BuildConfig() { %endif %ifarch i686 athlon pentium3 pentium4 - %if %{with pae} + %if %{with pae} CONFIG_HIGHMEM4G=n CONFIG_HIGHMEM64G=y CONFIG_X86_PAE=y CONFIG_NUMA=n - %endif + %endif %endif %if %{without pcmcia} @@ -839,9 +939,6 @@ EOCONFIG rescue.config \ %endif \ -%if %{with reiser4} - %{SOURCE56} \ -%endif %if %{with imq} %{SOURCE55} \ %endif @@ -1042,26 +1139,42 @@ fi %depmod %{kernel_release} +%if %{without vserver} +%banner -e -a kernel < /dev/null - ln -sf initrd-%{kernel_release}.gz %{initrd_dir}/initrd + if [ -n "$initrd_file" ] ; then + ln -sf "$initrd_file" %{initrd_dir}/initrd + fi %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} + if [ -n "$initrd_file" ] ; then + ln -sf "$initrd_file" %{initrd_dir}/initrd%{_alt_kernel} + fi %endif fi -# if dracut is present then generate full-featured initramfs -if [[ "$USE_DRACUT" != [Nn][Oo] ]] && [ -x /sbin/dracut ]; then - /sbin/dracut --force --quiet /boot/initramfs-%{kernel_release}.img %{kernel_release} -fi - # update boot loaders when old package files are gone from filesystem if [ -x /sbin/update-grub -a -f /etc/sysconfig/grub ]; then if [ "$(. /etc/sysconfig/grub; echo ${UPDATE_GRUB:-no})" = "yes" ]; then @@ -1074,6 +1187,9 @@ fi if [ -x /sbin/rc-boot ]; then /sbin/rc-boot 1>&2 || : fi +if [ -x /sbin/efi-boot-update ]; then + /sbin/efi-boot-update --auto || : +fi %post vmlinux [ -f /etc/sysconfig/kernel ] && . /etc/sysconfig/kernel @@ -1092,6 +1208,12 @@ fi %postun drm %depmod %{kernel_release} +%post ide +%depmod %{kernel_release} + +%postun ide +%depmod %{kernel_release} + %post pcmcia %depmod %{kernel_release} @@ -1111,13 +1233,13 @@ fi %depmod %{kernel_release} %post headers -ln -snf %{basename:%{_kernelsrcdir}} %{_prefix}/src/linux%{_alt_kernel} +ln -snf %{basename:%{_kernelsrcdir}} %{_prefix}/src/linux%{versuffix}%{_alt_kernel} %postun headers if [ "$1" = "0" ]; then - if [ -L %{_prefix}/src/linux%{_alt_kernel} ]; then - if [ "$(readlink %{_prefix}/src/linux%{_alt_kernel})" = "linux%{_alt_kernel}-%{version}" ]; then - rm -f %{_prefix}/src/linux%{_alt_kernel} + if [ -L %{_prefix}/src/linux%{versuffix}%{_alt_kernel} ]; then + if [ "$(readlink %{_prefix}/src/linux%{versuffix}%{_alt_kernel})" = "linux%{versuffix}%{_alt_kernel}-%{version}" ]; then + rm -f %{_prefix}/src/linux%{versuffix}%{_alt_kernel} fi fi fi @@ -1155,6 +1277,9 @@ fi %if %{have_drm} %exclude /lib/modules/%{kernel_release}/kernel/drivers/gpu %endif +%if %{have_ide} +%exclude /lib/modules/%{kernel_release}/kernel/drivers/ide/* +%endif /lib/modules/%{kernel_release}/kernel/fs /lib/modules/%{kernel_release}/kernel/kernel /lib/modules/%{kernel_release}/kernel/lib @@ -1228,6 +1353,15 @@ fi /lib/modules/%{kernel_release}/kernel/drivers/gpu %endif +%if %{have_ide} +%files ide +%defattr(644,root,root,755) +/lib/modules/%{kernel_release}/kernel/drivers/ide/* +%if %{have_pcmcia} +%exclude /lib/modules/%{kernel_release}/kernel/drivers/ide/ide-cs.ko* +%endif +%endif + %if %{have_pcmcia} %files pcmcia %defattr(644,root,root,755) @@ -1358,6 +1492,8 @@ fi %exclude %{_kernelsrcdir}/arch/powerpc/lib/crtsavres.* %endif %{_kernelsrcdir}/arch/arm/kvm +%{_kernelsrcdir}/arch/arm64/kvm +%{_kernelsrcdir}/arch/mips/kvm %{_kernelsrcdir}/arch/s390/kvm %{_kernelsrcdir}/arch/x86/kvm %exclude %{_kernelsrcdir}/arch/*/kernel/asm-offsets*