/[packages]/cauldron/kernel/current/SPECS/kernel.spec
ViewVC logotype

Contents of /cauldron/kernel/current/SPECS/kernel.spec

Parent Directory Parent Directory | Revision Log Revision Log


Revision 79845 - (show annotations) (download)
Sat Apr 2 19:15:05 2011 UTC (13 years ago) by tmb
File size: 36901 byte(s)
add module_alias matching old dm-raid45
1 # -*- Mode: rpm-spec -*-
2 #
3 # This Specfile is based on kernel-tmb spec done by
4 # Thomas Backlund <tmb@mandriva.org>
5 #
6 # The mkflavour() macroization done by Anssi Hannula <anssi@mandriva.org>
7 #
8 # Mageia kernels use kernel.org versioning
9 #
10 %define kernelversion 2
11 %define patchlevel 6
12 %define sublevel 38
13
14 # Package release
15 %define mgarel 2
16
17 # kernel Makefile extraversion is substituted by
18 # kpatch/kgit/kstable wich are either 0 (empty), rc (kpatch), git (kgit)
19 # or stable release (kstable)
20 %define kpatch 0
21 %define kstable 2
22 # kernel.org -gitX patch (only the number after "git")
23 %define kgit 0
24
25 # Used when building update candidates
26 #define uclevel uc1
27 %define devel_notice %{?uclevel:NOTE: This is work-in-progress (WIP) development kernel.}
28
29 # kernel base name (also name of srpm)
30 %define kname kernel
31
32 # Patch tarball tag
33 %define ktag mga1
34
35 %define rpmtag %distsuffix
36 %if %kpatch
37 %if %kgit
38 %define rpmrel %mkrel 0.%{kpatch}.%{kgit}.%{mgarel}%{?uclevel:.%{uclevel}}
39 %else
40 %define rpmrel %mkrel 0.%{kpatch}.%{mgarel}%{?uclevel:.%{uclevel}}
41 %endif
42 %else
43 %define rpmrel %mkrel %{mgarel}%{?uclevel:.%{uclevel}}
44 %endif
45 %define fakerel %mkrel 1
46
47 # fakerel above and fakever below never change, they are used to fool
48 # rpm/urpmi/smart
49 %define fakever 1
50
51 # When we are using a pre/rc patch, the tarball is a sublevel -1
52 %if %kpatch
53 %if %kstable
54 %define tar_ver %{kernelversion}.%{patchlevel}.%{sublevel}
55 %else
56 %define tar_ver %{kernelversion}.%{patchlevel}.%(expr %{sublevel} - 1)
57 %endif
58 %define patch_ver %{kversion}-%{kpatch}-%{ktag}%{mgarel}
59 %else
60 %define tar_ver %{kernelversion}.%{patchlevel}.%{sublevel}
61 %define patch_ver %{kversion}-%{ktag}%{mgarel}
62 %endif
63 %if %kstable
64 %define kversion %{kernelversion}.%{patchlevel}.%{sublevel}.%{kstable}
65 %else
66 %define kversion %{kernelversion}.%{patchlevel}.%{sublevel}
67 %endif
68 %define kverrel %{kversion}-%{rpmrel}
69
70 # Used for not making too long names for rpms or search paths
71 %if %kpatch
72 %if %kgit
73 %define buildrpmrel 0.%{kpatch}.%{kgit}.%{mgarel}%{?uclevel:.%{uclevel}}%{rpmtag}
74 %else
75 %define buildrpmrel 0.%{kpatch}.%{mgarel}%{?uclevel:.%{uclevel}}%{rpmtag}
76 %endif
77 %else
78 %define buildrpmrel %{mgarel}%{?uclevel:.%{uclevel}}%{rpmtag}
79 %endif
80 %define buildrel %{kversion}-%{buildrpmrel}
81
82 # Having different top level names for packges means that you have to remove
83 # them by hard :(
84 %define top_dir_name %{kname}-%{_arch}
85
86 %define build_dir ${RPM_BUILD_DIR}/%{top_dir_name}
87 %define src_dir %{build_dir}/linux-%{tar_ver}
88
89 # Disable useless debug rpms...
90 %define _enable_debug_packages %{nil}
91 %define debug_package %{nil}
92
93 # Build defines
94 %define build_doc 1
95 %define build_source 1
96 %define build_devel 1
97
98 %define build_debug 1
99
100 # Build desktop i586 / 4GB
101 %ifarch %{ix86}
102 %define build_desktop586 1
103 %endif
104
105 # Build desktop (i686 / 4GB) / x86_64 / sparc64 sets
106 %define build_desktop 1
107
108 # Build netbook (i586 / 4GB) / x86_64
109 %define build_netbook 1
110
111 # Build server (i686 / 64GB)/x86_64 / sparc64 sets
112 %define build_server 1
113
114 # End of user definitions
115 %{?_without_desktop586: %global build_desktop586 0}
116 %{?_without_desktop: %global build_desktop 0}
117 %{?_without_netbook: %global build_netbook 0}
118 %{?_without_server: %global build_server 0}
119 %{?_without_doc: %global build_doc 0}
120 %{?_without_source: %global build_source 0}
121 %{?_without_devel: %global build_devel 0}
122 %{?_without_debug: %global build_debug 0}
123
124 %{?_with_desktop586: %global build_desktop586 1}
125 %{?_with_desktop: %global build_desktop 1}
126 %{?_with_netbook: %global build_netbook 1}
127 %{?_with_server: %global build_server 1}
128 %{?_with_doc: %global build_doc 1}
129 %{?_with_source: %global build_source 1}
130 %{?_with_devel: %global build_devel 1}
131 %{?_with_debug: %global build_debug 1}
132
133 # For the .nosrc.rpm
134 %define build_nosrc 0
135 %{?_with_nosrc: %global build_nosrc 1}
136
137 %if %(if [ -z "$CC" ] ; then echo 0; else echo 1; fi)
138 %define kmake %make CC="$CC"
139 %else
140 %define kmake %make
141 %endif
142 # there are places where parallel make don't work
143 %define smake make
144
145 # Parallelize xargs invocations on smp machines
146 %define kxargs xargs %([ -z "$RPM_BUILD_NCPUS" ] \\\
147 && RPM_BUILD_NCPUS="`/usr/bin/getconf _NPROCESSORS_ONLN`"; \\\
148 [ "$RPM_BUILD_NCPUS" -gt 1 ] && echo "-P $RPM_BUILD_NCPUS")
149
150 # Sparc arch wants sparc64 kernels
151 %define target_arch %(echo %{_arch} | sed -e "s/sparc/sparc64/")
152
153
154 #
155 # SRC RPM description
156 #
157 Summary: Linux kernel built for Mageia
158 Name: %{kname}
159 Version: %{kversion}
160 Release: %{rpmrel}
161 License: GPLv2
162 Group: System/Kernel and hardware
163 ExclusiveArch: %{ix86} x86_64
164 ExclusiveOS: Linux
165 URL: http://www.kernel.org
166
167 ####################################################################
168 #
169 # Sources
170 #
171 ### This is for full SRC RPM
172 Source0: ftp://ftp.kernel.org/pub/linux/kernel/v%{kernelversion}.%{patchlevel}/linux-%{tar_ver}.tar.bz2
173 Source1: ftp://ftp.kernel.org/pub/linux/kernel/v%{kernelversion}.%{patchlevel}/linux-%{tar_ver}.tar.bz2.sign
174 ### This is for stripped SRC RPM
175 %if %build_nosrc
176 NoSource: 0
177 %endif
178 # This is for disabling *config, mrproper, prepare, scripts on -devel rpms
179 Source2: disable-mrproper-prepare-scripts-configs-in-devel-rpms.patch
180
181 Source4: README.kernel-sources
182
183 Source100: linux-%{patch_ver}.tar.bz2
184
185 ####################################################################
186 #
187 # Patches
188
189 #
190 # Patch0 to Patch100 are for core kernel upgrades.
191 #
192
193 # Pre linus patch: ftp://ftp.kernel.org/pub/linux/kernel/v2.6/testing
194
195 %if %kpatch
196 %if %kstable
197 Patch2: ftp://ftp.kernel.org/pub/linux/kernel/v%{kernelversion}.%{patchlevel}/stable-review/patch-%{kversion}-%{kpatch}.bz2
198 Source11: ftp://ftp.kernel.org/pub/linux/kernel/v%{kernelversion}.%{patchlevel}/stable-review/patch-%{kversion}-%{kpatch}.bz2.sign
199 %else
200 Patch1: ftp://ftp.kernel.org/pub/linux/kernel/v%{kernelversion}.%{patchlevel}/testing/patch-%{kversion}-%{kpatch}.bz2
201 Source10: ftp://ftp.kernel.org/pub/linux/kernel/v%{kernelversion}.%{patchlevel}/testing/patch-%{kversion}-%{kpatch}.bz2.sign
202 %endif
203 %endif
204 %if %kgit
205 Patch2: ftp://ftp.kernel.org/pub/linux/kernel/v%{kernelversion}.%{patchlevel}/snapshots/patch-%{kernelversion}.%{patchlevel}.%{sublevel}-%{kpatch}-git%{kgit}.bz2
206 Source11: ftp://ftp.kernel.org/pub/linux/kernel/v%{kernelversion}.%{patchlevel}/snapshots/patch-%{kernelversion}.%{patchlevel}.%{sublevel}-%{kpatch}-git%{kgit}.bz2.sign
207 %endif
208 %if %kstable
209 %if %kpatch
210 %define prev_stable %(expr %{kstable} - 1)
211 %if %prev_stable
212 Patch1: ftp://ftp.kernel.org/pub/linux/kernel/v%{kernelversion}.%{patchlevel}/patch-%{kernelversion}.%{patchlevel}.%{sublevel}.%{prev_stable}.bz2
213 Source10: ftp://ftp.kernel.org/pub/linux/kernel/v%{kernelversion}.%{patchlevel}/patch-%{kernelversion}.%{patchlevel}.%{sublevel}.%{prev_stable}.bz2.sign
214 %endif
215 %else
216 Patch1: ftp://ftp.kernel.org/pub/linux/kernel/v%{kernelversion}.%{patchlevel}/patch-%{kversion}.bz2
217 Source10: ftp://ftp.kernel.org/pub/linux/kernel/v%{kernelversion}.%{patchlevel}/patch-%{kversion}.bz2.sign
218 %endif
219 %endif
220
221 #END
222 ####################################################################
223
224 # Defines for the things that are needed for all the kernels
225 #
226 %define common_description_kernel The kernel package contains the Linux kernel (vmlinuz), the core of your \
227 Mageia operating system. The kernel handles the basic functions \
228 of the operating system: memory allocation, process allocation, device \
229 input and output, etc.
230
231 %{devel_notice}
232
233 ### Global Requires/Provides
234 %define requires1 bootloader-utils >= 1.13-1
235 %define requires2 mkinitrd >= 4.2.17-31
236 %define requires3 module-init-tools >= 3.0-7
237 %define requires4 sysfsutils >= 1.3.0-1
238 %define requires5 kernel-firmware >= 20101024-2
239
240 %define kprovides %{kname} = %{kverrel}, kernel = %{tar_ver}, alsa = 1.0.23, drbd-api = 88
241
242 %define kconflicts drakxtools-backend < 10.4.190-2
243
244 %define kobsoletes dkms-iwlwifi < 1.2.26
245
246 BuildRoot: %{_tmppath}/%{kname}-%{kversion}-%{_arch}-build
247 Autoreqprov: no
248 BuildRequires: gcc module-init-tools
249
250 %description
251 %common_description_kernel
252
253 %common_description_info
254
255 # mkflavour() name flavour processor
256 # name: the flavour name in the package name
257 # flavour: first parameter of CreateKernel()
258 %define mkflavour() \
259 %package -n %{kname}-%{1}-%{buildrel} \
260 Version: %{fakever} \
261 Release: %{fakerel} \
262 Provides: %kprovides \
263 Requires(pre): %requires1 %requires2 %requires3 %requires4 \
264 Requires: %requires5 \
265 Provides: should-restart = system \
266 Suggests: crda \
267 Obsoletes: %kobsoletes \
268 Conflicts: %kconflicts \
269 %ifarch %{ix86} \
270 Conflicts: arch(x86_64) \
271 %endif \
272 Summary: %{expand:%{summary_%(echo %{1})}} \
273 Group: System/Kernel and hardware \
274 %description -n %{kname}-%{1}-%{buildrel} \
275 %common_description_kernel %{expand:%{info_%(echo %{1})}} \
276 \
277 %common_description_info \
278 \
279 %if %build_devel \
280 %package -n %{kname}-%{1}-devel-%{buildrel} \
281 Version: %{fakever} \
282 Release: %{fakerel} \
283 Requires: glibc-devel ncurses-devel make gcc perl \
284 Summary: The kernel-devel files for %{kname}-%{1}-%{buildrel} \
285 Group: Development/Kernel \
286 Provides: kernel-devel = %{kverrel} \
287 %ifarch %{ix86} \
288 Conflicts: arch(x86_64) \
289 %endif \
290 %description -n %{kname}-%{1}-devel-%{buildrel} \
291 This package contains the kernel files (headers and build tools) \
292 that should be enough to build additional drivers for \
293 use with %{kname}-%{1}-%{buildrel}. \
294 \
295 If you want to build your own kernel, you need to install the full \
296 %{kname}-source-%{buildrel} rpm. \
297 \
298 %common_description_info \
299 %endif \
300 \
301 %if %build_debug \
302 %package -n %{kname}-%{1}-debug-%{buildrel} \
303 Version: %{fakever} \
304 Release: %{fakerel} \
305 Summary: Files with debug info for %{kname}-%{1}-%{buildrel} \
306 Group: Development/Debug \
307 Provides: kernel-debug = %{kverrel} \
308 %ifarch %{ix86} \
309 Conflicts: arch(x86_64) \
310 %endif \
311 %description -n %{kname}-%{1}-debug-%{buildrel} \
312 This package contains the files with debug info to aid in debug tasks \
313 when using %{kname}-%{1}-%{buildrel}. \
314 \
315 If you need to look at debug information or use some application that \
316 needs debugging info from the kernel, this package may help. \
317 \
318 %common_description_info \
319 %endif \
320 \
321 %package -n %{kname}-%{1}-latest \
322 Version: %{kversion} \
323 Release: %{rpmrel} \
324 Summary: Virtual rpm for latest %{kname}-%{1} \
325 Group: System/Kernel and hardware \
326 Requires: %{kname}-%{1}-%{buildrel} \
327 %ifarch %{ix86} \
328 Conflicts: arch(x86_64) \
329 %endif \
330 %description -n %{kname}-%{1}-latest \
331 This package is a virtual rpm that aims to make sure you always have the \
332 latest %{kname}-%{1} installed... \
333 \
334 %common_description_info \
335 \
336 %if %build_devel \
337 %package -n %{kname}-%{1}-devel-latest \
338 Version: %{kversion} \
339 Release: %{rpmrel} \
340 Summary: Virtual rpm for latest %{kname}-%{1}-devel \
341 Group: Development/Kernel \
342 Requires: %{kname}-%{1}-devel-%{buildrel} \
343 %ifarch %{ix86} \
344 Conflicts: arch(x86_64) \
345 %endif \
346 Provides: %{kname}-devel-latest \
347 %description -n %{kname}-%{1}-devel-latest \
348 This package is a virtual rpm that aims to make sure you always have the \
349 latest %{kname}-%{1}-devel installed... \
350 \
351 %common_description_info \
352 %endif \
353 \
354 %if %build_debug \
355 %package -n %{kname}-%{1}-debug-latest \
356 Version: %{kversion} \
357 Release: %{rpmrel} \
358 Summary: Virtual rpm for latest %{kname}-%{1}-debug \
359 Group: Development/Debug \
360 Requires: %{kname}-%{1}-debug-%{buildrel} \
361 %ifarch %{ix86} \
362 Conflicts: arch(x86_64) \
363 %endif \
364 Provides: %{kname}-debug-latest \
365 %description -n %{kname}-%{1}-debug-latest \
366 This package is a virtual rpm that aims to make sure you always have the \
367 latest %{kname}-%{1}-debug installed... \
368 \
369 %common_description_info \
370 %endif \
371 \
372 %post -n %{kname}-%{1}-%{buildrel} -f kernel_files.%{1}-post \
373 %preun -n %{kname}-%{1}-%{buildrel} -f kernel_files.%{1}-preun \
374 %postun -n %{kname}-%{1}-%{buildrel} -f kernel_files.%{1}-postun \
375 \
376 %if %build_devel \
377 %post -n %{kname}-%{1}-devel-%{buildrel} -f kernel_devel_files.%{1}-post \
378 %preun -n %{kname}-%{1}-devel-%{buildrel} -f kernel_devel_files.%{1}-preun \
379 %endif \
380 \
381 %files -n %{kname}-%{1}-%{buildrel} -f kernel_files.%{1} \
382 %files -n %{kname}-%{1}-latest \
383 %defattr(-,root,root) \
384 \
385 %if %build_devel \
386 %files -n %{kname}-%{1}-devel-%{buildrel} -f kernel_devel_files.%{1} \
387 %files -n %{kname}-%{1}-devel-latest \
388 %defattr(-,root,root) \
389 %endif \
390 \
391 %if %build_debug \
392 %files -n %{kname}-%{1}-debug-%{buildrel} -f kernel_debug_files.%{1} \
393 %files -n %{kname}-%{1}-debug-latest \
394 %defattr(-,root,root) \
395 %endif
396
397 %ifarch %{ix86}
398 #
399 # kernel-desktop586: i586, smp-alternatives, 4GB
400 #
401 %if %build_desktop586
402 %define summary_desktop586 Linux kernel for desktop use with i586 & 4GB RAM
403 %define info_desktop586 This kernel is compiled for desktop use, single or \
404 multiple i586 processor(s)/core(s) and less than 4GB RAM, using voluntary \
405 preempt, CFS cpu scheduler and cfq i/o scheduler. \
406 This kernel relies on in-kernel smp alternatives to switch between up & smp \
407 mode depending on detected hardware. To force the kernel to boot in single \
408 processor mode, use the "nosmp" boot parameter.
409 %mkflavour desktop586
410 %endif
411 %endif
412
413 #
414 # kernel-desktop: i686, smp-alternatives, 4 GB / x86_64
415 #
416
417 %if %build_desktop
418 %ifarch %{ix86}
419 %define summary_desktop Linux Kernel for desktop use with i686 & 4GB RAM
420 %define info_desktop This kernel is compiled for desktop use, single or \
421 multiple i686 processor(s)/core(s) and less than 4GB RAM, using HZ_1000, \
422 voluntary preempt, CFS cpu scheduler and cfq i/o scheduler. \
423 This kernel relies on in-kernel smp alternatives to switch between up & smp \
424 mode depending on detected hardware. To force the kernel to boot in single \
425 processor mode, use the "nosmp" boot parameter.
426 %else
427 %define summary_desktop Linux Kernel for desktop use with %{_arch}
428 %define info_desktop This kernel is compiled for desktop use, single or \
429 multiple %{_arch} processor(s)/core(s), using HZ_1000, voluntary preempt, \
430 CFS cpu scheduler and cfq i/o scheduler. \
431 This kernel relies on in-kernel smp alternatives to switch between up & smp \
432 mode depending on detected hardware. To force the kernel to boot in single \
433 processor mode, use the "nosmp" boot parameter.
434 %endif
435 %mkflavour desktop
436 %endif
437
438 #
439 # kernel-desktop: i686, smp-alternatives, 4 GB / x86_64
440 #
441
442 %if %build_netbook
443 %ifarch %{ix86}
444 %define summary_netbook Linux Kernel for desktop use with i686 & 4GB RAM
445 %define info_netbook This kernel is compiled for netbook use, single or \
446 multiple i686 processor(s)/core(s) and less than 4GB RAM, using HZ_1000, \
447 voluntary preempt, CFS cpu scheduler and cfq i/o scheduler. \
448 This kernel relies on in-kernel smp alternatives to switch between up & smp \
449 mode depending on detected hardware. To force the kernel to boot in single \
450 processor mode, use the "nosmp" boot parameter.
451 %else
452 %define summary_netbook Linux Kernel for desktop use with %{_arch}
453 %define info_netbook This kernel is compiled for netbook use, single or \
454 multiple %{_arch} processor(s)/core(s), using HZ_1000, voluntary preempt, \
455 CFS cpu scheduler and cfq i/o scheduler. \
456 This kernel relies on in-kernel smp alternatives to switch between up & smp \
457 mode depending on detected hardware. To force the kernel to boot in single \
458 processor mode, use the "nosmp" boot parameter.
459 %endif
460 %mkflavour netbook
461 %endif
462
463 #
464 # kernel-server: i686, smp-alternatives, 64 GB / x86_64
465 #
466
467 %if %build_server
468 %ifarch %{ix86}
469 %define summary_server Linux Kernel for server use with i686 & 64GB RAM
470 %define info_server This kernel is compiled for server use, single or \
471 multiple i686 processor(s)/core(s) and up to 64GB RAM using PAE, using \
472 no preempt, HZ_100, CFS cpu scheduler and cfq i/o scheduler. \
473 This kernel relies on in-kernel smp alternatives to switch between up & smp \
474 mode depending on detected hardware. To force the kernel to boot in single \
475 processor mode, use the "nosmp" boot parameter.
476 %else
477 %define summary_server Linux Kernel for server use with %{_arch}
478 %define info_server This kernel is compiled for server use, single or \
479 multiple %{_arch} processor(s)/core(s), using no preempt, HZ_100, \
480 CFS cpu scheduler and cfq i/o scheduler. \
481 This kernel relies on in-kernel smp alternatives to switch between up & smp \
482 mode depending on detected hardware. To force the kernel to boot in single \
483 processor mode, use the "nosmp" boot parameter.
484 %endif
485 %mkflavour server
486 %endif
487
488 #
489 # kernel-source
490 #
491 %if %build_source
492 %package -n %{kname}-source-%{buildrel}
493 Version: %{fakever}
494 Release: %{fakerel}
495 Requires: glibc-devel, ncurses-devel, make, gcc, perl, diffutils
496 Summary: The Linux source code for %{kname}-%{buildrel}
497 Group: Development/Kernel
498 Autoreqprov: no
499 Provides: kernel-source = %{kverrel}
500 %ifarch %{ix86}
501 Conflicts: arch(x86_64)
502 %endif
503
504 %description -n %{kname}-source-%{buildrel}
505 The %{kname}-source package contains the source code files for the Mageia
506 kernel. Theese source files are only needed if you want to build your
507 own custom kernel that is better tuned to your particular hardware.
508
509 If you only want the files needed to build 3rdparty (nVidia, Ati, dkms-*,...)
510 drivers against, install the *-devel-* rpm that is matching your kernel.
511
512 %common_description_info
513
514 %post -n %{kname}-source-%{buildrel}
515 for i in /lib/modules/%{kversion}-{desktop586,desktop,server}-%{buildrpmrel}; do
516 if [ -d $i ]; then
517 if [ ! -L $i/build -a ! -L $i/source ]; then
518 ln -sf /usr/src/linux-%{kversion}-%{buildrpmrel} $i/build
519 ln -sf /usr/src/linux-%{kversion}-%{buildrpmrel} $i/source
520 fi
521 fi
522 done
523 cd /usr/src
524 rm -f linux
525 ln -snf linux-%{kversion}-%{buildrpmrel} linux
526
527 %preun -n %{kname}-source-%{buildrel}
528 for i in /lib/modules/%{kversion}-{desktop586,desktop,server}-%{buildrpmrel}/{build,source}; do
529 if [ -L $i ]; then
530 if [ "$(readlink $i)" = "/usr/src/linux-%{kversion}-%{buildrpmrel}" ]; then
531 rm -f $i
532 fi
533 fi
534 done
535 if [ -L /usr/src/linux ]; then
536 if [ "$(readlink /usr/src/linux)" = "linux-%{kversion}-%{buildrpmrel}" ]; then
537 rm -f /usr/src/linux
538 fi
539 fi
540 exit 0
541
542 #
543 # kernel-source-latest: virtual rpm
544 #
545 %package -n %{kname}-source-latest
546 Version: %{kversion}
547 Release: %{rpmrel}
548 Summary: Virtual rpm for latest %{kname}-source
549 Group: Development/Kernel
550 Requires: %{kname}-source-%{buildrel}
551 %ifarch %{ix86}
552 Conflicts: arch(x86_64)
553 %endif
554
555 %description -n %{kname}-source-latest
556 This package is a virtual rpm that aims to make sure you always have the
557 latest %{kname}-source installed...
558
559 %common_description_info
560 %endif
561
562 #
563 # kernel-doc: documentation for the Linux kernel
564 #
565 %if %build_doc
566 %package -n %{kname}-doc
567 Version: %{kversion}
568 Release: %{rpmrel}
569 Summary: Various documentation bits found in the %{kname} source
570 Group: Books/Computer books
571 Buildarch: noarch
572
573 %description -n %{kname}-doc
574 This package contains documentation files from the %{kname} source.
575 Various bits of information about the Linux kernel and the device drivers
576 shipped with it are documented in these files. You also might want install
577 this package if you need a reference to the options that can be passed to
578 Linux kernel modules at load time.
579
580 %common_description_info
581 %endif
582
583 #
584 # End packages - here begins build stage
585 #
586 %prep
587 %setup -q -n %top_dir_name -c
588 %setup -q -n %top_dir_name -D -T -a100
589
590 %define patches_dir ../%{patch_ver}/
591
592 cd %src_dir
593
594 %if %kstable
595 %if %kpatch
596 %if %prev_stable
597 %patch1 -p1
598 %endif
599 %patch2 -p1
600 %else
601 %patch1 -p1
602 %endif
603 %else
604 %if %kpatch
605 %patch1 -p1
606 %endif
607 %endif
608 %if %kgit
609 %patch2 -p1
610 %endif
611
612 %{patches_dir}/scripts/apply_patches
613
614 # PATCH END
615
616
617 #
618 # Setup Begin
619 #
620
621 # Prepare all the variables for calling create_configs
622
623 %if %build_debug
624 %define debug --debug
625 %else
626 %define debug --no-debug
627 %endif
628
629
630 %{patches_dir}/scripts/create_configs %debug --user_cpu="%{target_arch}"
631
632 # make sure the kernel has the sublevel we know it has...
633 LC_ALL=C perl -p -i -e "s/^SUBLEVEL.*/SUBLEVEL = %{sublevel}/" Makefile
634
635 # get rid of unwanted files
636 find . -name '*~' -o -name '*.orig' -o -name '*.append' | %kxargs rm -f
637
638
639 %build
640 # Common target directories
641 %define _kerneldir /usr/src/linux-%{kversion}-%{buildrpmrel}
642 %define _bootdir /boot
643 %define _modulesdir /lib/modules
644 %define _efidir %{_bootdir}/efi/mageia
645
646 # Directories definition needed for building
647 %define temp_root %{build_dir}/temp-root
648 %define temp_source %{temp_root}%{_kerneldir}
649 %define temp_boot %{temp_root}%{_bootdir}
650 %define temp_modules %{temp_root}%{_modulesdir}
651
652 PrepareKernel() {
653 name=$1
654 extension=$2
655 x86_dir=arch/x86/configs
656
657 echo "Make config for kernel $extension"
658
659 %smake -s mrproper
660
661 if [ "%{target_arch}" == "i386" -o "%{target_arch}" == "x86_64" ]; then
662 if [ -z "$name" ]; then
663 cp ${x86_dir}/%{target_arch}_defconfig-desktop .config
664 else
665 cp ${x86_dir}/%{target_arch}_defconfig-$name .config
666 fi
667 else
668 if [ -z "$name" ]; then
669 cp arch/%{target_arch}/defconfig-desktop .config
670 else
671 cp arch/%{target_arch}/defconfig-$name .config
672 fi
673 fi
674
675 # make sure EXTRAVERSION says what we want it to say
676 %if %kstable
677 LC_ALL=C perl -p -i -e "s/^EXTRAVERSION.*/EXTRAVERSION = .%{kstable}-$extension/" Makefile
678 %else
679 LC_ALL=C perl -p -i -e "s/^EXTRAVERSION.*/EXTRAVERSION = -$extension/" Makefile
680 %endif
681
682 %smake oldconfig
683 }
684
685 BuildKernel() {
686 KernelVer=$1
687
688 echo "Building kernel $KernelVer"
689
690 %kmake all
691
692 # Start installing stuff
693 install -d %{temp_boot}
694 install -m 644 System.map %{temp_boot}/System.map-$KernelVer
695 install -m 644 .config %{temp_boot}/config-$KernelVer
696 gzip -c Module.symvers > %{temp_boot}/symvers-$KernelVer.gz
697
698 %ifarch ppc powerpc
699 cp -f vmlinux %{temp_boot}/vmlinuz-$KernelVer
700 %ifarch ppc
701 cp -f arch/ppc/boot/images/zImage.chrp-rs6k %{temp_boot}/vmlinuz-rs6k-$KernelVer
702 %endif
703 %else
704 %ifarch sparc sparc64
705 gzip -9c vmlinux > %{temp_boot}/vmlinuz-$KernelVer
706 %else
707 cp -f arch/%{target_arch}/boot/bzImage %{temp_boot}/vmlinuz-$KernelVer
708 %endif
709 %endif
710
711 # modules
712 install -d %{temp_modules}/$KernelVer
713 %smake INSTALL_MOD_PATH=%{temp_root} KERNELRELEASE=$KernelVer modules_install
714
715 # remove /lib/firmware, we use a separate kernel-firmware
716 rm -rf %{temp_root}/lib/firmware
717 }
718
719 SaveDevel() {
720 devel_flavour=$1
721
722 DevelRoot=/usr/src/linux-%{kversion}-$devel_flavour-%{buildrpmrel}
723 TempDevelRoot=%{temp_root}$DevelRoot
724
725 mkdir -p $TempDevelRoot
726 for i in $(find . -name 'Makefile*'); do cp -R --parents $i $TempDevelRoot;done
727 for i in $(find . -name 'Kconfig*' -o -name 'Kbuild*'); do cp -R --parents $i $TempDevelRoot;done
728 cp -fR include $TempDevelRoot
729 cp -fR scripts $TempDevelRoot
730 cp -fR kernel/bounds.c $TempDevelRoot/kernel
731 %ifarch %{ix86} x86_64
732 cp -fR arch/x86/kernel/asm-offsets.{c,s} $TempDevelRoot/arch/x86/kernel/
733 cp -fR arch/x86/kernel/asm-offsets_{32,64}.c $TempDevelRoot/arch/x86/kernel/
734 cp -fR arch/x86/include $TempDevelRoot/arch/x86/
735 %else
736 cp -fR arch/%{target_arch}/kernel/asm-offsets.{c,s} $TempDevelRoot/arch/%{target_arch}/kernel/
737 cp -fR arch/%{target_arch}/include $TempDevelRoot/arch/%{target_arch}/
738 %endif
739 cp -fR .config Module.symvers $TempDevelRoot
740 cp -fR 3rdparty/mkbuild.pl $TempDevelRoot/3rdparty
741
742 # Needed for truecrypt build (Danny)
743 cp -fR drivers/md/dm.h $TempDevelRoot/drivers/md/
744
745 # Needed for lguest
746 cp -fR drivers/lguest/lg.h $TempDevelRoot/drivers/lguest/
747
748 # Needed for lirc_gpio (#39004)
749 cp -fR drivers/media/video/bt8xx/bttv{,p}.h $TempDevelRoot/drivers/media/video/bt8xx/
750 cp -fR drivers/media/video/bt8xx/bt848.h $TempDevelRoot/drivers/media/video/bt8xx/
751 cp -fR drivers/media/video/btcx-risc.h $TempDevelRoot/drivers/media/video/
752
753 # Needed for external dvb tree (#41418)
754 cp -fR drivers/media/dvb/dvb-core/*.h $TempDevelRoot/drivers/media/dvb/dvb-core/
755 cp -fR drivers/media/dvb/frontends/lgdt330x.h $TempDevelRoot/drivers/media/dvb/frontends/
756
757 # add acpica header files, needed for fglrx build
758 cp -fR drivers/acpi/acpica/*.h $TempDevelRoot/drivers/acpi/acpica/
759
760 # aufs2 has a special file needed
761 cp -fR fs/aufs/magic.mk $TempDevelRoot/fs/aufs
762
763 for i in alpha arm avr32 blackfin cris frv h8300 ia64 m32r m68knommu \
764 microblaze mips mn10300 parisc s390 score sh tile xtensa; do
765 rm -rf $TempDevelRoot/arch/$i
766 done
767
768 # ppc needs only m68k headers
769 rm -rf $TempDevelRoot/arch/m68k
770
771 %ifnarch ppc powerpc
772 rm -rf $TempDevelRoot/arch/powerpc
773 %endif
774 %ifnarch sparc sparc64
775 rm -rf $TempDevelRoot/arch/sparc
776 rm -rf $TempDevelRoot/arch/sparc64
777 %endif
778 %ifnarch %{ix86} x86_64
779 rm -rf $TempDevelRoot/arch/x86
780 %endif
781
782 # Clean the scripts tree, and make sure everything is ok (sanity check)
783 # running prepare+scripts (tree was already "prepared" in build)
784 pushd $TempDevelRoot >/dev/null
785 %smake -s prepare scripts
786 %smake -s clean
787 popd >/dev/null
788 rm -f $TempDevelRoot/.config.old
789
790 # fix permissions
791 chmod -R a+rX $TempDevelRoot
792
793 # disable mrproper in -devel rpms
794 patch -p1 --fuzz=0 -d $TempDevelRoot -i %{SOURCE2}
795
796 kernel_devel_files=../kernel_devel_files.$devel_flavour
797
798
799 ### Create the kernel_devel_files.*
800 cat > $kernel_devel_files <<EOF
801 %defattr(-,root,root)
802 %dir $DevelRoot
803 %dir $DevelRoot/arch
804 %dir $DevelRoot/include
805 $DevelRoot/3rdparty
806 $DevelRoot/Documentation
807 %ifarch ppc powerpc
808 $DevelRoot/arch/powerpc
809 $DevelRoot/arch/ppc
810 %endif
811 %ifarch sparc sparc64
812 $DevelRoot/arch/sparc
813 $DevelRoot/arch/sparc64
814 %endif
815 $DevelRoot/arch/um
816 %ifarch %{ix86} x86_64
817 $DevelRoot/arch/x86
818 %endif
819 $DevelRoot/block
820 $DevelRoot/crypto
821 $DevelRoot/drivers
822 $DevelRoot/firmware
823 $DevelRoot/fs
824 $DevelRoot/include/Kbuild
825 $DevelRoot/include/acpi
826 $DevelRoot/include/asm-generic
827 $DevelRoot/include/config
828 $DevelRoot/include/crypto
829 $DevelRoot/include/drm
830 $DevelRoot/include/generated
831 $DevelRoot/include/keys
832 $DevelRoot/include/linux
833 $DevelRoot/include/math-emu
834 $DevelRoot/include/media
835 $DevelRoot/include/mtd
836 $DevelRoot/include/net
837 $DevelRoot/include/pcmcia
838 $DevelRoot/include/rdma
839 $DevelRoot/include/rxrpc
840 $DevelRoot/include/scsi
841 $DevelRoot/include/sound
842 $DevelRoot/include/target
843 $DevelRoot/include/trace
844 $DevelRoot/include/video
845 $DevelRoot/include/xen
846 $DevelRoot/init
847 $DevelRoot/ipc
848 $DevelRoot/kernel
849 $DevelRoot/lib
850 $DevelRoot/mm
851 $DevelRoot/net
852 $DevelRoot/samples
853 $DevelRoot/scripts
854 $DevelRoot/security
855 $DevelRoot/sound
856 $DevelRoot/tools
857 $DevelRoot/usr
858 $DevelRoot/virt
859 $DevelRoot/.config
860 $DevelRoot/Kbuild
861 $DevelRoot/Kconfig
862 $DevelRoot/Makefile
863 $DevelRoot/Module.symvers
864 $DevelRoot/arch/Kconfig
865 %doc README.kernel-sources
866 EOF
867
868
869 ### Create -devel Post script on the fly
870 cat > $kernel_devel_files-post <<EOF
871 if [ -d /lib/modules/%{kversion}-$devel_flavour-%{buildrpmrel} ]; then
872 rm -f /lib/modules/%{kversion}-$devel_flavour-%{buildrpmrel}/{build,source}
873 ln -sf $DevelRoot /lib/modules/%{kversion}-$devel_flavour-%{buildrpmrel}/build
874 ln -sf $DevelRoot /lib/modules/%{kversion}-$devel_flavour-%{buildrpmrel}/source
875 fi
876 EOF
877
878
879 ### Create -devel Preun script on the fly
880 cat > $kernel_devel_files-preun <<EOF
881 if [ -L /lib/modules/%{kversion}-$devel_flavour-%{buildrpmrel}/build ]; then
882 rm -f /lib/modules/%{kversion}-$devel_flavour-%{buildrpmrel}/build
883 fi
884 if [ -L /lib/modules/%{kversion}-$devel_flavour-%{buildrpmrel}/source ]; then
885 rm -f /lib/modules/%{kversion}-$devel_flavour-%{buildrpmrel}/source
886 fi
887 exit 0
888 EOF
889 }
890
891 SaveDebug() {
892 debug_flavour=$1
893
894 install -m 644 vmlinux \
895 %{temp_boot}/vmlinux-%{kversion}-$debug_flavour-%{buildrpmrel}
896 kernel_debug_files=../kernel_debug_files.$debug_flavour
897 echo "%defattr(-,root,root)" > $kernel_debug_files
898 echo "%{_bootdir}/vmlinux-%{kversion}-$debug_flavour-%{buildrpmrel}" \
899 >> $kernel_debug_files
900
901 find %{temp_modules}/%{kversion}-$debug_flavour-%{buildrpmrel}/kernel \
902 -name "*.ko" | \
903 %kxargs -I '{}' objcopy --only-keep-debug '{}' '{}'.debug
904 find %{temp_modules}/%{kversion}-$debug_flavour-%{buildrpmrel}/kernel \
905 -name "*.ko" | %kxargs -I '{}' \
906 sh -c 'cd `dirname {}`; \
907 objcopy --add-gnu-debuglink=`basename {}`.debug \
908 --strip-debug `basename {}`'
909
910 pushd %{temp_modules}
911 find %{kversion}-$debug_flavour-%{buildrpmrel}/kernel \
912 -name "*.ko.debug" > debug_module_list
913 popd
914 cat %{temp_modules}/debug_module_list | \
915 sed 's|\(.*\)|%{_modulesdir}/\1|' >> $kernel_debug_files
916 cat %{temp_modules}/debug_module_list | \
917 sed 's|\(.*\)|%exclude %{_modulesdir}/\1|' \
918 >> ../kernel_exclude_debug_files.$debug_flavour
919 rm -f %{temp_modules}/debug_module_list
920 }
921
922 CreateFiles() {
923 kernel_flavour=$1
924
925 kernel_files=../kernel_files.$kernel_flavour
926
927 ### Create the kernel_files.*
928 cat > $kernel_files <<EOF
929 %defattr(-,root,root)
930 %{_bootdir}/System.map-%{kversion}-$kernel_flavour-%{buildrpmrel}
931 %{_bootdir}/symvers-%{kversion}-$kernel_flavour-%{buildrpmrel}.gz
932 %{_bootdir}/config-%{kversion}-$kernel_flavour-%{buildrpmrel}
933 %{_bootdir}/vmlinuz-%{kversion}-$kernel_flavour-%{buildrpmrel}
934 %dir %{_modulesdir}/%{kversion}-$kernel_flavour-%{buildrpmrel}/
935 %{_modulesdir}/%{kversion}-$kernel_flavour-%{buildrpmrel}/kernel
936 %{_modulesdir}/%{kversion}-$kernel_flavour-%{buildrpmrel}/modules.*
937 %doc README.kernel-sources
938 EOF
939
940 %if %build_debug
941 cat ../kernel_exclude_debug_files.$kernel_flavour >> $kernel_files
942 %endif
943
944 ### Create kernel Post script
945 cat > $kernel_files-post <<EOF
946 /sbin/installkernel %{kversion}-$kernel_flavour-%{buildrpmrel}
947 pushd /boot > /dev/null
948 if [ -L vmlinuz-$kernel_flavour ]; then
949 rm -f vmlinuz-$kernel_flavour
950 fi
951 ln -sf vmlinuz-%{kversion}-$kernel_flavour-%{buildrpmrel} vmlinuz-$kernel_flavour
952 if [ -L initrd-$kernel_flavour.img ]; then
953 rm -f initrd-$kernel_flavour.img
954 fi
955 ln -sf initrd-%{kversion}-$kernel_flavour-%{buildrpmrel}.img initrd-$kernel_flavour.img
956 popd > /dev/null
957 %if %build_devel
958 # create kernel-devel symlinks if matching -devel- rpm is installed
959 if [ -d /usr/src/linux-%{kversion}-$kernel_flavour-%{buildrpmrel} ]; then
960 rm -f /lib/modules/%{kversion}-$kernel_flavour-%{buildrpmrel}/{build,source}
961 ln -sf /usr/src/linux-%{kversion}-$kernel_flavour-%{buildrpmrel} /lib/modules/%{kversion}-$kernel_flavour-%{buildrpmrel}/build
962 ln -sf /usr/src/linux-%{kversion}-$kernel_flavour-%{buildrpmrel} /lib/modules/%{kversion}-$kernel_flavour-%{buildrpmrel}/source
963 fi
964 %endif
965 %if %build_source
966 # create kernel-source symlinks only if matching -devel- rpm is not installed
967 if [ -d /usr/src/linux-%{kversion}-%{buildrpmrel} -a ! -d /usr/src/linux-%{kversion}-$kernel_flavour-%{buildrpmrel} ]; then
968 rm -f /lib/modules/%{kversion}-$kernel_flavour-%{buildrpmrel}/{build,source}
969 ln -sf /usr/src/linux-%{kversion}-%{buildrpmrel} /lib/modules/%{kversion}-$kernel_flavour-%{buildrpmrel}/build
970 ln -sf /usr/src/linux-%{kversion}-%{buildrpmrel} /lib/modules/%{kversion}-$kernel_flavour-%{buildrpmrel}/source
971 fi
972 %endif
973 EOF
974
975
976 ### Create kernel Preun script on the fly
977 cat > $kernel_files-preun <<EOF
978 /sbin/installkernel -R %{kversion}-$kernel_flavour-%{buildrpmrel}
979 pushd /boot > /dev/null
980 if [ -L vmlinuz-$kernel_flavour ]; then
981 if [ "$(readlink vmlinuz-$kernel_flavour)" = "vmlinuz-%{kversion}-$kernel_flavour-%{buildrpmrel}" ]; then
982 rm -f vmlinuz-$kernel_flavour
983 fi
984 fi
985 if [ -L initrd-$kernel_flavour.img ]; then
986 if [ "$(readlink initrd-$kernel_flavour.img)" = "initrd-%{kversion}-$kernel_flavour-%{buildrpmrel}.img" ]; then
987 rm -f initrd-$kernel_flavour.img
988 fi
989 fi
990 popd > /dev/null
991 %if %build_devel
992 if [ -L /lib/modules/%{kversion}-$kernel_flavour-%{buildrpmrel}/build ]; then
993 rm -f /lib/modules/%{kversion}-$kernel_flavour-%{buildrpmrel}/build
994 fi
995 if [ -L /lib/modules/%{kversion}-$kernel_flavour-%{buildrpmrel}/source ]; then
996 rm -f /lib/modules/%{kversion}-$kernel_flavour-%{buildrpmrel}/source
997 fi
998 %endif
999 exit 0
1000 EOF
1001
1002
1003 ### Create kernel Postun script on the fly
1004 cat > $kernel_files-postun <<EOF
1005 /sbin/kernel_remove_initrd %{kversion}-$kernel_flavour-%{buildrpmrel}
1006 EOF
1007 }
1008
1009
1010 CreateKernel() {
1011 flavour=$1
1012
1013 PrepareKernel $flavour $flavour-%{buildrpmrel}
1014
1015 BuildKernel %{kversion}-$flavour-%{buildrpmrel}
1016 %if %build_devel
1017 SaveDevel $flavour
1018 %endif
1019 %if %build_debug
1020 SaveDebug $flavour
1021 %endif
1022 CreateFiles $flavour
1023 }
1024
1025
1026 ###
1027 # DO it...
1028 ###
1029
1030
1031 # Create a simulacro of buildroot
1032 rm -rf %{temp_root}
1033 install -d %{temp_root}
1034
1035
1036 #make sure we are in the directory
1037 cd %src_dir
1038
1039 %ifarch %{ix86}
1040 %if %build_desktop586
1041 CreateKernel desktop586
1042 %endif
1043 %endif
1044
1045 %if %build_desktop
1046 CreateKernel desktop
1047 %endif
1048
1049 %if %build_netbook
1050 CreateKernel netbook
1051 %endif
1052
1053 %if %build_server
1054 CreateKernel server
1055 %endif
1056
1057
1058 # We don't make to repeat the depend code at the install phase
1059 %if %build_source
1060 PrepareKernel "" %{buildrpmrel}custom
1061 %smake -s mrproper
1062 %endif
1063
1064
1065 ###
1066 ### install
1067 ###
1068 %install
1069 install -m 644 %{SOURCE4} .
1070
1071 cd %src_dir
1072
1073 # Directories definition needed for installing
1074 %define target_source %{buildroot}%{_kerneldir}
1075 %define target_boot %{buildroot}%{_bootdir}
1076 %define target_modules %{buildroot}%{_modulesdir}
1077
1078 # We want to be able to test several times the install part
1079 rm -rf %{buildroot}
1080 cp -a %{temp_root} %{buildroot}
1081
1082 # Create directories infastructure
1083 %if %build_source
1084 install -d %{target_source}
1085
1086 tar cf - . | tar xf - -C %{target_source}
1087 chmod -R a+rX %{target_source}
1088
1089 # we remove all the source files that we don't ship
1090 # first architecture files
1091 for i in alpha arm arm26 avr32 blackfin cris frv h8300 ia64 m32r m68knommu \
1092 microblaze mips parisc s390 score sh sh64 tile v850 xtensa mn10300; do
1093 rm -rf %{target_source}/arch/$i
1094 done
1095
1096 # ppc needs only m68k headers
1097 rm -rf %{target_source}/arch/m68k
1098
1099 %ifnarch ppc powerpc
1100 rm -rf %{target_source}/arch/ppc
1101 rm -rf %{target_source}/arch/powerpc
1102 %endif
1103 %ifnarch sparc sparc64
1104 rm -rf %{target_source}/arch/sparc
1105 rm -rf %{target_source}/arch/sparc64
1106 %endif
1107 %ifnarch %{ix86} x86_64
1108 rm -rf %{target_source}/arch/x86
1109 %endif
1110
1111 # other misc files
1112 rm -f %{target_source}/{.config.old,.config.cmd,.gitignore,.lst,.mailmap}
1113 rm -f %{target_source}/{.missing-syscalls.d,arch/.gitignore,firmware/.gitignore}
1114
1115 #endif %build_source
1116 %endif
1117
1118 # gzipping modules
1119 find %{target_modules} -name "*.ko" | %kxargs gzip -9
1120
1121 # We used to have a copy of PrepareKernel here
1122 # Now, we make sure that the thing in the linux dir is what we want it to be
1123 for i in %{target_modules}/*; do
1124 rm -f $i/build $i/source
1125 done
1126
1127 # sniff, if we gzipped all the modules, we change the stamp :(
1128 # we really need the depmod -ae here
1129 pushd %{target_modules}
1130 for i in *; do
1131 /sbin/depmod -u -ae -b %{buildroot} -r -F %{target_boot}/System.map-$i $i
1132 echo $?
1133 done
1134
1135 for i in *; do
1136 pushd $i
1137 echo "Creating modules.description for $i"
1138 modules=`find . -name "*.ko.gz"`
1139 echo $modules | %kxargs /sbin/modinfo \
1140 | perl -lne 'print "$name\t$1" if $name && /^description:\s*(.*)/; $name = $1 if m!^filename:\s*(.*)\.k?o!; $name =~ s!.*/!!' > modules.description
1141 popd
1142 done
1143 popd
1144
1145
1146 ###
1147 ### clean
1148 ###
1149 %clean
1150 rm -rf %{buildroot}
1151
1152
1153 # We don't want to remove this, the whole reason of its existence is to be
1154 # able to do several rpm --short-circuit -bi for testing install
1155 # phase without repeating compilation phase
1156 #rm -rf %{temp_root}
1157
1158 ###
1159 ### source and doc file lists
1160 ###
1161
1162 %if %build_source
1163 %files -n %{kname}-source-%{buildrel}
1164 %defattr(-,root,root)
1165 %dir %{_kerneldir}
1166 %dir %{_kerneldir}/arch
1167 %dir %{_kerneldir}/include
1168 %{_kerneldir}/3rdparty
1169 %{_kerneldir}/Documentation
1170 %{_kerneldir}/arch/Kconfig
1171 %ifarch powerpc ppc
1172 %{_kerneldir}/arch/powerpc
1173 %{_kerneldir}/arch/ppc
1174 %endif
1175 %ifarch sparc sparc64
1176 %{_kerneldir}/arch/sparc
1177 %{_kerneldir}/arch/sparc64
1178 %endif
1179 %{_kerneldir}/arch/um
1180 %ifarch %{ix86} x86_64
1181 %{_kerneldir}/arch/x86
1182 %endif
1183 %{_kerneldir}/block
1184 %{_kerneldir}/crypto
1185 %{_kerneldir}/drivers
1186 %{_kerneldir}/firmware
1187 %{_kerneldir}/fs
1188 %{_kerneldir}/include/Kbuild
1189 %{_kerneldir}/include/acpi
1190 %{_kerneldir}/include/asm-generic
1191 %ifarch powerpc ppc
1192 %{_kerneldir}/include/m68k
1193 %{_kerneldir}/include/powerpc
1194 %{_kerneldir}/include/ppc
1195 %endif
1196 %{_kerneldir}/include/crypto
1197 %{_kerneldir}/include/drm
1198 %{_kerneldir}/include/keys
1199 %{_kerneldir}/include/linux
1200 %{_kerneldir}/include/math-emu
1201 %{_kerneldir}/include/media
1202 %{_kerneldir}/include/mtd
1203 %{_kerneldir}/include/net
1204 %{_kerneldir}/include/pcmcia
1205 %{_kerneldir}/include/rdma
1206 %{_kerneldir}/include/rxrpc
1207 %{_kerneldir}/include/scsi
1208 %{_kerneldir}/include/sound
1209 %{_kerneldir}/include/target
1210 %{_kerneldir}/include/trace
1211 %{_kerneldir}/include/video
1212 %{_kerneldir}/include/xen
1213 %{_kerneldir}/init
1214 %{_kerneldir}/ipc
1215 %{_kerneldir}/kernel
1216 %{_kerneldir}/lib
1217 %{_kerneldir}/mm
1218 %{_kerneldir}/net
1219 %{_kerneldir}/virt
1220 %{_kerneldir}/samples
1221 %{_kerneldir}/scripts
1222 %{_kerneldir}/security
1223 %{_kerneldir}/sound
1224 %{_kerneldir}/tools
1225 %{_kerneldir}/usr
1226 %{_kerneldir}/COPYING
1227 %{_kerneldir}/CREDITS
1228 %{_kerneldir}/Kbuild
1229 %{_kerneldir}/Kconfig
1230 %{_kerneldir}/MAINTAINERS
1231 %{_kerneldir}/Makefile
1232 %{_kerneldir}/README
1233 %{_kerneldir}/REPORTING-BUGS
1234 %doc README.kernel-sources
1235
1236 %files -n %{kname}-source-latest
1237 %defattr(-,root,root)
1238 %endif
1239
1240 %if %build_doc
1241 %files -n %{kname}-doc
1242 %defattr(-,root,root)
1243 %doc linux-%{tar_ver}/Documentation/*
1244 %endif
1245

  ViewVC Help
Powered by ViewVC 1.1.30