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 # - #vserver: try to get a 2.2.x kernel patch or if you like development
8 # features a 2.3.x one instead of the long discontinued 2.1.x you are using
10 # WARNING: Kernels from 2.6.16.X series not work under OldWorldMac
13 %bcond_without smp # don't build SMP kernel
14 %bcond_without up # don't build UP kernel
15 %bcond_without source # don't build kernel-source package
16 %bcond_without pcmcia # don't build pcmcia
18 %bcond_with grsec_full # build full grsecurity
19 %bcond_with pax # build PaX and full grsecurity
20 %bcond_with verbose # verbose build (V=1)
21 %bcond_with xen0 # added Xen0 support
22 %bcond_with xenU # added XenU support
23 %bcond_without grsecurity # don't build grsecurity at all
24 %bcond_without grsec_minimal # build only minimal subset (proc,link,fifo,shm)
26 %bcond_without bootsplash # build with bootsplash instead of fbsplash
27 %bcond_with vesafb_tng # vesafb-tng, vesafb replacement from gentoo
28 %bcond_with pae # build PAE (HIGHMEM64G) support on uniprocessor
29 %bcond_with nfsroot # build with root on NFS support
30 %bcond_with reiserfs4 # build with ReiserFS 4 support
31 %bcond_with ext2compiled # compile ext2 into kernel to be able to boot from ext2 rootfs
33 %{?debug:%define with_verbose 1}
35 %if %{without grsecurity}
36 %undefine with_grsec_full
37 %undefine with_grsec_minimal
42 %undefine with_grsec_minimal
43 %undefine with_grsec_full
44 %define with_grsecurity 1
47 %if %{with grsec_full}
48 %undefine with_grsec_minimal
49 %define with_grsecurity 1
52 %if %{with grsec_minimal}
53 %undefine with_grsec_full
55 %define with_grsecurity 1
59 # sparc32 is missing important updates from 2.5 cycle - won't build.
72 %ifarch %{ix86} alpha ppc
86 %define dashxen \-xen0
91 %define dashxen \-xenU
95 %define dashxen %{nil}
99 ## Programs required by kernel to work.
100 %define _binutils_ver 2.12.1
101 %define _util_linux_ver 2.10o
102 %define _module_init_tool_ver 0.9.10
103 %define _e2fsprogs_ver 1.29
104 %define _jfsutils_ver 1.1.3
105 %define _reiserfsprogs_ver 3.6.3
106 %define _reiser4progs_ver 1.0.0
107 %define _xfsprogs_ver 2.6.0
108 %define _pcmcia_cs_ver 3.1.21
109 %define _pcmciautils_ver 004
110 %define _quota_tools_ver 3.09
111 %define _ppp_ver 1:2.4.0
112 %define _isdn4k_utils_ver 3.1pre1
113 %define _nfs_utils_ver 1.0.5
114 %define _procps_ver 3.2.0
115 %define _oprofile_ver 0.9
116 %define _udev_ver 071
117 %define _mkvmlinuz_ver 1.3
119 %define netfilter_snap 20060504
121 %define _enable_debug_packages 0
123 %define squashfs_version 3.1
124 %define suspend_version 2.2.5
126 %define xen_version 3.0.2
128 # Our Kernel ABI, increase this when you want out of source modules being rebuilt
129 # Usually same as %{_rel}
132 # kernel release (used in filesystem and eventually in uname -r)
133 # modules will be looked from /lib/modules/%{kernel_release}%{?smp}
134 # _localversion is just that without version for "> localversion"
135 %define _localversion %{KABI}%{xen}
136 %define kernel_release %{version}%{subname}-%{_localversion}
138 %define _basever 2.6.16
141 %define subname %{?with_pax:-pax}%{?with_grsec_full:-grsecurity}%{?with_xen0:-xen0}%{?with_xenU:-xenU}
142 Summary: The Linux kernel (the core of the Linux operating system)
143 Summary(de.UTF-8): Der Linux-Kernel (Kern des Linux-Betriebssystems)
144 Summary(et.UTF-8): Linuxi kernel (ehk operatsioonisüsteemi tuum)
145 Summary(fr.UTF-8): Le Kernel-Linux (La partie centrale du systeme)
146 Summary(pl.UTF-8): JÄ…dro Linuksa
147 Name: kernel%{subname}
148 Version: %{_basever}%{_postver}
149 Release: %{_rel}%{?with_ext2compiled:ext2}
153 Source0: http://www.kernel.org/pub/linux/kernel/v2.6/linux-%{_basever}.tar.bz2
154 # Source0-md5: 9a91b2719949ff0856b40bc467fd47be
155 Source1: kernel-autoconf.h
156 Source2: kernel-config.h
157 Source3: http://www.kernel.org/pub/linux/kernel/v2.6/patch-%{version}.bz2
158 # Source3-md5: be03a1889d7c89f208a18b55870e3a6f
160 Source5: kernel-ppclibs.Makefile
161 Source7: kernel-module-build.pl
163 Source10: http://suspend2.net/downloads/all/suspend2-%{suspend_version}-for-2.6.16.9.tar.bz2
164 # Source10-md5: 34345b1f7ad1505f6b264427a21e8a04
165 Source12: ftp://ftp.namesys.com/pub/reiser4-for-2.6/2.6.16/reiser4-for-2.6.16-5.patch.gz
166 # Source12-md5: 6ad22d084e12257781f205ec248e4f64
168 Source20: kernel-i386.config
169 Source21: kernel-i386-smp.config
170 Source22: kernel-x86_64.config
171 Source23: kernel-x86_64-smp.config
172 Source24: kernel-sparc.config
173 Source25: kernel-sparc-smp.config
174 Source26: kernel-sparc64.config
175 Source27: kernel-sparc64-smp.config
176 Source28: kernel-alpha.config
177 Source29: kernel-alpha-smp.config
178 Source30: kernel-ppc.config
179 Source31: kernel-ppc-smp.config
180 Source32: kernel-ia64.config
181 Source33: kernel-ia64-smp.config
183 Source40: kernel-netfilter.config
184 Source41: kernel-squashfs.config
185 Source42: kernel-suspend2.config
186 Source43: kernel-vserver.config
187 Source44: kernel-vesafb-tng.config
188 Source45: kernel-grsec.config
189 Source46: kernel-xen0.config
190 Source47: kernel-xenU.config
191 Source48: kernel-xen-extra.config
192 Source49: kernel-grsec+pax.config
193 Source50: kernel-openswan.config
199 # PATA ports on SATA Promise controller; patch based on:
200 # http://cvs.fedora.redhat.com/viewcvs/*checkout*/rpms/kernel/devel/linux-2.6-sata-promise-pata-ports.patch
202 Patch1: linux-2.6-sata-promise-pata-ports.patch
204 # tahoe9XX http://tahoe.pl/drivers/tahoe9xx-2.6.11.5.patch
205 Patch2: tahoe9xx-2.6.11.5.patch
207 # ftp://ftp.openbios.org/pub/bootsplash/kernel/bootsplash-3.1.6-2.6.15.diff
208 Patch3: bootsplash-3.1.6-2.6.15.diff
209 # http://dev.gentoo.org/~spock/projects/gensplash/archive/fbsplash-0.9.2-r5-2.6.16.patch
210 Patch4: fbsplash-0.9.2-r5-2.6.16.patch
211 Patch5: linux-2.6-vesafb-tng.patch
213 # directly from http://mesh.dl.sourceforge.net/sourceforge/squashfs/squashfs3.1.tar.gz
215 Patch6: squashfs%{squashfs_version}-patch
217 Patch7: linux-alpha-isa.patch
218 Patch8: linux-fbcon-margins.patch
219 Patch9: linux-static-dev.patch
225 Patch10: pom-ng-IPV4OPTSSTRIP-%{netfilter_snap}.patch
226 Patch11: pom-ng-connlimit-%{netfilter_snap}.patch
227 Patch12: pom-ng-expire-%{netfilter_snap}.patch
228 Patch13: pom-ng-fuzzy-%{netfilter_snap}.patch
229 Patch14: pom-ng-ipv4options-%{netfilter_snap}.patch
230 Patch15: pom-ng-nth-%{netfilter_snap}.patch
231 Patch16: pom-ng-osf-%{netfilter_snap}.patch
232 Patch17: pom-ng-psd-%{netfilter_snap}.patch
233 Patch18: pom-ng-quota-%{netfilter_snap}.patch
234 Patch19: pom-ng-random-%{netfilter_snap}.patch
235 Patch20: pom-ng-set-%{netfilter_snap}.patch
236 Patch21: pom-ng-time-%{netfilter_snap}.patch
237 Patch22: pom-ng-u32-%{netfilter_snap}.patch
240 Patch30: pom-ng-ACCOUNT-%{netfilter_snap}.patch
241 Patch31: pom-ng-IPMARK-%{netfilter_snap}.patch
242 Patch32: pom-ng-ROUTE-%{netfilter_snap}.patch
243 Patch33: pom-ng-TARPIT-%{netfilter_snap}.patch
244 Patch34: pom-ng-XOR-%{netfilter_snap}.patch
245 Patch35: pom-ng-account-%{netfilter_snap}.patch
246 Patch36: ipp2p-0.8.2.patch
247 Patch37: pom-ng-rpc-%{netfilter_snap}.patch
248 Patch38: pom-ng-unclean-%{netfilter_snap}.patch
254 # derived from http://dl.sourceforge.net/l7-filter/netfilter-layer7-v2.2.tar.gz
255 Patch49: kernel-2.6.13-2.6.16-layer7-2.2.patch
257 # from http://www.linuximq.net/patchs/linux-2.6.16-imq2.diff
258 Patch50: linux-2.6.16-imq2.diff
260 # from http://bluetooth-alsa.sourceforge.net/sco-mtu.patch
261 Patch51: sco-mtu.patch
264 # from http://fatooh.org/esfq-2.6/current/esfq-kernel.patch
265 Patch53: esfq-kernel.patch
267 Patch54: linux-iforce-trust_ffrm.patch
268 # by Baggins request:
269 # derived from ftp://ftp.cmf.nrl.navy.mil/pub/chas/linux-atm/vbr/vbr-kernel-diffs
270 Patch55: linux-2.6-atm-vbr.patch
271 Patch56: linux-2.6-atmdd.patch
273 Patch57: linux-2.6-cpuset_virtualization.patch
275 # Derived from http://www.skd.de/e_en/products/adapters/pci_64/sk-98xx_v20/software/linux/driver/install-8_31.tar.bz2
276 Patch60: linux-2.6-sk98lin-8.31.2.3.patch
278 Patch70: linux-2.6-suspend2-avoid-redef.patch
279 Patch71: linux-2.6-suspend2-page.patch
280 Patch72: suspend2-2.2.5-for-2.6.16.37-fix.patch
282 Patch80: kernel-ahci-sb600.patch
284 Patch81: linux-2.6-md.patch
285 Patch82: linux-3w-9xxx.patch
287 # From http://www.broadcom.com/support/ethernet_nic/driver-sla.php?driver=570x-Linux
288 Patch83: linux-tg3-3.81c.patch
291 Patch90: http://www.openswan.org/download/openswan-2.4.9.kernel-2.6-klips.patch.gz
292 Patch91: http://www.openswan.org/download/openswan-2.4.9.kernel-2.6-natt.patch.gz
293 Patch92: linux-asm_segment_h.patch
295 # vserver from: http://vserver.13thfloor.at/Experimental/patch-2.6.16-vs2.1.1-rc15.diff
296 Patch100: linux-2.6-vs2.1.patch
297 Patch101: linux-2.6-vs2.1-suspend2.patch
298 Patch102: linux-2.6-vs2.1-128IPs.patch
299 Patch103: linux-vcontext-selinux.patch
300 Patch104: kernel-CVE-2008-0163.patch
302 # from http://www.cl.cam.ac.uk/Research/SRG/netos/xen/downloads/xen-3.0.2-src.tgz
303 Patch120: xen-3.0-2.6.16.patch
304 Patch121: linux-xen-page_alloc.patch
306 # from http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/iw266_we20-6.diff
307 Patch140: linux-2.6.16-we20-6.patch
309 Patch200: linux-2.6-ppc-ICE-hacks.patch
310 Patch201: linux-2.6-x86_64-stack-protector.patch
311 Patch202: linux-2.6-unwind-through-signal-frames.patch
313 # Wake-On-Lan patch for nVidia nForce ethernet driver forcedeth
314 Patch250: linux-2.6.16-forcedeth-WON.patch
315 Patch251: linux-nvidia.patch
317 # From ALSA 1.0.13 for nVidia
318 Patch252: linux-alsa-hda.patch
320 # add tty ioctl to figure physical device of the console. used by showconsole.spec (blogd)
321 Patch256: kernel-TIOCGDEV.patch
323 Patch1000: linux-2.6-grsec-minimal.patch
324 Patch1001: linux-2.6-grsec-wrong-deref.patch
326 Patch1200: linux-2.6-apparmor.patch
327 Patch1201: linux-2.6-apparmor-caps.patch
329 # grsecurity snap for 2.6.16.14
330 # based on http://www.grsecurity.net/~spender/grsecurity-2.1.9-2.6.16.14-200605060936.patch
331 Patch9999: grsecurity-2.1.9-2.6.16.14.patch
332 Patch10000: linux-2.6-grsec-caps.patch
334 URL: http://www.kernel.org/
335 %if %{with xen0} || %{with xenU}
338 BuildRequires: binutils >= 3:2.14.90.0.7
339 %ifarch sparc sparc64
340 BuildRequires: elftoaout
342 BuildRequires: /sbin/depmod
343 BuildRequires: gcc >= 5:3.2
344 # for hostname command
345 BuildRequires: net-tools
346 BuildRequires: perl-base
347 BuildRequires: rpmbuild(macros) >= 1.217
349 Requires(post): coreutils
350 Requires(post): geninitrd >= 2.57
351 Requires(post): module-init-tools >= 0.9.9
352 Requires: /sbin/depmod
354 Requires: geninitrd >= 2.57
355 Requires: module-init-tools >= 0.9.9
356 Provides: %{name}(netfilter) = %{netfilter_snap}
357 Provides: %{name}(vermagic) = %{kernel_release}
358 Provides: %{name}-up = %{epoch}:%{version}-%{release}
360 Provides: kernel(xen0) = %{xen_version}
362 Obsoletes: kernel-misc-fuse
363 Obsoletes: kernel-modules
364 Obsoletes: kernel-net-hostap
365 Obsoletes: kernel-net-ieee80211
366 Obsoletes: kernel-net-ipp2p
367 Conflicts: e2fsprogs < %{_e2fsprogs_ver}
368 Conflicts: isdn4k-utils < %{_isdn4k_utils_ver}
369 Conflicts: jfsutils < %{_jfsutils_ver}
370 Conflicts: module-init-tool < %{_module_init_tool_ver}
371 Conflicts: nfs-utils < %{_nfs_utils_ver}
372 Conflicts: oprofile < %{_oprofile_ver}
373 Conflicts: ppp < %{_ppp_ver}
374 Conflicts: procps < %{_procps_ver}
375 Conflicts: quota-tools < %{_quota_tools_ver}
376 %if %{with reiserfs4}
377 Conflicts: reiser4progs < %{_reiser4progs_ver}
379 Conflicts: reiserfsprogs < %{_reiserfsprogs_ver}
380 Conflicts: udev < %{_udev_ver}
381 Conflicts: util-linux < %{_util_linux_ver}
382 Conflicts: xfsprogs < %{_xfsprogs_ver}
383 %if %{with xen0} || %{with xenU}
384 ExclusiveArch: %{ix86} %{x8664}
385 ExcludeArch: i386 i486 i586
387 ExclusiveArch: %{ix86} alpha %{x8664} ia64 ppc ppc64 sparc sparc64
390 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
392 # No ELF objects there to strip (skips processing 27k files)
393 %define _noautostrip .*%{_kernelsrcdir}/.*
394 %define _noautochrpath .*%{_kernelsrcdir}/.*
397 %define initrd_dir /boot/efi
399 %define initrd_dir /boot
402 %define _kernelsrcdir /usr/src/linux%{subname}-%{version}
404 %if "%{_target_base_arch}" != "%{_arch}"
405 %define CrossOpts ARCH=%{_target_base_arch} CROSS_COMPILE=%{_target_cpu}-pld-linux-
406 %define DepMod /bin/true
408 %if "%{_arch}" == "sparc" && "%{_target_base_arch}" == "sparc64"
409 %define DepMod /sbin/depmod
412 %if "%{_arch}" == "x86_64" && "%{_target_base_arch}" == "i386"
413 %define CrossOpts ARCH=%{_target_base_arch}
414 %define DepMod /sbin/depmod
418 %define CrossOpts CC="%{__cc}"
419 %define DepMod /sbin/depmod
423 This package contains the Linux kernel that is used to boot and run
424 your system. It contains few device drivers for specific hardware.
425 Most hardware is instead supported by modules loaded after booting.
427 Netfilter module dated: %{netfilter_snap}
428 %{?with_grsec_full:Grsecurity full support - enabled}
429 %{?with_pax:PaX support - enabled}
430 %{?with_xen0:Xen 0 - enabled}
431 %{?with_xenU:Xen U - enabled}
432 %{?with_vesafb_tng:VesaFB New generation - enabled}
433 %{?with_nfsroot:Root on NFS - enabled}
435 %description -l de.UTF-8
436 Das Kernel-Paket enthält den Linux-Kernel (vmlinuz), den Kern des
437 Linux-Betriebssystems. Der Kernel ist für grundliegende
438 Systemfunktionen verantwortlich: Speicherreservierung,
439 Prozeß-Management, Geräte Ein- und Ausgaben, usw.
441 Netfilter module dated: %{netfilter_snap}
442 %{?with_grsec_full:Grsecurity full support - enabled}
443 %{?with_pax:PaX support - enabled}
444 %{?with_xen0:Xen 0 - enabled}
445 %{?with_xenU:Xen U - enabled}
446 %{?with_vesafb_tng:VesaFB New generation - enabled}
447 %{?with_nfsroot:Root on NFS - enabled}
449 %description -l fr.UTF-8
450 Le package kernel contient le kernel linux (vmlinuz), la partie
451 centrale d'un système d'exploitation Linux. Le noyau traite les
452 fonctions basiques d'un système d'exploitation: allocation mémoire,
453 allocation de process, entrée/sortie de peripheriques, etc.
455 Netfilter module dated: %{netfilter_snap}
456 %{?with_grsec_full:Grsecurity full support - enabled}
457 %{?with_pax:PaX support - enabled}
458 %{?with_xen0:Xen 0 - enabled}
459 %{?with_xenU:Xen U - enabled}
460 %{?with_vesafb_tng:VesaFB New generation - enabled}
461 %{?with_nfsroot:Root on NFS - enabled}
463 %description -l pl.UTF-8
464 Pakiet zawiera jądro Linuksa niezbędne do prawidłowego działania
465 Twojego komputera. Zawiera w sobie sterowniki do sprzętu znajdującego
466 się w komputerze, takiego jak sterowniki dysków itp.
468 Netfilter module dated: %{netfilter_snap}
469 %{?with_grsec_full:Grsecurity full support - enabled}
470 %{?with_pax:PaX support - enabled}
471 %{?with_xen0:Xen 0 - enabled}
472 %{?with_xenU:Xen U - enabled}
473 %{?with_vesafb_tng:VesaFB New generation - enabled}
474 %{?with_nfsroot:Root on NFS - enabled}
477 Summary: vmlinux - uncompressed kernel image
478 Summary(pl.UTF-8): vmlinux - rozpakowany obraz jÄ…dra
482 vmlinux - uncompressed kernel image.
484 %description vmlinux -l pl.UTF-8
485 vmlinux - rozpakowany obraz jÄ…dra.
488 Summary: DRM kernel modules
489 Summary(pl.UTF-8): Sterowniki DRM
491 Requires(postun): %{name}-up = %{epoch}:%{version}-%{release}
492 Requires: %{name}-up = %{epoch}:%{version}-%{release}
498 %description drm -l pl.UTF-8
502 Summary: PCMCIA modules
503 Summary(pl.UTF-8): Moduły PCMCIA
505 Requires(postun): %{name}-up = %{epoch}:%{version}-%{release}
506 Requires: %{name}-up = %{epoch}:%{version}-%{release}
507 Conflicts: pcmcia-cs < %{_pcmcia_cs_ver}
508 Conflicts: pcmciautils < %{_pcmciautils_ver}
514 %description pcmcia -l pl.UTF-8
518 Summary: Libraries for preparing bootable kernel on PowerPCs
519 Summary(pl.UTF-8): Biblioteki do przygotowania bootowalnego jÄ…dra dla PowerPC
521 Requires: %{name}-up = %{epoch}:%{version}-%{release}
522 Requires: mkvmlinuz >= %{_mkvmlinuz_ver}
526 Libraries for preparing bootable kernel on PowerPCs. Script called
527 mkvmlinuz may be useful for this.
529 %description libs -l pl.UTF-8
530 Biblioteki do przygotowania bootowalnego jÄ…dra dla PowerPC. Skrypt
531 mkvmlinuz może być do tego przydatny.
534 Summary: ALSA kernel modules
535 Summary(pl.UTF-8): Sterowniki dźwięku ALSA
537 Requires(postun): %{name}-up = %{epoch}:%{version}-%{release}
538 Requires: %{name}-up = %{epoch}:%{version}-%{release}
541 %description sound-alsa
542 ALSA (Advanced Linux Sound Architecture) sound drivers.
544 %description sound-alsa -l pl.UTF-8
545 Sterowniki dźwięku ALSA (Advanced Linux Sound Architecture).
548 Summary: OSS kernel modules
549 Summary(pl.UTF-8): Sterowniki dźwięku OSS
551 Requires(postun): %{name}-up = %{epoch}:%{version}-%{release}
552 Requires: %{name}-up = %{epoch}:%{version}-%{release}
555 %description sound-oss
556 OSS (Open Sound System) drivers.
558 %description sound-oss -l pl.UTF-8
559 Sterowniki dźwięku OSS (Open Sound System).
562 Summary: Kernel version %{version} compiled for SMP machines
563 Summary(de.UTF-8): Kernel version %{version} für Multiprozessor-Maschinen
564 Summary(fr.UTF-8): Kernel version %{version} compiler pour les machine Multi-Processeur
565 Summary(pl.UTF-8): JÄ…dro Linuksa w wersji %{version} dla maszyn wieloprocesorowych
567 Requires(post): coreutils
568 Requires(post): geninitrd >= 2.57
569 Requires(post): module-init-tools >= 0.9.9
570 Requires: /sbin/depmod
572 Requires: geninitrd >= 2.26
573 Requires: module-init-tools >= 0.9.9
574 Provides: %{name}(netfilter) = %{netfilter_snap}
575 Provides: %{name}-smp(vermagic) = %{kernel_release}
577 Provides: kernel(xen0) = %{xen_version}
579 Obsoletes: kernel-smp-misc-fuse
580 Obsoletes: kernel-smp-net-hostap
581 Obsoletes: kernel-smp-net-ieee80211
582 Obsoletes: kernel-smp-net-ipp2p
583 Conflicts: e2fsprogs < %{_e2fsprogs_ver}
584 Conflicts: isdn4k-utils < %{_isdn4k_utils_ver}
585 Conflicts: jfsutils < %{_jfsutils_ver}
586 Conflicts: module-init-tool < %{_module_init_tool_ver}
587 Conflicts: nfs-utils < %{_nfs_utils_ver}
588 Conflicts: oprofile < %{_oprofile_ver}
589 Conflicts: ppp < %{_ppp_ver}
590 Conflicts: procps < %{_procps_ver}
591 Conflicts: quota-tools < %{_quota_tools_ver}
592 %if %{with reiserfs4}
593 Conflicts: reiser4progs < %{_reiser4progs_ver}
595 Conflicts: reiserfsprogs < %{_reiserfsprogs_ver}
596 Conflicts: util-linux < %{_util_linux_ver}
597 Conflicts: xfsprogs < %{_xfsprogs_ver}
601 This package includes a SMP version of the Linux %{version} kernel. It
602 is required only on machines with two or more CPUs, although it should
603 work fine on single-CPU boxes.
605 Netfilter module dated: %{netfilter_snap}
606 %{?with_grsec_full:Grsecurity full support - enabled}
607 %{?with_pax:PaX support - enabled}
608 %{?with_xen0:Xen 0 - enabled}
609 %{?with_xenU:Xen U - enabled}
610 %{?with_vesafb_tng:VesaFB New generation - enabled}
611 %{?with_nfsroot:Root on NFS - enabled}
613 %description smp -l de.UTF-8
614 Dieses Paket enthält eine SMP (Multiprozessor)-Version von
615 Linux-Kernel %{version}. Es wird für Maschinen mit zwei oder mehr
616 Prozessoren gebraucht, sollte aber auch auf Computern mit nur einer
619 Netfilter module dated: %{netfilter_snap}
620 %{?with_grsec_full:Grsecurity full support - enabled}
621 %{?with_pax:PaX support - enabled}
622 %{?with_xen0:Xen 0 - enabled}
623 %{?with_xenU:Xen U - enabled}
624 %{?with_vesafb_tng:VesaFB New generation - enabled}
625 %{?with_nfsroot:Root on NFS - enabled}
627 %description smp -l fr.UTF-8
628 Ce package inclu une version SMP du noyau de Linux version {version}.
629 Il et nécessaire seulement pour les machine avec deux processeurs ou
630 plus, il peut quand même fonctionner pour les système mono-processeur.
632 Netfilter module dated: %{netfilter_snap}
633 %{?with_grsec_full:Grsecurity full support - enabled}
634 %{?with_pax:PaX support - enabled}
635 %{?with_xen0:Xen 0 - enabled}
636 %{?with_xenU:Xen U - enabled}
637 %{?with_vesafb_tng:VesaFB New generation - enabled}
638 %{?with_nfsroot:Root on NFS - enabled}
640 %description smp -l pl.UTF-8
641 Pakiet zawiera jÄ…dro SMP Linuksa w wersji %{version}. Jest ono
642 wymagane przez komputery zawierające dwa lub więcej procesorów.
643 Powinno również dobrze działać na maszynach z jednym procesorem.
645 Netfilter module dated: %{netfilter_snap}
646 %{?with_grsec_full:Grsecurity full support - enabled}
647 %{?with_pax:PaX support - enabled}
648 %{?with_xen0:Xen 0 - enabled}
649 %{?with_xenU:Xen U - enabled}
650 %{?with_vesafb_tng:VesaFB New generation - enabled}
651 %{?with_nfsroot:Root on NFS - enabled}
654 Summary: vmlinux - uncompressed SMP kernel image
655 Summary(pl.UTF-8): vmlinux - rozpakowany obraz jÄ…dra SMP
658 %description smp-vmlinux
659 vmlinux - uncompressed SMP kernel image.
661 %description smp-vmlinux -l pl.UTF-8
662 vmlinux - rozpakowany obraz jÄ…dra SMP.
665 Summary: DRM SMP kernel modules
666 Summary(pl.UTF-8): Sterowniki DRM dla maszyn wieloprocesorowych
668 Requires(postun): %{name}-smp = %{epoch}:%{version}-%{release}
669 Requires: %{name}-smp = %{epoch}:%{version}-%{release}
673 DRM SMP kernel modules.
675 %description smp-drm -l pl.UTF-8
676 Sterowniki DRM dla maszyn wieloprocesorowych.
679 Summary: PCMCIA modules for SMP kernel
680 Summary(pl.UTF-8): Moduły PCMCIA dla maszyn SMP
682 Requires(postun): %{name}-smp = %{epoch}:%{version}-%{release}
683 Requires: %{name}-smp = %{epoch}:%{version}-%{release}
684 Conflicts: pcmcia-cs < %{_pcmcia_cs_ver}
685 Conflicts: pcmciautils < %{_pcmciautils_ver}
688 %description smp-pcmcia
689 PCMCIA modules for SMP kernel.
691 %description smp-pcmcia -l pl.UTF-8
692 Moduły PCMCIA dla maszyn SMP.
695 Summary: Libraries for preparing bootable SMP kernel on PowerPCs
696 Summary(pl.UTF-8): Biblioteki do przygotowania bootowalnego jÄ…dra dla wieloprocesorowych PowerPC
698 Requires: %{name}-smp = %{epoch}:%{version}-%{release}
699 Requires: mkvmlinuz >= %{_mkvmlinuz_ver}
702 %description smp-libs
703 Libraries for preparing bootable SMP kernel on PowerPCs. Script called
704 mkvmlinuz may be useful for this.
706 %description smp-libs -l pl.UTF-8
707 Biblioteki do przygotowania bootowalnego jÄ…dra dla wieloprocesorowych
708 PowerPC. Skrypt mkvmlinuz może być do tego przydatny.
710 %package smp-sound-alsa
711 Summary: ALSA SMP kernel modules
712 Summary(pl.UTF-8): Sterowniki dźwięku ALSA dla maszyn wieloprocesorowych
714 Requires(postun): %{name}-smp = %{epoch}:%{version}-%{release}
715 Requires: %{name}-smp = %{epoch}:%{version}-%{release}
718 %description smp-sound-alsa
719 ALSA (Advanced Linux Sound Architecture) SMP sound drivers.
721 %description smp-sound-alsa -l pl.UTF-8
722 Sterowniki dźwięku ALSA (Advanced Linux Sound Architecture) dla maszyn
725 %package smp-sound-oss
726 Summary: OSS SMP kernel modules
727 Summary(pl.UTF-8): Sterowniki dźwięku OSS dla maszyn wieloprocesorowych
729 Requires(postun): %{name}-smp = %{epoch}:%{version}-%{release}
730 Requires: %{name}-smp = %{epoch}:%{version}-%{release}
733 %description smp-sound-oss
734 OSS (Open Sound System) SMP sound drivers.
736 %description smp-sound-oss -l pl.UTF-8
737 Sterowniki OSS (Open Sound System) dla maszyn wieloprocesorowych.
740 Summary: Header files for the Linux kernel
741 Summary(pl.UTF-8): Pliki nagłówkowe jądra Linuksa
742 Group: Development/Building
743 Provides: %{name}-headers(netfilter) = %{netfilter_snap}
747 These are the C header files for the Linux kernel, which define
748 structures and constants that are needed when rebuilding the kernel or
749 building kernel modules.
751 %description headers -l pl.UTF-8
752 Pakiet zawiera pliki nagłówkowe jądra, niezbędne do rekompilacji jądra
753 oraz budowania modułów jądra.
755 %package module-build
756 Summary: Development files for building kernel modules
757 Summary(pl.UTF-8): Pliki służące do budowania modułów jądra
758 Group: Development/Building
759 Requires: %{name}-headers = %{epoch}:%{version}-%{release}
760 Conflicts: rpmbuild(macros) < 1.321
763 %description module-build
764 Development files from kernel source tree needed to build Linux kernel
765 modules from external packages.
767 %description module-build -l pl.UTF-8
768 Pliki ze drzewa źródeł jądra potrzebne do budowania modułów jądra
769 Linuksa z zewnętrznych pakietów.
772 Summary: Kernel source tree
773 Summary(pl.UTF-8): Kod źródłowy jądra Linuksa
774 Group: Development/Building
775 Requires: %{name}-module-build = %{epoch}:%{version}-%{release}
779 This is the source code for the Linux kernel. You can build a custom
780 kernel that is better tuned to your particular hardware.
782 %description source -l de.UTF-8
783 Das Kernel-Source-Paket enthält den source code (C/Assembler-Code) des
784 Linux-Kernels. Die Source-Dateien werden gebraucht, um viele
785 C-Programme zu compilieren, da sie auf Konstanten zurückgreifen, die
786 im Kernel-Source definiert sind. Die Source-Dateien können auch
787 benutzt werden, um einen Kernel zu compilieren, der besser auf Ihre
788 Hardware ausgerichtet ist.
790 %description source -l fr.UTF-8
791 Le package pour le kernel-source contient le code source pour le noyau
792 linux. Ces sources sont nécessaires pour compiler la plupart des
793 programmes C, car il dépend de constantes définies dans le code
794 source. Les sources peuvent être aussi utilisée pour compiler un noyau
795 personnalisé pour avoir de meilleures performances sur des matériels
798 %description source -l pl.UTF-8
799 Pakiet zawiera kod źródłowy jądra systemu.
802 Summary: Kernel documentation
803 Summary(pl.UTF-8): Dokumentacja do jÄ…dra Linuksa
808 This is the documentation for the Linux kernel, as found in
809 /usr/src/linux/Documentation directory.
811 %description doc -l pl.UTF-8
812 Pakiet zawiera dokumentacjÄ™ do jÄ…dra Linuksa pochodzÄ…cÄ… z katalogu
813 /usr/src/linux/Documentation.
816 %setup -q -n linux-%{_basever} -a10
817 %{__bzip2} -dc %{SOURCE3} | patch -p1 -s
820 install %{SOURCE5} Makefile.ppclibs
826 for i in suspend2-%{suspend_version}-for-2.6.16.9/[0-9]*; do
829 rm -rf suspend2-%{suspend_version}-for-2.6.16.9
835 %if %{with reiserfs4}
836 %{__gzip} -dc %{SOURCE12} | %{__patch} -s -p1
842 %if %{with bootsplash}
849 %{?with_vesafb_tng:%patch5 -p1}
903 %ifarch %{ix86} %{x8664} ia64
925 %if %{with xen0} || %{with xenU}
926 %ifarch %{ix86} %{x8664} ia64
940 %ifarch ppc ppc64 %{ix86} %{x8664}
955 %if %{with grsec_minimal}
958 %if %{with grsec_full}
968 %if %{with grsecurity}
972 # Fix EXTRAVERSION in main Makefile
973 sed -i 's#EXTRAVERSION =.*#EXTRAVERSION = %{_postver}%{subname}#g' Makefile
975 # on sparc this line causes CONFIG_INPUT=m (instead of =y), thus breaking build
976 sed -i -e '/select INPUT/d' net/bluetooth/hidp/Kconfig
978 # cleanup backups after patching
979 find '(' -name '*~' -o -name '*.orig' -o -name '.gitignore' ')' -print0 | xargs -0 -r -l512 rm -f
982 TuneUpConfigForIX86 () {
985 [ "$2" = "yes" ] && pae=yes
990 sed -i 's:CONFIG_M386=y:# CONFIG_M386 is not set:' $1
993 sed -i 's:# CONFIG_M486 is not set:CONFIG_M486=y:' $1
996 sed -i 's:# CONFIG_M586 is not set:CONFIG_M586=y:' $1
999 sed -i 's:# CONFIG_M686 is not set:CONFIG_M686=y:' $1
1002 sed -i 's:# CONFIG_MPENTIUMIII is not set:CONFIG_MPENTIUMIII=y:' $1
1005 sed -i 's:# CONFIG_MPENTIUM4 is not set:CONFIG_MPENTIUM4=y:' $1
1008 sed -i 's:# CONFIG_MK7 is not set:CONFIG_MK7=y:' $1
1010 %ifarch i686 athlon pentium3 pentium4
1011 if [ "$pae" = "yes" ]; then
1012 sed -i "s:CONFIG_HIGHMEM4G=y:# CONFIG_HIGHMEM4G is not set:" $1
1013 sed -i "s:# CONFIG_HIGHMEM64G is not set:CONFIG_HIGHMEM64G=y\nCONFIG_X86_PAE=y:" $1
1015 sed -i 's:CONFIG_MATH_EMULATION=y:# CONFIG_MATH_EMULATION is not set:' $1
1023 # is this a special kernel we want to build?
1025 [ "$1" = "smp" -o "$2" = "smp" ] && smp=yes
1026 if [ "$smp" = "yes" ]; then
1027 Config="%{_target_base_arch}-smp"
1029 Config="%{_target_base_arch}"
1031 KernelVer=%{kernel_release}$1
1033 echo "Building config file [using $Config.conf] for KERNEL $1..."
1034 cat $RPM_SOURCE_DIR/kernel-$Config.config > arch/%{_target_base_arch}/defconfig
1036 TuneUpConfigForIX86 arch/%{_target_base_arch}/defconfig "$smp"
1039 if [ "$smp" = "yes" ]; then
1040 install %{SOURCE31} arch/%{_target_base_arch}/defconfig
1042 install %{SOURCE30} arch/%{_target_base_arch}/defconfig
1047 sed -i "s:# CONFIG_PPC64 is not set:CONFIG_PPC64=y:" arch/%{_target_base_arch}/defconfig
1051 cat %{SOURCE40} >> arch/%{_target_base_arch}/defconfig
1053 cat %{SOURCE41} >> arch/%{_target_base_arch}/defconfig
1055 cat %{SOURCE42} >> arch/%{_target_base_arch}/defconfig
1057 sed -i "s:CONFIG_SUSPEND2=y:# CONFIG_SUSPEND2 is not set:" arch/%{_target_base_arch}/defconfig
1060 cat %{SOURCE43} >> arch/%{_target_base_arch}/defconfig
1062 cat %{SOURCE44} >> arch/%{_target_base_arch}/defconfig
1064 %if %{with grsecurity}
1066 cat %{SOURCE49} >> arch/%{_target_base_arch}/defconfig
1068 cat %{SOURCE45} >> arch/%{_target_base_arch}/defconfig
1073 cat %{SOURCE50} >> arch/%{_target_base_arch}/defconfig
1075 %if %{with xen0} || %{with xenU}
1076 sed -i "s:CONFIG_X86_PC=y:# CONFIG_X86_PC is not set:" arch/%{_target_base_arch}/defconfig
1077 sed -i "s:CONFIG_RIO=[ym]:# CONFIG_RIO is not set:" arch/%{_target_base_arch}/defconfig
1079 # framebuffer devices generally don't work with xen
1080 # and kernel will crash on boot if vesafb-tng is compiled in (even if off by default)
1081 sed -i "s:CONFIG_FB=y:# CONFIG_FB is not set:" arch/%{_target_base_arch}/defconfig
1083 cat %{SOURCE48} >> arch/%{_target_base_arch}/defconfig
1087 cat %{SOURCE46} >> arch/%{_target_base_arch}/defconfig
1091 cat %{SOURCE47} >> arch/%{_target_base_arch}/defconfig
1095 echo "CONFIG_FB_SPLASH=y" >> arch/%{_target_base_arch}/defconfig
1097 echo "CONFIG_BOOTSPLASH=y" >> arch/%{_target_base_arch}/defconfig
1100 sed -i "s:CONFIG_NFS_FS=m:CONFIG_NFS_FS=y:" arch/%{_target_base_arch}/defconfig
1101 echo "CONFIG_ROOT_NFS=y" >> arch/%{_target_base_arch}/defconfig
1104 %if %{with ext2compiled}
1105 sed -i 's,CONFIG_EXT2_FS=m,CONFIG_EXT2_FS=y,' arch/%{_target_base_arch}/defconfig
1108 %{?debug:sed -i "s:# CONFIG_DEBUG_SLAB is not set:CONFIG_DEBUG_SLAB=y:" arch/%{_target_base_arch}/defconfig}
1109 %{?debug:sed -i "s:# CONFIG_DEBUG_PREEMPT is not set:CONFIG_DEBUG_PREEMPT=y:" arch/%{_target_base_arch}/defconfig}
1110 %{?debug:sed -i "s:# CONFIG_RT_DEADLOCK_DETECT is not set:CONFIG_RT_DEADLOCK_DETECT=y:" arch/%{_target_base_arch}/defconfig}
1112 if [ "$smp" = "yes" ]; then
1113 sed -e 's:CONFIG_LOCALVERSION="":CONFIG_LOCALVERSION="smp":' \
1114 -i arch/%{_target_base_arch}/defconfig
1117 ln -sf arch/%{_target_base_arch}/defconfig .config
1118 install -d $KERNEL_INSTALL_DIR%{_kernelsrcdir}/include/linux
1119 rm -f include/linux/autoconf.h
1120 %{__make} %CrossOpts include/linux/autoconf.h
1121 if [ "$smp" = "yes" ]; then
1122 install include/linux/autoconf.h \
1123 $KERNEL_INSTALL_DIR%{_kernelsrcdir}/include/linux/autoconf-smp.h
1125 $KERNEL_INSTALL_DIR%{_kernelsrcdir}/config-smp
1127 install include/linux/autoconf.h \
1128 $KERNEL_INSTALL_DIR%{_kernelsrcdir}/include/linux/autoconf-up.h
1130 $KERNEL_INSTALL_DIR%{_kernelsrcdir}/config-up
1136 echo "Building kernel${1:+ $1}..."
1137 %{__make} %CrossOpts mrproper \
1138 RCS_FIND_IGNORE='-name build-done -prune -o'
1139 ln -sf arch/%{_target_base_arch}/defconfig .config
1142 sparc32 %{__make} clean \
1143 RCS_FIND_IGNORE='-name build-done -prune -o'
1145 %{__make} %CrossOpts clean \
1146 RCS_FIND_IGNORE='-name build-done -prune -o'
1148 %{__make} %CrossOpts include/linux/version.h \
1149 %{?with_verbose:V=1}
1151 # make does vmlinux, modules and bzImage at once
1152 %ifarch sparc sparc64
1154 %{__make} %CrossOpts image \
1155 %{?with_verbose:V=1}
1157 %{__make} %CrossOpts modules \
1158 %{?with_verbose:V=1}
1161 %{?with_verbose:V=1}
1164 %{__make} %CrossOpts \
1165 %if %{with xen0} || %{with xenU}
1168 %{?with_verbose:V=1}
1172 PreInstallKernel() {
1174 [ "$1" = "smp" -o "$2" = "smp" ] && smp=yes
1175 if [ "$smp" = "yes" ]; then
1176 Config="%{_target_base_arch}-smp"
1178 Config="%{_target_base_arch}"
1180 KernelVer=%{kernel_release}$1
1182 mkdir -p $KERNEL_INSTALL_DIR/boot
1183 install System.map $KERNEL_INSTALL_DIR/boot/System.map-$KernelVer
1184 %ifarch %{ix86} %{x8664}
1185 %if %{with xen0} || %{with xenU}
1186 install vmlinuz $KERNEL_INSTALL_DIR/boot/vmlinuz-$KernelVer
1188 install arch/%{_target_base_arch}/boot/bzImage $KERNEL_INSTALL_DIR/boot/vmlinuz-$KernelVer
1190 install vmlinux $KERNEL_INSTALL_DIR/boot/vmlinux-$KernelVer
1192 %ifarch alpha sparc sparc64
1193 gzip -cfv vmlinux > vmlinuz
1194 install vmlinux $KERNEL_INSTALL_DIR/boot/vmlinux-$KernelVer
1195 install vmlinuz $KERNEL_INSTALL_DIR/boot/vmlinuz-$KernelVer
1197 elftoaout arch/sparc/boot/image -o vmlinux.aout
1198 install vmlinux.aout $KERNEL_INSTALL_DIR/boot/vmlinux.aout-$KernelVer
1201 elftoaout arch/sparc64/boot/image -o vmlinux.aout
1202 install vmlinux.aout $KERNEL_INSTALL_DIR/boot/vmlinux.aout-$KernelVer
1206 install vmlinux $KERNEL_INSTALL_DIR/boot/vmlinux-$KernelVer
1207 install vmlinux $KERNEL_INSTALL_DIR/boot/vmlinuz-$KernelVer
1210 %{__make} -f Makefile.ppclibs install \
1211 DESTDIR=$KERNEL_INSTALL_DIR/boot/libs-$KernelVer
1214 gzip -cfv vmlinux > vmlinuz
1215 install -d $KERNEL_INSTALL_DIR/boot/efi
1216 install vmlinuz $KERNEL_INSTALL_DIR/boot/efi/vmlinuz-$KernelVer
1217 ln -sf efi/vmlinuz-$KernelVer $KERNEL_INSTALL_DIR/boot/vmlinuz-$KernelVer
1219 %{__make} %CrossOpts modules_install \
1220 %{?with_verbose:V=1} \
1222 INSTALL_MOD_PATH=$KERNEL_INSTALL_DIR \
1223 KERNELRELEASE=$KernelVer
1225 if [ "$smp" = "yes" ]; then
1226 install Module.symvers \
1227 $KERNEL_INSTALL_DIR%{_kernelsrcdir}/Module.symvers-smp
1229 install Module.symvers \
1230 $KERNEL_INSTALL_DIR%{_kernelsrcdir}/Module.symvers-up
1233 echo "CHECKING DEPENDENCIES FOR KERNEL MODULES"
1234 if [ %DepMod = /sbin/depmod ]; then
1235 /sbin/depmod --basedir $KERNEL_INSTALL_DIR -ae -F $KERNEL_INSTALL_DIR/boot/System.map-$KernelVer -r $KernelVer || :
1237 touch $KERNEL_INSTALL_DIR/lib/modules/$KernelVer/modules.dep
1239 echo "KERNEL RELEASE $KernelVer DONE"
1242 KERNEL_BUILD_DIR=`pwd`
1243 echo "-%{_localversion}" > localversion
1245 #install -m 644 %{SOURCE50} FAQ-pl
1248 KERNEL_INSTALL_DIR="$KERNEL_BUILD_DIR/build-done/kernel-UP"
1249 rm -rf $KERNEL_INSTALL_DIR
1257 KERNEL_INSTALL_DIR="$KERNEL_BUILD_DIR/build-done/kernel-SMP"
1258 rm -rf $KERNEL_INSTALL_DIR
1262 PreInstallKernel smp
1266 rm -rf $RPM_BUILD_ROOT
1267 install -d $RPM_BUILD_ROOT
1270 # test if we can hardlink -- %{_builddir} and $RPM_BUILD_ROOT on same partition
1271 if cp -al COPYING $RPM_BUILD_ROOT/COPYING 2>/dev/null; then
1273 rm -f $RPM_BUILD_ROOT/COPYING
1276 export DEPMOD=%DepMod
1278 install -d $RPM_BUILD_ROOT%{_kernelsrcdir}
1279 install -d $RPM_BUILD_ROOT%{_sysconfdir}/modprobe.d/%{kernel_release}{,smp}
1281 KERNEL_BUILD_DIR=`pwd`
1283 %if %{with up} || %{with smp}
1284 cp -a$l $KERNEL_BUILD_DIR/build-done/kernel-*/* $RPM_BUILD_ROOT
1287 for i in "" smp ; do
1288 if [ -e $RPM_BUILD_ROOT/lib/modules/%{kernel_release}$i ] ; then
1289 rm -f $RPM_BUILD_ROOT/lib/modules/%{kernel_release}$i/build
1290 ln -sf %{_kernelsrcdir} \
1291 $RPM_BUILD_ROOT/lib/modules/%{kernel_release}$i/build
1292 install -d $RPM_BUILD_ROOT/lib/modules/%{kernel_release}$i/{cluster,misc}
1296 find . -maxdepth 1 ! -name "build-done" ! -name "." -exec cp -a$l "{}" "$RPM_BUILD_ROOT%{_kernelsrcdir}/" ";"
1298 cd $RPM_BUILD_ROOT%{_kernelsrcdir}
1300 %{__make} %CrossOpts mrproper \
1301 RCS_FIND_IGNORE='-name build-done -prune -o'
1303 if [ -e $KERNEL_BUILD_DIR/build-done/kernel-UP%{_kernelsrcdir}/include/linux/autoconf-up.h ]; then
1304 install $KERNEL_BUILD_DIR/build-done/kernel-UP%{_kernelsrcdir}/include/linux/autoconf-up.h \
1305 $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux
1306 install $KERNEL_BUILD_DIR/build-done/kernel-UP%{_kernelsrcdir}/config-up \
1307 $RPM_BUILD_ROOT%{_kernelsrcdir}
1310 if [ -e $KERNEL_BUILD_DIR/build-done/kernel-SMP%{_kernelsrcdir}/include/linux/autoconf-smp.h ]; then
1311 install $KERNEL_BUILD_DIR/build-done/kernel-SMP%{_kernelsrcdir}/include/linux/autoconf-smp.h \
1312 $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux
1313 install $KERNEL_BUILD_DIR/build-done/kernel-SMP%{_kernelsrcdir}/config-smp \
1314 $RPM_BUILD_ROOT%{_kernelsrcdir}
1317 %if %{with up} || %{with smp}
1319 install $KERNEL_BUILD_DIR/build-done/kernel-*%{_kernelsrcdir}/include/linux/* \
1320 $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux
1323 %{__make} %CrossOpts mrproper
1324 %{__make} %CrossOpts include/linux/version.h
1325 install %{SOURCE1} $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux/autoconf.h
1326 install %{SOURCE2} $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux/config.h
1328 # collect module-build files and directories
1329 perl %{SOURCE7} %{_kernelsrcdir} $KERNEL_BUILD_DIR
1331 %if %{with up} || %{with smp}
1333 touch $RPM_BUILD_ROOT/boot/initrd-%{kernel_release}{,smp}.gz
1334 install -d $RPM_BUILD_ROOT/lib/modules/%{kernel_release}{,smp}
1335 rm -f $RPM_BUILD_ROOT/lib/modules/%{kernel_release}{,smp}/{build,source}
1336 touch $RPM_BUILD_ROOT/lib/modules/%{kernel_release}{,smp}/{build,source}
1340 rm -rf $RPM_BUILD_ROOT
1343 if [ -x /sbin/new-kernel-pkg ]; then
1344 /sbin/new-kernel-pkg --remove %{kernel_release}
1349 mv -f /boot/efi/vmlinuz%{dashxen} /boot/efi/vmlinuz%{dashxen}.old 2> /dev/null > /dev/null
1351 mv -f /boot/vmlinuz%{dashxen} /boot/vmlinuz%{dashxen}.old 2> /dev/null > /dev/null
1352 mv -f /boot/System.map%{dashxen} /boot/System.map%{dashxen}.old 2> /dev/null > /dev/null
1354 ln -sf vmlinuz-%{kernel_release} /boot/efi/vmlinuz%{dashxen}
1356 ln -sf vmlinuz-%{kernel_release} /boot/vmlinuz%{dashxen}
1357 ln -sf System.map-%{kernel_release} /boot/System.map%{dashxen}
1359 %depmod %{kernel_release}
1362 /sbin/geninitrd -f --initrdfs=rom %{initrd_dir}/initrd-%{kernel_release}.gz %{kernel_release}
1363 mv -f %{initrd_dir}/initrd%{dashxen} %{initrd_dir}/initrd%{dashxen}.old 2> /dev/null > /dev/null
1364 ln -sf initrd-%{kernel_release}.gz %{initrd_dir}/initrd%{dashxen}
1366 if [ -x /sbin/new-kernel-pkg ]; then
1367 if [ -f /etc/pld-release ]; then
1368 title=$(sed 's/^[0-9.]\+ //' < /etc/pld-release)
1373 ext='%{?with_pax:pax}%{?with_grsec_full:grsecurity}%{?with_xen0:Xen0}%{?with_xenU:XenU}'
1378 /sbin/new-kernel-pkg --initrdfile=%{initrd_dir}/initrd-%{kernel_release}.gz --install %{kernel_release} --banner "$title"
1379 elif [ -x /sbin/rc-boot ]; then
1380 /sbin/rc-boot 1>&2 || :
1385 mv -f /boot/vmlinux%{dashxen} /boot/vmlinux%{dashxen}.old 2> /dev/null > /dev/null
1386 ln -sf vmlinux-%{kernel_release} /boot/vmlinux%{dashxen}
1389 %{_sbindir}/mkvmlinuz /boot/zImage-%{version}-%{release} %{version}-%{release}
1392 %depmod %{kernel_release}
1395 %depmod %{kernel_release}
1398 %depmod %{kernel_release}
1401 %depmod %{kernel_release}
1404 %depmod %{kernel_release}
1407 %depmod %{kernel_release}
1410 %depmod %{kernel_release}
1413 %depmod %{kernel_release}
1416 if [ -x /sbin/new-kernel-pkg ]; then
1417 /sbin/new-kernel-pkg --remove %{kernel_release}smp
1422 mv -f /boot/efi/vmlinuz /boot/efi/vmlinuz.old 2> /dev/null > /dev/null
1424 mv -f /boot/vmlinuz%{dashxen} /boot/vmlinuz%{dashxen}.old 2> /dev/null > /dev/null
1425 mv -f /boot/System.map%{dashxen} /boot/System.map%{dashxen}.old 2> /dev/null > /dev/null
1427 ln -sf vmlinuz-%{version}-%{release}smp /boot/efi/vmlinuz
1429 ln -sf vmlinuz-%{kernel_release}smp /boot/vmlinuz%{dashxen}
1430 ln -sf System.map-%{kernel_release}smp /boot/System.map%{dashxen}
1432 %depmod %{kernel_release}smp
1435 /sbin/geninitrd -f --initrdfs=rom %{initrd_dir}/initrd-%{kernel_release}smp.gz %{kernel_release}smp
1436 mv -f %{initrd_dir}/initrd%{dashxen} %{initrd_dir}/initrd%{dashxen}.old 2> /dev/null > /dev/null
1437 ln -sf initrd-%{kernel_release}smp.gz %{initrd_dir}/initrd%{dashxen}
1439 if [ -x /sbin/new-kernel-pkg ]; then
1440 if [ -f /etc/pld-release ]; then
1441 title=$(sed 's/^[0-9.]\+ //' < /etc/pld-release)
1446 ext='%{?with_pax:pax}%{?with_grsec_full:grsecurity}%{?with_xen0:Xen0}%{?with_xenU:XenU}'
1451 /sbin/new-kernel-pkg --initrdfile=%{initrd_dir}/initrd-%{kernel_release}smp.gz --install %{kernel_release}smp --banner "$title"
1452 elif [ -x /sbin/rc-boot ]; then
1453 /sbin/rc-boot 1>&2 || :
1458 mv -f /boot/vmlinux%{dashxen} /boot/vmlinux%{dashxen}.old 2> /dev/null > /dev/null
1459 ln -sf vmlinux-%{kernel_release}smp /boot/vmlinux%{dashxen}
1462 %{_sbindir}/mkvmlinuz /boot/zImage-%{version}-%{release}smp %{version}-%{release}smp
1465 %depmod %{kernel_release}smp
1468 %depmod %{kernel_release}smp
1471 %depmod %{kernel_release}smp
1474 %depmod %{kernel_release}smp
1476 %post smp-sound-alsa
1477 %depmod %{kernel_release}smp
1479 %postun smp-sound-alsa
1480 %depmod %{kernel_release}smp
1483 %depmod %{kernel_release}smp
1485 %postun smp-sound-oss
1486 %depmod %{kernel_release}smp
1489 ln -snf %{basename:%{_kernelsrcdir}} %{_prefix}/src/linux%{subname}
1492 if [ "$1" = "0" ]; then
1493 if [ -L %{_prefix}/src/linux%{subname} ]; then
1494 if [ "$(readlink %{_prefix}/src/linux%{subname})" = "linux%{subname}-%{version}" ]; then
1495 rm -f %{_prefix}/src/linux%{subname}
1500 %triggerin module-build -- %{name} = %{epoch}:%{version}-%{release}
1501 ln -sfn %{_kernelsrcdir} /lib/modules/%{kernel_release}/build
1502 ln -sfn %{_kernelsrcdir} /lib/modules/%{kernel_release}/source
1504 %triggerun module-build -- %{name} = %{epoch}:%{version}-%{release}
1505 if [ "$1" = 0 ]; then
1506 rm -f /lib/modules/%{kernel_release}/{build,source}
1509 %triggerin module-build -- %{name}-smp = %{epoch}:%{version}-%{release}
1510 ln -sfn %{_kernelsrcdir} /lib/modules/%{kernel_release}smp/build
1511 ln -sfn %{_kernelsrcdir} /lib/modules/%{kernel_release}smp/source
1513 %triggerun module-build -- %{name}-smp = %{epoch}:%{version}-%{release}
1514 if [ "$1" = 0 ]; then
1515 rm -f /lib/modules/%{kernel_release}smp/{build,source}
1520 %defattr(644,root,root,755)
1522 %ifarch sparc sparc64
1523 /boot/vmlinux.aout-%{kernel_release}
1526 /boot/efi/vmlinuz-%{kernel_release}
1528 /boot/vmlinuz-%{kernel_release}
1529 /boot/System.map-%{kernel_release}
1530 %ghost /boot/initrd-%{kernel_release}.gz
1531 %dir /lib/modules/%{kernel_release}
1532 %dir /lib/modules/%{kernel_release}/kernel
1534 /lib/modules/%{kernel_release}/kernel/arch
1536 /lib/modules/%{kernel_release}/kernel/crypto
1537 /lib/modules/%{kernel_release}/kernel/drivers
1539 %exclude /lib/modules/%{kernel_release}/kernel/drivers/char/drm
1541 %if %{have_oss} && %{have_isa} && %{without xen0} && %{without xenU}
1542 %exclude /lib/modules/%{kernel_release}/kernel/drivers/media/radio/miropcm20.ko*
1544 /lib/modules/%{kernel_release}/kernel/fs
1545 /lib/modules/%{kernel_release}/kernel/kernel
1546 /lib/modules/%{kernel_release}/kernel/lib
1547 /lib/modules/%{kernel_release}/kernel/net
1548 /lib/modules/%{kernel_release}/kernel/security
1550 %dir /lib/modules/%{kernel_release}/kernel/sound
1551 /lib/modules/%{kernel_release}/kernel/sound/soundcore.*
1553 %dir /lib/modules/%{kernel_release}/misc
1555 %exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia
1556 %exclude /lib/modules/%{kernel_release}/kernel/drivers/*/pcmcia
1557 %exclude /lib/modules/%{kernel_release}/kernel/drivers/bluetooth/*_cs.ko*
1558 %exclude /lib/modules/%{kernel_release}/kernel/drivers/ide/legacy/ide-cs.ko*
1559 %exclude /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
1560 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/*_cs.ko*
1561 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/hostap/hostap_cs.ko*
1562 %exclude /lib/modules/%{kernel_release}/kernel/drivers/parport/parport_cs.ko*
1563 %exclude /lib/modules/%{kernel_release}/kernel/drivers/serial/serial_cs.ko*
1564 %exclude /lib/modules/%{kernel_release}/kernel/drivers/telephony/ixj_pcmcia.ko*
1565 %exclude /lib/modules/%{kernel_release}/kernel/drivers/usb/host/sl811_cs.ko*
1567 %ghost /lib/modules/%{kernel_release}/modules.*
1568 # symlinks pointing to kernelsrcdir
1569 %ghost /lib/modules/%{kernel_release}/build
1570 %ghost /lib/modules/%{kernel_release}/source
1571 %dir %{_sysconfdir}/modprobe.d/%{kernel_release}
1573 %ifarch alpha %{ix86} %{x8664} ppc ppc64 sparc sparc64
1575 %defattr(644,root,root,755)
1576 /boot/vmlinux-%{kernel_release}
1581 %defattr(644,root,root,755)
1582 /lib/modules/%{kernel_release}/kernel/drivers/char/drm
1587 %defattr(644,root,root,755)
1588 /lib/modules/%{kernel_release}/kernel/drivers/pcmcia
1589 /lib/modules/%{kernel_release}/kernel/drivers/*/pcmcia
1590 /lib/modules/%{kernel_release}/kernel/drivers/bluetooth/*_cs.ko*
1591 /lib/modules/%{kernel_release}/kernel/drivers/ide/legacy/ide-cs.ko*
1592 /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
1593 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/*_cs.ko*
1594 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/hostap/hostap_cs.ko*
1595 /lib/modules/%{kernel_release}/kernel/drivers/parport/parport_cs.ko*
1596 /lib/modules/%{kernel_release}/kernel/drivers/serial/serial_cs.ko*
1597 /lib/modules/%{kernel_release}/kernel/drivers/telephony/ixj_pcmcia.ko*
1598 /lib/modules/%{kernel_release}/kernel/drivers/usb/host/sl811_cs.ko*
1602 %if "%{_arch}" == "ppc"
1604 %defattr(644,root,root,755)
1605 %dir /boot/libs-%{kernel_release}
1606 /boot/libs-%{kernel_release}/common
1607 /boot/libs-%{kernel_release}/kernel
1608 /boot/libs-%{kernel_release}/lib
1609 /boot/libs-%{kernel_release}/of1275
1610 /boot/libs-%{kernel_release}/openfirmware
1611 /boot/libs-%{kernel_release}/simple
1612 %dir /boot/libs-%{kernel_release}/utils
1613 %attr(755,root,root) /boot/libs-%{kernel_release}/utils/*
1614 /boot/libs-%{kernel_release}/ld.script
1620 %defattr(644,root,root,755)
1621 /lib/modules/%{kernel_release}/kernel/sound
1622 %exclude %dir /lib/modules/%{kernel_release}/kernel/sound
1623 %exclude /lib/modules/%{kernel_release}/kernel/sound/soundcore.*
1625 %exclude /lib/modules/%{kernel_release}/kernel/sound/oss
1630 %defattr(644,root,root,755)
1631 /lib/modules/%{kernel_release}/kernel/sound/oss
1632 %if %{have_isa} && %{without xen0} && %{without xenU}
1633 /lib/modules/%{kernel_release}/kernel/drivers/media/radio/miropcm20.ko*
1636 %endif # %%{have_sound}
1637 %endif # %%{with up}
1641 %defattr(644,root,root,755)
1644 /boot/efi/vmlinuz-%{kernel_release}smp
1646 /boot/vmlinuz-%{kernel_release}smp
1647 /boot/System.map-%{kernel_release}smp
1648 %ghost /boot/initrd-%{kernel_release}smp.gz
1649 %dir /lib/modules/%{kernel_release}smp
1650 %dir /lib/modules/%{kernel_release}smp/kernel
1652 /lib/modules/%{kernel_release}smp/kernel/arch
1654 /lib/modules/%{kernel_release}smp/kernel/crypto
1655 /lib/modules/%{kernel_release}smp/kernel/drivers
1657 %exclude /lib/modules/%{kernel_release}smp/kernel/drivers/char/drm
1659 %if %{have_oss} && %{have_isa} && %{without xen0} && %{without xenU}
1660 %exclude /lib/modules/%{kernel_release}smp/kernel/drivers/media/radio/miropcm20.ko*
1662 /lib/modules/%{kernel_release}smp/kernel/fs
1663 /lib/modules/%{kernel_release}smp/kernel/kernel
1664 /lib/modules/%{kernel_release}smp/kernel/lib
1665 /lib/modules/%{kernel_release}smp/kernel/net
1666 /lib/modules/%{kernel_release}smp/kernel/security
1668 %dir /lib/modules/%{kernel_release}smp/kernel/sound
1669 /lib/modules/%{kernel_release}smp/kernel/sound/soundcore.*
1671 %dir /lib/modules/%{kernel_release}smp/misc
1673 %exclude /lib/modules/%{kernel_release}smp/kernel/drivers/pcmcia
1674 %exclude /lib/modules/%{kernel_release}smp/kernel/drivers/*/pcmcia
1675 %exclude /lib/modules/%{kernel_release}smp/kernel/drivers/bluetooth/*_cs.ko*
1676 %exclude /lib/modules/%{kernel_release}smp/kernel/drivers/ide/legacy/ide-cs.ko*
1677 %exclude /lib/modules/%{kernel_release}smp/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
1678 %exclude /lib/modules/%{kernel_release}smp/kernel/drivers/net/wireless/*_cs.ko*
1679 %exclude /lib/modules/%{kernel_release}smp/kernel/drivers/net/wireless/hostap/hostap_cs.ko*
1680 %exclude /lib/modules/%{kernel_release}smp/kernel/drivers/parport/parport_cs.ko*
1681 %exclude /lib/modules/%{kernel_release}smp/kernel/drivers/serial/serial_cs.ko*
1682 %exclude /lib/modules/%{kernel_release}smp/kernel/drivers/telephony/ixj_pcmcia.ko*
1683 %exclude /lib/modules/%{kernel_release}smp/kernel/drivers/usb/host/sl811_cs.ko*
1685 %ghost /lib/modules/%{kernel_release}smp/modules.*
1686 # symlinks pointing to kernelsrcdir
1687 %ghost /lib/modules/%{kernel_release}smp/build
1688 %ghost /lib/modules/%{kernel_release}smp/source
1689 %dir %{_sysconfdir}/modprobe.d/%{kernel_release}smp
1691 %ifarch alpha %{ix86} %{x8664} ppc ppc64 sparc sparc64
1693 %defattr(644,root,root,755)
1694 /boot/vmlinux-%{kernel_release}smp
1699 %defattr(644,root,root,755)
1700 /lib/modules/%{kernel_release}smp/kernel/drivers/char/drm
1705 %defattr(644,root,root,755)
1706 /lib/modules/%{kernel_release}smp/kernel/drivers/pcmcia
1707 /lib/modules/%{kernel_release}smp/kernel/drivers/*/pcmcia
1708 /lib/modules/%{kernel_release}smp/kernel/drivers/bluetooth/*_cs.ko*
1709 /lib/modules/%{kernel_release}smp/kernel/drivers/ide/legacy/ide-cs.ko*
1710 /lib/modules/%{kernel_release}smp/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
1711 /lib/modules/%{kernel_release}smp/kernel/drivers/net/wireless/*_cs.ko*
1712 /lib/modules/%{kernel_release}smp/kernel/drivers/net/wireless/hostap/hostap_cs.ko*
1713 /lib/modules/%{kernel_release}smp/kernel/drivers/parport/parport_cs.ko*
1714 /lib/modules/%{kernel_release}smp/kernel/drivers/serial/serial_cs.ko*
1715 /lib/modules/%{kernel_release}smp/kernel/drivers/telephony/ixj_pcmcia.ko*
1716 /lib/modules/%{kernel_release}smp/kernel/drivers/usb/host/sl811_cs.ko*
1720 %if "%{_arch}" == "ppc"
1722 %defattr(644,root,root,755)
1723 %dir /boot/libs-%{kernel_release}smp
1724 /boot/libs-%{kernel_release}smp/common
1725 /boot/libs-%{kernel_release}smp/kernel
1726 /boot/libs-%{kernel_release}smp/lib
1727 /boot/libs-%{kernel_release}smp/of1275
1728 /boot/libs-%{kernel_release}smp/openfirmware
1729 /boot/libs-%{kernel_release}smp/simple
1730 %dir /boot/libs-%{kernel_release}smp/utils
1731 %attr(755,root,root) /boot/libs-%{kernel_release}smp/utils/*
1732 /boot/libs-%{kernel_release}smp/ld.script
1737 %files smp-sound-alsa
1738 %defattr(644,root,root,755)
1739 /lib/modules/%{kernel_release}smp/kernel/sound
1740 %exclude %dir /lib/modules/%{kernel_release}smp/kernel/sound
1741 %exclude /lib/modules/%{kernel_release}smp/kernel/sound/soundcore.*
1743 %exclude /lib/modules/%{kernel_release}smp/kernel/sound/oss
1747 %files smp-sound-oss
1748 %defattr(644,root,root,755)
1749 /lib/modules/%{kernel_release}smp/kernel/sound/oss
1750 %if %{have_isa} && %{without xen0} && %{without xenU}
1751 /lib/modules/%{kernel_release}smp/kernel/drivers/media/radio/miropcm20.ko*
1754 %endif # %%{have_sound}
1755 %endif # %%{with smp}
1758 %defattr(644,root,root,755)
1759 %dir %{_kernelsrcdir}
1760 %{_kernelsrcdir}/include
1762 %{_kernelsrcdir}/config-smp
1763 %{_kernelsrcdir}/Module.symvers-smp
1765 %{_kernelsrcdir}/config-up
1766 %{?with_up:%{_kernelsrcdir}/Module.symvers-up}
1768 %files module-build -f aux_files
1769 %defattr(644,root,root,755)
1770 %{_kernelsrcdir}/Kbuild
1771 %{_kernelsrcdir}/localversion
1772 %{_kernelsrcdir}/arch/*/kernel/asm-offsets.*
1773 %{_kernelsrcdir}/arch/*/kernel/sigframe.h
1774 %dir %{_kernelsrcdir}/scripts
1775 %dir %{_kernelsrcdir}/scripts/kconfig
1776 %{_kernelsrcdir}/scripts/Kbuild.include
1777 %{_kernelsrcdir}/scripts/Makefile*
1778 %{_kernelsrcdir}/scripts/basic
1779 %{_kernelsrcdir}/scripts/mkmakefile
1780 %{_kernelsrcdir}/scripts/mod
1781 %{_kernelsrcdir}/scripts/setlocalversion
1782 %{_kernelsrcdir}/scripts/*.c
1783 %{_kernelsrcdir}/scripts/*.sh
1784 %{_kernelsrcdir}/scripts/kconfig/*
1787 %defattr(644,root,root,755)
1788 %{_kernelsrcdir}/Documentation
1791 %files source -f aux_files_exc
1792 %defattr(644,root,root,755)
1793 %{_kernelsrcdir}/arch/*/[!Mk]*
1794 %{_kernelsrcdir}/arch/*/kernel/[!M]*
1795 %exclude %{_kernelsrcdir}/arch/*/kernel/asm-offsets.*
1796 %exclude %{_kernelsrcdir}/arch/*/kernel/sigframe.h
1797 %{_kernelsrcdir}/block
1798 %{_kernelsrcdir}/crypto
1799 %{_kernelsrcdir}/drivers
1801 %if %{with grsecurity}
1802 %{_kernelsrcdir}/grsecurity
1804 %{_kernelsrcdir}/init
1805 %{_kernelsrcdir}/ipc
1806 %{_kernelsrcdir}/kernel
1807 %{_kernelsrcdir}/lib
1809 %{_kernelsrcdir}/net
1810 %{_kernelsrcdir}/scripts/*
1811 %exclude %{_kernelsrcdir}/scripts/Kbuild.include
1812 %exclude %{_kernelsrcdir}/scripts/Makefile*
1813 %exclude %{_kernelsrcdir}/scripts/basic
1814 %exclude %{_kernelsrcdir}/scripts/kconfig
1815 %exclude %{_kernelsrcdir}/scripts/mkmakefile
1816 %exclude %{_kernelsrcdir}/scripts/mod
1817 %exclude %{_kernelsrcdir}/scripts/setlocalversion
1818 %exclude %{_kernelsrcdir}/scripts/*.c
1819 %exclude %{_kernelsrcdir}/scripts/*.sh
1820 %{_kernelsrcdir}/sound
1821 %{_kernelsrcdir}/security
1822 %{_kernelsrcdir}/usr
1823 %{_kernelsrcdir}/COPYING
1824 %{_kernelsrcdir}/CREDITS
1825 %{_kernelsrcdir}/MAINTAINERS
1826 %{_kernelsrcdir}/README
1827 %{_kernelsrcdir}/REPORTING-BUGS