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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 79847 - (hide annotations) (download)
Sat Apr 2 19:21:26 2011 UTC (13 years ago) by tmb
File size: 36900 byte(s)
SILENT: fix typo
1 tmb 1214 # -*- 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 tmb 74958 %define sublevel 38
13 tmb 1214
14     # Package release
15 tmb 79845 %define mgarel 2
16 tmb 1214
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 tmb 78345 %define kstable 2
22 tmb 1214 # 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 tmb 79847 %define ktag mga
34 tmb 1214
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 tmb 77904 # Build netbook (i586 / 4GB) / x86_64
109     %define build_netbook 1
110    
111 tmb 1214 # 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 tmb 77904 %{?_without_netbook: %global build_netbook 0}
118 tmb 1214 %{?_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 tmb 77904 %{?_with_netbook: %global build_netbook 1}
127 tmb 1214 %{?_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 tmb 7510 ExclusiveArch: %{ix86} x86_64
164 tmb 1214 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 tmb 38796 %define requires5 kernel-firmware >= 20101024-2
239 tmb 1214
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 tmb 77904 # 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 tmb 1214 # 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 tmb 79821 Provides: kernel-source = %{kverrel}
500 tmb 1214 %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 tmb 60143 # aufs2 has a special file needed
761     cp -fR fs/aufs/magic.mk $TempDevelRoot/fs/aufs
762    
763 tmb 1214 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 tmb 74925 $DevelRoot/include/target
843 tmb 1214 $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 tmb 77904 %if %build_netbook
1050     CreateKernel netbook
1051     %endif
1052    
1053 tmb 1214 %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 tmb 74925 %{_kerneldir}/include/target
1210 tmb 1214 %{_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