]> git.pld-linux.org Git - packages/kernel.git/blob - kernel.spec
- obsolete
[packages/kernel.git] / kernel.spec
1 #
2 # FOR INFORMATION ABOUT OTHER KERNELS:
3 #   cvs up -r KERNEL_BRANCHES_INFORMATION kernel.spec && less kernel.spec
4 #
5 # NOTE:
6 # - no grsecurity (not planned, use selinux)
7 # - no devfs (devfs is obsolete, use udev from HEAD)
8 #
9 # TODO:
10 # - everything
11 # - activate reiser4 in configs for platforms other than i386 w/o SMP
12 #
13 # Conditional build:
14 %bcond_without  BOOT            # don't build BOOT kernel
15 %bcond_without  smp             # don't build SMP kernel
16 %bcond_without  up              # don't build UP kernel
17 %bcond_without  source          # don't build kernel-source package
18 %bcond_with     verbose         # verbose build (V=1)
19 %bcond_with     preemptive      # build preemptive kernel
20
21 %{?debug:%define with_verbose 1}
22
23 %ifarch sparc
24 # sparc32 is missing important updates from 2.5 cycle - won't build
25 %undefine       with_smp
26 %endif
27 %ifarch ia64
28 # broken
29 %undefine       with_up
30 %endif
31
32 %ifarch i586 i686 pentium3 pentium4 athlon
33 %undefine       with_BOOT
34 %endif
35 # temporary as BOOT is not finished yet
36 %undefine       with_BOOT
37
38 ## Program required by kernel to work.
39 %define         _binutils_ver           2.12
40 %define         _util_linux_ver         2.10o
41 %define         _module_init_tool_ver   0.9.10
42 %define         _e2fsprogs_ver          1.29
43 %define         _jfsutils_ver           1.1.3
44 %define         _reiserfsprogs_ver      3.6.3
45 %define         _xfsprogs_ver           2.6.0
46 %define         _pcmcia_cs_ver          3.1.21
47 %define         _quota_tools_ver        3.09
48 %define         _PPP_ver                2.4.0
49 %define         _isdn4k_utils_ver       3.1pre1
50 %define         _nfs_utils_ver          1.0.5
51 %define         _procps_ver             3.2.0
52 %define         _oprofile_ver           0.5.3
53
54 %define         _post_ver       %{nil}
55 %define         _rel            0.1
56 %define         _cset           0
57 %define         _apply_cset     0
58
59 %define         _netfilter_snap         20040629
60
61 %define         _enable_debug_packages                  0
62 %define         no_install_post_strip                   1
63 %define         no_install_post_chrpath                 1
64
65 %define         pcmcia_version          3.1.22
66 %define         drm_xfree_version       4.3.0
67
68 Summary:        The Linux kernel (the core of the Linux operating system)
69 Summary(de):    Der Linux-Kernel (Kern des Linux-Betriebssystems)
70 Summary(fr):    Le Kernel-Linux (La partie centrale du systeme)
71 Summary(pl):    J±dro Linuksa
72 Name:           kernel
73 Version:        2.6.10%{_post_ver}
74 Release:        %{_rel}
75 Epoch:          3
76 License:        GPL
77 Group:          Base/Kernel
78 %define         _rc     %{nil}
79 Source0:        http://ftp.kernel.org/pub/linux/kernel/v2.6/linux-%{version}%{_rc}.tar.bz2
80 # Source0-md5:  cffcd2919d9c8ef793ce1ac07a440eda
81 Source1:        %{name}-autoconf.h
82 %if "%{_apply_cset}" != "0"
83 Source4:        http://ftp.kernel.org/pub/linux/kernel/v2.6/testing/cset/cset-%{_cset}.txt.bz2
84 # Source4-md5:  6d572bee414b6d065f90cc9824eecff3
85 %endif
86
87 Source20:       %{name}-i386.config
88 Source21:       %{name}-i386-smp.config
89 Source22:       %{name}-x86_64.config
90 Source23:       %{name}-x86_64-smp.config
91 Source24:       %{name}-sparc.config
92 Source25:       %{name}-sparc-smp.config
93 Source26:       %{name}-sparc64.config
94 Source27:       %{name}-sparc64-smp.config
95 Source28:       %{name}-alpha.config
96 Source29:       %{name}-alpha-smp.config
97 Source30:       %{name}-ppc.config
98 Source31:       %{name}-ppc-smp.config
99 Source32:       %{name}-ia64.config
100 Source33:       %{name}-ia64-smp.config
101
102 Source40:       %{name}.FAQ-pl
103
104 Source80:       %{name}-netfilter.config
105 Source90:       %{name}-grsec.config
106 Source91:       %{name}-grsec+pax.config
107
108
109 # http://kem.p.lodz.pl/~peter/qnet/
110 Patch15:        patch-2.6.8.1-qnet2.bz2
111
112 Patch18:        linux-kbuild-extmod.patch
113
114 Patch20:        2.6.1-rc2-VLAN-NS83820-lkml.patch
115 Patch21:        2.6.5-3C920b-Tornado.patch
116 Patch22:        2.6.5-i386-cmpxchg.patch
117
118 Patch30:        kernel-vmalloc-reserve.patch
119
120 # suspend/resume
121 # http://softwaresuspend.berlios.de/
122 Patch500:       linux-2.6-software-suspend-2.1.5.10.patch.gz
123
124 # http://sources.redhat.com/cluster/
125 Patch550:       linux-cluster-cman.patch
126 Patch551:       linux-cluster-dlm.patch
127 Patch552:       linux-cluster-gfs.patch
128 Patch553:       linux-cluster-gnbd.patch
129
130 URL:            http://www.kernel.org/
131 BuildRequires:  binutils >= 2.14.90.0.7
132 BuildRequires:  diffutils
133 %ifarch sparc sparc64
134 BuildRequires:  elftoaout
135 %endif
136 BuildRequires:  module-init-tools
137 BuildRequires:  perl-base
138 BuildRequires:  rpmbuild(macros) >= 1.153
139 Autoreqprov:    no
140 PreReq:         coreutils
141 PreReq:         module-init-tools >= 0.9.9
142 PreReq:         geninitrd >= 2.57
143 Requires(pre):  rc-scripts
144 Provides:       %{name}-up = %{epoch}:%{version}-%{release}
145 Provides:       module-info
146 Provides:       %{name}(netfilter) = %{_netfilter_snap}
147 Obsoletes:      kernel-modules
148 Conflicts:      util-linux < %{_util_linux_ver}
149 Conflicts:      module-init-tool < %{_module_init_tool_ver}
150 Conflicts:      e2fsprogs < %{_e2fsprogs_ver}
151 Conflicts:      jfsutils < %{_jfsutils_ver}
152 Conflicts:      reiserfsprogs < %{_reiserfsprogs_ver}
153 Conflicts:      xfsprogs < %{_xfsprogs_ver}
154 Conflicts:      quota-tools < %{_quota_tools_ver}
155 Conflicts:      PPP < %{_PPP_ver}
156 Conflicts:      isdn4k-utils < %{_isdn4k_utils_ver}
157 Conflicts:      nfs-utils < %{_nfs_utils_ver}
158 Conflicts:      procps < %{_procps_ver}
159 Conflicts:      oprofile < %{_oprofile_ver}
160 ExclusiveArch:  %{ix86} alpha amd64 ia64 ppc sparc sparc64
161 ExclusiveOS:    Linux
162 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
163
164 %ifarch ia64
165 %define         initrd_dir      /boot/efi
166 %else
167 %define         initrd_dir      /boot
168 %endif
169
170 %description
171 This package contains the Linux kernel that is used to boot and run
172 your system. It contains few device drivers for specific hardware.
173 Most hardware is instead supported by modules loaded after booting.
174
175 %description -l de
176 Das Kernel-Paket enthält den Linux-Kernel (vmlinuz), den Kern des
177 Linux-Betriebssystems. Der Kernel ist für grundliegende
178 Systemfunktionen verantwortlich: Speicherreservierung,
179 Prozeß-Management, Geräte Ein- und Ausgaben, usw.
180
181 %description -l fr
182 Le package kernel contient le kernel linux (vmlinuz), la partie
183 centrale d'un système d'exploitation Linux. Le noyau traite les
184 fonctions basiques d'un système d'exploitation: allocation mémoire,
185 allocation de process, entrée/sortie de peripheriques, etc.
186
187 %description -l pl
188 Pakiet zawiera j±dro Linuksa niezbêdne do prawid³owego dzia³ania
189 Twojego komputera. Zawiera w sobie sterowniki do sprzêtu znajduj±cego
190 siê w komputerze, takiego jak sterowniki dysków itp.
191
192 %package drm
193 Summary:        DRM kernel modules
194 Summary(pl):    Sterowniki DRM
195 Group:          Base/Kernel
196 PreReq:         %{name}-up = %{epoch}:%{version}-%{release}
197 Requires(postun):       %{name}-up = %{epoch}:%{version}-%{release}
198 Provides:       %{name}-drm = %{drm_xfree_version}
199 Autoreqprov:    no
200
201 %description drm
202 DRM kernel modules (%{drm_xfree_version}).
203
204 %description drm -l pl
205 Sterowniki DRM (%{drm_xfree_version}).
206
207 %package pcmcia
208 Summary:        PCMCIA modules
209 Summary(pl):    Modu³y PCMCIA
210 Group:          Base/Kernel
211 PreReq:         %{name}-up = %{epoch}:%{version}-%{release}
212 Requires(postun):       %{name}-up = %{epoch}:%{version}-%{release}
213 Provides:       %{name}-pcmcia = %{pcmcia_version}
214 Provides:       kernel(pcmcia)
215 Conflicts:      pcmcia-cs < %{_pcmcia_cs_ver}
216 Autoreqprov:    no
217
218 %description pcmcia
219 PCMCIA modules (%{pcmcia_version}).
220
221 %description pcmcia -l pl
222 Modu³y PCMCIA (%{pcmcia_version}).
223
224 %package sound-alsa
225 Summary:        ALSA kernel modules
226 Summary(pl):    Sterowniki d¼wiêku ALSA
227 Group:          Base/Kernel
228 PreReq:         %{name}-up = %{epoch}:%{version}-%{release}
229 Requires(postun):       %{name}-up = %{epoch}:%{version}-%{release}
230 Provides:       alsa-driver
231 Obsoletes:      alsa-driver
232 Obsoletes:      alsa-driver-up
233 Autoreqprov:    no
234
235 %description sound-alsa
236 ALSA (Advanced Linux Sound Architecture) sound drivers.
237
238 %description sound-alsa -l pl
239 Sterowniki d¼wiêku ALSA (Advanced Linux Sound Architecture).
240
241 %package sound-oss
242 Summary:        OSS kernel modules
243 Summary(pl):    Sterowniki d¼wiêku OSS
244 Group:          Base/Kernel
245 PreReq:         %{name}-up = %{epoch}:%{version}-%{release}
246 Requires(postun):       %{name}-up = %{epoch}:%{version}-%{release}
247 Autoreqprov:    no
248
249 %description sound-oss
250 OSS (Open Sound System) drivers.
251
252 %description sound-oss -l pl
253 Sterowniki d¼wiêku OSS (Open Sound System).
254
255 %package smp
256 Summary:        Kernel version %{version} compiled for SMP machines
257 Summary(de):    Kernel version %{version} für Multiprozessor-Maschinen
258 Summary(fr):    Kernel version %{version} compiler pour les machine Multi-Processeur
259 Summary(pl):    J±dro Linuksa w wersji %{version} dla maszyn wieloprocesorowych
260 Group:          Base/Kernel
261 PreReq:         coreutils
262 PreReq:         module-init-tools >= 0.9.9
263 PreReq:         geninitrd >= 2.26
264 Provides:       %{name} = %{epoch}:%{version}-%{release}
265 Provides:       module-info
266 Provides:       %{name}(netfilter) = %{_netfilter_snap}
267 Conflicts:      util-linux < %{_util_linux_ver}
268 Conflicts:      module-init-tool < %{_module_init_tool_ver}
269 Conflicts:      e2fsprogs < %{_e2fsprogs_ver}
270 Conflicts:      jfsutils < %{_jfsutils_ver}
271 Conflicts:      reiserfsprogs < %{_reiserfsprogs_ver}
272 Conflicts:      xfsprogs < %{_xfsprogs_ver}
273 Conflicts:      quota-tools < %{_quota_tools_ver}
274 Conflicts:      PPP < %{_PPP_ver}
275 Conflicts:      isdn4k-utils < %{_isdn4k_utils_ver}
276 Conflicts:      nfs-utils < %{_nfs_utils_ver}
277 Conflicts:      procps < %{_procps_ver}
278 Conflicts:      oprofile < %{_oprofile_ver}
279 Autoreqprov:    no
280
281 %description smp
282 This package includes a SMP version of the Linux %{version} kernel. It
283 is required only on machines with two or more CPUs, although it should
284 work fine on single-CPU boxes.
285
286 %description smp -l de
287 Dieses Paket enthält eine SMP (Multiprozessor)-Version von
288 Linux-Kernel %{version}. Es wird für Maschinen mit zwei oder mehr
289 Prozessoren gebraucht, sollte aber auch auf Computern mit nur einer
290 CPU laufen.
291
292 %description smp -l fr
293 Ce package inclu une version SMP du noyau de Linux version {version}.
294 Il et nécessaire seulement pour les machine avec deux processeurs ou
295 plus, il peut quand même fonctionner pour les système mono-processeur.
296
297 %description smp -l pl
298 Pakiet zawiera j±dro SMP Linuksa w wersji %{version}. Jest ono
299 wymagane przez komputery zawieraj±ce dwa lub wiêcej procesorów.
300 Powinno równie¿ dobrze dzia³aæ na maszynach z jednym procesorem.
301
302 %package smp-drm
303 Summary:        DRM SMP kernel modules
304 Summary(pl):    Sterowniki DRM dla maszyn wieloprocesorowych
305 Group:          Base/Kernel
306 PreReq:         %{name}-smp = %{epoch}:%{version}-%{release}
307 Requires(postun):       %{name}-smp = %{epoch}:%{version}-%{release}
308 Provides:       %{name}-drm = %{drm_xfree_version}
309 Autoreqprov:    no
310
311 %description smp-drm
312 DRM SMP kernel modules (%{drm_xfree_version}).
313
314 %description smp-drm -l pl
315 Sterowniki DRM dla maszyn wieloprocesorowych (%{drm_xfree_version}).
316
317 %package smp-pcmcia
318 Summary:        PCMCIA modules for SMP kernel
319 Summary(pl):    Modu³y PCMCIA dla maszyn SMP
320 Group:          Base/Kernel
321 PreReq:         %{name}-smp = %{epoch}:%{version}-%{release}
322 Requires(postun):       %{name}-smp = %{epoch}:%{version}-%{release}
323 Provides:       %{name}-pcmcia = %{pcmcia_version}
324 Provides:       kernel(pcmcia)
325 Conflicts:      pcmcia-cs < %{_pcmcia_cs_ver}
326 Autoreqprov:    no
327
328 %description smp-pcmcia
329 PCMCIA modules for SMP kernel (%{pcmcia_version}).
330
331 %description smp-pcmcia -l pl
332 Modu³y PCMCIA dla maszyn SMP (%{pcmcia_version}).
333
334 %package smp-sound-alsa
335 Summary:        ALSA SMP kernel modules
336 Summary(pl):    Sterowniki d¼wiêku ALSA dla maszyn wieloprocesorowych
337 Group:          Base/Kernel
338 PreReq:         %{name}-smp = %{epoch}:%{version}-%{release}
339 Requires(postun):       %{name}-smp = %{epoch}:%{version}-%{release}
340 Provides:       alsa-driver
341 Obsoletes:      alsa-driver
342 Obsoletes:      alsa-driver-smp
343 Autoreqprov:    no
344
345 %description smp-sound-alsa
346 ALSA (Advanced Linux Sound Architecture) SMP sound drivers.
347
348 %description smp-sound-alsa -l pl
349 Sterowniki d¼wiêku ALSA (Advanced Linux Sound Architecture) dla maszyn
350 wieloprocesorowych.
351
352 %package smp-sound-oss
353 Summary:        OSS SMP kernel modules
354 Summary(pl):    Sterowniki d¼wiêku OSS dla maszyn wieloprocesorowych
355 Group:          Base/Kernel
356 PreReq:         %{name}-smp = %{epoch}:%{version}-%{release}
357 Requires(postun):       %{name}-smp = %{epoch}:%{version}-%{release}
358 Autoreqprov:    no
359
360 %description smp-sound-oss
361 OSS (Open Sound System) SMP sound drivers.
362
363 %description smp-sound-oss -l pl
364 Sterowniki OSS (Open Sound System) dla maszyn wieloprocesorowych.
365
366 %package BOOT
367 Summary:        Kernel version %{version} used on the installation boot disks
368 Summary(de):    Kernel version %{version} für Installationsdisketten
369 Summary(fr):    Kernel version %{version} utiliser pour les disquettes d'installation
370 Summary(pl):    J±dro Linuksa w wersji %{version} dla dyskietek startowych
371 Group:          Base/Kernel
372 PreReq:         module-init-tools
373 Autoreqprov:    no
374
375 %description BOOT
376 This package includes a trimmed down version of the Linux %{version}
377 kernel. This kernel is used on the installation boot disks only and
378 should not be used for an installed system, as many features in this
379 kernel are turned off because of the size constraints.
380
381 %description BOOT -l de
382 Dieses Paket enthält eine verkleinerte Version vom Linux-Kernel
383 version %{version}. Dieser Kernel wird auf den
384 Installations-Bootdisketten benutzt und sollte nicht auf einem
385 installierten System verwendet werden, da viele Funktionen wegen der
386 Platzprobleme abgeschaltet sind.
387
388 %description BOOT -l pl
389 Pakiet zawiera j±dro Linuksa dedykowane dyskietkom startowym i powinno
390 byæ u¿ywane jedynie podczas instalacji systemu. Wiele u¿ytecznych
391 opcji zosta³o wy³±czonych, aby jak najbardziej zmniejszyæ jego
392 rozmiar.
393
394 %package headers
395 Summary:        Header files for the Linux kernel
396 Summary(pl):    Pliki nag³ówkowe j±dra Linuksa
397 Group:          Base/Kernel
398 Provides:       %{name}-headers(agpgart) = %{version}
399 Provides:       %{name}-headers(reiserfs) = %{version}
400 Provides:       %{name}-headers(bridging) = %{version}
401 Provides:       kernel-i2c-devel
402 Provides:       %{name}-headers(netfilter) = %{_netfilter_snap}
403 Provides:       %{name}-headers(alsa-drivers)
404 Obsoletes:      kernel-i2c-devel
405 Autoreqprov:    no
406
407 %description headers
408 These are the C header files for the Linux kernel, which define
409 structures and constants that are needed when rebuilding the kernel
410 or building kernel modules.
411
412 %description headers -l pl
413 Pakiet zawiera pliki nag³ówkowe j±dra, niezbêdne do rekompilacji j±dra
414 oraz budowania modu³ów j±dra.
415
416 %package module-build
417 Summary:        Development files for building kernel modules
418 Summary(pl):    Pliki s³u¿±ce do budowania modu³ów j±dra
419 Group:          Base/Kernel
420 Requires:       %{name}-headers = %{epoch}:%{version}-%{release}
421 Autoreqprov:    no
422
423 %description module-build
424 Development files from kernel source tree needed to build Linux kernel
425 modules from external packages.
426
427 %description module-build -l pl
428 Pliki ze drzewa ¼róde³ j±dra potrzebne do budowania modu³ów j±dra
429 Linuksa z zewnêtrznych pakietów.
430
431 %package source
432 Summary:        Kernel source tree
433 Summary(pl):    Kod ¼ród³owy j±dra Linuksa
434 Group:          Base/Kernel
435 Requires:       %{name}-module-build = %{epoch}:%{version}-%{release}
436 Autoreqprov:    no
437
438 %description source
439 This is the source code for the Linux kernel. It is required to build
440 most C programs as they depend on constants defined in here. You can
441 also build a custom kernel that is better tuned to your particular
442 hardware.
443
444 %description source -l de
445 Das Kernel-Source-Paket enthält den source code (C/Assembler-Code) des
446 Linux-Kernels. Die Source-Dateien werden gebraucht, um viele
447 C-Programme zu compilieren, da sie auf Konstanten zurückgreifen, die
448 im Kernel-Source definiert sind. Die Source-Dateien können auch
449 benutzt werden, um einen Kernel zu compilieren, der besser auf Ihre
450 Hardware ausgerichtet ist.
451
452 %description source -l fr
453 Le package pour le kernel-source contient le code source pour le noyau
454 linux. Ces sources sont nécessaires pour compiler la plupart des
455 programmes C, car il dépend de constantes définies dans le code
456 source. Les sources peuvent être aussi utilisée pour compiler un noyau
457 personnalisé pour avoir de meilleures performances sur des matériels
458 particuliers.
459
460 %description source -l pl
461 Pakiet zawiera kod ¼ród³owy j±dra systemu.
462
463 %package doc
464 Summary:        Kernel documentation
465 Summary(pl):    Dokumentacja do j±dra Linuksa
466 Group:          Base/Kernel
467 Provides:       %{name}-doc = %{version}
468 Autoreqprov:    no
469
470 %description doc
471 This is the documentation for the Linux kernel, as found in
472 /usr/src/linux/Documentation directory.
473
474 %description doc -l pl
475 Pakiet zawiera dokumentacjê do j±dra Linuksa pochodz±c± z katalogu
476 /usr/src/linux/Documentation.
477
478 %prep
479 %setup -q -n linux-%{version}%{_rc}
480
481 %if "%{_apply_cset}" != "0"
482 bzcat %{SOURCE4} | patch -p1 -s
483 [ $? -ne 0 ] && exit 1
484 %endif
485
486 %patch15 -p1
487 %patch18 -p1
488 %patch20 -p1
489 %patch21 -p1
490 %patch22 -p1
491
492 %patch30 -p1
493
494 %patch500 -p1
495
496 %patch550 -p1
497 %patch551 -p1
498 %patch552 -p1
499 %patch553 -p1
500
501 # Fix EXTRAVERSION in main Makefile
502 sed -i -e 's#EXTRAVERSION =.*#EXTRAVERSION =#g' Makefile
503 sed -i -e 's#CC.*$(CROSS_COMPILE)gcc#CC         = $(CROSS_COMPILE)$(OURCC)#g' Makefile
504 sed -i -e 's#\-pipe##' arch/*/Makefile
505
506 %build
507 TuneUpConfigForIX86 () {
508 %ifarch %{ix86}
509     %ifnarch i386
510         sed -i 's:CONFIG_M386=y:# CONFIG_M386 is not set:' $1
511     %endif
512     %ifarch i486
513         sed -i 's:# CONFIG_M486 is not set:CONFIG_M486=y:' $1
514     %endif
515     %ifarch i586
516         sed -i 's:# CONFIG_M586 is not set:CONFIG_M586=y:' $1
517     %endif
518     %ifarch i686
519         sed -i 's:# CONFIG_M686 is not set:CONFIG_M686=y:' $1
520     %endif
521     %ifarch pentium3
522         sed -i 's:# CONFIG_MPENTIUMIII is not set:CONFIG_MPENTIUMIII=y:' $1
523     %endif
524     %ifarch pentium4
525         sed -i 's:# CONFIG_MPENTIUM4 is not set:CONFIG_MPENTIUM4=y:' $1
526     %endif
527     %ifarch athlon
528         sed -i 's:# CONFIG_MK7 is not set:CONFIG_MK7=y:' $1
529     %endif
530     %ifarch pentium3 pentium4 athlon
531 #       kernel-i386-smp.config contains 64G support by default.
532         %if %{with up}
533             sed -i "s:CONFIG_HIGHMEM4G=y:# CONFIG_HIGHMEM4G is not set:" $1
534             sed -i "s:# CONFIG_HIGHMEM64G is not set:CONFIG_HIGHMEM64G=y\nCONFIG_X86_PAE=y:" $1
535         %endif
536     %endif
537     %ifarch i686 pentium3 pentium4
538         sed -i 's:CONFIG_MATH_EMULATION=y:# CONFIG_MATH_EMULATION is not set:' $1
539     %endif
540 %endif
541 }
542
543 %if "%{_target_base_arch}" != "%{_arch}"
544 Opts="ARCH=%{_target_base_arch} CROSS_COMPILE=\"%{_target_cpu}-pld-linux-\" OURCC=\"gcc\""
545 %else
546 %ifarch %{ix86} alpha sparc ppc
547 Opts="OURCC=\"%{__cc}\""
548 %endif
549 %ifarch sparc64
550 Opts="OURCC=\"sparc64-pld-linux-gcc\""
551 %endif
552 %endif
553
554 BuildConfig (){
555         %{?_debug:set -x}
556         # is this a special kernel we want to build?
557         BOOT=
558         smp=
559         [ "$1" = "BOOT" -o "$2" = "BOOT" ] && BOOT=yes
560         [ "$1" = "smp" -o "$2" = "smp" ] && smp=yes
561         if [ "$smp" = "yes" ]; then
562                 Config="%{_target_base_arch}-smp"
563         else
564                 Config="%{_target_base_arch}"
565         fi
566         if [ "$BOOT" = "yes" ]; then
567                 KernelVer=%{version}-%{release}BOOT
568         else
569                 KernelVer=%{version}-%{release}$1
570         fi
571         echo "Building config file for KERNEL $1..."
572         cat $RPM_SOURCE_DIR/kernel-$Config.config > arch/%{_target_base_arch}/defconfig
573         TuneUpConfigForIX86 arch/%{_target_base_arch}/defconfig
574
575 %if %{with preemptive}
576         sed -i 's:# CONFIG_PREEMPT is not set:CONFIG_PREEMPT=y:' arch/%{_target_base_arch}/defconfig
577 %endif
578
579 #       netfilter       
580         cat %{SOURCE80} >> arch/%{_target_base_arch}/defconfig
581 #       grsecurity
582 %if !%{with pax}
583         cat %{SOURCE90} >> arch/%{_target_base_arch}/defconfig
584 %else
585         cat %{SOURCE91} >> arch/%{_target_base_arch}/defconfig
586 %endif
587
588         ln -sf arch/%{_target_base_arch}/defconfig .config
589         install -d $KERNEL_INSTALL_DIR/usr/src/linux-%{version}/include/linux
590         %{__make} $Opts include/linux/autoconf.h
591         if [ "$smp" = "yes" ]; then
592                 install include/linux/autoconf.h \
593                         $KERNEL_INSTALL_DIR/usr/src/linux-%{version}/include/linux/autoconf-smp.h
594                 install .config \
595                         $KERNEL_INSTALL_DIR/usr/src/linux-%{version}/config-smp
596         else
597                 install include/linux/autoconf.h \
598                         $KERNEL_INSTALL_DIR/usr/src/linux-%{version}/include/linux/autoconf-up.h
599                 install .config \
600                         $KERNEL_INSTALL_DIR/usr/src/linux-%{version}/config-up
601         fi
602 }
603
604 ConfigBOOT()
605 {
606         Config="%{_target_base_arch}"
607         cat $RPM_SOURCE_DIR/kernel-$Config.config > arch/%{_target_base_arch}/defconfig
608 %ifarch i386
609         echo "CONFIG_M386=y" >> arch/%{_target_base_arch}/defconfig
610 %endif
611 %ifarch i486
612         echo "CONFIG_M486=y" >> arch/%{_target_base_arch}/defconfig
613 %endif
614 %ifarch i386 i486 i586
615         sed -i 's/# CONFIG_MATH_EMULATION is not set/CONFIG_MATH_EMULATION=y/' \
616                 arch/%{_target_base_arch}/defconfig
617 %endif
618         cat <<EOF >>arch/%{_target_base_arch}/defconfig
619         # CONFIG_APM is not set
620         # CONFIG_ACPI is not set
621         # CONFIG_ACPI_BOOT is not set
622         # CONFIG_MTD is not set
623         # CONFIG_NETFILTER is not set
624         # CONFIG_WAN is not set
625         # CONFIG_ATM is not set
626         # CONFIG_HOTPLUG_PCI is not set
627         # CONFIG_NET_SCHED is not set
628         # CONFIG_X86_MCE is not set
629         # CONFIG_MTRR is not set
630         # CONFIG_PM is not set
631         # CONFIG_CPU_FREQ is not set
632         # CONFIG_DRM is not set
633         # CONFIG_FTAPE is not set
634         # CONFIG_WATCHDOG is not set
635         # CONFIG_DVB is not set
636         # CONFIG_DVB_CORE is not set
637         # CONFIG_VIDEO_DEV is not set
638         # CONFIG_SECURITY is not set
639         # CONFIG_SOUND is not set
640         # CONFIG_USB_AUDIO is not set
641         # CONFIG_INPUT_JOYSTICK is not set
642         # CONFIG_OMNIBOOK is not set
643         # CONFIG_NET_RADIO is not set
644         # CONFIG_HOTPLUG is not set
645         # CONFIG_QUOTA is not set
646         # CONFIG_REGPARM is not set
647         # CONFIG_SCSI_LOGGING is not set
648         CONFIG_PACKET=m
649         CONFIG_UNIX=m
650         # CONFIG_DEV_APPLETALK is not set
651         # CONFIG_ECONET_AUNUDP is not set
652         # CONFIG_HIPPI is not set
653         # CONFIG_TR is not set
654         # CONFIG_INPUT_MISC is not set
655         # CONFIG_INPUT_TOUCHSCREEN is not set
656         # CONFIG_PROFILING is not set
657         # CONFIG_DEBUG_KERNEL is not set
658         # CONFIG_DEBUG_SPINLOCK_SLEEP is not set
659         # CONFIG_FRAME_POINTER is not set
660         # CONFIG_LBD is not set
661         # CONFIG_SLIP is not set
662         # CONFIG_PPP is not set
663         # CONFIG_PLIP is not set
664         # CONFIG_FDDI is not set
665         # CONFIG_HAMRADIO is not set
666         # CONFIG_NETPOLL_RX is not set
667         # CONFIG_NETPOLL_TRAP is not set
668         # CONFIG_FB is not set
669 EOF
670         ln -sf arch/%{_target_base_arch}/defconfig .config
671
672         install -d $KERNEL_INSTALL_DIR/usr/src/linux-%{version}/include/linux
673         %{__make} $Opts include/linux/autoconf.h
674         if [ "$smp" = "yes" ]; then
675                 install include/linux/autoconf.h $KERNEL_INSTALL_DIR/usr/src/linux-%{version}/include/linux/autoconf-smp.h
676         else
677                 install include/linux/autoconf.h $KERNEL_INSTALL_DIR/usr/src/linux-%{version}/include/linux/autoconf-up.h
678         fi
679 }
680
681 BuildKernel() {
682         %{?_debug:set -x}
683         echo "Building kernel $1 ..."   
684         %{__make} $Opts mrproper \
685                 RCS_FIND_IGNORE='-name build-done -prune -o'
686         ln -sf arch/%{_target_base_arch}/defconfig .config
687
688 %ifarch sparc
689         sparc32 %{__make} $Opts clean \
690                 RCS_FIND_IGNORE='-name build-done -prune -o'
691 %else
692         %{__make} $Opts clean \
693                 RCS_FIND_IGNORE='-name build-done -prune -o'
694 %endif
695         %{__make} $Opts include/linux/version.h \
696                 %{?with_verbose:V=1}
697
698 # make does vmlinux, modules and bzImage at once
699 %ifarch sparc sparc64
700 %ifarch sparc64
701         %{__make} $Opts image \
702                 %{?with_verbose:V=1}
703
704         %{__make} $Opts modules \
705                 %{?with_verbose:V=1}
706 %else
707         sparc32 %{__make} $Opts \
708                 %{?with_verbose:V=1}
709 %endif
710 %else
711         %{__make} $Opts \
712                 %{?with_verbose:V=1}
713 %endif
714 }
715
716 PreInstallKernel (){
717         BOOT=
718         smp=
719         [ "$1" = "BOOT" -o "$2" = "BOOT" ] && BOOT=yes
720         [ "$1" = "smp" -o "$2" = "smp" ] && smp=yes
721         if [ "$smp" = "yes" ]; then
722                 Config="%{_target_base_arch}-smp"
723         else
724                 Config="%{_target_base_arch}"
725         fi
726         if [ "$BOOT" = "yes" ]; then
727                 KernelVer=%{version}-%{release}BOOT
728         else
729                 KernelVer=%{version}-%{release}$1
730         fi
731
732         mkdir -p $KERNEL_INSTALL_DIR/boot
733         install System.map $KERNEL_INSTALL_DIR/boot/System.map-$KernelVer
734 %ifarch %{ix86} amd64
735         install arch/%{_target_base_arch}/boot/bzImage $KERNEL_INSTALL_DIR/boot/vmlinuz-$KernelVer
736 %endif
737 %ifarch alpha sparc sparc64
738         gzip -cfv vmlinux > vmlinuz
739         install vmlinux $KERNEL_INSTALL_DIR/boot/vmlinux-$KernelVer
740         install vmlinuz $KERNEL_INSTALL_DIR/boot/vmlinuz-$KernelVer
741 %ifarch sparc
742         elftoaout arch/sparc/boot/image -o vmlinux.aout
743         install vmlinux.aout $KERNEL_INSTALL_DIR/boot/vmlinux.aout-$KernelVer
744 %endif
745 %ifarch sparc64
746         elftoaout arch/sparc64/boot/image -o vmlinux.aout
747         install vmlinux.aout $KERNEL_INSTALL_DIR/boot/vmlinux.aout-$KernelVer
748 %endif
749 %endif
750 %ifarch ppc
751         install vmlinux $KERNEL_INSTALL_DIR/boot/vmlinux-$KernelVer
752         install vmlinux $KERNEL_INSTALL_DIR/boot/vmlinuz-$KernelVer
753 %endif
754 %ifarch ia64
755         gzip -cfv vmlinux > vmlinuz
756         install -d $KERNEL_INSTALL_DIR/boot/efi
757 #?      install vmlinux $KERNEL_INSTALL_DIR/boot/efi/vmlinux-$KernelVer
758         install vmlinuz $KERNEL_INSTALL_DIR/boot/efi/vmlinuz-$KernelVer
759         ln -sf efi/vmlinuz-$KernelVer $KERNEL_INSTALL_DIR/boot/vmlinuz-$KernelVer
760 %endif
761         %{__make} $Opts modules_install \
762                 %{?with_verbose:V=1} \
763                 INSTALL_MOD_PATH=$KERNEL_INSTALL_DIR \
764                 KERNELRELEASE=$KernelVer
765
766         echo "CHECKING DEPENDENCIES FOR KERNEL MODULES"
767         /sbin/depmod --basedir $KERNEL_INSTALL_DIR -ae -F $KERNEL_INSTALL_DIR/boot/System.map-$KernelVer -r $KernelVer || echo
768
769         echo "KERNEL RELEASE $KernelVer DONE"
770
771 }
772
773 KERNEL_BUILD_DIR=`pwd`
774
775 %if %{with up}
776 # UP KERNEL
777 KERNEL_INSTALL_DIR="$KERNEL_BUILD_DIR/build-done/kernel-UP"
778 rm -rf $KERNEL_INSTALL_DIR
779 BuildConfig
780 BuildKernel
781 PreInstallKernel
782 %endif
783
784 %if %{with smp}
785 # SMP KERNEL
786 KERNEL_INSTALL_DIR="$KERNEL_BUILD_DIR/build-done/kernel-SMP"
787 rm -rf $KERNEL_INSTALL_DIR
788 BuildConfig smp
789 BuildKernel smp
790 PreInstallKernel smp
791 %endif
792
793 %if %{with BOOT}
794 KERNEL_INSTALL_DIR="$KERNEL_BUILD_DIR/build-done/BOOT"
795 rm -rf $KERNEL_INSTALL_DIR
796 ConfigBOOT
797 BuildKernel BOOT
798 PreInstallKernel BOOT
799 %endif
800
801 %install
802 rm -rf $RPM_BUILD_ROOT
803 umask 022
804 %if "%{_target_base_arch}" != "%{_arch}"
805 Opts="ARCH=%{_target_base_arch} CROSS_COMPILE=\"%{_target_cpu}-pld-linux-\" OURCC=\"gcc\""
806 %else
807 %ifarch %{ix86} alpha sparc ppc
808 Opts="OURCC=\"%{__cc}\""
809 %endif
810 %ifarch sparc64
811 Opts="OURCC=\"sparc64-pld-linux-gcc\""
812 %endif
813 %endif
814
815 sed -i -e 's#CC.*$(CROSS_COMPILE)$(OURCC)#CC    = $(CROSS_COMPILE)gcc#g' Makefile
816
817 install -d $RPM_BUILD_ROOT%{_prefix}/src/linux-%{version}
818 install -d $RPM_BUILD_ROOT/lib/modules/%{version}-%{release}{,smp}/misc
819
820 install %{SOURCE40} FAQ-pl
821
822 KERNEL_BUILD_DIR=`pwd`
823
824 %if %{with up} || %{with smp}
825 cp -a $KERNEL_BUILD_DIR/build-done/kernel-*/* $RPM_BUILD_ROOT
826 %endif
827
828 for i in "" smp ; do
829         if [ -e  $RPM_BUILD_ROOT/lib/modules/%{version}-%{release}$i ] ; then
830                 rm -f $RPM_BUILD_ROOT/lib/modules/%{version}-%{release}$i/build
831                 ln -sf %{_prefix}/src/linux-%{version} \
832                         $RPM_BUILD_ROOT/lib/modules/%{version}-%{release}$i/build
833         fi
834 done
835
836 ln -sf linux-%{version} $RPM_BUILD_ROOT%{_prefix}/src/linux
837
838 find . -maxdepth 1 ! -name "build-done" ! -name "." -exec cp -a "{}" "$RPM_BUILD_ROOT/usr/src/linux-%{version}/" ";"
839
840 cd $RPM_BUILD_ROOT%{_prefix}/src/linux-%{version}
841
842 %{__make} $Opts mrproper \
843         RCS_FIND_IGNORE='-name build-done -prune -o'
844 find -name "*~" -exec rm -f "{}" ";"
845 find -name "*.orig" -exec rm -f "{}" ";"
846
847 if [ -e $KERNEL_BUILD_DIR/build-done/kernel-UP/usr/src/linux-%{version}/include/linux/autoconf-up.h ]; then
848 install $KERNEL_BUILD_DIR/build-done/kernel-UP/usr/src/linux-%{version}/include/linux/autoconf-up.h \
849         $RPM_BUILD_ROOT/usr/src/linux-%{version}/include/linux
850 install $KERNEL_BUILD_DIR/build-done/kernel-UP/usr/src/linux-%{version}/config-up \
851         $RPM_BUILD_ROOT/usr/src/linux-%{version}/include/linux
852 fi
853
854 if [ -e $KERNEL_BUILD_DIR/build-done/kernel-SMP/usr/src/linux-%{version}/include/linux/autoconf-smp.h ]; then
855 install $KERNEL_BUILD_DIR/build-done/kernel-SMP/usr/src/linux-%{version}/include/linux/autoconf-smp.h \
856         $RPM_BUILD_ROOT/usr/src/linux-%{version}/include/linux
857 install $KERNEL_BUILD_DIR/build-done/kernel-SMP/usr/src/linux-%{version}/config-smp \
858         $RPM_BUILD_ROOT/usr/src/linux-%{version}/include/linux
859 fi
860
861 %if %{with up} || %{with smp}
862 # UP or SMP
863 install $KERNEL_BUILD_DIR/build-done/kernel-*/usr/src/linux-%{version}/include/linux/* \
864 $RPM_BUILD_ROOT/usr/src/linux-%{version}/include/linux
865 %endif
866
867 %{__make} $Opts mrproper
868 %{__make} $Opts include/linux/version.h
869 install %{SOURCE1} $RPM_BUILD_ROOT%{_prefix}/src/linux-%{version}/include/linux/autoconf.h
870
871 %clean
872 rm -rf $RPM_BUILD_ROOT
873
874 %preun
875 rm -f /lib/modules/%{version}-%{release}/modules.*
876
877 %pre
878 . /etc/rc.d/init.d/functions
879 [ -f /etc/sysconfig/system ] && . /etc/sysconfig/system
880 if is_yes "${MOUNT_BOOT_ON_INSTALL:-no}"; then
881         mount /boot >/dev/null 2>&1 || :
882         mount /boot -o remount,rw >/dev/null 2>&1 || :
883 fi
884
885 %post
886 %ifarch ia64
887 mv -f /boot/efi/vmlinuz /boot/efi/vmlinuz.old 2> /dev/null > /dev/null
888 %endif
889 mv -f /boot/vmlinuz /boot/vmlinuz.old 2> /dev/null > /dev/null
890 mv -f /boot/System.map /boot/System.map.old 2> /dev/null > /dev/null
891 %ifarch ia64
892 ln -sf vmlinuz-%{version}-%{release} /boot/efi/vmlinuz
893 %endif
894 ln -sf vmlinuz-%{version}-%{release} /boot/vmlinuz
895 ln -sf System.map-%{version}-%{release} /boot/System.map
896
897 if [ ! -L /lib/modules/%{version} ] ; then
898         mv -f /lib/modules/%{version} /lib/modules/%{version}.rpmsave > /dev/null 2>&1
899 fi
900 rm -f /lib/modules/%{version}
901 ln -snf %{version}-%{release} /lib/modules/%{version}
902 %depmod %{version}-%{release}
903
904 /sbin/geninitrd -f --initrdfs=rom %{initrd_dir}/initrd-%{version}-%{release}.gz %{version}-%{release}
905 mv -f %{initrd_dir}/initrd %{initrd_dir}/initrd.old
906 ln -sf initrd-%{version}-%{release}.gz %{initrd_dir}/initrd
907
908 if [ -x /sbin/rc-boot ] ; then
909         /sbin/rc-boot 1>&2 || :
910 fi
911
912 %postun
913 if [ -L /lib/modules/%{version} ]; then
914         if [ "`ls -l /lib/modules/%{version} | awk '{ print $10 }'`" = "%{version}-%{release}" ]; then
915                 if [ "$1" = "0" ]; then
916                         rm -f /lib/modules/%{version}
917                 fi
918         fi
919 fi
920 rm -f %{initrd_dir}/initrd-%{version}-%{release}.gz
921
922 %post drm
923 %depmod %{version}-%{release}
924
925 %postun drm
926 %depmod %{version}-%{release}
927
928 %post pcmcia
929 %depmod %{version}-%{release}
930
931 %postun pcmcia
932 %depmod %{version}-%{release}
933
934 %post sound-alsa
935 %depmod %{version}-%{release}
936
937 %postun sound-alsa
938 %depmod %{version}-%{release}
939
940 %post sound-oss
941 %depmod %{version}-%{release}
942
943 %postun sound-oss
944 %depmod %{version}-%{release}
945
946 %preun smp
947 rm -f /lib/modules/%{version}-%{release}smp/modules.*
948
949 %post smp
950 %ifarch ia64
951 mv -f /boot/efi/vmlinuz /boot/efi/vmlinuz.old 2> /dev/null > /dev/null
952 %endif
953 mv -f /boot/vmlinuz /boot/vmlinuz.old 2> /dev/null > /dev/null
954 mv -f /boot/System.map /boot/System.map.old 2> /dev/null > /dev/null
955 %ifarch ia64
956 ln -sf vmlinuz-%{version}-%{release}smp /boot/efi/vmlinuz
957 %endif
958 ln -sf vmlinuz-%{version}-%{release}smp /boot/vmlinuz
959 ln -sf System.map-%{version}-%{release}smp /boot/System.map
960
961 if [ ! -L /lib/modules/%{version} ] ; then
962         mv -f /lib/modules/%{version} /lib/modules/%{version}.rpmsave > /dev/null 2>&1
963 fi
964 rm -f /lib/modules/%{version}
965 ln -snf %{version}-%{release}smp /lib/modules/%{version}
966 %depmod %{version}-%{release}smp
967
968 /sbin/geninitrd -f --initrdfs=rom %{initrd_dir}/initrd-%{version}-%{release}smp.gz %{version}-%{release}smp
969 mv -f %{initrd_dir}/initrd %{initrd_dir}/initrd.old
970 ln -sf initrd-%{version}-%{release}smp.gz %{initrd_dir}/initrd
971
972 if [ -x /sbin/rc-boot ] ; then
973         /sbin/rc-boot 1>&2 || :
974 fi
975
976 %postun smp
977 if [ -L /lib/modules/%{version} ]; then
978         if [ "`ls -l /lib/modules/%{version} | awk '{ print $10 }'`" = "%{version}-%{release}smp" ]; then
979                 if [ "$1" = "0" ]; then
980                         rm -f /lib/modules/%{version}
981                 fi
982         fi
983 fi
984 rm -f %{initrd_dir}/initrd-%{version}-%{release}smp.gz
985
986 %post BOOT
987 if [ ! -L %{_libdir}/bootdisk/lib/modules/%{version} ] ; then
988         mv -f %{_libdir}/bootdisk/lib/modules/%{version} %{_libdir}/bootdisk/lib/modules/%{version}.rpmsave
989 fi
990 if [ ! -L %{_libdir}/bootdisk/boot/vmlinuz-%{version} ] ; then
991         mv -f %{_libdir}/bootdisk/boot/vmlinuz-%{version} %{_libdir}/bootdisk/boot/vmlinuz-%{version}.rpmsave
992 fi
993 rm -f %{_libdir}/bootdisk/lib/modules/%{version}
994 ln -snf %{version}-%{release}BOOT %{_libdir}/bootdisk/lib/modules/%{version}
995 rm -f %{_libdir}/bootdisk/boot/vmlinuz-%{version}
996 ln -snf vmlinuz-%{version}-%{release}BOOT %{_libdir}/bootdisk/boot/vmlinuz-%{version}
997
998 %post smp-drm
999 %depmod %{version}-%{release}smp
1000
1001 %postun smp-drm
1002 %depmod %{version}-%{release}smp
1003
1004 %post smp-pcmcia
1005 %depmod %{version}-%{release}smp
1006
1007 %postun smp-pcmcia
1008 %depmod %{version}-%{release}smp
1009
1010 %post smp-sound-alsa
1011 %depmod %{version}-%{release}smp
1012
1013 %postun smp-sound-alsa
1014 %depmod %{version}-%{release}smp
1015
1016 %post smp-sound-oss
1017 %depmod %{version}-%{release}smp
1018
1019 %postun smp-sound-oss
1020 %depmod %{version}-%{release}smp
1021
1022 %postun BOOT
1023 if [ -L %{_libdir}/bootdisk/lib/modules/%{version} ]; then
1024         if [ "`ls -l %{_libdir}/bootdisk/lib/modules/%{version} | awk '{ print $10 }'`" = "%{version}-%{release}BOOT" ]; then
1025                 if [ "$1" = "0" ]; then
1026                         rm -f %{_libdir}/bootdisk/lib/modules/%{version}
1027                 fi
1028         fi
1029 fi
1030
1031 %post headers
1032 rm -f /usr/src/linux
1033 ln -snf linux-%{version} /usr/src/linux
1034
1035 %postun headers
1036 if [ -L %{_prefix}/src/linux ]; then
1037         if [ "`ls -l %{_prefix}/src/linux | awk '{ print $10 }'`" = "linux-%{version}" ]; then
1038                 if [ "$1" = "0" ]; then
1039                         rm -f %{_prefix}/src/linux
1040                 fi
1041         fi
1042 fi
1043
1044 %if %{with up}
1045 %files
1046 %defattr(644,root,root,755)
1047 %doc FAQ-pl
1048 %ifarch alpha ppc
1049 /boot/vmlinux-%{version}-%{release}
1050 %endif
1051 %ifarch sparc sparc64
1052 /boot/vmlinux-%{version}-%{release}
1053 /boot/vmlinux.aout-%{version}-%{release}
1054 %endif
1055 %ifarch ia64
1056 /boot/efi/vmlinuz-%{version}-%{release}
1057 %endif
1058 /boot/vmlinuz-%{version}-%{release}
1059 /boot/System.map-%{version}-%{release}
1060 %dir /lib/modules/%{version}-%{release}
1061 /lib/modules/%{version}-%{release}/kernel
1062 %dir /lib/modules/%{version}-%{release}/misc
1063 %ifnarch sparc sparc64
1064 #pcmcia stuff
1065 %exclude /lib/modules/%{version}-%{release}/kernel/drivers/pcmcia
1066 %exclude /lib/modules/%{version}-%{release}/kernel/drivers/*/pcmcia
1067 %exclude /lib/modules/%{version}-%{release}/kernel/drivers/bluetooth/*_cs.ko*
1068 %exclude /lib/modules/%{version}-%{release}/kernel/drivers/net/wireless/*_cs.ko*
1069 %exclude /lib/modules/%{version}-%{release}/kernel/drivers/parport/parport_cs.ko*
1070 %exclude /lib/modules/%{version}-%{release}/kernel/drivers/serial/serial_cs.ko*
1071 %endif
1072 %ifnarch sparc sparc64
1073 #drm stuff
1074 %exclude /lib/modules/%{version}-%{release}/kernel/drivers/char/drm
1075 %endif
1076 %ifnarch sparc sparc64
1077 #oss sound stuff
1078 %exclude /lib/modules/%{version}-%{release}/kernel/sound/oss
1079 %endif
1080 #alsa sound stuff
1081 %exclude /lib/modules/%{version}-%{release}/kernel/sound/core
1082 %exclude /lib/modules/%{version}-%{release}/kernel/sound/drivers
1083 %ifnarch sparc sparc64
1084 %exclude /lib/modules/%{version}-%{release}/kernel/sound/i2c
1085 %exclude /lib/modules/%{version}-%{release}/kernel/sound/isa
1086 %exclude /lib/modules/%{version}-%{release}/kernel/sound/pci
1087 %exclude /lib/modules/%{version}-%{release}/kernel/sound/synth
1088 %exclude /lib/modules/%{version}-%{release}/kernel/sound/usb
1089 %endif
1090 %ifarch sparc sparc64
1091 %exclude /lib/modules/%{version}-%{release}/kernel/sound/sparc
1092 %endif
1093
1094 /lib/modules/%{version}-%{release}/build
1095 %ghost /lib/modules/%{version}-%{release}/modules.*
1096
1097 %ifnarch sparc sparc64
1098 %files drm
1099 %defattr(644,root,root,755)
1100 /lib/modules/%{version}-%{release}/kernel/drivers/char/drm
1101 %endif
1102
1103 %ifnarch sparc sparc64
1104 %files pcmcia
1105 %defattr(644,root,root,755)
1106 /lib/modules/%{version}-%{release}/kernel/drivers/pcmcia
1107 /lib/modules/%{version}-%{release}/kernel/drivers/*/pcmcia
1108 /lib/modules/%{version}-%{release}/kernel/drivers/bluetooth/*_cs.ko*
1109 /lib/modules/%{version}-%{release}/kernel/drivers/net/wireless/*_cs.ko*
1110 /lib/modules/%{version}-%{release}/kernel/drivers/parport/parport_cs.ko*
1111 /lib/modules/%{version}-%{release}/kernel/drivers/serial/serial_cs.ko*
1112 %endif
1113
1114 %files sound-alsa
1115 %defattr(644,root,root,755)
1116 /lib/modules/%{version}-%{release}/kernel/sound/core
1117 /lib/modules/%{version}-%{release}/kernel/sound/drivers
1118 %ifnarch sparc sparc64
1119 /lib/modules/%{version}-%{release}/kernel/sound/i2c
1120 /lib/modules/%{version}-%{release}/kernel/sound/isa
1121 /lib/modules/%{version}-%{release}/kernel/sound/pci
1122 /lib/modules/%{version}-%{release}/kernel/sound/synth
1123 /lib/modules/%{version}-%{release}/kernel/sound/usb
1124 %endif
1125 %ifarch sparc sparc64
1126 /lib/modules/%{version}-%{release}/kernel/sound/sparc
1127 %endif
1128
1129 %ifnarch sparc sparc64
1130 %files sound-oss
1131 %defattr(644,root,root,755)
1132 /lib/modules/%{version}-%{release}/kernel/sound/oss
1133 %endif
1134 %endif                  # %%{with up}
1135
1136 %if %{with smp}
1137 %files smp
1138 %defattr(644,root,root,755)
1139 %doc FAQ-pl
1140 %ifarch alpha sparc sparc64 ppc
1141 /boot/vmlinux-%{version}-%{release}smp
1142 %endif
1143 %ifarch ia64
1144 /boot/efi/vmlinuz-%{version}-%{release}smp
1145 %endif
1146 /boot/vmlinuz-%{version}-%{release}smp
1147 /boot/System.map-%{version}-%{release}smp
1148 %dir /lib/modules/%{version}-%{release}smp
1149 /lib/modules/%{version}-%{release}smp/kernel
1150 %dir /lib/modules/%{version}-%{release}smp/misc
1151 %ifnarch sparc sparc64
1152 #pcmcia stuff
1153 %exclude /lib/modules/%{version}-%{release}smp/kernel/drivers/pcmcia
1154 %exclude /lib/modules/%{version}-%{release}smp/kernel/drivers/*/pcmcia
1155 %exclude /lib/modules/%{version}-%{release}smp/kernel/drivers/bluetooth/*_cs.ko*
1156 %exclude /lib/modules/%{version}-%{release}smp/kernel/drivers/net/wireless/*_cs.ko*
1157 %exclude /lib/modules/%{version}-%{release}smp/kernel/drivers/parport/parport_cs.ko*
1158 %exclude /lib/modules/%{version}-%{release}smp/kernel/drivers/serial/serial_cs.ko*
1159 %endif
1160 %ifnarch sparc sparc64
1161 #drm stuff
1162 %exclude /lib/modules/%{version}-%{release}smp/kernel/drivers/char/drm
1163 %endif
1164 %ifnarch sparc sparc64
1165 #oss sound stuff
1166 %exclude /lib/modules/%{version}-%{release}smp/kernel/sound/oss
1167 %endif
1168 #alsa sound stuff
1169 %exclude /lib/modules/%{version}-%{release}smp/kernel/sound/core
1170 %exclude /lib/modules/%{version}-%{release}smp/kernel/sound/drivers
1171 %ifnarch sparc sparc64
1172 %exclude /lib/modules/%{version}-%{release}smp/kernel/sound/i2c
1173 %exclude /lib/modules/%{version}-%{release}smp/kernel/sound/isa
1174 %exclude /lib/modules/%{version}-%{release}smp/kernel/sound/pci
1175 %exclude /lib/modules/%{version}-%{release}smp/kernel/sound/synth
1176 %exclude /lib/modules/%{version}-%{release}smp/kernel/sound/usb
1177 %endif
1178 %ifarch sparc sparc64
1179 %exclude /lib/modules/%{version}-%{release}smp/kernel/sound/sparc
1180 %endif
1181
1182 /lib/modules/%{version}-%{release}smp/build
1183 %ghost /lib/modules/%{version}-%{release}smp/modules.*
1184
1185 %ifnarch sparc sparc64
1186 %files smp-drm
1187 %defattr(644,root,root,755)
1188 /lib/modules/%{version}-%{release}smp/kernel/drivers/char/drm
1189 %endif
1190
1191 %ifnarch sparc sparc64
1192 %files smp-pcmcia
1193 %defattr(644,root,root,755)
1194 /lib/modules/%{version}-%{release}smp/kernel/drivers/pcmcia
1195 /lib/modules/%{version}-%{release}smp/kernel/drivers/*/pcmcia
1196 /lib/modules/%{version}-%{release}smp/kernel/drivers/bluetooth/*_cs.ko*
1197 /lib/modules/%{version}-%{release}smp/kernel/drivers/net/wireless/*_cs.ko*
1198 /lib/modules/%{version}-%{release}smp/kernel/drivers/parport/parport_cs.ko*
1199 /lib/modules/%{version}-%{release}smp/kernel/drivers/serial/serial_cs.ko*
1200 %endif
1201
1202 %files smp-sound-alsa
1203 %defattr(644,root,root,755)
1204 /lib/modules/%{version}-%{release}smp/kernel/sound/core
1205 /lib/modules/%{version}-%{release}smp/kernel/sound/drivers
1206 %ifnarch sparc sparc64
1207 /lib/modules/%{version}-%{release}smp/kernel/sound/i2c
1208 /lib/modules/%{version}-%{release}smp/kernel/sound/isa
1209 /lib/modules/%{version}-%{release}smp/kernel/sound/pci
1210 /lib/modules/%{version}-%{release}smp/kernel/sound/synth
1211 /lib/modules/%{version}-%{release}smp/kernel/sound/usb
1212 %endif
1213 %ifarch sparc sparc64
1214 /lib/modules/%{version}-%{release}smp/kernel/sound/sparc
1215 %endif
1216
1217 %ifnarch sparc sparc64
1218 %files smp-sound-oss
1219 %defattr(644,root,root,755)
1220 /lib/modules/%{version}-%{release}smp/kernel/sound/oss
1221 %endif
1222 %endif                  # %%{with smp}
1223
1224 %if %{with BOOT}
1225 %files BOOT
1226 %defattr(644,root,root,755)
1227 %ifarch alpha sparc sparc64 ppc         # arch
1228 %{_libdir}/bootdisk/boot/vmlinux-%{version}-%{release}BOOT
1229 %endif                          #arch
1230 %{_libdir}/bootdisk/boot/vmlinuz-%{version}-%{release}BOOT
1231 %{_libdir}/bootdisk/boot/System.map-%{version}-%{release}BOOT
1232 %dir %{_libdir}/bootdisk/lib/modules/%{version}-%{release}BOOT
1233 %{_libdir}/bootdisk/lib/modules/%{version}-%{release}BOOT/kernel
1234 %{_libdir}/bootdisk/lib/modules/%{version}-%{release}BOOT/build
1235 %ghost %{_libdir}/bootdisk/lib/modules/%{version}-%{release}BOOT/modules.*
1236 %endif                          # %%{with BOOT}
1237
1238 %files headers
1239 %defattr(644,root,root,755)
1240 %dir %{_prefix}/src/linux-%{version}
1241 %{_prefix}/src/linux-%{version}/include
1242 %{?with_smp:%{_prefix}/src/linux-%{version}/config-smp}
1243 %{?with_up:%{_prefix}/src/linux-%{version}/config-up}
1244
1245 %files module-build
1246 %defattr(644,root,root,755)
1247 %{_prefix}/src/linux-%{version}/Makefile
1248 %dir %{_prefix}/src/linux-%{version}/arch
1249 %dir %{_prefix}/src/linux-%{version}/arch/*
1250 %{_prefix}/src/linux-%{version}/arch/*/Makefile*
1251 %dir %{_prefix}/src/linux-%{version}/arch/*/kernel
1252 %{_prefix}/src/linux-%{version}/arch/*/kernel/Makefile
1253 %{_prefix}/src/linux-%{version}/arch/*/kernel/asm-offsets.*
1254 %{_prefix}/src/linux-%{version}/arch/*/kernel/sigframe.h
1255 %dir %{_prefix}/src/linux-%{version}/scripts
1256 %{_prefix}/src/linux-%{version}/scripts/Makefile*
1257 %{_prefix}/src/linux-%{version}/scripts/basic
1258 %{_prefix}/src/linux-%{version}/scripts/mod
1259 %{_prefix}/src/linux-%{version}/scripts/*.c
1260 %{_prefix}/src/linux-%{version}/scripts/*.sh
1261
1262 %files doc
1263 %defattr(644,root,root,755)
1264 %{_prefix}/src/linux-%{version}/Documentation
1265 #%%{_prefix}/src/linux-%{version}/netfilter-patch-o-matic
1266
1267 %if %{with source}
1268 %files source
1269 %defattr(644,root,root,755)
1270 %{_prefix}/src/linux-%{version}/arch/*/[!Mk]*
1271 %{_prefix}/src/linux-%{version}/arch/*/kernel/[!M]*
1272 %exclude %{_prefix}/src/linux-%{version}/arch/*/kernel/asm-offsets.*
1273 %exclude %{_prefix}/src/linux-%{version}/arch/*/kernel/sigframe.h
1274 %{_prefix}/src/linux-%{version}/cluster
1275 %{_prefix}/src/linux-%{version}/crypto
1276 %{_prefix}/src/linux-%{version}/drivers
1277 %{_prefix}/src/linux-%{version}/fs
1278 %if %{with grsec}
1279 %{_prefix}/src/linux-%{version}/grsecurity
1280 %endif
1281 %{_prefix}/src/linux-%{version}/init
1282 %{_prefix}/src/linux-%{version}/ipc
1283 %{_prefix}/src/linux-%{version}/kernel
1284 %{_prefix}/src/linux-%{version}/lib
1285 %{_prefix}/src/linux-%{version}/mm
1286 %{_prefix}/src/linux-%{version}/net
1287 %{_prefix}/src/linux-%{version}/scripts/*
1288 %exclude %{_prefix}/src/linux-%{version}/scripts/Makefile*
1289 %exclude %{_prefix}/src/linux-%{version}/scripts/basic
1290 %exclude %{_prefix}/src/linux-%{version}/scripts/mod
1291 %exclude %{_prefix}/src/linux-%{version}/scripts/*.c
1292 %exclude %{_prefix}/src/linux-%{version}/scripts/*.sh
1293 %{_prefix}/src/linux-%{version}/sound
1294 %{_prefix}/src/linux-%{version}/security
1295 %{_prefix}/src/linux-%{version}/usr
1296 %{_prefix}/src/linux-%{version}/COPYING
1297 %{_prefix}/src/linux-%{version}/CREDITS
1298 %{_prefix}/src/linux-%{version}/MAINTAINERS
1299 %{_prefix}/src/linux-%{version}/README
1300 %{_prefix}/src/linux-%{version}/REPORTING-BUGS
1301 %endif
This page took 0.13172 seconds and 3 git commands to generate.