3 # the following bcond combos will not work
4 # - without_vserver and any of the following
10 # - benchmark NO_HZ & HZ=1000 vs HZ=300 on i686
11 # - add a subpackage (kernel-firmware?) for ~35 firmware files
12 # - update or remove tahoe9xx patch2
13 # - update or remove mpt-fusion patch90
14 # - update grsec_minimal patch1000:
15 # fs/proc/base.c:1484: error: 'struct task_struct' has no member named 'uid'
17 # HOWTO update configuration files:
19 # - add new options to proper config (kernel-multiarch.config, kernel-x86.config, kernel-powerpc.config etc)
20 # - sort configuration files using:
21 # ./kernel-config-sort.pl ~/rpm/BUILD/kernel-%{version}/linux-%{version}/ -a x86 kernel-x86_84.config
22 # ./kernel-config-sort.pl ~/rpm/BUILD/kernel-%{version}/linux-%{version} kernel-multiarch.config
25 %bcond_without source # don't build kernel-source package
26 %bcond_without pcmcia # don't build pcmcia
28 %bcond_with verbose # verbose build (V=1)
29 %bcond_without reiser4 # support for reiser4 fs (experimental)
31 %bcond_without grsecurity # don't build grsecurity nor pax at all
32 %bcond_without grsec_full # build full grsecurity
33 %bcond_with grsec_minimal # build only minimal subset (proc,link,fifo,shm)
34 %bcond_with pax # build pax and full grsecurity (ie. grsec_full && pax)
36 %bcond_with fbcondecor # build fbcondecor (disable FB_TILEBLITTING and affected fb modules)
37 %bcond_with pae # build PAE (HIGHMEM64G) support on uniprocessor
38 %bcond_with nfsroot # build with root on NFS support
40 %bcond_without imq # imq support
41 %bcond_without wrr # wrr support
42 %bcond_without esfq # esfq support
43 %bcond_without ipv6 # ipv6 support
45 %bcond_without vserver # support for VServer (enabled by default)
46 %bcond_without tuxonice # support for tuxonice (ex-suspend2) (enabled by default)
47 %bcond_without apparmor # build kernel with apparmor (exerimental mix)
49 %bcond_with rescuecd # build kernel for our rescue
51 %bcond_with myown # build with your own config (kernel-myown.config)
53 %{?debug:%define with_verbose 1}
55 %if %{without grsecurity}
56 %unglobal with_grsec_full
57 %unglobal with_grsec_minimal
62 %unglobal with_grsec_minimal
63 %define with_grsec_full 1
64 %define with_grsecurity 1
68 %if %{with grsec_minimal}
70 %unglobal with_grsec_full
71 %define with_grsecurity 1
74 %if %{with grsec_full}
75 %unglobal with_grsec_minimal
76 %define with_grsecurity 1
85 %unglobal with_apparmor
86 %unglobal with_tuxonice
87 %unglobal with_grsecurity
88 %unglobal with_grsec_full
89 %unglobal with_grsec_minimal
91 %unglobal with_vserver
100 %define have_pcmcia 0
103 %ifarch sparc sparc64
104 %unglobal with_pcmcia
109 %if %{without pcmcia}
110 %define have_pcmcia 0
113 %define basever 2.6.31
117 %define _enable_debug_packages 0
119 %define squashfs_version 3.4
120 %define tuxonice_version 3.0.1
121 %define netfilter_snap 20070806
124 %if "%{_alt_kernel}" == ""
125 %define alt_kernel myown
128 %if %{without rescuecd}
129 %define __alt_kernel %{?with_pax:pax}%{!?with_grsec_full:nogrsecurity}%{!?with_apparmor:noaa}%{?with_pae:pae}
130 %if "%{__alt_kernel}" != ""
131 %define alt_kernel %{__alt_kernel}
134 %define alt_kernel rescuecd
138 # kernel release (used in filesystem and eventually in uname -r)
139 # modules will be looked from /lib/modules/%{kernel_release}
140 # localversion is just that without version for "> localversion"
141 %define localversion %{rel}
142 %define kernel_release %{version}%{?alt_kernel:_%{alt_kernel}}-%{localversion}
144 Summary: The Linux kernel (the core of the Linux operating system)
145 Summary(de.UTF-8): Der Linux-Kernel (Kern des Linux-Betriebssystems)
146 Summary(et.UTF-8): Linuxi kernel (ehk operatsioonisüsteemi tuum)
147 Summary(fr.UTF-8): Le Kernel-Linux (La partie centrale du systeme)
148 Summary(pl.UTF-8): JÄ…dro Linuksa
149 Name: kernel%{_alt_kernel}
150 Version: %{basever}%{postver}
155 Source0: http://www.kernel.org/pub/linux/kernel/v2.6/linux-%{basever}.tar.bz2
156 # Source0-md5: 84c077a37684e4cbfa67b18154390d8a
157 %if "%{postver}" != "%{nil}"
158 Source1: http://www.kernel.org/pub/linux/kernel/v2.6/patch-%{version}.bz2
159 # Source1-md5: 89802830db41e517cdf0954145f73337
162 Source3: kernel-autoconf.h
163 Source4: kernel-config.h
164 Source5: kernel-ppclibs.Makefile
165 Source6: kernel-config.awk
166 Source7: kernel-module-build.pl
167 Source8: kernel-track-config-change.awk
168 # not used by kernel.spec, but it's good to have it in SOURCES
169 Source9: kernel-config-sort.pl
170 Source10: kernel.make
172 Source20: kernel-multiarch.config
173 Source21: kernel-x86.config
174 Source22: kernel-sparc.config
175 Source23: kernel-alpha.config
176 Source24: kernel-powerpc.config
177 Source25: kernel-ia64.config
179 Source40: kernel-netfilter.config
180 Source41: kernel-patches.config
181 Source42: kernel-tuxonice.config
182 Source43: kernel-vserver.config
183 Source45: kernel-grsec.config
185 Source49: kernel-pax.config
186 Source50: kernel-no-pax.config
187 Source51: kernel-grsec_minimal.config
188 Source55: kernel-imq.config
189 Source56: kernel-reiser4.config
190 Source57: kernel-wrr.config
192 Source58: kernel-inittmpfs.config
193 Source59: kernel-bzip2-lzma.config
195 # tahoe9xx http://www.tahoe.pl/drivers/tahoe9xx-2.6.24.patch
196 Patch2: kernel-tahoe9xx.patch
198 # http://dev.gentoo.org/~spock/projects/fbcondecor/archive/fbcondecor-0.9.4-2.6.25-rc6.patch
199 Patch3: kernel-fbcondecor.patch
200 Patch4: kernel-fbcon-margins.patch
202 # netfilter related stuff mostly based on patch-o-matic-ng
203 # snapshot 20070806 with some fixes. Some modules
204 # were ported to nf_conntrack.
206 Patch10: kernel-pom-ng-IPV4OPTSSTRIP.patch
207 Patch11: kernel-pom-ng-ipv4options.patch
209 Patch14: kernel-pom-ng-ROUTE.patch
210 Patch16: kernel-pom-ng-mms-conntrack-nat.patch
211 Patch22: kernel-pom-ng-rsh.patch
212 Patch23: kernel-pom-ng-rpc.patch
214 # based on http://mike.it-loops.com/rtsp/rtsp-2.6.26.patch
215 Patch36: kernel-nf_rtsp.patch
217 # http://ftp.linux-vserver.org/pub/people/dhozac/p/k/delta-owner-xid-feat02.diff
218 Patch37: kernel-owner-xid.patch
220 # based on http://www.svn.barbara.eu.org/ipt_account/attachment/wiki/Software/ipt_account-0.1.21-20070804164729.tar.gz?format=raw
221 Patch38: kernel-ipt_account.patch
223 # based on http://www.intra2net.com/de/produkte/opensource/ipt_account/pom-ng-ipt_ACCOUNT-1.12.tgz
224 Patch39: kernel-ipt_ACCOUNT.patch
226 # based on kernel-2.6.25-layer7-2.20.patch from
227 # http://switch.dl.sourceforge.net/sourceforge/l7-filter/netfilter-layer7-v2.20.tar.gz
228 Patch40: kernel-layer7.patch
230 # http://www.ssi.bg/~ja/nfct/ipvs-nfct-2.6.28-1.diff
231 Patch41: kernel-ipvs-nfct.patch
235 # http://zph.bratcheda.org/linux-2.6.26.3-zph.patch
236 Patch49: kernel-zph.patch
238 # based on http://www.linuximq.net/patchs/linux-2.6.29.1-imq-test2.diff
239 Patch50: kernel-imq.patch
241 # http://www.kernel.org/pub/linux/kernel/people/edward/reiser4/reiser4-for-2.6/reiser4-for-2.6.28.patch.bz2
242 Patch51: kernel-reiser4.patch
244 # http://www.zz9.dk/patches/wrr-linux-071203-2.6.25.patch.gz
245 Patch52: kernel-wrr.patch
247 # http://fatooh.org/esfq-2.6/sfq-2.6.24.1.tar.bz2
248 Patch53: kernel-esfq.patch
250 # http://memebeam.org/free-software/toshiba_acpi/toshiba_acpi-dev_toshiba_test5-linux_2.6.26.patch
251 Patch54: kernel-toshiba_acpi.patch
253 # by Baggins request:
254 # derived from ftp://ftp.cmf.nrl.navy.mil/pub/chas/linux-atm/vbr/vbr-kernel-diffs
255 Patch55: kernel-atm-vbr.patch
256 Patch56: kernel-atmdd.patch
258 # http://www.ntop.org/PF_RING.html 20090721
259 # svn co https://svn.ntop.org/svn/ntop/trunk/PF_RING/ and use mkpatch.sh
260 Patch58: kernel-PF_RING.patch
262 # http://synce.svn.sourceforge.net/svnroot/synce/trunk/patches/linux-2.6.22-rndis_host-wm5.patch
263 Patch59: kernel-rndis_host-wm5.patch
265 # Project suspend2 renamed to tuxonice
266 # http://www.tuxonice.net/downloads/all/current-tuxonice-for-2.6.31.patch-20090911-v1.bz2
267 Patch69: kernel-tuxonice.patch
268 Patch70: kernel-tuxonice-headers.patch
270 # adds some ids for hostap suported cards and monitor_enable from/for aircrack-ng
271 # http://patches.aircrack-ng.org/hostap-kernel-2.6.18.patch
272 Patch85: kernel-hostap.patch
274 # Taken from http://download.opensuse.org/factory/repo/src-oss/suse/src/kernel-source-2.6.30-10.3.src.rpm
275 Patch90: kernel-mpt-fusion.patch
277 # based on http://vserver.13thfloor.at/Experimental/patch-2.6.31.5-vs2.3.0.36.23.diff
278 Patch100: kernel-vserver-2.3.patch
279 Patch101: kernel-vserver-fixes.patch
281 # Wake-On-Lan fix for nForce drivers; using http://atlas.et.tudelft.nl/verwei90/nforce2/wol.html
282 # Fix verified for that kernel version.
283 Patch130: kernel-forcedeth-WON.patch
285 # http://download.filesystems.org/unionfs/unionfs-2.x/unionfs-2.5.3_for_2.6.31.diff.gz
286 Patch140: kernel-unionfs.patch
288 # aufs1, http://aufs.sourceforge.net/
289 # aufs1 is NOT maintained since Jan 2009.
290 Patch145: kernel-aufs.patch
291 Patch146: kernel-aufs-support.patch
293 Patch148: kernel-aufs2.patch
295 Patch150: kernel-ppc-crtsavres.patch
297 Patch200: kernel-ppc-ICE-hacks.patch
299 # The following patch extend the routing functionality in Linux
300 # to support static routes (defined by user), new way to use the
301 # alternative routes, the reverse path protection (rp_filter),
302 # the NAT processing to use correctly the routing when multiple
304 # http://www.ssi.bg/~ja/routes-2.6.28-16.diff
305 Patch300: kernel-routes.patch
307 Patch1000: kernel-grsec-minimal.patch
309 Patch2000: kernel-small_fixes.patch
310 Patch2001: kernel-pwc-uncompress.patch
311 Patch2003: kernel-regressions.patch
312 # fix regression in XFS with log recovery problems on fs with quota
313 Patch2004: kernel-xfs-recover-quota.patch
315 # kill some thousands of warnings
316 # (only warnings, so just remove parts of this patch if conflics)
317 Patch2500: kernel-warnings.patch
319 # git://kernel.ubuntu.com/ubuntu/ubuntu-karmic.git
320 # see ubuntu/apparmor dir
321 Patch5000: kernel-apparmor.patch
324 # based on http://ftp.leg.uct.ac.za/pub/linux/rip/inittmpfs-2.6.14.diff.gz
325 Patch7000: kernel-inittmpfs.patch
327 # based on http://www.grsecurity.net/~spender/grsecurity-2.1.14-2.6.31-200909231938.patch" kernel-grsec_full.patch
328 # NOTE: put raw upstream patches on kernel-grsec_full.patch:GRSECURITY_RAW for reference
329 # (since upstream deletes older patches)
330 Patch9999: kernel-grsec_full.patch
331 Patch10000: kernel-grsec-caps.patch
332 Patch10001: kernel-grsec-common.patch
333 Patch10002: kernel-grsec_fixes.patch
334 Patch10003: kernel-grsec-no-stupid-SbO.patch
336 URL: http://www.kernel.org/
337 BuildRequires: binutils >= 3:2.18
338 %ifarch sparc sparc64
339 BuildRequires: elftoaout
342 BuildRequires: uboot-mkimage
345 BuildRequires: /sbin/depmod
346 BuildRequires: gcc >= 5:3.2
347 BuildRequires: xz >= 1:4.999.7
348 # for hostname command
349 BuildRequires: net-tools
350 BuildRequires: perl-base
351 BuildRequires: rpm-build >= 4.5-24
352 BuildRequires: rpmbuild(macros) >= 1.217
353 Requires(post): coreutils
354 Requires(post): geninitrd >= 10000-3
355 Requires(post): module-init-tools >= 0.9.9
356 Requires: /sbin/depmod
358 Requires: geninitrd >= 10000-3
359 Requires: module-init-tools >= 0.9.9
360 Provides: %{name}(netfilter) = %{netfilter_snap}
361 Provides: %{name}(vermagic) = %{kernel_release}
362 Obsoletes: kernel%{_alt_kernel}-isdn-mISDN
363 Obsoletes: kernel-misc-acer_acpi
364 Obsoletes: kernel-misc-fuse
365 Obsoletes: kernel-misc-uvc
366 Obsoletes: kernel-modules
367 Obsoletes: kernel-net-ar81
368 Obsoletes: kernel-net-hostap
369 Obsoletes: kernel-net-ieee80211
370 Obsoletes: kernel-net-ipp2p
371 Obsoletes: kernel-net-rt61
372 Obsoletes: kernel-smp
373 Conflicts: e2fsprogs < 1.29
374 Conflicts: isdn4k-utils < 3.1pre1
375 Conflicts: jfsutils < 1.1.3
376 Conflicts: module-init-tools < 0.9.10
377 Conflicts: nfs-utils < 1.0.5
378 Conflicts: oprofile < 0.9
379 Conflicts: ppp < 1:2.4.0
380 Conflicts: procps < 3.2.0
381 Conflicts: quota-tools < 3.09
382 %if %{with reiserfs4}
383 Conflicts: reiser4progs < 1.0.0
385 Conflicts: reiserfsprogs < 3.6.3
386 Conflicts: udev < 1:081
387 Conflicts: util-linux < 2.10o
388 Conflicts: util-vserver < 0.30.216
389 Conflicts: xfsprogs < 2.6.0
391 ExcludeArch: i386 i486 i586
393 ExclusiveArch: %{ix86} %{x8664} alpha arm ia64 ppc ppc64 sparc sparc64
396 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
398 %ifarch %{ix86} %{x8664}
399 %define target_arch_dir x86
402 %define target_arch_dir powerpc
404 %ifarch sparc sparc64
405 %define target_arch_dir sparc
407 %ifnarch %{ix86} %{x8664} ppc ppc64 sparc sparc64
408 %define target_arch_dir %{_target_base_arch}
411 %define defconfig arch/%{target_arch_dir}/defconfig
413 # No ELF objects there to strip (skips processing 27k files)
414 %define _noautostrip '(.*%{_kernelsrcdir}/.*|.*/vmlinux.*)'
415 %define _noautochrpath .*%{_kernelsrcdir}/.*
418 %define initrd_dir /boot/efi
420 %define initrd_dir /boot
423 %define topdir %{_builddir}/%{name}-%{version}
424 %define srcdir %{topdir}/linux-%{basever}
425 %define objdir %{topdir}/%{targetobj}
426 %define targetobj %{_target_base_arch}-gcc-%(%{kgcc} -dumpversion)
428 %define _kernelsrcdir /usr/src/linux%{_alt_kernel}-%{version}
430 %if "%{_target_base_arch}" != "%{_arch}"
431 %define CrossOpts ARCH=%{_target_base_arch} CROSS_COMPILE=%{_target_cpu}-pld-linux-
432 %define DepMod /bin/true
434 %if "%{_arch}" == "sparc" && "%{_target_base_arch}" == "sparc64"
435 %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
436 %define DepMod /sbin/depmod
439 %if "%{_arch}" == "sparc64" && "%{_target_base_arch}" == "sparc"
440 %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
441 %define DepMod /sbin/depmod
444 %if "%{_arch}" == "x86_64" && "%{_target_base_arch}" == "i386"
445 %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
446 %define DepMod /sbin/depmod
449 %if "%{_target_base_arch}" == "ppc" || "%{_target_base_arch}" == "ppc64"
450 %define CrossOpts ARCH=powerpc CROSS_COMPILE=%{_target_cpu}-pld-linux-
454 %define CrossOpts ARCH=powerpc CC="%{__cc}"
456 %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
458 %define DepMod /sbin/depmod
460 %define MakeOpts %{CrossOpts} HOSTCC="%{__cc}"
462 %define __features Netfilter module dated: %{netfilter_snap}\
463 %{?with_grsec_full:Grsecurity support - enabled}\
464 %{?with_grsec_minimal:Grsecurity minimal support /proc,link,fifo,shm/ - enabled}\
465 %{?with_pax:PaX support - enabled}\
466 %{?with_fbcondecor:Fbsplash/fbcondecor - enabled }\
467 %{?with_nfsroot:Root on NFS - enabled}\
468 %{?with_apparmor:apparmor support - enabled}\
470 %define Features %(echo "%{__features}" | sed '/^$/d')
473 This package contains the Linux kernel that is used to boot and run
474 your system. It contains few device drivers for specific hardware.
475 Most hardware is instead supported by modules loaded after booting.
479 %description -l de.UTF-8
480 Das Kernel-Paket enthält den Linux-Kernel (vmlinuz), den Kern des
481 Linux-Betriebssystems. Der Kernel ist für grundliegende
482 Systemfunktionen verantwortlich: Speicherreservierung,
483 Prozeß-Management, Geräte Ein- und Ausgaben, usw.
487 %description -l fr.UTF-8
488 Le package kernel contient le kernel linux (vmlinuz), la partie
489 centrale d'un système d'exploitation Linux. Le noyau traite les
490 fonctions basiques d'un système d'exploitation: allocation mémoire,
491 allocation de process, entrée/sortie de peripheriques, etc.
495 %description -l pl.UTF-8
496 Pakiet zawiera jądro Linuksa niezbędne do prawidłowego działania
497 Twojego komputera. Zawiera w sobie sterowniki do sprzętu znajdującego
498 się w komputerze, takiego jak sterowniki dysków itp.
503 Summary: vmlinux - uncompressed kernel image
504 Summary(de.UTF-8): vmlinux - dekompressiertes Kernel Bild
505 Summary(pl.UTF-8): vmlinux - rozpakowany obraz jÄ…dra
507 Obsoletes: kernel-smp-vmlinux
510 vmlinux - uncompressed kernel image.
512 %description vmlinux -l de.UTF-8
513 vmlinux - dekompressiertes Kernel Bild.
515 %description vmlinux -l pl.UTF-8
516 vmlinux - rozpakowany obraz jÄ…dra.
519 Summary: DRM kernel modules
520 Summary(de.UTF-8): DRM Kernel Treiber
521 Summary(pl.UTF-8): Sterowniki DRM
523 Requires(postun): %{name} = %{epoch}:%{version}-%{release}
524 Requires: %{name} = %{epoch}:%{version}-%{release}
525 Obsoletes: kernel-smp-drm
531 %description drm -l de.UTF-8
534 %description drm -l pl.UTF-8
538 Summary: PCMCIA modules
539 Summary(de.UTF-8): PCMCIA Module
540 Summary(pl.UTF-8): Moduły PCMCIA
542 Requires(postun): %{name} = %{epoch}:%{version}-%{release}
543 Requires: %{name} = %{epoch}:%{version}-%{release}
544 Obsoletes: kernel-smp-pcmcia
545 Conflicts: pcmcia-cs < 3.1.21
546 Conflicts: pcmciautils < 004
552 %description pcmcia -l de.UTF-8
555 %description pcmcia -l pl.UTF-8
559 Summary: Libraries for preparing bootable kernel on PowerPCs
560 Summary(pl.UTF-8): Biblioteki do przygotowania bootowalnego jÄ…dra dla PowerPC
562 Requires: %{name} = %{epoch}:%{version}-%{release}
563 Requires: mkvmlinuz >= 1.3
564 Obsoletes: kernel-smp-libs
568 Libraries for preparing bootable kernel on PowerPCs. Script called
569 mkvmlinuz may be useful for this.
571 %description libs -l pl.UTF-8
572 Biblioteki do przygotowania bootowalnego jÄ…dra dla PowerPC. Skrypt
573 mkvmlinuz może być do tego przydatny.
576 Summary: ALSA kernel modules
577 Summary(de.UTF-8): ALSA Kernel Module
578 Summary(pl.UTF-8): Sterowniki dźwięku ALSA
580 Requires(postun): %{name} = %{epoch}:%{version}-%{release}
581 Requires: %{name} = %{epoch}:%{version}-%{release}
582 Obsoletes: kernel-smp-sound-alsa
585 %description sound-alsa
586 ALSA (Advanced Linux Sound Architecture) sound drivers.
588 %description sound-alsa -l de.UTF-8
589 ALSA (Advanced Linux Sound Architecture) Sound-Treiber.
591 %description sound-alsa -l pl.UTF-8
592 Sterowniki dźwięku ALSA (Advanced Linux Sound Architecture).
595 Summary: OSS kernel modules
596 Summary(de.UTF-8): OSS Kernel Module
597 Summary(pl.UTF-8): Sterowniki dźwięku OSS
599 Requires(postun): %{name} = %{epoch}:%{version}-%{release}
600 Requires: %{name} = %{epoch}:%{version}-%{release}
601 Obsoletes: kernel-smp-sound-oss
604 %description sound-oss
605 OSS (Open Sound System) drivers.
607 %description sound-oss -l de.UTF-8
608 OSS (Open Sound System) Treiber.
610 %description sound-oss -l pl.UTF-8
611 Sterowniki dźwięku OSS (Open Sound System).
614 Summary: Header files for the Linux kernel
615 Summary(de.UTF-8): Header Dateien für den Linux-Kernel
616 Summary(pl.UTF-8): Pliki nagłówkowe jądra Linuksa
617 Group: Development/Building
618 Provides: %{name}-headers(netfilter) = %{netfilter_snap}
622 These are the C header files for the Linux kernel, which define
623 structures and constants that are needed when rebuilding the kernel or
624 building kernel modules.
626 %description headers -l de.UTF-8
627 Dies sind die C Header Dateien für den Linux-Kernel, die definierte
628 Strukturen und Konstante beinhalten, die beim rekompilieren des
629 Kernels oder bei Kernel Modul kompilationen gebraucht werden.
631 %description headers -l pl.UTF-8
632 Pakiet zawiera pliki nagłówkowe jądra, niezbędne do rekompilacji jądra
633 oraz budowania modułów jądra.
635 %package module-build
636 Summary: Development files for building kernel modules
637 Summary(de.UTF-8): Development Dateien die beim Kernel Modul kompilationen gebraucht werden
638 Summary(pl.UTF-8): Pliki służące do budowania modułów jądra
639 Group: Development/Building
640 Requires: %{name}-headers = %{epoch}:%{version}-%{release}
641 Conflicts: rpmbuild(macros) < 1.321
644 %description module-build
645 Development files from kernel source tree needed to build Linux kernel
646 modules from external packages.
648 %description module-build -l de.UTF-8
649 Development Dateien des Linux-Kernels die beim kompilieren externer
650 Kernel Module gebraucht werden.
652 %description module-build -l pl.UTF-8
653 Pliki ze drzewa źródeł jądra potrzebne do budowania modułów jądra
654 Linuksa z zewnętrznych pakietów.
657 Summary: Kernel source tree
658 Summary(de.UTF-8): Der Kernel Quelltext
659 Summary(pl.UTF-8): Kod źródłowy jądra Linuksa
660 Group: Development/Building
661 Requires: %{name}-module-build = %{epoch}:%{version}-%{release}
665 This is the source code for the Linux kernel. You can build a custom
666 kernel that is better tuned to your particular hardware.
668 %description source -l de.UTF-8
669 Das Kernel-Source-Paket enthält den source code (C/Assembler-Code) des
670 Linux-Kernels. Die Source-Dateien werden gebraucht, um viele
671 C-Programme zu kompilieren, da sie auf Konstanten zurückgreifen, die
672 im Kernel-Source definiert sind. Die Source-Dateien können auch
673 benutzt werden, um einen Kernel zu kompilieren, der besser auf Ihre
674 Hardware ausgerichtet ist.
676 %description source -l fr.UTF-8
677 Le package pour le kernel-source contient le code source pour le noyau
678 linux. Ces sources sont nécessaires pour compiler la plupart des
679 programmes C, car il dépend de constantes définies dans le code
680 source. Les sources peuvent être aussi utilisée pour compiler un noyau
681 personnalisé pour avoir de meilleures performances sur des matériels
684 %description source -l pl.UTF-8
685 Pakiet zawiera kod źródłowy jądra systemu.
688 Summary: Kernel documentation
689 Summary(de.UTF-8): Kernel Dokumentation
690 Summary(pl.UTF-8): Dokumentacja do jÄ…dra Linuksa
695 This is the documentation for the Linux kernel, as found in
696 /usr/src/linux/Documentation directory.
698 %description doc -l de.UTF-8
699 Dies ist die Kernel Dokumentation wie sie im 'Documentation'
700 Verzeichniss vorgefunden werden kann.
702 %description doc -l pl.UTF-8
703 Pakiet zawiera dokumentacjÄ™ do jÄ…dra Linuksa pochodzÄ…cÄ… z katalogu
704 /usr/src/linux/Documentation.
708 ln -s %{SOURCE7} kernel-module-build.pl
709 ln -s %{SOURCE10} Makefile
712 # hack against warning in pax/grsec
714 sed -i 's/-Werror//' arch/alpha/kernel/Makefile
718 install %{SOURCE5} Makefile.ppclibs
721 %if "%{postver}" != "%{nil}"
722 %{__bzip2} -dc %{SOURCE1} | patch -p1 -s
731 # tahoe9xx: 2.6.29 - need update
734 %if %{with fbcondecor}
742 # kernel-pom-ng-IPV4OPTSSTRIP.patch
745 # kernel-pom-ng-ipv4options.patch
748 # kernel-pom-ng-ROUTE.patch
751 # kernel-pom-ng-mms-conntrack-nat.patch
754 # kernel-pom-ng-rsh.patch
757 # kernel-pom-ng-rpc.patch
760 # kernel-nf_rtsp.patch
763 # kernel-owner-xid.patch
768 # kernel-ipt_account.patch
771 # kernel-ipt_ACCOUNT.patch
774 # kernel-layer7.patch
812 # kernel-rndis_host-wm5.patch
815 # hostap enhancements from/for aircrack-ng
818 # LSI MPT Fusion driver update (by LSI via SUSE folks)
831 # unionfs (problems with aufs2, needed for aufs1 patch)
832 %if %{without rescuecd}
851 # grsecurity & pax stuff
854 # remember that we have the same config file for grsec_minimal and
855 # grsec_full, but the patches are different.
857 %if %{with grsecurity}
858 %if %{with grsec_minimal}
861 # grsec_full and/or pax
863 %{?with_vserver:%patch10000 -p1}
864 %{?with_vserver:%patch10001 -p1}
865 %{?with_vserver:%patch10002 -p1}
866 %{?with_vserver:%patch10003 -p1}
870 # end of grsecurity & pax stuff
892 # Fix EXTRAVERSION in main Makefile
893 sed -i 's#EXTRAVERSION =.*#EXTRAVERSION = %{postver}%{?alt_kernel:_%{alt_kernel}}#g' Makefile
895 # cleanup backups after patching
896 find '(' -name '*~' -o -name '*.orig' -o -name '.gitignore' ')' -print0 | xargs -0 -r -l512 rm -f
900 cat > %{targetobj}.mk <<'EOF'
901 # generated by %{name}.spec
902 KERNELSRC := %{_builddir}/%{name}-%{version}/linux-%{basever}
903 KERNELOUTPUT := %{objdir}
905 SRCARCH := %{target_arch_dir}
906 ARCH := %{_target_base_arch}
907 Q := %{!?with_verbose:@}
908 MAKE_OPTS := %{MakeOpts}
909 DEFCONFIG := %{defconfig}
916 CONFIG_PAX_SEGMEXEC=y
917 # performance impact on CPUs without NX bit
918 CONFIG_PAX_PAGEEXEC=n
921 CONFIG_HOTPLUG_PCI_COMPAQ_NVRAM=n
927 CONFIG_PAX_NOELFRELOCS=n
930 CONFIG_PAX_EMUTRAMP=y
931 CONFIG_PAX_EMUSIGRT=y
935 %ifarch sparc sparc64 alpha
939 # Now we have to check MAC system integration. Grsecurity (full) uses PAX_HAVE_ACL_FLAGS
940 # setting (direct acces). grsec_minimal probably have no idea about PaX so we probably
941 # could use PAX_NO_ACL_FLAGS, but for testing the hooks setting will be used
942 # PAX_HOOK_ACL_FLAGS.
944 %if %{with grsec_full}
945 # Hardening grsec options if with pax
946 CONFIG_GRKERNSEC_PROC_MEMMAP=y
947 # almost rational (see HIDESYM help)
948 CONFIG_GRKERNSEC_HIDESYM=y
950 # no change needed CONFIG=PAX_HAVE_ACL_FLAGS=y is taken from the kernel-pax.config
952 CONFIG_PAX_HAVE_ACL_FLAGS=n
953 CONFIG_PAX_HOOK_ACL_FLAGS=y
963 # CONFIG_SOUND is not set
964 # CONFIG_AUDIT is not set
965 # CONFIG_TR is not set
966 # CONFIG_BT is not set
967 # CONFIG_VIDEO_DEV is not set
968 # CONFIG_DVB_CORE is not set
969 # CONFIG_HAMRADIO is not set
970 # CONFIG_ARCNET is not set
971 # CONFIG_FB is not set
972 # CONFIG_DRM is not set
973 # CONFIG_WATCHDOG is not set
974 # CONFIG_INPUT_JOYSTICK is not set
975 # CONFIG_DEBUG_KERNEL is not set
976 # CONFIG_ISDN is not set
977 # CONFIG_AGP is not set
978 # CONFIG_SECURITY is not set
979 # CONFIG_PARIDE is not set
980 # CONFIG_CPU_FREQ is not set
981 # CONFIG_GAMEPORT is not set
982 # CONFIG_KVM is not set
983 # CONFIG_PHONE is not set
984 # CONFIG_STRICT_DEVMEM is not set
985 # CONFIG_IMA is not set
988 CONFIG_AUFS_BR_RAMFS=y
990 CONFIG_BLK_DEV_LOOP=y
1002 Config="kernel-%{target_arch_dir}.config"
1003 echo >&2 "Building config file for %{_target_cpu} using $Config et al."
1005 # prepare local and important options
1006 cat <<-EOCONFIG > important.config
1007 LOCALVERSION="-%{localversion}"
1011 CONFIG_DEBUG_SLAB_LEAK=y
1012 CONFIG_DEBUG_PREEMPT=y
1013 CONFIG_RT_DEADLOCK_DETECT=y
1016 # apparmor, will be moved to external file if works
1017 %if %{with apparmor}
1018 CONFIG_SECURITY_APPARMOR=y
1019 CONFIG_SECURITY_APPARMOR_BOOTPARAM_VALUE=1
1020 CONFIG_SECURITY_APPARMOR_DISABLE=n
1021 CONFIG_SECURITY_APPARMOR_NETWORK=y
1028 %ifarch i686 athlon pentium3 pentium4
1037 %if %{without pcmcia}
1041 %if %{with fbcondecor}
1045 CONFIG_FB_TILEBLITTING=n
1046 CONFIG_FB_CON_DECOR=y
1054 # Temporary disabled RELOCATABLE. Needed only on x86??
1055 %if %{with pax} || %{with grsec_full}
1056 CONFIG_RELOCATABLE=n
1060 %if %{with rescuecd}
1061 RescueConfig rescue.config
1064 PaXconfig pax.config
1067 # prepare kernel-style config file from multiple config files
1068 %{__awk} -v arch="all %{target_arch_dir} %{_target_base_arch} %{_target_cpu}" -f %{SOURCE6} \
1070 $RPM_SOURCE_DIR/kernel-%{alt_kernel}.config \
1073 %if %{with rescuecd}
1084 %if %{with grsec_full}
1088 %if %{with grsec_minimal}
1106 %if %{with tuxonice}
1107 %ifarch %{ix86} %{x8664} ia64 ppc ppc64
1111 %{SOURCE40} %{?0:netfilter} \
1112 %{SOURCE41} %{?0:patches} \
1114 $RPM_SOURCE_DIR/$Config
1118 install -d arch/%{target_arch_dir}
1119 BuildConfig > %{defconfig}
1120 ln -sf %{defconfig} .config
1124 TARGETOBJ=%{targetobj} \
1125 %{?with_verbose:V=1} \
1128 %{__awk} %{?debug:-v dieOnError=1} -v infile=%{objdir}/%{defconfig} -f %{SOURCE8} %{objdir}/.config
1132 TARGETOBJ=%{targetobj} \
1133 %{?with_verbose:V=1} \
1137 rm -rf $RPM_BUILD_ROOT
1138 %{__make} %{MakeOpts} %{!?with_verbose:-s} modules_install firmware_install \
1140 %{?with_verbose:V=1} \
1142 INSTALL_MOD_PATH=$RPM_BUILD_ROOT \
1143 INSTALL_FW_PATH=$RPM_BUILD_ROOT/lib/firmware/%{kernel_release} \
1144 KERNELRELEASE=%{kernel_release}
1146 install -d $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/misc
1149 # create directories which may be missing, to simplyfy %files
1150 install -d $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/kernel/sound
1153 # rpm obeys filelinkto checks for ghosted symlinks, convert to files
1154 rm -f $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/{build,source}
1155 touch $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/{build,source}
1158 install -d $RPM_BUILD_ROOT/boot
1159 cp -a %{objdir}/System.map $RPM_BUILD_ROOT/boot/System.map-%{kernel_release}
1160 %ifarch %{ix86} %{x8664}
1161 cp -a %{objdir}/arch/%{target_arch_dir}/boot/bzImage $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
1162 install %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinux-%{kernel_release}
1165 install %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
1166 install %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinux-%{kernel_release}
1169 %{__gzip} -cfv %{objdir}/vmlinux > %{objdir}/vmlinuz
1170 cp -a %{objdir}/vmlinuz $RPM_BUILD_ROOT/boot/efi/vmlinuz-%{kernel_release}
1171 ln -sf efi/vmlinuz-%{kernel_release} $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
1173 %ifarch alpha sparc sparc64
1174 %{__gzip} -cfv %{objdir}/vmlinux > %{objdir}/vmlinuz
1175 cp -a %{objdir}/vmlinuz $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
1176 install %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
1178 elftoaout %{objdir}/arch/sparc/boot/image -o %{objdir}/vmlinux.aout
1179 install %{objdir}/vmlinux.aout $RPM_BUILD_ROOT/boot/vmlinux.aout-%{kernel_release}
1182 elftoaout %{objdir}/arch/sparc64/boot/image -o %{objdir}/vmlinux.aout
1183 install %{objdir}/vmlinux.aout $RPM_BUILD_ROOT/boot/vmlinux.aout-%{kernel_release}
1186 install %{objdir}/arch/arm/boot/zImage $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
1191 touch $RPM_BUILD_ROOT%{initrd_dir}/initrd-%{kernel_release}.gz
1193 %if "%{_target_base_arch}" != "%{_arch}"
1194 touch $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/modules.dep
1198 install -d $RPM_BUILD_ROOT%{_sysconfdir}/modprobe.d/%{kernel_release}
1201 install -d $RPM_BUILD_ROOT%{_kernelsrcdir}
1202 # test if we can hardlink -- %{_builddir} and $RPM_BUILD_ROOT on same partition
1203 if cp -al %{srcdir}/COPYING $RPM_BUILD_ROOT/COPYING 2>/dev/null; then
1205 rm -f $RPM_BUILD_ROOT/COPYING
1208 cp -a$l %{srcdir}/* $RPM_BUILD_ROOT%{_kernelsrcdir}
1209 cp -a %{objdir}/Module.symvers $RPM_BUILD_ROOT%{_kernelsrcdir}/Module.symvers-dist
1210 cp -aL %{objdir}/.config $RPM_BUILD_ROOT%{_kernelsrcdir}/config-dist
1211 cp -a %{objdir}/include/linux/autoconf.h $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux/autoconf-dist.h
1212 cp -a %{objdir}/include/linux/{utsrelease,version}.h $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux
1213 cp -a %{SOURCE3} $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux/autoconf.h
1214 cp -a %{SOURCE4} $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux/config.h
1216 # collect module-build files and directories
1217 # Usage: kernel-module-build.pl $rpmdir $fileoutdir
1219 cd $RPM_BUILD_ROOT%{_kernelsrcdir}
1220 %{__perl} %{topdir}/kernel-module-build.pl %{_kernelsrcdir} $fileoutdir
1223 # move to %{_docdir} so we wouldn't depend on any kernel package for dirs
1224 install -d $RPM_BUILD_ROOT%{_docdir}
1225 mv $RPM_BUILD_ROOT{%{_kernelsrcdir}/Documentation,%{_docdir}/%{name}-%{version}}
1227 rm -f $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/dontdiff
1228 rm -f $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/Makefile
1229 rm -f $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/*/Makefile
1230 rm -f $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/*/*/Makefile
1233 rm -rf $RPM_BUILD_ROOT
1236 if [ -x /sbin/new-kernel-pkg ]; then
1237 /sbin/new-kernel-pkg --remove %{kernel_release}
1242 mv -f /boot/efi/vmlinuz{,.old} 2> /dev/null
1243 %{?alt_kernel:mv -f /boot/efi/vmlinuz%{_alt_kernel}{,.old} 2> /dev/null}
1244 ln -sf vmlinuz-%{kernel_release} /boot/efi/vmlinuz
1245 %{?alt_kernel:ln -sf vmlinuz-%{kernel_release} /boot/efi/vmlinuz%{_alt_kernel}}
1247 mv -f /boot/vmlinuz{,.old} 2> /dev/null
1248 %{?alt_kernel:mv -f /boot/vmlinuz%{_alt_kernel}{,.old} 2> /dev/null}
1249 mv -f /boot/System.map{,.old} 2> /dev/null
1250 %{?alt_kernel:mv -f /boot/System%{_alt_kernel}.map{,.old} 2> /dev/null}
1251 ln -sf vmlinuz-%{kernel_release} /boot/vmlinuz
1252 %{?alt_kernel:ln -sf vmlinuz-%{kernel_release} /boot/vmlinuz%{_alt_kernel}}
1253 ln -sf System.map-%{kernel_release} /boot/System.map
1254 %{?alt_kernel:ln -sf System.map-%{kernel_release} /boot/System.map%{_alt_kernel}}
1256 %depmod %{kernel_release}
1258 /sbin/geninitrd -f --initrdfs=rom %{initrd_dir}/initrd-%{kernel_release}.gz %{kernel_release}
1259 mv -f %{initrd_dir}/initrd{,.old} 2> /dev/null
1260 %{?alt_kernel:mv -f %{initrd_dir}/initrd%{_alt_kernel}{,.old} 2> /dev/null}
1261 ln -sf initrd-%{kernel_release}.gz %{initrd_dir}/initrd
1262 %{?alt_kernel:ln -sf initrd-%{kernel_release}.gz %{initrd_dir}/initrd%{_alt_kernel}}
1264 if [ -x /sbin/new-kernel-pkg ]; then
1265 /sbin/new-kernel-pkg --initrdfile=%{initrd_dir}/initrd-%{kernel_release}.gz --install %{kernel_release} --banner "PLD Linux (%{pld_release})%{?alt_kernel: / %{alt_kernel}}"
1266 elif [ -x /sbin/rc-boot ]; then
1267 /sbin/rc-boot 1>&2 || :
1271 mv -f /boot/vmlinux{,.old} 2> /dev/null
1272 %{?alt_kernel:mv -f /boot/vmlinux-%{alt_kernel}{,.old} 2> /dev/null}
1273 ln -sf vmlinux-%{kernel_release} /boot/vmlinux
1274 %{?alt_kernel:ln -sf vmlinux-%{kernel_release} /boot/vmlinux-%{alt_kernel}}
1277 %{_sbindir}/mkvmlinuz /boot/zImage-%{kernel_release} %{kernel_release}
1280 %depmod %{kernel_release}
1283 %depmod %{kernel_release}
1286 %depmod %{kernel_release}
1289 %depmod %{kernel_release}
1292 %depmod %{kernel_release}
1295 %depmod %{kernel_release}
1298 %depmod %{kernel_release}
1301 %depmod %{kernel_release}
1304 ln -snf %{basename:%{_kernelsrcdir}} %{_prefix}/src/linux%{_alt_kernel}
1307 if [ "$1" = "0" ]; then
1308 if [ -L %{_prefix}/src/linux%{_alt_kernel} ]; then
1309 if [ "$(readlink %{_prefix}/src/linux%{_alt_kernel})" = "linux%{_alt_kernel}-%{version}" ]; then
1310 rm -f %{_prefix}/src/linux%{_alt_kernel}
1315 %triggerin module-build -- %{name} = %{epoch}:%{version}-%{release}
1316 ln -sfn %{_kernelsrcdir} /lib/modules/%{kernel_release}/build
1317 ln -sfn %{_kernelsrcdir} /lib/modules/%{kernel_release}/source
1319 %triggerun module-build -- %{name} = %{epoch}:%{version}-%{release}
1320 if [ "$1" = 0 ]; then
1321 rm -f /lib/modules/%{kernel_release}/{build,source}
1325 %defattr(644,root,root,755)
1326 %ifarch sparc sparc64
1327 /boot/vmlinux.aout-%{kernel_release}
1330 /boot/efi/vmlinuz-%{kernel_release}
1332 /boot/vmlinuz-%{kernel_release}
1333 /boot/System.map-%{kernel_release}
1334 %ghost %{initrd_dir}/initrd-%{kernel_release}.gz
1335 /lib/firmware/%{kernel_release}
1337 %dir /lib/modules/%{kernel_release}
1338 %dir /lib/modules/%{kernel_release}/kernel
1340 /lib/modules/%{kernel_release}/kernel/arch
1342 /lib/modules/%{kernel_release}/kernel/crypto
1343 /lib/modules/%{kernel_release}/kernel/drivers
1345 %exclude /lib/modules/%{kernel_release}/kernel/drivers/gpu
1347 /lib/modules/%{kernel_release}/kernel/fs
1348 /lib/modules/%{kernel_release}/kernel/kernel
1349 /lib/modules/%{kernel_release}/kernel/lib
1350 /lib/modules/%{kernel_release}/kernel/net
1352 %dir /lib/modules/%{kernel_release}/kernel/sound
1353 /lib/modules/%{kernel_release}/kernel/sound/ac97_bus.ko*
1354 /lib/modules/%{kernel_release}/kernel/sound/sound*.ko*
1356 %exclude /lib/modules/%{kernel_release}/kernel/drivers/media/video/cx88/cx88-alsa.ko*
1357 %exclude /lib/modules/%{kernel_release}/kernel/drivers/media/video/em28xx/em28xx-alsa.ko*
1358 %exclude /lib/modules/%{kernel_release}/kernel/drivers/media/video/saa7134/saa7134-alsa.ko*
1361 %dir /lib/modules/%{kernel_release}/misc
1363 %exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/[!p]*
1364 %exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/pd6729.ko*
1365 %exclude /lib/modules/%{kernel_release}/kernel/drivers/*/pcmcia
1366 %if %{without rescuecd}
1367 %exclude /lib/modules/%{kernel_release}/kernel/drivers/ata/pata_pcmcia.ko*
1368 %exclude /lib/modules/%{kernel_release}/kernel/drivers/bluetooth/*_cs.ko*
1369 %exclude /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
1370 %exclude /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/b1pcmcia.ko*
1371 %exclude /lib/modules/%{kernel_release}/kernel/drivers/telephony/ixj_pcmcia.ko*
1372 %exclude /lib/modules/%{kernel_release}/kernel/drivers/usb/gadget/g_midi.ko*
1374 %exclude /lib/modules/%{kernel_release}/kernel/drivers/ide/ide-cs.ko*
1375 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/*_cs.ko*
1376 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/b43
1377 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/hostap/hostap_cs.ko*
1378 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/libertas/*_cs.ko*
1379 %exclude /lib/modules/%{kernel_release}/kernel/drivers/parport/parport_cs.ko*
1380 %exclude /lib/modules/%{kernel_release}/kernel/drivers/serial/serial_cs.ko*
1381 %exclude /lib/modules/%{kernel_release}/kernel/drivers/usb/host/sl811_cs.ko*
1384 /lib/modules/%{kernel_release}/kernel/sound
1386 %ghost /lib/modules/%{kernel_release}/modules.*
1387 # symlinks pointing to kernelsrcdir
1388 %ghost /lib/modules/%{kernel_release}/build
1389 %ghost /lib/modules/%{kernel_release}/source
1390 %dir %{_sysconfdir}/modprobe.d/%{kernel_release}
1392 %ifarch alpha %{ix86} %{x8664} ppc ppc64 sparc sparc64
1394 %defattr(644,root,root,755)
1395 /boot/vmlinux-%{kernel_release}
1400 %defattr(644,root,root,755)
1401 /lib/modules/%{kernel_release}/kernel/drivers/gpu
1406 %defattr(644,root,root,755)
1407 /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/*ko*
1408 /lib/modules/%{kernel_release}/kernel/drivers/*/pcmcia
1409 %exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/pcmcia*ko*
1410 %if %{without rescuecd}
1411 /lib/modules/%{kernel_release}/kernel/drivers/bluetooth/*_cs.ko*
1412 /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
1413 /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/b1pcmcia.ko*
1414 /lib/modules/%{kernel_release}/kernel/drivers/telephony/ixj_pcmcia.ko*
1416 /lib/modules/%{kernel_release}/kernel/drivers/ata/pata_pcmcia.ko*
1417 /lib/modules/%{kernel_release}/kernel/drivers/ide/ide-cs.ko*
1418 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/*_cs.ko*
1419 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/b43
1420 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/hostap/hostap_cs.ko*
1421 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/libertas/*_cs.ko*
1422 /lib/modules/%{kernel_release}/kernel/drivers/parport/parport_cs.ko*
1423 /lib/modules/%{kernel_release}/kernel/drivers/serial/serial_cs.ko*
1424 /lib/modules/%{kernel_release}/kernel/drivers/usb/host/sl811_cs.ko*
1428 %if "%{_arch}" == "ppc"
1430 %defattr(644,root,root,755)
1431 %dir /boot/libs-%{kernel_release}
1432 /boot/libs-%{kernel_release}/common
1433 /boot/libs-%{kernel_release}/kernel
1434 /boot/libs-%{kernel_release}/lib
1435 /boot/libs-%{kernel_release}/of1275
1436 /boot/libs-%{kernel_release}/openfirmware
1437 /boot/libs-%{kernel_release}/simple
1438 %dir /boot/libs-%{kernel_release}/utils
1439 %attr(755,root,root) /boot/libs-%{kernel_release}/utils/*
1440 /boot/libs-%{kernel_release}/ld.script
1446 %defattr(644,root,root,755)
1447 /lib/modules/%{kernel_release}/kernel/sound
1448 %exclude %dir /lib/modules/%{kernel_release}/kernel/sound
1449 %exclude /lib/modules/%{kernel_release}/kernel/sound/ac97_bus.ko*
1450 %exclude /lib/modules/%{kernel_release}/kernel/sound/sound*.ko*
1452 %exclude /lib/modules/%{kernel_release}/kernel/sound/oss
1455 /lib/modules/%{kernel_release}/kernel/drivers/usb/gadget/g_midi.ko*
1456 /lib/modules/%{kernel_release}/kernel/drivers/media/video/cx88/cx88-alsa.ko*
1457 /lib/modules/%{kernel_release}/kernel/drivers/media/video/em28xx/em28xx-alsa.ko*
1458 /lib/modules/%{kernel_release}/kernel/drivers/media/video/saa7134/saa7134-alsa.ko*
1463 %defattr(644,root,root,755)
1464 /lib/modules/%{kernel_release}/kernel/sound/oss
1469 %defattr(644,root,root,755)
1470 %dir %{_kernelsrcdir}
1471 %{_kernelsrcdir}/include
1472 %dir %{_kernelsrcdir}/arch
1473 %dir %{_kernelsrcdir}/arch/[!K]*
1474 %{_kernelsrcdir}/arch/*/include
1475 %dir %{_kernelsrcdir}/security
1476 %dir %{_kernelsrcdir}/security/selinux
1477 %{_kernelsrcdir}/security/selinux/include
1478 %{_kernelsrcdir}/config-dist
1479 %{_kernelsrcdir}/Module.symvers-dist
1481 %files module-build -f aux_files
1482 %defattr(644,root,root,755)
1484 %{_kernelsrcdir}/arch/powerpc/lib/crtsavres.*
1486 %{_kernelsrcdir}/arch/*/kernel/asm-offsets*
1487 %{_kernelsrcdir}/arch/*/kernel/sigframe*.h
1488 %{_kernelsrcdir}/drivers/lguest/lg.h
1489 %{_kernelsrcdir}/kernel/bounds.c
1490 %dir %{_kernelsrcdir}/scripts
1491 %dir %{_kernelsrcdir}/scripts/kconfig
1492 %{_kernelsrcdir}/scripts/Kbuild.include
1493 %{_kernelsrcdir}/scripts/Makefile*
1494 %{_kernelsrcdir}/scripts/basic
1495 %{_kernelsrcdir}/scripts/mkmakefile
1496 %{_kernelsrcdir}/scripts/mod
1497 %{_kernelsrcdir}/scripts/setlocalversion
1498 %{_kernelsrcdir}/scripts/*.c
1499 %{_kernelsrcdir}/scripts/*.sh
1500 %{_kernelsrcdir}/scripts/kconfig/*
1501 %{_kernelsrcdir}/scripts/mkcompile_h
1502 %dir %{_kernelsrcdir}/scripts/selinux
1503 %{_kernelsrcdir}/scripts/selinux/Makefile
1504 %dir %{_kernelsrcdir}/scripts/selinux/mdp
1505 %{_kernelsrcdir}/scripts/selinux/mdp/Makefile
1506 %{_kernelsrcdir}/scripts/selinux/mdp/*.c
1509 %defattr(644,root,root,755)
1510 %dir %{_docdir}/%{name}-%{version}
1512 %{_docdir}/%{name}-%{version}/[!jkz]*
1513 %{_docdir}/%{name}-%{version}/[jkz]*.txt
1514 %{_docdir}/%{name}-%{version}/kbuild
1515 %{_docdir}/%{name}-%{version}/kdump
1516 %lang(ja) %{_docdir}/%{name}-%{version}/ja_JP
1517 %lang(ko) %{_docdir}/%{name}-%{version}/ko_KR
1518 %lang(zh_CN) %{_docdir}/%{name}-%{version}/zh_CN
1521 %files source -f aux_files_exc
1522 %defattr(644,root,root,755)
1523 %{_kernelsrcdir}/arch/*/[!Mik]*
1524 %{_kernelsrcdir}/arch/*/kernel/[!M]*
1525 %{_kernelsrcdir}/arch/ia64/ia32/[!M]*
1526 %{_kernelsrcdir}/arch/ia64/install.sh
1527 %{_kernelsrcdir}/arch/m68k/ifpsp060/[!M]*
1528 %{_kernelsrcdir}/arch/m68k/ifpsp060/MISC
1529 %{_kernelsrcdir}/arch/parisc/install.sh
1530 %{_kernelsrcdir}/arch/x86/ia32/[!M]*
1531 %{_kernelsrcdir}/arch/ia64/kvm
1532 %{_kernelsrcdir}/arch/powerpc/kvm
1534 %exclude %{_kernelsrcdir}/arch/powerpc/lib/crtsavres.*
1536 %{_kernelsrcdir}/arch/s390/kvm
1537 %{_kernelsrcdir}/arch/x86/kvm
1538 %exclude %{_kernelsrcdir}/arch/*/kernel/asm-offsets*
1539 %exclude %{_kernelsrcdir}/arch/*/kernel/sigframe*.h
1540 %exclude %{_kernelsrcdir}/drivers/lguest/lg.h
1541 %{_kernelsrcdir}/block
1542 %{_kernelsrcdir}/crypto
1543 %{_kernelsrcdir}/drivers
1544 %{_kernelsrcdir}/firmware
1546 %if %{with grsecurity} && %{without rescuecd}
1547 %{_kernelsrcdir}/grsecurity
1549 %{_kernelsrcdir}/init
1550 %{_kernelsrcdir}/ipc
1551 %{_kernelsrcdir}/kernel
1552 %exclude %{_kernelsrcdir}/kernel/bounds.c
1553 %{_kernelsrcdir}/lib
1555 %{_kernelsrcdir}/net
1556 %{_kernelsrcdir}/virt
1557 %{_kernelsrcdir}/samples
1558 %{_kernelsrcdir}/scripts/*
1559 %exclude %{_kernelsrcdir}/scripts/Kbuild.include
1560 %exclude %{_kernelsrcdir}/scripts/Makefile*
1561 %exclude %{_kernelsrcdir}/scripts/basic
1562 %exclude %{_kernelsrcdir}/scripts/kconfig
1563 %exclude %{_kernelsrcdir}/scripts/mkmakefile
1564 %exclude %{_kernelsrcdir}/scripts/mod
1565 %exclude %{_kernelsrcdir}/scripts/setlocalversion
1566 %exclude %{_kernelsrcdir}/scripts/*.c
1567 %exclude %{_kernelsrcdir}/scripts/*.sh
1568 %{_kernelsrcdir}/sound
1569 %{_kernelsrcdir}/security
1570 %exclude %{_kernelsrcdir}/security/selinux/include
1571 %{_kernelsrcdir}/usr
1572 %{_kernelsrcdir}/COPYING
1573 %{_kernelsrcdir}/CREDITS
1574 %{_kernelsrcdir}/MAINTAINERS
1575 %{_kernelsrcdir}/README
1576 %{_kernelsrcdir}/REPORTING-BUGS