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