]> git.pld-linux.org Git - packages/kernel.git/blobdiff - kernel.spec
- fix brokeness in raid0 code
[packages/kernel.git] / kernel.spec
index a92eb38bfb1360a2f1cff823eba77c5ac9e2989e..30d53e8441055b617dea6dccb78d0e11a7ec00ea 100644 (file)
@@ -1,6 +1,6 @@
 #
 # LATEST VERSION CHECKER:
-# # curl -s http://www.kernel.org/kdist/finger_banner
+# # curl -s https://www.kernel.org/finger_banner
 #
 # TODO:
 # - benchmark NO_HZ & HZ=1000 vs HZ=300 on i686
 %bcond_without source          # don't build kernel-source package
 %bcond_without doc                     # don't build kernel-doc package
 %bcond_without pcmcia          # don't build pcmcia
+%bcond_without firmware        # don't build firmware into main package
 
 %bcond_with    verbose         # verbose build (V=1)
 
 %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
 %bcond_with    nfsroot         # build with root on NFS support
+%bcond_with    uksm            # build with UKSM patch, http://kerneldedup.org/projects/uksm/
 
 %bcond_without imq             # imq support
 %bcond_without esfq            # esfq support
@@ -68,9 +70,9 @@
 %define                have_pcmcia     0
 %endif
 
-%define                rel             1
-%define                basever         3.18
-%define                postver         .3
+%define                rel             2
+%define                basever         4.0
+%define                postver         .4
 
 # define this to '-%{basever}' for longterm branch
 %define                versuffix       %{nil}
@@ -94,6 +96,9 @@
 %if %{with vanilla}
 %define                alt_kernel      vanilla
 %endif
+%if %{without pae}
+%define                alt_kernel      nopae
+%endif
 
 # kernel release (used in filesystem and eventually in uname -r)
 # modules will be looked from /lib/modules/%{kernel_release}
@@ -112,11 +117,11 @@ 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: 9e854df51ca3fef8bfe566dbd7b89241
+Source0:       http://www.kernel.org/pub/linux/kernel/v4.x/linux-%{basever}.tar.xz
+# Source0-md5: a86916bd12798220da9eb4a1eec3616d
 %if "%{postver}" != ".0"
-Patch0:                http://www.kernel.org/pub/linux/kernel/v3.x/patch-%{version}.xz
-# Patch0-md5:  0d4f5406f6fbe34a53e1c5e1d2037e8b
+Patch0:                http://www.kernel.org/pub/linux/kernel/v4.x/patch-%{version}.xz
+# Patch0-md5:  30de8c55237264deee4d4fc60eee78fd
 %endif
 Source1:       kernel.sysconfig
 
@@ -140,6 +145,7 @@ Source41:   kernel-patches.config
 Source43:      kernel-vserver.config
 
 Source55:      kernel-imq.config
+Source56:      kernel-uksm.config
 
 Source58:      kernel-inittmpfs.config
 
@@ -183,8 +189,8 @@ Patch59:    kernel-rndis_host-wm5.patch
 # http://patches.aircrack-ng.org/hostap-kernel-2.6.18.patch
 Patch85:       kernel-hostap.patch
 
-%define        vserver_patch 3.10.9-vs2.3.6.6
-# http://vserver.13thfloor.at/Experimental/patch-3.13.6-vs2.3.6.11.diff
+%define        vserver_patch 3.18.5-vs2.3.7.3
+# http://vserver.13thfloor.at/Experimental/patch-3.18.5-vs2.3.7.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)
@@ -195,7 +201,7 @@ Patch101:   kernel-vserver-fixes.patch
 # Patch creation:
 # git clone git://aufs.git.sourceforge.net/gitroot/aufs/aufs3-standalone.git
 # cd aufs3-standalone
-# git checkout -b aufs3.15 origin/aufs3.15
+# git checkout -b aufs4.0 origin/aufs4.0
 # 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
@@ -206,6 +212,11 @@ Patch101:  kernel-vserver-fixes.patch
 Patch145:      kernel-aufs3.patch
 Patch146:      kernel-aufs3+vserver.patch
 
+%define uksm_major_version 0.1.2.3
+%define uksm_version %{uksm_major_version}-for-v3.18
+Patch150:      http://kerneldedup.org/download/uksm/%{uksm_major_version}/uksm-%{uksm_version}.patch
+# Patch150-md5:        b6a2b2aae9c2844d0c74690632d7019e
+
 # Show normal colors in menuconfig with ncurses ABI 6
 Patch250:      kernel-fix_256colors_menuconfig.patch
 
