]> git.pld-linux.org Git - packages/kernel.git/blob - kernel.spec
- use final tarball; disable CMD640 (it's broken); still about three issues left
[packages/kernel.git] / kernel.spec
1 #
2 # If you define the following as 1, only kernel, -headers and -source
3 # packages will be built
4
5 %bcond_without smp      # don't build SMP kernel
6 %bcond_without up       # don't build UP kernel
7 %bcond_without boot     # don't build BOOT kernel
8 %bcond_without source   # don't build source
9 %bcond_without doc      # don't build documentation package
10 %bcond_without grsec    # don't apply grsecurity patch
11 %bcond_without kheaders # build without support for glibc-kernel-headers
12 %bcond_with win4lin     # apply the Win4lin patches
13
14 %define         base_arch %(echo %{_target_cpu} | sed 's/i.86/i386/;s/athlon/i386/;s/amd64/x86_64/')
15 %define         no_install_post_strip   1
16 %define         no_install_post_compress_modules        1
17 #
18 %define         pre_version             %{nil}
19 %define         netfilter_snap          20031121
20 %define         i2c_version             2.8.0
21 Summary:        The Linux kernel (the core of the Linux operating system)
22 Summary(de):    Der Linux-Kernel (Kern des Linux-Betriebssystems)
23 Summary(es):    Núcleo (Kernel) linux genérico
24 Summary(fr):    Le Kernel-Linux (La partie centrale du systeme)
25 Summary(pl):    J±dro Linuksa
26 Summary(pt_BR): Kernel Linux (a parte central do sistema operacional Linux)
27 Name:           kernel
28 Version:        2.4.23
29 Release:        0.5
30 License:        GPL
31 Group:          Base/Kernel
32 Source0:        ftp://ftp.kernel.org/pub/linux/kernel/v2.4/linux-%{version}.tar.bz2
33 # Source0-md5:  642af5ab5e1fc63685fde85e9ae601e4
34 Source1:        %{name}-autoconf.h
35 Source2:        %{name}-BuildASM.sh
36 Source3:        http://www.garloff.de/kurt/linux/dc395/dc395-141.tar.gz
37 # Source3-md5:  8ed492197244b6a772270417c66214d3
38 Source5:        linux-2.4.19-netfilter-IMQ.patch.tar.bz2
39 # Source5-md5:  b8f2f7a268a5cb75fabcaec3b5d45fcd
40 Source7:        http://www10.software.ibm.com/developer/opensource/jfs/project/pub/jfs-2.4-1.1.4.tar.gz
41 # Source7-md5:  ea33c28ca1d3afa448b20f337b615b48
42 Source20:       %{name}-ia32.config
43 Source21:       %{name}-ia32-smp.config
44 Source50:       %{name}-sparc.config
45 Source51:       %{name}-sparc-smp.config
46 Source60:       %{name}-sparc64.config
47 Source61:       %{name}-sparc64-smp.config
48 Source70:       %{name}-alpha.config
49 Source71:       %{name}-alpha-smp.config
50 Source73:       %{name}-ppc.config
51 Source74:       %{name}-ppc-smp.config
52 Source1000:     %{name}-addon.config
53 Source1001:     %{name}-netfilter.config
54 Source1002:     %{name}-grsec.config
55 Source2000:     %{name}-win4lin.config
56
57 # Interesting URLs, patches:
58 # http://www.hardrock.org/kernel/current-updates/
59
60 # New features/updates/backports
61
62 # Essential stuff
63
64 Patch0:         %{name}-pldfblogo.patch
65
66 # from ftp://ftp.kernel.org/pub/linux/kernel/people/hvr/testing/
67 Patch10:        patch-cryptoloop-jari-2.4.22-rc2.0
68 # from ftp://ftp.xs4all.nl/pub/crypto/freeswan/freeswan-*
69 Patch12:        linux-2.4.21-freeswan-2.00.patch.gz
70 Patch15:        linux-2.4.23-sched-O1.patch
71 # http://dl.sourceforge.net/user-mode-linux/uml-patch-2.4.20-6.bz2
72 Patch20:        uml-patch-2.4.20-6-21.bz2
73 Patch21:        linux-2.4.21-uml-o1.patch
74 # http://dl.sourceforge.net/user-mode-linux/host-skas3.patch
75 Patch22:        linux-2.4.20-uml-host-skas3.patch
76
77 # New filesystems
78
79 # http://linux-xfs.sgi.com/projects/xfs/
80 #Patch25:       linux-2.4.21-core-xfs-1.3.0.patch.gz
81 #Patch26:       linux-xfs-1.3.0pre5.patch.gz
82 Patch25:        linux-2.4.23-xfs-2003-11-11.patch.gz
83 # http://acl.bestbits.at/
84 Patch31:        linux-2.4.21-jfs-acl.patch
85 Patch32:        linux-2.4.22-ea+acl+nfsacl-0.8.60.diff.gz
86 # http://dl.sourceforge.net/linux-ntfs/
87 Patch40:        linux-2.4.22-ntfs-2.1.4c.patch.gz
88 # FC01_davfs_0.2.4.patch
89 Patch50:        linux-2.4.20-davfs-0.2.4.patch.bz2
90 # FC02_davfs__FUNCTION__.patch
91 Patch55:        linux-2.4.20-davfs-_FUNCTION_.patch
92 Patch60:        linux-2.4.22-data-loging+quota.patch
93 Patch61:        linux-2.4.22-acl+xattr.patch
94 # http://dl.sourceforge.net/squashfs/squashfs-1.3.tar.gz
95 Patch65:        squashfs1.3-2.4.21-patch
96 #from http://sci.felk.cvut.cz/nwd/linux/nwd-patch-2.4.19
97 Patch70:        nwd-2.4.21.patch
98 Patch80:        linux-2.4.22-intermezzo-acl.patch
99
100 # Networking
101
102 # new version of netfilter.
103 Patch100:       linux-2.4.23-netfilter-%{netfilter_snap}.patch.gz
104 # http://ebtables.sourceforge.net/
105 Patch110:       ebtables-brnf-2_vs_2.4.22.diff.gz
106 # http://trash.net/~kaber/imq/
107 Patch120:       imq-2.4.18.diff-10
108 # ftp://ftp.samba.org/pub/unpacked/ppp/linux/mppe/
109 Patch125:       linux-2.4.18-mppe.patch
110 Patch130:       linux-2.4.22-tun-new-style.patch
111
112 # ATM bugfixes
113 # Patches by Chas Williams <chas@locutus.cmf.nrl.navy.mil>
114 # Included in Chas patch:
115 # http://tulipe.cnam.fr/personne/lizzi/linux/linux-2.3.99-pre6-fore200e-0.2f.tar.gz
116 # http://christophe.lizzi.free.fr/linux/linux-2.4.0-test9-fore200e-0.3.tar.gz
117 # ftp://ftp.cmf.nrl.navy.mil/pub/chas/linux-atm/
118 Patch150:       linux-2.4.21-atm_diffs.patch
119 Patch151:       ftp://ftp.cmf.nrl.navy.mil/pub/chas/linux-atm/vbr/vbr-kernel-diffs
120 Patch152:       linux-2.4.22-fore200e-0.2f.patch
121
122 # New devices/drivers
123
124 # http://people.sistina.com/~thornber/patches/2.4-stable/
125 Patch200:       linux-2.4.23-dm-3.patch
126
127 # EVMS support (http://www.sourceforge.net/projects/evms/)
128 # Disabled due to conflicts with LVM2 and device mapper tools
129 Patch205:       linux-2.4.22-evms-2.1.1.patch
130
131 #from http://dl.sourceforge.net/i810fb/linux-2.4.20-i810fb.diff.bz2
132 Patch210:       linux-2.4.21-I810FB.patch.gz
133
134 # Support for CDRW packet writing
135 Patch215:       %{name}-cdrw-packet.patch
136 Patch216:       %{name}-cd-mrw-2.patch
137 Patch225:       wrr-linux-2.4.9.patch
138 Patch226:       linux-2.4.18-esfq.diff
139 # http://l7-filter.sourceforge.net/
140 Patch227:       layer7-kernel2.4patch-v0.4.1a.patch.gz
141
142 Patch231:       linux-2.4.21-aic7xxx-mmapio.patch
143 Patch235:       linux-2.4.20-audigy.patch.bz2
144 Patch240:       linux-2.4.20-ecc.patch
145 # i2c - version 2.8.0
146 Patch255:       linux-2.4.22-i2c-%{i2c_version}.patch
147 Patch256:       linux-2.4.21-i2c-headers.patch
148 Patch257:       linux-2.4.21-i2c-sparc64.patch
149 Patch265:       linux-2.4.20-e820.patch
150 # Syntax bug
151 Patch270:       dc395-tab.patch
152 # http://www.qlogic.com/
153 Patch275:       linux-2.4.20-qla2x00-v6.04.00-fo.patch.gz
154
155 # TV stuff from http://bytesex.org/
156 Patch301:       20_v4l2-2.4.22.diff.gz
157 Patch302:       30_bt832-2.4.22.diff
158 Patch303:       30_btaudio-2.4.22.diff
159
160 # The following go last as they touch a lot of code
161 # and/or are on bcond and/or are ifarch
162
163 # Win4Lin
164 Patch900:       linux-2.4.20-Win4Lin.PLD.patch.bz2
165 Patch991:       linux-2.4.20-Win4Lin-mki-adapter.patch.bz2
166
167 # Assorted bugfixes
168
169 # jam - http://giga.cps.unizar.es/~magallon/linux/kernel/
170 Patch1000:      jam-04-clone-detached.patch
171 Patch1002:      jam-06-force-inline.patch
172 Patch1003:      jam-07-scsi-error-tmout.patch
173 Patch1006:      jam-10-highpage-init.patch
174 Patch1007:      jam-11-self_exec_id.patch
175 Patch1008:      jam-15-fast-csum-D.patch
176 Patch1009:      jam-21-mem-barriers.patch
177 Patch1010:      jam-30-smptimers-A0.patch
178
179 Patch1102:      linux-2.4.20-lvm-updates.patch
180
181 # IrDA patch for broken IBM Latpops
182 Patch1104:      linux-2.4.21-irda-ibm.patch
183
184 # fix lun probing on multilun RAID chassis
185 Patch1105:      linux-2.4.12-scsi_scan.patch
186 Patch1106:      linux-scsi-debug-bug.patch
187
188 # This patch allows to create more than one sound device using alsa
189 # and devfs with two or more sound cards
190 Patch1111:      linux-sound_core.patch
191
192 # rivafb - fix for text background in 16bpp modes
193 Patch1150:      linux-rivafb16.patch
194 Patch1152:      linux-2.4.20-agp_uninorth.patch
195
196 Patch1201:      linux-2.4.21-cpqfc.patch
197 Patch1203:      linux-2.4.20-amd-golem.patch
198 Patch1205:      linux-53c7,8xx-build.fix
199 Patch1207:      linux-2.4.20-serverworks.patch
200 # this patch adds support for "io" and "irq" options in PCNet32 driver module
201 Patch1209:      linux-2.4.19-pcnet-parms.patch
202
203 # disable some networking printk's
204 Patch1250:      linux-2.4.1-netdebug.patch
205 Patch1251:      linux-2.4.2-raw-ip.patch
206 Patch1252:      linux-2.4.19-netmos_pci_parallel_n_serial.patch
207 Patch1253:      linux-proc_net_dev-counter-fix.patch
208 Patch1254:      kernel-2.4.17-netsyms-export-fix.patch
209 Patch1255:      linux-2.4.20-pre1-nr_frags.patch
210
211 Patch1301:      linux-2.4.18-hpfs.patch
212 Patch1302:      linux-2.4.18-nfs-default-size.patch
213 Patch1303:      linux-2.4.20-irixnfs.patch
214 # Tru64 NFS kludge
215 Patch1304:      linux-2.4.21-tru64nfs.patch
216 Patch1305:      linux-2.4.21-nfs-silly-rename.patch
217
218 Patch1350:      linux-2.4.21-nousb.patch
219 # from http://www.noc.uoa.gr/~avel/page.php?page=nokia&lang=en
220 Patch1354:      linux-2.4.20-Nokia5510.patch
221
222 # raid5 xor fix for PIII/P4, should go away shortly
223 Patch1400:      linux-2.4.0-raid5xor.patch
224 Patch1401:      linux-2.4.0-nonintconfig.patch
225 # Add an ioctl to the block layer so we can be EFI compliant
226 Patch1402:      linux-2.4.2-blkioctl-sector.patch
227 Patch1403:      linux-2.4.3-pcipenalty.patch
228 Patch1404:      linux-2.4.3-rawio.patch
229 Patch1405:      linux-2.4.7-suspend.patch
230 Patch1407:      kernel-Makefile-include-fix.patch
231 Patch1408:      kernel-pswscancode.patch
232 Patch1410:      linux-2.4.18-input-35215.patch
233 Patch1411:      linux-2.4.18-kiobuf.patch
234 Patch1413:      linux-2.4.22-andrea-9980_fix-pausing-6.patch
235 Patch1414:      linux-2.4.21-oopsmeharder.patch
236 Patch1415:      linux-mtd-missing-include-fix-2.4.7-pre6.patch
237 Patch1416:      linux-2.4.21-no-FPU.patch
238 Patch1417:      linux-2.4.22-ac4-ide+sata.patch
239 Patch1418:      linux-2.4.21-hpt372-chicken-egg-hack.patch
240 Patch1419:      linux-2.4.21-agp-num_of_masks.patch
241 # fix spare disk counting for raid 5
242 Patch1420:      linux-raid5-spare-counting.patch
243 Patch1421:      linux-2.4.21-bttv-typo.patch
244 Patch1422:      linux-2.4.21-ipt_TRACE-typo.patch
245
246 Patch2000:      linux-PPC-SMP.patch
247 Patch2001:      linux-2.4-ppc-procesor.patch
248 Patch2002:      kernel-2.4.18-SPARC64-PLD.patch
249 Patch2003:      linux-2.4.20-AXP-avma1_cs.patch
250 Patch2004:      linux-2.4.22-ppc-amd8111e.patch
251
252 Patch3000:      linux-2.4.1-compilefailure.patch
253 Patch3002:      linux-2.4.20-EXPORT_SYMBOL.patch
254 Patch3003:      linux-2.4.20-missing-license-tags.patch
255 Patch3004:      linux-2.4.20-sym53c8xx_old.patch
256 Patch3008:      linux-drm-4.2.0-force-cmpxchg.patch
257 Patch3010:      linux-2.4.21-ipsec-sparc64.patch
258 Patch3011:      linux-2.4.22-gcc33-inline.patch
259 Patch3012:      linux-2.4.22-gcc-ext3.patch
260 Patch3013:      linux-2.4.23-ppc-symbols.patch
261 # Security patches/fixes
262
263 Patch4000:      grsecurity-2.0-rc3-2.4.22-O1.patch
264
265 ExclusiveOS:    Linux
266 URL:            http://www.kernel.org/
267 %ifarch         %{ix86}
268 BuildRequires:  bin86
269 %endif
270 #BuildRequires: %{kgcc_package}
271 BuildRequires:  modutils
272 BuildRequires:  ed
273 PreReq:         modutils
274 PreReq:         geninitrd >= 2.40
275 Requires(post,postun):  fileutils
276 Requires(postun):       awk
277 Provides:       %{name}-up = %{version}-%{release}
278 Provides:       module-info
279 Provides:       i2c = %{i2c_version}
280 Provides:       bttv = 0.7.83
281 Provides:       %{name}(netfilter) = 1.2.9rc1-%{netfilter_snap}
282 Provides:       %{name}(reiserfs) = %{version}
283 Provides:       %{name}(agpgart) = %{version}
284 #Provides:      %{name}(cdrw)
285 #Provides:      %{name}(cdmrw)
286 AutoReqProv:    no
287 Obsoletes:      kernel-modules
288 Conflicts:      iptables < 1.2.9rc1
289 Conflicts:      lvm < 1.0.4
290 Conflicts:      xfsprogs < 2.1.0
291 Conflicts:      reiserfsprogs < 3.6.3
292 Conflicts:      e2fsprogs < 1.25
293 Conflicts:      jfsutils < 1.0.12
294 Conflicts:      util-linux < 2.10o
295 Conflicts:      modutils < 2.4.2
296 Conflicts:      quota < 3.06
297 Conflicts:      linux-atm < 2.4.1
298 Conflicts:      device-mapper < 1.00.05
299 ExclusiveArch:  %{ix86} sparc sparc64 alpha ppc
300 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
301
302 %description
303 This package contains the Linux kernel that is used to boot and run
304 your system. It contains few device drivers for specific hardware.
305 Most hardware is instead supported by modules loaded after booting.
306
307 %description -l de
308 Das Kernel-Paket enthält den Linux-Kernel (vmlinuz), den Kern des
309 Linux-Betriebssystems. Der Kernel ist für grundliegende
310 Systemfunktionen verantwortlich: Speicherreservierung,
311 Prozeß-Management, Geräte Ein- und Ausgaben, usw.
312
313 %description -l es
314 Este paquete contiene núcleo (kernel) Linux que se usa para arranque y
315 funcionamiento de tu sistema. Contiene soporte a pocos hardwares
316 específicos. La mayoría de los hardwares son soportados, vía módulos
317 que se cargan después del arranque.
318
319 %description -l fr
320 Le package kernel contient le kernel linux (vmlinuz), la partie
321 centrale d'un système d'exploitation Linux. Le noyau traite les
322 fonctions basiques d'un système d'exploitation: allocation mémoire,
323 allocation de process, entrée/sortie de peripheriques, etc.
324
325 %description -l pl
326 Pakiet zawiera j±dro Linuksa niezbêdne do prawid³owego dzia³ania
327 Twojego komputera. Zawiera w sobie sterowniki do sprzêtu znajduj±cego
328 siê w komputerze, takich jak karty muzyczne, sterowniki dysków, etc.
329
330 %description -l pt_BR
331 Este pacote contém o kernel Linux que é usado para inicialização
332 e funcionamento de seu sistema. Contém suporte a poucos hardwares
333 específicos. A maioria dos hardwares são suportados via módulos
334 que são carregados após a inicialização.
335
336 %package smp
337 Summary:        Kernel version %{version} compiled for SMP machines
338 Summary(de):    Kernel version %{version} für Multiprozessor-Maschinen
339 Summary(es):    Núcleo (kernel) compilado para máquinas SMP
340 Summary(fr):    Kernel version %{version} compiler pour les machine Multi-Processeur
341 Summary(pl):    J±dro Linuksa %{version} skompilowane dla maszyn wieloprocesorowych
342 Summary(pt_BR): Kernel compilado para máquinas SMP
343 Group:          Base/Kernel
344 PreReq:         modutils
345 PreReq:         geninitrd >= 2.21
346 Requires(post,postun):  fileutils
347 Requires(postun):       awk
348 Provides:       %{name}-smp = %{version}-%{release}
349 Provides:       module-info
350 Provides:       i2c = %{i2c_version}
351 Provides:       bttv = 0.7.83
352 Provides:       %{name}(netfilter) = 1.2.9rc1-%{netfilter_snap}
353 Provides:       %{name}(reiserfs) = %{version}
354 Provides:       %{name}(agpgart) = %{version}
355 #Provides:      %{name}(cdrw)
356 #Provides:      %{name}(cdmrw)
357 AutoReqProv:    no
358 Conflicts:      iptables < 1.2.9rc1
359 Conflicts:      lvm < 1.0.4
360 Conflicts:      xfsprogs < 2.1.0
361 Conflicts:      reiserfsprogs < 3.6.3
362 Conflicts:      e2fsprogs < 1.25
363 Conflicts:      jfsutils < 1.0.12
364 Conflicts:      util-linux < 2.10o
365 Conflicts:      modutils < 2.4.2
366 Conflicts:      quota < 3.06
367 Conflicts:      linux-atm < 2.4.1
368 Conflicts:      device-mapper < 1.00.05
369
370 %description smp
371 This package includes a SMP version of the Linux %{version} kernel. It
372 is required only on machines with two or more CPUs, although it should
373 work fine on single-CPU boxes.
374
375 %description smp -l de
376 Dieses Paket enthält eine SMP (Multiprozessor)-Version von
377 Linux-Kernel %{version}. Es wird für Maschinen mit zwei oder mehr
378 Prozessoren gebraucht, sollte aber auch auf Computern mit nur einer
379 CPU laufen.
380
381 %description smp -l es
382 Núcleo (kernel) compilado para máquinas SMP
383
384 %description smp -l fr
385 Ce package inclu une version SMP du noyau de Linux version %{version}.
386 Il et nécessaire seulement pour les machine avec deux processeurs ou
387 plus, il peut quand même fonctionner pour les système mono-processeur.
388
389 %description smp -l pl
390 Pakiet zawiera j±dro SMP Linuksa w wersji %{version}. Jest ono
391 wymagane przez komputery zawieraj±ce dwa lub wiêcej procesorów.
392 Powinno równie¿ dobrze dzia³aæ na maszynach z jednym procesorem.
393
394 %description smp -l pt_BR
395 Este pacote inclui uma versão SMP do kernel Linux versão %{version}.
396 Ele deve ser utilizado apenas em máquinas com dois ou mais processadores,
397 apesar de trabalhar perfeitamente em máquinas com apenas um processador.
398
399 %package BOOT
400 Summary:        Kernel version %{version} used on the installation boot disks
401 Summary(de):    Kernel version %{version} für Installationsdisketten
402 Summary(es):    Núcleo (kernel) de Linux, utilizado en el disco de instalación
403 Summary(fr):    Kernel version %{version} utiliser pour les disquettes d'installation
404 Summary(pl):    J±dro Linuksa %{version} dla bootkietek instalacyjnych
405 Summary(pt_BR): Kernel Linux utilizado no disco de instalação
406 Group:          Base/Kernel
407 PreReq:         modutils
408 Requires(post,postun):  fileutils
409 Requires(postun):       awk
410 AutoReqProv:    no
411
412 %description BOOT
413 This package includes a trimmed down version of the Linux %{version}
414 kernel. This kernel is used on the installation boot disks only and
415 should not be used for an installed system, as many features in this
416 kernel are turned off because of the size constraints.
417
418 %description BOOT -l de
419 Dieses Paket enthält eine verkleinerte Version vom Linux-Kernel
420 version %{version}. Dieser Kernel wird auf den
421 Installations-Bootdisketten benutzt und sollte nicht auf einem
422 installierten System verwendet werden, da viele Funktionen wegen der
423 Platzprobleme abgeschaltet sind.
424
425 %description BOOT -l es
426 Núcleo (kernel) de Linux, utilizado en el disco de instalación
427
428 %description BOOT -l pl
429 Pakiet zawiera j±dro Linuksa dedykowane dyskietkom startowym i powinno
430 byæ u¿ywane jedynie podczas instalacji systemu. Wiele u¿ytecznych
431 opcji zosta³o wy³±czonych, aby jak najbardziej zmniejszyæ jego
432 rozmiar.
433
434 %description BOOT -l pt_BR
435 Este pacote inclui uma versão minimizada do kernel Linux, criada para
436 ser utilizada *apenas* no disco de instalação, e não deve ser utilizada
437 em máquinas já instaladas, pois várias características do kernel
438 são desabilitadas para diminuir o tamanho final do kernel a ser utilizado.
439
440 %package pcmcia
441 Summary:        PCMCIA modules
442 Summary(pl):    Modu³y PCMCIA
443 Group:          Base/Kernel
444 PreReq:         %{name}-up = %{version}-%{release}
445 Requires(postun):       %{name}-up = %{version}-%{release}
446 Provides:       kernel(pcmcia)
447
448 %description pcmcia
449 Kernel PCMCIA modules.
450
451 %description pcmcia -l pl
452 Modu³y PCMCIA z kernela.
453
454 %package smp-pcmcia
455 Summary:        PCMCIA modules for SMP kernel
456 Summary(pl):    Modu³y PCMCIA dla maszyn SMP
457 Group:          Base/Kernel
458 PreReq:         %{name}-smp = %{version}-%{release}
459 Requires(postun):       %{name}-smp = %{version}-%{release}
460 Provides:       kernel(pcmcia)
461
462 %description smp-pcmcia
463 Kernel PCMCIA modules for SMP kernel.
464
465 %description smp-pcmcia -l pl
466 Modu³y PCMCIA z kernela dla maszyn SMP.
467
468 %package drm
469 Summary:        DRM kernel modules
470 Summary(pl):    Sterowniki DRM
471 Group:          Base/Kernel
472 PreReq:         %{name}-up = %{version}-%{release}
473 Requires(postun):       %{name}-up = %{version}-%{release}
474 Provides:       %{name}-drm = %{drm_xfree_version}
475
476 %description drm
477 DRM kernel modules (%{drm_xfree_version}).
478
479 %description drm -l pl
480 Sterowniki DRM (%{drm_xfree_version}).
481
482 %package smp-drm
483 Summary:        DRM SMP kernel modules
484 Summary(pl):    Sterowniki DRM dla maszyn wieloprocesorowych
485 Group:          Base/Kernel
486 PreReq:         %{name}-smp = %{version}-%{release}
487 Requires(postun):       %{name}-smp = %{version}-%{release}
488 Provides:       %{name}-drm = %{drm_xfree_version}
489
490 %description smp-drm
491 DRM SMP kernel modules (%{drm_xfree_version}).
492
493 %description smp-drm -l pl
494 Sterowniki DRM dla maszyn wieloprocesorowych (%{drm_xfree_version}).
495
496 %package headers
497 Summary:        Header files for the Linux kernel
498 Summary(es):    Archivos de inclusión para núcleo (kernel) Linux.
499 Summary(pl):    Pliki nag³ówkowe j±dra
500 Summary(pt_BR): Arquivos de inclusão para o kernel Linux.
501 Group:          Base/Kernel
502 Requires(post,postun):  fileutils
503 Requires(postun):       awk
504 Provides:       %{name}-headers(agpgart) = %{version}
505 Provides:       %{name}-headers(reiserfs) = %{version}
506 Provides:       %{name}-headers(bridging) = %{version}
507 Provides:       i2c-devel = %{i2c_version}
508 Provides:       %{name}-headers(netfilter) = 1.2.9rc1-%{netfilter_snap}
509 AutoReqProv:    no
510
511 %description headers
512 These are the C header files for the Linux kernel, which define
513 structures and constants that are needed when building most standard
514 programs under Linux, as well as to rebuild the kernel.
515
516 %description headers -l es
517 Estos son los archivos de inclusión C para núcleo (kernel) Linux, que define
518 estructuras y constantes que son necesarias a la construcción de la
519 mayoría de los programas en el Linux, como también para reconstruir
520 el núcleo (kernel).
521
522 %description headers -l pl
523 Pakiet zawiera pliki nag³ówkowe j±dra, niezbêdne do rekompilacji j±dra
524 oraz niektórych programów.
525
526 %description headers -l pt_BR
527 Estes são os arquivos de inclusão C para o kernel Linux, os
528 quais definem estruturas e constantes que são necessárias para
529 a construção da maioria dos programas no Linux, bem como para
530 reconstruir o próprio kernel.
531
532 %package source
533 Summary:        Kernel source tree
534 Summary(es):    Fuentes del núcleo (kernel) Linux
535 Summary(pl):    Kod ¼ród³owy j±dra Linuksa
536 Summary(pt_BR): Fontes do kernel Linux
537 Group:          Base/Kernel
538 Requires:       %{name}-headers = %{version}-%{release}
539 %ifarch %{ix86}
540 Requires:       bin86
541 %endif
542 AutoReqProv:    no
543
544 %description source
545 This is the source code for the Linux kernel. It is required to build
546 most C programs as they depend on constants defined in here. You can
547 also build a custom kernel that is better tuned to your particular
548 hardware.
549
550 %description source -l de
551 Das Kernel-Source-Paket enthält den source code (C/Assembler-Code) des
552 Linux-Kernels. Die Source-Dateien werden gebraucht, um viele
553 C-Programme zu compilieren, da sie auf Konstanten zurückgreifen, die
554 im Kernel-Source definiert sind. Die Source-Dateien können auch
555 benutzt werden, um einen Kernel zu compilieren, der besser auf Ihre
556 Hardware ausgerichtet ist.
557
558 %description source -l es
559 Este es el fuente para el núcleo (kernel) Linux. Se necesita para la
560 construcción de la mayoría de los programas C, pues dependen de
561 constantes definidas en él. Tu puedes también construir un núcleo (kernel)
562 personalizado que será lo mejor configurado para tu hardware en
563 particular.
564
565 %description source -l fr
566 Le package pour le kernel-source contient le code source pour le noyau
567 linux. Ces sources sont nécessaires pour compiler la plupart des
568 programmes C, car il dépend de constantes définies dans le code
569 source. Les sources peuvent être aussi utilisée pour compiler un noyau
570 personnalisé pour avoir de meilleures performances sur des matériels
571 particuliers.
572
573 %description source -l pl
574 Pakiet zawiera kod ¼ród³owy j±dra systemu.
575
576 %description source -l pt_BR
577 Este é o fonte para o kernel Linux. É necessário para a
578 construção da maioria dos programas C, pois eles dependem de
579 constantes definidas nele. Você também pode construir um kernel
580 personalizado que será melhor configurado para seu hardware particular.
581
582 %package doc
583 Summary:        Kernel documentation
584 Summary(es):    Documentación para los archivos fuente del núcleo (kernel) de Linux
585 Summary(pl):    Dokumentacja do j±dra Linuksa
586 Summary(pt_BR): Documentação para os arquivos fontes do kernel Linux
587 Group:          Base/Kernel
588 Provides:       %{name}-doc = %{version}
589 AutoReqProv:    no
590
591 %description doc
592 This is the documentation for the Linux kernel, as found in
593 /usr/src/linux/Documentation directory.
594
595 %description doc -l es
596 Documentación para los archivos fuente del núcleo (kernel) de Linux
597
598 %description doc -l pl
599 Pakiet zawiera dokumentacjê j±dra z katalogu
600 /usr/src/linux/Documentation.
601
602 %description doc -l pt_BR
603 Este pacote contém documentação para o kernel Linux.
604
605 %prep
606 %setup -q -a3 -n linux-%{version}
607 # new JFS
608 rm -fr fs/jfs
609 gzip -dc %{SOURCE7} | tar -xf -
610 %patch0 -p1
611 %patch10 -p1
612 %patch12 -p1
613 %patch15 -p1
614 %patch20 -p1
615 %patch21 -p1
616 %patch22 -p1
617 %patch25 -p1
618 #%patch26 -p1
619 %patch32 -p1
620 # XXX: TODO - update patch
621 #%patch31 -p1
622 %patch40 -p1
623 %patch50 -p1
624 %patch55 -p1
625 %patch60 -p1
626 %patch61 -p1
627 %patch65 -p1
628 %patch70 -p1
629 %patch80 -p1
630 %patch100 -p1
631 %patch110 -p1
632 %patch120 -p1
633 %patch125 -p1
634 %patch130 -p1
635 #%patch150 -p1
636 %patch151 -p1
637 %patch152 -p1
638 %patch200 -p1
639 %patch205 -p1
640 %patch210 -p1
641 #%patch215 -p1
642 #%patch216 -p1
643 %patch225 -p1
644 %patch226 -p1
645 %patch227 -p1
646 %patch231 -p1
647 %patch235 -p1
648 %patch240 -p1
649 %patch255 -p1
650 %patch256 -p1
651 %patch257 -p1
652 %patch265 -p1
653 %patch275 -p1
654 %patch301 -p1
655 %patch302 -p1
656 %patch303 -p1
657 %patch1000 -p1
658 %patch1002 -p1
659 %patch1003 -p1
660 %patch1006 -p1
661 %patch1007 -p1
662 #%patch1008 -p1
663 %patch1009 -p1
664 %patch1010 -p1
665 %patch1102 -p1
666 %patch1104 -p0
667 %patch1105 -p1
668 %patch1106 -p0
669 %patch1111 -p1
670 %patch1150 -p1
671 %patch1152 -p1
672 %patch1201 -p1
673 %patch1203 -p1
674 %patch1205 -p1
675 %patch1207 -p1
676 %patch1209 -p1
677 %patch1250 -p1
678 %patch1251 -p1
679 %patch1252 -p1
680 %patch1253 -p1
681 %patch1254 -p0
682 %patch1255 -p1
683 %patch1301 -p1
684 %patch1302 -p1
685 %patch1303 -p1
686 %patch1304 -p1
687 %patch1305 -p1
688 %patch1350 -p1
689 %patch1354 -p1
690 %patch1400 -p1
691 %patch1401 -p1
692 %patch1402 -p1
693 %patch1403 -p1
694 %patch1404 -p1
695 %patch1405 -p1
696 %patch1407 -p1
697 %patch1408 -p1
698 %patch1410 -p1
699 %patch1411 -p1
700 %patch1413 -p1
701 %patch1414 -p1
702 %patch1415 -p0
703 %patch1416 -p1
704 # XXX: is there updated one?
705 #%patch1417 -p1
706 %patch1418 -p1
707 %patch1419 -p1
708 %patch1420 -p1
709 %patch1421 -p1
710 # XXX: no TRACE in netfilter included here (at this moment)
711 #%patch1422 -p1
712
713 %patch2000 -p0
714 %patch2001 -p1
715 %patch2002 -p1
716 %patch2003 -p1
717 %ifarch ppc
718 %patch2004 -p1
719 %endif
720
721 %patch3000 -p1
722 %patch3002 -p1
723 %patch3003 -p1
724 %patch3004 -p1
725 cd drivers/char/drm
726 %patch3008 -p1
727 cd ../../..
728
729 %ifarch sparc64
730 %patch3010 -p1
731 %endif
732
733 %patch3011 -p1
734 %patch3012 -p1
735 %patch3013 -p1
736
737 # XXX: finish update (one (not very important) issue with seq_file not resolved)
738 %{?with_grsec:%patch4000 -p1}
739
740 mv -f drivers/scsi/sym53c8xx.c drivers/scsi/sym53c8xx_old.c
741
742 # Tekram DC395/315 U/UW SCSI host driver
743 echo Adding Tekram DC395/315 driver
744 patch -p1 -s < dc395/dc395-integ24.diff
745 install dc395/dc395x_trm.? dc395/README.dc395x drivers/scsi/
746 %patch270 -p1
747
748 # The following go last as they touch a lot of code
749 # and/or are on bcond and/or are ifarch
750
751 %ifarch %{ix86}
752 %if %{with win4lin}
753 echo Win4Lin patch ...
754 %patch900 -p1
755 %patch991 -p1
756 %endif
757 %endif
758
759 # Remove -g from drivers/atm/Makefile and net/ipsec/Makefile
760 echo -e ',s/EXTRA_CFLAGS.*-g//g\n,w' | ed net/ipsec/Makefile
761
762 # Fix EXTRAVERSION and CC in main Makefile
763 echo -e ',s/EXTRAVERSION =.*/EXTRAVERSION =/g\n,w' | ed Makefile
764 %ifarch sparc64
765 echo -e ',s/CC.*$(CROSS_COMPILE)gcc/CC          = sparc64-linux-gcc/g\n,w' | ed Makefile
766 %endif
767
768 %build
769 BuildKernel() {
770         %{?_debug:set -x}
771         # is this a special kernel we want to build?
772         BOOT=
773         smp=
774         [ "$1" = "BOOT" -o "$2" = "BOOT" ] && BOOT=yes
775         [ "$1" = "smp" -o "$2" = "smp" ] && smp=yes
776 %ifarch %{ix86}
777         if [ "$smp" = "yes" ]; then
778                 Config="ia32-smp"
779         else
780                 Config="ia32"
781         fi
782 %else
783         if [ "$smp" = "yes" ]; then
784                 Config="%{_target_cpu}-smp"
785         else
786                 Config="%{_target_cpu}"
787         fi
788 %endif
789         if [ "$BOOT" = "yes" ]; then
790                 KernelVer=%{version}-%{release}BOOT
791         else
792                 KernelVer=%{version}-%{release}$1
793         fi
794         echo "BUILDING THE NORMAL KERNEL $*..."
795 :> arch/%{base_arch}/defconfig
796         cat $RPM_SOURCE_DIR/kernel-$Config.config >> arch/%{base_arch}/defconfig
797 %ifarch i386
798         echo "CONFIG_M386=y" >> arch/%{base_arch}/defconfig
799 %endif
800 %ifarch i586
801         echo "CONFIG_M586=y" >> arch/%{base_arch}/defconfig
802 %endif
803 %ifarch i686
804         echo "CONFIG_M686=y" >> arch/%{base_arch}/defconfig
805 %endif
806 %ifarch athlon
807         echo "CONFIG_MK7=y" >> arch/%{base_arch}/defconfig
808 %endif
809         cat %{SOURCE1000} >> arch/%{base_arch}/defconfig
810         cat %{SOURCE1001} >> arch/%{base_arch}/defconfig
811
812 %ifarch sparc64
813         echo -e ',s/^CONFIG_FB_I810=.*/# CONFIG_FB_I810 is not set/g\n,w' | \
814                 ed arch/%{base_arch}/defconfig
815         echo -e ',s/CONFIG_IPSEC_AUTH_HMAC_SHA1=y/# CONFIG_IPSEC_AUTH_HMAC_SHA1 is not set/g\n,w' | \
816                 ed arch/%{base_arch}/defconfig
817 %endif
818
819         if [ "$BOOT" = "yes" ] ; then
820                 echo "# CONFIG_GRKERNSEC is not set" >> arch/%{base_arch}/defconfig
821         else
822                 :;
823 %if %{with grsec}
824                 echo -e ',s/CONFIG_CRYPTO_SHA256=m/CONFIG_CRYPTO_SHA256=y/g\n,w' | \
825                         ed arch/%{base_arch}/defconfig
826                 cat %{SOURCE1002} >> arch/%{base_arch}/defconfig
827 %endif
828         fi
829 %ifarch %{ix86}
830         cat %{SOURCE2000} >> arch/%{base_arch}/defconfig
831 %endif
832
833 %ifarch i386
834         echo -e ',s/# CONFIG_MATH_EMULATION is not set/CONFIG_MATH_EMULATION=y/g\n,w' | \
835                 ed arch/%{base_arch}/defconfig
836 %endif
837
838         %{__make} mrproper
839         ln -sf arch/%{base_arch}/defconfig .config
840
841 %ifarch sparc
842         sparc32 %{__make} oldconfig
843         sparc32 %{__make} dep clean
844 %else
845         %{__make} oldconfig
846         %{__make} dep clean
847 %endif
848         %{__make} include/linux/version.h
849
850 # making  table for soundmodem.
851         cd drivers/net/hamradio/soundmodem
852         %{__cc} -o gentbl -lm gentbl.c
853         ./gentbl
854         cd ../../../..
855
856 %ifarch %{ix86}
857         %{__make} bzImage
858 %endif
859 %ifarch sparc
860         sparc32 %{__make} boot
861 %else
862 %ifnarch %{ix86}
863         %{__make}
864 %endif
865 %endif
866 %ifarch sparc
867         sparc32 %{__make} modules
868 %else
869         %{__make} modules
870 %endif
871
872         mkdir -p $KERNEL_INSTALL_DIR/boot
873         install System.map $KERNEL_INSTALL_DIR/boot/System.map-$KernelVer
874 %ifarch %{ix86}
875         cp arch/i386/boot/bzImage $KERNEL_INSTALL_DIR/boot/vmlinuz-$KernelVer
876 %endif
877 %ifarch alpha sparc sparc64
878         gzip -cfv vmlinux > vmlinuz
879         install vmlinux $KERNEL_INSTALL_DIR/boot/vmlinux-$KernelVer
880         install vmlinuz $KERNEL_INSTALL_DIR/boot/vmlinuz-$KernelVer
881 %endif
882 %ifarch ppc
883         install vmlinux $KERNEL_INSTALL_DIR/boot/vmlinux-$KernelVer
884         install vmlinux $KERNEL_INSTALL_DIR/boot/vmlinuz-$KernelVer
885 %endif
886 %ifarch sparc
887         sparc32 %{__make} modules_install \
888         INSTALL_MOD_PATH=$KERNEL_INSTALL_DIR \
889         KERNELRELEASE=$KernelVer
890         echo KERNEL RELEASE $KernelVer
891 %else
892         %{__make} modules_install \
893         INSTALL_MOD_PATH=$KERNEL_INSTALL_DIR \
894         KERNELRELEASE=$KernelVer
895         echo KERNEL RELEASE $KernelVer
896 %endif
897 }
898
899 KERNEL_BUILD_DIR=`pwd`
900 KERNEL_INSTALL_DIR=$KERNEL_BUILD_DIR-installed
901 rm -rf $KERNEL_INSTALL_DIR
902 install -d $KERNEL_INSTALL_DIR
903
904 # make drivers/scsi/ missing files
905 #       (cd drivers/scsi; make -f M)
906
907 # UP KERNEL
908 %{?with_up:BuildKernel}
909
910 # SMP KERNEL
911 %{?with_smp:BuildKernel smp}
912
913 %if ! %{with up} && ! %{with smp}
914 # We need include/asm created somewhere
915 make symlinks
916 %endif
917
918 # BOOT kernel
919 %ifnarch i586 i686 athlon
920 KERNEL_INSTALL_DIR="$KERNEL_BUILD_DIR-installed%{_libdir}/bootdisk"
921 rm -rf $KERNEL_INSTALL_DIR
922 %{?with_boot:BuildKernel BOOT}
923 %endif
924
925 %install
926 rm -rf $RPM_BUILD_ROOT
927 umask 022
928
929 install -d $RPM_BUILD_ROOT%{_prefix}/{include,src/linux-%{version}}
930
931 KERNEL_BUILD_DIR=`pwd`
932
933 KERNEL_BUILD_INSTALL=no
934 %{?with_up:KERNEL_BUILD_INSTALL=yes}
935 %{?with_smp:KERNEL_BUILD_INSTALL=yes}
936 [ "$KERNEL_BUILD_INSTALL" = "yes" ] && cp -a $KERNEL_BUILD_DIR-installed/* $RPM_BUILD_ROOT
937
938 for i in "" smp ; do
939         if [ -e  $RPM_BUILD_ROOT/lib/modules/%{version}-%{release}$i ] ; then
940                 rm -f $RPM_BUILD_ROOT/lib/modules/%{version}-%{release}$i/build
941                 ln -sf %{_prefix}/src/linux-%{version} \
942                         $RPM_BUILD_ROOT/lib/modules/%{version}-%{release}$i/build
943         fi
944 done
945 ln -sf ../src/linux/include/linux $RPM_BUILD_ROOT%{_includedir}/linux
946 ln -sf linux-%{version} $RPM_BUILD_ROOT%{_prefix}/src/linux
947
948 %ifarch sparc sparc64
949 ln -s /usr/src/linux/include/asm-sparc $RPM_BUILD_ROOT%{_includedir}/asm-sparc
950 ln -s ../src/linux/include/asm-sparc64 $RPM_BUILD_ROOT%{_includedir}/asm-sparc64
951 %else
952 ln -sf ../src/linux/include/asm $RPM_BUILD_ROOT/usr/include/asm
953 %endif
954
955 %if %{with source}
956 cp -a . $RPM_BUILD_ROOT/usr/src/linux-%{version}
957 %else
958 cp -a {include,scripts,Makefile,Rules.make,Documentation} $RPM_BUILD_ROOT/usr/src/linux-%{version}
959 %endif
960
961 %ifarch sparc sparc64
962 sh %{SOURCE2} $RPM_BUILD_ROOT%{_includedir}
963 cp -a %{SOURCE2} $RPM_BUILD_ROOT%{_includedir}/asm/BuildASM
964 %endif
965
966 cd $RPM_BUILD_ROOT%{_prefix}/src/linux-%{version}
967
968 # remove foreign architecture files
969 cd include
970 mkdir _asm_keep
971 mv asm-generic _asm_keep
972 %ifarch sparc sparc64
973         mv asm-sparc* _asm_keep
974 %else
975         mv `readlink asm` _asm_keep
976 %endif
977 rm -rf asm-*
978 mv _asm_keep/* .
979 rmdir _asm_keep
980 cd ..
981
982 %if %{with source}
983 MYARCH=%{_arch}
984 %ifarch %{ix86}
985 MYARCH=i386
986 %endif
987 %ifarch sparc sparc64
988 MYARCH="sparc sparc64"
989 %endif
990 cd arch
991 mv $MYARCH ..
992 cd ..
993 rm -rf arch/*
994 mv $MYARCH arch
995 %endif
996
997 %if %{with source}
998 %{__make} mrproper
999
1000 find  -name "*~" -print | xargs rm -f
1001 find  -name "*.orig" -print | xargs rm -f
1002
1003 %ifarch %{ix86}
1004 cat $RPM_SOURCE_DIR/kernel-ia32.config > .config
1005 %else
1006 install $RPM_SOURCE_DIR/kernel-%{_target_cpu}.config .config
1007 %endif
1008
1009 %ifarch i386
1010 echo "CONFIG_M386=y" >> .config
1011 %endif
1012 %ifarch i586
1013 echo "CONFIG_M586=y" >> .config
1014 %endif
1015 %ifarch i686
1016 echo "CONFIG_M686=y" >> .config
1017 %endif
1018 %ifarch athlon
1019 echo "CONFIG_MK7=y" >> .config
1020 %endif
1021 cat %{SOURCE1000} >> .config
1022 cat %{SOURCE1001} >> .config
1023 %{?with_grsec:cat %{SOURCE1002} >> .config}
1024
1025 %ifarch sparc64
1026         echo -e ',s/^CONFIG_FB_I810=.*/# CONFIG_FB_I810 is not set/g\n,w' | \
1027                 ed .config
1028         echo -e ',s/CONFIG_IPSEC_AUTH_HMAC_SHA1=y/# CONFIG_IPSEC_AUTH_HMAC_SHA1 is not set/g\n,w' | \
1029                 ed .config
1030 %endif
1031
1032 %ifarch %{ix86}
1033 cat %{SOURCE2000} >> .config
1034 %endif
1035
1036 %ifarch sparc
1037 sparc32 %{__make} oldconfig
1038 %else
1039 %{__make} oldconfig
1040 %endif
1041
1042 mv include/linux/autoconf.h include/linux/autoconf-up.h
1043 cp .config config-up
1044
1045 %ifarch %{ix86}
1046 cat $RPM_SOURCE_DIR/kernel-ia32-smp.config >> .config
1047 %else
1048 install $RPM_SOURCE_DIR/kernel-%{_target_cpu}-smp.config .config
1049 %endif
1050
1051 %ifarch i386
1052 echo "CONFIG_M386=y" >> .config
1053 %endif
1054 %ifarch i586
1055 echo "CONFIG_M586=y" >> .config
1056 %endif
1057 %ifarch i686
1058 echo "CONFIG_M686=y" >> .config
1059 %endif
1060 %ifarch athlon
1061 echo "CONFIG_MK7=y" >> .config
1062 %endif
1063
1064 cat %{SOURCE1000} >> .config
1065 cat %{SOURCE1001} >> .config
1066 %{?with_grsec:cat %{SOURCE1002} >> .config}
1067
1068 %ifarch sparc64
1069         echo -e ',s/^CONFIG_FB_I810=.*/# CONFIG_FB_I810 is not set/g\n,w' | \
1070                 ed .config
1071         echo -e ',s/CONFIG_IPSEC_AUTH_HMAC_SHA1=y/# CONFIG_IPSEC_AUTH_HMAC_SHA1 is not set/g\n,w' | \
1072                 ed .config
1073 %endif
1074
1075 %ifarch %{ix86}
1076 cat %{SOURCE2000} >> .config
1077 %endif
1078
1079 %ifarch sparc
1080 sparc32 %{__make} oldconfig
1081 %else
1082 %{__make} oldconfig
1083 %endif
1084 mv include/linux/autoconf.h include/linux/autoconf-smp.h
1085 cp .config config-smp
1086 %endif
1087
1088 install %{SOURCE1} $RPM_BUILD_ROOT/usr/src/linux-%{version}/include/linux/autoconf.h
1089
1090 %if %{with source}
1091 # this generates modversions info which we want to include and we may as
1092 # well include the depends stuff as well
1093 %{__make} symlinks
1094 %{__make} include/linux/version.h
1095 #%{__make} "`pwd`/include/linux/modversions.h"
1096 %endif
1097 rm -f include/linux/modversions.h
1098 echo "#include <linux/modsetver.h>" > include/linux/modversions.h
1099
1100
1101 # this generates modversions info which we want to include and we may as
1102 # well include the depends stuff as well, after we fix the paths
1103
1104 %if %{with source}
1105 %{__make} depend
1106 find $RPM_BUILD_ROOT/usr/src/linux-%{version} -name ".*depend" \
1107         -exec /bin/sh -c "echo -e \",s|$RPM_BUILD_ROOT||g\n,w\" | ed {}" \;
1108
1109 %{__make} clean
1110 rm -f scripts/mkdep
1111 rm -f drivers/net/hamradio/soundmodem/gentbl
1112 %endif
1113
1114 # BOOT
1115 %if %{with boot}
1116 %ifnarch i586 i686 athlon
1117 install -d $RPM_BUILD_ROOT%{_libdir}/bootdisk
1118 cp -rdp $KERNEL_BUILD_DIR-installed%{_libdir}/bootdisk/* $RPM_BUILD_ROOT%{_libdir}/bootdisk
1119 %endif
1120 %endif
1121
1122 %clean
1123 rm -rf $RPM_BUILD_ROOT
1124 rm -rf $RPM_BUILD_DIR/linux-%{version}-installed
1125
1126 %post
1127 mv -f /boot/vmlinuz /boot/vmlinuz.old 2> /dev/null > /dev/null
1128 mv -f /boot/System.map /boot/System.map.old 2> /dev/null > /dev/null
1129 ln -sf vmlinuz-%{version}-%{release} /boot/vmlinuz
1130 ln -sf System.map-%{version}-%{release} /boot/System.map
1131
1132 if [ ! -L /lib/modules/%{version} ] ; then
1133         mv -f /lib/modules/%{version} /lib/modules/%{version}.rpmsave > /dev/null 2>&1
1134 fi
1135 rm -f /lib/modules/%{version}
1136 ln -snf %{version}-%{release} /lib/modules/%{version}
1137 /sbin/depmod -a -F /boot/System.map-%{version}-%{release} %{version}-%{release}
1138
1139 /sbin/geninitrd -f --initrdfs=rom /boot/initrd-%{version}-%{release}.gz %{version}-%{release}
1140 mv -f /boot/initrd /boot/initrd.old
1141 ln -sf initrd-%{version}-%{release}.gz /boot/initrd
1142
1143 if [ -f %{_prefix}/src/linux-%{version}/config-up ] ; then
1144         ln -s %{_prefix}/src/linux-%{version}/config-up %{_prefix}/src/linux-%{version}/.config
1145 fi
1146
1147 if [ -x /sbin/rc-boot ] ; then
1148         /sbin/rc-boot 1>&2 || :
1149 fi
1150
1151 %post smp
1152 mv -f /boot/vmlinuz /boot/vmlinuz.old 2> /dev/null > /dev/null
1153 mv -f /boot/System.map /boot/System.map.old 2> /dev/null > /dev/null
1154 ln -sf vmlinuz-%{version}-%{release}smp /boot/vmlinuz
1155 ln -sf System.map-%{version}-%{release}smp /boot/System.map
1156
1157 if [ ! -L /lib/modules/%{version} ] ; then
1158         mv -f /lib/modules/%{version} /lib/modules/%{version}.rpmsave > /dev/null 2>&1
1159 fi
1160 rm -f /lib/modules/%{version}
1161 ln -snf %{version}-%{release}smp /lib/modules/%{version}
1162 /sbin/depmod -a -F /boot/System.map-%{version}-%{release}smp %{version}-%{release}smp
1163
1164 /sbin/geninitrd -f --initrdfs=rom /boot/initrd-%{version}-%{release}smp.gz %{version}-%{release}smp
1165 mv -f /boot/initrd /boot/initrd.old
1166 ln -sf initrd-%{version}-%{release}smp.gz /boot/initrd
1167
1168 if [ -f %{_prefix}/src/linux-%{version}/config-smp ] ; then
1169         ln -s %{_prefix}/src/linux-%{version}/config-smp %{_prefix}/src/linux-%{version}/.config
1170 fi
1171
1172 if [ -x /sbin/rc-boot ] ; then
1173         /sbin/rc-boot 1>&2 || :
1174 fi
1175
1176 %post BOOT
1177 if [ ! -L %{_libdir}/bootdisk/lib/modules/%{version} ] ; then
1178         mv -f %{_libdir}/bootdisk/lib/modules/%{version} %{_libdir}/bootdisk/lib/modules/%{version}.rpmsave
1179 fi
1180 if [ ! -L %{_libdir}/bootdisk/boot/vmlinuz-%{version} ] ; then
1181         mv -f %{_libdir}/bootdisk/boot/vmlinuz-%{version} %{_libdir}/bootdisk/boot/vmlinuz-%{version}.rpmsave
1182 fi
1183 rm -f %{_libdir}/bootdisk/lib/modules/%{version}
1184 ln -snf %{version}-%{release}BOOT %{_libdir}/bootdisk/lib/modules/%{version}
1185 rm -f %{_libdir}/bootdisk/boot/vmlinuz-%{version}
1186 ln -snf vmlinuz-%{version}-%{release}BOOT %{_libdir}/bootdisk/boot/vmlinuz-%{version}
1187
1188 %postun
1189 if [ -L /lib/modules/%{version} ]; then
1190         if [ "`ls -l /lib/modules/%{version} | awk '{ print $11 }'`" = "%{version}-%{release}" ]; then
1191                 if [ "$1" = "0" ]; then
1192                         rm -f /lib/modules/%{version}
1193                 fi
1194         fi
1195 fi
1196 rm -f /boot/initrd-%{version}-%{release}.gz
1197
1198 %post pcmcia
1199 /sbin/depmod -a -F /boot/System.map-%{version}-%{release} %{version}-%{release}
1200
1201 %postun pcmcia
1202 /sbin/depmod -a -F /boot/System.map-%{version}-%{release} %{version}-%{release} > /dev/null 2>&1
1203
1204 %post drm
1205 /sbin/depmod -a -F /boot/System.map-%{version}-%{release} %{version}-%{release}
1206
1207 %postun drm
1208 /sbin/depmod -a -F /boot/System.map-%{version}-%{release} %{version}-%{release} > /dev/null 2>&1
1209
1210 %postun smp
1211 if [ -L /lib/modules/%{version} ]; then
1212         if [ "`ls -l /lib/modules/%{version} | awk '{ print $11 }'`" = "%{version}-%{release}smp" ]; then
1213                 if [ "$1" = "0" ]; then
1214                         rm -f /lib/modules/%{version}
1215                 fi
1216         fi
1217 fi
1218 rm -f /boot/initrd-%{version}-%{release}smp.gz
1219
1220 %post smp-pcmcia
1221 /sbin/depmod -a -F /boot/System.map-%{version}-%{release}smp %{version}-%{release}smp
1222
1223 %postun smp-pcmcia
1224 /sbin/depmod -a -F /boot/System.map-%{version}-%{release}smp %{version}-%{release}smp > /dev/null 2>&1
1225
1226 %post smp-drm
1227 /sbin/depmod -a -F /boot/System.map-%{version}-%{release}smp %{version}-%{release}smp
1228
1229 %postun smp-drm
1230 /sbin/depmod -a -F /boot/System.map-%{version}-%{release}smp %{version}-%{release}smp > /dev/null 2>&1
1231
1232 %postun BOOT
1233 if [ -L %{_libdir}/bootdisk/lib/modules/%{version} ]; then
1234         if [ "`ls -l %{_libdir}/bootdisk/lib/modules/%{version} | awk '{ print $11 }'`" = "%{version}-%{release}BOOT" ]; then
1235                 if [ "$1" = "0" ]; then
1236                         rm -f %{_libdir}/bootdisk/lib/modules/%{version}
1237                 fi
1238         fi
1239 fi
1240
1241 %post headers
1242 rm -f /usr/src/linux
1243 ln -snf linux-%{version} /usr/src/linux
1244
1245 %postun headers
1246 if [ -L /usr/src/linux ]; then
1247         if [ "`ls -l /usr/src/linux | awk '{ print $11 }'`" = "linux-%{version}" ]; then
1248                 if [ "$1" = "0" ]; then
1249                         rm -f /usr/src/linux
1250                 fi
1251         fi
1252 fi
1253
1254 %if %{with up}
1255 %files
1256 %defattr(644,root,root,755)
1257 %ifarch alpha sparc sparc64 ppc
1258 /boot/vmlinux-%{version}-%{release}
1259 %endif
1260 /boot/vmlinuz-%{version}-%{release}
1261 /boot/System.map-%{version}-%{release}
1262 %dir /lib/modules/%{version}-%{release}
1263 /lib/modules/%{version}-%{release}/kernel
1264 %ifnarch sparc sparc64
1265 %exclude /lib/modules/%{version}-%{release}/kernel/drivers/pcmcia
1266 %exclude /lib/modules/%{version}-%{release}/kernel/drivers/ide/legacy/*-cs.o*
1267 %exclude /lib/modules/%{version}-%{release}/kernel/drivers/mtd/maps/pcmcia*
1268 %exclude /lib/modules/%{version}-%{release}/kernel/drivers/net/pcmcia
1269 %exclude /lib/modules/%{version}-%{release}/kernel/drivers/scsi/pcmcia
1270 %exclude /lib/modules/%{version}-%{release}/kernel/drivers/char/pcmcia
1271 %exclude /lib/modules/%{version}-%{release}/kernel/drivers/net/wireless/*_cs.o*
1272 %exclude /lib/modules/%{version}-%{release}/kernel/drivers/parport/*_cs.o*
1273 %exclude /lib/modules/%{version}-%{release}/kernel/drivers/bluetooth/*_cs.o*
1274 %endif
1275 %ifnarch ppc sparc sparc64
1276 %exclude /lib/modules/%{version}-%{release}/kernel/drivers/isdn/hisax/*_cs.o*
1277 %ifnarch alpha
1278 %exclude /lib/modules/%{version}-%{release}/kernel/drivers/isdn/avmb1/avm_cs.o*
1279 %exclude /lib/modules/%{version}-%{release}/kernel/drivers/telephony/*_pcmcia.o*
1280 %endif
1281 %endif
1282 %ifnarch sparc
1283 %exclude /lib/modules/%{version}-%{release}/kernel/drivers/char/drm
1284 %endif
1285 /lib/modules/%{version}-%{release}/build
1286 %ghost /lib/modules/%{version}-%{release}/modules.*
1287
1288 %ifnarch sparc sparc64
1289 %files pcmcia
1290 %defattr(644,root,root,755)
1291 /lib/modules/%{version}-%{release}/kernel/drivers/pcmcia
1292 /lib/modules/%{version}-%{release}/kernel/drivers/ide/legacy/*-cs.o*
1293 /lib/modules/%{version}-%{release}/kernel/drivers/mtd/maps/pcmcia*
1294 /lib/modules/%{version}-%{release}/kernel/drivers/net/pcmcia
1295 /lib/modules/%{version}-%{release}/kernel/drivers/scsi/pcmcia
1296 /lib/modules/%{version}-%{release}/kernel/drivers/char/pcmcia
1297 /lib/modules/%{version}-%{release}/kernel/drivers/net/wireless/*_cs.o*
1298 /lib/modules/%{version}-%{release}/kernel/drivers/parport/*_cs.o*
1299 /lib/modules/%{version}-%{release}/kernel/drivers/bluetooth/*_cs.o*
1300 %ifnarch ppc
1301 /lib/modules/%{version}-%{release}/kernel/drivers/isdn/hisax/*_cs.o*
1302 %ifnarch alpha
1303 /lib/modules/%{version}-%{release}/kernel/drivers/isdn/avmb1/avm_cs.o*
1304 /lib/modules/%{version}-%{release}/kernel/drivers/telephony/*_pcmcia.o*
1305 %endif
1306 %endif
1307 %endif
1308
1309 %ifnarch sparc
1310 %files drm
1311 %defattr(644,root,root,755)
1312 /lib/modules/%{version}-%{release}/kernel/drivers/char/drm
1313 %endif                  # %%{with up}
1314 %endif
1315
1316 %if %{with smp}
1317 %files smp
1318 %defattr(644,root,root,755)
1319 %ifarch alpha sparc sparc64 ppc
1320 /boot/vmlinux-%{version}-%{release}smp
1321 %endif
1322 /boot/vmlinuz-%{version}-%{release}smp
1323 /boot/System.map-%{version}-%{release}smp
1324 %dir /lib/modules/%{version}-%{release}smp
1325 /lib/modules/%{version}-%{release}smp/kernel
1326 %ifnarch sparc sparc64
1327 %exclude /lib/modules/%{version}-%{release}smp/kernel/drivers/pcmcia
1328 %exclude /lib/modules/%{version}-%{release}smp/kernel/drivers/ide/legacy/*-cs.o*
1329 %exclude /lib/modules/%{version}-%{release}smp/kernel/drivers/mtd/maps/pcmcia*
1330 %exclude /lib/modules/%{version}-%{release}smp/kernel/drivers/net/pcmcia
1331 %exclude /lib/modules/%{version}-%{release}smp/kernel/drivers/scsi/pcmcia
1332 %exclude /lib/modules/%{version}-%{release}smp/kernel/drivers/char/pcmcia
1333 %exclude /lib/modules/%{version}-%{release}smp/kernel/drivers/net/wireless/*_cs.o*
1334 %exclude /lib/modules/%{version}-%{release}smp/kernel/drivers/parport/*_cs.o*
1335 %exclude /lib/modules/%{version}-%{release}smp/kernel/drivers/bluetooth/*_cs.o*
1336 %endif
1337 %ifnarch ppc sparc sparc64
1338 %exclude /lib/modules/%{version}-%{release}smp/kernel/drivers/isdn/hisax/*_cs.o*
1339 %ifnarch alpha
1340 %exclude /lib/modules/%{version}-%{release}smp/kernel/drivers/isdn/avmb1/avm_cs.o*
1341 %exclude /lib/modules/%{version}-%{release}smp/kernel/drivers/telephony/*_pcmcia.o*
1342 %endif
1343 %endif
1344 %ifnarch sparc
1345 %exclude /lib/modules/%{version}-%{release}smp/kernel/drivers/char/drm
1346 %endif
1347 /lib/modules/%{version}-%{release}smp/build
1348 %ghost /lib/modules/%{version}-%{release}smp/modules.*
1349
1350 %ifnarch sparc sparc64
1351 %files -n kernel-smp-pcmcia
1352 %defattr(644,root,root,755)
1353 /lib/modules/%{version}-%{release}smp/kernel/drivers/pcmcia
1354 /lib/modules/%{version}-%{release}smp/kernel/drivers/ide/legacy/*-cs.o*
1355 /lib/modules/%{version}-%{release}smp/kernel/drivers/mtd/maps/pcmcia*
1356 /lib/modules/%{version}-%{release}smp/kernel/drivers/net/pcmcia
1357 /lib/modules/%{version}-%{release}smp/kernel/drivers/scsi/pcmcia
1358 /lib/modules/%{version}-%{release}smp/kernel/drivers/char/pcmcia
1359 /lib/modules/%{version}-%{release}smp/kernel/drivers/net/wireless/*_cs.o*
1360 /lib/modules/%{version}-%{release}smp/kernel/drivers/parport/*_cs.o*
1361 /lib/modules/%{version}-%{release}smp/kernel/drivers/bluetooth/dtl1_cs.o*
1362 %ifnarch ppc
1363 /lib/modules/%{version}-%{release}smp/kernel/drivers/isdn/hisax/*_cs.o*
1364 %ifnarch alpha
1365 /lib/modules/%{version}-%{release}smp/kernel/drivers/isdn/avmb1/avm_cs.o*
1366 /lib/modules/%{version}-%{release}smp/kernel/drivers/telephony/*_pcmcia.o*
1367 %endif
1368 %endif
1369 %endif
1370
1371 %ifnarch sparc
1372 %files -n kernel-smp-drm
1373 %defattr(644,root,root,755)
1374 /lib/modules/%{version}-%{release}smp/kernel/drivers/char/drm
1375 %endif                  # %%{with smp}
1376 %endif
1377
1378 %if %{with boot}
1379 %ifnarch i586 i686 athlon               # narch
1380 %files BOOT
1381 %defattr(644,root,root,755)
1382 %ifarch alpha sparc sparc64 ppc         # arch
1383 %{_libdir}/bootdisk/boot/vmlinux-%{version}-%{release}BOOT
1384 %endif                          #arch
1385 %{_libdir}/bootdisk/boot/vmlinuz-%{version}-%{release}BOOT
1386 %{_libdir}/bootdisk/boot/System.map-%{version}-%{release}BOOT
1387 %dir %{_libdir}/bootdisk/lib/modules/%{version}-%{release}BOOT
1388 %{_libdir}/bootdisk/lib/modules/%{version}-%{release}BOOT/kernel
1389 %{_libdir}/bootdisk/lib/modules/%{version}-%{release}BOOT/build
1390 %ghost %{_libdir}/bootdisk/lib/modules/%{version}-%{release}BOOT/modules.*
1391 %endif                          # narch
1392 %endif                          # %%{with boot}
1393
1394 %files headers
1395 %defattr(644,root,root,755)
1396 %dir %{_prefix}/src/linux-%{version}
1397 %{_prefix}/src/linux-%{version}/include
1398 %{!?with_kheaders:%{_includedir}/asm}
1399 %{!?with_kheaders:%{_includedir}/linux}
1400
1401 %if %{with doc}
1402 %files doc
1403 %defattr(644,root,root,755)
1404 %{_prefix}/src/linux-%{version}/Documentation
1405 %endif
1406
1407 %if %{with source}
1408 %files source
1409 %defattr(644,root,root,755)
1410 %{_prefix}/src/linux-%{version}/arch
1411 %{_prefix}/src/linux-%{version}/crypto
1412 %{_prefix}/src/linux-%{version}/drivers
1413 %{_prefix}/src/linux-%{version}/fs
1414 %{_prefix}/src/linux-%{version}/init
1415 %{?with_grsec:%{_prefix}/src/linux-%{version}/grsecurity}
1416 %{_prefix}/src/linux-%{version}/ipc
1417 #%{_prefix}/src/linux-%{version}/kdb
1418 %{_prefix}/src/linux-%{version}/kernel
1419 %{_prefix}/src/linux-%{version}/lib
1420 %{_prefix}/src/linux-%{version}/mm
1421 %{_prefix}/src/linux-%{version}/net
1422 %{_prefix}/src/linux-%{version}/scripts
1423 %{_prefix}/src/linux-%{version}/.config
1424 %{_prefix}/src/linux-%{version}/.depend
1425 %{_prefix}/src/linux-%{version}/.hdepend
1426 %{_prefix}/src/linux-%{version}/COPYING
1427 %{_prefix}/src/linux-%{version}/CREDITS
1428 %{_prefix}/src/linux-%{version}/MAINTAINERS
1429 %{_prefix}/src/linux-%{version}/Makefile
1430 %{_prefix}/src/linux-%{version}/README
1431 %{_prefix}/src/linux-%{version}/REPORTING-BUGS
1432 %{_prefix}/src/linux-%{version}/Rules.make
1433 %{_prefix}/src/linux-%{version}/config*
1434 %endif
This page took 0.174297 seconds and 4 git commands to generate.