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