]> git.pld-linux.org Git - packages/kernel.git/commitdiff
This commit was manufactured by cvs2git to create branch 'LINUX_2_6_25'. auto/th/kernel-2_6_25_11-1
authorcvs2git <feedback@pld-linux.org>
Mon, 14 Jul 2008 10:34:50 +0000 (10:34 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
Cherrypick from LINUX_2_6 2008-07-14 10:34:50 UTC Arkadiusz Miśkiewicz <arekm@maven.pl> '- up to 2.6.25.11':
    kernel.spec -> 1.441.2.1935

kernel.spec [new file with mode: 0644]

diff --git a/kernel.spec b/kernel.spec
new file mode 100644 (file)
index 0000000..f38fd5e
--- /dev/null
@@ -0,0 +1,1704 @@
+#
+# STATUS: 2.6.25 works, needs testing
+#
+# NOTE:
+# - suspend2 renamed to tuxonice (as project name)
+#
+# TODO:
+# - benchmark NO_HZ & HZ=1000 vs HZ=300 on i686
+# - apparmor (needs testing)
+#
+# FUTURE:
+# - update xen patch
+# - pom-ng quake3-conntrack-nat -> nf_conntrack ?
+# - pom-ng talk-conntrack-nat -> nf_conntrack ?
+# - nf-hipac ?
+# - pax hooks for selinux (experimental)
+#
+# Conditional build:
+%bcond_without source          # don't build kernel-source package
+%bcond_without pcmcia          # don't build pcmcia
+
+%bcond_with    verbose         # verbose build (V=1)
+%bcond_with    xen0            # added Xen0 support
+%bcond_with    xenU            # added XenU support
+%bcond_without reiser4         # support for reiser4 fs (experimental)
+
+%bcond_without grsecurity      # don't build grsecurity nor pax at all
+%bcond_without grsec_minimal   # build only minimal subset (proc,link,fifo,shm)
+%bcond_with    grsec_full      # build full grsecurity
+%bcond_with    pax_full        # build pax and full grsecurity (ie. grsec_full && pax)
+%bcond_with    pax             # build pax support
+
+%bcond_with    fbcondecor      # fbsplash/fbcondecor instead of bootsplash
+%bcond_with    pae             # build PAE (HIGHMEM64G) support on uniprocessor
+%bcond_with    nfsroot         # build with root on NFS support
+
+%bcond_without imq             # imq support
+%bcond_without wrr             # wrr support
+%bcond_without ipv6            # ipv6 support
+
+%bcond_without vserver         # support for VServer (enabled by default)
+%bcond_without tuxonice        # support for tuxonice (ex-suspend2) (enabled by default)
+%bcond_with    vs22            # use vserver 2.2 instead of 2.3 (see comment near patch 102)
+%bcond_with    apparmor        # build kernel with apparmor (very exerimental mix)
+
+%bcond_with    rescuecd        # build kernel for our rescue
+
+%bcond_with    myown           # build with your own config (kernel-myown.config)
+
+%{?debug:%define with_verbose 1}
+
+%if %{without grsecurity}
+%undefine      with_grsec_full
+%undefine      with_grsec_minimal
+%undefine      with_pax
+%undefine      with_pax_full
+%endif
+
+%if %{with pax_full}
+%undefine      with_grsec_minimal
+%define                with_grsec_full         1
+%define                with_grsecurity         1
+%define                with_pax                1
+%endif
+
+%if %{with grsec_full}
+%undefine      with_grsec_minimal
+%define                with_grsecurity         1
+%if %{with pax}
+%define                with_pax_full           1
+%endif
+%endif
+
+%if %{with grsec_minimal}
+%undefine      with_grsec_full
+%undefine      with_pax_full
+%define                with_grsecurity         1
+%endif
+
+%define                have_drm        1
+%define                have_oss        1
+%define                have_sound      1
+
+%if %{with rescuecd}
+%undefine      with_tuxonice
+%undefine      with_grsec_full
+%undefine      with_grsec_minimal
+%undefine      with_pax
+%undefine      with_pax_full
+%undefine      with_vserver
+%define                have_drm        0
+%define                have_sound      0
+%endif
+
+%ifarch %{ix86} alpha ppc
+%define                have_isa        1
+%else
+%define                have_isa        0
+%endif
+
+%ifarch sparc sparc64
+%undefine      with_pcmcia
+%define                have_drm        0
+%define                have_oss        0
+%endif
+
+%define                _basever                2.6.25
+%define                _postver                .11
+%define                _prepatch               %{nil}
+%define                _pre_rc                 %{nil}
+%define                _rc                     %{nil}
+%define                _rel                    1
+
+%define                _enable_debug_packages                  0
+
+%define                squashfs_version        3.3
+%define                tuxonice_version        3.0-rc7
+%define                netfilter_snap          20070806
+%define                xen_version             3.0.2
+
+%define                _alt_kernel     %{?with_pax:-pax}%{?with_grsec_full:-grsecurity}%{?with_xen0:-xen0}%{?with_xenU:-xenU}%{?with_rescuecd:-rescuecd}%{?with_pae:-pae}%{?with_myown:-myown}%{?with_apparmor:-aa}
+
+# kernel release (used in filesystem and eventually in uname -r)
+# modules will be looked from /lib/modules/%{kernel_release}
+%define                kernel_release %{version}%{?_alt_kernel:%{_alt_kernel}}_%{KABI}
+
+# Our Kernel ABI, increase this when you want the out of source modules being rebuilt
+# Usually same as %{_rel}. Never decrement this (policy).
+%define                KABI            2
+
+Summary:       The Linux kernel (the core of the Linux operating system)
+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}
+
+%if "%{_prepatch}" == "%{nil}"
+Version:       %{_basever}%{_postver}
+Release:       %{_rel}
+%else
+Version:       %{_prepatch}
+Release:       0.%{_pre_rc}.%{_rel}
+%endif
+
+Epoch:         3
+License:       GPL v2
+Group:         Base/Kernel
+#Source0:      ftp://ftp.kernel.org/pub/linux/kernel/v2.6/testing/linux-%{version}%{_rc}.tar.bz2
+Source0:       http://www.kernel.org/pub/linux/kernel/v2.6/linux-%{_basever}%{_rc}.tar.bz2
+# Source0-md5: db95a49a656a3247d4995a797d333153
+%if "%{_prepatch}" != "%{nil}"
+Source90:      http://www.kernel.org/pub/linux/kernel/v2.6/testing/patch-%{_prepatch}-%{_pre_rc}.bz2
+# Source90-md5:        b78873f8a3aff5bdc719fc7fb4c66a9b
+%endif
+%if "%{_postver}" != "%{nil}"
+Source1:       http://www.kernel.org/pub/linux/kernel/v2.6/patch-%{version}.bz2
+# Source1-md5: 86abbd32d5cfd382782ffc7a924e7574
+%endif
+
+Source3:       kernel-autoconf.h
+Source4:       kernel-config.h
+Source5:       kernel-ppclibs.Makefile
+Source6:       kernel-config.py
+Source7:       kernel-module-build.pl
+
+Source19:      kernel-multiarch.config
+Source20:      kernel-i386.config
+Source21:      kernel-x86_64.config
+Source22:      kernel-sparc.config
+Source23:      kernel-sparc64.config
+Source24:      kernel-alpha.config
+Source25:      kernel-ppc.config
+Source26:      kernel-ia64.config
+Source27:      kernel-ppc64.config
+
+Source40:      kernel-netfilter.config
+Source41:      kernel-squashfs.config
+Source42:      kernel-tuxonice.config
+Source43:      kernel-vserver.config
+Source45:      kernel-grsec.config
+Source46:      kernel-xen0.config
+Source47:      kernel-xenU.config
+
+Source49:      kernel-pax.config
+Source50:      kernel-no-pax.config
+Source51:      kernel-grsec_minimal.config
+Source55:      kernel-imq.config
+Source56:      kernel-reiser4.config
+Source57:      kernel-wrr.config
+
+Source58:      kernel-inittmpfs.config
+Source59:      kernel-bzip2-lzma.config
+
+###
+#      Patches
+###
+# tahoe9XX http://tahoe.pl/drivers/tahoe9xx-2.6.11.5.patch
+Patch2:                tahoe9xx-2.6.11.5.patch
+
+# ftp://ftp.openbios.org/pub/bootsplash/kernel/bootsplash-3.1.6-2.6.21.diff.gz
+Patch3:                linux-2.6-bootsplash.patch
+# http://dev.gentoo.org/~spock/projects/fbcondecor/archive/fbcondecor-0.9.4-2.6.25-rc6.patch
+Patch4:                kernel-fbcondecor.patch
+
+# based on http://mesh.dl.sourceforge.net/sourceforge/squashfs/squashfs3.3.tgz
+# squashfs3.3/kernel-patches/linux-2.6.24/squashfs3.3-patch
+Patch6:                kernel-squashfs.patch
+Patch8:                linux-fbcon-margins.patch
+Patch9:                linux-static-dev.patch
+
+# netfilter related stuff mostly based on patch-o-matic-ng
+# snapshot 20061213 with some fixes related to changes in
+# netfilter api in 2.6.19 up to 2.6.22. Some modules
+# were ported to nf_conntrack. Some of these are unique.
+
+Patch10:       kernel-pom-ng-IPV4OPTSSTRIP.patch
+Patch11:       kernel-pom-ng-ipv4options.patch
+Patch12:       kernel-pom-ng-set.patch
+Patch14:       kernel-pom-ng-ROUTE.patch
+Patch16:       kernel-pom-ng-mms-conntrack-nat.patch
+Patch22:       kernel-pom-ng-rsh.patch
+Patch23:       kernel-pom-ng-rpc.patch
+
+# based on http://mike.it-loops.com/rtsp/rtsp-2.6.24.patch
+Patch36:       kernel-nf_rtsp.patch
+
+# http://ftp.linux-vserver.org/pub/people/dhozac/p/k/delta-owner-xid-feat02.diff
+Patch37:       kernel-owner-xid.patch
+
+# based on http://www.svn.barbara.eu.org/ipt_account/attachment/wiki/Software/ipt_account-0.1.21-20070804164729.tar.gz?format=raw
+Patch38:       kernel-ipt_account.patch
+
+# based on http://www.intra2net.com/de/produkte/opensource/ipt_account/pom-ng-ipt_ACCOUNT-1.12.tgz
+Patch39:       kernel-ipt_ACCOUNT.patch
+
+# kernel-2.6.25-layer7-2.18.patch from
+# http://switch.dl.sourceforge.net/sourceforge/l7-filter/netfilter-layer7-v2.18.tar.gz
+Patch40:       kernel-layer7.patch
+
+# http://www.ssi.bg/~ja/nfct/ipvs-nfct-2.6.25-1.diff
+Patch41:       kernel-ipvs-nfct.patch
+
+# based on http://www.balabit.com/downloads/files/tproxy/tproxy-kernel-2.6.25-20080509-164605-1210344365.tar.bz2
+Patch42:       kernel-tproxy.patch
+
+### End netfilter
+
+# http://zph.bratcheda.org/linux-2.6.25-zph.patch
+Patch49:       kernel-zph.patch
+
+# based on http://www.linuximq.net/patchs/linux-2.6.24-imq.diff
+# some people report problems when using imq with wrr.
+# try unoficial version: http://kapturkiewicz.name/linux-2.6.25-imq1.diff
+Patch50:       kernel-imq.patch
+
+# previously based on ftp://ftp.namesys.com/pub/reiser4-for-2.6/2.6.22/reiser4-for-2.6.22-2.patch.gz
+# now based on http://www.kernel.org/pub/linux/kernel/people/edward/reiser4/reiser4-for-2.6/reiser4-for-2.6.25.patch.bz2
+Patch51:       kernel-reiser4.patch
+
+# http://www.zz9.dk/patches/wrr-linux-071203-2.6.25.patch.gz
+Patch52:       kernel-wrr.patch
+
+# http://fatooh.org/esfq-2.6/sfq-2.6.24.1.tar.bz2
+Patch53:       esfq-kernel.patch
+
+# http://memebeam.org/free-software/toshiba_acpi/toshiba_acpi-dev_toshiba_test5-linux_2.6.21.patch
+Patch54:       linux-2.6-toshiba_acpi.patch
+# by Baggins request:
+# derived from ftp://ftp.cmf.nrl.navy.mil/pub/chas/linux-atm/vbr/vbr-kernel-diffs
+Patch55:       linux-2.6-atm-vbr.patch
+Patch56:       linux-2.6-atmdd.patch
+
+# http://www.ntop.org/PF_RING.html 20070610
+Patch58:       linux-PF_RING.patch
+
+# http://synce.svn.sourceforge.net/svnroot/synce/trunk/patches/linux-2.6.22-rndis_host-wm5.patch
+Patch59:       kernel-rndis_host-wm5.patch
+
+# Project suspend2 renamed to tuxonice
+# http://tuxonice.org/downloads/all/tuxonice-3.0-rc7-for-2.6.25.patch.bz2
+Patch69:       linux-2.6-suspend2.patch
+Patch70:       kernel-suspend2-headers.patch
+Patch71:       linux-2.6-suspend2-page.patch
+Patch72:       kernel-2.6-ueagle-atm-freezer.patch
+
+# adds some ids for hostap suported cards and monitor_enable from/for aircrack-ng
+# http://patches.aircrack-ng.org/hostap-kernel-2.6.18.patch
+Patch85:       hostap-kernel-2.6.18.patch
+
+# http://vserver.13thfloor.at/Experimental/patch-2.6.25.4-vs2.3.0.34.11.diff
+Patch100:      linux-2.6-vs2.3.patch
+Patch101:      kernel-vserver-fixes.patch
+# based on http://vserver.13thfloor.at/Experimental/patch-2.6.24-rc7-vs2.2.0.5.0.7-pre.diff
+Patch102:      linux-2.6-vs2.2.patch
+# note about vserver 2.2 vs 2.3: 2.2 is "stable", 2.3 is "development", currently (2007-09-03)
+# the preferred 2.3 vserver needs CONFIG_IPV6=y config, which break things for some users;
+# it was proposed to use 2.2 as a temp replacement. One could use vs 2.2 instead of 2.3
+# by using vs22 bcond - this bcond also changes IPV6 option from "y" to "m".
+
+# from http://www.cl.cam.ac.uk/Research/SRG/netos/xen/downloads/xen-3.0.2-src.tgz
+#Patch120: xen-3.0-2.6.16.patch
+
+# Wake-On-Lan fix for nForce drivers; using http://atlas.et.tudelft.nl/verwei90/nforce2/wol.html
+# Fix verified for that kernel version.
+Patch130:      linux-2.6-forcedeth-WON.patch
+
+# http://download.filesystems.org/unionfs/unionfs-2.x/unionfs-2.2.4_for_2.6.25-rc2.diff.gz
+Patch140:      kernel-unionfs.patch
+Patch141:      kernel-unionfs-vserver.patch
+
+# aic94xx patch based on http://georgi.unixsol.org/programs/aic94xx_with_included_firmware_2.6.21.diff
+Patch160:      linux-2.6-aic94xx_with_included_firmware.patch
+
+Patch200:      linux-2.6-ppc-ICE-hacks.patch
+
+Patch205:      linux-2.6-ppc-mediabay.patch
+
+# The following patch extend the routing functionality in Linux
+# to support static routes (defined by user), new way to use the
+# alternative routes, the reverse path protection (rp_filter),
+# the NAT processing to use correctly the routing when multiple
+# gateways are used.
+# http://www.ssi.bg/~ja/routes-2.6.25-15.diff
+# We need to disable CONFIG_IP_ROUTE_MULTIPATH_CACHED
+Patch300:      kernel-routes.patch
+
+Patch1000:     linux-2.6-grsec-minimal.patch
+
+Patch2000:     kernel-small_fixes.patch
+Patch2001:     linux-2.6.21.1-pwc-uncompress.patch
+
+# kill some thousands of warnings
+# (only warnings, so just remove parts of this patch if conflics)
+Patch2500:     linux-2.6-warnings.patch
+
+# based on https://forgesvn1.novell.com/svn/apparmor/trunk/kernel-patches/2.6.25 rev 1266
+# repatched and adapted for vserver/grsec changes in vfs API, very experimental
+Patch5000:     kernel-apparmor.patch
+#Patch5001:    linux-2.6-apparmor-caps.patch
+
+# for rescuecd
+# based on http://ftp.leg.uct.ac.za/pub/linux/rip/inittmpfs-2.6.14.diff.gz
+Patch7000:     kernel-inittmpfs.patch
+# based on http://www.udpcast.linux.lu/download/bzip2-lzma-kernel-2.6.23.12.patch.gz
+Patch7001:     kernel-bzip2-lzma.patch
+
+Patch9996:     linux-2.6-security-opt.patch
+
+# not ready yet
+Patch9997:     pax_selinux_hooks-2.6.20.patch
+
+# based on http://www.grsecurity.net/~paxguy1/pax-linux-2.6.24.6-test45.patch
+Patch9998:     kernel-pax.patch
+
+# based on http://www.grsecurity.net/~spender/grsecurity-2.1.12-2.6.25.4-200805181334.patch
+Patch9999:     linux-2.6-grsec_full.patch
+Patch10000:    linux-2.6-grsec-caps.patch
+Patch10001:    linux-2.6-grsec-common.patch
+Patch10002:    kernel-grsec_fixes.patch
+
+URL:           http://www.kernel.org/
+BuildRequires: binutils >= 3:2.14.90.0.7
+%ifarch sparc sparc64
+BuildRequires: elftoaout
+%endif
+%ifarch ppc
+BuildRequires: uboot-mkimage
+%endif
+BuildRequires: /sbin/depmod
+BuildRequires: gcc >= 5:3.2
+%{?with_rescuecd:BuildRequires:        lzma >= 1:4.42.2}
+# for hostname command
+BuildRequires: net-tools
+BuildRequires: perl-base
+BuildRequires: python
+BuildRequires: python-modules
+BuildRequires: rpmbuild(macros) >= 1.217
+Autoreqprov:   no
+Requires(post):        coreutils
+Requires(post):        geninitrd >= 2.57
+Requires(post):        module-init-tools >= 0.9.9
+Requires:      /sbin/depmod
+Requires:      coreutils
+Requires:      geninitrd >= 2.57
+Requires:      module-init-tools >= 0.9.9
+Provides:      %{name}(netfilter) = %{netfilter_snap}
+Provides:      %{name}(vermagic) = %{kernel_release}
+%if %{with xen0} || %{with xenU}
+Provides:      kernel(xen) = %{_xen_version}
+%endif
+Obsoletes:     kernel-misc-fuse
+Obsoletes:     kernel-modules
+Obsoletes:     kernel-net-hostap
+Obsoletes:     kernel-net-ieee80211
+Obsoletes:     kernel-net-ipp2p
+Obsoletes:     kernel-smp
+Conflicts:     e2fsprogs < 1.29
+Conflicts:     isdn4k-utils < 3.1pre1
+Conflicts:     jfsutils < 1.1.3
+Conflicts:     module-init-tools < 0.9.10
+Conflicts:     nfs-utils < 1.0.5
+Conflicts:     oprofile < 0.9
+Conflicts:     ppp < 1:2.4.0
+Conflicts:     procps < 3.2.0
+Conflicts:     quota-tools < 3.09
+%if %{with reiserfs4}
+Conflicts:     reiser4progs < 1.0.0
+%endif
+Conflicts:     reiserfsprogs < 3.6.3
+Conflicts:     udev < 1:071
+Conflicts:     util-linux < 2.10o
+Conflicts:     xfsprogs < 2.6.0
+%if %{with xen0} || %{with xenU} || %{with pae}
+ExclusiveArch: %{ix86}
+%if %{with pae}
+ExcludeArch:   i386 i486 i586
+%endif
+%else
+ExclusiveArch: %{ix86} %{x8664} alpha arm ia64 ppc ppc64 sparc sparc64
+%endif
+ExclusiveOS:   Linux
+BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+
+%ifarch %{ix86} %{x8664}
+%define                target_arch_dir         x86
+%endif
+%ifarch ppc ppc64
+%define                target_arch_dir         powerpc
+%endif
+%ifnarch %{ix86} %{x8664} ppc ppc64
+%define                target_arch_dir         %{_target_base_arch}
+%endif
+
+%define                defconfig       arch/%{target_arch_dir}/defconfig
+
+# No ELF objects there to strip (skips processing 27k files)
+%define                _noautostrip    .*%{_kernelsrcdir}/.*
+%define                _noautochrpath  .*%{_kernelsrcdir}/.*
+
+%ifarch ia64
+%define                initrd_dir      /boot/efi
+%else
+%define                initrd_dir      /boot
+%endif
+
+%define                _kernelsrcdir   /usr/src/linux%{_alt_kernel}-%{version}
+
+%if "%{_target_base_arch}" != "%{_arch}"
+       %define CrossOpts ARCH=%{_target_base_arch} CROSS_COMPILE=%{_target_cpu}-pld-linux-
+       %define DepMod /bin/true
+
+       %if "%{_arch}" == "sparc" && "%{_target_base_arch}" == "sparc64"
+       %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
+       %define DepMod /sbin/depmod
+       %endif
+
+       %if "%{_arch}" == "sparc64" && "%{_target_base_arch}" == "sparc"
+       %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
+       %define DepMod /sbin/depmod
+       %endif
+
+       %if "%{_arch}" == "x86_64" && "%{_target_base_arch}" == "i386"
+       %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
+       %define DepMod /sbin/depmod
+       %endif
+
+       %ifarch ppc ppc64
+       %define CrossOpts ARCH=powerpc CROSS_COMPILE=%{_target_cpu}-pld-linux-
+       %endif
+%else
+       %ifarch ppc ppc64
+       %define CrossOpts ARCH=powerpc CC="%{__cc}"
+       %else
+       %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
+       %endif
+       %define DepMod /sbin/depmod
+%endif
+
+%define __features Netfilter module dated: %{netfilter_snap}\
+%{?with_grsec_full:Grsecurity full support - enabled}\
+%{?with_pax:PaX support - enabled}\
+%{?with_xen0:Xen 0 - enabled}\
+%{?with_xenU:Xen U - enabled}\
+%{?with_fbcondecor:Fbsplash/fbcondecor - enabled }\
+%{?with_nfsroot:Root on NFS - enabled}
+
+%define Features %(echo "%{__features}" | sed '/^$/d')
+
+%description
+This package contains the Linux kernel that is used to boot and run
+your system. It contains few device drivers for specific hardware.
+Most hardware is instead supported by modules loaded after booting.
+
+%{Features}
+
+%description -l de.UTF-8
+Das Kernel-Paket enthält den Linux-Kernel (vmlinuz), den Kern des
+Linux-Betriebssystems. Der Kernel ist für grundliegende
+Systemfunktionen verantwortlich: Speicherreservierung,
+Prozeß-Management, Geräte Ein- und Ausgaben, usw.
+
+%{Features}
+
+%description -l fr.UTF-8
+Le package kernel contient le kernel linux (vmlinuz), la partie
+centrale d'un système d'exploitation Linux. Le noyau traite les
+fonctions basiques d'un système d'exploitation: allocation mémoire,
+allocation de process, entrée/sortie de peripheriques, etc.
+
+%{Features}
+
+%description -l pl.UTF-8
+Pakiet zawiera jądro Linuksa niezbędne do prawidłowego działania
+Twojego komputera. Zawiera w sobie sterowniki do sprzętu znajdującego
+się w komputerze, takiego jak sterowniki dysków itp.
+
+%{Features}
+
+%package vmlinux
+Summary:       vmlinux - uncompressed kernel image
+Summary(de.UTF-8):     vmlinux - dekompressiertes Kernel Bild
+Summary(pl.UTF-8):     vmlinux - rozpakowany obraz jądra
+Group:         Base/Kernel
+Obsoletes:     kernel-smp-vmlinux
+
+%description vmlinux
+vmlinux - uncompressed kernel image.
+
+%description vmlinux -l de.UTF-8
+vmlinux - dekompressiertes Kernel Bild.
+
+%description vmlinux -l pl.UTF-8
+vmlinux - rozpakowany obraz jądra.
+
+%package drm
+Summary:       DRM kernel modules
+Summary(de.UTF-8):     DRM Kernel Treiber
+Summary(pl.UTF-8):     Sterowniki DRM
+Group:         Base/Kernel
+Requires(postun):      %{name} = %{epoch}:%{version}-%{release}
+Requires:      %{name} = %{epoch}:%{version}-%{release}
+Obsoletes:     kernel-smp-drm
+Autoreqprov:   no
+
+%description drm
+DRM kernel modules.
+
+%description drm -l de.UTF-8
+DRM Kernel Treiber.
+
+%description drm -l pl.UTF-8
+Sterowniki DRM.
+
+%package pcmcia
+Summary:       PCMCIA modules
+Summary(de.UTF-8):     PCMCIA Module
+Summary(pl.UTF-8):     Moduły PCMCIA
+Group:         Base/Kernel
+Requires(postun):      %{name} = %{epoch}:%{version}-%{release}
+Requires:      %{name} = %{epoch}:%{version}-%{release}
+Obsoletes:     kernel-smp-pcmcia
+Conflicts:     pcmcia-cs < 3.1.21
+Conflicts:     pcmciautils < 004
+Autoreqprov:   no
+
+%description pcmcia
+PCMCIA modules.
+
+%description pcmcia -l de.UTF-8
+PCMCIA Module.
+
+%description pcmcia -l pl.UTF-8
+Moduły PCMCIA.
+
+%package libs
+Summary:       Libraries for preparing bootable kernel on PowerPCs
+Summary(pl.UTF-8):     Biblioteki do przygotowania bootowalnego jądra dla PowerPC
+Group:         Base/Kernel
+Requires:      %{name} = %{epoch}:%{version}-%{release}
+Requires:      mkvmlinuz >= 1.3
+Obsoletes:     kernel-smp-libs
+Autoreqprov:   no
+
+%description libs
+Libraries for preparing bootable kernel on PowerPCs. Script called
+mkvmlinuz may be useful for this.
+
+%description libs -l pl.UTF-8
+Biblioteki do przygotowania bootowalnego jądra dla PowerPC. Skrypt
+mkvmlinuz może być do tego przydatny.
+
+%package sound-alsa
+Summary:       ALSA kernel modules
+Summary(de.UTF-8):     ALSA Kernel Module
+Summary(pl.UTF-8):     Sterowniki dźwięku ALSA
+Group:         Base/Kernel
+Requires(postun):      %{name} = %{epoch}:%{version}-%{release}
+Requires:      %{name} = %{epoch}:%{version}-%{release}
+Obsoletes:     kernel-smp-sound-alsa
+Autoreqprov:   no
+
+%description sound-alsa
+ALSA (Advanced Linux Sound Architecture) sound drivers.
+
+%description sound-alsa -l de.UTF-8
+ALSA (Advanced Linux Sound Architecture) Sound-Treiber.
+
+%description sound-alsa -l pl.UTF-8
+Sterowniki dźwięku ALSA (Advanced Linux Sound Architecture).
+
+%package sound-oss
+Summary:       OSS kernel modules
+Summary(de.UTF-8):     OSS Kernel Module
+Summary(pl.UTF-8):     Sterowniki dźwięku OSS
+Group:         Base/Kernel
+Requires(postun):      %{name} = %{epoch}:%{version}-%{release}
+Requires:      %{name} = %{epoch}:%{version}-%{release}
+Obsoletes:     kernel-smp-sound-oss
+Autoreqprov:   no
+
+%description sound-oss
+OSS (Open Sound System) drivers.
+
+%description sound-oss -l de.UTF-8
+OSS (Open Sound System) Treiber.
+
+%description sound-oss -l pl.UTF-8
+Sterowniki dźwięku OSS (Open Sound System).
+
+%package headers
+Summary:       Header files for the Linux kernel
+Summary(de.UTF-8):     Header Dateien für den Linux-Kernel
+Summary(pl.UTF-8):     Pliki nagłówkowe jądra Linuksa
+Group:         Development/Building
+Provides:      %{name}-headers(netfilter) = %{netfilter_snap}
+Autoreqprov:   no
+
+%description headers
+These are the C header files for the Linux kernel, which define
+structures and constants that are needed when rebuilding the kernel or
+building kernel modules.
+
+%description headers -l de.UTF-8
+Dies sind die C Header Dateien für den Linux-Kernel, die definierte
+Strukturen und Konstante beinhalten, die beim rekompilieren des
+Kernels oder bei Kernel Modul kompilationen gebraucht werden.
+
+%description headers -l pl.UTF-8
+Pakiet zawiera pliki nagłówkowe jądra, niezbędne do rekompilacji jądra
+oraz budowania modułów jądra.
+
+%package module-build
+Summary:       Development files for building kernel modules
+Summary(de.UTF-8):     Development Dateien die beim Kernel Modul kompilationen gebraucht werden
+Summary(pl.UTF-8):     Pliki służące do budowania modułów jądra
+Group:         Development/Building
+Requires:      %{name}-headers = %{epoch}:%{version}-%{release}
+Conflicts:     rpmbuild(macros) < 1.321
+Autoreqprov:   no
+
+%description module-build
+Development files from kernel source tree needed to build Linux kernel
+modules from external packages.
+
+%description module-build -l de.UTF-8
+Development Dateien des Linux-Kernels die beim kompilieren externer
+Kernel Module gebraucht werden.
+
+%description module-build -l pl.UTF-8
+Pliki ze drzewa źródeł jądra potrzebne do budowania modułów jądra
+Linuksa z zewnętrznych pakietów.
+
+%package source
+Summary:       Kernel source tree
+Summary(de.UTF-8):     Der Kernel Quelltext
+Summary(pl.UTF-8):     Kod źródłowy jądra Linuksa
+Group:         Development/Building
+Requires:      %{name}-module-build = %{epoch}:%{version}-%{release}
+Autoreqprov:   no
+
+%description source
+This is the source code for the Linux kernel. You can build a custom
+kernel that is better tuned to your particular hardware.
+
+%description source -l de.UTF-8
+Das Kernel-Source-Paket enthält den source code (C/Assembler-Code) des
+Linux-Kernels. Die Source-Dateien werden gebraucht, um viele
+C-Programme zu kompilieren, da sie auf Konstanten zurückgreifen, die
+im Kernel-Source definiert sind. Die Source-Dateien können auch
+benutzt werden, um einen Kernel zu kompilieren, der besser auf Ihre
+Hardware ausgerichtet ist.
+
+%description source -l fr.UTF-8
+Le package pour le kernel-source contient le code source pour le noyau
+linux. Ces sources sont nécessaires pour compiler la plupart des
+programmes C, car il dépend de constantes définies dans le code
+source. Les sources peuvent être aussi utilisée pour compiler un noyau
+personnalisé pour avoir de meilleures performances sur des matériels
+particuliers.
+
+%description source -l pl.UTF-8
+Pakiet zawiera kod źródłowy jądra systemu.
+
+%package doc
+Summary:       Kernel documentation
+Summary(de.UTF-8):     Kernel Dokumentation
+Summary(pl.UTF-8):     Dokumentacja do jądra Linuksa
+Group:         Documentation
+Autoreqprov:   no
+
+%description doc
+This is the documentation for the Linux kernel, as found in
+/usr/src/linux/Documentation directory.
+
+%description doc -l de.UTF-8
+Dies ist die Kernel Dokumentation wie sie im 'Documentation'
+Verzeichniss vorgefunden werden kann.
+
+%description doc -l pl.UTF-8
+Pakiet zawiera dokumentację do jądra Linuksa pochodzącą z katalogu
+/usr/src/linux/Documentation.
+
+%prep
+%setup -q -n linux-%{_basever}%{_rc}
+
+# hack against warning in pax/grsec
+%ifarch alpha
+sed -i 's/-Werror//' arch/alpha/kernel/Makefile
+%endif
+
+%ifarch ppc
+install %{SOURCE5} Makefile.ppclibs
+%endif
+
+# sources 1 and 90 should be mutually exclusive btw.
+
+%if "%{_prepatch}" != "%{nil}"
+%{__bzip2} -dc %{SOURCE90} | patch -p1 -s
+%endif
+
+%if "%{_postver}" != "%{nil}"
+%{__bzip2} -dc %{SOURCE1} | patch -p1 -s
+%endif
+
+install -m 755 %{SOURCE6} .
+
+# tuxonice:
+%if %{with tuxonice}
+##ifarch %{ix86} %{x8664} ia64 ppc alpha
+%patch69 -p1
+%patch70 -p1
+%patch71 -p1
+# kernel-2.6-ueagle-atm-freezer.patch
+%patch72 -p1
+##endif
+%endif
+
+%patch2 -p1
+
+%patch8 -p1
+
+%if !%{with fbcondecor}
+%patch3 -p1
+%else
+%patch4 -p1
+%endif
+
+# squashfs
+%patch6 -p1
+
+%patch9 -p1
+
+## netfilter
+#
+
+# kernel-pom-ng-IPV4OPTSSTRIP.patch
+%patch10 -p1
+
+# kernel-pom-ng-ipv4options.patch
+%patch11 -p1
+
+# kernel-pom-ng-set.patch
+%patch12 -p1
+
+# kernel-pom-ng-ROUTE.patch
+%patch14 -p1
+
+# kernel-pom-ng-mms-conntrack-nat.patch
+%patch16 -p1
+
+# kernel-pom-ng-rsh.patch
+%patch22 -p1
+
+# kernel-pom-ng-rpc.patch
+%patch23 -p1
+
+# kernel-nf_rtsp.patch
+%patch36 -p1
+
+# kernel-owner-xid.patch
+%if %{with vserver}
+%patch37 -p1
+%endif
+
+# kernel-ipt_account.patch
+%patch38 -p1
+
+# kernel-ipt_ACCOUNT.patch
+%patch39 -p1
+
+# kernel-layer7.patch
+%patch40 -p1
+
+# ipvs-nfct
+%patch41 -p1
+
+##
+# end of netfilter
+
+# zph
+%patch49 -p1
+
+%if %{with imq}
+%patch50 -p1
+%endif
+
+# reiser4
+%if %{with reiser4}
+%patch51 -p1
+%endif
+
+# esfq
+%patch53 -p1
+
+%if %{with wrr}
+%patch52 -p1
+%endif
+
+# toshiba_acpi
+%patch54 -p1
+
+%patch55 -p1
+%patch56 -p1
+
+%patch58 -p1
+
+# kernel-rndis_host-wm5.patch
+%patch59 -p1
+
+# hostap enhancements from/for aircrack-ng
+%patch85 -p1
+
+# vserver
+%if %{with vserver}
+%if %{with vs22}
+%patch102 -p1
+%else
+%patch100 -p1
+%patch101 -p1
+%endif
+%endif
+
+#%if %{with xen0} || %{with xenU}
+#%ifarch %{ix86} %{x8664} ia64
+#%patch120 -p1
+#%endif
+#%endif
+
+# tproxy
+%if %{without rescuecd} && %{with vserver}
+%patch42 -p1
+%endif
+
+# forcedeth
+%patch130 -p1
+
+# unionfs
+%patch140 -p1
+%{?with_vserver:%patch141 -p1}
+
+# aic94xx linux-2.6-aic94xx_with_included_firmware.patch
+%patch160 -p1
+
+%patch2500 -p1
+
+%if %{with rescuecd}
+%patch7000 -p1
+%patch7001 -p1
+%endif
+
+# grsecurity & pax stuff
+#
+%if %{with pax_full}
+%patch9999 -p1
+%{?with_vserver:%patch10000 -p1}
+%{?with_vserver:%patch10001 -p1}
+#{?with_vserver:%patch10002 -p1}
+%else
+
+%if %{with grsec_full}
+%patch9999 -p1
+%{?with_vserver:%patch10000 -p1}
+%{?with_vserver:%patch10001 -p1}
+#{?with_vserver:%patch10002 -p1}
+%else
+%if %{with grsec_minimal}
+%patch1000 -p1
+# remember that we have the same config file for grsec_minimal and
+# grsec_full, but the patches are different.
+%endif
+%endif
+
+%patch9996 -p1
+
+%if %{with pax}
+# now we have an separate testing pax-only patch - in the future we
+# could have single grsecurity patch and will have to prepare separate
+# configs for grsec_minimal, grsec_full and pax to support such
+# configurations like pax & grsec_minimal.
+# So, in a future there could be no patch9998, but only config
+# would tell which options should be enabled.
+# The second option is to maintain separate pax-only patch.
+%patch9998 -p1
+#patch9997 -p1 - needs update
+%endif
+
+%endif
+
+#
+# end of grsecurity & pax stuff
+
+# apparmor
+%if %{with apparmor}
+%patch5000 -p1
+# %patch5001 -p1
+%endif
+
+%ifarch ppc ppc64
+#patch200 -p1
+%endif
+
+%patch205 -p1
+
+# routes
+%patch300 -p1
+
+# Small fixes:
+%patch2000 -p1
+%patch2001 -p1
+
+# Fix EXTRAVERSION in main Makefile
+sed -i 's#EXTRAVERSION =.*#EXTRAVERSION = %{_postver}%{?_alt_kernel:%{_alt_kernel}}#g' Makefile
+
+# on sparc this line causes CONFIG_INPUT=m (instead of =y), thus breaking build
+sed -i -e '/select INPUT/d' net/bluetooth/hidp/Kconfig
+
+# on sparc64 avoid building break due to NULL pointer type warrning
+sed -i -e 's/^EXTRA_CFLAGS := -Werror/EXTRA_CFLAGS := /' arch/sparc64/kernel/Makefile
+
+# cleanup backups after patching
+find '(' -name '*~' -o -name '*.orig' -o -name '.gitignore' ')' -print0 | xargs -0 -r -l512 rm -f
+
+%build
+TuneUpConfigForIX86 () {
+       set -x
+%ifarch %{ix86}
+       pae=
+       [ "$2" = "yes" ] && pae=yes
+       %if %{with pae}
+       pae=yes
+       %endif
+       %ifnarch i386
+       sed -i 's:CONFIG_M386=y:# CONFIG_M386 is not set:' $1
+       %endif
+       %ifarch i486
+       sed -i 's:# CONFIG_M486 is not set:CONFIG_M486=y:' $1
+       %endif
+       %ifarch i586
+       sed -i 's:# CONFIG_M586 is not set:CONFIG_M586=y:' $1
+       %endif
+       %ifarch i686
+       sed -i 's:# CONFIG_M686 is not set:CONFIG_M686=y:' $1
+       %endif
+       %ifarch pentium3
+       sed -i 's:# CONFIG_MPENTIUMIII is not set:CONFIG_MPENTIUMIII=y:' $1
+       %endif
+       %ifarch pentium4
+       sed -i 's:# CONFIG_MPENTIUM4 is not set:CONFIG_MPENTIUM4=y:' $1
+       %endif
+       %ifarch athlon
+       sed -i 's:# CONFIG_MK7 is not set:CONFIG_MK7=y:' $1
+       %endif
+       %ifarch i686 athlon pentium3 pentium4
+       if [ "$pae" = "yes" ]; then
+               sed -i "s:CONFIG_HIGHMEM4G=y:# CONFIG_HIGHMEM4G is not set:" $1
+               sed -i "s:# CONFIG_HIGHMEM64G is not set:CONFIG_HIGHMEM64G=y\nCONFIG_X86_PAE=y:" $1
+       fi
+       sed -i 's:CONFIG_MATH_EMULATION=y:# CONFIG_MATH_EMULATION is not set:' $1
+       %endif
+       return 0
+%endif
+}
+
+PaXconfig () {
+       set -x
+       %ifarch %{ix86}
+               sed -i 's:# CONFIG_PAX_SEGMEXEC is not set:CONFIG_PAX_SEGMEXEC=y:' $1
+               # performance impact on CPUs without NX bit
+               sed -i 's:CONFIG_PAX_PAGEEXEC=y:# CONFIG_PAX_PAGEEXEC is not set:' $1
+               # Testing KERNEXEC
+
+               # sed -i 's:CONFIG_HOTPLUG_PCI_COMPAQ_NVRAM=y:# CONFIG_HOTPLUG_PCI_COMPAQ_NVRAM is not set:' $1
+               # sed -i 's:CONFIG_PCI_BIOS=y:# CONFIG_PCI_BIOS is not set:' $1
+               # sed -i 's:CONFIG_EFI=y:# CONFIG_EFI is not set:' $1
+
+       %endif
+       %ifarch ppc64
+               sed -i 's:CONFIG_PAX_NOELFRELOCS=y:# CONFIG_PAX_NOELFRELOCS is not set:' $1
+       %endif
+       %ifarch ppc
+               sed -i 's:# CONFIG_PAX_EMUTRAMP is not set:CONFIG_PAX_EMUTRAMP=y:' $1
+               sed -i 's:# CONFIG_PAX_EMUSIGRT is not set:CONFIG_PAX_EMUSIGRT=y:' $1
+               sed -i 's:# CONFIG_PAX_EMUPLT is not set:CONFIG_PAX_EMUPLT=y:' $1
+       %endif
+
+       %ifarch sparc sparc64 alpha
+               sed -i 's:# CONFIG_PAX_EMUPLT is not set:CONFIG_PAX_EMUPLT=y:' $1
+       %endif
+
+       # Now we have to check MAC system integration. Grsecurity (full) uses PAX_HAVE_ACL_FLAGS
+       # setting (direct acces). grsec_minimal probably have no idea about PaX so we probably
+       # could use PAX_NO_ACL_FLAGS, but for testing the hooks setting will be used
+       # PAX_HOOK_ACL_FLAGS. SELinux should also be able to make PaX settings via hooks
+
+       %if %{with grsec_full}
+               # Hardening grsec options if with pax
+               sed -i "s:# CONFIG_GRKERNSEC_PROC_MEMMAP is not set:CONFIG_GRKERNSEC_PROC_MEMMAP=y:" $1
+               # almost rational (see HIDESYM help)
+               sed -i "s:# CONFIG_GRKERNSEC_HIDESYM is not set:CONFIG_GRKERNSEC_HIDESYM=y:" $1
+
+               # no change needed CONFIG=PAX_HAVE_ACL_FLAGS=y is taken from the kernel-pax.config
+       %else
+               # selinux or other hooks?
+               sed -i 's:CONFIG_PAX_HAVE_ACL_FLAGS=y:# CONFIG_PAX_HAVE_ACL_FLAGS is not set:' $1
+               sed -i 's:# CONFIG_PAX_HOOK_ACL_FLAGS is not set:CONFIG_PAX_HOOK_ACL_FLAGS=y:' $1
+       %endif
+
+       return 0
+}
+
+RescueConfig() {
+       set -x
+       cat %{SOURCE58} >> $1
+       cat %{SOURCE59} >> $1
+       sed -i "s:CONFIG_SOUND=.:# CONFIG_SOUND is not set:" $1
+       sed -i "s:CONFIG_AUDIT=.:# CONFIG_AUDIT is not set:" $1
+       sed -i "s:CONFIG_TR=.:# CONFIG_TR is not set:" $1
+       sed -i "s:CONFIG_BT=.:# CONFIG_BT is not set:" $1
+       sed -i "s:CONFIG_VIDEO_DEV=.:# CONFIG_VIDEO_DEV is not set:" $1
+       sed -i "s:CONFIG_DVB_CORE=.:# CONFIG_DVB_CORE is not set:" $1
+       sed -i "s:CONFIG_HAMRADIO=.:# CONFIG_HAMRADIO is not set:" $1
+       sed -i "s:CONFIG_ARCNET=.:# CONFIG_ARCNET is not set:" $1
+       sed -i "s:CONFIG_FB=.:# CONFIG_FB is not set:" $1
+       sed -i "s:CONFIG_DRM\(.*\)=.:# CONFIG_DRM\1 is not set:" $1
+       sed -i "s:CONFIG_WATCHDOG=.:# CONFIG_WATCHDOG is not set:" $1
+       sed -i "s:CONFIG_INPUT_JOYSTICK=.:# CONFIG_INPUT_JOYSTICK is not set:" $1
+       sed -i "s:CONFIG_DEBUG_KERNEL=.:# CONFIG_DEBUG_KERNEL is not set:" $1
+       sed -i "s:CONFIG_ISDN=.:# CONFIG_ISDN is not set:" $1
+       sed -i "s:CONFIG_AGP\(.*\)=.:# CONFIG_AGP\1 is not set:" $1
+       sed -i "s:CONFIG_SECURITY=.:# CONFIG_SECURITY is not set:" $1
+       sed -i "s:CONFIG_PARIDE=.:# CONFIG_PARIDE is not set:" $1
+       sed -i "s:CONFIG_CPU_FREQ=.:# CONFIG_CPU_FREQ is not set:" $1
+       sed -i "s:CONFIG_GAMEPORT=.:# CONFIG_GAMEPORT is not set:" $1
+       sed -i "s:CONFIG_KVM=.:# CONFIG_KVM is not set:" $1
+       sed -i "s:CONFIG_PHONE=.:# CONFIG_PHONE is not set:" $1
+       sed -i "s:CONFIG_BLK_DEV_LOOP=m:CONFIG_BLK_DEV_LOOP=y:" $1
+       sed -i "s:CONFIG_ISO9660_FS=m:CONFIG_ISO9660_FS=y:" $1
+       sed -i "s:CONFIG_NLS_UTF8=m:CONFIG_NLS_UTF8=y:" $1
+}
+
+BuildConfig() {
+       %{?debug:set -x}
+       # is this a special kernel we want to build?
+       Config="%{_target_base_arch}"
+       KernelVer=%{kernel_release}
+       echo "Building config file using $Config.conf..."
+       cat $RPM_SOURCE_DIR/kernel-$Config.config > %{defconfig}
+       ./kernel-config.py %{_target_base_arch} $RPM_SOURCE_DIR/kernel-multiarch.config \
+               %{defconfig} %{defconfig}
+       TuneUpConfigForIX86 %{defconfig}
+
+# netfilter
+       cat %{SOURCE40} >> %{defconfig}
+
+# squashfs
+       cat %{SOURCE41} >> %{defconfig}
+
+# tuxonice
+%if %{with tuxonice}
+%ifarch %{ix86} %{x8664} ia64 ppc ppc64
+       cat %{SOURCE42} >> %{defconfig}
+%endif
+%ifarch ppc ppc64
+       sed -i "s:CONFIG_TOI=y:# CONFIG_TOI is not set:" %{defconfig}
+%endif
+%endif
+
+%if %{with vserver}
+       cat %{SOURCE43} >> %{defconfig}
+%if %{with vs22}
+       sed -i "s:CONFIG_IPV6=y:CONFIG_IPV6=m:" %{defconfig}
+%endif
+%endif
+
+%if %{without ipv6}
+       sed -i "s:CONFIG_IPV6=.:# CONFIG_IPV6 is not set:" %{defconfig}
+%endif
+
+# grsecurity & pax stuff
+#
+
+%if %{with pax_full}
+       cat %{SOURCE45} >> %{defconfig}
+       cat %{SOURCE49} >> %{defconfig}
+       PaXconfig %{defconfig}
+%else
+
+%if %{with grsec_full}
+       cat %{SOURCE45} >> %{defconfig}
+       cat %{SOURCE50} >> %{defconfig}
+%else
+%if %{with grsec_minimal}
+       cat %{SOURCE51} >> %{defconfig}
+%endif
+%endif
+
+%if %{with pax}
+       cat %{SOURCE49} >> %{defconfig}
+       PaXconfig %{defconfig}
+%endif
+
+%endif
+
+# Temporary disabled RELOCATABLE. Needed only on x86??
+%if %{with pax} || %{with grsec_full}
+       sed -i "s:CONFIG_RELOCATABLE=y:# CONFIG_RELOCATABLE is not set:" %{defconfig}
+%endif
+
+#
+# end of grsecurity & pax stuff
+
+%if %{with imq}
+       cat %{SOURCE55} >> %{defconfig}
+%endif
+
+%if %{with wrr}
+       cat %{SOURCE57} >> %{defconfig}
+%endif
+
+%if %{with reiser4}
+       cat %{SOURCE56} >> %{defconfig}
+%endif
+
+%if %{with xen0}
+       cat %{SOURCE46} >> %{defconfig}
+%endif
+
+%if %{with xenU}
+       cat %{SOURCE47} >> %{defconfig}
+%endif
+
+%if %{with fbcondecor}
+       echo "CONFIG_FB_CON_DECOR=y" >> %{defconfig}
+%else
+       echo "CONFIG_BOOTSPLASH=y" >> %{defconfig}
+%endif
+
+%if %{with nfsroot}
+       sed -i "s:CONFIG_NFS_FS=m:CONFIG_NFS_FS=y:" %{defconfig}
+       echo "CONFIG_ROOT_NFS=y" >> %{defconfig}
+%endif
+
+%if %{with rescuecd}
+       RescueConfig %{defconfig}
+%endif
+
+# apparmor, will be moved to external file if works
+%if %{with apparmor}
+echo CONFIG_SECURITY_APPARMOR=y >> %{defconfig}
+echo CONFIG_SECURITY_APPARMOR_BOOTPARAM_VALUE=1 >> %{defconfig}
+echo "# CONFIG_SECURITY_APPARMOR_DISABLE is not set" >> %{defconfig}
+# patch for unionfs not ready yet
+sed -i "s:CONFIG_UNION_FS=m:# CONFIG_UNION_FS is not set:" %{defconfig}
+# some conflict with smack, todo
+sed -i "s:CONFIG_SECURITY_SMACK=y:# CONFIG_SECURITY_SMACK is not set:" %{defconfig}
+%endif
+
+%{?debug:sed -i "s:# CONFIG_DEBUG_SLAB is not set:CONFIG_DEBUG_SLAB=y:" %{defconfig}}
+%{?debug:sed -i "s:# CONFIG_DEBUG_PREEMPT is not set:CONFIG_DEBUG_PREEMPT=y:" %{defconfig}}
+%{?debug:sed -i "s:# CONFIG_RT_DEADLOCK_DETECT is not set:CONFIG_RT_DEADLOCK_DETECT=y:" %{defconfig}}
+
+}
+
+BuildKernel() {
+       %{?debug:set -x}
+       echo "Building kernel $1 ..."
+       %{__make} %CrossOpts mrproper \
+               RCS_FIND_IGNORE='-name build-done -prune -o'
+       ln -sf %{defconfig} .config
+
+       %{__make} %CrossOpts clean \
+               RCS_FIND_IGNORE='-name build-done -prune -o'
+       %{__make} %CrossOpts include/linux/version.h \
+               %{?with_verbose:V=1}
+
+       %{__make} %CrossOpts scripts/mkcompile_h \
+               %{?with_verbose:V=1}
+
+# make does vmlinux, modules and bzImage at once
+%ifarch sparc64
+       %{__make} %CrossOpts image \
+               %{?with_verbose:V=1}
+
+       %{__make} %CrossOpts modules \
+               %{?with_verbose:V=1}
+%else
+       %{__make} %CrossOpts \
+               %{?with_verbose:V=1}
+%endif
+}
+
+PreInstallKernel() {
+       Config="%{_target_base_arch}"
+       KernelVer=%{kernel_release}
+
+       mkdir -p $KERNEL_INSTALL_DIR/boot
+       install System.map $KERNEL_INSTALL_DIR/boot/System.map-$KernelVer
+%ifarch %{ix86} %{x8664}
+       install arch/x86/boot/bzImage $KERNEL_INSTALL_DIR/boot/vmlinuz-$KernelVer
+       install vmlinux $KERNEL_INSTALL_DIR/boot/vmlinux-$KernelVer
+%endif
+%ifarch alpha sparc sparc64
+       gzip -cfv vmlinux > vmlinuz
+       install vmlinux $KERNEL_INSTALL_DIR/boot/vmlinux-$KernelVer
+       install vmlinuz $KERNEL_INSTALL_DIR/boot/vmlinuz-$KernelVer
+%ifarch sparc
+       elftoaout arch/sparc/boot/image -o vmlinux.aout
+       install vmlinux.aout $KERNEL_INSTALL_DIR/boot/vmlinux.aout-$KernelVer
+%endif
+%ifarch sparc64
+       elftoaout arch/sparc64/boot/image -o vmlinux.aout
+       install vmlinux.aout $KERNEL_INSTALL_DIR/boot/vmlinux.aout-$KernelVer
+%endif
+%endif
+%ifarch ppc ppc64
+       install vmlinux $KERNEL_INSTALL_DIR/boot/vmlinux-$KernelVer
+       install vmlinux $KERNEL_INSTALL_DIR/boot/vmlinuz-$KernelVer
+%endif
+%ifarch ppc-broken
+       %{__make} -f Makefile.ppclibs install \
+               DESTDIR=$KERNEL_INSTALL_DIR/boot/libs-$KernelVer
+%endif
+%ifarch ia64
+       gzip -cfv vmlinux > vmlinuz
+       install -d $KERNEL_INSTALL_DIR/boot/efi
+       install vmlinuz $KERNEL_INSTALL_DIR/boot/efi/vmlinuz-$KernelVer
+       ln -sf efi/vmlinuz-$KernelVer $KERNEL_INSTALL_DIR/boot/vmlinuz-$KernelVer
+%endif
+%ifarch arm
+       install arch/arm/boot/zImage $KERNEL_INSTALL_DIR/boot/vmlinuz-$KernelVer
+%endif
+
+       %{__make} %CrossOpts modules_install \
+               %{?with_verbose:V=1} \
+               DEPMOD=%DepMod \
+               INSTALL_MOD_PATH=$KERNEL_INSTALL_DIR \
+               KERNELRELEASE=$KernelVer
+
+       # You'd probabelly want to make it somewhat different
+       install -d $KERNEL_INSTALL_DIR%{_kernelsrcdir}
+       install Module.symvers $KERNEL_INSTALL_DIR%{_kernelsrcdir}/Module.symvers-dist
+
+       echo "CHECKING DEPENDENCIES FOR KERNEL MODULES"
+       if [ %DepMod = /sbin/depmod ]; then
+               /sbin/depmod --basedir $KERNEL_INSTALL_DIR -ae -F $KERNEL_INSTALL_DIR/boot/System.map-$KernelVer -r $KernelVer || :
+       fi
+       touch $KERNEL_INSTALL_DIR/lib/modules/$KernelVer/modules.dep
+       echo "KERNEL RELEASE $KernelVer DONE"
+}
+
+KERNEL_BUILD_DIR=`pwd`
+echo "_%{KABI}" > localversion
+
+KERNEL_INSTALL_DIR="$KERNEL_BUILD_DIR/build-done/kernel"
+rm -rf $KERNEL_INSTALL_DIR
+%if %{without myown}
+BuildConfig
+%else
+cat $RPM_SOURCE_DIR/kernel-myown.config > %{defconfig}
+%endif
+ln -sf %{defconfig} .config
+install -d $KERNEL_INSTALL_DIR%{_kernelsrcdir}/include/linux
+rm -f include/linux/autoconf.h
+%{__make} %CrossOpts include/linux/autoconf.h
+install include/linux/autoconf.h \
+       $KERNEL_INSTALL_DIR%{_kernelsrcdir}/include/linux/autoconf-dist.h
+install .config \
+       $KERNEL_INSTALL_DIR%{_kernelsrcdir}/config-dist
+BuildKernel
+PreInstallKernel
+
+%{__make} %CrossOpts include/linux/utsrelease.h
+cp include/linux/utsrelease.h{,.save}
+cp include/linux/version.h{,.save}
+cp scripts/mkcompile_h{,.save}
+
+%install
+rm -rf $RPM_BUILD_ROOT
+umask 022
+
+export DEPMOD=%DepMod
+
+install -d $RPM_BUILD_ROOT%{_kernelsrcdir}
+install -d $RPM_BUILD_ROOT%{_sysconfdir}/modprobe.d/%{kernel_release}
+
+# test if we can hardlink -- %{_builddir} and $RPM_BUILD_ROOT on same partition
+if cp -al COPYING $RPM_BUILD_ROOT/COPYING 2>/dev/null; then
+       l=l
+       rm -f $RPM_BUILD_ROOT/COPYING
+fi
+
+KERNEL_BUILD_DIR=`pwd`
+
+cp -a$l $KERNEL_BUILD_DIR/build-done/kernel/* $RPM_BUILD_ROOT
+
+if [ -e  $RPM_BUILD_ROOT/lib/modules/%{kernel_release} ] ; then
+       rm -f $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/build
+       ln -sf %{_kernelsrcdir} $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/build
+       install -d $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/{cluster,misc}
+fi
+
+find . -maxdepth 1 ! -name "build-done" ! -name "." -exec cp -a$l "{}" "$RPM_BUILD_ROOT%{_kernelsrcdir}/" ";"
+
+cd $RPM_BUILD_ROOT%{_kernelsrcdir}
+
+%{__make} %CrossOpts mrproper archclean \
+       RCS_FIND_IGNORE='-name build-done -prune -o'
+
+if [ -e $KERNEL_BUILD_DIR/build-done/kernel%{_kernelsrcdir}/include/linux/autoconf-dist.h ]; then
+       install $KERNEL_BUILD_DIR/build-done/kernel%{_kernelsrcdir}/include/linux/autoconf-dist.h \
+               $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux
+       install $KERNEL_BUILD_DIR/build-done/kernel%{_kernelsrcdir}/config-dist \
+               $RPM_BUILD_ROOT%{_kernelsrcdir}
+fi
+
+cp -Rdp$l $KERNEL_BUILD_DIR/include/linux/* \
+       $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux
+
+%{__make} %CrossOpts mrproper
+mv -f include/linux/utsrelease.h.save $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux/utsrelease.h
+cp include/linux/version.h{.save,}
+cp scripts/mkcompile_h{.save,}
+rm -rf include/linux/version.h.save
+rm -rf scripts/mkcompile_h.save
+install %{SOURCE3} $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux/autoconf.h
+install %{SOURCE4} $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux/config.h
+
+# collect module-build files and directories
+perl %{SOURCE7} %{_kernelsrcdir} $KERNEL_BUILD_DIR
+
+# ghosted initrd
+touch $RPM_BUILD_ROOT%{initrd_dir}/initrd-%{kernel_release}.gz
+
+# rpm obeys filelinkto checks for ghosted symlinks, convert to files
+rm -f $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/{build,source}
+touch $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/{build,source}
+
+# remove unnecessary dir with dead symlink
+rm -rf $RPM_BUILD_ROOT/arch/i386
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%preun
+if [ -x /sbin/new-kernel-pkg ]; then
+       /sbin/new-kernel-pkg --remove %{kernel_release}
+fi
+
+%post
+%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}}
+
+%depmod %{kernel_release}
+
+/sbin/geninitrd -f --initrdfs=rom %{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}}
+
+if [ -x /sbin/new-kernel-pkg ]; then
+       if [ -f /etc/pld-release ]; then
+               title=$(sed 's/^[0-9.]\+ //' < /etc/pld-release)
+       else
+               title='PLD Linux'
+       fi
+
+       ext='%{_alt_kernel}'
+       if [ "$ext" ]; then
+               title="$title $ext"
+       fi
+
+       /sbin/new-kernel-pkg --initrdfile=%{initrd_dir}/initrd-%{kernel_release}.gz --install %{kernel_release} --banner "$title"
+elif [ -x /sbin/rc-boot ]; then
+       /sbin/rc-boot 1>&2 || :
+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}}
+
+%post libs
+%{_sbindir}/mkvmlinuz /boot/zImage-%{kernel_release} %{kernel_release}
+
+%post drm
+%depmod %{kernel_release}
+
+%postun drm
+%depmod %{kernel_release}
+
+%post pcmcia
+%depmod %{kernel_release}
+
+%postun pcmcia
+%depmod %{kernel_release}
+
+%post sound-alsa
+%depmod %{kernel_release}
+
+%postun sound-alsa
+%depmod %{kernel_release}
+
+%post sound-oss
+%depmod %{kernel_release}
+
+%postun sound-oss
+%depmod %{kernel_release}
+
+%post headers
+ln -snf %{basename:%{_kernelsrcdir}} %{_prefix}/src/linux%{_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}
+               fi
+       fi
+fi
+
+%triggerin module-build -- %{name} = %{epoch}:%{version}-%{release}
+ln -sfn %{_kernelsrcdir} /lib/modules/%{kernel_release}/build
+ln -sfn %{_kernelsrcdir} /lib/modules/%{kernel_release}/source
+
+%triggerun module-build -- %{name} = %{epoch}:%{version}-%{release}
+if [ "$1" = 0 ]; then
+       rm -f /lib/modules/%{kernel_release}/{build,source}
+fi
+
+%files
+%defattr(644,root,root,755)
+%ifarch sparc sparc64
+/boot/vmlinux.aout-%{kernel_release}
+%endif
+%ifarch ia64
+/boot/efi/vmlinuz-%{kernel_release}
+%endif
+/boot/vmlinuz-%{kernel_release}
+/boot/System.map-%{kernel_release}
+%ghost %{initrd_dir}/initrd-%{kernel_release}.gz
+%dir /lib/modules/%{kernel_release}
+%dir /lib/modules/%{kernel_release}/kernel
+%ifnarch sparc
+/lib/modules/%{kernel_release}/kernel/arch
+%endif
+/lib/modules/%{kernel_release}/kernel/crypto
+/lib/modules/%{kernel_release}/kernel/drivers
+%if %{have_drm} && %{without myown}
+%exclude /lib/modules/%{kernel_release}/kernel/drivers/char/drm
+%endif
+/lib/modules/%{kernel_release}/kernel/fs
+
+# this directory will be removed after disabling rcutorture mod. in 2.6.20.
+/lib/modules/%{kernel_release}/kernel/kernel
+
+/lib/modules/%{kernel_release}/kernel/lib
+/lib/modules/%{kernel_release}/kernel/net
+%if %{have_sound} && %{without myown}
+%dir /lib/modules/%{kernel_release}/kernel/sound
+/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*
+%endif
+%endif
+%dir /lib/modules/%{kernel_release}/misc
+%if %{with pcmcia} && %{without myown}
+%exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/[!p]*
+%exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/pd6729.ko*
+%exclude /lib/modules/%{kernel_release}/kernel/drivers/*/pcmcia
+%if %{without rescuecd}
+%exclude /lib/modules/%{kernel_release}/kernel/drivers/ata/pata_pcmcia.ko*
+%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/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/legacy/ide-cs.ko*
+%exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/*_cs.ko*
+%exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/b43
+%exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/hostap/hostap_cs.ko*
+%exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/libertas/*_cs.ko*
+%exclude /lib/modules/%{kernel_release}/kernel/drivers/parport/parport_cs.ko*
+%exclude /lib/modules/%{kernel_release}/kernel/drivers/serial/serial_cs.ko*
+%exclude /lib/modules/%{kernel_release}/kernel/drivers/usb/host/sl811_cs.ko*
+%endif
+%ghost /lib/modules/%{kernel_release}/modules.*
+# symlinks pointing to kernelsrcdir
+%ghost /lib/modules/%{kernel_release}/build
+%ghost /lib/modules/%{kernel_release}/source
+%dir %{_sysconfdir}/modprobe.d/%{kernel_release}
+
+%ifarch alpha %{ix86} %{x8664} ppc ppc64 sparc sparc64
+%files vmlinux
+%defattr(644,root,root,755)
+/boot/vmlinux-%{kernel_release}
+%endif
+
+%if %{have_drm} && %{without myown}
+%files drm
+%defattr(644,root,root,755)
+/lib/modules/%{kernel_release}/kernel/drivers/char/drm
+%endif
+
+%if %{with pcmcia} && %{without myown}
+%files pcmcia
+%defattr(644,root,root,755)
+/lib/modules/%{kernel_release}/kernel/drivers/pcmcia/*ko*
+/lib/modules/%{kernel_release}/kernel/drivers/*/pcmcia
+%exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/pcmcia*ko*
+%if %{without rescuecd}
+/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/telephony/ixj_pcmcia.ko*
+%endif
+/lib/modules/%{kernel_release}/kernel/drivers/ata/pata_pcmcia.ko*
+/lib/modules/%{kernel_release}/kernel/drivers/ide/legacy/ide-cs.ko*
+/lib/modules/%{kernel_release}/kernel/drivers/net/wireless/*_cs.ko*
+/lib/modules/%{kernel_release}/kernel/drivers/net/wireless/b43
+/lib/modules/%{kernel_release}/kernel/drivers/net/wireless/hostap/hostap_cs.ko*
+/lib/modules/%{kernel_release}/kernel/drivers/net/wireless/libertas/*_cs.ko*
+/lib/modules/%{kernel_release}/kernel/drivers/parport/parport_cs.ko*
+/lib/modules/%{kernel_release}/kernel/drivers/serial/serial_cs.ko*
+/lib/modules/%{kernel_release}/kernel/drivers/usb/host/sl811_cs.ko*
+%endif
+
+%ifarch ppc-broken
+%if "%{_arch}" == "ppc"
+%files libs
+%defattr(644,root,root,755)
+%dir /boot/libs-%{kernel_release}
+/boot/libs-%{kernel_release}/common
+/boot/libs-%{kernel_release}/kernel
+/boot/libs-%{kernel_release}/lib
+/boot/libs-%{kernel_release}/of1275
+/boot/libs-%{kernel_release}/openfirmware
+/boot/libs-%{kernel_release}/simple
+%dir /boot/libs-%{kernel_release}/utils
+%attr(755,root,root) /boot/libs-%{kernel_release}/utils/*
+/boot/libs-%{kernel_release}/ld.script
+%endif
+%endif
+
+%if %{have_sound} && %{without myown}
+%files sound-alsa
+%defattr(644,root,root,755)
+/lib/modules/%{kernel_release}/kernel/sound
+%exclude %dir /lib/modules/%{kernel_release}/kernel/sound
+%exclude /lib/modules/%{kernel_release}/kernel/sound/ac97_bus.ko*
+%exclude /lib/modules/%{kernel_release}/kernel/sound/sound*.ko*
+%if %{have_oss}
+%exclude /lib/modules/%{kernel_release}/kernel/sound/oss
+%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*
+%endif
+
+%if %{have_oss} && %{without myown}
+%files sound-oss
+%defattr(644,root,root,755)
+/lib/modules/%{kernel_release}/kernel/sound/oss
+%endif
+%endif
+
+%files headers
+%defattr(644,root,root,755)
+%dir %{_kernelsrcdir}
+%{_kernelsrcdir}/include
+%{_kernelsrcdir}/config-dist
+%{_kernelsrcdir}/Module.symvers-dist
+
+%files module-build -f aux_files
+%defattr(644,root,root,755)
+# symlinks pointint to kernelsrcdir
+%dir /lib/modules/%{kernel_release}
+/lib/modules/%{kernel_release}/build
+%{_kernelsrcdir}/Kbuild
+%{_kernelsrcdir}/localversion
+%{_kernelsrcdir}/arch/*/kernel/asm-offsets*
+%{_kernelsrcdir}/arch/*/kernel/sigframe*.h
+%{_kernelsrcdir}/drivers/lguest/lg.h
+%dir %{_kernelsrcdir}/scripts
+%dir %{_kernelsrcdir}/scripts/kconfig
+%{_kernelsrcdir}/scripts/Kbuild.include
+%{_kernelsrcdir}/scripts/Makefile*
+%{_kernelsrcdir}/scripts/basic
+%{_kernelsrcdir}/scripts/mkmakefile
+%{_kernelsrcdir}/scripts/mod
+%{_kernelsrcdir}/scripts/setlocalversion
+%{_kernelsrcdir}/scripts/*.c
+%{_kernelsrcdir}/scripts/*.sh
+%{_kernelsrcdir}/scripts/kconfig/*
+%{_kernelsrcdir}/scripts/mkcompile_h
+
+%files doc
+%defattr(644,root,root,755)
+%dir %{_kernelsrcdir}
+%{_kernelsrcdir}/Documentation
+
+%if %{with source}
+%files source -f aux_files_exc
+%defattr(644,root,root,755)
+%{_kernelsrcdir}/arch/*/[!Mk]*
+%{_kernelsrcdir}/arch/*/kernel/[!M]*
+%{_kernelsrcdir}/arch/x86/kvm
+%exclude %{_kernelsrcdir}/arch/*/kernel/asm-offsets*
+%exclude %{_kernelsrcdir}/arch/*/kernel/sigframe*.h
+%exclude %{_kernelsrcdir}/drivers/lguest/lg.h
+%{_kernelsrcdir}/block
+%{_kernelsrcdir}/crypto
+%{_kernelsrcdir}/drivers
+%{_kernelsrcdir}/fs
+%if %{with grsecurity} && %{without rescuecd}
+%{_kernelsrcdir}/grsecurity
+%endif
+%{_kernelsrcdir}/init
+%{_kernelsrcdir}/ipc
+%{_kernelsrcdir}/kernel
+%{_kernelsrcdir}/lib
+%{_kernelsrcdir}/mm
+%{_kernelsrcdir}/net
+%{_kernelsrcdir}/virt
+%{_kernelsrcdir}/scripts/*
+%exclude %{_kernelsrcdir}/scripts/Kbuild.include
+%exclude %{_kernelsrcdir}/scripts/Makefile*
+%exclude %{_kernelsrcdir}/scripts/basic
+%exclude %{_kernelsrcdir}/scripts/kconfig
+%exclude %{_kernelsrcdir}/scripts/mkmakefile
+%exclude %{_kernelsrcdir}/scripts/mod
+%exclude %{_kernelsrcdir}/scripts/setlocalversion
+%exclude %{_kernelsrcdir}/scripts/*.c
+%exclude %{_kernelsrcdir}/scripts/*.sh
+%{_kernelsrcdir}/sound
+%{_kernelsrcdir}/security
+%{_kernelsrcdir}/usr
+%{_kernelsrcdir}/COPYING
+%{_kernelsrcdir}/CREDITS
+%{_kernelsrcdir}/MAINTAINERS
+%{_kernelsrcdir}/README
+%{_kernelsrcdir}/REPORTING-BUGS
+%{_kernelsrcdir}/.mailmap
+%endif
This page took 2.154072 seconds and 4 git commands to generate.