X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=kernel-2.6.spec;h=2999d4caa33a15734f4d0a544c31ad96c754d02a;hb=2779994b9d20c99f3207efb75490407bf0896e71;hp=1fd6a185e4f179c99cf6e03fdd4f9aa2e447f37c;hpb=602e9543de1c00351cb76ba75e41b1290a553727;p=linux-2.6.git diff --git a/kernel-2.6.spec b/kernel-2.6.spec index 1fd6a185e..2999d4caa 100644 --- a/kernel-2.6.spec +++ b/kernel-2.6.spec @@ -12,6 +12,7 @@ Summary: The Linux kernel (the core of the Linux operating system) %define builduml 0 %define buildxen 0 %define builddoc 0 +%define headers 1 # default is to not build this - to override, use something like # kernel-SPECVARS := iwlwifi=1 @@ -24,7 +25,7 @@ Summary: The Linux kernel (the core of the Linux operating system) # for module-tag.py - sublevel is used for the version (middle) part of tag names %define name linux-2.6 %define module_version_varname sublevel -%define taglevel 22 +%define taglevel 43 # # Polite request for people who spin their own kernel rpms: @@ -43,13 +44,18 @@ Summary: The Linux kernel (the core of the Linux operating system) # updated every time the PL kernel is updated. %define vini_pl_patch 561 -%define release vs%{vsversion}.%{taglevel}%{?pldistro:.%{pldistro}}%{?date:.%{date}} +#%define updatelevel 1 + +%define kernelrelease vs%{vsversion}.%{taglevel}%{?pldistro:.%{pldistro}}%{?date:.%{date}}%{?updatelevel:.%{updatelevel}} +%define packagerelease %{kernelrelease} + + %{!?pldistro:%global pldistro planetlab} %define signmodules 0 %define make_target bzImage -%define KVERREL %{PACKAGE_VERSION}-%{PACKAGE_RELEASE} +%define KVERREL %{PACKAGE_VERSION}-%{kernelrelease} # Override generic defaults with per-arch defaults @@ -92,6 +98,7 @@ Summary: The Linux kernel (the core of the Linux operating system) # scripts use them. # %define kernel_prereq fileutils, module-init-tools, initscripts >= 5.83, mkinitrd >= 3.5.5 +%define _unpackaged_files_terminate_build 0 Vendor: PlanetLab Packager: PlanetLab Central @@ -102,13 +109,13 @@ Name: kernel Group: System Environment/Kernel License: GPLv2 Version: %{rpmversion} -Release: %{release} +Release: %{packagerelease} ExclusiveOS: Linux Provides: kernel = %{version} Provides: kernel-drm = 4.3.0 -Provides: kernel-%{_target_cpu} = %{rpmversion}-%{release} -Provides: kernel-smp = %{rpmversion}-%{release} -Provides: kernel-smp-%{_target_cpu} = %{rpmversion}-%{release} +Provides: kernel-%{_target_cpu} = %{rpmversion}-%{kernelrelease} +Provides: kernel-smp = %{rpmversion}-%{kernelrelease} +Provides: kernel-smp-%{_target_cpu} = %{rpmversion}-%{kernelrelease} Prereq: %{kernel_prereq} Conflicts: %{kernel_dot_org_conflicts} Conflicts: %{package_conflicts} @@ -129,7 +136,6 @@ BuildConflicts: rhbuildsys(DiskFree) < 500Mb Source0: ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-%{kversion}.tar.bz2 -Source10: %{pldistro}-%{kversion}-i586.config Source11: %{pldistro}-%{kversion}-i686.config Source12: %{pldistro}-%{kversion}-x86_64.config %if %{builduml} @@ -145,13 +151,17 @@ Patch000: ftp://ftp.kernel.org/pub/linux/kernel/v2.6/patch-%{rpmversion}.bz2 %endif Patch010: linux-2.6-010-e1000e.patch +Patch015: linux-2.6-015-igb.patch Patch020: linux-2.6-020-build-id.patch Patch030: linux-2.6-030-netns.patch Patch040: linux-2.6-040-i_mutex-check.patch +Patch050: linux-2.6-050-getline.patch # These are patches picked up from Fedora/RHEL Patch100: linux-2.6-100-build-nonintconfig.patch +Patch150: linux-2.6-150-cciss-allow-kexec-to-work.patch + # Linux-VServer Patch200: patch-%{rpmversion}-vs%{vsversion}.diff Patch210: linux-2.6-210-vserver-cpu-sched.patch @@ -170,6 +180,7 @@ Patch524: linux-2.6-524-peercred.patch Patch525: linux-2.6-525-sknid-elevator.patch Patch526: linux-2.6-526-tun-tap.patch Patch527: linux-2.6-527-iptables-classify-add-mark.patch +Patch528: linux-2.6-528-enable-stdtun.patch Patch530: linux-2.6-530-built-by-support.patch Patch540: linux-2.6-540-oom-kill.patch Patch550: linux-2.6-550-raise-default-nfile-ulimit.patch @@ -177,10 +188,25 @@ Patch560: linux-2.6-560-mmconf.patch Patch570: linux-2.6-570-tagxid.patch Patch580: linux-2.6-580-show-proc-virt.patch Patch590: linux-2.6-590-chopstix-intern.patch +Patch592: linux-2.6-592-GC-dcookies-nosleep.patch Patch620: linux-2.6-620-kdb.patch Patch630: linux-2.6-630-sched-fix.patch Patch640: linux-2.6-640-netlink-audit-hack.patch Patch650: linux-2.6-650-hangcheck-reboot.patch +Patch660: linux-2.6-660-nmi-watchdog-default.patch +%if "%{distroname}" == "f9" || "%{distroname}" == "f10" +Patch670: linux-2.6-670-gcc43.patch +%endif +Patch680: linux-2.6-680-htb-hysteresis-tso.patch +Patch690: linux-2.6-690-web100.patch +Patch700: linux-2.6-700-fperm.patch +Patch710: linux-2.6-710-avoid-64bits-addr-pcmcia.patch +# This one is a backport from usptream. +Patch720: linux-2.6-720-bonding-layer23.patch +Patch721: linux-2.6-721-bonding-layer3.patch +Patch722: linux-2.6-722-bonding-rr.patch + +Patch800: linux-2.6-800-fix-4-bit-apicid-assumption.patch # See also the file named 'sources' here for the related checksums # NOTE. iwlwifi should be in-kernel starting from 2.6.24 @@ -204,9 +230,9 @@ input and output, etc. Summary: Development package for building kernel modules to match the kernel. Group: System Environment/Kernel AutoReqProv: no -Provides: kernel-devel-%{_target_cpu} = %{rpmversion}-%{release} -Provides: kernel-smp-devel = %{rpmversion}-%{release} -Provides: kernel-smp-devel-%{_target_cpu} = %{rpmversion}-%{release} +Provides: kernel-devel-%{_target_cpu} = %{rpmversion}-%{kernelrelease} +Provides: kernel-smp-devel = %{rpmversion}-%{kernelrelease} +Provides: kernel-smp-devel-%{_target_cpu} = %{rpmversion}-%{kernelrelease} Prereq: /usr/bin/find %description devel @@ -231,7 +257,7 @@ Summary: The Linux kernel compiled for unprivileged Xen guest VMs Group: System Environment/Kernel Provides: kernel = %{version} -Provides: kernel-%{_target_cpu} = %{rpmversion}-%{release}xenU +Provides: kernel-%{_target_cpu} = %{rpmversion}-%{kernelrelease}xenU Prereq: %{kernel_prereq} Conflicts: %{kernel_dot_org_conflicts} Conflicts: %{package_conflicts} @@ -255,9 +281,9 @@ the guest0 domain. Summary: Development package for building kernel modules to match the kernel. Group: System Environment/Kernel AutoReqProv: no -Provides: kernel-xenU-devel-%{_target_cpu} = %{rpmversion}-%{release} -Provides: kernel-devel-%{_target_cpu} = %{rpmversion}-%{release}xenU -Provides: kernel-devel = %{rpmversion}-%{release}xenU +Provides: kernel-xenU-devel-%{_target_cpu} = %{rpmversion}-%{kernelrelease} +Provides: kernel-devel-%{_target_cpu} = %{rpmversion}-%{kernelrelease}xenU +Provides: kernel-devel = %{rpmversion}-%{kernelrelease}xenU Prereq: /usr/sbin/hardlink, /usr/bin/find %description xenU-devel @@ -275,9 +301,9 @@ This package includes a user mode version of the Linux kernel. %package uml-devel Summary: Development package for building kernel modules to match the UML kernel. Group: System Environment/Kernel -Provides: kernel-uml-devel-%{_target_cpu} = %{rpmversion}-%{release} -Provides: kernel-devel-%{_target_cpu} = %{rpmversion}-%{release}smp -Provides: kernel-devel = %{rpmversion}-%{release}smp +Provides: kernel-uml-devel-%{_target_cpu} = %{rpmversion}-%{kernelrelease} +Provides: kernel-devel-%{_target_cpu} = %{rpmversion}-%{kernelrelease}smp +Provides: kernel-devel = %{rpmversion}-%{kernelrelease}smp AutoReqProv: no Prereq: /usr/sbin/hardlink, /usr/bin/find @@ -299,7 +325,7 @@ Summary: A placeholder RPM that provides kernel and kernel-drm Group: System Environment/Kernel Provides: kernel = %{version} Provides: kernel-drm = 4.3.0 -Provides: kernel-%{_target_cpu} = %{rpmversion}-%{release} +Provides: kernel-%{_target_cpu} = %{rpmversion}-%{kernelrelease} %description vserver VServers do not require and cannot use kernels, but some RPMs have @@ -307,6 +333,12 @@ implicit or explicit dependencies on the "kernel" package (e.g. tcpdump). This package installs no files but provides the necessary dependencies to make rpm and yum happy. +%package headers +Summary: Kernel header +Group: System Environment/Kernel + +%description headers +This package contains the sanitized kernel headers. %prep # First we unpack the kernel tarball. @@ -322,6 +354,10 @@ else cd kernel-%{kversion} fi +%if "0%{updatelevel}" +echo "This is a trivial maintenance update. There will be no reboot following installation." +%endif + KERNEL_PREVIOUS=vanilla # Dark RPM-magic to apply each patch to a hardlinked copy of the tree. %define ApplyPatch() \ @@ -347,6 +383,7 @@ KERNEL_PREVIOUS=vanilla %endif %ApplyPatch 10 +%ApplyPatch 15 %ApplyPatch 20 # NetNS patch for VINI @@ -354,9 +391,12 @@ KERNEL_PREVIOUS=vanilla %ApplyPatch 30 %endif %ApplyPatch 40 +%ApplyPatch 50 %ApplyPatch 100 +%ApplyPatch 150 + %ApplyPatch 200 %ApplyPatch 210 %ApplyPatch 220 @@ -374,6 +414,7 @@ KERNEL_PREVIOUS=vanilla %ApplyPatch 525 %ApplyPatch 526 %ApplyPatch 527 +%ApplyPatch 528 %ApplyPatch 530 %ApplyPatch 540 @@ -382,10 +423,23 @@ KERNEL_PREVIOUS=vanilla %ApplyPatch 570 %ApplyPatch 580 %ApplyPatch 590 +%ApplyPatch 592 %ApplyPatch 620 %ApplyPatch 630 %ApplyPatch 640 %ApplyPatch 650 +%ApplyPatch 660 +%if "%{distroname}" == "f9" || "%{distroname}" == "f10" +%ApplyPatch 670 +%endif +%ApplyPatch 680 +%ApplyPatch 700 +%ApplyPatch 710 +%ApplyPatch 720 +%ApplyPatch 721 +%ApplyPatch 722 +%ApplyPatch 800 + # NetNS conflict-resolving patch for VINI. Will work with patch vini_pl_patch-1 but may # break with later patches. @@ -457,11 +511,11 @@ BuildKernel() { DevelLink= fi - KernelVer=%{version}-%{release}$Flavour + KernelVer=%{version}-%{kernelrelease}$Flavour echo BUILDING A KERNEL FOR $Flavour %{_target_cpu}... # make sure EXTRAVERSION says what we want it to say - perl -p -i -e "s/^EXTRAVERSION.*/EXTRAVERSION = %{?patchlevel:.%{patchlevel}}-%{release}$Flavour/" Makefile + perl -p -i -e "s/^EXTRAVERSION.*/EXTRAVERSION = %{?patchlevel:.%{patchlevel}}-%{kernelrelease}$Flavour/" Makefile # and now to start the build process @@ -474,6 +528,11 @@ BuildKernel() { make -s ARCH=$Arch nonint_oldconfig > /dev/null make -s ARCH=$Arch %{?_smp_mflags} $MakeTarget make -s ARCH=$Arch %{?_smp_mflags} modules || exit 1 +%if %{headers} + make -s ARCH=$Arch INSTALL_HDR_PATH=$RPM_BUILD_ROOT/usr + find $RPM_BUILD_ROOT/%{_includedir} -name \*.cmd -delete + rm -f $RPM_BUILD_ROOT/%{_includedir}/{..,.}{check,install}* +%endif %if %{build_iwlwifi} # build the iwlwifi driver @@ -708,7 +767,7 @@ if echo $rootdev |grep -q /dev/mapper 2>/dev/null ; then fi fi -[ ! -x /usr/sbin/module_upgrade ] || /usr/sbin/module_upgrade %{rpmversion}-%{release} +[ ! -x /usr/sbin/module_upgrade ] || /usr/sbin/module_upgrade %{rpmversion}-%{kernelrelease} #/sbin/new-kernel-pkg --package kernel --mkinitrd --depmod --install %{KVERREL} # Older modutils do not support --package option /sbin/new-kernel-pkg --mkinitrd --depmod --install %{KVERREL} @@ -731,7 +790,10 @@ popd > /dev/null # ask for a reboot mkdir -p /etc/planetlab -touch /etc/planetlab/update-reboot + +%if "%{updatelevel}"=="" +#touch /etc/planetlab/update-reboot +%endif %post devel [ -f /etc/sysconfig/kernel ] && . /etc/sysconfig/kernel @@ -846,7 +908,85 @@ rm -f /lib/modules/%{KVERREL}uml/modules.* %dir %{_datadir}/doc/kernel-doc-%{kversion} %endif +%if %{headers} +%files headers +%defattr(-,root,root) +%dir %{_includedir} +%{_includedir}/* +%endif + %changelog +* Fri Feb 05 2010 S.Çağlar Onur - linux-2.6-22-43 +- Tagging 22 branch with following changes; +- * new e1000 driver, +- * VXC_PROC_WRITE support, +- * Bonding and multipath support, +- * IGB driver support, +- * Boot fix for the HP DL320 G6 boxes, +- * Kexec fix for CCISS controllers, + +* Fri Jun 26 2009 Daniel Hokka Zakrisson - linux-2.6-22-42 +- Bonding and multipath things. + +* Thu Jun 11 2009 Thierry Parmentelat - linux-2.6-22-41 +- configs for the embedemu pldistro + +* Wed Jun 03 2009 Sapan Bhatia - linux-2.6-22-40 +- Added patch 700, which implements VXC_PROC_WRITE support + +* Tue May 26 2009 Thierry Parmentelat - linux-2.6-22-39 +- outputs the kernel-headers rpm as backported from 2.6.27 + +* Fri May 15 2009 Thierry Parmentelat - linux-2.6-22-38 +- the pcmcia patch needed to be adapted to 2.6.22 + +* Tue May 12 2009 Thierry Parmentelat - linux-2.6-22-37 +- enable patch about 64bits adresses and cardbus + +* Thu Apr 09 2009 Sapan Bhatia - linux-2.6-22-36 +- Inserting this patch, which I missed in the previous tag. + +* Thu Apr 09 2009 Sapan Bhatia - linux-2.6-22-35 +- I missed this hunk in the previous tag. It's disabled by default. + +* Thu Apr 09 2009 Sapan Bhatia - linux-2.6-22-34 +- Tagging after having tested the latest kernel in branch for a couple of days. + +* Mon Feb 23 2009 Sapan Bhatia - linux-2.6-22-33 + +* Thu Jan 08 2009 Thierry Parmentelat - linux-2.6-22-32 +- support building on fedora 10 + +* Tue Dec 02 2008 Daniel Hokka Zakrisson - linux-2.6-22-31 +- add patches for m-lab and drl + +* Tue Nov 11 2008 Daniel Hokka Zakrisson - linux-2.6-22-30 +- Use Intel's e1000e driver. + +* Thu Oct 02 2008 Thierry Parmentelat - linux-2.6-22-29 +- added drivers for OPTION's globetrotter (gt 3g+ emea) umts cards +- + cleanup outdated configs + +* Wed Sep 17 2008 Sapan Bhatia - linux-2.6-22-28 +- Recovering a hunk that I accidentally ommited out of the last commit. Should not entail retesting, because the commits +- were unrelated. + +* Sun Sep 14 2008 Sapan Bhatia - linux-2.6-22-27 +- Fixing the accounting issue that causes certain connections to be misaccounted, and that causes NM/peercreds to +- intermittently break. + +* Wed Sep 10 2008 Thierry Parmentelat - linux-2.6-22-26 +- patch for building on f9/gcc-4.3, no functional change on other distros + +* Sun Aug 17 2008 Daniel Hokka Zakrisson - linux-2.6-22-25 +- FUSE support. + +* Tue Aug 12 2008 Sapan Bhatia - linux-2.6-22-24 +- Enable nmi watchdog by default. + +* Mon Aug 04 2008 Sapan Bhatia - linux-2.6-22-23 +- Fixed a bug in my previous commit. + * Mon Aug 04 2008 Sapan Bhatia - linux-2.6-22-22 - * 1 fix for using udp/listening sockets via raw - * 1 fix to help codemux divide traffic in PlanetFlow