]> git.pld-linux.org Git - packages/kernel.git/blame - kernel.spec
- adjust aufs internals for compatibility with vserver
[packages/kernel.git] / kernel.spec
CommitLineData
a7313793 1#
8ad00cb1
ER
2# LATEST VERSION CHECKER:
3# # curl -s http://www.kernel.org/kdist/finger_banner
4#
a5585a68 5# TODO:
351f379b 6# - benchmark NO_HZ & HZ=1000 vs HZ=300 on i686
9a1672a0
JR
7# - IPv4 source address selection for multihomed vservers is completely broken
8# meaning routing table is ignored except for default
351f379b 9#
fc5a68a2
AM
10# HOWTO update configuration files:
11# - run build
12# - add new options to proper config (kernel-multiarch.config, kernel-x86.config, kernel-powerpc.config etc)
13# - sort configuration files using:
ee5dc1b8 14# ./kernel-config-sort.pl ~/rpm/BUILD/kernel-%{version}/linux-%{version}/ -a x86 kernel-x86.config
fc5a68a2 15# ./kernel-config-sort.pl ~/rpm/BUILD/kernel-%{version}/linux-%{version} kernel-multiarch.config
a5585a68
AM
16#
17# Conditional build:
a5585a68 18%bcond_without source # don't build kernel-source package
1848fd38 19%bcond_without doc # don't build kernel-doc package
351f379b
JR
20%bcond_without pcmcia # don't build pcmcia
21
a5585a68 22%bcond_with verbose # verbose build (V=1)
03de6725 23%bcond_with reiser4 # support for reiser4 fs (experimental)
351f379b 24
351f379b 25%bcond_with fbcondecor # build fbcondecor (disable FB_TILEBLITTING and affected fb modules)
bacfcd36 26%bcond_without pae # build PAE (HIGHMEM64G) support on 32bit i686 athlon pentium3 pentium4
351f379b
JR
27%bcond_with nfsroot # build with root on NFS support
28
7f07242b 29%bcond_without imq # imq support
1b75c2b4 30%bcond_without esfq # esfq support
351f379b 31%bcond_without ipv6 # ipv6 support
101a7448 32%bcond_with padmcrypt # parallel dm-crypt
351f379b
JR
33
34%bcond_without vserver # support for VServer (enabled by default)
351f379b 35
7141a3b6 36%bcond_with vanilla # don't include any patches
351f379b 37%bcond_with rescuecd # build kernel for our rescue
351f379b 38%bcond_with myown # build with your own config (kernel-myown.config)
a5585a68
AM
39
40%{?debug:%define with_verbose 1}
41
351f379b
JR
42%define have_drm 1
43%define have_oss 1
44%define have_sound 1
101ae904 45%define have_pcmcia 1
351f379b
JR
46
47%if %{with rescuecd}
b488384f 48%unglobal with_vserver
351f379b
JR
49%define have_drm 0
50%define have_sound 0
51%endif
52
101ae904 53%if %{with myown}
54%define have_drm 0
55%define have_oss 0
56%define have_sound 0
57%define have_pcmcia 0
351f379b
JR
58%endif
59
60%ifarch sparc sparc64
b488384f 61%unglobal with_pcmcia
351f379b
JR
62%define have_drm 0
63%define have_oss 0
64%endif
65
101ae904 66%if %{without pcmcia}
67%define have_pcmcia 0
68%endif
69
c06a8ce3
AM
70%define rel 0.1
71%define basever 3.10
2c2418a7 72%define postver .9
a5585a68 73
1fb73fcf
ER
74# __alt_kernel is list of features, empty string if none set
75# _alt kernel is defined as: %{nil}%{?alt_kernel:-%{?alt_kernel}} (defined in rpm.macros)
76# alt_kernel should be defined if __alt_kernel has non-empty value (for %{?alt_kernel:foo} constructs)
473f3855 77%define __alt_kernel %{nil}
b2615ca0 78
ff48aee0 79%if "%{__alt_kernel}" != ""
b2615ca0 80%define alt_kernel %{__alt_kernel}
ff48aee0
ER
81%endif
82
83# these override whatever name was picked from bconds
1fb73fcf 84%if %{with myown} && "%{_alt_kernel}" == ""
101ae904 85%define alt_kernel myown
351f379b 86%endif
06936f6f 87%if %{with rescuecd}
88%define alt_kernel rescuecd
351f379b 89%endif
ff48aee0
ER
90%if %{with vanilla}
91%define alt_kernel vanilla
b2615ca0 92%endif
351f379b
JR
93
94# kernel release (used in filesystem and eventually in uname -r)
95# modules will be looked from /lib/modules/%{kernel_release}
96# localversion is just that without version for "> localversion"
97%define localversion %{rel}
1401be4b 98%define kernel_release %{version}%{?alt_kernel:.%{alt_kernel}}-%{localversion}
a5585a68
AM
99
100Summary: The Linux kernel (the core of the Linux operating system)
351f379b
JR
101Summary(de.UTF-8): Der Linux-Kernel (Kern des Linux-Betriebssystems)
102Summary(et.UTF-8): Linuxi kernel (ehk operatsioonisüsteemi tuum)
103Summary(fr.UTF-8): Le Kernel-Linux (La partie centrale du systeme)
104Summary(pl.UTF-8): Jądro Linuksa
1fb73fcf 105Name: kernel%{_alt_kernel}
351f379b
JR
106Version: %{basever}%{postver}
107Release: %{rel}
a5585a68 108Epoch: 3
c491b43b 109License: GPL v2
a5585a68 110Group: Base/Kernel
d039881e 111Source0: http://www.kernel.org/pub/linux/kernel/v3.x/linux-%{basever}.tar.xz
c06a8ce3 112# Source0-md5: 4f25cd5bec5f8d5a7d935b3f2ccb8481
4d8c31dd 113%if "%{postver}" != ".0"
cc4361d4 114Patch0: http://www.kernel.org/pub/linux/kernel/v3.x/patch-%{version}.xz
2c2418a7 115# Patch0-md5: 868d7f5315f95da5e48ed56691a36263
351f379b 116%endif
5aeaa3c2 117Source1: kernel.sysconfig
351f379b
JR
118
119Source3: kernel-autoconf.h
120Source4: kernel-config.h
351f379b
JR
121Source6: kernel-config.awk
122Source7: kernel-module-build.pl
123Source8: kernel-track-config-change.awk
124# not used by kernel.spec, but it's good to have it in SOURCES
125Source9: kernel-config-sort.pl
126Source10: kernel.make
127
128Source20: kernel-multiarch.config
129Source21: kernel-x86.config
130Source22: kernel-sparc.config
5a99ae3d 131Source23: kernel-alpha.config
132Source24: kernel-powerpc.config
133Source25: kernel-ia64.config
351f379b 134
351f379b 135Source41: kernel-patches.config
351f379b 136Source43: kernel-vserver.config
351f379b 137
351f379b
JR
138Source55: kernel-imq.config
139Source56: kernel-reiser4.config
351f379b
JR
140
141Source58: kernel-inittmpfs.config
351f379b 142
351f379b
JR
143# http://dev.gentoo.org/~spock/projects/fbcondecor/archive/fbcondecor-0.9.4-2.6.25-rc6.patch
144Patch3: kernel-fbcondecor.patch
60bb736d 145Patch4: kernel-fbcon-margins.patch
1414594b 146Patch5: linux-wistron-amilo8210.patch
351f379b
JR
147
148# netfilter related stuff mostly based on patch-o-matic-ng
17da405a 149# snapshot 20070806 with some fixes. Some modules
e69c45e8 150# were ported to nf_conntrack.
351f379b
JR
151
152Patch10: kernel-pom-ng-IPV4OPTSSTRIP.patch
351f379b 153
351f379b
JR
154# http://ftp.linux-vserver.org/pub/people/dhozac/p/k/delta-owner-xid-feat02.diff
155Patch37: kernel-owner-xid.patch
156
351f379b
JR
157# based on kernel-2.6.25-layer7-2.20.patch from
158# http://switch.dl.sourceforge.net/sourceforge/l7-filter/netfilter-layer7-v2.20.tar.gz
159Patch40: kernel-layer7.patch
160
351f379b
JR
161### End netfilter
162
163# http://zph.bratcheda.org/linux-2.6.26.3-zph.patch
164Patch49: kernel-zph.patch
165
514e5dae
AM
166# http://www.linuximq.net
167# http://tech.groups.yahoo.com/group/linuximq/message/3096
351f379b
JR
168Patch50: kernel-imq.patch
169
9e2e7385
AM
170Patch51: http://downloads.sourceforge.net/project/reiser4/reiser4-for-linux-3.x/reiser4-for-3.10.patch.gz
171# Patch51-md5: 5af1bdc286a88ef79268337c7ff17508
351f379b 172
351f379b 173# http://fatooh.org/esfq-2.6/sfq-2.6.24.1.tar.bz2
60bb736d 174Patch53: kernel-esfq.patch
351f379b 175
351f379b
JR
176# by Baggins request:
177# derived from ftp://ftp.cmf.nrl.navy.mil/pub/chas/linux-atm/vbr/vbr-kernel-diffs
60bb736d
JR
178Patch55: kernel-atm-vbr.patch
179Patch56: kernel-atmdd.patch
351f379b 180
351f379b
JR
181# http://synce.svn.sourceforge.net/svnroot/synce/trunk/patches/linux-2.6.22-rndis_host-wm5.patch
182Patch59: kernel-rndis_host-wm5.patch
183
351f379b
JR
184# adds some ids for hostap suported cards and monitor_enable from/for aircrack-ng
185# http://patches.aircrack-ng.org/hostap-kernel-2.6.18.patch
60bb736d 186Patch85: kernel-hostap.patch
351f379b 187
8bbd80b3
MGB
188# http://www.linuxtv.org/wiki/index.php/TechniSat_CableStar_Combo_HD_CI#Patch
189Patch90: kernel-technisat-combo-hd-ci.patch
190
c2b27bf2 191# http://vserver.13thfloor.at/Experimental/patch-3.10.9-vs2.3.6.6.diff
9f25dc6a
AM
192# note there are additional patches from above url:
193# - *fix* are real fixes (we want these)
194# - *feat* are new features/tests (we don't want these)
01d3b055 195Patch100: kernel-vserver-2.3.patch
351f379b
JR
196Patch101: kernel-vserver-fixes.patch
197
68184a5a
JR
198# git clone git://kernel.opensuse.org/kernel-source.git
199# patches.suse/ovl*
200Patch110: ovl01-vfs-add-i_op-dentry_open.patch
201Patch111: ovl02-vfs-export-do_splice_direct-to-modules.patch
c06a8ce3
AM
202Patch112: ovl03-vfs-export-inode_permission-to-modules.patch
203Patch113: ovl04-vfs-introduce-clone_private_mount.patch
204Patch114: ovl05-overlay-filesystem.patch
205Patch115: ovl06-overlayfs-add-statfs-support.patch
206Patch116: ovl07-overlayfs-implement-show_options.patch
207Patch117: ovl08-overlay-overlay-filesystem-documentation.patch
208Patch118: ovl09-fs-limit-filesystem-stacking-depth.patch
351f379b 209
53392da6 210# git://aufs.git.sourceforge.net/gitroot/aufs/aufs3-standalone.git, read README
b752ccd1 211# Patch creation:
53392da6
AM
212# git clone git://aufs.git.sourceforge.net/gitroot/aufs/aufs3-standalone.git
213# cd aufs3-standalone
367653fa 214# git checkout -b aufs3.10 origin/aufs3.10
53392da6 215# cat aufs3-kbuild.patch aufs3-base.patch aufs3-standalone.patch > ~/rpm/packages/kernel/kernel-aufs3.patch
b752ccd1
AM
216# mkdir linux
217# cp -a Documentation fs include linux
d14e0f73 218# diff -urN /usr/share/empty linux >> ~/rpm/packages/kernel/kernel-aufs3.patch
7ce627cf 219# drop hunk at the end of patch (hunk is patching include/linux/Kbuild with single line change)
0c5527e5 220#
53392da6 221Patch145: kernel-aufs3.patch
ff3e50f1 222Patch146: kernel-aufs3+vserver.patch
a899ef35 223
54fd642e 224# Show normal colors in menuconfig with ncurses ABI 6
225Patch250: kernel-fix_256colors_menuconfig.patch
226
31f62932
AM
227# https://patchwork.kernel.org/patch/236261/
228Patch400: kernel-virtio-gl-accel.patch
229
101a7448
ŁK
230# http://people.redhat.com/mpatocka/patches/kernel/dm-crypt-paralelizace/current/series.html
231Patch500: dm-crypt-remove-percpu.patch
232Patch501: dm-crypt-unbound-workqueue.patch
233Patch502: dm-crypt-dont-allocate-partial-pages.patch
234Patch503: dm-crypt-fix-allocation-deadlock.patch
235Patch504: dm-crypt-offload-writes-to-thread.patch
236Patch505: dm-crypt-sort-requests.patch
237
08aa9d92 238Patch2000: kernel-small_fixes.patch
60bb736d 239Patch2001: kernel-pwc-uncompress.patch
351f379b
JR
240Patch2003: kernel-regressions.patch
241
2dfbb274 242# http://git.kernel.org/?p=linux/kernel/git/jj/linux-apparmor.git;a=shortlog;h=refs/heads/v3.5-aa2.8
351f379b 243Patch5000: kernel-apparmor.patch
351f379b
JR
244
245# for rescuecd
48ead238 246# based on ftp://ftp.leg.uct.ac.za/pub/linux/rip/tmpfs_root-2.6.30.diff.gz
351f379b
JR
247Patch7000: kernel-inittmpfs.patch
248
73cc1c57 249# Do not remove this line, please. It is easier for me to uncomment two lines, then patch
250# kernel.spec every time.
251#Patch50000: kernel-usb_reset.patch
252
a5585a68 253URL: http://www.kernel.org/
351f379b 254BuildRequires: binutils >= 3:2.18
a5585a68
AM
255%ifarch sparc sparc64
256BuildRequires: elftoaout
257%endif
351f379b
JR
258%ifarch ppc
259BuildRequires: uboot-mkimage
260%endif
351f379b
JR
261BuildRequires: /sbin/depmod
262BuildRequires: gcc >= 5:3.2
cfce203c 263BuildRequires: xz >= 1:4.999.7
e69c45e8 264AutoReqProv: no
d80d232c 265BuildRequires: hostname
68184a5a 266BuildRequires: kmod
a5585a68 267BuildRequires: perl-base
b488384f 268BuildRequires: rpm-build >= 4.5-24
7b6fa769 269BuildRequires: rpmbuild(macros) >= 1.652
351f379b
JR
270Requires(post): coreutils
271Requires(post): geninitrd >= 10000-3
621dfa8b 272Requires(post): kmod >= 12-2
351f379b
JR
273Requires: /sbin/depmod
274Requires: coreutils
275Requires: geninitrd >= 10000-3
621dfa8b 276Requires: kmod >= 12-2
bacfcd36
AM
277%if %{with pae}
278%ifarch i686 athlon pentium3 pentium4
279Requires: cpuinfo(pae)
280%endif
281%endif
59c3e314 282Suggests: crda
54f0effc 283Suggests: dracut
b75546f3 284Suggests: keyutils
af560d0f 285Suggests: linux-firmware
52e5f3df 286Provides: %{name}(netfilter) = 20070806
351f379b 287Provides: %{name}(vermagic) = %{kernel_release}
1fb73fcf
ER
288Obsoletes: kernel%{_alt_kernel}-char-lirc-ene0100
289Obsoletes: kernel%{_alt_kernel}-char-lirc-it87
290Obsoletes: kernel%{_alt_kernel}-char-lirc-ite8709
291Obsoletes: kernel%{_alt_kernel}-char-lirc-mceusb
292Obsoletes: kernel%{_alt_kernel}-char-lirc-streamzap
d14e0f73 293Obsoletes: kernel%{_alt_kernel}-isdn-mISDN
26b1ceeb 294Obsoletes: kernel-firmware
351f379b
JR
295Obsoletes: kernel-misc-acer_acpi
296Obsoletes: kernel-misc-fuse
297Obsoletes: kernel-misc-uvc
a5585a68 298Obsoletes: kernel-modules
351f379b
JR
299Obsoletes: kernel-net-ar81
300Obsoletes: kernel-net-hostap
301Obsoletes: kernel-net-ieee80211
302Obsoletes: kernel-net-ipp2p
303Obsoletes: kernel-net-rt61
304Obsoletes: kernel-smp
305Conflicts: e2fsprogs < 1.29
306Conflicts: isdn4k-utils < 3.1pre1
307Conflicts: jfsutils < 1.1.3
af560d0f 308Conflicts: linux-firmware < 20120720
cf8de22f 309Conflicts: lvm2 < 2.02.40
8fe4cdc5 310Conflicts: module-init-tools < 3.16
351f379b
JR
311Conflicts: nfs-utils < 1.0.5
312Conflicts: oprofile < 0.9
313Conflicts: ppp < 1:2.4.0
314Conflicts: procps < 3.2.0
315Conflicts: quota-tools < 3.09
4dabe329 316%{?with_reiserfs4:Conflicts: reiser4progs < 1.0.0}
351f379b 317Conflicts: reiserfsprogs < 3.6.3
4dabe329 318Conflicts: rpm < 4.4.2-0.2
351f379b
JR
319Conflicts: udev < 1:081
320Conflicts: util-linux < 2.10o
d3c4e01e 321Conflicts: util-vserver < 0.30.216
351f379b 322Conflicts: xfsprogs < 2.6.0
0ed05467 323ExclusiveArch: i486 i586 i686 pentium3 pentium4 athlon %{x8664} alpha arm ia64 ppc ppc64 sparc sparc64
a5585a68
AM
324ExclusiveOS: Linux
325BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
326
351f379b
JR
327%ifarch %{ix86} %{x8664}
328%define target_arch_dir x86
329%endif
330%ifarch ppc ppc64
331%define target_arch_dir powerpc
332%endif
5a99ae3d 333%ifarch sparc sparc64
334%define target_arch_dir sparc
335%endif
336%ifnarch %{ix86} %{x8664} ppc ppc64 sparc sparc64
351f379b
JR
337%define target_arch_dir %{_target_base_arch}
338%endif
339
340%define defconfig arch/%{target_arch_dir}/defconfig
341
342# No ELF objects there to strip (skips processing 27k files)
ded910ba 343%define _noautostrip \\(.*%{_kernelsrcdir}/.*\\|.*/vmlinux.*\\)
351f379b 344%define _noautochrpath .*%{_kernelsrcdir}/.*
b36a2f6d 345%define _enable_debug_packages 0
351f379b 346
a5585a68
AM
347%ifarch ia64
348%define initrd_dir /boot/efi
349%else
350%define initrd_dir /boot
351%endif
352
351f379b 353%define topdir %{_builddir}/%{name}-%{version}
67d87e28 354%define srcdir %{topdir}/linux-%{basever}
351f379b
JR
355%define objdir %{topdir}/%{targetobj}
356%define targetobj %{_target_base_arch}-gcc-%(%{kgcc} -dumpversion)
357
1fb73fcf 358%define _kernelsrcdir /usr/src/linux%{_alt_kernel}-%{version}
351f379b 359
7b6fa769 360%if "%{_target_base_arch}" != "%{_host_base_arch}"
351f379b
JR
361 %define CrossOpts ARCH=%{_target_base_arch} CROSS_COMPILE=%{_target_cpu}-pld-linux-
362 %define DepMod /bin/true
363
7b6fa769 364 %if "%{_host_base_arch}" == "sparc" && "%{_target_base_arch}" == "sparc64"
351f379b
JR
365 %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
366 %define DepMod /sbin/depmod
367 %endif
368
7b6fa769 369 %if "%{_host_base_arch}" == "sparc64" && "%{_target_base_arch}" == "sparc"
351f379b
JR
370 %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
371 %define DepMod /sbin/depmod
372 %endif
373
7b6fa769 374 %if "%{_host_base_arch}" == "x86_64" && "%{_target_base_arch}" == "i386"
351f379b
JR
375 %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
376 %define DepMod /sbin/depmod
377 %endif
378
5a99ae3d 379 %if "%{_target_base_arch}" == "ppc" || "%{_target_base_arch}" == "ppc64"
351f379b
JR
380 %define CrossOpts ARCH=powerpc CROSS_COMPILE=%{_target_cpu}-pld-linux-
381 %endif
382%else
383 %ifarch ppc ppc64
384 %define CrossOpts ARCH=powerpc CC="%{__cc}"
385 %else
386 %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
387 %endif
388 %define DepMod /sbin/depmod
389%endif
390%define MakeOpts %{CrossOpts} HOSTCC="%{__cc}"
391
52e5f3df 392%define __features \
351f379b
JR
393%{?with_fbcondecor:Fbsplash/fbcondecor - enabled }\
394%{?with_nfsroot:Root on NFS - enabled}\
351f379b
JR
395
396%define Features %(echo "%{__features}" | sed '/^$/d')
397
a5585a68
AM
398%description
399This package contains the Linux kernel that is used to boot and run
400your system. It contains few device drivers for specific hardware.
401Most hardware is instead supported by modules loaded after booting.
402
351f379b
JR
403%{Features}
404
3a467bc1
JR
405%description -l de.UTF-8
406Das Kernel-Paket enthält den Linux-Kernel (vmlinuz), den Kern des
407Linux-Betriebssystems. Der Kernel ist für grundliegende
a5585a68 408Systemfunktionen verantwortlich: Speicherreservierung,
3a467bc1 409Prozeß-Management, Geräte Ein- und Ausgaben, usw.
a5585a68 410
351f379b
JR
411%{Features}
412
3a467bc1 413%description -l fr.UTF-8
a5585a68 414Le package kernel contient le kernel linux (vmlinuz), la partie
3a467bc1
JR
415centrale d'un système d'exploitation Linux. Le noyau traite les
416fonctions basiques d'un système d'exploitation: allocation mémoire,
417allocation de process, entrée/sortie de peripheriques, etc.
a5585a68 418
351f379b
JR
419%{Features}
420
3a467bc1
JR
421%description -l pl.UTF-8
422Pakiet zawiera jądro Linuksa niezbędne do prawidłowego działania
423Twojego komputera. Zawiera w sobie sterowniki do sprzętu znajdującego
424się w komputerze, takiego jak sterowniki dysków itp.
a5585a68 425
351f379b
JR
426%{Features}
427
428%package vmlinux
429Summary: vmlinux - uncompressed kernel image
430Summary(de.UTF-8): vmlinux - dekompressiertes Kernel Bild
431Summary(pl.UTF-8): vmlinux - rozpakowany obraz jądra
432Group: Base/Kernel
433Obsoletes: kernel-smp-vmlinux
434
435%description vmlinux
436vmlinux - uncompressed kernel image.
437
438%description vmlinux -l de.UTF-8
439vmlinux - dekompressiertes Kernel Bild.
440
441%description vmlinux -l pl.UTF-8
442vmlinux - rozpakowany obraz jądra.
443
a5585a68
AM
444%package drm
445Summary: DRM kernel modules
351f379b
JR
446Summary(de.UTF-8): DRM Kernel Treiber
447Summary(pl.UTF-8): Sterowniki DRM
a5585a68 448Group: Base/Kernel
351f379b
JR
449Requires(postun): %{name} = %{epoch}:%{version}-%{release}
450Requires: %{name} = %{epoch}:%{version}-%{release}
451Obsoletes: kernel-smp-drm
07ff8614 452AutoReqProv: no
a5585a68
AM
453
454%description drm
351f379b
JR
455DRM kernel modules.
456
457%description drm -l de.UTF-8
458DRM Kernel Treiber.
a5585a68 459
3a467bc1 460%description drm -l pl.UTF-8
351f379b 461Sterowniki DRM.
a5585a68
AM
462
463%package pcmcia
464Summary: PCMCIA modules
351f379b
JR
465Summary(de.UTF-8): PCMCIA Module
466Summary(pl.UTF-8): Moduły PCMCIA
a5585a68 467Group: Base/Kernel
351f379b
JR
468Requires(postun): %{name} = %{epoch}:%{version}-%{release}
469Requires: %{name} = %{epoch}:%{version}-%{release}
470Obsoletes: kernel-smp-pcmcia
471Conflicts: pcmcia-cs < 3.1.21
472Conflicts: pcmciautils < 004
07ff8614 473AutoReqProv: no
a5585a68
AM
474
475%description pcmcia
351f379b
JR
476PCMCIA modules.
477
478%description pcmcia -l de.UTF-8
479PCMCIA Module.
a5585a68 480
3a467bc1 481%description pcmcia -l pl.UTF-8
351f379b
JR
482Moduły PCMCIA.
483
a5585a68
AM
484%package sound-alsa
485Summary: ALSA kernel modules
351f379b
JR
486Summary(de.UTF-8): ALSA Kernel Module
487Summary(pl.UTF-8): Sterowniki dźwięku ALSA
a5585a68 488Group: Base/Kernel
351f379b
JR
489Requires(postun): %{name} = %{epoch}:%{version}-%{release}
490Requires: %{name} = %{epoch}:%{version}-%{release}
491Obsoletes: kernel-smp-sound-alsa
07ff8614 492AutoReqProv: no
a5585a68
AM
493
494%description sound-alsa
495ALSA (Advanced Linux Sound Architecture) sound drivers.
496
351f379b
JR
497%description sound-alsa -l de.UTF-8
498ALSA (Advanced Linux Sound Architecture) Sound-Treiber.
499
3a467bc1
JR
500%description sound-alsa -l pl.UTF-8
501Sterowniki dźwięku ALSA (Advanced Linux Sound Architecture).
a5585a68
AM
502
503%package sound-oss
504Summary: OSS kernel modules
351f379b
JR
505Summary(de.UTF-8): OSS Kernel Module
506Summary(pl.UTF-8): Sterowniki dźwięku OSS
a5585a68 507Group: Base/Kernel
351f379b
JR
508Requires(postun): %{name} = %{epoch}:%{version}-%{release}
509Requires: %{name} = %{epoch}:%{version}-%{release}
510Obsoletes: kernel-smp-sound-oss
07ff8614 511AutoReqProv: no
a5585a68
AM
512
513%description sound-oss
514OSS (Open Sound System) drivers.
515
351f379b
JR
516%description sound-oss -l de.UTF-8
517OSS (Open Sound System) Treiber.
518
3a467bc1
JR
519%description sound-oss -l pl.UTF-8
520Sterowniki dźwięku OSS (Open Sound System).
a5585a68 521
a5585a68
AM
522%package headers
523Summary: Header files for the Linux kernel
351f379b
JR
524Summary(de.UTF-8): Header Dateien für den Linux-Kernel
525Summary(pl.UTF-8): Pliki nagłówkowe jądra Linuksa
526Group: Development/Building
52e5f3df 527Provides: %{name}-headers(netfilter) = 20070806
07ff8614 528AutoReqProv: no
a5585a68
AM
529
530%description headers
531These are the C header files for the Linux kernel, which define
351f379b
JR
532structures and constants that are needed when rebuilding the kernel or
533building kernel modules.
534
535%description headers -l de.UTF-8
536Dies sind die C Header Dateien für den Linux-Kernel, die definierte
537Strukturen und Konstante beinhalten, die beim rekompilieren des
538Kernels oder bei Kernel Modul kompilationen gebraucht werden.
a5585a68 539
3a467bc1
JR
540%description headers -l pl.UTF-8
541Pakiet zawiera pliki nagłówkowe jądra, niezbędne do rekompilacji jądra
542oraz budowania modułów jądra.
a5585a68
AM
543
544%package module-build
545Summary: Development files for building kernel modules
351f379b
JR
546Summary(de.UTF-8): Development Dateien die beim Kernel Modul kompilationen gebraucht werden
547Summary(pl.UTF-8): Pliki służące do budowania modułów jądra
548Group: Development/Building
a5585a68 549Requires: %{name}-headers = %{epoch}:%{version}-%{release}
7b6fa769 550Conflicts: rpmbuild(macros) < 1.652
07ff8614 551AutoReqProv: no
a5585a68
AM
552
553%description module-build
554Development files from kernel source tree needed to build Linux kernel
555modules from external packages.
556
351f379b
JR
557%description module-build -l de.UTF-8
558Development Dateien des Linux-Kernels die beim kompilieren externer
559Kernel Module gebraucht werden.
560
3a467bc1
JR
561%description module-build -l pl.UTF-8
562Pliki ze drzewa źródeł jądra potrzebne do budowania modułów jądra
563Linuksa z zewnętrznych pakietów.
a5585a68
AM
564
565%package source
566Summary: Kernel source tree
351f379b
JR
567Summary(de.UTF-8): Der Kernel Quelltext
568Summary(pl.UTF-8): Kod źródłowy jądra Linuksa
569Group: Development/Building
a5585a68 570Requires: %{name}-module-build = %{epoch}:%{version}-%{release}
07ff8614 571AutoReqProv: no
d63ae4d9
ER
572%if "%{_rpmversion}" >= "5"
573BuildArch: noarch
574%endif
a5585a68
AM
575
576%description source
351f379b
JR
577This is the source code for the Linux kernel. You can build a custom
578kernel that is better tuned to your particular hardware.
a5585a68 579
3a467bc1
JR
580%description source -l de.UTF-8
581Das Kernel-Source-Paket enthält den source code (C/Assembler-Code) des
a5585a68 582Linux-Kernels. Die Source-Dateien werden gebraucht, um viele
351f379b 583C-Programme zu kompilieren, da sie auf Konstanten zurückgreifen, die
3a467bc1 584im Kernel-Source definiert sind. Die Source-Dateien können auch
351f379b 585benutzt werden, um einen Kernel zu kompilieren, der besser auf Ihre
a5585a68
AM
586Hardware ausgerichtet ist.
587
3a467bc1 588%description source -l fr.UTF-8
a5585a68 589Le package pour le kernel-source contient le code source pour le noyau
3a467bc1
JR
590linux. Ces sources sont nécessaires pour compiler la plupart des
591programmes C, car il dépend de constantes définies dans le code
592source. Les sources peuvent être aussi utilisée pour compiler un noyau
593personnalisé pour avoir de meilleures performances sur des matériels
a5585a68
AM
594particuliers.
595
3a467bc1
JR
596%description source -l pl.UTF-8
597Pakiet zawiera kod źródłowy jądra systemu.
a5585a68
AM
598
599%package doc
600Summary: Kernel documentation
351f379b
JR
601Summary(de.UTF-8): Kernel Dokumentation
602Summary(pl.UTF-8): Dokumentacja do jądra Linuksa
603Group: Documentation
07ff8614 604AutoReqProv: no
d63ae4d9
ER
605%if "%{_rpmversion}" >= "5"
606BuildArch: noarch
607%endif
a5585a68
AM
608
609%description doc
610This is the documentation for the Linux kernel, as found in
611/usr/src/linux/Documentation directory.
612
351f379b
JR
613%description doc -l de.UTF-8
614Dies ist die Kernel Dokumentation wie sie im 'Documentation'
615Verzeichniss vorgefunden werden kann.
616
3a467bc1
JR
617%description doc -l pl.UTF-8
618Pakiet zawiera dokumentację do jądra Linuksa pochodzącą z katalogu
a5585a68
AM
619/usr/src/linux/Documentation.
620
621%prep
351f379b
JR
622%setup -qc
623ln -s %{SOURCE7} kernel-module-build.pl
624ln -s %{SOURCE10} Makefile
67d87e28 625cd linux-%{basever}
a5585a68 626
1c5b0f0a 627%if "%{postver}" != ".0"
c6897157 628%patch0 -p1
351f379b 629%endif
a5585a68 630
7141a3b6 631%if %{without vanilla}
632
351f379b
JR
633%if %{with fbcondecor}
634%patch3 -p1
a5585a68 635%endif
351f379b 636%patch4 -p1
1414594b 637%patch5 -p1
a5585a68 638
351f379b
JR
639## netfilter
640#
a5585a68 641
351f379b
JR
642# kernel-pom-ng-IPV4OPTSSTRIP.patch
643%patch10 -p1
a5585a68 644
351f379b
JR
645# kernel-owner-xid.patch
646%if %{with vserver}
647%patch37 -p1
a5585a68 648%endif
a5585a68 649
351f379b
JR
650# kernel-layer7.patch
651%patch40 -p1
652
351f379b
JR
653##
654# end of netfilter
655
656# zph
657%patch49 -p1
658
659%if %{with imq}
660%patch50 -p1
a5585a68 661%endif
351f379b
JR
662
663# reiser4
664%if %{with reiser4}
665%patch51 -p1
a5585a68 666%endif
351f379b 667
351f379b 668# esfq
068b6c82
AM
669%if %{with esfq}
670%patch53 -p1
671%endif
351f379b 672
351f379b
JR
673%patch55 -p1
674%patch56 -p1
675
351f379b
JR
676# kernel-rndis_host-wm5.patch
677%patch59 -p1
678
679# hostap enhancements from/for aircrack-ng
680%patch85 -p1
681
8bbd80b3
MGB
682# TechniSat_CableStar_Combo_HD_CI
683%patch90 -p1
684
351f379b
JR
685# vserver
686%if %{with vserver}
687%patch100 -p1
688%patch101 -p1
a5585a68 689%endif
351f379b 690
68184a5a
JR
691%patch110 -p1
692%patch111 -p1
693%patch112 -p1
694%patch113 -p1
695%patch114 -p1
696%patch115 -p1
697%patch116 -p1
698%patch117 -p1
699%patch118 -p1
68184a5a 700
7ce627cf 701# aufs3
20493b41 702%patch145 -p1
ff3e50f1
JR
703%if %{with vserver}
704%patch146 -p1
705%endif
a5585a68 706
351f379b
JR
707%if %{with rescuecd}
708%patch7000 -p1
e981df17 709%endif
a5585a68 710
df4db69a 711# apparmor
df4db69a 712%patch5000 -p1
df4db69a 713
54fd642e 714%patch250 -p1
715
31f62932
AM
716# virtio-gl
717%patch400 -p1
718
101a7448
ŁK
719# parallel dm-crypt
720%if %{with padmcrypt}
721%patch500 -p1
722%patch501 -p1
723%patch502 -p1
724%patch503 -p1
725%patch504 -p1
726%patch505 -p1
727%endif
728
7141a3b6 729%endif # vanilla
730
351f379b 731# Small fixes:
08aa9d92 732%patch2000 -p1
351f379b
JR
733%patch2001 -p1
734#%patch2003 -p1
a5585a68 735
73cc1c57 736# Do not remove this, please!
5d3a3ea2 737#%%patch50000 -p1
73cc1c57 738
351f379b 739# Fix EXTRAVERSION in main Makefile
7a8dfe5c 740sed -i 's#EXTRAVERSION =.*#EXTRAVERSION = %{?alt_kernel:.%{alt_kernel}}#g' Makefile
a5585a68 741
351f379b
JR
742# cleanup backups after patching
743find '(' -name '*~' -o -name '*.orig' -o -name '.gitignore' ')' -print0 | xargs -0 -r -l512 rm -f
a5585a68 744
351f379b
JR
745%build
746install -d %{objdir}
747cat > %{targetobj}.mk <<'EOF'
748# generated by %{name}.spec
d85d4a9b 749KERNELSRC := %{srcdir}
351f379b
JR
750KERNELOUTPUT := %{objdir}
751
752SRCARCH := %{target_arch_dir}
753ARCH := %{_target_base_arch}
754Q := %{!?with_verbose:@}
755MAKE_OPTS := %{MakeOpts}
756DEFCONFIG := %{defconfig}
757EOF
a5585a68 758
351f379b
JR
759RescueConfig() {
760 set -x
761 cat <<-EOCONFIG > $1
762 # CONFIG_SOUND is not set
763 # CONFIG_AUDIT is not set
764 # CONFIG_TR is not set
765 # CONFIG_BT is not set
766 # CONFIG_VIDEO_DEV is not set
767 # CONFIG_DVB_CORE is not set
768 # CONFIG_HAMRADIO is not set
769 # CONFIG_ARCNET is not set
770 # CONFIG_FB is not set
771 # CONFIG_DRM is not set
772 # CONFIG_WATCHDOG is not set
773 # CONFIG_INPUT_JOYSTICK is not set
774 # CONFIG_DEBUG_KERNEL is not set
775 # CONFIG_ISDN is not set
776 # CONFIG_AGP is not set
777 # CONFIG_SECURITY is not set
778 # CONFIG_PARIDE is not set
779 # CONFIG_CPU_FREQ is not set
780 # CONFIG_GAMEPORT is not set
781 # CONFIG_KVM is not set
782 # CONFIG_PHONE is not set
dd55897d 783 # CONFIG_STRICT_DEVMEM is not set
6bab3a31 784 # CONFIG_IMA is not set
a947000a
AP
785 # CONFIG_MEDIA_SUPPORT is not set
786 # CONFIG_UWB is not set
787 # CONFIG_PWM is not set
351f379b 788 CONFIG_AUFS=y
a899ef35 789 CONFIG_AUFS_FS=y
790 CONFIG_AUFS_BR_RAMFS=y
62fff140 791 CONFIG_AUFS_RDU=y
351f379b
JR
792 CONFIG_BLK_DEV_LOOP=y
793 CONFIG_ISO9660_FS=y
794 CONFIG_NLS_UTF8=y
6b79006d 795 CONFIG_SQUASHFS=y
351f379b
JR
796EOCONFIG
797
798 return 0
799}
a5585a68 800
351f379b
JR
801BuildConfig() {
802 %{?debug:set -x}
803 set -e
a5585a68 804
351f379b
JR
805 Config="kernel-%{target_arch_dir}.config"
806 echo >&2 "Building config file for %{_target_cpu} using $Config et al."
a5585a68 807
351f379b
JR
808 # prepare local and important options
809 cat <<-EOCONFIG > important.config
810 LOCALVERSION="-%{localversion}"
fb4e3822 811
351f379b
JR
812%if 0%{?debug:1}
813 CONFIG_DEBUG_SLAB=y
814 CONFIG_DEBUG_SLAB_LEAK=y
815 CONFIG_DEBUG_PREEMPT=y
816 CONFIG_RT_DEADLOCK_DETECT=y
a5585a68 817%endif
351f379b 818
351f379b
JR
819%if %{without ipv6}
820 CONFIG_IPV6=n
821%endif
a5585a68 822
351f379b
JR
823%ifarch i686 athlon pentium3 pentium4
824 %if %{with pae}
825 CONFIG_HIGHMEM4G=n
826 CONFIG_HIGHMEM64G=y
827 CONFIG_X86_PAE=y
7c99a84b 828 CONFIG_NUMA=n
351f379b
JR
829 %endif
830%endif
a5585a68 831
351f379b
JR
832%if %{without pcmcia}
833 CONFIG_PCMCIA=n
834%endif
a5585a68 835
351f379b
JR
836%if %{with fbcondecor}
837 CONFIG_FB_S3=n
838 CONFIG_FB_VT8623=n
839 CONFIG_FB_ARK=n
840 CONFIG_FB_TILEBLITTING=n
841 CONFIG_FB_CON_DECOR=y
842%endif
a5585a68 843
351f379b
JR
844%if %{with nfsroot}
845 CONFIG_NFS_FS=y
846 CONFIG_ROOT_NFS=y
847%endif
351f379b 848EOCONFIG
a5585a68 849
351f379b
JR
850%if %{with rescuecd}
851 RescueConfig rescue.config
351f379b 852%endif
351f379b
JR
853 # prepare kernel-style config file from multiple config files
854 %{__awk} -v arch="all %{target_arch_dir} %{_target_base_arch} %{_target_cpu}" -f %{SOURCE6} \
101ae904 855%if %{with myown}
856 $RPM_SOURCE_DIR/kernel-%{alt_kernel}.config \
857%endif
351f379b 858 important.config \
7141a3b6 859%if %{without vanilla}
351f379b
JR
860%if %{with rescuecd}
861 %{SOURCE58} \
351f379b
JR
862 rescue.config \
863%endif
864 \
351f379b
JR
865%if %{with reiser4}
866 %{SOURCE56} \
867%endif
351f379b
JR
868%if %{with imq}
869 %{SOURCE55} \
870%endif
871%if %{with vserver}
872 %{SOURCE43} \
351f379b 873%endif
351f379b 874 %{SOURCE41} %{?0:patches} \
7141a3b6 875%endif
351f379b
JR
876 %{SOURCE20} \
877 $RPM_SOURCE_DIR/$Config
878}
a5585a68 879
351f379b
JR
880cd %{objdir}
881install -d arch/%{target_arch_dir}
351f379b 882BuildConfig > %{defconfig}
351f379b
JR
883ln -sf %{defconfig} .config
884cd -
a5585a68 885
7856c5e8
AM
886%{__make} \
887 TARGETOBJ=%{targetobj} \
888 %{?with_verbose:V=1} \
889 oldconfig
a5585a68 890
351f379b 891%{__awk} %{?debug:-v dieOnError=1} -v infile=%{objdir}/%{defconfig} -f %{SOURCE8} %{objdir}/.config
a5585a68 892
351f379b 893# build kernel
7856c5e8
AM
894%{__make} \
895 TARGETOBJ=%{targetobj} \
896 %{?with_verbose:V=1} \
897 all
a5585a68 898
351f379b
JR
899%install
900rm -rf $RPM_BUILD_ROOT
4505b6c5 901%{__make} %{MakeOpts} -j1 %{!?with_verbose:-s} modules_install firmware_install \
351f379b
JR
902 -C %{objdir} \
903 %{?with_verbose:V=1} \
904 DEPMOD=%{DepMod} \
905 INSTALL_MOD_PATH=$RPM_BUILD_ROOT \
906 INSTALL_FW_PATH=$RPM_BUILD_ROOT/lib/firmware/%{kernel_release} \
907 KERNELRELEASE=%{kernel_release}
908
909install -d $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/misc
910
101ae904 911# create directories which may be missing, to simplyfy %files
64d14572 912install -d $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/kernel/{arch,sound,mm}
101ae904 913
351f379b
JR
914# rpm obeys filelinkto checks for ghosted symlinks, convert to files
915rm -f $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/{build,source}
916touch $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/{build,source}
917
6d54bd67
ER
918# no point embed content for %ghost files. empty them
919for a in \
920 dep{,.bin} \
921 alias{,.bin} \
8ee3ac38
AM
922 devname \
923 softdep \
6d54bd67 924 symbols{,.bin} \
6d54bd67 925; do
09e63f4a 926 test -f $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/modules.$a
6d54bd67
ER
927 > $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/modules.$a
928done
929
351f379b
JR
930# /boot
931install -d $RPM_BUILD_ROOT/boot
932cp -a %{objdir}/System.map $RPM_BUILD_ROOT/boot/System.map-%{kernel_release}
99eb7fa8 933cp -aL %{objdir}/.config $RPM_BUILD_ROOT/boot/config-%{kernel_release}
351f379b 934%ifarch %{ix86} %{x8664}
1db9a2c1
ER
935 cp -a %{objdir}/arch/%{target_arch_dir}/boot/bzImage $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
936 install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinux-%{kernel_release}
351f379b
JR
937%endif
938%ifarch ppc ppc64
1db9a2c1
ER
939 install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
940 install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinux-%{kernel_release}
a5585a68 941%endif
a5585a68 942%ifarch ia64
1db9a2c1
ER
943 %{__gzip} -cfv %{objdir}/vmlinux > %{objdir}/vmlinuz
944 cp -a %{objdir}/vmlinuz $RPM_BUILD_ROOT/boot/efi/vmlinuz-%{kernel_release}
945 ln -sf efi/vmlinuz-%{kernel_release} $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
351f379b
JR
946%endif
947%ifarch alpha sparc sparc64
948 %{__gzip} -cfv %{objdir}/vmlinux > %{objdir}/vmlinuz
949 cp -a %{objdir}/vmlinuz $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
1db9a2c1
ER
950 install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
951 %ifarch sparc
952 elftoaout %{objdir}/arch/sparc/boot/image -o %{objdir}/vmlinux.aout
953 install -p %{objdir}/vmlinux.aout $RPM_BUILD_ROOT/boot/vmlinux.aout-%{kernel_release}
954 %endif
955 %ifarch sparc64
956 elftoaout %{objdir}/arch/sparc64/boot/image -o %{objdir}/vmlinux.aout
957 install -p %{objdir}/vmlinux.aout $RPM_BUILD_ROOT/boot/vmlinux.aout-%{kernel_release}
958 %endif
351f379b
JR
959%endif
960%ifarch arm
1db9a2c1 961 install -p %{objdir}/arch/arm/boot/zImage $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
a5585a68 962%endif
a5585a68 963
351f379b
JR
964# ghosted initrd
965touch $RPM_BUILD_ROOT%{initrd_dir}/initrd-%{kernel_release}.gz
1a30aaa8 966touch $RPM_BUILD_ROOT%{initrd_dir}/initramfs-%{kernel_release}.img
a5585a68 967
7b6fa769 968%if "%{_target_base_arch}" != "%{_host_base_arch}"
351f379b
JR
969touch $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/modules.dep
970%endif
a5585a68 971
351f379b
JR
972# /etc/modrobe.d
973install -d $RPM_BUILD_ROOT%{_sysconfdir}/modprobe.d/%{kernel_release}
a5585a68 974
5aeaa3c2
JR
975install -d $RPM_BUILD_ROOT/etc/sysconfig
976install %{SOURCE1} $RPM_BUILD_ROOT/etc/sysconfig/kernel
977
351f379b 978# /usr/src/linux
82833fcc
AM
979install -d $RPM_BUILD_ROOT%{_kernelsrcdir}
980
351f379b
JR
981# test if we can hardlink -- %{_builddir} and $RPM_BUILD_ROOT on same partition
982if cp -al %{srcdir}/COPYING $RPM_BUILD_ROOT/COPYING 2>/dev/null; then
983 l=l
984 rm -f $RPM_BUILD_ROOT/COPYING
a5585a68 985fi
a5585a68 986
351f379b 987cp -a$l %{srcdir}/* $RPM_BUILD_ROOT%{_kernelsrcdir}
29564a2e
JR
988cp -a %{objdir}/Module.symvers $RPM_BUILD_ROOT%{_kernelsrcdir}
989cp -aL %{objdir}/.config $RPM_BUILD_ROOT%{_kernelsrcdir}
990cp -a %{objdir}/include $RPM_BUILD_ROOT%{_kernelsrcdir}
c122bff4
AM
991# copy arch/x86/include/generated
992for dir in $(cd %{objdir} && find arch -name generated -type d); do
993 cp -a %{objdir}/$dir $RPM_BUILD_ROOT%{_kernelsrcdir}/$dir
994 find $RPM_BUILD_ROOT%{_kernelsrcdir}/$dir -name '.*.cmd' -exec rm "{}" ";"
995done
351f379b 996
301ecb4a
JR
997# version.h location changed in 3.7, but a lot of external modules don't know about it
998# add a compatibility symlink
fca82534 999ln -s ../generated/uapi/linux/version.h $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux/version.h
301ecb4a 1000
4217a9ad
JR
1001# disable this here, causes a lot of build-time problems and our rpm-build disables it anyway
1002%{__sed} -i -e 's|\(CONSTIFY_PLUGIN.*:=.*\)|# \1|' $RPM_BUILD_ROOT%{_kernelsrcdir}/Makefile
1003
351f379b
JR
1004# collect module-build files and directories
1005# Usage: kernel-module-build.pl $rpmdir $fileoutdir
1006fileoutdir=$(pwd)
1007cd $RPM_BUILD_ROOT%{_kernelsrcdir}
1008%{__perl} %{topdir}/kernel-module-build.pl %{_kernelsrcdir} $fileoutdir
1009cd -
1010
29564a2e
JR
1011for f in `find %{objdir}/scripts -type f -print | grep -v "/\.\|\.o$"` ; do
1012 ff=${f##%{objdir}/}
1013 if [ -x "$f" ]; then
1014 echo "%attr(755,root,root) %{_kernelsrcdir}/$ff" >>files.mb_include_modulebuild_and_dirs
1015 else
1016 echo "%{_kernelsrcdir}/$ff" >>files.mb_include_modulebuild_and_dirs
1017 fi
1018 echo "%exclude %{_kernelsrcdir}/$ff" >>files.source_exclude_modulebuild_and_dirs
1019 cp -a "$f" "$RPM_BUILD_ROOT%{_kernelsrcdir}/$ff"
1020done
1021
d63ae4d9 1022%if %{with doc}
30f08736
ER
1023# move to %{_docdir} so we wouldn't depend on any kernel package for dirs
1024install -d $RPM_BUILD_ROOT%{_docdir}
1025mv $RPM_BUILD_ROOT{%{_kernelsrcdir}/Documentation,%{_docdir}/%{name}-%{version}}
1026
d63ae4d9
ER
1027%{__rm} $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/dontdiff
1028%{__rm} $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/Makefile
1029%{__rm} $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/*/Makefile
1030%{__rm} $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/*/*/Makefile
1031%else
1032%{__rm} -r $RPM_BUILD_ROOT%{_kernelsrcdir}/Documentation
1033%endif
d3a69071 1034
351f379b
JR
1035%clean
1036rm -rf $RPM_BUILD_ROOT
1037
1038%preun
1039if [ -x /sbin/new-kernel-pkg ]; then
1040 /sbin/new-kernel-pkg --remove %{kernel_release}
a5585a68 1041fi
351f379b
JR
1042
1043%post
5aeaa3c2
JR
1044[ -f /etc/sysconfig/kernel ] && . /etc/sysconfig/kernel
1045if [[ "$CREATE_SYMLINKS" != [Nn][Oo] ]]; then
351f379b 1046%ifarch ia64
5aeaa3c2
JR
1047 mv -f /boot/efi/vmlinuz{,.old} 2> /dev/null
1048 ln -sf vmlinuz-%{kernel_release} /boot/efi/vmlinuz
b400362c 1049%if 0%{?alt_kernel:1}
5aeaa3c2
JR
1050 mv -f /boot/efi/vmlinuz%{_alt_kernel}{,.old} 2> /dev/null
1051 ln -sf vmlinuz-%{kernel_release} /boot/efi/vmlinuz%{_alt_kernel}
b400362c 1052%endif
351f379b 1053%endif
5aeaa3c2
JR
1054 mv -f /boot/vmlinuz{,.old} 2> /dev/null
1055 mv -f /boot/System.map{,.old} 2> /dev/null
1056 ln -sf vmlinuz-%{kernel_release} /boot/vmlinuz
1057 ln -sf System.map-%{kernel_release} /boot/System.map
b400362c 1058%if 0%{?alt_kernel:1}
5aeaa3c2
JR
1059 mv -f /boot/vmlinuz%{_alt_kernel}{,.old} 2> /dev/null
1060 mv -f /boot/System%{_alt_kernel}.map{,.old} 2> /dev/null
1061 ln -sf vmlinuz-%{kernel_release} /boot/vmlinuz%{_alt_kernel}
1062 ln -sf System.map-%{kernel_release} /boot/System.map%{_alt_kernel}
b400362c 1063%endif
5aeaa3c2 1064fi
351f379b
JR
1065
1066%depmod %{kernel_release}
1067
4dabe329 1068%posttrans
31a535c1 1069# use posttrans to generate initrd after all dependant module packages (-drm, etc) are installed
5aeaa3c2
JR
1070[ -f /etc/sysconfig/kernel ] && . /etc/sysconfig/kernel
1071if [[ "$USE_GENINITRD" != [Nn][Oo] ]]; then
31a535c1 1072 /sbin/geninitrd -f --initrdfs=initramfs %{initrd_dir}/initrd-%{kernel_release}.gz %{kernel_release} || :
5aeaa3c2
JR
1073fi
1074if [[ "$CREATE_SYMLINKS" != [Nn][Oo] ]]; then
1075 mv -f %{initrd_dir}/initrd{,.old} 2> /dev/null
1076 ln -sf initrd-%{kernel_release}.gz %{initrd_dir}/initrd
b400362c 1077%if 0%{?alt_kernel:1}
5aeaa3c2
JR
1078 mv -f %{initrd_dir}/initrd%{_alt_kernel}{,.old} 2> /dev/null
1079 ln -sf initrd-%{kernel_release}.gz %{initrd_dir}/initrd%{_alt_kernel}
b400362c 1080%endif
5aeaa3c2 1081fi
351f379b 1082
54f0effc 1083# if dracut is present then generate full-featured initramfs
5aeaa3c2 1084if [[ "$USE_DRACUT" != [Nn][Oo] ]] && [ -x /sbin/dracut ]; then
c9fe0f6a 1085 /sbin/dracut --force --quiet /boot/initramfs-%{kernel_release}.img %{kernel_release}
54f0effc
JR
1086fi
1087
4dabe329 1088# update boot loaders when old package files are gone from filesystem
c5de1ad5 1089if [ -x /sbin/update-grub -a -f /etc/sysconfig/grub ]; then
4dabe329
ER
1090 if [ "$(. /etc/sysconfig/grub; echo ${UPDATE_GRUB:-no})" = "yes" ]; then
1091 /sbin/update-grub >/dev/null
c5de1ad5
ER
1092 fi
1093fi
351f379b
JR
1094if [ -x /sbin/new-kernel-pkg ]; then
1095 /sbin/new-kernel-pkg --initrdfile=%{initrd_dir}/initrd-%{kernel_release}.gz --install %{kernel_release} --banner "PLD Linux (%{pld_release})%{?alt_kernel: / %{alt_kernel}}"
0bb27755
ER
1096fi
1097if [ -x /sbin/rc-boot ]; then
351f379b 1098 /sbin/rc-boot 1>&2 || :
a5585a68 1099fi
a5585a68 1100
351f379b 1101%post vmlinux
5aeaa3c2
JR
1102[ -f /etc/sysconfig/kernel ] && . /etc/sysconfig/kernel
1103if [[ "$CREATE_SYMLINKS" != [Nn][Oo] ]]; then
1104 mv -f /boot/vmlinux{,.old} 2> /dev/null
1105 ln -sf vmlinux-%{kernel_release} /boot/vmlinux
b400362c 1106%if 0%{?alt_kernel:1}
5aeaa3c2
JR
1107 mv -f /boot/vmlinux-%{alt_kernel}{,.old} 2> /dev/null
1108 ln -sf vmlinux-%{kernel_release} /boot/vmlinux-%{alt_kernel}
b400362c 1109%endif
5aeaa3c2 1110fi
351f379b 1111
351f379b
JR
1112%post drm
1113%depmod %{kernel_release}
a5585a68 1114
351f379b
JR
1115%postun drm
1116%depmod %{kernel_release}
a5585a68 1117
351f379b
JR
1118%post pcmcia
1119%depmod %{kernel_release}
a5585a68 1120
351f379b
JR
1121%postun pcmcia
1122%depmod %{kernel_release}
a5585a68 1123
351f379b
JR
1124%post sound-alsa
1125%depmod %{kernel_release}
a5585a68 1126
351f379b
JR
1127%postun sound-alsa
1128%depmod %{kernel_release}
a5585a68 1129
351f379b
JR
1130%post sound-oss
1131%depmod %{kernel_release}
a5585a68 1132
351f379b
JR
1133%postun sound-oss
1134%depmod %{kernel_release}
a5585a68
AM
1135
1136%post headers
1fb73fcf 1137ln -snf %{basename:%{_kernelsrcdir}} %{_prefix}/src/linux%{_alt_kernel}
a5585a68
AM
1138
1139%postun headers
351f379b 1140if [ "$1" = "0" ]; then
1fb73fcf
ER
1141 if [ -L %{_prefix}/src/linux%{_alt_kernel} ]; then
1142 if [ "$(readlink %{_prefix}/src/linux%{_alt_kernel})" = "linux%{_alt_kernel}-%{version}" ]; then
1143 rm -f %{_prefix}/src/linux%{_alt_kernel}
a5585a68
AM
1144 fi
1145 fi
1146fi
1147
351f379b
JR
1148%triggerin module-build -- %{name} = %{epoch}:%{version}-%{release}
1149ln -sfn %{_kernelsrcdir} /lib/modules/%{kernel_release}/build
1150ln -sfn %{_kernelsrcdir} /lib/modules/%{kernel_release}/source
1151
1152%triggerun module-build -- %{name} = %{epoch}:%{version}-%{release}
1153if [ "$1" = 0 ]; then
1154 rm -f /lib/modules/%{kernel_release}/{build,source}
1155fi
1156
a5585a68
AM
1157%files
1158%defattr(644,root,root,755)
11f5dae8 1159%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/kernel
a5585a68 1160%ifarch sparc sparc64
351f379b 1161/boot/vmlinux.aout-%{kernel_release}
a5585a68
AM
1162%endif
1163%ifarch ia64
351f379b
JR
1164/boot/efi/vmlinuz-%{kernel_release}
1165%endif
1166/boot/vmlinuz-%{kernel_release}
1167/boot/System.map-%{kernel_release}
d9faffc5 1168/boot/config-%{kernel_release}
351f379b 1169%ghost %{initrd_dir}/initrd-%{kernel_release}.gz
1a30aaa8 1170%ghost %{initrd_dir}/initramfs-%{kernel_release}.img
ae1c66e5 1171/lib/firmware/%{kernel_release}
351f379b
JR
1172
1173%dir /lib/modules/%{kernel_release}
1174%dir /lib/modules/%{kernel_release}/kernel
351f379b 1175/lib/modules/%{kernel_release}/kernel/arch
351f379b
JR
1176/lib/modules/%{kernel_release}/kernel/crypto
1177/lib/modules/%{kernel_release}/kernel/drivers
101ae904 1178%if %{have_drm}
351f379b
JR
1179%exclude /lib/modules/%{kernel_release}/kernel/drivers/gpu
1180%endif
1181/lib/modules/%{kernel_release}/kernel/fs
351f379b 1182/lib/modules/%{kernel_release}/kernel/kernel
351f379b
JR
1183/lib/modules/%{kernel_release}/kernel/lib
1184/lib/modules/%{kernel_release}/kernel/net
fecce547 1185/lib/modules/%{kernel_release}/kernel/mm
101ae904 1186%if %{have_sound}
351f379b
JR
1187%dir /lib/modules/%{kernel_release}/kernel/sound
1188/lib/modules/%{kernel_release}/kernel/sound/ac97_bus.ko*
1189/lib/modules/%{kernel_release}/kernel/sound/sound*.ko*
1190%ifnarch sparc
2ba6f0dd
AM
1191%exclude /lib/modules/%{kernel_release}/kernel/drivers/media/pci/cx88/cx88-alsa.ko*
1192%exclude /lib/modules/%{kernel_release}/kernel/drivers/media/usb/em28xx/em28xx-alsa.ko*
1193%exclude /lib/modules/%{kernel_release}/kernel/drivers/media/pci/saa7134/saa7134-alsa.ko*
351f379b
JR
1194%endif
1195%endif
1196%dir /lib/modules/%{kernel_release}/misc
101ae904 1197%if %{have_pcmcia}
351f379b
JR
1198%exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/[!p]*
1199%exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/pd6729.ko*
1200%exclude /lib/modules/%{kernel_release}/kernel/drivers/*/pcmcia
1201%if %{without rescuecd}
1202%exclude /lib/modules/%{kernel_release}/kernel/drivers/ata/pata_pcmcia.ko*
1203%exclude /lib/modules/%{kernel_release}/kernel/drivers/bluetooth/*_cs.ko*
1204%exclude /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
1205%exclude /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/b1pcmcia.ko*
351f379b
JR
1206%exclude /lib/modules/%{kernel_release}/kernel/drivers/usb/gadget/g_midi.ko*
1207%endif
1208%exclude /lib/modules/%{kernel_release}/kernel/drivers/ide/ide-cs.ko*
1209%exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/*_cs.ko*
1210%exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/b43
1211%exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/hostap/hostap_cs.ko*
1212%exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/libertas/*_cs.ko*
1213%exclude /lib/modules/%{kernel_release}/kernel/drivers/parport/parport_cs.ko*
7eafdf33 1214%exclude /lib/modules/%{kernel_release}/kernel/drivers/tty/serial/8250/serial_cs.ko*
351f379b
JR
1215%exclude /lib/modules/%{kernel_release}/kernel/drivers/usb/host/sl811_cs.ko*
1216%endif
101ae904 1217%if %{with myown}
1218/lib/modules/%{kernel_release}/kernel/sound
1219%endif
30812fb8 1220/lib/modules/%{kernel_release}/kernel/security
6d54bd67
ER
1221
1222%dir %{_sysconfdir}/modprobe.d/%{kernel_release}
1223
1224# provided by build
1225/lib/modules/%{kernel_release}/modules.order
8ee3ac38 1226/lib/modules/%{kernel_release}/modules.builtin*
6d54bd67
ER
1227
1228# rest modules.* are ghost (regenerated by post depmod -a invocation)
1229%ghost /lib/modules/%{kernel_release}/modules.alias
1230%ghost /lib/modules/%{kernel_release}/modules.alias.bin
6d54bd67
ER
1231%ghost /lib/modules/%{kernel_release}/modules.dep
1232%ghost /lib/modules/%{kernel_release}/modules.dep.bin
8ee3ac38 1233%ghost /lib/modules/%{kernel_release}/modules.devname
8ee3ac38 1234%ghost /lib/modules/%{kernel_release}/modules.softdep
6d54bd67
ER
1235%ghost /lib/modules/%{kernel_release}/modules.symbols
1236%ghost /lib/modules/%{kernel_release}/modules.symbols.bin
6d54bd67 1237
351f379b
JR
1238# symlinks pointing to kernelsrcdir
1239%ghost /lib/modules/%{kernel_release}/build
1240%ghost /lib/modules/%{kernel_release}/source
351f379b 1241
351f379b
JR
1242%ifarch alpha %{ix86} %{x8664} ppc ppc64 sparc sparc64
1243%files vmlinux
a5585a68 1244%defattr(644,root,root,755)
351f379b 1245/boot/vmlinux-%{kernel_release}
a5585a68
AM
1246%endif
1247
101ae904 1248%if %{have_drm}
351f379b 1249%files drm
a5585a68 1250%defattr(644,root,root,755)
351f379b 1251/lib/modules/%{kernel_release}/kernel/drivers/gpu
a5585a68
AM
1252%endif
1253
101ae904 1254%if %{have_pcmcia}
351f379b 1255%files pcmcia
a5585a68 1256%defattr(644,root,root,755)
351f379b
JR
1257/lib/modules/%{kernel_release}/kernel/drivers/pcmcia/*ko*
1258/lib/modules/%{kernel_release}/kernel/drivers/*/pcmcia
1259%exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/pcmcia*ko*
1260%if %{without rescuecd}
1261/lib/modules/%{kernel_release}/kernel/drivers/bluetooth/*_cs.ko*
1262/lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
1263/lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/b1pcmcia.ko*
351f379b 1264/lib/modules/%{kernel_release}/kernel/drivers/ata/pata_pcmcia.ko*
07100052 1265%endif
351f379b
JR
1266/lib/modules/%{kernel_release}/kernel/drivers/ide/ide-cs.ko*
1267/lib/modules/%{kernel_release}/kernel/drivers/net/wireless/*_cs.ko*
1268/lib/modules/%{kernel_release}/kernel/drivers/net/wireless/b43
1269/lib/modules/%{kernel_release}/kernel/drivers/net/wireless/hostap/hostap_cs.ko*
1270/lib/modules/%{kernel_release}/kernel/drivers/net/wireless/libertas/*_cs.ko*
1271/lib/modules/%{kernel_release}/kernel/drivers/parport/parport_cs.ko*
7eafdf33 1272/lib/modules/%{kernel_release}/kernel/drivers/tty/serial/8250/serial_cs.ko*
351f379b
JR
1273/lib/modules/%{kernel_release}/kernel/drivers/usb/host/sl811_cs.ko*
1274%endif
1275
101ae904 1276%if %{have_sound}
351f379b 1277%files sound-alsa
a5585a68 1278%defattr(644,root,root,755)
351f379b
JR
1279/lib/modules/%{kernel_release}/kernel/sound
1280%exclude %dir /lib/modules/%{kernel_release}/kernel/sound
1281%exclude /lib/modules/%{kernel_release}/kernel/sound/ac97_bus.ko*
1282%exclude /lib/modules/%{kernel_release}/kernel/sound/sound*.ko*
1283%if %{have_oss}
1284%exclude /lib/modules/%{kernel_release}/kernel/sound/oss
a5585a68 1285%endif
351f379b
JR
1286%ifnarch sparc
1287/lib/modules/%{kernel_release}/kernel/drivers/usb/gadget/g_midi.ko*
2ba6f0dd
AM
1288/lib/modules/%{kernel_release}/kernel/drivers/media/pci/cx88/cx88-alsa.ko*
1289/lib/modules/%{kernel_release}/kernel/drivers/media/usb/em28xx/em28xx-alsa.ko*
1290/lib/modules/%{kernel_release}/kernel/drivers/media/pci/saa7134/saa7134-alsa.ko*
a5585a68
AM
1291%endif
1292
101ae904 1293%if %{have_oss}
351f379b 1294%files sound-oss
a5585a68 1295%defattr(644,root,root,755)
351f379b 1296/lib/modules/%{kernel_release}/kernel/sound/oss
a5585a68 1297%endif
a5585a68
AM
1298%endif
1299
fecce547 1300%files headers -f files.headers_exclude_kbuild
a5585a68 1301%defattr(644,root,root,755)
30f08736 1302%dir %{_kernelsrcdir}
351f379b
JR
1303%{_kernelsrcdir}/include
1304%dir %{_kernelsrcdir}/arch
1305%dir %{_kernelsrcdir}/arch/[!K]*
1306%{_kernelsrcdir}/arch/*/include
1307%dir %{_kernelsrcdir}/security
1308%dir %{_kernelsrcdir}/security/selinux
1309%{_kernelsrcdir}/security/selinux/include
29564a2e
JR
1310%{_kernelsrcdir}/.config
1311%{_kernelsrcdir}/Module.symvers
351f379b 1312
fecce547 1313%files module-build -f files.mb_include_modulebuild_and_dirs
a5585a68 1314%defattr(644,root,root,755)
351f379b
JR
1315%ifarch ppc ppc64
1316%{_kernelsrcdir}/arch/powerpc/lib/crtsavres.*
1317%endif
fecce547 1318%exclude %dir %{_kernelsrcdir}/arch/um
351f379b
JR
1319%{_kernelsrcdir}/arch/*/kernel/asm-offsets*
1320%{_kernelsrcdir}/arch/*/kernel/sigframe*.h
1321%{_kernelsrcdir}/drivers/lguest/lg.h
2ba6f0dd 1322%{_kernelsrcdir}/drivers/media/pci/bt8xx/bttv.h
351f379b 1323%{_kernelsrcdir}/kernel/bounds.c
4217a9ad
JR
1324%{_kernelsrcdir}/scripts/basic/*.c
1325%attr(755,root,root) %{_kernelsrcdir}/scripts/kconfig/*.sh
1326%{_kernelsrcdir}/scripts/kconfig/*.in
1327%{_kernelsrcdir}/scripts/kconfig/*_shipped
1328%{_kernelsrcdir}/scripts/kconfig/*.pl
1329%{_kernelsrcdir}/scripts/kconfig/*.glade
1330%{_kernelsrcdir}/scripts/kconfig/*.gperf
1331%{_kernelsrcdir}/scripts/kconfig/*.cc
1332%{_kernelsrcdir}/scripts/kconfig/*.y
1333%{_kernelsrcdir}/scripts/kconfig/*.l
1334%{_kernelsrcdir}/scripts/kconfig/[c-k]*.c
1335%{_kernelsrcdir}/scripts/kconfig/[c-k]*.h
1336%{_kernelsrcdir}/scripts/kconfig/l*.h
1337%{_kernelsrcdir}/scripts/kconfig/[m-u]*.c
1338%{_kernelsrcdir}/scripts/kconfig/[m-u]*.h
1339%{_kernelsrcdir}/scripts/kconfig/lxdialog
1340%{_kernelsrcdir}/scripts/mod/*.c
4442a07d 1341%{_kernelsrcdir}/scripts/mod/modpost.h
29564a2e 1342%attr(755,root,root) %{_kernelsrcdir}/scripts/mkcompile_h
351f379b 1343%{_kernelsrcdir}/scripts/mkmakefile
960d2e94 1344%{_kernelsrcdir}/scripts/module-common.lds
29564a2e 1345%attr(755,root,root) %{_kernelsrcdir}/scripts/setlocalversion
351f379b 1346%{_kernelsrcdir}/scripts/*.c
29564a2e 1347%attr(755,root,root) %{_kernelsrcdir}/scripts/*.sh
9d6d5869 1348%{_kernelsrcdir}/scripts/selinux/genheaders/*.c
c78e408d 1349%{_kernelsrcdir}/scripts/selinux/mdp/*.c
fecce547 1350%exclude %dir %{_kernelsrcdir}/security
1351%exclude %dir %{_kernelsrcdir}/security/selinux
a5585a68 1352
1848fd38 1353%if %{with doc}
a5585a68
AM
1354%files doc
1355%defattr(644,root,root,755)
d3a69071
ER
1356%dir %{_docdir}/%{name}-%{version}
1357
1358%{_docdir}/%{name}-%{version}/[!jkz]*
1359%{_docdir}/%{name}-%{version}/[jkz]*.txt
1360%{_docdir}/%{name}-%{version}/kbuild
1361%{_docdir}/%{name}-%{version}/kdump
1362%lang(ja) %{_docdir}/%{name}-%{version}/ja_JP
1363%lang(ko) %{_docdir}/%{name}-%{version}/ko_KR
1364%lang(zh_CN) %{_docdir}/%{name}-%{version}/zh_CN
1848fd38 1365%endif
a5585a68
AM
1366
1367%if %{with source}
fecce547 1368%files source -f files.source_exclude_modulebuild_and_dirs
a5585a68 1369%defattr(644,root,root,755)
351f379b
JR
1370%{_kernelsrcdir}/arch/*/[!Mik]*
1371%{_kernelsrcdir}/arch/*/kernel/[!M]*
351f379b
JR
1372%{_kernelsrcdir}/arch/ia64/install.sh
1373%{_kernelsrcdir}/arch/m68k/ifpsp060/[!M]*
1374%{_kernelsrcdir}/arch/m68k/ifpsp060/MISC
fecce547 1375%{_kernelsrcdir}/arch/m68k/install.sh
351f379b
JR
1376%{_kernelsrcdir}/arch/parisc/install.sh
1377%{_kernelsrcdir}/arch/x86/ia32/[!M]*
1378%{_kernelsrcdir}/arch/ia64/kvm
1379%{_kernelsrcdir}/arch/powerpc/kvm
1380%ifarch ppc ppc64
1381%exclude %{_kernelsrcdir}/arch/powerpc/lib/crtsavres.*
1382%endif
4442a07d 1383%{_kernelsrcdir}/arch/arm/kvm
7770d33f 1384%{_kernelsrcdir}/arch/mips/kvm
351f379b
JR
1385%{_kernelsrcdir}/arch/s390/kvm
1386%{_kernelsrcdir}/arch/x86/kvm
1387%exclude %{_kernelsrcdir}/arch/*/kernel/asm-offsets*
1388%exclude %{_kernelsrcdir}/arch/*/kernel/sigframe*.h
1389%exclude %{_kernelsrcdir}/drivers/lguest/lg.h
2ba6f0dd 1390%exclude %{_kernelsrcdir}/drivers/media/pci/bt8xx/bttv.h
351f379b
JR
1391%{_kernelsrcdir}/block
1392%{_kernelsrcdir}/crypto
1393%{_kernelsrcdir}/drivers
1394%{_kernelsrcdir}/firmware
1395%{_kernelsrcdir}/fs
351f379b
JR
1396%{_kernelsrcdir}/init
1397%{_kernelsrcdir}/ipc
1398%{_kernelsrcdir}/kernel
1399%exclude %{_kernelsrcdir}/kernel/bounds.c
1400%{_kernelsrcdir}/lib
1401%{_kernelsrcdir}/mm
1402%{_kernelsrcdir}/net
1403%{_kernelsrcdir}/virt
1404%{_kernelsrcdir}/samples
1405%{_kernelsrcdir}/scripts/*
1406%exclude %{_kernelsrcdir}/scripts/Kbuild.include
1407%exclude %{_kernelsrcdir}/scripts/Makefile*
1408%exclude %{_kernelsrcdir}/scripts/basic
1409%exclude %{_kernelsrcdir}/scripts/kconfig
960d2e94 1410%exclude %{_kernelsrcdir}/scripts/mkcompile_h
351f379b
JR
1411%exclude %{_kernelsrcdir}/scripts/mkmakefile
1412%exclude %{_kernelsrcdir}/scripts/mod
960d2e94 1413%exclude %{_kernelsrcdir}/scripts/module-common.lds
351f379b
JR
1414%exclude %{_kernelsrcdir}/scripts/setlocalversion
1415%exclude %{_kernelsrcdir}/scripts/*.c
1416%exclude %{_kernelsrcdir}/scripts/*.sh
960d2e94 1417%exclude %dir %{_kernelsrcdir}/scripts/selinux
1418%exclude %{_kernelsrcdir}/scripts/selinux/Makefile
c78e408d
PZ
1419%exclude %dir %{_kernelsrcdir}/scripts/selinux/genheaders
1420%exclude %{_kernelsrcdir}/scripts/selinux/genheaders/Makefile
1421%exclude %{_kernelsrcdir}/scripts/selinux/genheaders/*.c
960d2e94 1422%exclude %dir %{_kernelsrcdir}/scripts/selinux/mdp
1423%exclude %{_kernelsrcdir}/scripts/selinux/mdp/Makefile
1424%exclude %{_kernelsrcdir}/scripts/selinux/mdp/*.c
351f379b
JR
1425%{_kernelsrcdir}/sound
1426%{_kernelsrcdir}/security
1427%exclude %{_kernelsrcdir}/security/selinux/include
94a92871 1428%{_kernelsrcdir}/tools/*
351f379b
JR
1429%{_kernelsrcdir}/usr
1430%{_kernelsrcdir}/COPYING
1431%{_kernelsrcdir}/CREDITS
1432%{_kernelsrcdir}/MAINTAINERS
1433%{_kernelsrcdir}/README
1434%{_kernelsrcdir}/REPORTING-BUGS
a5585a68 1435%endif
This page took 2.930148 seconds and 4 git commands to generate.