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