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