@@ -223,6 +234,7 @@ Patch505:   dm-crypt-sort-requests.patch
 Patch2000:     kernel-small_fixes.patch
 Patch2001:     kernel-pwc-uncompress.patch
 Patch2003:     kernel-regressions.patch
+Patch2004:     kernel-libata-ahci-pm.patch
 
 # bzr co lp:apparmor
 # ls apparmor/kernel-patches/3.12
@@ -270,7 +282,11 @@ Suggests:  crda
 Suggests:      dracut
 Suggests:      keyutils
 Suggests:      kernel%{versuffix}-ide = %{epoch}:%{version}-%{release}
+%if %{with firmware}
 Suggests:      linux-firmware
+%else
+Requires:      linux-firmware
+%endif
 Provides:      %{name}(netfilter) = 20070806
 Provides:      %{name}(vermagic) = %{kernel_release}
 Obsoletes:     kernel%{_alt_kernel}-char-lirc-ene0100
@@ -308,7 +324,11 @@ Conflicts: udev < 1:081
 Conflicts:     util-linux < 2.10o
 Conflicts:     util-vserver < 0.30.216
 Conflicts:     xfsprogs < 2.6.0
+%if %{without pae}
+ExclusiveArch: i686 pentium3 pentium4 athlon
+%else
 ExclusiveArch: i486 i586 i686 pentium3 pentium4 athlon %{x8664} x32 alpha arm ia64 ppc ppc64 sparc sparc64
+%endif
 ExclusiveOS:   Linux
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
@@ -698,6 +718,11 @@ cd linux-%{basever}
 %patch146 -p1
 %endif
 
+# UKSM
+%if %{with uksm}
+%patch150 -p1
+%endif
+
 %if %{with rescuecd}
 %patch7000 -p1
 %endif
@@ -726,6 +751,7 @@ cd linux-%{basever}
 %patch2000 -p1
 %patch2001 -p1
 #%patch2003 -p1
+%patch2004 -p1
 
 # Do not remove this, please!
 #%%patch50000 -p1
@@ -915,6 +941,9 @@ EOCONFIG
 %if %{with imq}
                %{SOURCE55} \
 %endif
+%if %{with uksm}
+               %{SOURCE56} \
+%endif
 %if %{with vserver}
                %{SOURCE43} \
 %endif
@@ -945,7 +974,7 @@ cd -
 
 %install
 rm -rf $RPM_BUILD_ROOT
-%{__make} %{MakeOpts} -j1 %{!?with_verbose:-s} modules_install firmware_install \
+%{__make} %{MakeOpts} -j1 %{!?with_verbose:-s} modules_install %{?with_firmware:firmware_install} \
        -C %{objdir} \
        %{?with_verbose:V=1} \
        DEPMOD=%{DepMod} \
@@ -1156,7 +1185,7 @@ if [ -x /sbin/update-grub -a -f /etc/sysconfig/grub ]; then
        fi
 fi
 if [ -x /sbin/new-kernel-pkg ]; then
-       /sbin/new-kernel-pkg --initrdfile=%{initrd_dir}/initrd-%{kernel_release}.gz --install %{kernel_release} --banner "PLD Linux (%{pld_release})%{?alt_kernel: / %{alt_kernel}}"
+       /sbin/new-kernel-pkg --initrdfile=%{initrd_dir}/$initrd_file --install %{kernel_release} --banner "PLD Linux (%{pld_release})%{?alt_kernel: / %{alt_kernel}}"
 fi
 if [ -x /sbin/rc-boot ]; then
        /sbin/rc-boot 1>&2 || :
@@ -1241,7 +1270,9 @@ fi
 /boot/config-%{kernel_release}
 %ghost %{initrd_dir}/initrd-%{kernel_release}.gz
 %ghost %{initrd_dir}/initramfs-%{kernel_release}.img
+%if %{with firmware}
 /lib/firmware/%{kernel_release}
+%endif
 
 %dir /lib/modules/%{kernel_release}
 %dir /lib/modules/%{kernel_release}/kernel
@@ -1461,7 +1492,6 @@ fi
 %{_kernelsrcdir}/arch/m68k/install.sh
 %{_kernelsrcdir}/arch/parisc/install.sh
 %{_kernelsrcdir}/arch/x86/ia32/[!M]*
-%{_kernelsrcdir}/arch/ia64/kvm
 %{_kernelsrcdir}/arch/powerpc/kvm
 %ifarch ppc ppc64
 %exclude %{_kernelsrcdir}/arch/powerpc/lib/crtsavres.*
This page took 0.036269 seconds and 4 git commands to generate.