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