]> git.pld-linux.org Git - packages/kernel.git/blame - kernel.spec
- xen0/xenU todo entry (compile failure)
[packages/kernel.git] / kernel.spec
CommitLineData
11b4fb9f 1# TODO:
17579cc0
AG
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
11b4fb9f 6# ALL
cf100084
ER
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
17579cc0
AG
9# - with xen0/xenU does not compile due to cyrix-specific changes in 2.6.16.61:
10# http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6.16.y.git;a=commitdiff;h=69731ebbb3d2283c2c33a2bf262d785e2362b876
11#
cf100084 12#
11b4fb9f 13# WARNING: Kernels from 2.6.16.X series not work under OldWorldMac
14#
15# Conditional build:
16%bcond_without smp # don't build SMP kernel
17%bcond_without up # don't build UP kernel
18%bcond_without source # don't build kernel-source package
19%bcond_without pcmcia # don't build pcmcia
20
21%bcond_with grsec_full # build full grsecurity
878db323 22%bcond_with pax # build PaX and full grsecurity
11b4fb9f 23%bcond_with verbose # verbose build (V=1)
24%bcond_with xen0 # added Xen0 support
25%bcond_with xenU # added XenU support
26%bcond_without grsecurity # don't build grsecurity at all
27%bcond_without grsec_minimal # build only minimal subset (proc,link,fifo,shm)
28
3092550a 29%bcond_without bootsplash # build with bootsplash instead of fbsplash
b0395610 30%bcond_with vesafb_tng # vesafb-tng, vesafb replacement from gentoo
11b4fb9f 31%bcond_with pae # build PAE (HIGHMEM64G) support on uniprocessor
32%bcond_with nfsroot # build with root on NFS support
6383a7ab 33%bcond_with reiserfs4 # build with ReiserFS 4 support
655cccc7 34%bcond_with ext2compiled # compile ext2 into kernel to be able to boot from ext2 rootfs
35%bcond_with abi # build ABI support only ix86 !!
11b4fb9f 36
37%{?debug:%define with_verbose 1}
38
9ac14f47 39%if %{without grsecurity}
11b4fb9f 40%undefine with_grsec_full
41%undefine with_grsec_minimal
878db323 42%undefine with_pax
43%endif
44
45%if %{with pax}
46%undefine with_grsec_minimal
47%undefine with_grsec_full
48%define with_grsecurity 1
11b4fb9f 49%endif
50
51%if %{with grsec_full}
52%undefine with_grsec_minimal
53%define with_grsecurity 1
54%endif
55
56%if %{with grsec_minimal}
57%undefine with_grsec_full
878db323 58%undefine with_pax
11b4fb9f 59%define with_grsecurity 1
60%endif
61
62%ifarch sparc
63# sparc32 is missing important updates from 2.5 cycle - won't build.
64%undefine with_smp
65%endif
66
67%ifarch ia64
68# broken
69%undefine with_up
70%endif
71
72%define have_drm 1
73%define have_oss 1
74%define have_sound 1
75
76%ifarch %{ix86} alpha ppc
77%define have_isa 1
78%else
79%define have_isa 0
80%endif
81
82%ifarch sparc sparc64
83%undefine with_pcmcia
84%define have_drm 0
85%define have_oss 0
86%endif
87
655cccc7 88%ifnarch %{ix86}
89%undefine abi
90%endif
91
69796008 92%if %{with xen0} || %{with xenU}
08dc0ae8
ER
93%define with_pae 1
94%define with_xen 1
4e6fef18
JK
95%endif
96
67ea3fe1 97## Programs required by kernel to work.
11b4fb9f 98%define _binutils_ver 2.12.1
99%define _util_linux_ver 2.10o
100%define _module_init_tool_ver 0.9.10
101%define _e2fsprogs_ver 1.29
102%define _jfsutils_ver 1.1.3
103%define _reiserfsprogs_ver 3.6.3
104%define _reiser4progs_ver 1.0.0
105%define _xfsprogs_ver 2.6.0
106%define _pcmcia_cs_ver 3.1.21
107%define _pcmciautils_ver 004
108%define _quota_tools_ver 3.09
109%define _ppp_ver 1:2.4.0
110%define _isdn4k_utils_ver 3.1pre1
111%define _nfs_utils_ver 1.0.5
112%define _procps_ver 3.2.0
113%define _oprofile_ver 0.9
114%define _udev_ver 071
115%define _mkvmlinuz_ver 1.3
116
f72cfa67 117%define netfilter_snap 20060504
11b4fb9f 118
119%define _enable_debug_packages 0
11b4fb9f 120
8204bf44 121%define squashfs_version 3.1
11b4fb9f 122%define suspend_version 2.2.5
123
09fc2ff4 124%define xen_hv_abi 3.0
11b4fb9f 125
09fc2ff4 126%define __alt_kernel %{?with_pax:pax}%{?with_grsec_full:grsecurity}%{?with_xen0:xen0}%{?with_xenU:xenU}%{!?with_xen:%{?with_pae:pae}}
7a5d00e8 127%if "%{__alt_kernel}" != ""
9903e270
ER
128%define alt_kernel %{__alt_kernel}
129%endif
2b6a8c81 130
4ae044ab 131# Our Kernel ABI, increase this when you want the out of source modules being rebuilt
e273a907 132# Usually same as %{_rel}
876d6eb2 133%define KABI 1
e273a907
ER
134
135# kernel release (used in filesystem and eventually in uname -r)
136# modules will be looked from /lib/modules/%{kernel_release}%{?smp}
137# _localversion is just that without version for "> localversion"
69796008 138%define _localversion %{KABI}
2b6a8c81 139%define kernel_release %{version}%{?alt_kernel:_%{alt_kernel}}-%{_localversion}
e273a907 140
d4f08b76 141%define _basever 2.6.16
876d6eb2
AG
142%define _postver .61
143%define _rel 1
11b4fb9f 144Summary: The Linux kernel (the core of the Linux operating system)
aa2fd7a0 145Summary(de.UTF-8): Der Linux-Kernel (Kern des Linux-Betriebssystems)
e8a23023 146Summary(et.UTF-8): Linuxi kernel (ehk operatsioonisüsteemi tuum)
aa2fd7a0 147Summary(fr.UTF-8): Le Kernel-Linux (La partie centrale du systeme)
e8a23023 148Summary(pl.UTF-8): Jądro Linuksa
2b6a8c81 149Name: kernel%{_alt_kernel}
9f4248f4 150Version: %{_basever}%{_postver}
d959720d 151Release: %{_rel}%{?with_ext2compiled:ext2}
11b4fb9f 152Epoch: 3
153License: GPL v2
154Group: Base/Kernel
9f4248f4
PS
155Source0: http://www.kernel.org/pub/linux/kernel/v2.6/linux-%{_basever}.tar.bz2
156# Source0-md5: 9a91b2719949ff0856b40bc467fd47be
11b4fb9f 157Source1: kernel-autoconf.h
158Source2: kernel-config.h
9f4248f4 159Source3: http://www.kernel.org/pub/linux/kernel/v2.6/patch-%{version}.bz2
876d6eb2 160# Source3-md5: d8d60f7e6ec5556f2e196c444499a39c
9f4248f4 161
11b4fb9f 162Source5: kernel-ppclibs.Makefile
163Source7: kernel-module-build.pl
164
165Source10: http://suspend2.net/downloads/all/suspend2-%{suspend_version}-for-2.6.16.9.tar.bz2
166# Source10-md5: 34345b1f7ad1505f6b264427a21e8a04
e7f463fc
AG
167Source12: ftp://ftp.namesys.com/pub/reiser4-for-2.6/2.6.16/reiser4-for-2.6.16-5.patch.gz
168# Source12-md5: 6ad22d084e12257781f205ec248e4f64
11b4fb9f 169
170Source20: kernel-i386.config
171Source21: kernel-i386-smp.config
172Source22: kernel-x86_64.config
173Source23: kernel-x86_64-smp.config
174Source24: kernel-sparc.config
175Source25: kernel-sparc-smp.config
176Source26: kernel-sparc64.config
177Source27: kernel-sparc64-smp.config
178Source28: kernel-alpha.config
179Source29: kernel-alpha-smp.config
180Source30: kernel-ppc.config
181Source31: kernel-ppc-smp.config
182Source32: kernel-ia64.config
183Source33: kernel-ia64-smp.config
184
185Source40: kernel-netfilter.config
186Source41: kernel-squashfs.config
187Source42: kernel-suspend2.config
188Source43: kernel-vserver.config
189Source44: kernel-vesafb-tng.config
190Source45: kernel-grsec.config
191Source46: kernel-xen0.config
192Source47: kernel-xenU.config
4e6fef18 193Source48: kernel-xen-extra.config
878db323 194Source49: kernel-grsec+pax.config
9aa654b6 195Source50: kernel-openswan.config
655cccc7 196Source51: kernel-abi.config
11b4fb9f 197###
198# Patches
199###
200
201#
202# PATA ports on SATA Promise controller; patch based on:
203# http://cvs.fedora.redhat.com/viewcvs/*checkout*/rpms/kernel/devel/linux-2.6-sata-promise-pata-ports.patch
204#
205Patch1: linux-2.6-sata-promise-pata-ports.patch
206
207# tahoe9XX http://tahoe.pl/drivers/tahoe9xx-2.6.11.5.patch
208Patch2: tahoe9xx-2.6.11.5.patch
209
a8e06ed7 210# ftp://ftp.openbios.org/pub/bootsplash/kernel/bootsplash-3.1.6-2.6.15.diff
211Patch3: bootsplash-3.1.6-2.6.15.diff
11b4fb9f 212# http://dev.gentoo.org/~spock/projects/gensplash/archive/fbsplash-0.9.2-r5-2.6.16.patch
213Patch4: fbsplash-0.9.2-r5-2.6.16.patch
214Patch5: linux-2.6-vesafb-tng.patch
215
8204bf44
PS
216# directly from http://mesh.dl.sourceforge.net/sourceforge/squashfs/squashfs3.1.tar.gz
217# from linux-2.6.16
11b4fb9f 218Patch6: squashfs%{squashfs_version}-patch
219
220Patch7: linux-alpha-isa.patch
221Patch8: linux-fbcon-margins.patch
222Patch9: linux-static-dev.patch
223
224# netfilter snap
225## submitted
226
227## base
f72cfa67
ER
228Patch10: pom-ng-IPV4OPTSSTRIP-%{netfilter_snap}.patch
229Patch11: pom-ng-connlimit-%{netfilter_snap}.patch
230Patch12: pom-ng-expire-%{netfilter_snap}.patch
231Patch13: pom-ng-fuzzy-%{netfilter_snap}.patch
232Patch14: pom-ng-ipv4options-%{netfilter_snap}.patch
233Patch15: pom-ng-nth-%{netfilter_snap}.patch
234Patch16: pom-ng-osf-%{netfilter_snap}.patch
235Patch17: pom-ng-psd-%{netfilter_snap}.patch
236Patch18: pom-ng-quota-%{netfilter_snap}.patch
237Patch19: pom-ng-random-%{netfilter_snap}.patch
238Patch20: pom-ng-set-%{netfilter_snap}.patch
239Patch21: pom-ng-time-%{netfilter_snap}.patch
240Patch22: pom-ng-u32-%{netfilter_snap}.patch
11b4fb9f 241
242## extra
f72cfa67
ER
243Patch30: pom-ng-ACCOUNT-%{netfilter_snap}.patch
244Patch31: pom-ng-IPMARK-%{netfilter_snap}.patch
245Patch32: pom-ng-ROUTE-%{netfilter_snap}.patch
246Patch33: pom-ng-TARPIT-%{netfilter_snap}.patch
247Patch34: pom-ng-XOR-%{netfilter_snap}.patch
248Patch35: pom-ng-account-%{netfilter_snap}.patch
c84c5ac3 249Patch36: ipp2p-0.8.2.patch
f72cfa67
ER
250Patch37: pom-ng-rpc-%{netfilter_snap}.patch
251Patch38: pom-ng-unclean-%{netfilter_snap}.patch
14e97cf0 252Patch39: linux-2.6-conntrack_sip_svn20060804.patch
11b4fb9f 253
254###
255# End netfilter
256###
257
655cccc7 258# from http://ace-host.stuart.id.au/russell/files/debian/sarge/kernel-patch-linuxabi/kernel-patch-linuxabi_20060404.tar.gz
259Patch40: linuxabi-2.6.16-0.patch
260
09cf43b8 261# derived from http://dl.sourceforge.net/l7-filter/netfilter-layer7-v2.2.tar.gz
6218e52b 262Patch49: kernel-2.6.13-2.6.16-layer7-2.2.patch
09cf43b8 263
11b4fb9f 264# from http://www.linuximq.net/patchs/linux-2.6.16-imq2.diff
265Patch50: linux-2.6.16-imq2.diff
266
267# from http://bluetooth-alsa.sourceforge.net/sco-mtu.patch
268Patch51: sco-mtu.patch
269
11b4fb9f 270# esfq
271# from http://fatooh.org/esfq-2.6/current/esfq-kernel.patch
272Patch53: esfq-kernel.patch
273
274Patch54: linux-iforce-trust_ffrm.patch
275# by Baggins request:
276# derived from ftp://ftp.cmf.nrl.navy.mil/pub/chas/linux-atm/vbr/vbr-kernel-diffs
277Patch55: linux-2.6-atm-vbr.patch
278Patch56: linux-2.6-atmdd.patch
279
280Patch57: linux-2.6-cpuset_virtualization.patch
281
282# Derived from http://www.skd.de/e_en/products/adapters/pci_64/sk-98xx_v20/software/linux/driver/install-8_31.tar.bz2
283Patch60: linux-2.6-sk98lin-8.31.2.3.patch
284
285Patch70: linux-2.6-suspend2-avoid-redef.patch
286Patch71: linux-2.6-suspend2-page.patch
43b73d0d 287Patch72: suspend2-2.2.5-for-2.6.16.37-fix.patch
11b4fb9f 288
69a950d4
AM
289Patch80: kernel-ahci-sb600.patch
290
dace23da 291Patch81: linux-2.6-md.patch
3eae70f5 292Patch82: linux-3w-9xxx.patch
6698c638 293
4682ee3b 294# From http://www.broadcom.com/support/ethernet_nic/driver-sla.php?driver=570x-Linux
295Patch83: linux-tg3-3.81c.patch
296
14e97cf0 297# ICH9 from kernel-2.6.17.17mdv from Mandriva
298Patch85: linux-2.6-i2ci801_ich9.patch
299Patch86: linux-2.6-sata-ich9.patch
300
9aa654b6 301# IPSEC KLIPS
27e10048
ER
302Patch90: http://www.openswan.org/download/openswan-2.4.9.kernel-2.6-klips.patch.gz
303Patch91: http://www.openswan.org/download/openswan-2.4.9.kernel-2.6-natt.patch.gz
6e765654 304Patch92: linux-asm_segment_h.patch
9aa654b6 305
11b4fb9f 306# vserver from: http://vserver.13thfloor.at/Experimental/patch-2.6.16-vs2.1.1-rc15.diff
307Patch100: linux-2.6-vs2.1.patch
308Patch101: linux-2.6-vs2.1-suspend2.patch
309Patch102: linux-2.6-vs2.1-128IPs.patch
dd288036 310Patch103: linux-vcontext-selinux.patch
b016878c 311Patch104: kernel-CVE-2008-0163.patch
11b4fb9f 312
313# from http://www.cl.cam.ac.uk/Research/SRG/netos/xen/downloads/xen-3.0.2-src.tgz
876d6eb2 314#Patch120: kernel-xen.patch
11b4fb9f 315Patch120: xen-3.0-2.6.16.patch
4e6fef18 316Patch121: linux-xen-page_alloc.patch
69796008 317Patch122: kernel-xen-sparse-nv.patch
a199e4b1 318
9185a9d5
MWP
319# from http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/iw266_we20-6.diff
320Patch140: linux-2.6.16-we20-6.patch
a199e4b1 321
11b4fb9f 322Patch200: linux-2.6-ppc-ICE-hacks.patch
a199e4b1 323Patch201: linux-2.6-x86_64-stack-protector.patch
77e7e5f7 324Patch202: linux-2.6-unwind-through-signal-frames.patch
11b4fb9f 325
2ce3fd21 326# Wake-On-Lan patch for nVidia nForce ethernet driver forcedeth
327Patch250: linux-2.6.16-forcedeth-WON.patch
143bfe76 328Patch251: linux-nvidia.patch
2ce3fd21 329
bb8e6632 330# From ALSA 1.0.13 for nVidia
9876c658 331Patch252: linux-alsa-hda.patch
332
bb8e6632
ER
333# add tty ioctl to figure physical device of the console. used by showconsole.spec (blogd)
334Patch256: kernel-TIOCGDEV.patch
335
11b4fb9f 336Patch1000: linux-2.6-grsec-minimal.patch
7b52c449 337Patch1001: linux-2.6-grsec-wrong-deref.patch
11b4fb9f 338
f54665f0 339Patch1200: linux-2.6-apparmor.patch
8d2c8d78 340Patch1201: linux-2.6-apparmor-caps.patch
f54665f0 341
11b4fb9f 342# grsecurity snap for 2.6.16.14
343# based on http://www.grsecurity.net/~spender/grsecurity-2.1.9-2.6.16.14-200605060936.patch
344Patch9999: grsecurity-2.1.9-2.6.16.14.patch
8d2c8d78 345Patch10000: linux-2.6-grsec-caps.patch
11b4fb9f 346
347URL: http://www.kernel.org/
4e6fef18
JK
348%if %{with xen0} || %{with xenU}
349BuildRequires: bash
350%endif
11b4fb9f 351BuildRequires: binutils >= 3:2.14.90.0.7
11b4fb9f 352%ifarch sparc sparc64
353BuildRequires: elftoaout
354%endif
afa34a3a 355BuildRequires: /sbin/depmod
bb8e6632 356BuildRequires: gcc >= 5:3.2
11b4fb9f 357BuildRequires: net-tools
358BuildRequires: perl-base
69796008 359BuildRequires: rpm-build >= 4.4.9-56
11b4fb9f 360BuildRequires: rpmbuild(macros) >= 1.217
361Autoreqprov: no
362Requires(post): coreutils
363Requires(post): geninitrd >= 2.57
364Requires(post): module-init-tools >= 0.9.9
27e10048 365Requires: /sbin/depmod
11b4fb9f 366Requires: coreutils
367Requires: geninitrd >= 2.57
368Requires: module-init-tools >= 0.9.9
8ed28892 369Provides: %{name}(netfilter) = %{netfilter_snap}
e273a907 370Provides: %{name}(vermagic) = %{kernel_release}
27e10048 371Provides: %{name}-up = %{epoch}:%{version}-%{release}
e14a85fd 372%if %{with xen0}
09fc2ff4 373Requires: xen-hypervisor-abi = %{xen_hv_abi}
11b4fb9f 374%endif
11b4fb9f 375Obsoletes: kernel-misc-fuse
376Obsoletes: kernel-modules
377Obsoletes: kernel-net-hostap
378Obsoletes: kernel-net-ieee80211
379Obsoletes: kernel-net-ipp2p
380Conflicts: e2fsprogs < %{_e2fsprogs_ver}
381Conflicts: isdn4k-utils < %{_isdn4k_utils_ver}
382Conflicts: jfsutils < %{_jfsutils_ver}
383Conflicts: module-init-tool < %{_module_init_tool_ver}
384Conflicts: nfs-utils < %{_nfs_utils_ver}
385Conflicts: oprofile < %{_oprofile_ver}
386Conflicts: ppp < %{_ppp_ver}
387Conflicts: procps < %{_procps_ver}
388Conflicts: quota-tools < %{_quota_tools_ver}
67ea3fe1 389%if %{with reiserfs4}
11b4fb9f 390Conflicts: reiser4progs < %{_reiser4progs_ver}
67ea3fe1 391%endif
11b4fb9f 392Conflicts: reiserfsprogs < %{_reiserfsprogs_ver}
393Conflicts: udev < %{_udev_ver}
394Conflicts: util-linux < %{_util_linux_ver}
395Conflicts: xfsprogs < %{_xfsprogs_ver}
08dc0ae8
ER
396%if %{with xen} || %{with pae}
397ExclusiveArch: %{ix86} %{?with_xen:%{x8664}}
8856184b 398ExcludeArch: i386 i486 i586
11b4fb9f 399%else
400ExclusiveArch: %{ix86} alpha %{x8664} ia64 ppc ppc64 sparc sparc64
401%endif
402ExclusiveOS: Linux
403BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
404
634b7494
ER
405# No ELF objects there to strip (skips processing 27k files)
406%define _noautostrip .*%{_kernelsrcdir}/.*
407%define _noautochrpath .*%{_kernelsrcdir}/.*
408
11b4fb9f 409%ifarch ia64
410%define initrd_dir /boot/efi
411%else
412%define initrd_dir /boot
413%endif
414
2b6a8c81 415%define _kernelsrcdir /usr/src/linux%{_alt_kernel}-%{version}
d974bb94 416
0fc471cb
ER
417%if "%{_target_base_arch}" != "%{_arch}"
418 %define CrossOpts ARCH=%{_target_base_arch} CROSS_COMPILE=%{_target_cpu}-pld-linux-
419 %define DepMod /bin/true
420
421 %if "%{_arch}" == "sparc" && "%{_target_base_arch}" == "sparc64"
7c1cabec 422 %define CrossOpts ARCH=%{_target_base_arch} CROSS_COMPILE=%{_target_cpu}-pld-linux- LD=%{__ld} AS=%{__as} NM=%{__nm} AR=%{__ar} RANLIB=%{__ranlib} STRIP=%{__strip}
0fc471cb
ER
423 %define DepMod /sbin/depmod
424 %endif
425
426 %if "%{_arch}" == "x86_64" && "%{_target_base_arch}" == "i386"
427 %define CrossOpts ARCH=%{_target_base_arch}
428 %define DepMod /sbin/depmod
429 %endif
430
431%else
432 %define CrossOpts CC="%{__cc}"
433 %define DepMod /sbin/depmod
434%endif
435
11b4fb9f 436%description
437This package contains the Linux kernel that is used to boot and run
438your system. It contains few device drivers for specific hardware.
439Most hardware is instead supported by modules loaded after booting.
440
ecc179bd
ER
441Netfilter 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}
448
aa2fd7a0 449%description -l de.UTF-8
e8a23023 450Das Kernel-Paket enthält den Linux-Kernel (vmlinuz), den Kern des
451Linux-Betriebssystems. Der Kernel ist für grundliegende
11b4fb9f 452Systemfunktionen verantwortlich: Speicherreservierung,
e8a23023 453Prozeß-Management, Geräte Ein- und Ausgaben, usw.
11b4fb9f 454
ecc179bd
ER
455Netfilter 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}
462
aa2fd7a0 463%description -l fr.UTF-8
11b4fb9f 464Le package kernel contient le kernel linux (vmlinuz), la partie
e8a23023 465centrale d'un système d'exploitation Linux. Le noyau traite les
466fonctions basiques d'un système d'exploitation: allocation mémoire,
467allocation de process, entrée/sortie de peripheriques, etc.
11b4fb9f 468
ecc179bd
ER
469Netfilter module dated: %{netfilter_snap}
470%{?with_grsec_full:Grsecurity full support - enabled}
471%{?with_pax:PaX support - enabled}
472%{?with_xen0:Xen 0 - enabled}
473%{?with_xenU:Xen U - enabled}
474%{?with_vesafb_tng:VesaFB New generation - enabled}
475%{?with_nfsroot:Root on NFS - enabled}
476
aa2fd7a0 477%description -l pl.UTF-8
e8a23023 478Pakiet zawiera jądro Linuksa niezbędne do prawidłowego działania
479Twojego komputera. Zawiera w sobie sterowniki do sprzętu znajdującego
480się w komputerze, takiego jak sterowniki dysków itp.
11b4fb9f 481
ecc179bd
ER
482Netfilter module dated: %{netfilter_snap}
483%{?with_grsec_full:Grsecurity full support - enabled}
484%{?with_pax:PaX support - enabled}
485%{?with_xen0:Xen 0 - enabled}
486%{?with_xenU:Xen U - enabled}
487%{?with_vesafb_tng:VesaFB New generation - enabled}
488%{?with_nfsroot:Root on NFS - enabled}
655cccc7 489%{?with_abi:Linux ABI support - enabled}
ecc179bd 490
11b4fb9f 491%package vmlinux
492Summary: vmlinux - uncompressed kernel image
e8a23023 493Summary(pl.UTF-8): vmlinux - rozpakowany obraz jądra
11b4fb9f 494Group: Base/Kernel
495
496%description vmlinux
497vmlinux - uncompressed kernel image.
498
aa2fd7a0 499%description vmlinux -l pl.UTF-8
e8a23023 500vmlinux - rozpakowany obraz jądra.
11b4fb9f 501
502%package drm
503Summary: DRM kernel modules
aa2fd7a0 504Summary(pl.UTF-8): Sterowniki DRM
11b4fb9f 505Group: Base/Kernel
506Requires(postun): %{name}-up = %{epoch}:%{version}-%{release}
507Requires: %{name}-up = %{epoch}:%{version}-%{release}
11b4fb9f 508Autoreqprov: no
509
510%description drm
f72cfa67 511DRM kernel modules.
11b4fb9f 512
aa2fd7a0 513%description drm -l pl.UTF-8
f72cfa67 514Sterowniki DRM.
11b4fb9f 515
516%package pcmcia
517Summary: PCMCIA modules
e8a23023 518Summary(pl.UTF-8): Moduły PCMCIA
11b4fb9f 519Group: Base/Kernel
520Requires(postun): %{name}-up = %{epoch}:%{version}-%{release}
521Requires: %{name}-up = %{epoch}:%{version}-%{release}
11b4fb9f 522Conflicts: pcmcia-cs < %{_pcmcia_cs_ver}
523Conflicts: pcmciautils < %{_pcmciautils_ver}
524Autoreqprov: no
525
526%description pcmcia
f72cfa67 527PCMCIA modules.
11b4fb9f 528
aa2fd7a0 529%description pcmcia -l pl.UTF-8
e8a23023 530Moduły PCMCIA.
11b4fb9f 531
532%package libs
533Summary: Libraries for preparing bootable kernel on PowerPCs
e8a23023 534Summary(pl.UTF-8): Biblioteki do przygotowania bootowalnego jądra dla PowerPC
11b4fb9f 535Group: Base/Kernel
536Requires: %{name}-up = %{epoch}:%{version}-%{release}
537Requires: mkvmlinuz >= %{_mkvmlinuz_ver}
538Autoreqprov: no
539
540%description libs
541Libraries for preparing bootable kernel on PowerPCs. Script called
542mkvmlinuz may be useful for this.
543
aa2fd7a0 544%description libs -l pl.UTF-8
e8a23023 545Biblioteki do przygotowania bootowalnego jądra dla PowerPC. Skrypt
546mkvmlinuz może być do tego przydatny.
11b4fb9f 547
548%package sound-alsa
549Summary: ALSA kernel modules
e8a23023 550Summary(pl.UTF-8): Sterowniki dźwięku ALSA
11b4fb9f 551Group: Base/Kernel
552Requires(postun): %{name}-up = %{epoch}:%{version}-%{release}
553Requires: %{name}-up = %{epoch}:%{version}-%{release}
554Autoreqprov: no
555
556%description sound-alsa
557ALSA (Advanced Linux Sound Architecture) sound drivers.
558
aa2fd7a0 559%description sound-alsa -l pl.UTF-8
e8a23023 560Sterowniki dźwięku ALSA (Advanced Linux Sound Architecture).
11b4fb9f 561
562%package sound-oss
563Summary: OSS kernel modules
e8a23023 564Summary(pl.UTF-8): Sterowniki dźwięku OSS
11b4fb9f 565Group: Base/Kernel
566Requires(postun): %{name}-up = %{epoch}:%{version}-%{release}
567Requires: %{name}-up = %{epoch}:%{version}-%{release}
568Autoreqprov: no
569
570%description sound-oss
571OSS (Open Sound System) drivers.
572
aa2fd7a0 573%description sound-oss -l pl.UTF-8
e8a23023 574Sterowniki dźwięku OSS (Open Sound System).
11b4fb9f 575
576%package smp
577Summary: Kernel version %{version} compiled for SMP machines
e8a23023 578Summary(de.UTF-8): Kernel version %{version} für Multiprozessor-Maschinen
aa2fd7a0 579Summary(fr.UTF-8): Kernel version %{version} compiler pour les machine Multi-Processeur
e8a23023 580Summary(pl.UTF-8): Jądro Linuksa w wersji %{version} dla maszyn wieloprocesorowych
11b4fb9f 581Group: Base/Kernel
582Requires(post): coreutils
583Requires(post): geninitrd >= 2.57
584Requires(post): module-init-tools >= 0.9.9
27e10048 585Requires: /sbin/depmod
11b4fb9f 586Requires: coreutils
587Requires: geninitrd >= 2.26
588Requires: module-init-tools >= 0.9.9
8ed28892 589Provides: %{name}(netfilter) = %{netfilter_snap}
e273a907 590Provides: %{name}-smp(vermagic) = %{kernel_release}
e14a85fd 591%if %{with xen0}
09fc2ff4 592Requires: xen-hypervisor-abi = %{xen_hv_abi}
11b4fb9f 593%endif
11b4fb9f 594Obsoletes: kernel-smp-misc-fuse
595Obsoletes: kernel-smp-net-hostap
596Obsoletes: kernel-smp-net-ieee80211
597Obsoletes: kernel-smp-net-ipp2p
598Conflicts: e2fsprogs < %{_e2fsprogs_ver}
599Conflicts: isdn4k-utils < %{_isdn4k_utils_ver}
600Conflicts: jfsutils < %{_jfsutils_ver}
601Conflicts: module-init-tool < %{_module_init_tool_ver}
602Conflicts: nfs-utils < %{_nfs_utils_ver}
603Conflicts: oprofile < %{_oprofile_ver}
604Conflicts: ppp < %{_ppp_ver}
605Conflicts: procps < %{_procps_ver}
606Conflicts: quota-tools < %{_quota_tools_ver}
67ea3fe1 607%if %{with reiserfs4}
11b4fb9f 608Conflicts: reiser4progs < %{_reiser4progs_ver}
67ea3fe1 609%endif
11b4fb9f 610Conflicts: reiserfsprogs < %{_reiserfsprogs_ver}
611Conflicts: util-linux < %{_util_linux_ver}
612Conflicts: xfsprogs < %{_xfsprogs_ver}
613Autoreqprov: no
614
615%description smp
616This package includes a SMP version of the Linux %{version} kernel. It
617is required only on machines with two or more CPUs, although it should
618work fine on single-CPU boxes.
619
ecc179bd
ER
620Netfilter module dated: %{netfilter_snap}
621%{?with_grsec_full:Grsecurity full support - enabled}
622%{?with_pax:PaX support - enabled}
623%{?with_xen0:Xen 0 - enabled}
624%{?with_xenU:Xen U - enabled}
625%{?with_vesafb_tng:VesaFB New generation - enabled}
626%{?with_nfsroot:Root on NFS - enabled}
627
aa2fd7a0 628%description smp -l de.UTF-8
e8a23023 629Dieses Paket enthält eine SMP (Multiprozessor)-Version von
630Linux-Kernel %{version}. Es wird für Maschinen mit zwei oder mehr
11b4fb9f 631Prozessoren gebraucht, sollte aber auch auf Computern mit nur einer
632CPU laufen.
633
ecc179bd
ER
634Netfilter module dated: %{netfilter_snap}
635%{?with_grsec_full:Grsecurity full support - enabled}
636%{?with_pax:PaX support - enabled}
637%{?with_xen0:Xen 0 - enabled}
638%{?with_xenU:Xen U - enabled}
639%{?with_vesafb_tng:VesaFB New generation - enabled}
640%{?with_nfsroot:Root on NFS - enabled}
655cccc7 641%{?with_abi:Linux ABI support - enabled}
ecc179bd 642
aa2fd7a0 643%description smp -l fr.UTF-8
11b4fb9f 644Ce package inclu une version SMP du noyau de Linux version {version}.
e8a23023 645Il et nécessaire seulement pour les machine avec deux processeurs ou
646plus, il peut quand même fonctionner pour les système mono-processeur.
11b4fb9f 647
ecc179bd
ER
648Netfilter module dated: %{netfilter_snap}
649%{?with_grsec_full:Grsecurity full support - enabled}
650%{?with_pax:PaX support - enabled}
651%{?with_xen0:Xen 0 - enabled}
652%{?with_xenU:Xen U - enabled}
653%{?with_vesafb_tng:VesaFB New generation - enabled}
654%{?with_nfsroot:Root on NFS - enabled}
655cccc7 655%{?with_abi:Linux ABI support - enabled}
ecc179bd 656
aa2fd7a0 657%description smp -l pl.UTF-8
e8a23023 658Pakiet zawiera jądro SMP Linuksa w wersji %{version}. Jest ono
659wymagane przez komputery zawierające dwa lub więcej procesorów.
660Powinno również dobrze działać na maszynach z jednym procesorem.
11b4fb9f 661
ecc179bd
ER
662Netfilter module dated: %{netfilter_snap}
663%{?with_grsec_full:Grsecurity full support - enabled}
664%{?with_pax:PaX support - enabled}
665%{?with_xen0:Xen 0 - enabled}
666%{?with_xenU:Xen U - enabled}
667%{?with_vesafb_tng:VesaFB New generation - enabled}
668%{?with_nfsroot:Root on NFS - enabled}
655cccc7 669%{?with_abi:Linux ABI support - enabled}
ecc179bd 670
11b4fb9f 671%package smp-vmlinux
672Summary: vmlinux - uncompressed SMP kernel image
e8a23023 673Summary(pl.UTF-8): vmlinux - rozpakowany obraz jądra SMP
11b4fb9f 674Group: Base/Kernel
675
676%description smp-vmlinux
677vmlinux - uncompressed SMP kernel image.
678
aa2fd7a0 679%description smp-vmlinux -l pl.UTF-8
e8a23023 680vmlinux - rozpakowany obraz jądra SMP.
11b4fb9f 681
682%package smp-drm
683Summary: DRM SMP kernel modules
aa2fd7a0 684Summary(pl.UTF-8): Sterowniki DRM dla maszyn wieloprocesorowych
11b4fb9f 685Group: Base/Kernel
686Requires(postun): %{name}-smp = %{epoch}:%{version}-%{release}
687Requires: %{name}-smp = %{epoch}:%{version}-%{release}
11b4fb9f 688Autoreqprov: no
689
690%description smp-drm
f72cfa67 691DRM SMP kernel modules.
11b4fb9f 692
aa2fd7a0 693%description smp-drm -l pl.UTF-8
f72cfa67 694Sterowniki DRM dla maszyn wieloprocesorowych.
11b4fb9f 695
696%package smp-pcmcia
697Summary: PCMCIA modules for SMP kernel
e8a23023 698Summary(pl.UTF-8): Moduły PCMCIA dla maszyn SMP
11b4fb9f 699Group: Base/Kernel
700Requires(postun): %{name}-smp = %{epoch}:%{version}-%{release}
701Requires: %{name}-smp = %{epoch}:%{version}-%{release}
11b4fb9f 702Conflicts: pcmcia-cs < %{_pcmcia_cs_ver}
703Conflicts: pcmciautils < %{_pcmciautils_ver}
704Autoreqprov: no
705
706%description smp-pcmcia
f72cfa67 707PCMCIA modules for SMP kernel.
11b4fb9f 708
aa2fd7a0 709%description smp-pcmcia -l pl.UTF-8
e8a23023 710Moduły PCMCIA dla maszyn SMP.
11b4fb9f 711
712%package smp-libs
713Summary: Libraries for preparing bootable SMP kernel on PowerPCs
e8a23023 714Summary(pl.UTF-8): Biblioteki do przygotowania bootowalnego jądra dla wieloprocesorowych PowerPC
11b4fb9f 715Group: Base/Kernel
716Requires: %{name}-smp = %{epoch}:%{version}-%{release}
717Requires: mkvmlinuz >= %{_mkvmlinuz_ver}
718Autoreqprov: no
719
720%description smp-libs
721Libraries for preparing bootable SMP kernel on PowerPCs. Script called
722mkvmlinuz may be useful for this.
723
aa2fd7a0 724%description smp-libs -l pl.UTF-8
e8a23023 725Biblioteki do przygotowania bootowalnego jądra dla wieloprocesorowych
726PowerPC. Skrypt mkvmlinuz może być do tego przydatny.
11b4fb9f 727
728%package smp-sound-alsa
729Summary: ALSA SMP kernel modules
e8a23023 730Summary(pl.UTF-8): Sterowniki dźwięku ALSA dla maszyn wieloprocesorowych
11b4fb9f 731Group: Base/Kernel
732Requires(postun): %{name}-smp = %{epoch}:%{version}-%{release}
733Requires: %{name}-smp = %{epoch}:%{version}-%{release}
734Autoreqprov: no
735
736%description smp-sound-alsa
737ALSA (Advanced Linux Sound Architecture) SMP sound drivers.
738
aa2fd7a0 739%description smp-sound-alsa -l pl.UTF-8
e8a23023 740Sterowniki dźwięku ALSA (Advanced Linux Sound Architecture) dla maszyn
11b4fb9f 741wieloprocesorowych.
742
743%package smp-sound-oss
744Summary: OSS SMP kernel modules
e8a23023 745Summary(pl.UTF-8): Sterowniki dźwięku OSS dla maszyn wieloprocesorowych
11b4fb9f 746Group: Base/Kernel
747Requires(postun): %{name}-smp = %{epoch}:%{version}-%{release}
748Requires: %{name}-smp = %{epoch}:%{version}-%{release}
749Autoreqprov: no
750
751%description smp-sound-oss
752OSS (Open Sound System) SMP sound drivers.
753
aa2fd7a0 754%description smp-sound-oss -l pl.UTF-8
11b4fb9f 755Sterowniki OSS (Open Sound System) dla maszyn wieloprocesorowych.
756
757%package headers
758Summary: Header files for the Linux kernel
e8a23023 759Summary(pl.UTF-8): Pliki nagłówkowe jądra Linuksa
11b4fb9f 760Group: Development/Building
8ed28892 761Provides: %{name}-headers(netfilter) = %{netfilter_snap}
11b4fb9f 762Autoreqprov: no
763
764%description headers
765These are the C header files for the Linux kernel, which define
766structures and constants that are needed when rebuilding the kernel or
767building kernel modules.
768
aa2fd7a0 769%description headers -l pl.UTF-8
e8a23023 770Pakiet zawiera pliki nagłówkowe jądra, niezbędne do rekompilacji jądra
771oraz budowania modułów jądra.
11b4fb9f 772
773%package module-build
774Summary: Development files for building kernel modules
e8a23023 775Summary(pl.UTF-8): Pliki służące do budowania modułów jądra
11b4fb9f 776Group: Development/Building
777Requires: %{name}-headers = %{epoch}:%{version}-%{release}
8ed28892 778Conflicts: rpmbuild(macros) < 1.321
11b4fb9f 779Autoreqprov: no
780
781%description module-build
782Development files from kernel source tree needed to build Linux kernel
783modules from external packages.
784
aa2fd7a0 785%description module-build -l pl.UTF-8
e8a23023 786Pliki ze drzewa źródeł jądra potrzebne do budowania modułów jądra
787Linuksa z zewnętrznych pakietów.
11b4fb9f 788
789%package source
790Summary: Kernel source tree
e8a23023 791Summary(pl.UTF-8): Kod źródłowy jądra Linuksa
11b4fb9f 792Group: Development/Building
793Requires: %{name}-module-build = %{epoch}:%{version}-%{release}
11b4fb9f 794Autoreqprov: no
795
796%description source
bb8e6632
ER
797This is the source code for the Linux kernel. You can build a custom
798kernel that is better tuned to your particular hardware.
11b4fb9f 799
aa2fd7a0 800%description source -l de.UTF-8
e8a23023 801Das Kernel-Source-Paket enthält den source code (C/Assembler-Code) des
11b4fb9f 802Linux-Kernels. Die Source-Dateien werden gebraucht, um viele
e8a23023 803C-Programme zu compilieren, da sie auf Konstanten zurückgreifen, die
804im Kernel-Source definiert sind. Die Source-Dateien können auch
11b4fb9f 805benutzt werden, um einen Kernel zu compilieren, der besser auf Ihre
806Hardware ausgerichtet ist.
807
aa2fd7a0 808%description source -l fr.UTF-8
11b4fb9f 809Le package pour le kernel-source contient le code source pour le noyau
e8a23023 810linux. Ces sources sont nécessaires pour compiler la plupart des
811programmes C, car il dépend de constantes définies dans le code
812source. Les sources peuvent être aussi utilisée pour compiler un noyau
813personnalisé pour avoir de meilleures performances sur des matériels
11b4fb9f 814particuliers.
815
aa2fd7a0 816%description source -l pl.UTF-8
e8a23023 817Pakiet zawiera kod źródłowy jądra systemu.
11b4fb9f 818
819%package doc
820Summary: Kernel documentation
e8a23023 821Summary(pl.UTF-8): Dokumentacja do jądra Linuksa
11b4fb9f 822Group: Documentation
11b4fb9f 823Autoreqprov: no
824
825%description doc
826This is the documentation for the Linux kernel, as found in
827/usr/src/linux/Documentation directory.
828
aa2fd7a0 829%description doc -l pl.UTF-8
e8a23023 830Pakiet zawiera dokumentację do jądra Linuksa pochodzącą z katalogu
11b4fb9f 831/usr/src/linux/Documentation.
832
833%prep
9f4248f4
PS
834%setup -q -n linux-%{_basever} -a10
835%{__bzip2} -dc %{SOURCE3} | patch -p1 -s
11b4fb9f 836
837%ifarch ppc
838install %{SOURCE5} Makefile.ppclibs
839%endif
840
841%patch1 -p1
842
43b73d0d 843%patch72 -p0
11b4fb9f 844for i in suspend2-%{suspend_version}-for-2.6.16.9/[0-9]*; do
845patch -p1 -s < $i
846done
992d4225
ER
847rm -rf suspend2-%{suspend_version}-for-2.6.16.9
848
11b4fb9f 849%patch70 -p1
850%patch71 -p1
851
852# reiserfs4
67ea3fe1 853%if %{with reiserfs4}
11b4fb9f 854%{__gzip} -dc %{SOURCE12} | %{__patch} -s -p1
67ea3fe1 855%endif
11b4fb9f 856
857%patch2 -p1
9f4248f4 858
a8e06ed7 859%patch8 -p1
860%if %{with bootsplash}
861%patch3 -p1
862%else
11b4fb9f 863%patch4 -p1
a8e06ed7 864%endif
11b4fb9f 865
866%ifarch %{ix86}
b0395610 867%{?with_vesafb_tng:%patch5 -p1}
11b4fb9f 868%endif
869
870%patch6 -p1
871
872%patch7 -p1
11b4fb9f 873%patch9 -p1
874
875## netfilter
876# submitted
877
878# base
879%patch10 -p1
880%patch11 -p1
881%patch12 -p1
882%patch13 -p1
883%patch14 -p1
884%patch15 -p1
885%patch16 -p1
886%patch17 -p1
887%patch18 -p1
888%patch19 -p1
889%patch20 -p1
890%patch21 -p1
891%patch22 -p1
892
893## extra
894%patch30 -p1
895%patch31 -p1
896%patch32 -p1
897%patch33 -p1
898%patch34 -p1
899%patch35 -p1
900%patch36 -p1
901%patch37 -p1
902%patch38 -p1
14e97cf0 903%patch39 -p1
11b4fb9f 904
905##
906# end of netfilter
907
655cccc7 908%if %{with abi}
909%patch40 -p1
910%endif
911
6218e52b 912%patch49 -p1
09cf43b8 913
11b4fb9f 914%patch50 -p1
915
916%patch51 -p1
917
11b4fb9f 918%patch53 -p1
919
920%patch54 -p1
921
922%patch55 -p1
923%patch56 -p1
924
925
926%ifarch %{ix86} %{x8664} ia64
927%patch57 -p1
928%endif
929
930%patch60 -p1
931
69a950d4
AM
932%patch80 -p1
933
dace23da 934%patch81 -p1
3eae70f5 935%patch82 -p1
7c1cabec 936%ifnarch sparc64
4682ee3b 937%patch83 -p1
7c1cabec 938%endif
6698c638 939
14e97cf0 940%patch85 -p1
941%patch86 -p1
942
9aa654b6 943%patch90 -p1
944%patch91 -p1
6e765654 945%patch92 -p1
9aa654b6 946
11b4fb9f 947%patch100 -p1
948%patch101 -p1
949%patch102 -p1
dd288036 950%patch103 -p1
b016878c 951%patch104 -p1
11b4fb9f 952
08dc0ae8 953%if %{with xen}
11b4fb9f 954%ifarch %{ix86} %{x8664} ia64
955%patch120 -p1
4e6fef18 956%patch121 -p1
69796008 957%patch122 -p1
11b4fb9f 958%endif
959%endif
960
9185a9d5
MWP
961%patch140 -p1
962
a199e4b1
PS
963%ifarch ppc ppc64
964%patch200 -p1
965%endif
966%ifarch %{x8664}
967%patch201 -p1
968%endif
77e7e5f7
PS
969%ifarch ppc ppc64 %{ix86} %{x8664}
970%patch202 -p1
971%endif
a199e4b1 972
2ce3fd21 973%patch250 -p1
143bfe76 974%patch251 -p1
2ce3fd21 975
9876c658 976%patch252 -p1
bb8e6632 977%patch256 -p1
9876c658 978
1a91774f 979# security patches
1a91774f 980
f54665f0 981%patch1200 -p1
8d2c8d78 982%patch1201 -p1
f54665f0 983
11b4fb9f 984%if %{with grsec_minimal}
985%patch1000 -p1
986%endif
987%if %{with grsec_full}
988%patch9999 -p1
8d2c8d78 989%patch10000 -p1
11b4fb9f 990%endif
991
878db323 992%if %{with pax}
993%patch9999 -p1
8d2c8d78 994%patch10000 -p1
878db323 995%endif
996
7b52c449
AG
997%if %{with grsecurity}
998%patch1001 -p1
999%endif
1000
11b4fb9f 1001# Fix EXTRAVERSION in main Makefile
ef1009fa 1002sed -i 's#EXTRAVERSION =.*#EXTRAVERSION = %{_postver}%{?alt_kernel:_%{alt_kernel}}#g' Makefile
11b4fb9f 1003
1004# on sparc this line causes CONFIG_INPUT=m (instead of =y), thus breaking build
1005sed -i -e '/select INPUT/d' net/bluetooth/hidp/Kconfig
1006
1007# cleanup backups after patching
f72cfa67 1008find '(' -name '*~' -o -name '*.orig' -o -name '.gitignore' ')' -print0 | xargs -0 -r -l512 rm -f
11b4fb9f 1009
1010%build
1011TuneUpConfigForIX86 () {
1012%ifarch %{ix86}
1013 pae=
1014 [ "$2" = "yes" ] && pae=yes
1015 %if %{with pae}
1016 pae=yes
1017 %endif
1018 %ifnarch i386
1019 sed -i 's:CONFIG_M386=y:# CONFIG_M386 is not set:' $1
1020 %endif
1021 %ifarch i486
1022 sed -i 's:# CONFIG_M486 is not set:CONFIG_M486=y:' $1
1023 %endif
1024 %ifarch i586
1025 sed -i 's:# CONFIG_M586 is not set:CONFIG_M586=y:' $1
1026 %endif
1027 %ifarch i686
1028 sed -i 's:# CONFIG_M686 is not set:CONFIG_M686=y:' $1
1029 %endif
1030 %ifarch pentium3
1031 sed -i 's:# CONFIG_MPENTIUMIII is not set:CONFIG_MPENTIUMIII=y:' $1
1032 %endif
1033 %ifarch pentium4
1034 sed -i 's:# CONFIG_MPENTIUM4 is not set:CONFIG_MPENTIUM4=y:' $1
1035 %endif
1036 %ifarch athlon
1037 sed -i 's:# CONFIG_MK7 is not set:CONFIG_MK7=y:' $1
1038 %endif
1039 %ifarch i686 athlon pentium3 pentium4
1040 if [ "$pae" = "yes" ]; then
1041 sed -i "s:CONFIG_HIGHMEM4G=y:# CONFIG_HIGHMEM4G is not set:" $1
1042 sed -i "s:# CONFIG_HIGHMEM64G is not set:CONFIG_HIGHMEM64G=y\nCONFIG_X86_PAE=y:" $1
1043 fi
1044 sed -i 's:CONFIG_MATH_EMULATION=y:# CONFIG_MATH_EMULATION is not set:' $1
1045 %endif
1046 return 0
1047%endif
1048}
1049
11b4fb9f 1050BuildConfig() {
1051 %{?debug:set -x}
1052 # is this a special kernel we want to build?
1053 smp=
1054 [ "$1" = "smp" -o "$2" = "smp" ] && smp=yes
1055 if [ "$smp" = "yes" ]; then
1056 Config="%{_target_base_arch}-smp"
1057 else
1058 Config="%{_target_base_arch}"
1059 fi
d974bb94 1060 KernelVer=%{kernel_release}$1
11b4fb9f 1061
1062 echo "Building config file [using $Config.conf] for KERNEL $1..."
1063 cat $RPM_SOURCE_DIR/kernel-$Config.config > arch/%{_target_base_arch}/defconfig
1064
1065 TuneUpConfigForIX86 arch/%{_target_base_arch}/defconfig "$smp"
1066
1067%ifarch ppc ppc64
1068 if [ "$smp" = "yes" ]; then
1069 install %{SOURCE31} arch/%{_target_base_arch}/defconfig
1070 else
1071 install %{SOURCE30} arch/%{_target_base_arch}/defconfig
1072 fi
1073%endif
1074
1075%ifarch ppc64
1076 sed -i "s:# CONFIG_PPC64 is not set:CONFIG_PPC64=y:" arch/%{_target_base_arch}/defconfig
1077%endif
1078
1079 # netfilter
1080 cat %{SOURCE40} >> arch/%{_target_base_arch}/defconfig
1081 # squashfs
1082 cat %{SOURCE41} >> arch/%{_target_base_arch}/defconfig
1083 # suspend2
1084 cat %{SOURCE42} >> arch/%{_target_base_arch}/defconfig
1085%ifarch ppc ppc64
1086 sed -i "s:CONFIG_SUSPEND2=y:# CONFIG_SUSPEND2 is not set:" arch/%{_target_base_arch}/defconfig
1087%endif
1088 # vserver
1089 cat %{SOURCE43} >> arch/%{_target_base_arch}/defconfig
1090 # vesafb-tng
1091 cat %{SOURCE44} >> arch/%{_target_base_arch}/defconfig
1092
1093%if %{with grsecurity}
878db323 1094 %if %{with pax}
1095 cat %{SOURCE49} >> arch/%{_target_base_arch}/defconfig
1096 %else
1097 cat %{SOURCE45} >> arch/%{_target_base_arch}/defconfig
1098 %endif
11b4fb9f 1099%endif
1100
9aa654b6 1101 # IPSEC KLIPS
1102 cat %{SOURCE50} >> arch/%{_target_base_arch}/defconfig
1103
655cccc7 1104%if %{with abi}
1105 cat %{SOURCE51} >> arch/%{_target_base_arch}/defconfig
1106%endif
1107
08dc0ae8 1108%if %{with xen}
4e6fef18
JK
1109 sed -i "s:CONFIG_X86_PC=y:# CONFIG_X86_PC is not set:" arch/%{_target_base_arch}/defconfig
1110 sed -i "s:CONFIG_RIO=[ym]:# CONFIG_RIO is not set:" arch/%{_target_base_arch}/defconfig
1111
1112 # framebuffer devices generally don't work with xen
1113 # and kernel will crash on boot if vesafb-tng is compiled in (even if off by default)
1114 sed -i "s:CONFIG_FB=y:# CONFIG_FB is not set:" arch/%{_target_base_arch}/defconfig
1115
1116 cat %{SOURCE48} >> arch/%{_target_base_arch}/defconfig
1117%endif
1118
11b4fb9f 1119%if %{with xen0}
1120 cat %{SOURCE46} >> arch/%{_target_base_arch}/defconfig
d4f08b76 1121%endif
11b4fb9f 1122
1123%if %{with xenU}
1124 cat %{SOURCE47} >> arch/%{_target_base_arch}/defconfig
d4f08b76
ER
1125%endif
1126
11b4fb9f 1127 # fbsplash
1128 echo "CONFIG_FB_SPLASH=y" >> arch/%{_target_base_arch}/defconfig
a8e06ed7 1129 # bootsplash
1130 echo "CONFIG_BOOTSPLASH=y" >> arch/%{_target_base_arch}/defconfig
11b4fb9f 1131
1132%if %{with nfsroot}
1133 sed -i "s:CONFIG_NFS_FS=m:CONFIG_NFS_FS=y:" arch/%{_target_base_arch}/defconfig
1134 echo "CONFIG_ROOT_NFS=y" >> arch/%{_target_base_arch}/defconfig
1135%endif
1136
d959720d
ER
1137%if %{with ext2compiled}
1138 sed -i 's,CONFIG_EXT2_FS=m,CONFIG_EXT2_FS=y,' arch/%{_target_base_arch}/defconfig
1139%endif
1140
11b4fb9f 1141%{?debug:sed -i "s:# CONFIG_DEBUG_SLAB is not set:CONFIG_DEBUG_SLAB=y:" arch/%{_target_base_arch}/defconfig}
1142%{?debug:sed -i "s:# CONFIG_DEBUG_PREEMPT is not set:CONFIG_DEBUG_PREEMPT=y:" arch/%{_target_base_arch}/defconfig}
1143%{?debug:sed -i "s:# CONFIG_RT_DEADLOCK_DETECT is not set:CONFIG_RT_DEADLOCK_DETECT=y:" arch/%{_target_base_arch}/defconfig}
1144
06c62fe4
SP
1145 if [ "$smp" = "yes" ]; then
1146 sed -e 's:CONFIG_LOCALVERSION="":CONFIG_LOCALVERSION="smp":' \
1147 -i arch/%{_target_base_arch}/defconfig
1148 fi
1149
11b4fb9f 1150 ln -sf arch/%{_target_base_arch}/defconfig .config
79fdcf5f 1151 install -d $KERNEL_INSTALL_DIR%{_kernelsrcdir}/include/linux
11b4fb9f 1152 rm -f include/linux/autoconf.h
0fc471cb 1153 %{__make} %CrossOpts include/linux/autoconf.h
11b4fb9f 1154 if [ "$smp" = "yes" ]; then
1155 install include/linux/autoconf.h \
79fdcf5f 1156 $KERNEL_INSTALL_DIR%{_kernelsrcdir}/include/linux/autoconf-smp.h
11b4fb9f 1157 install .config \
79fdcf5f 1158 $KERNEL_INSTALL_DIR%{_kernelsrcdir}/config-smp
11b4fb9f 1159 else
1160 install include/linux/autoconf.h \
79fdcf5f 1161 $KERNEL_INSTALL_DIR%{_kernelsrcdir}/include/linux/autoconf-up.h
11b4fb9f 1162 install .config \
79fdcf5f 1163 $KERNEL_INSTALL_DIR%{_kernelsrcdir}/config-up
11b4fb9f 1164 fi
1165}
1166
1167BuildKernel() {
1168 %{?debug:set -x}
afa34a3a 1169 echo "Building kernel${1:+ $1}..."
0fc471cb 1170 %{__make} %CrossOpts mrproper \
11b4fb9f 1171 RCS_FIND_IGNORE='-name build-done -prune -o'
1172 ln -sf arch/%{_target_base_arch}/defconfig .config
1173
1174%ifarch sparc
1175 sparc32 %{__make} clean \
1176 RCS_FIND_IGNORE='-name build-done -prune -o'
1177%else
0fc471cb 1178 %{__make} %CrossOpts clean \
11b4fb9f 1179 RCS_FIND_IGNORE='-name build-done -prune -o'
1180%endif
0fc471cb 1181 %{__make} %CrossOpts include/linux/version.h \
11b4fb9f 1182 %{?with_verbose:V=1}
1183
1184# make does vmlinux, modules and bzImage at once
1185%ifarch sparc sparc64
1186%ifarch sparc64
0fc471cb 1187 %{__make} %CrossOpts image \
11b4fb9f 1188 %{?with_verbose:V=1}
1189
0fc471cb 1190 %{__make} %CrossOpts modules \
11b4fb9f 1191 %{?with_verbose:V=1}
1192%else
1193 sparc32 %{__make} \
1194 %{?with_verbose:V=1}
1195%endif
1196%else
0fc471cb 1197 %{__make} %CrossOpts \
08dc0ae8 1198%if %{with xen}
4e6fef18
JK
1199 SHELL=/bin/bash \
1200%endif
11b4fb9f 1201 %{?with_verbose:V=1}
1202%endif
1203}
1204
1205PreInstallKernel() {
1206 smp=
1207 [ "$1" = "smp" -o "$2" = "smp" ] && smp=yes
1208 if [ "$smp" = "yes" ]; then
1209 Config="%{_target_base_arch}-smp"
1210 else
1211 Config="%{_target_base_arch}"
1212 fi
d974bb94 1213 KernelVer=%{kernel_release}$1
11b4fb9f 1214
1215 mkdir -p $KERNEL_INSTALL_DIR/boot
1216 install System.map $KERNEL_INSTALL_DIR/boot/System.map-$KernelVer
1217%ifarch %{ix86} %{x8664}
08dc0ae8 1218%if %{with xen}
4e6fef18
JK
1219 install vmlinuz $KERNEL_INSTALL_DIR/boot/vmlinuz-$KernelVer
1220%else
11b4fb9f 1221 install arch/%{_target_base_arch}/boot/bzImage $KERNEL_INSTALL_DIR/boot/vmlinuz-$KernelVer
4e6fef18 1222%endif
11b4fb9f 1223 install vmlinux $KERNEL_INSTALL_DIR/boot/vmlinux-$KernelVer
1224%endif
1225%ifarch alpha sparc sparc64
1226 gzip -cfv vmlinux > vmlinuz
1227 install vmlinux $KERNEL_INSTALL_DIR/boot/vmlinux-$KernelVer
1228 install vmlinuz $KERNEL_INSTALL_DIR/boot/vmlinuz-$KernelVer
1229%ifarch sparc
1230 elftoaout arch/sparc/boot/image -o vmlinux.aout
1231 install vmlinux.aout $KERNEL_INSTALL_DIR/boot/vmlinux.aout-$KernelVer
1232%endif
1233%ifarch sparc64
1234 elftoaout arch/sparc64/boot/image -o vmlinux.aout
1235 install vmlinux.aout $KERNEL_INSTALL_DIR/boot/vmlinux.aout-$KernelVer
1236%endif
1237%endif
1238%ifarch ppc ppc64
1239 install vmlinux $KERNEL_INSTALL_DIR/boot/vmlinux-$KernelVer
1240 install vmlinux $KERNEL_INSTALL_DIR/boot/vmlinuz-$KernelVer
1241%endif
1242%ifarch ppc-broken
1243 %{__make} -f Makefile.ppclibs install \
1244 DESTDIR=$KERNEL_INSTALL_DIR/boot/libs-$KernelVer
1245%endif
1246%ifarch ia64
1247 gzip -cfv vmlinux > vmlinuz
1248 install -d $KERNEL_INSTALL_DIR/boot/efi
1249 install vmlinuz $KERNEL_INSTALL_DIR/boot/efi/vmlinuz-$KernelVer
1250 ln -sf efi/vmlinuz-$KernelVer $KERNEL_INSTALL_DIR/boot/vmlinuz-$KernelVer
1251%endif
0fc471cb 1252 %{__make} %CrossOpts modules_install \
11b4fb9f 1253 %{?with_verbose:V=1} \
2a353f0b 1254 DEPMOD=%DepMod \
11b4fb9f 1255 INSTALL_MOD_PATH=$KERNEL_INSTALL_DIR \
1256 KERNELRELEASE=$KernelVer
1257
1258 if [ "$smp" = "yes" ]; then
1259 install Module.symvers \
79fdcf5f 1260 $KERNEL_INSTALL_DIR%{_kernelsrcdir}/Module.symvers-smp
11b4fb9f 1261 else
1262 install Module.symvers \
79fdcf5f 1263 $KERNEL_INSTALL_DIR%{_kernelsrcdir}/Module.symvers-up
11b4fb9f 1264 fi
1265
1266 echo "CHECKING DEPENDENCIES FOR KERNEL MODULES"
2a353f0b 1267 if [ %DepMod = /sbin/depmod ]; then
0fc471cb
ER
1268 /sbin/depmod --basedir $KERNEL_INSTALL_DIR -ae -F $KERNEL_INSTALL_DIR/boot/System.map-$KernelVer -r $KernelVer || :
1269 else
1270 touch $KERNEL_INSTALL_DIR/lib/modules/$KernelVer/modules.dep
1271 fi
11b4fb9f 1272 echo "KERNEL RELEASE $KernelVer DONE"
1273}
1274
1275KERNEL_BUILD_DIR=`pwd`
d974bb94
ER
1276echo "-%{_localversion}" > localversion
1277
11b4fb9f 1278#install -m 644 %{SOURCE50} FAQ-pl
1279
1280# UP KERNEL
1281KERNEL_INSTALL_DIR="$KERNEL_BUILD_DIR/build-done/kernel-UP"
1282rm -rf $KERNEL_INSTALL_DIR
1283BuildConfig
1284%if %{with up}
1285BuildKernel
1286PreInstallKernel
1287%endif
1288
1289# SMP KERNEL
1290KERNEL_INSTALL_DIR="$KERNEL_BUILD_DIR/build-done/kernel-SMP"
1291rm -rf $KERNEL_INSTALL_DIR
1292BuildConfig smp
1293%if %{with smp}
1294BuildKernel smp
1295PreInstallKernel smp
1296%endif
1297
1298%install
1299rm -rf $RPM_BUILD_ROOT
5fff9624
ER
1300install -d $RPM_BUILD_ROOT
1301
11b4fb9f 1302umask 022
5fff9624
ER
1303# test if we can hardlink -- %{_builddir} and $RPM_BUILD_ROOT on same partition
1304if cp -al COPYING $RPM_BUILD_ROOT/COPYING 2>/dev/null; then
1305 l=l
1306 rm -f $RPM_BUILD_ROOT/COPYING
1307fi
11b4fb9f 1308
0fc471cb 1309export DEPMOD=%DepMod
11b4fb9f 1310
79fdcf5f 1311install -d $RPM_BUILD_ROOT%{_kernelsrcdir}
d974bb94 1312install -d $RPM_BUILD_ROOT%{_sysconfdir}/modprobe.d/%{kernel_release}{,smp}
11b4fb9f 1313
1314KERNEL_BUILD_DIR=`pwd`
1315
1316%if %{with up} || %{with smp}
5fff9624 1317cp -a$l $KERNEL_BUILD_DIR/build-done/kernel-*/* $RPM_BUILD_ROOT
11b4fb9f 1318%endif
1319
1320for i in "" smp ; do
d974bb94
ER
1321 if [ -e $RPM_BUILD_ROOT/lib/modules/%{kernel_release}$i ] ; then
1322 rm -f $RPM_BUILD_ROOT/lib/modules/%{kernel_release}$i/build
79fdcf5f 1323 ln -sf %{_kernelsrcdir} \
d974bb94
ER
1324 $RPM_BUILD_ROOT/lib/modules/%{kernel_release}$i/build
1325 install -d $RPM_BUILD_ROOT/lib/modules/%{kernel_release}$i/{cluster,misc}
11b4fb9f 1326 fi
1327done
1328
79fdcf5f 1329find . -maxdepth 1 ! -name "build-done" ! -name "." -exec cp -a$l "{}" "$RPM_BUILD_ROOT%{_kernelsrcdir}/" ";"
11b4fb9f 1330
79fdcf5f 1331cd $RPM_BUILD_ROOT%{_kernelsrcdir}
11b4fb9f 1332
0fc471cb 1333%{__make} %CrossOpts mrproper \
11b4fb9f 1334 RCS_FIND_IGNORE='-name build-done -prune -o'
1335
79fdcf5f
ER
1336if [ -e $KERNEL_BUILD_DIR/build-done/kernel-UP%{_kernelsrcdir}/include/linux/autoconf-up.h ]; then
1337install $KERNEL_BUILD_DIR/build-done/kernel-UP%{_kernelsrcdir}/include/linux/autoconf-up.h \
1338 $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux
1339install $KERNEL_BUILD_DIR/build-done/kernel-UP%{_kernelsrcdir}/config-up \
1340 $RPM_BUILD_ROOT%{_kernelsrcdir}
11b4fb9f 1341fi
1342
79fdcf5f
ER
1343if [ -e $KERNEL_BUILD_DIR/build-done/kernel-SMP%{_kernelsrcdir}/include/linux/autoconf-smp.h ]; then
1344install $KERNEL_BUILD_DIR/build-done/kernel-SMP%{_kernelsrcdir}/include/linux/autoconf-smp.h \
1345 $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux
1346install $KERNEL_BUILD_DIR/build-done/kernel-SMP%{_kernelsrcdir}/config-smp \
1347 $RPM_BUILD_ROOT%{_kernelsrcdir}
11b4fb9f 1348fi
1349
1350%if %{with up} || %{with smp}
1351# UP or SMP
79fdcf5f
ER
1352install $KERNEL_BUILD_DIR/build-done/kernel-*%{_kernelsrcdir}/include/linux/* \
1353 $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux
11b4fb9f 1354%endif
1355
0fc471cb
ER
1356%{__make} %CrossOpts mrproper
1357%{__make} %CrossOpts include/linux/version.h
79fdcf5f
ER
1358install %{SOURCE1} $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux/autoconf.h
1359install %{SOURCE2} $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux/config.h
11b4fb9f 1360
1361# collect module-build files and directories
79fdcf5f 1362perl %{SOURCE7} %{_kernelsrcdir} $KERNEL_BUILD_DIR
11b4fb9f 1363
1364%if %{with up} || %{with smp}
1365# ghosted initrd
d974bb94 1366touch $RPM_BUILD_ROOT/boot/initrd-%{kernel_release}{,smp}.gz
8b8c5c29 1367install -d $RPM_BUILD_ROOT/lib/modules/%{kernel_release}{,smp}
e273a907
ER
1368rm -f $RPM_BUILD_ROOT/lib/modules/%{kernel_release}{,smp}/{build,source}
1369touch $RPM_BUILD_ROOT/lib/modules/%{kernel_release}{,smp}/{build,source}
11b4fb9f 1370%endif
1371
1372%clean
1373rm -rf $RPM_BUILD_ROOT
1374
1375%preun
11b4fb9f 1376if [ -x /sbin/new-kernel-pkg ]; then
d974bb94 1377 /sbin/new-kernel-pkg --remove %{kernel_release}
11b4fb9f 1378fi
1379
1380%post
69796008
ER
1381# - update /boot/vmlinuz
1382# - update /boot/vmlinuz-%{alt_kernel}
60202dc4
ER
1383mv -f %{initrd_dir}/vmlinuz{,.old} 2> /dev/null
1384%{?alt_kernel:mv -f %{initrd_dir}/vmlinuz-%{alt_kernel}{,.old} 2> /dev/null}
1385mv -f %{initrd_dir}/System.map{,.old} 2> /dev/null
1386%{?alt_kernel:mv -f %{initrd_dir}/System-%{alt_kernel}.map{,.old} 2> /dev/null}
69796008 1387
60202dc4
ER
1388ln -sf vmlinuz-%{kernel_release} %{initrd_dir}/vmlinuz
1389%{?alt_kernel:ln -sf vmlinuz-%{kernel_release} %{initrd_dir}/vmlinuz-%{alt_kernel}}
1390ln -sf System.map-%{kernel_release} %{initrd_dir}/System.map
1391%{?alt_kernel:ln -sf System.map-%{kernel_release} %{initrd_dir}/System.map-%{alt_kernel}}
11b4fb9f 1392
d974bb94 1393%depmod %{kernel_release}
11b4fb9f 1394
9ac14f47 1395%if %{without xenU}
d974bb94 1396/sbin/geninitrd -f --initrdfs=rom %{initrd_dir}/initrd-%{kernel_release}.gz %{kernel_release}
11b4fb9f 1397
69796008
ER
1398mv -f %{initrd_dir}/initrd{,.old} 2> /dev/null}
1399%{?alt_kernel:mv -f %{initrd_dir}/initrd-%{alt_kernel}{,.old} 2> /dev/null}
1400ln -sf initrd-%{kernel_release}.gz %{initrd_dir}/initrd
1401%{?alt_kernel:ln -sf initrd-%{kernel_release}.gz %{initrd_dir}/initrd-%{alt_kernel}}
11b4fb9f 1402
69796008 1403if [ -x /sbin/new-kernel-pkg ]; then
68d195a3 1404%if %{with xen0}
09fc2ff4
ER
1405 xenimg=%{initrd_dir}/xen.gz
1406 xenver=
1407 xen=$(readlink -f $xenimg)
1408 if [ "$xen" != "$xenimg" ]; then
1409 xenver=${xen#%{initrd_dir}/xen-}
1410 xenver=${xenver%.gz}
1411 fi
68d195a3 1412
09fc2ff4 1413 title="Xen${xenver:+ $xenver} / PLD Linux (%{pld_release})"
68d195a3
ER
1414 args=--multiboot=$xen
1415%else
69796008 1416 title="PLD Linux (%{pld_release})%{?alt_kernel: / %{alt_kernel}}"
68d195a3
ER
1417%endif
1418
1419 /sbin/new-kernel-pkg $args --initrdfile=%{initrd_dir}/initrd-%{kernel_release}.gz --install %{kernel_release} --banner "$title"
11b4fb9f 1420
11b4fb9f 1421elif [ -x /sbin/rc-boot ]; then
1422 /sbin/rc-boot 1>&2 || :
1423fi
4e6fef18 1424%endif
11b4fb9f 1425
1426%post vmlinux
60202dc4
ER
1427mv -f %{initrd_dir}/vmlinux{,.old} 2> /dev/null
1428%{?alt_kernel:mv -f %{initrd_dir}/vmlinux-%{alt_kernel}{,.old} 2> /dev/null}
1429ln -sf vmlinux-%{kernel_release} %{initrd_dir}/vmlinux
1430%{?alt_kernel:ln -sf vmlinux-%{kernel_release} %{initrd_dir}/vmlinux-%{alt_kernel}}
11b4fb9f 1431
1432%post libs
60202dc4 1433%{_sbindir}/mkvmlinuz %{initrd_dir}/zImage-%{version}-%{release} %{version}-%{release}
11b4fb9f 1434
1435%post drm
d974bb94 1436%depmod %{kernel_release}
11b4fb9f 1437
1438%postun drm
d974bb94 1439%depmod %{kernel_release}
11b4fb9f 1440
1441%post pcmcia
d974bb94 1442%depmod %{kernel_release}
11b4fb9f 1443
1444%postun pcmcia
d974bb94 1445%depmod %{kernel_release}
11b4fb9f 1446
1447%post sound-alsa
d974bb94 1448%depmod %{kernel_release}
11b4fb9f 1449
1450%postun sound-alsa
d974bb94 1451%depmod %{kernel_release}
11b4fb9f 1452
1453%post sound-oss
d974bb94 1454%depmod %{kernel_release}
11b4fb9f 1455
1456%postun sound-oss
d974bb94 1457%depmod %{kernel_release}
11b4fb9f 1458
1459%preun smp
11b4fb9f 1460if [ -x /sbin/new-kernel-pkg ]; then
d974bb94 1461 /sbin/new-kernel-pkg --remove %{kernel_release}smp
11b4fb9f 1462fi
1463
1464%post smp
69796008
ER
1465# - update /boot/vmlinuz
1466# - update /boot/vmlinuz-%{alt_kernel}
60202dc4
ER
1467mv -f %{initrd_dir}/vmlinuz{,.old} 2> /dev/null
1468%{?alt_kernel:mv -f %{initrd_dir}/vmlinuz-%{alt_kernel}{,.old} 2> /dev/null}
1469mv -f %{initrd_dir}/System.map{,.old} 2> /dev/null
1470%{?alt_kernel:mv -f %{initrd_dir}/System-%{alt_kernel}.map{,.old} 2> /dev/null}
69796008 1471
60202dc4
ER
1472ln -sf vmlinuz-%{kernel_release}smp %{initrd_dir}/vmlinuz
1473%{?alt_kernel:ln -sf vmlinuz-%{kernel_release}smp %{initrd_dir}/vmlinuz-%{alt_kernel}}
1474ln -sf System.map-%{kernel_release}smp %{initrd_dir}/System.map
1475%{?alt_kernel:ln -sf System.map-%{kernel_release}smp %{initrd_dir}/System.map-%{alt_kernel}}
11b4fb9f 1476
d974bb94 1477%depmod %{kernel_release}smp
11b4fb9f 1478
9ac14f47 1479%if %{without xenU}
d974bb94 1480/sbin/geninitrd -f --initrdfs=rom %{initrd_dir}/initrd-%{kernel_release}smp.gz %{kernel_release}smp
69796008
ER
1481
1482mv -f %{initrd_dir}/initrd{,.old} 2> /dev/null}
1483%{?alt_kernel:mv -f %{initrd_dir}/initrd-%{alt_kernel}{,.old} 2> /dev/null}
1484ln -sf initrd-%{kernel_release}smp.gz %{initrd_dir}/initrd
1485%{?alt_kernel:ln -sf initrd-%{kernel_release}smp.gz %{initrd_dir}/initrd-%{alt_kernel}}
11b4fb9f 1486
1487if [ -x /sbin/new-kernel-pkg ]; then
69796008 1488%if %{with xen0}
09fc2ff4
ER
1489 xenimg=%{initrd_dir}/xen.gz
1490 xenver=
1491 xen=$(readlink -f $xenimg)
1492 if [ "$xen" != "$xenimg" ]; then
1493 xenver=${xen#%{initrd_dir}/xen-}
1494 xenver=${xenver%.gz}
1495 fi
11b4fb9f 1496
09fc2ff4 1497 title="Xen${xenver:+ $xenver} / PLD Linux (%{pld_release})"
69796008
ER
1498 args=--multiboot=$xen
1499%else
1500 title="PLD Linux (%{pld_release})%{?alt_kernel: / %{alt_kernel}}"
1501%endif
1502
1503 /sbin/new-kernel-pkg $args --initrdfile=%{initrd_dir}/initrd-%{kernel_release}smp.gz --install %{kernel_release}smp --banner "$title"
11b4fb9f 1504
11b4fb9f 1505elif [ -x /sbin/rc-boot ]; then
1506 /sbin/rc-boot 1>&2 || :
1507fi
bdf29ed7 1508%endif
11b4fb9f 1509
1510%post smp-vmlinux
69796008
ER
1511mv -f /boot/vmlinux{,.old} 2> /dev/null
1512%{?alt_kernel:mv -f /boot/vmlinux-%{alt_kernel}{,.old} 2> /dev/null}
1513ln -sf vmlinux-%{kernel_release}smp /boot/vmlinux
1514%{?alt_kernel:ln -sf vmlinux-%{kernel_release}smp /boot/vmlinux-%{alt_kernel}}
11b4fb9f 1515
1516%post smp-libs
1517%{_sbindir}/mkvmlinuz /boot/zImage-%{version}-%{release}smp %{version}-%{release}smp
1518
1519%post smp-drm
d974bb94 1520%depmod %{kernel_release}smp
11b4fb9f 1521
1522%postun smp-drm
d974bb94 1523%depmod %{kernel_release}smp
11b4fb9f 1524
1525%post smp-pcmcia
d974bb94 1526%depmod %{kernel_release}smp
11b4fb9f 1527
1528%postun smp-pcmcia
d974bb94 1529%depmod %{kernel_release}smp
11b4fb9f 1530
1531%post smp-sound-alsa
d974bb94 1532%depmod %{kernel_release}smp
11b4fb9f 1533
1534%postun smp-sound-alsa
d974bb94 1535%depmod %{kernel_release}smp
11b4fb9f 1536
1537%post smp-sound-oss
d974bb94 1538%depmod %{kernel_release}smp
11b4fb9f 1539
1540%postun smp-sound-oss
d974bb94 1541%depmod %{kernel_release}smp
11b4fb9f 1542
1543%post headers
2b6a8c81 1544ln -snf %{basename:%{_kernelsrcdir}} %{_prefix}/src/linux%{_alt_kernel}
11b4fb9f 1545
1546%postun headers
1547if [ "$1" = "0" ]; then
2b6a8c81
ER
1548 if [ -L %{_prefix}/src/linux%{_alt_kernel} ]; then
1549 if [ "$(readlink %{_prefix}/src/linux%{_alt_kernel})" = "linux%{_alt_kernel}-%{version}" ]; then
1550 rm -f %{_prefix}/src/linux%{_alt_kernel}
11b4fb9f 1551 fi
1552 fi
1553fi
1554
266bdec5
ER
1555%triggerin module-build -- %{name} = %{epoch}:%{version}-%{release}
1556ln -sfn %{_kernelsrcdir} /lib/modules/%{kernel_release}/build
1557ln -sfn %{_kernelsrcdir} /lib/modules/%{kernel_release}/source
1558
1559%triggerun module-build -- %{name} = %{epoch}:%{version}-%{release}
1560if [ "$1" = 0 ]; then
1561 rm -f /lib/modules/%{kernel_release}/{build,source}
1562fi
1563
1564%triggerin module-build -- %{name}-smp = %{epoch}:%{version}-%{release}
1565ln -sfn %{_kernelsrcdir} /lib/modules/%{kernel_release}smp/build
1566ln -sfn %{_kernelsrcdir} /lib/modules/%{kernel_release}smp/source
1567
1568%triggerun module-build -- %{name}-smp = %{epoch}:%{version}-%{release}
1569if [ "$1" = 0 ]; then
1570 rm -f /lib/modules/%{kernel_release}smp/{build,source}
1571fi
1572
11b4fb9f 1573%if %{with up}
1574%files
1575%defattr(644,root,root,755)
1576#doc FAQ-pl
1577%ifarch sparc sparc64
d974bb94 1578/boot/vmlinux.aout-%{kernel_release}
11b4fb9f 1579%endif
60202dc4
ER
1580%{initrd_dir}/vmlinuz-%{kernel_release}
1581%{initrd_dir}/System.map-%{kernel_release}
1582%ghost %{initrd_dir}/initrd-%{kernel_release}.gz
d974bb94
ER
1583%dir /lib/modules/%{kernel_release}
1584%dir /lib/modules/%{kernel_release}/kernel
11b4fb9f 1585%ifnarch sparc
d974bb94 1586/lib/modules/%{kernel_release}/kernel/arch
11b4fb9f 1587%endif
d974bb94
ER
1588/lib/modules/%{kernel_release}/kernel/crypto
1589/lib/modules/%{kernel_release}/kernel/drivers
11b4fb9f 1590%if %{have_drm}
d974bb94 1591%exclude /lib/modules/%{kernel_release}/kernel/drivers/char/drm
11b4fb9f 1592%endif
08dc0ae8 1593%if %{have_oss} && %{have_isa} && %{without xen}
d974bb94 1594%exclude /lib/modules/%{kernel_release}/kernel/drivers/media/radio/miropcm20.ko*
11b4fb9f 1595%endif
e8d0186e 1596%if %{with abi}
1597/lib/modules/%{kernel_release}/kernel/abi
1598%endif
d974bb94
ER
1599/lib/modules/%{kernel_release}/kernel/fs
1600/lib/modules/%{kernel_release}/kernel/kernel
1601/lib/modules/%{kernel_release}/kernel/lib
1602/lib/modules/%{kernel_release}/kernel/net
1603/lib/modules/%{kernel_release}/kernel/security
11b4fb9f 1604%if %{have_sound}
d974bb94
ER
1605%dir /lib/modules/%{kernel_release}/kernel/sound
1606/lib/modules/%{kernel_release}/kernel/sound/soundcore.*
11b4fb9f 1607%endif
d974bb94 1608%dir /lib/modules/%{kernel_release}/misc
11b4fb9f 1609%if %{with pcmcia}
d974bb94
ER
1610%exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia
1611%exclude /lib/modules/%{kernel_release}/kernel/drivers/*/pcmcia
1612%exclude /lib/modules/%{kernel_release}/kernel/drivers/bluetooth/*_cs.ko*
1613%exclude /lib/modules/%{kernel_release}/kernel/drivers/ide/legacy/ide-cs.ko*
1614%exclude /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
1615%exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/*_cs.ko*
1616%exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/hostap/hostap_cs.ko*
1617%exclude /lib/modules/%{kernel_release}/kernel/drivers/parport/parport_cs.ko*
1618%exclude /lib/modules/%{kernel_release}/kernel/drivers/serial/serial_cs.ko*
1619%exclude /lib/modules/%{kernel_release}/kernel/drivers/telephony/ixj_pcmcia.ko*
1620%exclude /lib/modules/%{kernel_release}/kernel/drivers/usb/host/sl811_cs.ko*
1621%endif
d974bb94 1622%ghost /lib/modules/%{kernel_release}/modules.*
266bdec5
ER
1623# symlinks pointing to kernelsrcdir
1624%ghost /lib/modules/%{kernel_release}/build
1625%ghost /lib/modules/%{kernel_release}/source
d974bb94 1626%dir %{_sysconfdir}/modprobe.d/%{kernel_release}
11b4fb9f 1627
1628%ifarch alpha %{ix86} %{x8664} ppc ppc64 sparc sparc64
1629%files vmlinux
1630%defattr(644,root,root,755)
60202dc4 1631%{initrd_dir}/vmlinux-%{kernel_release}
11b4fb9f 1632%endif
1633
1634%if %{have_drm}
1635%files drm
1636%defattr(644,root,root,755)
d974bb94 1637/lib/modules/%{kernel_release}/kernel/drivers/char/drm
11b4fb9f 1638%endif
1639
1640%if %{with pcmcia}
1641%files pcmcia
1642%defattr(644,root,root,755)
d974bb94
ER
1643/lib/modules/%{kernel_release}/kernel/drivers/pcmcia
1644/lib/modules/%{kernel_release}/kernel/drivers/*/pcmcia
1645/lib/modules/%{kernel_release}/kernel/drivers/bluetooth/*_cs.ko*
1646/lib/modules/%{kernel_release}/kernel/drivers/ide/legacy/ide-cs.ko*
1647/lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
1648/lib/modules/%{kernel_release}/kernel/drivers/net/wireless/*_cs.ko*
1649/lib/modules/%{kernel_release}/kernel/drivers/net/wireless/hostap/hostap_cs.ko*
1650/lib/modules/%{kernel_release}/kernel/drivers/parport/parport_cs.ko*
1651/lib/modules/%{kernel_release}/kernel/drivers/serial/serial_cs.ko*
1652/lib/modules/%{kernel_release}/kernel/drivers/telephony/ixj_pcmcia.ko*
1653/lib/modules/%{kernel_release}/kernel/drivers/usb/host/sl811_cs.ko*
11b4fb9f 1654%endif
1655
1656%ifarch ppc-broken
1657%if "%{_arch}" == "ppc"
1658%files libs
1659%defattr(644,root,root,755)
60202dc4
ER
1660%dir %{initrd_dir}/libs-%{kernel_release}
1661%{initrd_dir}/libs-%{kernel_release}/common
1662%{initrd_dir}/libs-%{kernel_release}/kernel
1663%{initrd_dir}/libs-%{kernel_release}/lib
1664%{initrd_dir}/libs-%{kernel_release}/of1275
1665%{initrd_dir}/libs-%{kernel_release}/openfirmware
1666%{initrd_dir}/libs-%{kernel_release}/simple
1667%dir %{initrd_dir}/libs-%{kernel_release}/utils
1668%attr(755,root,root) %{initrd_dir}/libs-%{kernel_release}/utils/*
1669%{initrd_dir}/libs-%{kernel_release}/ld.script
11b4fb9f 1670%endif
1671%endif
1672
1673%if %{have_sound}
1674%files sound-alsa
1675%defattr(644,root,root,755)
d974bb94
ER
1676/lib/modules/%{kernel_release}/kernel/sound
1677%exclude %dir /lib/modules/%{kernel_release}/kernel/sound
1678%exclude /lib/modules/%{kernel_release}/kernel/sound/soundcore.*
11b4fb9f 1679%if %{have_oss}
d974bb94 1680%exclude /lib/modules/%{kernel_release}/kernel/sound/oss
11b4fb9f 1681%endif
1682
1683%if %{have_oss}
1684%files sound-oss
1685%defattr(644,root,root,755)
d974bb94 1686/lib/modules/%{kernel_release}/kernel/sound/oss
08dc0ae8 1687%if %{have_isa} && %{without xen}
d974bb94 1688/lib/modules/%{kernel_release}/kernel/drivers/media/radio/miropcm20.ko*
11b4fb9f 1689%endif
1690%endif
1691%endif # %%{have_sound}
1692%endif # %%{with up}
1693
1694%if %{with smp}
1695%files smp
1696%defattr(644,root,root,755)
1697#doc FAQ-pl
60202dc4
ER
1698%{initrd_dir}/vmlinuz-%{kernel_release}smp
1699%{initrd_dir}/System.map-%{kernel_release}smp
1700%ghost %{initrd_dir}/initrd-%{kernel_release}smp.gz
d974bb94
ER
1701%dir /lib/modules/%{kernel_release}smp
1702%dir /lib/modules/%{kernel_release}smp/kernel
11b4fb9f 1703%ifnarch sparc
d974bb94 1704/lib/modules/%{kernel_release}smp/kernel/arch
11b4fb9f 1705%endif
d974bb94
ER
1706/lib/modules/%{kernel_release}smp/kernel/crypto
1707/lib/modules/%{kernel_release}smp/kernel/drivers
11b4fb9f 1708%if %{have_drm}
d974bb94 1709%exclude /lib/modules/%{kernel_release}smp/kernel/drivers/char/drm
11b4fb9f 1710%endif
08dc0ae8 1711%if %{have_oss} && %{have_isa} && %{without xen}
d974bb94 1712%exclude /lib/modules/%{kernel_release}smp/kernel/drivers/media/radio/miropcm20.ko*
11b4fb9f 1713%endif
e8d0186e 1714%if %{with abi}
1715/lib/modules/%{kernel_release}smp/kernel/abi
1716%endif
d974bb94
ER
1717/lib/modules/%{kernel_release}smp/kernel/fs
1718/lib/modules/%{kernel_release}smp/kernel/kernel
1719/lib/modules/%{kernel_release}smp/kernel/lib
1720/lib/modules/%{kernel_release}smp/kernel/net
1721/lib/modules/%{kernel_release}smp/kernel/security
11b4fb9f 1722%if %{have_sound}
d974bb94
ER
1723%dir /lib/modules/%{kernel_release}smp/kernel/sound
1724/lib/modules/%{kernel_release}smp/kernel/sound/soundcore.*
11b4fb9f 1725%endif
d974bb94 1726%dir /lib/modules/%{kernel_release}smp/misc
11b4fb9f 1727%if %{with pcmcia}
d974bb94
ER
1728%exclude /lib/modules/%{kernel_release}smp/kernel/drivers/pcmcia
1729%exclude /lib/modules/%{kernel_release}smp/kernel/drivers/*/pcmcia
1730%exclude /lib/modules/%{kernel_release}smp/kernel/drivers/bluetooth/*_cs.ko*
1731%exclude /lib/modules/%{kernel_release}smp/kernel/drivers/ide/legacy/ide-cs.ko*
1732%exclude /lib/modules/%{kernel_release}smp/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
1733%exclude /lib/modules/%{kernel_release}smp/kernel/drivers/net/wireless/*_cs.ko*
1734%exclude /lib/modules/%{kernel_release}smp/kernel/drivers/net/wireless/hostap/hostap_cs.ko*
1735%exclude /lib/modules/%{kernel_release}smp/kernel/drivers/parport/parport_cs.ko*
1736%exclude /lib/modules/%{kernel_release}smp/kernel/drivers/serial/serial_cs.ko*
1737%exclude /lib/modules/%{kernel_release}smp/kernel/drivers/telephony/ixj_pcmcia.ko*
1738%exclude /lib/modules/%{kernel_release}smp/kernel/drivers/usb/host/sl811_cs.ko*
1739%endif
d974bb94 1740%ghost /lib/modules/%{kernel_release}smp/modules.*
266bdec5
ER
1741# symlinks pointing to kernelsrcdir
1742%ghost /lib/modules/%{kernel_release}smp/build
1743%ghost /lib/modules/%{kernel_release}smp/source
d974bb94 1744%dir %{_sysconfdir}/modprobe.d/%{kernel_release}smp
11b4fb9f 1745
1746%ifarch alpha %{ix86} %{x8664} ppc ppc64 sparc sparc64
1747%files smp-vmlinux
1748%defattr(644,root,root,755)
60202dc4 1749%{initrd_dir}/vmlinux-%{kernel_release}smp
11b4fb9f 1750%endif
1751
1752%if %{have_drm}
1753%files smp-drm
1754%defattr(644,root,root,755)
d974bb94 1755/lib/modules/%{kernel_release}smp/kernel/drivers/char/drm
11b4fb9f 1756%endif
1757
1758%if %{with pcmcia}
1759%files smp-pcmcia
1760%defattr(644,root,root,755)
d974bb94
ER
1761/lib/modules/%{kernel_release}smp/kernel/drivers/pcmcia
1762/lib/modules/%{kernel_release}smp/kernel/drivers/*/pcmcia
1763/lib/modules/%{kernel_release}smp/kernel/drivers/bluetooth/*_cs.ko*
1764/lib/modules/%{kernel_release}smp/kernel/drivers/ide/legacy/ide-cs.ko*
1765/lib/modules/%{kernel_release}smp/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
1766/lib/modules/%{kernel_release}smp/kernel/drivers/net/wireless/*_cs.ko*
1767/lib/modules/%{kernel_release}smp/kernel/drivers/net/wireless/hostap/hostap_cs.ko*
1768/lib/modules/%{kernel_release}smp/kernel/drivers/parport/parport_cs.ko*
1769/lib/modules/%{kernel_release}smp/kernel/drivers/serial/serial_cs.ko*
1770/lib/modules/%{kernel_release}smp/kernel/drivers/telephony/ixj_pcmcia.ko*
1771/lib/modules/%{kernel_release}smp/kernel/drivers/usb/host/sl811_cs.ko*
11b4fb9f 1772%endif
1773
1774%ifarch ppc-broken
1775%if "%{_arch}" == "ppc"
1776%files smp-libs
1777%defattr(644,root,root,755)
60202dc4
ER
1778%dir %{initrd_dir}/libs-%{kernel_release}smp
1779%{initrd_dir}/libs-%{kernel_release}smp/common
1780%{initrd_dir}/libs-%{kernel_release}smp/kernel
1781%{initrd_dir}/libs-%{kernel_release}smp/lib
1782%{initrd_dir}/libs-%{kernel_release}smp/of1275
1783%{initrd_dir}/libs-%{kernel_release}smp/openfirmware
1784%{initrd_dir}/libs-%{kernel_release}smp/simple
1785%dir %{initrd_dir}/libs-%{kernel_release}smp/utils
1786%attr(755,root,root) %{initrd_dir}/libs-%{kernel_release}smp/utils/*
1787%{initrd_dir}/libs-%{kernel_release}smp/ld.script
11b4fb9f 1788%endif
1789%endif
1790
1791%if %{have_sound}
1792%files smp-sound-alsa
1793%defattr(644,root,root,755)
d974bb94
ER
1794/lib/modules/%{kernel_release}smp/kernel/sound
1795%exclude %dir /lib/modules/%{kernel_release}smp/kernel/sound
1796%exclude /lib/modules/%{kernel_release}smp/kernel/sound/soundcore.*
11b4fb9f 1797%if %{have_oss}
d974bb94 1798%exclude /lib/modules/%{kernel_release}smp/kernel/sound/oss
11b4fb9f 1799%endif
1800
1801%if %{have_oss}
1802%files smp-sound-oss
1803%defattr(644,root,root,755)
d974bb94 1804/lib/modules/%{kernel_release}smp/kernel/sound/oss
08dc0ae8 1805%if %{have_isa} && %{without xen}
d974bb94 1806/lib/modules/%{kernel_release}smp/kernel/drivers/media/radio/miropcm20.ko*
11b4fb9f 1807%endif
1808%endif
1809%endif # %%{have_sound}
1810%endif # %%{with smp}
1811
1812%files headers
1813%defattr(644,root,root,755)
79fdcf5f
ER
1814%dir %{_kernelsrcdir}
1815%{_kernelsrcdir}/include
11b4fb9f 1816%if %{with smp}
79fdcf5f
ER
1817%{_kernelsrcdir}/config-smp
1818%{_kernelsrcdir}/Module.symvers-smp
11b4fb9f 1819%endif
79fdcf5f
ER
1820%{_kernelsrcdir}/config-up
1821%{?with_up:%{_kernelsrcdir}/Module.symvers-up}
11b4fb9f 1822
1823%files module-build -f aux_files
1824%defattr(644,root,root,755)
79fdcf5f
ER
1825%{_kernelsrcdir}/Kbuild
1826%{_kernelsrcdir}/localversion
1827%{_kernelsrcdir}/arch/*/kernel/asm-offsets.*
1828%{_kernelsrcdir}/arch/*/kernel/sigframe.h
1829%dir %{_kernelsrcdir}/scripts
1830%dir %{_kernelsrcdir}/scripts/kconfig
1831%{_kernelsrcdir}/scripts/Kbuild.include
1832%{_kernelsrcdir}/scripts/Makefile*
1833%{_kernelsrcdir}/scripts/basic
1834%{_kernelsrcdir}/scripts/mkmakefile
1835%{_kernelsrcdir}/scripts/mod
1836%{_kernelsrcdir}/scripts/setlocalversion
1837%{_kernelsrcdir}/scripts/*.c
1838%{_kernelsrcdir}/scripts/*.sh
1839%{_kernelsrcdir}/scripts/kconfig/*
11b4fb9f 1840
1841%files doc
1842%defattr(644,root,root,755)
79fdcf5f 1843%{_kernelsrcdir}/Documentation
11b4fb9f 1844
1845%if %{with source}
1846%files source -f aux_files_exc
1847%defattr(644,root,root,755)
79fdcf5f
ER
1848%{_kernelsrcdir}/arch/*/[!Mk]*
1849%{_kernelsrcdir}/arch/*/kernel/[!M]*
1850%exclude %{_kernelsrcdir}/arch/*/kernel/asm-offsets.*
1851%exclude %{_kernelsrcdir}/arch/*/kernel/sigframe.h
655cccc7 1852%if %{with abi}
1853%{_kernelsrcdir}/abi
1854%endif /* abi */
79fdcf5f
ER
1855%{_kernelsrcdir}/block
1856%{_kernelsrcdir}/crypto
1857%{_kernelsrcdir}/drivers
1858%{_kernelsrcdir}/fs
11b4fb9f 1859%if %{with grsecurity}
79fdcf5f
ER
1860%{_kernelsrcdir}/grsecurity
1861%endif
1862%{_kernelsrcdir}/init
1863%{_kernelsrcdir}/ipc
1864%{_kernelsrcdir}/kernel
1865%{_kernelsrcdir}/lib
1866%{_kernelsrcdir}/mm
1867%{_kernelsrcdir}/net
1868%{_kernelsrcdir}/scripts/*
1869%exclude %{_kernelsrcdir}/scripts/Kbuild.include
1870%exclude %{_kernelsrcdir}/scripts/Makefile*
1871%exclude %{_kernelsrcdir}/scripts/basic
1872%exclude %{_kernelsrcdir}/scripts/kconfig
1873%exclude %{_kernelsrcdir}/scripts/mkmakefile
1874%exclude %{_kernelsrcdir}/scripts/mod
1875%exclude %{_kernelsrcdir}/scripts/setlocalversion
1876%exclude %{_kernelsrcdir}/scripts/*.c
1877%exclude %{_kernelsrcdir}/scripts/*.sh
1878%{_kernelsrcdir}/sound
1879%{_kernelsrcdir}/security
1880%{_kernelsrcdir}/usr
1881%{_kernelsrcdir}/COPYING
1882%{_kernelsrcdir}/CREDITS
1883%{_kernelsrcdir}/MAINTAINERS
1884%{_kernelsrcdir}/README
1885%{_kernelsrcdir}/REPORTING-BUGS
11b4fb9f 1886%endif
This page took 0.373911 seconds and 4 git commands to generate.