3 # the following bcond combos will not work
4 # - without_vserver and any of the following
7 # LATEST VERSION CHECKER:
8 # # curl -s http://www.kernel.org/kdist/finger_banner
11 # - benchmark NO_HZ & HZ=1000 vs HZ=300 on i686
12 # - IPv4 source address selection for multihomed vservers is completely broken
13 # meaning routing table is ignored except for default
15 # HOWTO update configuration files:
17 # - add new options to proper config (kernel-multiarch.config, kernel-x86.config, kernel-powerpc.config etc)
18 # - sort configuration files using:
19 # ./kernel-config-sort.pl ~/rpm/BUILD/kernel-%{version}/linux-%{version}/ -a x86 kernel-x86.config
20 # ./kernel-config-sort.pl ~/rpm/BUILD/kernel-%{version}/linux-%{version} kernel-multiarch.config
23 %bcond_without source # don't build kernel-source package
24 %bcond_without doc # don't build kernel-doc package
25 %bcond_without pcmcia # don't build pcmcia
27 %bcond_with verbose # verbose build (V=1)
28 %bcond_with reiser4 # support for reiser4 fs (experimental)
30 %bcond_without grsecurity # don't build grsecurity nor pax at all
31 %bcond_with pax # build pax and grsecurity (ie. grsecurity && pax)
33 %bcond_with fbcondecor # build fbcondecor (disable FB_TILEBLITTING and affected fb modules)
34 %bcond_with pae # build PAE (HIGHMEM64G) support on uniprocessor
35 %bcond_with nfsroot # build with root on NFS support
37 %bcond_without imq # imq support
38 %bcond_without wrr # wrr support
39 %bcond_without esfq # esfq support
40 %bcond_without ipv6 # ipv6 support
42 %bcond_without vserver # support for VServer (enabled by default)
43 %bcond_with tuxonice # support for tuxonice (ex-suspend2) (enabled by default)
45 %bcond_with vanilla # don't include any patches
46 %bcond_with rescuecd # build kernel for our rescue
47 %bcond_with myown # build with your own config (kernel-myown.config)
49 %{?debug:%define with_verbose 1}
52 %unglobal with_grsecurity
55 %if %{without grsecurity}
60 %define with_grsecurity 1
70 %unglobal with_tuxonice
71 %unglobal with_grsecurity
73 %unglobal with_vserver
99 %define _enable_debug_packages 0
101 %define tuxonice_version 3.2
103 %define module_init_tools_ver 3.16
106 %if "%{_alt_kernel}" == ""
107 %define alt_kernel myown
111 %define alt_kernel vanilla
114 %define alt_kernel rescuecd
115 %else # not rescuecd:
116 %define __alt_kernel %{?with_pax:pax}%{!?with_grsecurity:nogrsecurity}%{?with_pae:pae}
117 %if "%{__alt_kernel}" != ""
118 %define alt_kernel %{__alt_kernel}
120 %endif # not rescuecd
124 # kernel release (used in filesystem and eventually in uname -r)
125 # modules will be looked from /lib/modules/%{kernel_release}
126 # localversion is just that without version for "> localversion"
127 %define localversion %{rel}
128 %define kernel_release %{version}%{?alt_kernel:_%{alt_kernel}}-%{localversion}
130 Summary: The Linux kernel (the core of the Linux operating system)
131 Summary(de.UTF-8): Der Linux-Kernel (Kern des Linux-Betriebssystems)
132 Summary(et.UTF-8): Linuxi kernel (ehk operatsioonisüsteemi tuum)
133 Summary(fr.UTF-8): Le Kernel-Linux (La partie centrale du systeme)
134 Summary(pl.UTF-8): JÄ…dro Linuksa
135 Name: kernel%{_alt_kernel}
136 Version: %{basever}%{postver}
141 Source0: http://www.kernel.org/pub/linux/kernel/v3.0/linux-%{basever}.tar.bz2
142 # Source0-md5: 398e95866794def22b12dfbc15ce89c0
143 %if "%{postver}" != ".0"
144 #Source1: http://www.kernel.org/pub/linux/kernel/v3.0/patch-%{version}.bz2
146 # for now: ftp://ftp.archlinux.org/other/linux/patch-3.0.6.gz
147 Source1: patch-%{version}
148 # Source1-md5: 89dfaaa8791cdceef874ed5eda43930b
151 Source3: kernel-autoconf.h
152 Source4: kernel-config.h
153 Source6: kernel-config.awk
154 Source7: kernel-module-build.pl
155 Source8: kernel-track-config-change.awk
156 # not used by kernel.spec, but it's good to have it in SOURCES
157 Source9: kernel-config-sort.pl
158 Source10: kernel.make
160 Source20: kernel-multiarch.config
161 Source21: kernel-x86.config
162 Source22: kernel-sparc.config
163 Source23: kernel-alpha.config
164 Source24: kernel-powerpc.config
165 Source25: kernel-ia64.config
167 Source41: kernel-patches.config
168 Source42: kernel-tuxonice.config
169 Source43: kernel-vserver.config
170 Source45: kernel-grsec.config
172 Source49: kernel-pax.config
173 Source50: kernel-no-pax.config
174 Source55: kernel-imq.config
175 Source56: kernel-reiser4.config
176 Source57: kernel-wrr.config
178 Source58: kernel-inittmpfs.config
180 # http://dev.gentoo.org/~spock/projects/fbcondecor/archive/fbcondecor-0.9.4-2.6.25-rc6.patch
181 Patch3: kernel-fbcondecor.patch
182 Patch4: kernel-fbcon-margins.patch
183 Patch5: linux-wistron-amilo8210.patch
185 # netfilter related stuff mostly based on patch-o-matic-ng
186 # snapshot 20070806 with some fixes. Some modules
187 # were ported to nf_conntrack.
189 Patch10: kernel-pom-ng-IPV4OPTSSTRIP.patch
191 Patch16: kernel-pom-ng-mms-conntrack-nat.patch
192 Patch22: kernel-pom-ng-rsh.patch
193 Patch23: kernel-pom-ng-rpc.patch
195 # based on http://mike.it-loops.com/rtsp/rtsp-2.6.26.patch
196 Patch36: kernel-nf_rtsp.patch
198 # http://ftp.linux-vserver.org/pub/people/dhozac/p/k/delta-owner-xid-feat02.diff
199 Patch37: kernel-owner-xid.patch
201 # based on kernel-2.6.25-layer7-2.20.patch from
202 # http://switch.dl.sourceforge.net/sourceforge/l7-filter/netfilter-layer7-v2.20.tar.gz
203 Patch40: kernel-layer7.patch
207 # http://zph.bratcheda.org/linux-2.6.26.3-zph.patch
208 Patch49: kernel-zph.patch
210 # based on http://www.linuximq.net/patchs/linux-2.6.39-imq-multiqueue-test1.diff.bz2
211 Patch50: kernel-imq.patch
213 # http://www.kernel.org/pub/linux/kernel/people/edward/reiser4/reiser4-for-2.6/reiser4-for-2.6.35.patch.bz2
214 Patch51: kernel-reiser4.patch
216 # http://www.zz9.dk/patches/wrr-linux-071203-2.6.25.patch.gz
217 Patch52: kernel-wrr.patch
219 # http://fatooh.org/esfq-2.6/sfq-2.6.24.1.tar.bz2
220 Patch53: kernel-esfq.patch
222 # http://memebeam.org/free-software/toshiba_acpi/toshiba_acpi-dev_toshiba_test5-linux_2.6.26.patch
223 Patch54: kernel-toshiba_acpi.patch
225 # by Baggins request:
226 # derived from ftp://ftp.cmf.nrl.navy.mil/pub/chas/linux-atm/vbr/vbr-kernel-diffs
227 Patch55: kernel-atm-vbr.patch
228 Patch56: kernel-atmdd.patch
230 # http://synce.svn.sourceforge.net/svnroot/synce/trunk/patches/linux-2.6.22-rndis_host-wm5.patch
231 Patch59: kernel-rndis_host-wm5.patch
233 # Project suspend2 renamed to tuxonice
234 # http://tuxonice.net/files/current-tuxonice-for-2.6.37.patch_0.bz2
235 # NOTE: currently using own diff from tuxonice git tree until official patch is released
236 # git://git.kernel.org/pub/scm/linux/kernel/git/nigelc/tuxonice-head.git
237 # git://git.kernel.org/pub/scm/linux/kernel/git/nigelc/tuxonice-<basever>.git
238 # To produce patch: git diff upstream/master...tuxonice/combined
239 Patch69: kernel-tuxonice.patch
240 Patch70: kernel-tuxonice-headers.patch
242 # adds some ids for hostap suported cards and monitor_enable from/for aircrack-ng
243 # http://patches.aircrack-ng.org/hostap-kernel-2.6.18.patch
244 Patch85: kernel-hostap.patch
246 # http://vserver.13thfloor.at/Experimental/patch-3.0.4-vs2.3.1-pre10.1.diff
247 Patch100: kernel-vserver-2.3.patch
248 Patch101: kernel-vserver-fixes.patch
250 # Wake-On-Lan fix for nForce drivers; using http://atlas.et.tudelft.nl/verwei90/nforce2/wol.html
251 # Fix verified for that kernel version.
252 Patch130: kernel-forcedeth-WON.patch
254 # http://download.filesystems.org/unionfs/unionfs-2.x/unionfs-2.5.8_for_2.6.38-rc7.diff.gz
255 Patch140: kernel-unionfs.patch
257 # git://aufs.git.sourceforge.net/gitroot/aufs/aufs3-standalone.git, read README
259 # git clone git://aufs.git.sourceforge.net/gitroot/aufs/aufs3-standalone.git
260 # cd aufs3-standalone
261 # git checkout -b aufs3.0 origin/aufs3.0
262 # cat aufs3-kbuild.patch aufs3-base.patch aufs3-standalone.patch > ~/rpm/packages/kernel/kernel-aufs3.patch
264 # cp -a Documentation fs include linux
265 # diff -urN /usr/share/empty linux >> ~/rpm/packages/kernel/kernel-aufs3.patch
267 Patch145: kernel-aufs3.patch
268 Patch146: kernel-aufs2-unionfs.patch
269 Patch147: kernel-aufs2-no-const-grsec.patch
270 Patch148: kernel-aufs2-reiser4.patch
272 # Show normal colors in menuconfig with ncurses ABI 6
273 Patch250: kernel-fix_256colors_menuconfig.patch
275 # https://patchwork.kernel.org/patch/236261/
276 Patch400: kernel-virtio-gl-accel.patch
278 Patch2000: kernel-small_fixes.patch
279 Patch2001: kernel-pwc-uncompress.patch
280 Patch2003: kernel-regressions.patch
282 # 0001-AppArmor-compatibility-patch-for-v5-network-controll.patch
283 # 0002-AppArmor-compatibility-patch-for-v5-interface.patch
284 # from http://kernel.org/pub/linux/security/apparmor/apparmor-2.6.36-patches.tgz
285 Patch5000: kernel-apparmor.patch
288 # based on ftp://ftp.leg.uct.ac.za/pub/linux/rip/tmpfs_root-2.6.30.diff.gz
289 Patch7000: kernel-inittmpfs.patch
291 # based on http://grsecurity.net/~spender/grsecurity-2.2.2-3.0.4-201110080819.patch
292 # NOTE: put raw upstream patches on kernel-grsec_full.patch:GRSECURITY_RAW for reference
293 # (since upstream deletes older patches)
294 Patch9999: kernel-grsec_full.patch
295 Patch10000: kernel-grsec-caps.patch
296 Patch10001: kernel-grsec-common.patch
297 Patch10002: kernel-grsec_fixes.patch
299 # Do not remove this line, please. It is easier for me to uncomment two lines, then patch
300 # kernel.spec every time.
301 #Patch50000: kernel-usb_reset.patch
303 URL: http://www.kernel.org/
304 BuildRequires: binutils >= 3:2.18
305 %ifarch sparc sparc64
306 BuildRequires: elftoaout
309 BuildRequires: uboot-mkimage
311 BuildRequires: /sbin/depmod
312 BuildRequires: gcc >= 5:3.2
313 BuildRequires: xz >= 1:4.999.7
315 BuildRequires: hostname
316 BuildRequires: module-init-tools >= %{module_init_tools_ver}
317 BuildRequires: perl-base
318 BuildRequires: rpm-build >= 4.5-24
319 BuildRequires: rpmbuild(macros) >= 1.217
320 Requires(post): coreutils
321 Requires(post): geninitrd >= 10000-3
322 Requires(post): module-init-tools >= %{module_init_tools_ver}
323 Requires: /sbin/depmod
325 Requires: geninitrd >= 10000-3
326 Requires: module-init-tools >= %{module_init_tools_ver}
328 Provides: %{name}(netfilter) = 20070806
329 Provides: %{name}(vermagic) = %{kernel_release}
330 Obsoletes: kernel%{_alt_kernel}-isdn-mISDN
331 Obsoletes: kernel%{_alt_kernel}-char-lirc-ene0100
332 Obsoletes: kernel%{_alt_kernel}-char-lirc-it87
333 Obsoletes: kernel%{_alt_kernel}-char-lirc-ite8709
334 Obsoletes: kernel%{_alt_kernel}-char-lirc-mceusb
335 Obsoletes: kernel%{_alt_kernel}-char-lirc-streamzap
336 Obsoletes: kernel-firmware
337 Obsoletes: kernel-misc-acer_acpi
338 Obsoletes: kernel-misc-fuse
339 Obsoletes: kernel-misc-uvc
340 Obsoletes: kernel-modules
341 Obsoletes: kernel-net-ar81
342 Obsoletes: kernel-net-hostap
343 Obsoletes: kernel-net-ieee80211
344 Obsoletes: kernel-net-ipp2p
345 Obsoletes: kernel-net-rt61
346 Obsoletes: kernel-smp
347 Conflicts: e2fsprogs < 1.29
348 Conflicts: isdn4k-utils < 3.1pre1
349 Conflicts: jfsutils < 1.1.3
350 Conflicts: lvm2 < 2.02.40
351 Conflicts: nfs-utils < 1.0.5
352 Conflicts: oprofile < 0.9
353 Conflicts: ppp < 1:2.4.0
354 Conflicts: procps < 3.2.0
355 Conflicts: quota-tools < 3.09
356 %{?with_reiserfs4:Conflicts: reiser4progs < 1.0.0}
357 Conflicts: reiserfsprogs < 3.6.3
358 Conflicts: rpm < 4.4.2-0.2
359 Conflicts: udev < 1:081
360 Conflicts: util-linux < 2.10o
361 Conflicts: util-vserver < 0.30.216
362 Conflicts: xfsprogs < 2.6.0
364 ExcludeArch: i386 i486 i586
366 ExclusiveArch: %{ix86} %{x8664} alpha arm ia64 ppc ppc64 sparc sparc64
369 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
371 %ifarch %{ix86} %{x8664}
372 %define target_arch_dir x86
375 %define target_arch_dir powerpc
377 %ifarch sparc sparc64
378 %define target_arch_dir sparc
380 %ifnarch %{ix86} %{x8664} ppc ppc64 sparc sparc64
381 %define target_arch_dir %{_target_base_arch}
384 %define defconfig arch/%{target_arch_dir}/defconfig
386 # No ELF objects there to strip (skips processing 27k files)
387 %define _noautostrip \\(.*%{_kernelsrcdir}/.*\\|.*/vmlinux.*\\)
388 %define _noautochrpath .*%{_kernelsrcdir}/.*
391 %define initrd_dir /boot/efi
393 %define initrd_dir /boot
396 %define topdir %{_builddir}/%{name}-%{version}
397 %define srcdir %{topdir}/linux-%{basever}
398 %define objdir %{topdir}/%{targetobj}
399 %define targetobj %{_target_base_arch}-gcc-%(%{kgcc} -dumpversion)
401 %define _kernelsrcdir /usr/src/linux%{_alt_kernel}-%{version}
403 %if "%{_target_base_arch}" != "%{_arch}"
404 %define CrossOpts ARCH=%{_target_base_arch} CROSS_COMPILE=%{_target_cpu}-pld-linux-
405 %define DepMod /bin/true
407 %if "%{_arch}" == "sparc" && "%{_target_base_arch}" == "sparc64"
408 %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
409 %define DepMod /sbin/depmod
412 %if "%{_arch}" == "sparc64" && "%{_target_base_arch}" == "sparc"
413 %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
414 %define DepMod /sbin/depmod
417 %if "%{_arch}" == "x86_64" && "%{_target_base_arch}" == "i386"
418 %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
419 %define DepMod /sbin/depmod
422 %if "%{_target_base_arch}" == "ppc" || "%{_target_base_arch}" == "ppc64"
423 %define CrossOpts ARCH=powerpc CROSS_COMPILE=%{_target_cpu}-pld-linux-
427 %define CrossOpts ARCH=powerpc CC="%{__cc}"
429 %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
431 %define DepMod /sbin/depmod
433 %define MakeOpts %{CrossOpts} HOSTCC="%{__cc}"
436 %{?with_grsecurity:Grsecurity support - enabled}\
437 %{?with_pax:PaX support - enabled}\
438 %{?with_fbcondecor:Fbsplash/fbcondecor - enabled }\
439 %{?with_nfsroot:Root on NFS - enabled}\
441 %define Features %(echo "%{__features}" | sed '/^$/d')
444 This package contains the Linux kernel that is used to boot and run
445 your system. It contains few device drivers for specific hardware.
446 Most hardware is instead supported by modules loaded after booting.
450 %description -l de.UTF-8
451 Das Kernel-Paket enthält den Linux-Kernel (vmlinuz), den Kern des
452 Linux-Betriebssystems. Der Kernel ist für grundliegende
453 Systemfunktionen verantwortlich: Speicherreservierung,
454 Prozeß-Management, Geräte Ein- und Ausgaben, usw.
458 %description -l fr.UTF-8
459 Le package kernel contient le kernel linux (vmlinuz), la partie
460 centrale d'un système d'exploitation Linux. Le noyau traite les
461 fonctions basiques d'un système d'exploitation: allocation mémoire,
462 allocation de process, entrée/sortie de peripheriques, etc.
466 %description -l pl.UTF-8
467 Pakiet zawiera jądro Linuksa niezbędne do prawidłowego działania
468 Twojego komputera. Zawiera w sobie sterowniki do sprzętu znajdującego
469 się w komputerze, takiego jak sterowniki dysków itp.
474 Summary: vmlinux - uncompressed kernel image
475 Summary(de.UTF-8): vmlinux - dekompressiertes Kernel Bild
476 Summary(pl.UTF-8): vmlinux - rozpakowany obraz jÄ…dra
478 Obsoletes: kernel-smp-vmlinux
481 vmlinux - uncompressed kernel image.
483 %description vmlinux -l de.UTF-8
484 vmlinux - dekompressiertes Kernel Bild.
486 %description vmlinux -l pl.UTF-8
487 vmlinux - rozpakowany obraz jÄ…dra.
490 Summary: DRM kernel modules
491 Summary(de.UTF-8): DRM Kernel Treiber
492 Summary(pl.UTF-8): Sterowniki DRM
494 Requires(postun): %{name} = %{epoch}:%{version}-%{release}
495 Requires: %{name} = %{epoch}:%{version}-%{release}
496 Obsoletes: kernel-smp-drm
502 %description drm -l de.UTF-8
505 %description drm -l pl.UTF-8
509 Summary: PCMCIA modules
510 Summary(de.UTF-8): PCMCIA Module
511 Summary(pl.UTF-8): Moduły PCMCIA
513 Requires(postun): %{name} = %{epoch}:%{version}-%{release}
514 Requires: %{name} = %{epoch}:%{version}-%{release}
515 Obsoletes: kernel-smp-pcmcia
516 Conflicts: pcmcia-cs < 3.1.21
517 Conflicts: pcmciautils < 004
523 %description pcmcia -l de.UTF-8
526 %description pcmcia -l pl.UTF-8
530 Summary: ALSA kernel modules
531 Summary(de.UTF-8): ALSA Kernel Module
532 Summary(pl.UTF-8): Sterowniki dźwięku ALSA
534 Requires(postun): %{name} = %{epoch}:%{version}-%{release}
535 Requires: %{name} = %{epoch}:%{version}-%{release}
536 Obsoletes: kernel-smp-sound-alsa
539 %description sound-alsa
540 ALSA (Advanced Linux Sound Architecture) sound drivers.
542 %description sound-alsa -l de.UTF-8
543 ALSA (Advanced Linux Sound Architecture) Sound-Treiber.
545 %description sound-alsa -l pl.UTF-8
546 Sterowniki dźwięku ALSA (Advanced Linux Sound Architecture).
549 Summary: OSS kernel modules
550 Summary(de.UTF-8): OSS Kernel Module
551 Summary(pl.UTF-8): Sterowniki dźwięku OSS
553 Requires(postun): %{name} = %{epoch}:%{version}-%{release}
554 Requires: %{name} = %{epoch}:%{version}-%{release}
555 Obsoletes: kernel-smp-sound-oss
558 %description sound-oss
559 OSS (Open Sound System) drivers.
561 %description sound-oss -l de.UTF-8
562 OSS (Open Sound System) Treiber.
564 %description sound-oss -l pl.UTF-8
565 Sterowniki dźwięku OSS (Open Sound System).
568 Summary: Header files for the Linux kernel
569 Summary(de.UTF-8): Header Dateien für den Linux-Kernel
570 Summary(pl.UTF-8): Pliki nagłówkowe jądra Linuksa
571 Group: Development/Building
572 Provides: %{name}-headers(netfilter) = 20070806
576 These are the C header files for the Linux kernel, which define
577 structures and constants that are needed when rebuilding the kernel or
578 building kernel modules.
580 %description headers -l de.UTF-8
581 Dies sind die C Header Dateien für den Linux-Kernel, die definierte
582 Strukturen und Konstante beinhalten, die beim rekompilieren des
583 Kernels oder bei Kernel Modul kompilationen gebraucht werden.
585 %description headers -l pl.UTF-8
586 Pakiet zawiera pliki nagłówkowe jądra, niezbędne do rekompilacji jądra
587 oraz budowania modułów jądra.
589 %package module-build
590 Summary: Development files for building kernel modules
591 Summary(de.UTF-8): Development Dateien die beim Kernel Modul kompilationen gebraucht werden
592 Summary(pl.UTF-8): Pliki służące do budowania modułów jądra
593 Group: Development/Building
594 Requires: %{name}-headers = %{epoch}:%{version}-%{release}
595 Conflicts: rpmbuild(macros) < 1.619
598 %description module-build
599 Development files from kernel source tree needed to build Linux kernel
600 modules from external packages.
602 %description module-build -l de.UTF-8
603 Development Dateien des Linux-Kernels die beim kompilieren externer
604 Kernel Module gebraucht werden.
606 %description module-build -l pl.UTF-8
607 Pliki ze drzewa źródeł jądra potrzebne do budowania modułów jądra
608 Linuksa z zewnętrznych pakietów.
611 Summary: Kernel source tree
612 Summary(de.UTF-8): Der Kernel Quelltext
613 Summary(pl.UTF-8): Kod źródłowy jądra Linuksa
614 Group: Development/Building
615 Requires: %{name}-module-build = %{epoch}:%{version}-%{release}
619 This is the source code for the Linux kernel. You can build a custom
620 kernel that is better tuned to your particular hardware.
622 %description source -l de.UTF-8
623 Das Kernel-Source-Paket enthält den source code (C/Assembler-Code) des
624 Linux-Kernels. Die Source-Dateien werden gebraucht, um viele
625 C-Programme zu kompilieren, da sie auf Konstanten zurückgreifen, die
626 im Kernel-Source definiert sind. Die Source-Dateien können auch
627 benutzt werden, um einen Kernel zu kompilieren, der besser auf Ihre
628 Hardware ausgerichtet ist.
630 %description source -l fr.UTF-8
631 Le package pour le kernel-source contient le code source pour le noyau
632 linux. Ces sources sont nécessaires pour compiler la plupart des
633 programmes C, car il dépend de constantes définies dans le code
634 source. Les sources peuvent être aussi utilisée pour compiler un noyau
635 personnalisé pour avoir de meilleures performances sur des matériels
638 %description source -l pl.UTF-8
639 Pakiet zawiera kod źródłowy jądra systemu.
642 Summary: Kernel documentation
643 Summary(de.UTF-8): Kernel Dokumentation
644 Summary(pl.UTF-8): Dokumentacja do jÄ…dra Linuksa
649 This is the documentation for the Linux kernel, as found in
650 /usr/src/linux/Documentation directory.
652 %description doc -l de.UTF-8
653 Dies ist die Kernel Dokumentation wie sie im 'Documentation'
654 Verzeichniss vorgefunden werden kann.
656 %description doc -l pl.UTF-8
657 Pakiet zawiera dokumentacjÄ™ do jÄ…dra Linuksa pochodzÄ…cÄ… z katalogu
658 /usr/src/linux/Documentation.
662 ln -s %{SOURCE7} kernel-module-build.pl
663 ln -s %{SOURCE10} Makefile
666 # hack against warning in pax/grsec
667 sed -i 's/-Werror//' arch/alpha/kernel/Makefile
669 %if "%{postver}" != ".0"
670 %{__bzip2} -dc %{SOURCE1} | patch -p1 -s
673 %if %{without vanilla}
681 %if %{with fbcondecor}
690 # kernel-pom-ng-IPV4OPTSSTRIP.patch
693 # kernel-pom-ng-mms-conntrack-nat.patch
696 # kernel-pom-ng-rsh.patch
699 # kernel-pom-ng-rpc.patch
702 # kernel-nf_rtsp.patch
705 # kernel-owner-xid.patch
710 # kernel-layer7.patch
743 # kernel-rndis_host-wm5.patch
746 # hostap enhancements from/for aircrack-ng
772 # grsecurity & pax stuff
775 %if %{with grsecurity}
779 %{?with_vserver:%patch10000 -p1}
780 %{?with_vserver:%patch10001 -p1}
781 %{?with_vserver:%patch10002 -p1}
784 # end of grsecurity & pax stuff
801 # Do not remove this, please!
804 # Fix EXTRAVERSION in main Makefile
805 sed -i 's#EXTRAVERSION =.*#EXTRAVERSION = %{?alt_kernel:_%{alt_kernel}}#g' Makefile
807 # cleanup backups after patching
808 find '(' -name '*~' -o -name '*.orig' -o -name '.gitignore' ')' -print0 | xargs -0 -r -l512 rm -f
812 cat > %{targetobj}.mk <<'EOF'
813 # generated by %{name}.spec
814 KERNELSRC := %{srcdir}
815 KERNELOUTPUT := %{objdir}
817 SRCARCH := %{target_arch_dir}
818 ARCH := %{_target_base_arch}
819 Q := %{!?with_verbose:@}
820 MAKE_OPTS := %{MakeOpts}
821 DEFCONFIG := %{defconfig}
828 CONFIG_PAX_SEGMEXEC=y
829 # performance impact on CPUs without NX bit
830 CONFIG_PAX_PAGEEXEC=n
833 CONFIG_HOTPLUG_PCI_COMPAQ_NVRAM=n
839 CONFIG_PAX_NOELFRELOCS=n
842 CONFIG_PAX_EMUTRAMP=y
843 CONFIG_PAX_EMUSIGRT=y
847 %ifarch sparc sparc64 alpha
851 # Now we have to check MAC system integration. Grsecurity uses PAX_HAVE_ACL_FLAGS
852 # setting (direct acces). grsec_minimal probably have no idea about PaX so we probably
853 # could use PAX_NO_ACL_FLAGS, but for testing the hooks setting will be used
854 # PAX_HOOK_ACL_FLAGS.
856 %if %{with grsecurity}
857 # Hardening grsec options if with pax
858 CONFIG_GRKERNSEC_PROC_MEMMAP=y
859 # almost rational (see HIDESYM help)
860 CONFIG_GRKERNSEC_HIDESYM=y
862 # no change needed CONFIG=PAX_HAVE_ACL_FLAGS=y is taken from the kernel-pax.config
864 CONFIG_PAX_HAVE_ACL_FLAGS=n
865 CONFIG_PAX_HOOK_ACL_FLAGS=y
875 # CONFIG_SOUND is not set
876 # CONFIG_AUDIT is not set
877 # CONFIG_TR is not set
878 # CONFIG_BT is not set
879 # CONFIG_VIDEO_DEV is not set
880 # CONFIG_DVB_CORE is not set
881 # CONFIG_HAMRADIO is not set
882 # CONFIG_ARCNET is not set
883 # CONFIG_FB is not set
884 # CONFIG_DRM is not set
885 # CONFIG_WATCHDOG is not set
886 # CONFIG_INPUT_JOYSTICK is not set
887 # CONFIG_DEBUG_KERNEL is not set
888 # CONFIG_ISDN is not set
889 # CONFIG_AGP is not set
890 # CONFIG_SECURITY is not set
891 # CONFIG_PARIDE is not set
892 # CONFIG_CPU_FREQ is not set
893 # CONFIG_GAMEPORT is not set
894 # CONFIG_KVM is not set
895 # CONFIG_PHONE is not set
896 # CONFIG_STRICT_DEVMEM is not set
897 # CONFIG_IMA is not set
900 CONFIG_AUFS_BR_RAMFS=y
902 CONFIG_BLK_DEV_LOOP=y
915 Config="kernel-%{target_arch_dir}.config"
916 echo >&2 "Building config file for %{_target_cpu} using $Config et al."
918 # prepare local and important options
919 cat <<-EOCONFIG > important.config
920 LOCALVERSION="-%{localversion}"
924 CONFIG_DEBUG_SLAB_LEAK=y
925 CONFIG_DEBUG_PREEMPT=y
926 CONFIG_RT_DEADLOCK_DETECT=y
933 %ifarch i686 athlon pentium3 pentium4
942 %if %{without pcmcia}
946 %if %{with fbcondecor}
950 CONFIG_FB_TILEBLITTING=n
951 CONFIG_FB_CON_DECOR=y
959 # Temporary disabled RELOCATABLE. Needed only on x86??
960 %if %{with pax} || %{with grsecurity}
966 RescueConfig rescue.config
972 # prepare kernel-style config file from multiple config files
973 %{__awk} -v arch="all %{target_arch_dir} %{_target_base_arch} %{_target_cpu}" -f %{SOURCE6} \
975 $RPM_SOURCE_DIR/kernel-%{alt_kernel}.config \
978 %if %{without vanilla}
989 %if %{with grsecurity}
1007 %if %{with tuxonice}
1008 %ifarch %{ix86} %{x8664} ia64 ppc ppc64
1012 %{SOURCE41} %{?0:patches} \
1015 $RPM_SOURCE_DIR/$Config
1019 install -d arch/%{target_arch_dir}
1020 BuildConfig > %{defconfig}
1021 ln -sf %{defconfig} .config
1025 TARGETOBJ=%{targetobj} \
1026 %{?with_verbose:V=1} \
1029 %{__awk} %{?debug:-v dieOnError=1} -v infile=%{objdir}/%{defconfig} -f %{SOURCE8} %{objdir}/.config
1033 TARGETOBJ=%{targetobj} \
1034 %{?with_verbose:V=1} \
1038 rm -rf $RPM_BUILD_ROOT
1039 %{__make} %{MakeOpts} -j1 %{!?with_verbose:-s} modules_install firmware_install \
1041 %{?with_verbose:V=1} \
1043 INSTALL_MOD_PATH=$RPM_BUILD_ROOT \
1044 INSTALL_FW_PATH=$RPM_BUILD_ROOT/lib/firmware/%{kernel_release} \
1045 KERNELRELEASE=%{kernel_release}
1047 install -d $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/misc
1049 # create directories which may be missing, to simplyfy %files
1050 install -d $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/kernel/{arch,sound,mm}
1052 # rpm obeys filelinkto checks for ghosted symlinks, convert to files
1053 rm -f $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/{build,source}
1054 touch $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/{build,source}
1056 # no point embed content for %ghost files. empty them
1063 {pci,usb,ccw,isapnp,input,ieee1394,serio,of}map \
1065 test -f $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/modules.$a
1066 > $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/modules.$a
1070 install -d $RPM_BUILD_ROOT/boot
1071 cp -a %{objdir}/System.map $RPM_BUILD_ROOT/boot/System.map-%{kernel_release}
1072 %ifarch %{ix86} %{x8664}
1073 cp -a %{objdir}/arch/%{target_arch_dir}/boot/bzImage $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
1074 install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinux-%{kernel_release}
1077 install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
1078 install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinux-%{kernel_release}
1081 %{__gzip} -cfv %{objdir}/vmlinux > %{objdir}/vmlinuz
1082 cp -a %{objdir}/vmlinuz $RPM_BUILD_ROOT/boot/efi/vmlinuz-%{kernel_release}
1083 ln -sf efi/vmlinuz-%{kernel_release} $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
1085 %ifarch alpha sparc sparc64
1086 %{__gzip} -cfv %{objdir}/vmlinux > %{objdir}/vmlinuz
1087 cp -a %{objdir}/vmlinuz $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
1088 install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
1090 elftoaout %{objdir}/arch/sparc/boot/image -o %{objdir}/vmlinux.aout
1091 install -p %{objdir}/vmlinux.aout $RPM_BUILD_ROOT/boot/vmlinux.aout-%{kernel_release}
1094 elftoaout %{objdir}/arch/sparc64/boot/image -o %{objdir}/vmlinux.aout
1095 install -p %{objdir}/vmlinux.aout $RPM_BUILD_ROOT/boot/vmlinux.aout-%{kernel_release}
1099 install -p %{objdir}/arch/arm/boot/zImage $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
1103 touch $RPM_BUILD_ROOT%{initrd_dir}/initrd-%{kernel_release}.gz
1105 %if "%{_target_base_arch}" != "%{_arch}"
1106 touch $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/modules.dep
1110 install -d $RPM_BUILD_ROOT%{_sysconfdir}/modprobe.d/%{kernel_release}
1113 install -d $RPM_BUILD_ROOT%{_kernelsrcdir}
1115 # test if we can hardlink -- %{_builddir} and $RPM_BUILD_ROOT on same partition
1116 if cp -al %{srcdir}/COPYING $RPM_BUILD_ROOT/COPYING 2>/dev/null; then
1118 rm -f $RPM_BUILD_ROOT/COPYING
1121 cp -a$l %{srcdir}/* $RPM_BUILD_ROOT%{_kernelsrcdir}
1122 cp -a %{objdir}/Module.symvers $RPM_BUILD_ROOT%{_kernelsrcdir}/Module.symvers-dist
1123 cp -aL %{objdir}/.config $RPM_BUILD_ROOT%{_kernelsrcdir}/config-dist
1124 cp -a %{objdir}/include/generated $RPM_BUILD_ROOT%{_kernelsrcdir}/include
1125 mv $RPM_BUILD_ROOT%{_kernelsrcdir}/include/generated/autoconf{,-dist}.h
1126 cp -a %{objdir}/include/linux/version.h $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux
1127 cp -a %{SOURCE3} $RPM_BUILD_ROOT%{_kernelsrcdir}/include/generated/autoconf.h
1128 cp -a %{SOURCE4} $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux/config.h
1130 # collect module-build files and directories
1131 # Usage: kernel-module-build.pl $rpmdir $fileoutdir
1133 cd $RPM_BUILD_ROOT%{_kernelsrcdir}
1134 %{__perl} %{topdir}/kernel-module-build.pl %{_kernelsrcdir} $fileoutdir
1137 # move to %{_docdir} so we wouldn't depend on any kernel package for dirs
1138 install -d $RPM_BUILD_ROOT%{_docdir}
1139 mv $RPM_BUILD_ROOT{%{_kernelsrcdir}/Documentation,%{_docdir}/%{name}-%{version}}
1141 rm -f $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/dontdiff
1142 rm -f $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/Makefile
1143 rm -f $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/*/Makefile
1144 rm -f $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/*/*/Makefile
1147 rm -rf $RPM_BUILD_ROOT
1150 if [ -x /sbin/new-kernel-pkg ]; then
1151 /sbin/new-kernel-pkg --remove %{kernel_release}
1156 mv -f /boot/efi/vmlinuz{,.old} 2> /dev/null
1157 %{?alt_kernel:mv -f /boot/efi/vmlinuz%{_alt_kernel}{,.old} 2> /dev/null}
1158 ln -sf vmlinuz-%{kernel_release} /boot/efi/vmlinuz
1159 %{?alt_kernel:ln -sf vmlinuz-%{kernel_release} /boot/efi/vmlinuz%{_alt_kernel}}
1161 mv -f /boot/vmlinuz{,.old} 2> /dev/null
1162 %{?alt_kernel:mv -f /boot/vmlinuz%{_alt_kernel}{,.old} 2> /dev/null}
1163 mv -f /boot/System.map{,.old} 2> /dev/null
1164 %{?alt_kernel:mv -f /boot/System%{_alt_kernel}.map{,.old} 2> /dev/null}
1165 ln -sf vmlinuz-%{kernel_release} /boot/vmlinuz
1166 %{?alt_kernel:ln -sf vmlinuz-%{kernel_release} /boot/vmlinuz%{_alt_kernel}}
1167 ln -sf System.map-%{kernel_release} /boot/System.map
1168 %{?alt_kernel:ln -sf System.map-%{kernel_release} /boot/System.map%{_alt_kernel}}
1170 %depmod %{kernel_release}
1173 # generate initrd after all dependant modules are installed
1174 /sbin/geninitrd -f --initrdfs=rom %{initrd_dir}/initrd-%{kernel_release}.gz %{kernel_release}
1175 mv -f %{initrd_dir}/initrd{,.old} 2> /dev/null
1176 %{?alt_kernel:mv -f %{initrd_dir}/initrd%{_alt_kernel}{,.old} 2> /dev/null}
1177 ln -sf initrd-%{kernel_release}.gz %{initrd_dir}/initrd
1178 %{?alt_kernel:ln -sf initrd-%{kernel_release}.gz %{initrd_dir}/initrd%{_alt_kernel}}
1180 # update boot loaders when old package files are gone from filesystem
1181 if [ -x /sbin/update-grub -a -f /etc/sysconfig/grub ]; then
1182 if [ "$(. /etc/sysconfig/grub; echo ${UPDATE_GRUB:-no})" = "yes" ]; then
1183 /sbin/update-grub >/dev/null
1186 if [ -x /sbin/new-kernel-pkg ]; then
1187 /sbin/new-kernel-pkg --initrdfile=%{initrd_dir}/initrd-%{kernel_release}.gz --install %{kernel_release} --banner "PLD Linux (%{pld_release})%{?alt_kernel: / %{alt_kernel}}"
1189 if [ -x /sbin/rc-boot ]; then
1190 /sbin/rc-boot 1>&2 || :
1194 mv -f /boot/vmlinux{,.old} 2> /dev/null
1195 %{?alt_kernel:mv -f /boot/vmlinux-%{alt_kernel}{,.old} 2> /dev/null}
1196 ln -sf vmlinux-%{kernel_release} /boot/vmlinux
1197 %{?alt_kernel:ln -sf vmlinux-%{kernel_release} /boot/vmlinux-%{alt_kernel}}
1200 %depmod %{kernel_release}
1203 %depmod %{kernel_release}
1206 %depmod %{kernel_release}
1209 %depmod %{kernel_release}
1212 %depmod %{kernel_release}
1215 %depmod %{kernel_release}
1218 %depmod %{kernel_release}
1221 %depmod %{kernel_release}
1224 ln -snf %{basename:%{_kernelsrcdir}} %{_prefix}/src/linux%{_alt_kernel}
1227 if [ "$1" = "0" ]; then
1228 if [ -L %{_prefix}/src/linux%{_alt_kernel} ]; then
1229 if [ "$(readlink %{_prefix}/src/linux%{_alt_kernel})" = "linux%{_alt_kernel}-%{version}" ]; then
1230 rm -f %{_prefix}/src/linux%{_alt_kernel}
1235 %triggerin module-build -- %{name} = %{epoch}:%{version}-%{release}
1236 ln -sfn %{_kernelsrcdir} /lib/modules/%{kernel_release}/build
1237 ln -sfn %{_kernelsrcdir} /lib/modules/%{kernel_release}/source
1239 %triggerun module-build -- %{name} = %{epoch}:%{version}-%{release}
1240 if [ "$1" = 0 ]; then
1241 rm -f /lib/modules/%{kernel_release}/{build,source}
1245 %defattr(644,root,root,755)
1246 %ifarch sparc sparc64
1247 /boot/vmlinux.aout-%{kernel_release}
1250 /boot/efi/vmlinuz-%{kernel_release}
1252 /boot/vmlinuz-%{kernel_release}
1253 /boot/System.map-%{kernel_release}
1254 %ghost %{initrd_dir}/initrd-%{kernel_release}.gz
1255 /lib/firmware/%{kernel_release}
1257 %dir /lib/modules/%{kernel_release}
1258 %dir /lib/modules/%{kernel_release}/kernel
1259 /lib/modules/%{kernel_release}/kernel/arch
1260 /lib/modules/%{kernel_release}/kernel/crypto
1261 /lib/modules/%{kernel_release}/kernel/drivers
1263 %exclude /lib/modules/%{kernel_release}/kernel/drivers/gpu
1265 /lib/modules/%{kernel_release}/kernel/fs
1266 /lib/modules/%{kernel_release}/kernel/kernel
1267 /lib/modules/%{kernel_release}/kernel/lib
1268 /lib/modules/%{kernel_release}/kernel/net
1269 /lib/modules/%{kernel_release}/kernel/mm
1271 %dir /lib/modules/%{kernel_release}/kernel/sound
1272 /lib/modules/%{kernel_release}/kernel/sound/ac97_bus.ko*
1273 /lib/modules/%{kernel_release}/kernel/sound/sound*.ko*
1275 %exclude /lib/modules/%{kernel_release}/kernel/drivers/media/video/cx88/cx88-alsa.ko*
1276 %exclude /lib/modules/%{kernel_release}/kernel/drivers/media/video/em28xx/em28xx-alsa.ko*
1277 %exclude /lib/modules/%{kernel_release}/kernel/drivers/media/video/saa7134/saa7134-alsa.ko*
1280 %dir /lib/modules/%{kernel_release}/misc
1282 %exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/[!p]*
1283 %exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/pd6729.ko*
1284 %exclude /lib/modules/%{kernel_release}/kernel/drivers/*/pcmcia
1285 %if %{without rescuecd}
1286 %exclude /lib/modules/%{kernel_release}/kernel/drivers/ata/pata_pcmcia.ko*
1287 %exclude /lib/modules/%{kernel_release}/kernel/drivers/bluetooth/*_cs.ko*
1288 %exclude /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
1289 %exclude /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/b1pcmcia.ko*
1290 %exclude /lib/modules/%{kernel_release}/kernel/drivers/telephony/ixj_pcmcia.ko*
1291 %exclude /lib/modules/%{kernel_release}/kernel/drivers/usb/gadget/g_midi.ko*
1293 %exclude /lib/modules/%{kernel_release}/kernel/drivers/ide/ide-cs.ko*
1294 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/*_cs.ko*
1295 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/b43
1296 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/hostap/hostap_cs.ko*
1297 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/libertas/*_cs.ko*
1298 %exclude /lib/modules/%{kernel_release}/kernel/drivers/parport/parport_cs.ko*
1299 %exclude /lib/modules/%{kernel_release}/kernel/drivers/tty/serial/serial_cs.ko*
1300 %exclude /lib/modules/%{kernel_release}/kernel/drivers/usb/host/sl811_cs.ko*
1303 /lib/modules/%{kernel_release}/kernel/sound
1305 /lib/modules/%{kernel_release}/kernel/security
1307 %dir %{_sysconfdir}/modprobe.d/%{kernel_release}
1310 /lib/modules/%{kernel_release}/modules.order
1311 /lib/modules/%{kernel_release}/modules.builtin*
1313 # rest modules.* are ghost (regenerated by post depmod -a invocation)
1314 %ghost /lib/modules/%{kernel_release}/modules.alias
1315 %ghost /lib/modules/%{kernel_release}/modules.alias.bin
1316 %ghost /lib/modules/%{kernel_release}/modules.ccwmap
1317 %ghost /lib/modules/%{kernel_release}/modules.dep
1318 %ghost /lib/modules/%{kernel_release}/modules.dep.bin
1319 %ghost /lib/modules/%{kernel_release}/modules.devname
1320 %ghost /lib/modules/%{kernel_release}/modules.ieee1394map
1321 %ghost /lib/modules/%{kernel_release}/modules.inputmap
1322 %ghost /lib/modules/%{kernel_release}/modules.isapnpmap
1323 %ghost /lib/modules/%{kernel_release}/modules.ofmap
1324 %ghost /lib/modules/%{kernel_release}/modules.pcimap
1325 %ghost /lib/modules/%{kernel_release}/modules.seriomap
1326 %ghost /lib/modules/%{kernel_release}/modules.softdep
1327 %ghost /lib/modules/%{kernel_release}/modules.symbols
1328 %ghost /lib/modules/%{kernel_release}/modules.symbols.bin
1329 %ghost /lib/modules/%{kernel_release}/modules.usbmap
1331 # symlinks pointing to kernelsrcdir
1332 %ghost /lib/modules/%{kernel_release}/build
1333 %ghost /lib/modules/%{kernel_release}/source
1335 %ifarch alpha %{ix86} %{x8664} ppc ppc64 sparc sparc64
1337 %defattr(644,root,root,755)
1338 /boot/vmlinux-%{kernel_release}
1343 %defattr(644,root,root,755)
1344 /lib/modules/%{kernel_release}/kernel/drivers/gpu
1349 %defattr(644,root,root,755)
1350 /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/*ko*
1351 /lib/modules/%{kernel_release}/kernel/drivers/*/pcmcia
1352 %exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/pcmcia*ko*
1353 %if %{without rescuecd}
1354 /lib/modules/%{kernel_release}/kernel/drivers/bluetooth/*_cs.ko*
1355 /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
1356 /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/b1pcmcia.ko*
1357 /lib/modules/%{kernel_release}/kernel/drivers/telephony/ixj_pcmcia.ko*
1359 /lib/modules/%{kernel_release}/kernel/drivers/ata/pata_pcmcia.ko*
1360 /lib/modules/%{kernel_release}/kernel/drivers/ide/ide-cs.ko*
1361 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/*_cs.ko*
1362 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/b43
1363 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/hostap/hostap_cs.ko*
1364 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/libertas/*_cs.ko*
1365 /lib/modules/%{kernel_release}/kernel/drivers/parport/parport_cs.ko*
1366 /lib/modules/%{kernel_release}/kernel/drivers/tty/serial/serial_cs.ko*
1367 /lib/modules/%{kernel_release}/kernel/drivers/usb/host/sl811_cs.ko*
1372 %defattr(644,root,root,755)
1373 /lib/modules/%{kernel_release}/kernel/sound
1374 %exclude %dir /lib/modules/%{kernel_release}/kernel/sound
1375 %exclude /lib/modules/%{kernel_release}/kernel/sound/ac97_bus.ko*
1376 %exclude /lib/modules/%{kernel_release}/kernel/sound/sound*.ko*
1378 %exclude /lib/modules/%{kernel_release}/kernel/sound/oss
1381 /lib/modules/%{kernel_release}/kernel/drivers/usb/gadget/g_midi.ko*
1382 /lib/modules/%{kernel_release}/kernel/drivers/media/video/cx88/cx88-alsa.ko*
1383 /lib/modules/%{kernel_release}/kernel/drivers/media/video/em28xx/em28xx-alsa.ko*
1384 /lib/modules/%{kernel_release}/kernel/drivers/media/video/saa7134/saa7134-alsa.ko*
1389 %defattr(644,root,root,755)
1390 /lib/modules/%{kernel_release}/kernel/sound/oss
1394 %files headers -f files.headers_exclude_kbuild
1395 %defattr(644,root,root,755)
1396 %dir %{_kernelsrcdir}
1397 %{_kernelsrcdir}/include
1398 %dir %{_kernelsrcdir}/arch
1399 %dir %{_kernelsrcdir}/arch/[!K]*
1400 %{_kernelsrcdir}/arch/*/include
1401 %dir %{_kernelsrcdir}/security
1402 %dir %{_kernelsrcdir}/security/selinux
1403 %{_kernelsrcdir}/security/selinux/include
1404 %{_kernelsrcdir}/config-dist
1405 %{_kernelsrcdir}/Module.symvers-dist
1407 %files module-build -f files.mb_include_modulebuild_and_dirs
1408 %defattr(644,root,root,755)
1410 %{_kernelsrcdir}/arch/powerpc/lib/crtsavres.*
1412 %exclude %dir %{_kernelsrcdir}/arch/um
1413 %{_kernelsrcdir}/arch/*/kernel/asm-offsets*
1414 %{_kernelsrcdir}/arch/*/kernel/sigframe*.h
1415 %{_kernelsrcdir}/drivers/lguest/lg.h
1416 %{_kernelsrcdir}/drivers/media/video/bt8xx/bttv.h
1417 %{_kernelsrcdir}/kernel/bounds.c
1418 %dir %{_kernelsrcdir}/scripts
1419 %{_kernelsrcdir}/scripts/Kbuild.include
1420 %{_kernelsrcdir}/scripts/Makefile*
1421 %{_kernelsrcdir}/scripts/basic
1422 %{_kernelsrcdir}/scripts/kconfig
1423 %{_kernelsrcdir}/scripts/mkcompile_h
1424 %{_kernelsrcdir}/scripts/mkmakefile
1425 %{_kernelsrcdir}/scripts/mod
1426 %{_kernelsrcdir}/scripts/module-common.lds
1427 %{_kernelsrcdir}/scripts/setlocalversion
1428 %{_kernelsrcdir}/scripts/*.c
1429 %{_kernelsrcdir}/scripts/*.sh
1430 %dir %{_kernelsrcdir}/scripts/selinux
1431 %{_kernelsrcdir}/scripts/selinux/Makefile
1432 %dir %{_kernelsrcdir}/scripts/selinux/genheaders
1433 %{_kernelsrcdir}/scripts/selinux/genheaders/Makefile
1434 %{_kernelsrcdir}/scripts/selinux/genheaders/*.c
1435 %dir %{_kernelsrcdir}/scripts/selinux/mdp
1436 %{_kernelsrcdir}/scripts/selinux/mdp/Makefile
1437 %{_kernelsrcdir}/scripts/selinux/mdp/*.c
1438 %exclude %dir %{_kernelsrcdir}/security
1439 %exclude %dir %{_kernelsrcdir}/security/selinux
1440 %if %{with grsecurity}
1441 %{_kernelsrcdir}/tools/gcc/*.c
1446 %defattr(644,root,root,755)
1447 %dir %{_docdir}/%{name}-%{version}
1449 %{_docdir}/%{name}-%{version}/[!jkz]*
1450 %{_docdir}/%{name}-%{version}/[jkz]*.txt
1451 %{_docdir}/%{name}-%{version}/kbuild
1452 %{_docdir}/%{name}-%{version}/kdump
1453 %lang(ja) %{_docdir}/%{name}-%{version}/ja_JP
1454 %lang(ko) %{_docdir}/%{name}-%{version}/ko_KR
1455 %lang(zh_CN) %{_docdir}/%{name}-%{version}/zh_CN
1459 %files source -f files.source_exclude_modulebuild_and_dirs
1460 %defattr(644,root,root,755)
1461 %{_kernelsrcdir}/arch/*/[!Mik]*
1462 %{_kernelsrcdir}/arch/*/kernel/[!M]*
1463 %{_kernelsrcdir}/arch/ia64/install.sh
1464 %{_kernelsrcdir}/arch/m68k/ifpsp060/[!M]*
1465 %{_kernelsrcdir}/arch/m68k/ifpsp060/MISC
1466 %{_kernelsrcdir}/arch/m68k/install.sh
1467 %{_kernelsrcdir}/arch/parisc/install.sh
1468 %{_kernelsrcdir}/arch/x86/ia32/[!M]*
1469 %{_kernelsrcdir}/arch/ia64/kvm
1470 %{_kernelsrcdir}/arch/powerpc/kvm
1472 %exclude %{_kernelsrcdir}/arch/powerpc/lib/crtsavres.*
1474 %{_kernelsrcdir}/arch/s390/kvm
1475 %{_kernelsrcdir}/arch/x86/kvm
1476 %exclude %{_kernelsrcdir}/arch/*/kernel/asm-offsets*
1477 %exclude %{_kernelsrcdir}/arch/*/kernel/sigframe*.h
1478 %exclude %{_kernelsrcdir}/drivers/lguest/lg.h
1479 %exclude %{_kernelsrcdir}/drivers/media/video/bt8xx/bttv.h
1480 %{_kernelsrcdir}/block
1481 %{_kernelsrcdir}/crypto
1482 %{_kernelsrcdir}/drivers
1483 %{_kernelsrcdir}/firmware
1485 %if %{with grsecurity} && %{without rescuecd}
1486 %{_kernelsrcdir}/grsecurity
1488 %{_kernelsrcdir}/init
1489 %{_kernelsrcdir}/ipc
1490 %{_kernelsrcdir}/kernel
1491 %exclude %{_kernelsrcdir}/kernel/bounds.c
1492 %{_kernelsrcdir}/lib
1494 %{_kernelsrcdir}/net
1495 %{_kernelsrcdir}/virt
1496 %{_kernelsrcdir}/samples
1497 %{_kernelsrcdir}/scripts/*
1498 %exclude %{_kernelsrcdir}/scripts/Kbuild.include
1499 %exclude %{_kernelsrcdir}/scripts/Makefile*
1500 %exclude %{_kernelsrcdir}/scripts/basic
1501 %exclude %{_kernelsrcdir}/scripts/kconfig
1502 %exclude %{_kernelsrcdir}/scripts/mkcompile_h
1503 %exclude %{_kernelsrcdir}/scripts/mkmakefile
1504 %exclude %{_kernelsrcdir}/scripts/mod
1505 %exclude %{_kernelsrcdir}/scripts/module-common.lds
1506 %exclude %{_kernelsrcdir}/scripts/setlocalversion
1507 %exclude %{_kernelsrcdir}/scripts/*.c
1508 %exclude %{_kernelsrcdir}/scripts/*.sh
1509 %exclude %dir %{_kernelsrcdir}/scripts/selinux
1510 %exclude %{_kernelsrcdir}/scripts/selinux/Makefile
1511 %exclude %dir %{_kernelsrcdir}/scripts/selinux/genheaders
1512 %exclude %{_kernelsrcdir}/scripts/selinux/genheaders/Makefile
1513 %exclude %{_kernelsrcdir}/scripts/selinux/genheaders/*.c
1514 %exclude %dir %{_kernelsrcdir}/scripts/selinux/mdp
1515 %exclude %{_kernelsrcdir}/scripts/selinux/mdp/Makefile
1516 %exclude %{_kernelsrcdir}/scripts/selinux/mdp/*.c
1517 %{_kernelsrcdir}/sound
1518 %{_kernelsrcdir}/security
1519 %exclude %{_kernelsrcdir}/security/selinux/include
1520 %{_kernelsrcdir}/tools/*
1521 %if %{with grsecurity}
1522 %exclude %{_kernelsrcdir}/tools/gcc/*.c
1524 %{_kernelsrcdir}/usr
1525 %{_kernelsrcdir}/COPYING
1526 %{_kernelsrcdir}/CREDITS
1527 %{_kernelsrcdir}/MAINTAINERS
1528 %{_kernelsrcdir}/README
1529 %{_kernelsrcdir}/REPORTING-BUGS