2 # - test pax stuff (btw. tested ok in softmode)
3 # - prepare config for non SEGMEXEC capable archs (ie not x86/32bit)
4 # - patch scripts/Makefile.xen not to require bash
5 # - make PAE usage configurable when Xen is on
7 # WARNING: Kernels from 2.6.16.X series not work under OldWorldMac
10 %bcond_without smp # don't build SMP kernel
11 %bcond_without up # don't build UP kernel
12 %bcond_without source # don't build kernel-source package
13 %bcond_without pcmcia # don't build pcmcia
15 %bcond_with grsec_full # build full grsecurity
16 %bcond_with pax # build PaX and full grsecurity
17 %bcond_with verbose # verbose build (V=1)
18 %bcond_with xen0 # added Xen0 support
19 %bcond_with xenU # added XenU support
20 %bcond_without grsecurity # don't build grsecurity at all
21 %bcond_without grsec_minimal # build only minimal subset (proc,link,fifo,shm)
23 %bcond_without bootsplash # build with bootsplash instead of fbsplash
24 %bcond_with vesafb_tng # vesafb-tng, vesafb replacement from gentoo
25 %bcond_with pae # build PAE (HIGHMEM64G) support on uniprocessor
26 %bcond_with nfsroot # build with root on NFS support
27 %bcond_with reiserfs4 # build with ReiserFS 4 support
28 %bcond_with ext2compiled # compile ext2 into kernel to be able to boot from ext2 rootfs
30 %{?debug:%define with_verbose 1}
32 %if %{without grsecurity}
33 %undefine with_grsec_full
34 %undefine with_grsec_minimal
39 %undefine with_grsec_minimal
40 %undefine with_grsec_full
41 %define with_grsecurity 1
44 %if %{with grsec_full}
45 %undefine with_grsec_minimal
46 %define with_grsecurity 1
49 %if %{with grsec_minimal}
50 %undefine with_grsec_full
52 %define with_grsecurity 1
56 # sparc32 is missing important updates from 2.5 cycle - won't build.
69 %ifarch %{ix86} alpha ppc
83 %define dashxen \-xen0
88 %define dashxen \-xenU
92 %define dashxen %{nil}
96 ## Programs required by kernel to work.
97 %define _binutils_ver 2.12.1
98 %define _util_linux_ver 2.10o
99 %define _module_init_tool_ver 0.9.10
100 %define _e2fsprogs_ver 1.29
101 %define _jfsutils_ver 1.1.3
102 %define _reiserfsprogs_ver 3.6.3
103 %define _reiser4progs_ver 1.0.0
104 %define _xfsprogs_ver 2.6.0
105 %define _pcmcia_cs_ver 3.1.21
106 %define _pcmciautils_ver 004
107 %define _quota_tools_ver 3.09
108 %define _ppp_ver 1:2.4.0
109 %define _isdn4k_utils_ver 3.1pre1
110 %define _nfs_utils_ver 1.0.5
111 %define _procps_ver 3.2.0
112 %define _oprofile_ver 0.9
113 %define _udev_ver 071
114 %define _mkvmlinuz_ver 1.3
116 %define _netfilter_snap 20060504
117 %define _nf_hipac_ver 0.9.1
119 %define _enable_debug_packages 0
121 %define pcmcia_version 3.1.22
122 %define drm_xfree_version 4.3.0
124 %define squashfs_version 3.1
125 %define suspend_version 2.2.5
127 %define xen_version 3.0.2
129 %define _basever 2.6.16
132 %define _subname %{?with_pax:-pax}%{?with_grsec_full:-grsecurity}%{?with_xen0:-xen0}%{?with_xenU:-xenU}
133 Summary: The Linux kernel (the core of the Linux operating system)
134 Summary(de): Der Linux-Kernel (Kern des Linux-Betriebssystems)
135 Summary(fr): Le Kernel-Linux (La partie centrale du systeme)
136 Summary(pl): JĀ±dro Linuksa
137 Name: kernel%{_subname}
138 Version: %{_basever}%{_postver}
139 Release: %{_rel}%{?with_ext2compiled:ext2}
143 Source0: http://www.kernel.org/pub/linux/kernel/v2.6/linux-%{_basever}.tar.bz2
144 # Source0-md5: 9a91b2719949ff0856b40bc467fd47be
145 Source1: kernel-autoconf.h
146 Source2: kernel-config.h
147 Source3: http://www.kernel.org/pub/linux/kernel/v2.6/patch-%{version}.bz2
148 # Source3-md5: 841779613210b4c8f1429d7a02f12d04
150 Source5: kernel-ppclibs.Makefile
151 Source7: kernel-module-build.pl
153 Source10: http://suspend2.net/downloads/all/suspend2-%{suspend_version}-for-2.6.16.9.tar.bz2
154 # Source10-md5: 34345b1f7ad1505f6b264427a21e8a04
155 Source12: ftp://ftp.namesys.com/pub/reiser4-for-2.6/2.6.16/reiser4-for-2.6.16-5.patch.gz
156 # Source12-md5: 6ad22d084e12257781f205ec248e4f64
158 Source20: kernel-i386.config
159 Source21: kernel-i386-smp.config
160 Source22: kernel-x86_64.config
161 Source23: kernel-x86_64-smp.config
162 Source24: kernel-sparc.config
163 Source25: kernel-sparc-smp.config
164 Source26: kernel-sparc64.config
165 Source27: kernel-sparc64-smp.config
166 Source28: kernel-alpha.config
167 Source29: kernel-alpha-smp.config
168 Source30: kernel-ppc.config
169 Source31: kernel-ppc-smp.config
170 Source32: kernel-ia64.config
171 Source33: kernel-ia64-smp.config
173 Source40: kernel-netfilter.config
174 Source41: kernel-squashfs.config
175 Source42: kernel-suspend2.config
176 Source43: kernel-vserver.config
177 Source44: kernel-vesafb-tng.config
178 Source45: kernel-grsec.config
179 Source46: kernel-xen0.config
180 Source47: kernel-xenU.config
181 Source48: kernel-xen-extra.config
182 Source49: kernel-grsec+pax.config
188 # PATA ports on SATA Promise controller; patch based on:
189 # http://cvs.fedora.redhat.com/viewcvs/*checkout*/rpms/kernel/devel/linux-2.6-sata-promise-pata-ports.patch
191 Patch1: linux-2.6-sata-promise-pata-ports.patch
193 # tahoe9XX http://tahoe.pl/drivers/tahoe9xx-2.6.11.5.patch
194 Patch2: tahoe9xx-2.6.11.5.patch
196 # ftp://ftp.openbios.org/pub/bootsplash/kernel/bootsplash-3.1.6-2.6.15.diff
197 Patch3: bootsplash-3.1.6-2.6.15.diff
198 # http://dev.gentoo.org/~spock/projects/gensplash/archive/fbsplash-0.9.2-r5-2.6.16.patch
199 Patch4: fbsplash-0.9.2-r5-2.6.16.patch
200 Patch5: linux-2.6-vesafb-tng.patch
202 # directly from http://mesh.dl.sourceforge.net/sourceforge/squashfs/squashfs3.1.tar.gz
204 Patch6: squashfs%{squashfs_version}-patch
206 Patch7: linux-alpha-isa.patch
207 Patch8: linux-fbcon-margins.patch
208 Patch9: linux-static-dev.patch
214 Patch10: pom-ng-IPV4OPTSSTRIP-%{_netfilter_snap}.patch
215 Patch11: pom-ng-connlimit-%{_netfilter_snap}.patch
216 Patch12: pom-ng-expire-%{_netfilter_snap}.patch
217 Patch13: pom-ng-fuzzy-%{_netfilter_snap}.patch
218 Patch14: pom-ng-ipv4options-%{_netfilter_snap}.patch
219 Patch15: pom-ng-nth-%{_netfilter_snap}.patch
220 Patch16: pom-ng-osf-%{_netfilter_snap}.patch
221 Patch17: pom-ng-psd-%{_netfilter_snap}.patch
222 Patch18: pom-ng-quota-%{_netfilter_snap}.patch
223 Patch19: pom-ng-random-%{_netfilter_snap}.patch
224 Patch20: pom-ng-set-%{_netfilter_snap}.patch
225 Patch21: pom-ng-time-%{_netfilter_snap}.patch
226 Patch22: pom-ng-u32-%{_netfilter_snap}.patch
229 Patch30: pom-ng-ACCOUNT-%{_netfilter_snap}.patch
230 Patch31: pom-ng-IPMARK-%{_netfilter_snap}.patch
231 Patch32: pom-ng-ROUTE-%{_netfilter_snap}.patch
232 Patch33: pom-ng-TARPIT-%{_netfilter_snap}.patch
233 Patch34: pom-ng-XOR-%{_netfilter_snap}.patch
234 Patch35: pom-ng-account-%{_netfilter_snap}.patch
235 Patch36: ipp2p-0.8.2.patch
236 Patch37: pom-ng-rpc-%{_netfilter_snap}.patch
237 Patch38: pom-ng-unclean-%{_netfilter_snap}.patch
243 # derived from http://dl.sourceforge.net/l7-filter/netfilter-layer7-v2.2.tar.gz
244 Patch49: kernel-2.6.13-2.6.16-layer7-2.2.patch
246 # from http://www.linuximq.net/patchs/linux-2.6.16-imq2.diff
247 Patch50: linux-2.6.16-imq2.diff
249 # from http://bluetooth-alsa.sourceforge.net/sco-mtu.patch
250 Patch51: sco-mtu.patch
253 # from http://fatooh.org/esfq-2.6/current/esfq-kernel.patch
254 Patch53: esfq-kernel.patch
256 Patch54: linux-iforce-trust_ffrm.patch
257 # by Baggins request:
258 # derived from ftp://ftp.cmf.nrl.navy.mil/pub/chas/linux-atm/vbr/vbr-kernel-diffs
259 Patch55: linux-2.6-atm-vbr.patch
260 Patch56: linux-2.6-atmdd.patch
262 Patch57: linux-2.6-cpuset_virtualization.patch
264 # Derived from http://www.skd.de/e_en/products/adapters/pci_64/sk-98xx_v20/software/linux/driver/install-8_31.tar.bz2
265 Patch60: linux-2.6-sk98lin-8.31.2.3.patch
267 Patch70: linux-2.6-suspend2-avoid-redef.patch
268 Patch71: linux-2.6-suspend2-page.patch
269 Patch72: suspend2-2.2.5-for-2.6.16.37-fix.patch
271 Patch80: kernel-ahci-sb600.patch
273 Patch81: linux-2.6-md.patch
274 Patch82: linux-3w-9xxx.patch
276 # vserver from: http://vserver.13thfloor.at/Experimental/patch-2.6.16-vs2.1.1-rc15.diff
277 Patch100: linux-2.6-vs2.1.patch
278 Patch101: linux-2.6-vs2.1-suspend2.patch
279 Patch102: linux-2.6-vs2.1-128IPs.patch
280 Patch103: linux-vcontext-selinux.patch
282 # from http://www.cl.cam.ac.uk/Research/SRG/netos/xen/downloads/xen-3.0.2-src.tgz
283 Patch120: xen-3.0-2.6.16.patch
284 Patch121: linux-xen-page_alloc.patch
286 # from http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/iw266_we20-6.diff
287 Patch140: linux-2.6.16-we20-6.patch
289 Patch200: linux-2.6-ppc-ICE-hacks.patch
290 Patch201: linux-2.6-x86_64-stack-protector.patch
291 Patch202: linux-2.6-unwind-through-signal-frames.patch
293 # Wake-On-Lan patch for nVidia nForce ethernet driver forcedeth
294 Patch250: linux-2.6.16-forcedeth-WON.patch
295 Patch251: linux-nvidia.patch
297 # From ALSA 1.0.13 for nVidia
298 Patch252: linux-alsa-hda.patch
300 Patch300: linux-CVE-2007-4573.patch
302 Patch1000: linux-2.6-grsec-minimal.patch
303 Patch1001: linux-2.6-grsec-wrong-deref.patch
305 Patch1200: linux-2.6-apparmor.patch
306 Patch1201: linux-2.6-apparmor-caps.patch
308 # grsecurity snap for 2.6.16.14
309 # based on http://www.grsecurity.net/~spender/grsecurity-2.1.9-2.6.16.14-200605060936.patch
310 Patch9999: grsecurity-2.1.9-2.6.16.14.patch
311 Patch10000: linux-2.6-grsec-caps.patch
313 URL: http://www.kernel.org/
314 %if %{with xen0} || %{with xenU}
317 BuildRequires: binutils >= 3:2.14.90.0.7
318 %ifarch sparc sparc64
319 BuildRequires: elftoaout
321 BuildRequires: gcc >= 5:3.2
322 BuildRequires: /sbin/depmod
323 # for hostname command
324 BuildRequires: net-tools
325 BuildRequires: perl-base
326 BuildRequires: rpmbuild(macros) >= 1.217
328 Requires(post): coreutils
329 Requires(post): geninitrd >= 2.57
330 Requires(post): module-init-tools >= 0.9.9
332 Requires: geninitrd >= 2.57
333 Requires: module-init-tools >= 0.9.9
334 Provides: %{name}-up = %{epoch}:%{version}-%{release}
335 Provides: kernel = %{epoch}:%{version}-%{release}
336 Provides: kernel(netfilter) = %{_netfilter_snap}
337 Provides: kernel(nf-hipac) = %{_nf_hipac_ver}
338 Provides: kernel(realtime-lsm) = 0.1.1
340 Provides: kernel(xen0) = %{xen_version}
342 Provides: kernel-misc-fuse
343 Provides: kernel-net-hostap = 0.4.4
344 Provides: kernel-net-ieee80211
345 Provides: kernel-net-ipp2p = 1:0.8.0
346 Provides: kernel-net-ipw2100 = 1.1.3
347 Provides: kernel-net-ipw2200 = 1.0.8
348 Provides: module-info
349 Obsoletes: kernel-misc-fuse
350 Obsoletes: kernel-modules
351 Obsoletes: kernel-net-hostap
352 Obsoletes: kernel-net-ieee80211
353 Obsoletes: kernel-net-ipp2p
354 Conflicts: e2fsprogs < %{_e2fsprogs_ver}
355 Conflicts: isdn4k-utils < %{_isdn4k_utils_ver}
356 Conflicts: jfsutils < %{_jfsutils_ver}
357 Conflicts: module-init-tool < %{_module_init_tool_ver}
358 Conflicts: nfs-utils < %{_nfs_utils_ver}
359 Conflicts: oprofile < %{_oprofile_ver}
360 Conflicts: ppp < %{_ppp_ver}
361 Conflicts: procps < %{_procps_ver}
362 Conflicts: quota-tools < %{_quota_tools_ver}
363 %if %{with reiserfs4}
364 Conflicts: reiser4progs < %{_reiser4progs_ver}
366 Conflicts: reiserfsprogs < %{_reiserfsprogs_ver}
367 Conflicts: udev < %{_udev_ver}
368 Conflicts: util-linux < %{_util_linux_ver}
369 Conflicts: vserver-packages
370 Conflicts: xfsprogs < %{_xfsprogs_ver}
371 %if %{with xen0} || %{with xenU}
372 ExclusiveArch: %{ix86} %{x8664}
374 ExclusiveArch: %{ix86} alpha %{x8664} ia64 ppc ppc64 sparc sparc64
377 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
379 # No ELF objects there to strip (skips processing 27k files)
380 %define _noautostrip .*%{_kernelsrcdir}/.*
381 %define _noautochrpath .*%{_kernelsrcdir}/.*
384 %define initrd_dir /boot/efi
386 %define initrd_dir /boot
389 # kernel release (used in filesystem and eventually in uname -r)
390 # modules will be looked from /lib/modules/%{kernel_release}%{?smp}
391 # _localversion is just that without version for "> localversion"
392 %define _localversion %{release}%{xen}
393 %define kernel_release %{version}-%{_localversion}
394 %define _kernelsrcdir /usr/src/linux%{_subname}-%{version}
396 %if "%{_target_base_arch}" != "%{_arch}"
397 %define CrossOpts ARCH=%{_target_base_arch} CROSS_COMPILE=%{_target_cpu}-pld-linux-
398 %define DepMod /bin/true
400 %if "%{_arch}" == "sparc" && "%{_target_base_arch}" == "sparc64"
401 %define DepMod /sbin/depmod
404 %if "%{_arch}" == "x86_64" && "%{_target_base_arch}" == "i386"
405 %define CrossOpts ARCH=%{_target_base_arch}
406 %define DepMod /sbin/depmod
410 %define CrossOpts CC="%{__cc}"
411 %define DepMod /sbin/depmod
415 This package contains the Linux kernel that is used to boot and run
416 your system. It contains few device drivers for specific hardware.
417 Most hardware is instead supported by modules loaded after booting.
420 Das Kernel-Paket enthƤlt den Linux-Kernel (vmlinuz), den Kern des
421 Linux-Betriebssystems. Der Kernel ist fĆ¼r grundliegende
422 Systemfunktionen verantwortlich: Speicherreservierung,
423 ProzeĆ-Management, GerƤte Ein- und Ausgaben, usw.
426 Le package kernel contient le kernel linux (vmlinuz), la partie
427 centrale d'un systĆØme d'exploitation Linux. Le noyau traite les
428 fonctions basiques d'un systĆØme d'exploitation: allocation mĆ©moire,
429 allocation de process, entrƩe/sortie de peripheriques, etc.
432 Pakiet zawiera jĀ±dro Linuksa niezbĆŖdne do prawidĀ³owego dziaĀ³ania
433 Twojego komputera. Zawiera w sobie sterowniki do sprzĆŖtu znajdujĀ±cego
434 siĆŖ w komputerze, takiego jak sterowniki dyskĆ³w itp.
437 Summary: vmlinux - uncompressed kernel image
438 Summary(pl): vmlinux - rozpakowany obraz jĀ±dra
442 vmlinux - uncompressed kernel image.
444 %description vmlinux -l pl
445 vmlinux - rozpakowany obraz jĀ±dra.
448 Summary: DRM kernel modules
449 Summary(pl): Sterowniki DRM
451 Requires(postun): %{name}-up = %{epoch}:%{version}-%{release}
452 Requires: %{name}-up = %{epoch}:%{version}-%{release}
453 Provides: kernel-drm = %{drm_xfree_version}
457 DRM kernel modules (%{drm_xfree_version}).
459 %description drm -l pl
460 Sterowniki DRM (%{drm_xfree_version}).
463 Summary: PCMCIA modules
464 Summary(pl): ModuĀ³y PCMCIA
466 Requires(postun): %{name}-up = %{epoch}:%{version}-%{release}
467 Requires: %{name}-up = %{epoch}:%{version}-%{release}
468 Provides: kernel(pcmcia)
469 Provides: kernel-pcmcia = %{pcmcia_version}
470 Conflicts: pcmcia-cs < %{_pcmcia_cs_ver}
471 Conflicts: pcmciautils < %{_pcmciautils_ver}
475 PCMCIA modules (%{pcmcia_version}).
477 %description pcmcia -l pl
478 ModuĀ³y PCMCIA (%{pcmcia_version}).
481 Summary: Libraries for preparing bootable kernel on PowerPCs
482 Summary(pl): Biblioteki do przygotowania bootowalnego jĀ±dra dla PowerPC
484 Requires: %{name}-up = %{epoch}:%{version}-%{release}
485 Requires: mkvmlinuz >= %{_mkvmlinuz_ver}
489 Libraries for preparing bootable kernel on PowerPCs. Script called
490 mkvmlinuz may be useful for this.
492 %description libs -l pl
493 Biblioteki do przygotowania bootowalnego jĀ±dra dla PowerPC. Skrypt
494 mkvmlinuz moĀæe byƦ do tego przydatny.
497 Summary: ALSA kernel modules
498 Summary(pl): Sterowniki dĀ¼wiĆŖku ALSA
500 Requires(postun): %{name}-up = %{epoch}:%{version}-%{release}
501 Requires: %{name}-up = %{epoch}:%{version}-%{release}
504 %description sound-alsa
505 ALSA (Advanced Linux Sound Architecture) sound drivers.
507 %description sound-alsa -l pl
508 Sterowniki dĀ¼wiĆŖku ALSA (Advanced Linux Sound Architecture).
511 Summary: OSS kernel modules
512 Summary(pl): Sterowniki dĀ¼wiĆŖku OSS
514 Requires(postun): %{name}-up = %{epoch}:%{version}-%{release}
515 Requires: %{name}-up = %{epoch}:%{version}-%{release}
518 %description sound-oss
519 OSS (Open Sound System) drivers.
521 %description sound-oss -l pl
522 Sterowniki dĀ¼wiĆŖku OSS (Open Sound System).
525 Summary: Kernel version %{version} compiled for SMP machines
526 Summary(de): Kernel version %{version} fĆ¼r Multiprozessor-Maschinen
527 Summary(fr): Kernel version %{version} compiler pour les machine Multi-Processeur
528 Summary(pl): JĀ±dro Linuksa w wersji %{version} dla maszyn wieloprocesorowych
530 Requires(post): coreutils
531 Requires(post): geninitrd >= 2.57
532 Requires(post): module-init-tools >= 0.9.9
534 Requires: geninitrd >= 2.26
535 Requires: module-init-tools >= 0.9.9
536 Provides: kernel = %{epoch}:%{version}-%{release}
537 Provides: kernel(netfilter) = %{_netfilter_snap}
538 Provides: kernel(nf-hipac) = %{_nf_hipac_ver}
539 Provides: kernel(realtime-lsm) = 0.1.1
541 Provides: kernel(xen0) = %{xen_version}
543 Provides: kernel-smp-misc-fuse
544 Provides: kernel-smp-net-hostap = 0.4.4
545 Provides: kernel-smp-net-ieee80211
546 Provides: kernel-smp-net-ipp2p = 1:0.8.0
547 Provides: kernel-smp-net-ipw2100 = 1.1.3
548 Provides: kernel-smp-net-ipw2200 = 1.0.8
549 Provides: module-info
550 Obsoletes: kernel-smp-misc-fuse
551 Obsoletes: kernel-smp-net-hostap
552 Obsoletes: kernel-smp-net-ieee80211
553 Obsoletes: kernel-smp-net-ipp2p
554 Conflicts: e2fsprogs < %{_e2fsprogs_ver}
555 Conflicts: isdn4k-utils < %{_isdn4k_utils_ver}
556 Conflicts: jfsutils < %{_jfsutils_ver}
557 Conflicts: module-init-tool < %{_module_init_tool_ver}
558 Conflicts: nfs-utils < %{_nfs_utils_ver}
559 Conflicts: oprofile < %{_oprofile_ver}
560 Conflicts: ppp < %{_ppp_ver}
561 Conflicts: procps < %{_procps_ver}
562 Conflicts: quota-tools < %{_quota_tools_ver}
563 %if %{with reiserfs4}
564 Conflicts: reiser4progs < %{_reiser4progs_ver}
566 Conflicts: reiserfsprogs < %{_reiserfsprogs_ver}
567 Conflicts: util-linux < %{_util_linux_ver}
568 Conflicts: vserver-packages
569 Conflicts: xfsprogs < %{_xfsprogs_ver}
573 This package includes a SMP version of the Linux %{version} kernel. It
574 is required only on machines with two or more CPUs, although it should
575 work fine on single-CPU boxes.
577 %description smp -l de
578 Dieses Paket enthƤlt eine SMP (Multiprozessor)-Version von
579 Linux-Kernel %{version}. Es wird fĆ¼r Maschinen mit zwei oder mehr
580 Prozessoren gebraucht, sollte aber auch auf Computern mit nur einer
583 %description smp -l fr
584 Ce package inclu une version SMP du noyau de Linux version {version}.
585 Il et nƩcessaire seulement pour les machine avec deux processeurs ou
586 plus, il peut quand mĆŖme fonctionner pour les systĆØme mono-processeur.
588 %description smp -l pl
589 Pakiet zawiera jĀ±dro SMP Linuksa w wersji %{version}. Jest ono
590 wymagane przez komputery zawierajĀ±ce dwa lub wiĆŖcej procesorĆ³w.
591 Powinno rĆ³wnieĀæ dobrze dziaĀ³aƦ na maszynach z jednym procesorem.
594 Summary: vmlinux - uncompressed SMP kernel image
595 Summary(pl): vmlinux - rozpakowany obraz jĀ±dra SMP
598 %description smp-vmlinux
599 vmlinux - uncompressed SMP kernel image.
601 %description smp-vmlinux -l pl
602 vmlinux - rozpakowany obraz jĀ±dra SMP.
605 Summary: DRM SMP kernel modules
606 Summary(pl): Sterowniki DRM dla maszyn wieloprocesorowych
608 Requires(postun): %{name}-smp = %{epoch}:%{version}-%{release}
609 Requires: %{name}-smp = %{epoch}:%{version}-%{release}
610 Provides: kernel-drm = %{drm_xfree_version}
614 DRM SMP kernel modules (%{drm_xfree_version}).
616 %description smp-drm -l pl
617 Sterowniki DRM dla maszyn wieloprocesorowych (%{drm_xfree_version}).
620 Summary: PCMCIA modules for SMP kernel
621 Summary(pl): ModuĀ³y PCMCIA dla maszyn SMP
623 Requires(postun): %{name}-smp = %{epoch}:%{version}-%{release}
624 Requires: %{name}-smp = %{epoch}:%{version}-%{release}
625 Provides: kernel(pcmcia)
626 Provides: kernel-pcmcia = %{pcmcia_version}
627 Conflicts: pcmcia-cs < %{_pcmcia_cs_ver}
628 Conflicts: pcmciautils < %{_pcmciautils_ver}
631 %description smp-pcmcia
632 PCMCIA modules for SMP kernel (%{pcmcia_version}).
634 %description smp-pcmcia -l pl
635 ModuĀ³y PCMCIA dla maszyn SMP (%{pcmcia_version}).
638 Summary: Libraries for preparing bootable SMP kernel on PowerPCs
639 Summary(pl): Biblioteki do przygotowania bootowalnego jĀ±dra dla wieloprocesorowych PowerPC
641 Requires: %{name}-smp = %{epoch}:%{version}-%{release}
642 Requires: mkvmlinuz >= %{_mkvmlinuz_ver}
645 %description smp-libs
646 Libraries for preparing bootable SMP kernel on PowerPCs. Script called
647 mkvmlinuz may be useful for this.
649 %description smp-libs -l pl
650 Biblioteki do przygotowania bootowalnego jĀ±dra dla wieloprocesorowych
651 PowerPC. Skrypt mkvmlinuz moĀæe byƦ do tego przydatny.
653 %package smp-sound-alsa
654 Summary: ALSA SMP kernel modules
655 Summary(pl): Sterowniki dĀ¼wiĆŖku ALSA dla maszyn wieloprocesorowych
657 Requires(postun): %{name}-smp = %{epoch}:%{version}-%{release}
658 Requires: %{name}-smp = %{epoch}:%{version}-%{release}
661 %description smp-sound-alsa
662 ALSA (Advanced Linux Sound Architecture) SMP sound drivers.
664 %description smp-sound-alsa -l pl
665 Sterowniki dĀ¼wiĆŖku ALSA (Advanced Linux Sound Architecture) dla maszyn
668 %package smp-sound-oss
669 Summary: OSS SMP kernel modules
670 Summary(pl): Sterowniki dĀ¼wiĆŖku OSS dla maszyn wieloprocesorowych
672 Requires(postun): %{name}-smp = %{epoch}:%{version}-%{release}
673 Requires: %{name}-smp = %{epoch}:%{version}-%{release}
676 %description smp-sound-oss
677 OSS (Open Sound System) SMP sound drivers.
679 %description smp-sound-oss -l pl
680 Sterowniki OSS (Open Sound System) dla maszyn wieloprocesorowych.
683 Summary: Header files for the Linux kernel
684 Summary(pl): Pliki nagĀ³Ć³wkowe jĀ±dra Linuksa
685 Group: Development/Building
686 Provides: kernel-headers = %{epoch}:%{version}-%{release}
687 Provides: kernel-headers(agpgart) = %{version}
688 Provides: kernel-headers(alsa-drivers)
689 Provides: kernel-headers(bridging) = %{version}
690 Provides: kernel-headers(netfilter) = %{_netfilter_snap}
691 Provides: kernel-headers(reiserfs) = %{version}
695 These are the C header files for the Linux kernel, which define
696 structures and constants that are needed when rebuilding the kernel or
697 building kernel modules.
699 %description headers -l pl
700 Pakiet zawiera pliki nagĀ³Ć³wkowe jĀ±dra, niezbĆŖdne do rekompilacji jĀ±dra
701 oraz budowania moduĀ³Ć³w jĀ±dra.
703 %package module-build
704 Summary: Development files for building kernel modules
705 Summary(pl): Pliki sĀ³uĀæĀ±ce do budowania moduĀ³Ć³w jĀ±dra
706 Group: Development/Building
707 Requires: %{name}-headers = %{epoch}:%{version}-%{release}
708 Provides: kernel-module-build = %{epoch}:%{_basever}
709 Provides: kernel-module-build = %{epoch}:%{version}-%{release}
712 %description module-build
713 Development files from kernel source tree needed to build Linux kernel
714 modules from external packages.
716 %description module-build -l pl
717 Pliki ze drzewa Ā¼rĆ³deĀ³ jĀ±dra potrzebne do budowania moduĀ³Ć³w jĀ±dra
718 Linuksa z zewnĆŖtrznych pakietĆ³w.
721 Summary: Kernel source tree
722 Summary(pl): Kod Ā¼rĆ³dĀ³owy jĀ±dra Linuksa
723 Group: Development/Building
724 Requires: %{name}-module-build = %{epoch}:%{version}-%{release}
725 Provides: kernel-source = %{epoch}:%{version}-%{release}
729 This is the source code for the Linux kernel. You can build a custom kernel
730 that is better tuned to your particular hardware.
732 %description source -l de
733 Das Kernel-Source-Paket enthƤlt den source code (C/Assembler-Code) des
734 Linux-Kernels. Die Source-Dateien werden gebraucht, um viele
735 C-Programme zu compilieren, da sie auf Konstanten zurĆ¼ckgreifen, die
736 im Kernel-Source definiert sind. Die Source-Dateien kƶnnen auch
737 benutzt werden, um einen Kernel zu compilieren, der besser auf Ihre
738 Hardware ausgerichtet ist.
740 %description source -l fr
741 Le package pour le kernel-source contient le code source pour le noyau
742 linux. Ces sources sont nƩcessaires pour compiler la plupart des
743 programmes C, car il dƩpend de constantes dƩfinies dans le code
744 source. Les sources peuvent ĆŖtre aussi utilisĆ©e pour compiler un noyau
745 personnalisƩ pour avoir de meilleures performances sur des matƩriels
748 %description source -l pl
749 Pakiet zawiera kod Ā¼rĆ³dĀ³owy jĀ±dra systemu.
752 Summary: Kernel documentation
753 Summary(pl): Dokumentacja do jĀ±dra Linuksa
755 Provides: kernel-doc = %{version}
759 This is the documentation for the Linux kernel, as found in
760 /usr/src/linux/Documentation directory.
762 %description doc -l pl
763 Pakiet zawiera dokumentacjĆŖ do jĀ±dra Linuksa pochodzĀ±cĀ± z katalogu
764 /usr/src/linux/Documentation.
767 %setup -q -n linux-%{_basever} -a10
768 %{__bzip2} -dc %{SOURCE3} | patch -p1 -s
771 install %{SOURCE5} Makefile.ppclibs
777 for i in suspend2-%{suspend_version}-for-2.6.16.9/[0-9]*; do
780 rm -rf suspend2-%{suspend_version}-for-2.6.16.9
786 %if %{with reiserfs4}
787 %{__gzip} -dc %{SOURCE12} | %{__patch} -s -p1
793 %if %{with bootsplash}
800 %{?with_vesafb_tng:%patch5 -p1}
854 %ifarch %{ix86} %{x8664} ia64
870 %if %{with xen0} || %{with xenU}
871 %ifarch %{ix86} %{x8664} ia64
885 %ifarch ppc ppc64 %{ix86} %{x8664}
899 %if %{with grsec_minimal}
902 %if %{with grsec_full}
912 %if %{with grsecurity}
916 # Fix EXTRAVERSION in main Makefile
917 sed -i 's#EXTRAVERSION =.*#EXTRAVERSION = %{_postver}#g' Makefile
919 # on sparc this line causes CONFIG_INPUT=m (instead of =y), thus breaking build
920 sed -i -e '/select INPUT/d' net/bluetooth/hidp/Kconfig
922 # cleanup backups after patching
923 find . '(' -name '*~' -o -name '*.orig' -o -name '.gitignore' ')' -print0 | xargs -0 -r -l512 rm -f
926 TuneUpConfigForIX86 () {
929 [ "$2" = "yes" ] && pae=yes
934 sed -i 's:CONFIG_M386=y:# CONFIG_M386 is not set:' $1
937 sed -i 's:# CONFIG_M486 is not set:CONFIG_M486=y:' $1
940 sed -i 's:# CONFIG_M586 is not set:CONFIG_M586=y:' $1
943 sed -i 's:# CONFIG_M686 is not set:CONFIG_M686=y:' $1
946 sed -i 's:# CONFIG_MPENTIUMIII is not set:CONFIG_MPENTIUMIII=y:' $1
949 sed -i 's:# CONFIG_MPENTIUM4 is not set:CONFIG_MPENTIUM4=y:' $1
952 sed -i 's:# CONFIG_MK7 is not set:CONFIG_MK7=y:' $1
954 %ifarch i686 athlon pentium3 pentium4
955 if [ "$pae" = "yes" ]; then
956 sed -i "s:CONFIG_HIGHMEM4G=y:# CONFIG_HIGHMEM4G is not set:" $1
957 sed -i "s:# CONFIG_HIGHMEM64G is not set:CONFIG_HIGHMEM64G=y\nCONFIG_X86_PAE=y:" $1
959 sed -i 's:CONFIG_MATH_EMULATION=y:# CONFIG_MATH_EMULATION is not set:' $1
967 # is this a special kernel we want to build?
969 [ "$1" = "smp" -o "$2" = "smp" ] && smp=yes
970 if [ "$smp" = "yes" ]; then
971 Config="%{_target_base_arch}-smp"
973 Config="%{_target_base_arch}"
975 KernelVer=%{kernel_release}$1
977 echo "Building config file [using $Config.conf] for KERNEL $1..."
978 cat $RPM_SOURCE_DIR/kernel-$Config.config > arch/%{_target_base_arch}/defconfig
980 TuneUpConfigForIX86 arch/%{_target_base_arch}/defconfig "$smp"
983 if [ "$smp" = "yes" ]; then
984 install %{SOURCE31} arch/%{_target_base_arch}/defconfig
986 install %{SOURCE30} arch/%{_target_base_arch}/defconfig
991 sed -i "s:# CONFIG_PPC64 is not set:CONFIG_PPC64=y:" arch/%{_target_base_arch}/defconfig
995 cat %{SOURCE40} >> arch/%{_target_base_arch}/defconfig
997 cat %{SOURCE41} >> arch/%{_target_base_arch}/defconfig
999 cat %{SOURCE42} >> arch/%{_target_base_arch}/defconfig
1001 sed -i "s:CONFIG_SUSPEND2=y:# CONFIG_SUSPEND2 is not set:" arch/%{_target_base_arch}/defconfig
1004 cat %{SOURCE43} >> arch/%{_target_base_arch}/defconfig
1006 cat %{SOURCE44} >> arch/%{_target_base_arch}/defconfig
1008 %if %{with grsecurity}
1010 cat %{SOURCE49} >> arch/%{_target_base_arch}/defconfig
1012 cat %{SOURCE45} >> arch/%{_target_base_arch}/defconfig
1016 %if %{with xen0} || %{with xenU}
1017 sed -i "s:CONFIG_X86_PC=y:# CONFIG_X86_PC is not set:" arch/%{_target_base_arch}/defconfig
1018 sed -i "s:CONFIG_RIO=[ym]:# CONFIG_RIO is not set:" arch/%{_target_base_arch}/defconfig
1020 # framebuffer devices generally don't work with xen
1021 # and kernel will crash on boot if vesafb-tng is compiled in (even if off by default)
1022 sed -i "s:CONFIG_FB=y:# CONFIG_FB is not set:" arch/%{_target_base_arch}/defconfig
1024 cat %{SOURCE48} >> arch/%{_target_base_arch}/defconfig
1028 cat %{SOURCE46} >> arch/%{_target_base_arch}/defconfig
1032 cat %{SOURCE47} >> arch/%{_target_base_arch}/defconfig
1036 echo "CONFIG_FB_SPLASH=y" >> arch/%{_target_base_arch}/defconfig
1038 echo "CONFIG_BOOTSPLASH=y" >> arch/%{_target_base_arch}/defconfig
1041 sed -i "s:CONFIG_NFS_FS=m:CONFIG_NFS_FS=y:" arch/%{_target_base_arch}/defconfig
1042 echo "CONFIG_ROOT_NFS=y" >> arch/%{_target_base_arch}/defconfig
1045 %if %{with ext2compiled}
1046 sed -i 's,CONFIG_EXT2_FS=m,CONFIG_EXT2_FS=y,' arch/%{_target_base_arch}/defconfig
1049 %{?debug:sed -i "s:# CONFIG_DEBUG_SLAB is not set:CONFIG_DEBUG_SLAB=y:" arch/%{_target_base_arch}/defconfig}
1050 %{?debug:sed -i "s:# CONFIG_DEBUG_PREEMPT is not set:CONFIG_DEBUG_PREEMPT=y:" arch/%{_target_base_arch}/defconfig}
1051 %{?debug:sed -i "s:# CONFIG_RT_DEADLOCK_DETECT is not set:CONFIG_RT_DEADLOCK_DETECT=y:" arch/%{_target_base_arch}/defconfig}
1053 if [ "$smp" = "yes" ]; then
1054 sed -e 's:CONFIG_LOCALVERSION="":CONFIG_LOCALVERSION="smp":' \
1055 -i arch/%{_target_base_arch}/defconfig
1058 ln -sf arch/%{_target_base_arch}/defconfig .config
1059 install -d $KERNEL_INSTALL_DIR%{_kernelsrcdir}/include/linux
1060 rm -f include/linux/autoconf.h
1061 %{__make} %CrossOpts include/linux/autoconf.h
1062 if [ "$smp" = "yes" ]; then
1063 install include/linux/autoconf.h \
1064 $KERNEL_INSTALL_DIR%{_kernelsrcdir}/include/linux/autoconf-smp.h
1066 $KERNEL_INSTALL_DIR%{_kernelsrcdir}/config-smp
1068 install include/linux/autoconf.h \
1069 $KERNEL_INSTALL_DIR%{_kernelsrcdir}/include/linux/autoconf-up.h
1071 $KERNEL_INSTALL_DIR%{_kernelsrcdir}/config-up
1077 echo "Building kernel${1:+ $1}..."
1078 %{__make} %CrossOpts mrproper \
1079 RCS_FIND_IGNORE='-name build-done -prune -o'
1080 ln -sf arch/%{_target_base_arch}/defconfig .config
1083 sparc32 %{__make} clean \
1084 RCS_FIND_IGNORE='-name build-done -prune -o'
1086 %{__make} %CrossOpts clean \
1087 RCS_FIND_IGNORE='-name build-done -prune -o'
1089 %{__make} %CrossOpts include/linux/version.h \
1090 %{?with_verbose:V=1}
1092 # make does vmlinux, modules and bzImage at once
1093 %ifarch sparc sparc64
1095 %{__make} %CrossOpts image \
1096 %{?with_verbose:V=1}
1098 %{__make} %CrossOpts modules \
1099 %{?with_verbose:V=1}
1102 %{?with_verbose:V=1}
1105 %{__make} %CrossOpts \
1106 %if %{with xen0} || %{with xenU}
1109 %{?with_verbose:V=1}
1113 PreInstallKernel() {
1115 [ "$1" = "smp" -o "$2" = "smp" ] && smp=yes
1116 if [ "$smp" = "yes" ]; then
1117 Config="%{_target_base_arch}-smp"
1119 Config="%{_target_base_arch}"
1121 KernelVer=%{kernel_release}$1
1123 mkdir -p $KERNEL_INSTALL_DIR/boot
1124 install System.map $KERNEL_INSTALL_DIR/boot/System.map-$KernelVer
1125 %ifarch %{ix86} %{x8664}
1126 %if %{with xen0} || %{with xenU}
1127 install vmlinuz $KERNEL_INSTALL_DIR/boot/vmlinuz-$KernelVer
1129 install arch/%{_target_base_arch}/boot/bzImage $KERNEL_INSTALL_DIR/boot/vmlinuz-$KernelVer
1131 install vmlinux $KERNEL_INSTALL_DIR/boot/vmlinux-$KernelVer
1133 %ifarch alpha sparc sparc64
1134 gzip -cfv vmlinux > vmlinuz
1135 install vmlinux $KERNEL_INSTALL_DIR/boot/vmlinux-$KernelVer
1136 install vmlinuz $KERNEL_INSTALL_DIR/boot/vmlinuz-$KernelVer
1138 elftoaout arch/sparc/boot/image -o vmlinux.aout
1139 install vmlinux.aout $KERNEL_INSTALL_DIR/boot/vmlinux.aout-$KernelVer
1142 elftoaout arch/sparc64/boot/image -o vmlinux.aout
1143 install vmlinux.aout $KERNEL_INSTALL_DIR/boot/vmlinux.aout-$KernelVer
1147 install vmlinux $KERNEL_INSTALL_DIR/boot/vmlinux-$KernelVer
1148 install vmlinux $KERNEL_INSTALL_DIR/boot/vmlinuz-$KernelVer
1151 %{__make} -f Makefile.ppclibs install \
1152 DESTDIR=$KERNEL_INSTALL_DIR/boot/libs-$KernelVer
1155 gzip -cfv vmlinux > vmlinuz
1156 install -d $KERNEL_INSTALL_DIR/boot/efi
1157 install vmlinuz $KERNEL_INSTALL_DIR/boot/efi/vmlinuz-$KernelVer
1158 ln -sf efi/vmlinuz-$KernelVer $KERNEL_INSTALL_DIR/boot/vmlinuz-$KernelVer
1160 %{__make} %CrossOpts modules_install \
1161 %{?with_verbose:V=1} \
1163 INSTALL_MOD_PATH=$KERNEL_INSTALL_DIR \
1164 KERNELRELEASE=$KernelVer
1166 if [ "$smp" = "yes" ]; then
1167 install Module.symvers \
1168 $KERNEL_INSTALL_DIR%{_kernelsrcdir}/Module.symvers-smp
1170 install Module.symvers \
1171 $KERNEL_INSTALL_DIR%{_kernelsrcdir}/Module.symvers-up
1174 echo "CHECKING DEPENDENCIES FOR KERNEL MODULES"
1175 if [ %DepMod = /sbin/depmod ]; then
1176 /sbin/depmod --basedir $KERNEL_INSTALL_DIR -ae -F $KERNEL_INSTALL_DIR/boot/System.map-$KernelVer -r $KernelVer || :
1178 touch $KERNEL_INSTALL_DIR/lib/modules/$KernelVer/modules.dep
1180 echo "KERNEL RELEASE $KernelVer DONE"
1183 KERNEL_BUILD_DIR=`pwd`
1184 echo "-%{_localversion}" > localversion
1186 #install -m 644 %{SOURCE50} FAQ-pl
1189 KERNEL_INSTALL_DIR="$KERNEL_BUILD_DIR/build-done/kernel-UP"
1190 rm -rf $KERNEL_INSTALL_DIR
1198 KERNEL_INSTALL_DIR="$KERNEL_BUILD_DIR/build-done/kernel-SMP"
1199 rm -rf $KERNEL_INSTALL_DIR
1203 PreInstallKernel smp
1207 rm -rf $RPM_BUILD_ROOT
1208 install -d $RPM_BUILD_ROOT
1211 # test if we can hardlink -- %{_builddir} and $RPM_BUILD_ROOT on same partition
1212 if cp -al COPYING $RPM_BUILD_ROOT/COPYING 2>/dev/null; then
1214 rm -f $RPM_BUILD_ROOT/COPYING
1217 export DEPMOD=%DepMod
1219 install -d $RPM_BUILD_ROOT%{_kernelsrcdir}
1220 install -d $RPM_BUILD_ROOT%{_sysconfdir}/modprobe.d/%{kernel_release}{,smp}
1222 KERNEL_BUILD_DIR=`pwd`
1224 %if %{with up} || %{with smp}
1225 cp -a$l $KERNEL_BUILD_DIR/build-done/kernel-*/* $RPM_BUILD_ROOT
1228 for i in "" smp ; do
1229 if [ -e $RPM_BUILD_ROOT/lib/modules/%{kernel_release}$i ] ; then
1230 rm -f $RPM_BUILD_ROOT/lib/modules/%{kernel_release}$i/build
1231 ln -sf %{_kernelsrcdir} \
1232 $RPM_BUILD_ROOT/lib/modules/%{kernel_release}$i/build
1233 install -d $RPM_BUILD_ROOT/lib/modules/%{kernel_release}$i/{cluster,misc}
1237 find . -maxdepth 1 ! -name "build-done" ! -name "." -exec cp -a$l "{}" "$RPM_BUILD_ROOT%{_kernelsrcdir}/" ";"
1239 cd $RPM_BUILD_ROOT%{_kernelsrcdir}
1241 %{__make} %CrossOpts mrproper \
1242 RCS_FIND_IGNORE='-name build-done -prune -o'
1244 if [ -e $KERNEL_BUILD_DIR/build-done/kernel-UP%{_kernelsrcdir}/include/linux/autoconf-up.h ]; then
1245 install $KERNEL_BUILD_DIR/build-done/kernel-UP%{_kernelsrcdir}/include/linux/autoconf-up.h \
1246 $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux
1247 install $KERNEL_BUILD_DIR/build-done/kernel-UP%{_kernelsrcdir}/config-up \
1248 $RPM_BUILD_ROOT%{_kernelsrcdir}
1251 if [ -e $KERNEL_BUILD_DIR/build-done/kernel-SMP%{_kernelsrcdir}/include/linux/autoconf-smp.h ]; then
1252 install $KERNEL_BUILD_DIR/build-done/kernel-SMP%{_kernelsrcdir}/include/linux/autoconf-smp.h \
1253 $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux
1254 install $KERNEL_BUILD_DIR/build-done/kernel-SMP%{_kernelsrcdir}/config-smp \
1255 $RPM_BUILD_ROOT%{_kernelsrcdir}
1258 %if %{with up} || %{with smp}
1260 install $KERNEL_BUILD_DIR/build-done/kernel-*%{_kernelsrcdir}/include/linux/* \
1261 $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux
1264 %{__make} %CrossOpts mrproper
1265 %{__make} %CrossOpts include/linux/version.h
1266 install %{SOURCE1} $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux/autoconf.h
1267 install %{SOURCE2} $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux/config.h
1269 # collect module-build files and directories
1270 perl %{SOURCE7} %{_kernelsrcdir} $KERNEL_BUILD_DIR
1272 %if %{with up} || %{with smp}
1274 touch $RPM_BUILD_ROOT/boot/initrd-%{kernel_release}{,smp}.gz
1278 rm -rf $RPM_BUILD_ROOT
1281 rm -f /lib/modules/%{kernel_release}/modules.*
1282 if [ -x /sbin/new-kernel-pkg ]; then
1283 /sbin/new-kernel-pkg --remove %{kernel_release}
1288 mv -f /boot/efi/vmlinuz%{dashxen} /boot/efi/vmlinuz%{dashxen}.old 2> /dev/null > /dev/null
1290 mv -f /boot/vmlinuz%{dashxen} /boot/vmlinuz%{dashxen}.old 2> /dev/null > /dev/null
1291 mv -f /boot/System.map%{dashxen} /boot/System.map%{dashxen}.old 2> /dev/null > /dev/null
1293 ln -sf vmlinuz-%{kernel_release} /boot/efi/vmlinuz%{dashxen}
1295 ln -sf vmlinuz-%{kernel_release} /boot/vmlinuz%{dashxen}
1296 ln -sf System.map-%{kernel_release} /boot/System.map%{dashxen}
1298 %depmod %{kernel_release}
1301 /sbin/geninitrd -f --initrdfs=rom %{initrd_dir}/initrd-%{kernel_release}.gz %{kernel_release}
1302 mv -f %{initrd_dir}/initrd%{dashxen} %{initrd_dir}/initrd%{dashxen}.old 2> /dev/null > /dev/null
1303 ln -sf initrd-%{kernel_release}.gz %{initrd_dir}/initrd%{dashxen}
1305 if [ -x /sbin/new-kernel-pkg ]; then
1306 if [ -f /etc/pld-release ]; then
1307 title=$(sed 's/^[0-9.]\+ //' < /etc/pld-release)
1312 ext='%{?with_pax:pax}%{?with_grsec_full:grsecurity}%{?with_xen0:Xen0}%{?with_xenU:XenU}'
1317 /sbin/new-kernel-pkg --initrdfile=%{initrd_dir}/initrd-%{kernel_release}.gz --install %{kernel_release} --banner "$title"
1318 elif [ -x /sbin/rc-boot ]; then
1319 /sbin/rc-boot 1>&2 || :
1324 mv -f /boot/vmlinux%{dashxen} /boot/vmlinux%{dashxen}.old 2> /dev/null > /dev/null
1325 ln -sf vmlinux-%{kernel_release} /boot/vmlinux%{dashxen}
1328 %{_sbindir}/mkvmlinuz /boot/zImage-%{version}-%{release} %{version}-%{release}
1331 %depmod %{kernel_release}
1334 %depmod %{kernel_release}
1337 %depmod %{kernel_release}
1340 %depmod %{kernel_release}
1343 %depmod %{kernel_release}
1346 %depmod %{kernel_release}
1349 %depmod %{kernel_release}
1352 %depmod %{kernel_release}
1355 rm -f /lib/modules/%{kernel_release}smp/modules.*
1356 if [ -x /sbin/new-kernel-pkg ]; then
1357 /sbin/new-kernel-pkg --remove %{kernel_release}smp
1362 mv -f /boot/efi/vmlinuz /boot/efi/vmlinuz.old 2> /dev/null > /dev/null
1364 mv -f /boot/vmlinuz%{dashxen} /boot/vmlinuz%{dashxen}.old 2> /dev/null > /dev/null
1365 mv -f /boot/System.map%{dashxen} /boot/System.map%{dashxen}.old 2> /dev/null > /dev/null
1367 ln -sf vmlinuz-%{version}-%{release}smp /boot/efi/vmlinuz
1369 ln -sf vmlinuz-%{kernel_release}smp /boot/vmlinuz%{dashxen}
1370 ln -sf System.map-%{kernel_release}smp /boot/System.map%{dashxen}
1372 %depmod %{kernel_release}smp
1375 /sbin/geninitrd -f --initrdfs=rom %{initrd_dir}/initrd-%{kernel_release}smp.gz %{kernel_release}smp
1376 mv -f %{initrd_dir}/initrd%{dashxen} %{initrd_dir}/initrd%{dashxen}.old 2> /dev/null > /dev/null
1377 ln -sf initrd-%{kernel_release}smp.gz %{initrd_dir}/initrd%{dashxen}
1379 if [ -x /sbin/new-kernel-pkg ]; then
1380 if [ -f /etc/pld-release ]; then
1381 title=$(sed 's/^[0-9.]\+ //' < /etc/pld-release)
1386 ext='%{?with_pax:pax}%{?with_grsec_full:grsecurity}%{?with_xen0:Xen0}%{?with_xenU:XenU}'
1391 /sbin/new-kernel-pkg --initrdfile=%{initrd_dir}/initrd-%{kernel_release}smp.gz --install %{kernel_release}smp --banner "$title"
1392 elif [ -x /sbin/rc-boot ]; then
1393 /sbin/rc-boot 1>&2 || :
1398 mv -f /boot/vmlinux%{dashxen} /boot/vmlinux%{dashxen}.old 2> /dev/null > /dev/null
1399 ln -sf vmlinux-%{kernel_release}smp /boot/vmlinux%{dashxen}
1402 %{_sbindir}/mkvmlinuz /boot/zImage-%{version}-%{release}smp %{version}-%{release}smp
1405 %depmod %{kernel_release}smp
1408 %depmod %{kernel_release}smp
1411 %depmod %{kernel_release}smp
1414 %depmod %{kernel_release}smp
1416 %post smp-sound-alsa
1417 %depmod %{kernel_release}smp
1419 %postun smp-sound-alsa
1420 %depmod %{kernel_release}smp
1423 %depmod %{kernel_release}smp
1425 %postun smp-sound-oss
1426 %depmod %{kernel_release}smp
1429 rm -f %{_prefix}/src/linux%{_subname}
1430 ln -snf %{basename:%{_kernelsrcdir}} %{_prefix}/src/linux%{_subname}
1433 if [ "$1" = "0" ]; then
1434 if [ -L %{_prefix}/src/linux%{_subname} ]; then
1435 if [ "$(readlink %{_prefix}/src/linux%{_subname})" = "linux%{_subname}-%{version}" ]; then
1436 rm -f %{_prefix}/src/linux%{_subname}
1443 %defattr(644,root,root,755)
1445 %ifarch sparc sparc64
1446 /boot/vmlinux.aout-%{kernel_release}
1449 /boot/efi/vmlinuz-%{kernel_release}
1451 /boot/vmlinuz-%{kernel_release}
1452 /boot/System.map-%{kernel_release}
1453 %ghost /boot/initrd-%{kernel_release}.gz
1454 %dir /lib/modules/%{kernel_release}
1455 %dir /lib/modules/%{kernel_release}/kernel
1457 /lib/modules/%{kernel_release}/kernel/arch
1459 /lib/modules/%{kernel_release}/kernel/crypto
1460 /lib/modules/%{kernel_release}/kernel/drivers
1462 %exclude /lib/modules/%{kernel_release}/kernel/drivers/char/drm
1464 %if %{have_oss} && %{have_isa} && %{without xen0} && %{without xenU}
1465 %exclude /lib/modules/%{kernel_release}/kernel/drivers/media/radio/miropcm20.ko*
1467 /lib/modules/%{kernel_release}/kernel/fs
1468 /lib/modules/%{kernel_release}/kernel/kernel
1469 /lib/modules/%{kernel_release}/kernel/lib
1470 /lib/modules/%{kernel_release}/kernel/net
1471 /lib/modules/%{kernel_release}/kernel/security
1473 %dir /lib/modules/%{kernel_release}/kernel/sound
1474 /lib/modules/%{kernel_release}/kernel/sound/soundcore.*
1476 %dir /lib/modules/%{kernel_release}/misc
1478 %exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia
1479 %exclude /lib/modules/%{kernel_release}/kernel/drivers/*/pcmcia
1480 %exclude /lib/modules/%{kernel_release}/kernel/drivers/bluetooth/*_cs.ko*
1481 %exclude /lib/modules/%{kernel_release}/kernel/drivers/ide/legacy/ide-cs.ko*
1482 %exclude /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
1483 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/*_cs.ko*
1484 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/hostap/hostap_cs.ko*
1485 %exclude /lib/modules/%{kernel_release}/kernel/drivers/parport/parport_cs.ko*
1486 %exclude /lib/modules/%{kernel_release}/kernel/drivers/serial/serial_cs.ko*
1487 %exclude /lib/modules/%{kernel_release}/kernel/drivers/telephony/ixj_pcmcia.ko*
1488 %exclude /lib/modules/%{kernel_release}/kernel/drivers/usb/host/sl811_cs.ko*
1490 %ghost /lib/modules/%{kernel_release}/modules.*
1491 %dir %{_sysconfdir}/modprobe.d/%{kernel_release}
1493 %ifarch alpha %{ix86} %{x8664} ppc ppc64 sparc sparc64
1495 %defattr(644,root,root,755)
1496 /boot/vmlinux-%{kernel_release}
1501 %defattr(644,root,root,755)
1502 /lib/modules/%{kernel_release}/kernel/drivers/char/drm
1507 %defattr(644,root,root,755)
1508 /lib/modules/%{kernel_release}/kernel/drivers/pcmcia
1509 /lib/modules/%{kernel_release}/kernel/drivers/*/pcmcia
1510 /lib/modules/%{kernel_release}/kernel/drivers/bluetooth/*_cs.ko*
1511 /lib/modules/%{kernel_release}/kernel/drivers/ide/legacy/ide-cs.ko*
1512 /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
1513 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/*_cs.ko*
1514 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/hostap/hostap_cs.ko*
1515 /lib/modules/%{kernel_release}/kernel/drivers/parport/parport_cs.ko*
1516 /lib/modules/%{kernel_release}/kernel/drivers/serial/serial_cs.ko*
1517 /lib/modules/%{kernel_release}/kernel/drivers/telephony/ixj_pcmcia.ko*
1518 /lib/modules/%{kernel_release}/kernel/drivers/usb/host/sl811_cs.ko*
1522 %if "%{_arch}" == "ppc"
1524 %defattr(644,root,root,755)
1525 %dir /boot/libs-%{kernel_release}
1526 /boot/libs-%{kernel_release}/common
1527 /boot/libs-%{kernel_release}/kernel
1528 /boot/libs-%{kernel_release}/lib
1529 /boot/libs-%{kernel_release}/of1275
1530 /boot/libs-%{kernel_release}/openfirmware
1531 /boot/libs-%{kernel_release}/simple
1532 %dir /boot/libs-%{kernel_release}/utils
1533 %attr(755,root,root) /boot/libs-%{kernel_release}/utils/*
1534 /boot/libs-%{kernel_release}/ld.script
1540 %defattr(644,root,root,755)
1541 /lib/modules/%{kernel_release}/kernel/sound
1542 %exclude %dir /lib/modules/%{kernel_release}/kernel/sound
1543 %exclude /lib/modules/%{kernel_release}/kernel/sound/soundcore.*
1545 %exclude /lib/modules/%{kernel_release}/kernel/sound/oss
1550 %defattr(644,root,root,755)
1551 /lib/modules/%{kernel_release}/kernel/sound/oss
1552 %if %{have_isa} && %{without xen0} && %{without xenU}
1553 /lib/modules/%{kernel_release}/kernel/drivers/media/radio/miropcm20.ko*
1556 %endif # %%{have_sound}
1557 %endif # %%{with up}
1561 %defattr(644,root,root,755)
1564 /boot/efi/vmlinuz-%{kernel_release}smp
1566 /boot/vmlinuz-%{kernel_release}smp
1567 /boot/System.map-%{kernel_release}smp
1568 %ghost /boot/initrd-%{kernel_release}smp.gz
1569 %dir /lib/modules/%{kernel_release}smp
1570 %dir /lib/modules/%{kernel_release}smp/kernel
1572 /lib/modules/%{kernel_release}smp/kernel/arch
1574 /lib/modules/%{kernel_release}smp/kernel/crypto
1575 /lib/modules/%{kernel_release}smp/kernel/drivers
1577 %exclude /lib/modules/%{kernel_release}smp/kernel/drivers/char/drm
1579 %if %{have_oss} && %{have_isa} && %{without xen0} && %{without xenU}
1580 %exclude /lib/modules/%{kernel_release}smp/kernel/drivers/media/radio/miropcm20.ko*
1582 /lib/modules/%{kernel_release}smp/kernel/fs
1583 /lib/modules/%{kernel_release}smp/kernel/kernel
1584 /lib/modules/%{kernel_release}smp/kernel/lib
1585 /lib/modules/%{kernel_release}smp/kernel/net
1586 /lib/modules/%{kernel_release}smp/kernel/security
1588 %dir /lib/modules/%{kernel_release}smp/kernel/sound
1589 /lib/modules/%{kernel_release}smp/kernel/sound/soundcore.*
1591 %dir /lib/modules/%{kernel_release}smp/misc
1593 %exclude /lib/modules/%{kernel_release}smp/kernel/drivers/pcmcia
1594 %exclude /lib/modules/%{kernel_release}smp/kernel/drivers/*/pcmcia
1595 %exclude /lib/modules/%{kernel_release}smp/kernel/drivers/bluetooth/*_cs.ko*
1596 %exclude /lib/modules/%{kernel_release}smp/kernel/drivers/ide/legacy/ide-cs.ko*
1597 %exclude /lib/modules/%{kernel_release}smp/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
1598 %exclude /lib/modules/%{kernel_release}smp/kernel/drivers/net/wireless/*_cs.ko*
1599 %exclude /lib/modules/%{kernel_release}smp/kernel/drivers/net/wireless/hostap/hostap_cs.ko*
1600 %exclude /lib/modules/%{kernel_release}smp/kernel/drivers/parport/parport_cs.ko*
1601 %exclude /lib/modules/%{kernel_release}smp/kernel/drivers/serial/serial_cs.ko*
1602 %exclude /lib/modules/%{kernel_release}smp/kernel/drivers/telephony/ixj_pcmcia.ko*
1603 %exclude /lib/modules/%{kernel_release}smp/kernel/drivers/usb/host/sl811_cs.ko*
1605 %ghost /lib/modules/%{kernel_release}smp/modules.*
1606 %dir %{_sysconfdir}/modprobe.d/%{kernel_release}smp
1608 %ifarch alpha %{ix86} %{x8664} ppc ppc64 sparc sparc64
1610 %defattr(644,root,root,755)
1611 /boot/vmlinux-%{kernel_release}smp
1616 %defattr(644,root,root,755)
1617 /lib/modules/%{kernel_release}smp/kernel/drivers/char/drm
1622 %defattr(644,root,root,755)
1623 /lib/modules/%{kernel_release}smp/kernel/drivers/pcmcia
1624 /lib/modules/%{kernel_release}smp/kernel/drivers/*/pcmcia
1625 /lib/modules/%{kernel_release}smp/kernel/drivers/bluetooth/*_cs.ko*
1626 /lib/modules/%{kernel_release}smp/kernel/drivers/ide/legacy/ide-cs.ko*
1627 /lib/modules/%{kernel_release}smp/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
1628 /lib/modules/%{kernel_release}smp/kernel/drivers/net/wireless/*_cs.ko*
1629 /lib/modules/%{kernel_release}smp/kernel/drivers/net/wireless/hostap/hostap_cs.ko*
1630 /lib/modules/%{kernel_release}smp/kernel/drivers/parport/parport_cs.ko*
1631 /lib/modules/%{kernel_release}smp/kernel/drivers/serial/serial_cs.ko*
1632 /lib/modules/%{kernel_release}smp/kernel/drivers/telephony/ixj_pcmcia.ko*
1633 /lib/modules/%{kernel_release}smp/kernel/drivers/usb/host/sl811_cs.ko*
1637 %if "%{_arch}" == "ppc"
1639 %defattr(644,root,root,755)
1640 %dir /boot/libs-%{kernel_release}smp
1641 /boot/libs-%{kernel_release}smp/common
1642 /boot/libs-%{kernel_release}smp/kernel
1643 /boot/libs-%{kernel_release}smp/lib
1644 /boot/libs-%{kernel_release}smp/of1275
1645 /boot/libs-%{kernel_release}smp/openfirmware
1646 /boot/libs-%{kernel_release}smp/simple
1647 %dir /boot/libs-%{kernel_release}smp/utils
1648 %attr(755,root,root) /boot/libs-%{kernel_release}smp/utils/*
1649 /boot/libs-%{kernel_release}smp/ld.script
1654 %files smp-sound-alsa
1655 %defattr(644,root,root,755)
1656 /lib/modules/%{kernel_release}smp/kernel/sound
1657 %exclude %dir /lib/modules/%{kernel_release}smp/kernel/sound
1658 %exclude /lib/modules/%{kernel_release}smp/kernel/sound/soundcore.*
1660 %exclude /lib/modules/%{kernel_release}smp/kernel/sound/oss
1664 %files smp-sound-oss
1665 %defattr(644,root,root,755)
1666 /lib/modules/%{kernel_release}smp/kernel/sound/oss
1667 %if %{have_isa} && %{without xen0} && %{without xenU}
1668 /lib/modules/%{kernel_release}smp/kernel/drivers/media/radio/miropcm20.ko*
1671 %endif # %%{have_sound}
1672 %endif # %%{with smp}
1675 %defattr(644,root,root,755)
1676 %dir %{_kernelsrcdir}
1677 %{_kernelsrcdir}/include
1679 %{_kernelsrcdir}/config-smp
1680 %{_kernelsrcdir}/Module.symvers-smp
1682 %{_kernelsrcdir}/config-up
1683 %{?with_up:%{_kernelsrcdir}/Module.symvers-up}
1685 %files module-build -f aux_files
1686 %defattr(644,root,root,755)
1687 # symlinks pointing to kernelsrcdir
1689 %dir /lib/modules/%{kernel_release}
1690 /lib/modules/%{kernel_release}/build
1693 %dir /lib/modules/%{kernel_release}smp
1694 /lib/modules/%{kernel_release}smp/build
1696 %{_kernelsrcdir}/Kbuild
1697 %{_kernelsrcdir}/localversion
1698 %{_kernelsrcdir}/arch/*/kernel/asm-offsets.*
1699 %{_kernelsrcdir}/arch/*/kernel/sigframe.h
1700 %dir %{_kernelsrcdir}/scripts
1701 %dir %{_kernelsrcdir}/scripts/kconfig
1702 %{_kernelsrcdir}/scripts/Kbuild.include
1703 %{_kernelsrcdir}/scripts/Makefile*
1704 %{_kernelsrcdir}/scripts/basic
1705 %{_kernelsrcdir}/scripts/mkmakefile
1706 %{_kernelsrcdir}/scripts/mod
1707 %{_kernelsrcdir}/scripts/setlocalversion
1708 %{_kernelsrcdir}/scripts/*.c
1709 %{_kernelsrcdir}/scripts/*.sh
1710 %{_kernelsrcdir}/scripts/kconfig/*
1713 %defattr(644,root,root,755)
1714 %{_kernelsrcdir}/Documentation
1717 %files source -f aux_files_exc
1718 %defattr(644,root,root,755)
1719 %{_kernelsrcdir}/arch/*/[!Mk]*
1720 %{_kernelsrcdir}/arch/*/kernel/[!M]*
1721 %exclude %{_kernelsrcdir}/arch/*/kernel/asm-offsets.*
1722 %exclude %{_kernelsrcdir}/arch/*/kernel/sigframe.h
1723 %{_kernelsrcdir}/block
1724 %{_kernelsrcdir}/crypto
1725 %{_kernelsrcdir}/drivers
1727 %if %{with grsecurity}
1728 %{_kernelsrcdir}/grsecurity
1730 %{_kernelsrcdir}/init
1731 %{_kernelsrcdir}/ipc
1732 %{_kernelsrcdir}/kernel
1733 %{_kernelsrcdir}/lib
1735 %{_kernelsrcdir}/net
1736 %{_kernelsrcdir}/scripts/*
1737 %exclude %{_kernelsrcdir}/scripts/Kbuild.include
1738 %exclude %{_kernelsrcdir}/scripts/Makefile*
1739 %exclude %{_kernelsrcdir}/scripts/basic
1740 %exclude %{_kernelsrcdir}/scripts/kconfig
1741 %exclude %{_kernelsrcdir}/scripts/mkmakefile
1742 %exclude %{_kernelsrcdir}/scripts/mod
1743 %exclude %{_kernelsrcdir}/scripts/setlocalversion
1744 %exclude %{_kernelsrcdir}/scripts/*.c
1745 %exclude %{_kernelsrcdir}/scripts/*.sh
1746 %{_kernelsrcdir}/sound
1747 %{_kernelsrcdir}/security
1748 %{_kernelsrcdir}/usr
1749 %{_kernelsrcdir}/COPYING
1750 %{_kernelsrcdir}/CREDITS
1751 %{_kernelsrcdir}/MAINTAINERS
1752 %{_kernelsrcdir}/README
1753 %{_kernelsrcdir}/REPORTING-BUGS