]> git.pld-linux.org Git - packages/kernel.git/blame - kernel.spec
- revert wanrouter split, makes no sense
[packages/kernel.git] / kernel.spec
CommitLineData
a7313793 1#
0fec42fa 2# NOTE:
351f379b
JR
3# the following bcond combos will not work
4# - without_vserver and any of the following
15a064bf 5# - with_grsecurity
a5585a68 6#
8ad00cb1
ER
7# LATEST VERSION CHECKER:
8# # curl -s http://www.kernel.org/kdist/finger_banner
9#
a5585a68 10# TODO:
351f379b 11# - benchmark NO_HZ & HZ=1000 vs HZ=300 on i686
351f379b 12#
fc5a68a2
AM
13# HOWTO update configuration files:
14# - run build
15# - add new options to proper config (kernel-multiarch.config, kernel-x86.config, kernel-powerpc.config etc)
16# - sort configuration files using:
ee5dc1b8 17# ./kernel-config-sort.pl ~/rpm/BUILD/kernel-%{version}/linux-%{version}/ -a x86 kernel-x86.config
fc5a68a2 18# ./kernel-config-sort.pl ~/rpm/BUILD/kernel-%{version}/linux-%{version} kernel-multiarch.config
a5585a68
AM
19#
20# Conditional build:
a5585a68 21%bcond_without source # don't build kernel-source package
1848fd38 22%bcond_without doc # don't build kernel-doc package
351f379b
JR
23%bcond_without pcmcia # don't build pcmcia
24
a5585a68 25%bcond_with verbose # verbose build (V=1)
03de6725 26%bcond_with reiser4 # support for reiser4 fs (experimental)
351f379b
JR
27
28%bcond_without grsecurity # don't build grsecurity nor pax at all
d615e060 29%bcond_with pax # build pax and grsecurity (ie. grsecurity && pax)
351f379b
JR
30
31%bcond_with fbcondecor # build fbcondecor (disable FB_TILEBLITTING and affected fb modules)
32%bcond_with pae # build PAE (HIGHMEM64G) support on uniprocessor
33%bcond_with nfsroot # build with root on NFS support
af0f7570 34%bcond_with virtio_gl # build with virtio_gl thats avaible under guest OS with patched qemu (qemu-gl.spec)
351f379b 35
7f07242b 36%bcond_without imq # imq support
1b75c2b4
JR
37%bcond_without wrr # wrr support
38%bcond_without esfq # esfq support
351f379b
JR
39%bcond_without ipv6 # ipv6 support
40
41%bcond_without vserver # support for VServer (enabled by default)
42%bcond_without tuxonice # support for tuxonice (ex-suspend2) (enabled by default)
351f379b
JR
43
44%bcond_with rescuecd # build kernel for our rescue
45
351f379b 46%bcond_with myown # build with your own config (kernel-myown.config)
a5585a68
AM
47
48%{?debug:%define with_verbose 1}
49
351f379b 50%if %{without grsecurity}
b488384f 51%unglobal with_pax
a5585a68 52%endif
351f379b 53
17da405a 54%if %{with pax}
351f379b
JR
55%define with_grsecurity 1
56%define with_pax 1
57%endif
58
af0f7570
KK
59%if %{with virtio_gl}
60%define with_virtiogl 1
61%endif
62
351f379b
JR
63%define have_drm 1
64%define have_oss 1
65%define have_sound 1
101ae904 66%define have_pcmcia 1
351f379b
JR
67
68%if %{with rescuecd}
b488384f
AM
69%unglobal with_tuxonice
70%unglobal with_grsecurity
b488384f
AM
71%unglobal with_pax
72%unglobal with_vserver
351f379b
JR
73%define have_drm 0
74%define have_sound 0
75%endif
76
101ae904 77%if %{with myown}
78%define have_drm 0
79%define have_oss 0
80%define have_sound 0
81%define have_pcmcia 0
351f379b
JR
82%endif
83
84%ifarch sparc sparc64
b488384f 85%unglobal with_pcmcia
351f379b
JR
86%define have_drm 0
87%define have_oss 0
88%endif
89
101ae904 90%if %{without pcmcia}
91%define have_pcmcia 0
92%endif
93
8edadd42 94%define basever 2.6.37
152aeb71 95%define postver .2
69b919e6 96%define rel 1
a5585a68
AM
97
98%define _enable_debug_packages 0
a5585a68 99
28eb7fa5 100%define tuxonice_version 3.2
351f379b
JR
101%define netfilter_snap 20070806
102
101ae904 103%if %{with myown}
104%if "%{_alt_kernel}" == ""
105%define alt_kernel myown
351f379b 106%endif
101ae904 107%else
108%if %{without rescuecd}
af0f7570 109%define __alt_kernel %{?with_pax:pax}%{!?with_grsecurity:nogrsecurity}%{?with_pae:pae}%{?with_virtiogl:virtiogl}
351f379b
JR
110%if "%{__alt_kernel}" != ""
111%define alt_kernel %{__alt_kernel}
112%endif
101ae904 113%else
114%define alt_kernel rescuecd
115%endif
116%endif
351f379b
JR
117
118# kernel release (used in filesystem and eventually in uname -r)
119# modules will be looked from /lib/modules/%{kernel_release}
120# localversion is just that without version for "> localversion"
121%define localversion %{rel}
122%define kernel_release %{version}%{?alt_kernel:_%{alt_kernel}}-%{localversion}
a5585a68
AM
123
124Summary: The Linux kernel (the core of the Linux operating system)
351f379b
JR
125Summary(de.UTF-8): Der Linux-Kernel (Kern des Linux-Betriebssystems)
126Summary(et.UTF-8): Linuxi kernel (ehk operatsioonisüsteemi tuum)
127Summary(fr.UTF-8): Le Kernel-Linux (La partie centrale du systeme)
128Summary(pl.UTF-8): Jądro Linuksa
129Name: kernel%{_alt_kernel}
130Version: %{basever}%{postver}
131Release: %{rel}
a5585a68 132Epoch: 3
c491b43b 133License: GPL v2
a5585a68 134Group: Base/Kernel
351f379b 135Source0: http://www.kernel.org/pub/linux/kernel/v2.6/linux-%{basever}.tar.bz2
8edadd42 136# Source0-md5: c8ee37b4fdccdb651e0603d35350b434
351f379b
JR
137%if "%{postver}" != "%{nil}"
138Source1: http://www.kernel.org/pub/linux/kernel/v2.6/patch-%{version}.bz2
152aeb71 139# Source1-md5: bb5798f2a2a5af13219d1a250c4dad11
351f379b
JR
140%endif
141
142Source3: kernel-autoconf.h
143Source4: kernel-config.h
351f379b
JR
144Source6: kernel-config.awk
145Source7: kernel-module-build.pl
146Source8: kernel-track-config-change.awk
147# not used by kernel.spec, but it's good to have it in SOURCES
148Source9: kernel-config-sort.pl
149Source10: kernel.make
150
151Source20: kernel-multiarch.config
152Source21: kernel-x86.config
153Source22: kernel-sparc.config
5a99ae3d 154Source23: kernel-alpha.config
155Source24: kernel-powerpc.config
156Source25: kernel-ia64.config
351f379b
JR
157
158Source40: kernel-netfilter.config
159Source41: kernel-patches.config
160Source42: kernel-tuxonice.config
161Source43: kernel-vserver.config
162Source45: kernel-grsec.config
163
164Source49: kernel-pax.config
165Source50: kernel-no-pax.config
351f379b
JR
166Source55: kernel-imq.config
167Source56: kernel-reiser4.config
168Source57: kernel-wrr.config
169
170Source58: kernel-inittmpfs.config
171Source59: kernel-bzip2-lzma.config
172
351f379b
JR
173# http://dev.gentoo.org/~spock/projects/fbcondecor/archive/fbcondecor-0.9.4-2.6.25-rc6.patch
174Patch3: kernel-fbcondecor.patch
60bb736d 175Patch4: kernel-fbcon-margins.patch
1414594b 176Patch5: linux-wistron-amilo8210.patch
351f379b
JR
177
178# netfilter related stuff mostly based on patch-o-matic-ng
17da405a 179# snapshot 20070806 with some fixes. Some modules
e69c45e8 180# were ported to nf_conntrack.
351f379b
JR
181
182Patch10: kernel-pom-ng-IPV4OPTSSTRIP.patch
183Patch11: kernel-pom-ng-ipv4options.patch
184
351f379b
JR
185Patch16: kernel-pom-ng-mms-conntrack-nat.patch
186Patch22: kernel-pom-ng-rsh.patch
187Patch23: kernel-pom-ng-rpc.patch
188
189# based on http://mike.it-loops.com/rtsp/rtsp-2.6.26.patch
190Patch36: kernel-nf_rtsp.patch
191
192# http://ftp.linux-vserver.org/pub/people/dhozac/p/k/delta-owner-xid-feat02.diff
193Patch37: kernel-owner-xid.patch
194
351f379b
JR
195# based on kernel-2.6.25-layer7-2.20.patch from
196# http://switch.dl.sourceforge.net/sourceforge/l7-filter/netfilter-layer7-v2.20.tar.gz
197Patch40: kernel-layer7.patch
198
351f379b
JR
199### End netfilter
200
201# http://zph.bratcheda.org/linux-2.6.26.3-zph.patch
202Patch49: kernel-zph.patch
203
f6396b7e 204# based on http://www.linuximq.net/patchs/linux-2.6.35-imq-multiqueue-test1.diff
351f379b
JR
205Patch50: kernel-imq.patch
206
76514441 207# http://www.kernel.org/pub/linux/kernel/people/edward/reiser4/reiser4-for-2.6/reiser4-for-2.6.35.patch.bz2
351f379b
JR
208Patch51: kernel-reiser4.patch
209
210# http://www.zz9.dk/patches/wrr-linux-071203-2.6.25.patch.gz
211Patch52: kernel-wrr.patch
212
213# http://fatooh.org/esfq-2.6/sfq-2.6.24.1.tar.bz2
60bb736d 214Patch53: kernel-esfq.patch
351f379b
JR
215
216# http://memebeam.org/free-software/toshiba_acpi/toshiba_acpi-dev_toshiba_test5-linux_2.6.26.patch
60bb736d 217Patch54: kernel-toshiba_acpi.patch
351f379b
JR
218
219# by Baggins request:
220# derived from ftp://ftp.cmf.nrl.navy.mil/pub/chas/linux-atm/vbr/vbr-kernel-diffs
60bb736d
JR
221Patch55: kernel-atm-vbr.patch
222Patch56: kernel-atmdd.patch
351f379b 223
40bf088a
AM
224# https://trac.pentoo.ch/pentoo/export/1600/kernel/trunk/2.6/2.6.34/4305_sqlzma.patch
225Patch57: kernel-squashfs-lzma.patch
226
351f379b
JR
227# http://synce.svn.sourceforge.net/svnroot/synce/trunk/patches/linux-2.6.22-rndis_host-wm5.patch
228Patch59: kernel-rndis_host-wm5.patch
229
230# Project suspend2 renamed to tuxonice
5a9fc8e8 231# http://tuxonice.net/files/current-tuxonice-for-2.6.37.patch_0.bz2
60bb736d
JR
232Patch69: kernel-tuxonice.patch
233Patch70: kernel-tuxonice-headers.patch
351f379b
JR
234
235# adds some ids for hostap suported cards and monitor_enable from/for aircrack-ng
236# http://patches.aircrack-ng.org/hostap-kernel-2.6.18.patch
60bb736d 237Patch85: kernel-hostap.patch
351f379b 238
1163e6ab 239# http://vserver.13thfloor.at/Experimental/patch-2.6.37-vs2.3.0.37-rc3.diff
60bb736d 240Patch100: kernel-vserver-2.3.patch
351f379b
JR
241Patch101: kernel-vserver-fixes.patch
242
243# Wake-On-Lan fix for nForce drivers; using http://atlas.et.tudelft.nl/verwei90/nforce2/wol.html
244# Fix verified for that kernel version.
60bb736d 245Patch130: kernel-forcedeth-WON.patch
351f379b 246
76b36ddb 247# add tty ioctl to figure physical device of the console. used by showconsole.spec (blogd)
f687bd1f
AM
248# raw from http://download.opensuse.org/update/11.2/rpm/src/kernel-source-2.6.31.12-0.2.1.src.rpm
249# from patches.fixes.tar.bz2
250# from patches.fixes/tiocgdev
76b36ddb
ER
251Patch131: kernel-TIOCGDEV.patch
252
0c5527e5 253# http://download.filesystems.org/unionfs/unionfs-2.x/unionfs-2.5.7_for_2.6.36.diff.gz
351f379b 254Patch140: kernel-unionfs.patch
351f379b 255
4a4d8108 256# http://git.c3sl.ufpr.br/pub/scm/aufs/aufs2-standalone.git, read README
b752ccd1
AM
257# Patch creation:
258# git clone http://git.c3sl.ufpr.br/pub/scm/aufs/aufs2-standalone.git
953406b4 259# cd aufs2-standalone
4f0767ce 260# git checkout -b aufs2.1-35 origin/aufs2.1-35
b752ccd1
AM
261# cat aufs2-kbuild.patch aufs2-base.patch aufs2-standalone.patch > ~/rpm/packages/kernel/kernel-aufs2.patch
262# mkdir linux
263# cp -a Documentation fs include linux
264# diff -urN /usr/share/empty linux >> ~/rpm/packages/kernel/kernel-aufs2.patch
0c5527e5
AM
265#
266# NOTE: temporaily from http://livenet.selfip.com/ftp/debian/aufs2.1-36/ until upstream catches up with 2.6.36
267#
20493b41
JR
268Patch145: kernel-aufs2.patch
269Patch146: kernel-aufs2-unionfs.patch
270Patch147: kernel-aufs2-no-const-grsec.patch
4f0767ce 271Patch148: kernel-aufs2-reiser4.patch
a899ef35 272
54fd642e 273# Show normal colors in menuconfig with ncurses ABI 6
274Patch250: kernel-fix_256colors_menuconfig.patch
275
351f379b
JR
276# The following patch extend the routing functionality in Linux
277# to support static routes (defined by user), new way to use the
278# alternative routes, the reverse path protection (rp_filter),
279# the NAT processing to use correctly the routing when multiple
280# gateways are used.
5a9fc8e8 281# http://www.ssi.bg/~ja/routes-2.6.37-16.diff
351f379b
JR
282Patch300: kernel-routes.patch
283
351f379b 284Patch2000: kernel-small_fixes.patch
60bb736d 285Patch2001: kernel-pwc-uncompress.patch
351f379b
JR
286Patch2003: kernel-regressions.patch
287
288# kill some thousands of warnings
289# (only warnings, so just remove parts of this patch if conflics)
60bb736d 290Patch2500: kernel-warnings.patch
351f379b 291
fc63ffa9
AM
292# 0001-AppArmor-compatibility-patch-for-v5-network-controll.patch
293# 0002-AppArmor-compatibility-patch-for-v5-interface.patch
294# from http://kernel.org/pub/linux/security/apparmor/apparmor-2.6.36-patches.tgz
351f379b 295Patch5000: kernel-apparmor.patch
351f379b
JR
296
297# for rescuecd
48ead238 298# based on ftp://ftp.leg.uct.ac.za/pub/linux/rip/tmpfs_root-2.6.30.diff.gz
351f379b
JR
299Patch7000: kernel-inittmpfs.patch
300
69b919e6 301# based on http://grsecurity.net/~spender/grsecurity-2.2.1-2.6.37.2-201102271552.patch
4a6985f1
AM
302# NOTE: put raw upstream patches on kernel-grsec_full.patch:GRSECURITY_RAW for reference
303# (since upstream deletes older patches)
60bb736d
JR
304Patch9999: kernel-grsec_full.patch
305Patch10000: kernel-grsec-caps.patch
306Patch10001: kernel-grsec-common.patch
351f379b 307Patch10002: kernel-grsec_fixes.patch
bf6838be 308
73cc1c57 309# Do not remove this line, please. It is easier for me to uncomment two lines, then patch
310# kernel.spec every time.
311#Patch50000: kernel-usb_reset.patch
af0f7570 312Patch60000: kernel-virtio-gl-accel.patch
73cc1c57 313
a5585a68 314URL: http://www.kernel.org/
351f379b 315BuildRequires: binutils >= 3:2.18
a5585a68
AM
316%ifarch sparc sparc64
317BuildRequires: elftoaout
318%endif
351f379b
JR
319%ifarch ppc
320BuildRequires: uboot-mkimage
321%endif
351f379b
JR
322BuildRequires: /sbin/depmod
323BuildRequires: gcc >= 5:3.2
cfce203c 324BuildRequires: xz >= 1:4.999.7
e69c45e8 325AutoReqProv: no
351f379b 326# for hostname command
c8ff6387 327BuildRequires: module-init-tools >= 3.5
351f379b 328BuildRequires: net-tools
a5585a68 329BuildRequires: perl-base
b488384f 330BuildRequires: rpm-build >= 4.5-24
351f379b
JR
331BuildRequires: rpmbuild(macros) >= 1.217
332Requires(post): coreutils
333Requires(post): geninitrd >= 10000-3
334Requires(post): module-init-tools >= 0.9.9
335Requires: /sbin/depmod
336Requires: coreutils
337Requires: geninitrd >= 10000-3
338Requires: module-init-tools >= 0.9.9
b75546f3 339Suggests: keyutils
351f379b
JR
340Provides: %{name}(netfilter) = %{netfilter_snap}
341Provides: %{name}(vermagic) = %{kernel_release}
342Obsoletes: kernel%{_alt_kernel}-isdn-mISDN
26b1ceeb 343Obsoletes: kernel-firmware
351f379b
JR
344Obsoletes: kernel-misc-acer_acpi
345Obsoletes: kernel-misc-fuse
346Obsoletes: kernel-misc-uvc
a5585a68 347Obsoletes: kernel-modules
351f379b
JR
348Obsoletes: kernel-net-ar81
349Obsoletes: kernel-net-hostap
350Obsoletes: kernel-net-ieee80211
351Obsoletes: kernel-net-ipp2p
352Obsoletes: kernel-net-rt61
353Obsoletes: kernel-smp
354Conflicts: e2fsprogs < 1.29
355Conflicts: isdn4k-utils < 3.1pre1
356Conflicts: jfsutils < 1.1.3
cf8de22f 357Conflicts: lvm2 < 2.02.40
351f379b
JR
358Conflicts: module-init-tools < 0.9.10
359Conflicts: nfs-utils < 1.0.5
360Conflicts: oprofile < 0.9
361Conflicts: ppp < 1:2.4.0
362Conflicts: procps < 3.2.0
363Conflicts: quota-tools < 3.09
4dabe329 364%{?with_reiserfs4:Conflicts: reiser4progs < 1.0.0}
351f379b 365Conflicts: reiserfsprogs < 3.6.3
4dabe329 366Conflicts: rpm < 4.4.2-0.2
351f379b
JR
367Conflicts: udev < 1:081
368Conflicts: util-linux < 2.10o
d3c4e01e 369Conflicts: util-vserver < 0.30.216
351f379b
JR
370Conflicts: xfsprogs < 2.6.0
371%if %{with pae}
372ExcludeArch: i386 i486 i586
373%else
374ExclusiveArch: %{ix86} %{x8664} alpha arm ia64 ppc ppc64 sparc sparc64
375%endif
a5585a68
AM
376ExclusiveOS: Linux
377BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
378
351f379b
JR
379%ifarch %{ix86} %{x8664}
380%define target_arch_dir x86
381%endif
382%ifarch ppc ppc64
383%define target_arch_dir powerpc
384%endif
5a99ae3d 385%ifarch sparc sparc64
386%define target_arch_dir sparc
387%endif
388%ifnarch %{ix86} %{x8664} ppc ppc64 sparc sparc64
351f379b
JR
389%define target_arch_dir %{_target_base_arch}
390%endif
391
392%define defconfig arch/%{target_arch_dir}/defconfig
393
394# No ELF objects there to strip (skips processing 27k files)
ded910ba 395%define _noautostrip \\(.*%{_kernelsrcdir}/.*\\|.*/vmlinux.*\\)
351f379b
JR
396%define _noautochrpath .*%{_kernelsrcdir}/.*
397
a5585a68
AM
398%ifarch ia64
399%define initrd_dir /boot/efi
400%else
401%define initrd_dir /boot
402%endif
403
351f379b
JR
404%define topdir %{_builddir}/%{name}-%{version}
405%define srcdir %{topdir}/linux-%{basever}
406%define objdir %{topdir}/%{targetobj}
407%define targetobj %{_target_base_arch}-gcc-%(%{kgcc} -dumpversion)
408
409%define _kernelsrcdir /usr/src/linux%{_alt_kernel}-%{version}
410
411%if "%{_target_base_arch}" != "%{_arch}"
412 %define CrossOpts ARCH=%{_target_base_arch} CROSS_COMPILE=%{_target_cpu}-pld-linux-
413 %define DepMod /bin/true
414
415 %if "%{_arch}" == "sparc" && "%{_target_base_arch}" == "sparc64"
416 %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
417 %define DepMod /sbin/depmod
418 %endif
419
420 %if "%{_arch}" == "sparc64" && "%{_target_base_arch}" == "sparc"
421 %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
422 %define DepMod /sbin/depmod
423 %endif
424
425 %if "%{_arch}" == "x86_64" && "%{_target_base_arch}" == "i386"
426 %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
427 %define DepMod /sbin/depmod
428 %endif
429
5a99ae3d 430 %if "%{_target_base_arch}" == "ppc" || "%{_target_base_arch}" == "ppc64"
351f379b
JR
431 %define CrossOpts ARCH=powerpc CROSS_COMPILE=%{_target_cpu}-pld-linux-
432 %endif
433%else
434 %ifarch ppc ppc64
435 %define CrossOpts ARCH=powerpc CC="%{__cc}"
436 %else
437 %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
438 %endif
439 %define DepMod /sbin/depmod
440%endif
441%define MakeOpts %{CrossOpts} HOSTCC="%{__cc}"
442
443%define __features Netfilter module dated: %{netfilter_snap}\
15a064bf 444%{?with_grsecurity:Grsecurity support - enabled}\
351f379b
JR
445%{?with_pax:PaX support - enabled}\
446%{?with_fbcondecor:Fbsplash/fbcondecor - enabled }\
447%{?with_nfsroot:Root on NFS - enabled}\
af0f7570 448%{?with_virtiogl:virtio_gl for qemu-gl guest OpenGL accel - enabled}\
351f379b
JR
449
450%define Features %(echo "%{__features}" | sed '/^$/d')
451
a5585a68
AM
452%description
453This package contains the Linux kernel that is used to boot and run
454your system. It contains few device drivers for specific hardware.
455Most hardware is instead supported by modules loaded after booting.
456
351f379b
JR
457%{Features}
458
3a467bc1
JR
459%description -l de.UTF-8
460Das Kernel-Paket enthält den Linux-Kernel (vmlinuz), den Kern des
461Linux-Betriebssystems. Der Kernel ist für grundliegende
a5585a68 462Systemfunktionen verantwortlich: Speicherreservierung,
3a467bc1 463Prozeß-Management, Geräte Ein- und Ausgaben, usw.
a5585a68 464
351f379b
JR
465%{Features}
466
3a467bc1 467%description -l fr.UTF-8
a5585a68 468Le package kernel contient le kernel linux (vmlinuz), la partie
3a467bc1
JR
469centrale d'un système d'exploitation Linux. Le noyau traite les
470fonctions basiques d'un système d'exploitation: allocation mémoire,
471allocation de process, entrée/sortie de peripheriques, etc.
a5585a68 472
351f379b
JR
473%{Features}
474
3a467bc1
JR
475%description -l pl.UTF-8
476Pakiet zawiera jądro Linuksa niezbędne do prawidłowego działania
477Twojego komputera. Zawiera w sobie sterowniki do sprzętu znajdującego
478się w komputerze, takiego jak sterowniki dysków itp.
a5585a68 479
351f379b
JR
480%{Features}
481
482%package vmlinux
483Summary: vmlinux - uncompressed kernel image
484Summary(de.UTF-8): vmlinux - dekompressiertes Kernel Bild
485Summary(pl.UTF-8): vmlinux - rozpakowany obraz jądra
486Group: Base/Kernel
487Obsoletes: kernel-smp-vmlinux
488
489%description vmlinux
490vmlinux - uncompressed kernel image.
491
492%description vmlinux -l de.UTF-8
493vmlinux - dekompressiertes Kernel Bild.
494
495%description vmlinux -l pl.UTF-8
496vmlinux - rozpakowany obraz jądra.
497
a5585a68
AM
498%package drm
499Summary: DRM kernel modules
351f379b
JR
500Summary(de.UTF-8): DRM Kernel Treiber
501Summary(pl.UTF-8): Sterowniki DRM
a5585a68 502Group: Base/Kernel
351f379b
JR
503Requires(postun): %{name} = %{epoch}:%{version}-%{release}
504Requires: %{name} = %{epoch}:%{version}-%{release}
505Obsoletes: kernel-smp-drm
07ff8614 506AutoReqProv: no
a5585a68
AM
507
508%description drm
351f379b
JR
509DRM kernel modules.
510
511%description drm -l de.UTF-8
512DRM Kernel Treiber.
a5585a68 513
3a467bc1 514%description drm -l pl.UTF-8
351f379b 515Sterowniki DRM.
a5585a68
AM
516
517%package pcmcia
518Summary: PCMCIA modules
351f379b
JR
519Summary(de.UTF-8): PCMCIA Module
520Summary(pl.UTF-8): Moduły PCMCIA
a5585a68 521Group: Base/Kernel
351f379b
JR
522Requires(postun): %{name} = %{epoch}:%{version}-%{release}
523Requires: %{name} = %{epoch}:%{version}-%{release}
524Obsoletes: kernel-smp-pcmcia
525Conflicts: pcmcia-cs < 3.1.21
526Conflicts: pcmciautils < 004
07ff8614 527AutoReqProv: no
a5585a68
AM
528
529%description pcmcia
351f379b
JR
530PCMCIA modules.
531
532%description pcmcia -l de.UTF-8
533PCMCIA Module.
a5585a68 534
3a467bc1 535%description pcmcia -l pl.UTF-8
351f379b
JR
536Moduły PCMCIA.
537
a5585a68
AM
538%package sound-alsa
539Summary: ALSA kernel modules
351f379b
JR
540Summary(de.UTF-8): ALSA Kernel Module
541Summary(pl.UTF-8): Sterowniki dźwięku ALSA
a5585a68 542Group: Base/Kernel
351f379b
JR
543Requires(postun): %{name} = %{epoch}:%{version}-%{release}
544Requires: %{name} = %{epoch}:%{version}-%{release}
545Obsoletes: kernel-smp-sound-alsa
07ff8614 546AutoReqProv: no
a5585a68
AM
547
548%description sound-alsa
549ALSA (Advanced Linux Sound Architecture) sound drivers.
550
351f379b
JR
551%description sound-alsa -l de.UTF-8
552ALSA (Advanced Linux Sound Architecture) Sound-Treiber.
553
3a467bc1
JR
554%description sound-alsa -l pl.UTF-8
555Sterowniki dźwięku ALSA (Advanced Linux Sound Architecture).
a5585a68
AM
556
557%package sound-oss
558Summary: OSS kernel modules
351f379b
JR
559Summary(de.UTF-8): OSS Kernel Module
560Summary(pl.UTF-8): Sterowniki dźwięku OSS
a5585a68 561Group: Base/Kernel
351f379b
JR
562Requires(postun): %{name} = %{epoch}:%{version}-%{release}
563Requires: %{name} = %{epoch}:%{version}-%{release}
564Obsoletes: kernel-smp-sound-oss
07ff8614 565AutoReqProv: no
a5585a68
AM
566
567%description sound-oss
568OSS (Open Sound System) drivers.
569
351f379b
JR
570%description sound-oss -l de.UTF-8
571OSS (Open Sound System) Treiber.
572
3a467bc1
JR
573%description sound-oss -l pl.UTF-8
574Sterowniki dźwięku OSS (Open Sound System).
a5585a68 575
a5585a68
AM
576%package headers
577Summary: Header files for the Linux kernel
351f379b
JR
578Summary(de.UTF-8): Header Dateien für den Linux-Kernel
579Summary(pl.UTF-8): Pliki nagłówkowe jądra Linuksa
580Group: Development/Building
581Provides: %{name}-headers(netfilter) = %{netfilter_snap}
07ff8614 582AutoReqProv: no
a5585a68
AM
583
584%description headers
585These are the C header files for the Linux kernel, which define
351f379b
JR
586structures and constants that are needed when rebuilding the kernel or
587building kernel modules.
588
589%description headers -l de.UTF-8
590Dies sind die C Header Dateien für den Linux-Kernel, die definierte
591Strukturen und Konstante beinhalten, die beim rekompilieren des
592Kernels oder bei Kernel Modul kompilationen gebraucht werden.
a5585a68 593
3a467bc1
JR
594%description headers -l pl.UTF-8
595Pakiet zawiera pliki nagłówkowe jądra, niezbędne do rekompilacji jądra
596oraz budowania modułów jądra.
a5585a68
AM
597
598%package module-build
599Summary: Development files for building kernel modules
351f379b
JR
600Summary(de.UTF-8): Development Dateien die beim Kernel Modul kompilationen gebraucht werden
601Summary(pl.UTF-8): Pliki służące do budowania modułów jądra
602Group: Development/Building
a5585a68 603Requires: %{name}-headers = %{epoch}:%{version}-%{release}
fd19fa89 604Conflicts: rpmbuild(macros) < 1.550
07ff8614 605AutoReqProv: no
a5585a68
AM
606
607%description module-build
608Development files from kernel source tree needed to build Linux kernel
609modules from external packages.
610
351f379b
JR
611%description module-build -l de.UTF-8
612Development Dateien des Linux-Kernels die beim kompilieren externer
613Kernel Module gebraucht werden.
614
3a467bc1
JR
615%description module-build -l pl.UTF-8
616Pliki ze drzewa źródeł jądra potrzebne do budowania modułów jądra
617Linuksa z zewnętrznych pakietów.
a5585a68
AM
618
619%package source
620Summary: Kernel source tree
351f379b
JR
621Summary(de.UTF-8): Der Kernel Quelltext
622Summary(pl.UTF-8): Kod źródłowy jądra Linuksa
623Group: Development/Building
a5585a68 624Requires: %{name}-module-build = %{epoch}:%{version}-%{release}
07ff8614 625AutoReqProv: no
a5585a68
AM
626
627%description source
351f379b
JR
628This is the source code for the Linux kernel. You can build a custom
629kernel that is better tuned to your particular hardware.
a5585a68 630
3a467bc1
JR
631%description source -l de.UTF-8
632Das Kernel-Source-Paket enthält den source code (C/Assembler-Code) des
a5585a68 633Linux-Kernels. Die Source-Dateien werden gebraucht, um viele
351f379b 634C-Programme zu kompilieren, da sie auf Konstanten zurückgreifen, die
3a467bc1 635im Kernel-Source definiert sind. Die Source-Dateien können auch
351f379b 636benutzt werden, um einen Kernel zu kompilieren, der besser auf Ihre
a5585a68
AM
637Hardware ausgerichtet ist.
638
3a467bc1 639%description source -l fr.UTF-8
a5585a68 640Le package pour le kernel-source contient le code source pour le noyau
3a467bc1
JR
641linux. Ces sources sont nécessaires pour compiler la plupart des
642programmes C, car il dépend de constantes définies dans le code
643source. Les sources peuvent être aussi utilisée pour compiler un noyau
644personnalisé pour avoir de meilleures performances sur des matériels
a5585a68
AM
645particuliers.
646
3a467bc1
JR
647%description source -l pl.UTF-8
648Pakiet zawiera kod źródłowy jądra systemu.
a5585a68
AM
649
650%package doc
651Summary: Kernel documentation
351f379b
JR
652Summary(de.UTF-8): Kernel Dokumentation
653Summary(pl.UTF-8): Dokumentacja do jądra Linuksa
654Group: Documentation
07ff8614 655AutoReqProv: no
a5585a68
AM
656
657%description doc
658This is the documentation for the Linux kernel, as found in
659/usr/src/linux/Documentation directory.
660
351f379b
JR
661%description doc -l de.UTF-8
662Dies ist die Kernel Dokumentation wie sie im 'Documentation'
663Verzeichniss vorgefunden werden kann.
664
3a467bc1
JR
665%description doc -l pl.UTF-8
666Pakiet zawiera dokumentację do jądra Linuksa pochodzącą z katalogu
a5585a68
AM
667/usr/src/linux/Documentation.
668
669%prep
351f379b
JR
670%setup -qc
671ln -s %{SOURCE7} kernel-module-build.pl
672ln -s %{SOURCE10} Makefile
673cd linux-%{basever}
a5585a68 674
351f379b 675# hack against warning in pax/grsec
351f379b 676sed -i 's/-Werror//' arch/alpha/kernel/Makefile
a5585a68 677
351f379b
JR
678%if "%{postver}" != "%{nil}"
679%{__bzip2} -dc %{SOURCE1} | patch -p1 -s
680%endif
a5585a68 681
351f379b
JR
682# tuxonice:
683%if %{with tuxonice}
351f379b
JR
684%patch69 -p1
685%patch70 -p1
351f379b 686%endif
bf6838be 687
351f379b
JR
688%if %{with fbcondecor}
689%patch3 -p1
a5585a68 690%endif
351f379b 691%patch4 -p1
1414594b 692%patch5 -p1
a5585a68 693
351f379b
JR
694## netfilter
695#
a5585a68 696
351f379b
JR
697# kernel-pom-ng-IPV4OPTSSTRIP.patch
698%patch10 -p1
a5585a68 699
351f379b
JR
700# kernel-pom-ng-ipv4options.patch
701%patch11 -p1
a5585a68 702
351f379b
JR
703# kernel-pom-ng-mms-conntrack-nat.patch
704%patch16 -p1
a5585a68 705
351f379b
JR
706# kernel-pom-ng-rsh.patch
707%patch22 -p1
a5585a68 708
351f379b
JR
709# kernel-pom-ng-rpc.patch
710%patch23 -p1
a5585a68 711
351f379b
JR
712# kernel-nf_rtsp.patch
713%patch36 -p1
a5585a68 714
351f379b
JR
715# kernel-owner-xid.patch
716%if %{with vserver}
717%patch37 -p1
a5585a68 718%endif
a5585a68 719
351f379b
JR
720# kernel-layer7.patch
721%patch40 -p1
722
351f379b
JR
723##
724# end of netfilter
725
726# zph
727%patch49 -p1
728
729%if %{with imq}
730%patch50 -p1
a5585a68 731%endif
351f379b
JR
732
733# reiser4
734%if %{with reiser4}
735%patch51 -p1
a5585a68 736%endif
351f379b 737
351f379b 738# esfq
068b6c82
AM
739%if %{with esfq}
740%patch53 -p1
741%endif
351f379b
JR
742
743%if %{with wrr}
744%patch52 -p1
a5585a68 745%endif
351f379b
JR
746
747# toshiba_acpi
748%patch54 -p1
749
750%patch55 -p1
751%patch56 -p1
752
40bf088a
AM
753# squashfs lzma support
754%patch57 -p1
755
351f379b
JR
756# kernel-rndis_host-wm5.patch
757%patch59 -p1
758
759# hostap enhancements from/for aircrack-ng
760%patch85 -p1
761
351f379b
JR
762# vserver
763%if %{with vserver}
764%patch100 -p1
765%patch101 -p1
a5585a68 766%endif
351f379b 767
351f379b
JR
768# forcedeth
769%patch130 -p1
a5585a68 770
76b36ddb
ER
771%patch131 -p1
772
17da405a 773# aufs2
4f0767ce
JR
774%if %{with reiser4}
775%patch148 -p1
776%endif
20493b41
JR
777%patch145 -p1
778%patch146 -p1
779
780# unionfs
781%patch140 -p1
a5585a68 782
351f379b 783%patch2500 -p1
a5585a68 784
351f379b
JR
785%if %{with rescuecd}
786%patch7000 -p1
e981df17 787%endif
a5585a68 788
351f379b
JR
789# grsecurity & pax stuff
790#
351f379b 791
17da405a 792%if %{with grsecurity}
351f379b 793%patch9999 -p1
20493b41
JR
794# aufs2 needs to modify those pointers
795%patch147 -p1
351f379b
JR
796%{?with_vserver:%patch10000 -p1}
797%{?with_vserver:%patch10001 -p1}
798%{?with_vserver:%patch10002 -p1}
351f379b 799%endif
351f379b
JR
800#
801# end of grsecurity & pax stuff
802
df4db69a 803# apparmor
df4db69a 804%patch5000 -p1
df4db69a 805
54fd642e 806%patch250 -p1
807
351f379b
JR
808# routes
809%patch300 -p1
a5585a68 810
351f379b 811# Small fixes:
af0f7570 812#%patch2000 -p1
351f379b
JR
813%patch2001 -p1
814#%patch2003 -p1
a5585a68 815
73cc1c57 816# Do not remove this, please!
817#%patch50000 -p1
af0f7570 818%{?with_virtiogl:%patch60000 -p1}
73cc1c57 819
351f379b
JR
820# Fix EXTRAVERSION in main Makefile
821sed -i 's#EXTRAVERSION =.*#EXTRAVERSION = %{postver}%{?alt_kernel:_%{alt_kernel}}#g' Makefile
a5585a68 822
351f379b
JR
823# cleanup backups after patching
824find '(' -name '*~' -o -name '*.orig' -o -name '.gitignore' ')' -print0 | xargs -0 -r -l512 rm -f
a5585a68 825
351f379b
JR
826%build
827install -d %{objdir}
828cat > %{targetobj}.mk <<'EOF'
829# generated by %{name}.spec
d85d4a9b 830KERNELSRC := %{srcdir}
351f379b
JR
831KERNELOUTPUT := %{objdir}
832
833SRCARCH := %{target_arch_dir}
834ARCH := %{_target_base_arch}
835Q := %{!?with_verbose:@}
836MAKE_OPTS := %{MakeOpts}
837DEFCONFIG := %{defconfig}
838EOF
a5585a68 839
351f379b
JR
840PaXconfig() {
841 set -x
842 cat <<-EOCONFIG > $1
843 %ifarch %{ix86}
844 CONFIG_PAX_SEGMEXEC=y
845 # performance impact on CPUs without NX bit
846 CONFIG_PAX_PAGEEXEC=n
847 # Testing KERNEXEC
848
849 CONFIG_HOTPLUG_PCI_COMPAQ_NVRAM=n
850 CONFIG_PCI_BIOS=n
851 CONFIG_EFI=n
852 %endif
a5585a68 853
351f379b
JR
854 %ifarch ppc64
855 CONFIG_PAX_NOELFRELOCS=n
856 %endif
857 %ifarch ppc
858 CONFIG_PAX_EMUTRAMP=y
859 CONFIG_PAX_EMUSIGRT=y
860 CONFIG_PAX_EMUPLT=y
861 %endif
a5585a68 862
351f379b
JR
863 %ifarch sparc sparc64 alpha
864 CONFIG_PAX_EMUPLT=y
865 %endif
a5585a68 866
d615e060 867 # Now we have to check MAC system integration. Grsecurity uses PAX_HAVE_ACL_FLAGS
351f379b
JR
868 # setting (direct acces). grsec_minimal probably have no idea about PaX so we probably
869 # could use PAX_NO_ACL_FLAGS, but for testing the hooks setting will be used
e69c45e8 870 # PAX_HOOK_ACL_FLAGS.
351f379b 871
15a064bf 872 %if %{with grsecurity}
351f379b
JR
873 # Hardening grsec options if with pax
874 CONFIG_GRKERNSEC_PROC_MEMMAP=y
875 # almost rational (see HIDESYM help)
876 CONFIG_GRKERNSEC_HIDESYM=y
877
878 # no change needed CONFIG=PAX_HAVE_ACL_FLAGS=y is taken from the kernel-pax.config
879 %else
351f379b
JR
880 CONFIG_PAX_HAVE_ACL_FLAGS=n
881 CONFIG_PAX_HOOK_ACL_FLAGS=y
882 %endif
883EOCONFIG
a5585a68 884
351f379b
JR
885 return 0
886}
a5585a68 887
351f379b
JR
888RescueConfig() {
889 set -x
890 cat <<-EOCONFIG > $1
891 # CONFIG_SOUND is not set
892 # CONFIG_AUDIT is not set
893 # CONFIG_TR is not set
894 # CONFIG_BT is not set
895 # CONFIG_VIDEO_DEV is not set
896 # CONFIG_DVB_CORE is not set
897 # CONFIG_HAMRADIO is not set
898 # CONFIG_ARCNET is not set
899 # CONFIG_FB is not set
900 # CONFIG_DRM is not set
901 # CONFIG_WATCHDOG is not set
902 # CONFIG_INPUT_JOYSTICK is not set
903 # CONFIG_DEBUG_KERNEL is not set
904 # CONFIG_ISDN is not set
905 # CONFIG_AGP is not set
906 # CONFIG_SECURITY is not set
907 # CONFIG_PARIDE is not set
908 # CONFIG_CPU_FREQ is not set
909 # CONFIG_GAMEPORT is not set
910 # CONFIG_KVM is not set
911 # CONFIG_PHONE is not set
dd55897d 912 # CONFIG_STRICT_DEVMEM is not set
6bab3a31 913 # CONFIG_IMA is not set
351f379b 914 CONFIG_AUFS=y
a899ef35 915 CONFIG_AUFS_FS=y
916 CONFIG_AUFS_BR_RAMFS=y
62fff140 917 CONFIG_AUFS_RDU=y
351f379b
JR
918 CONFIG_BLK_DEV_LOOP=y
919 CONFIG_ISO9660_FS=y
920 CONFIG_NLS_UTF8=y
6b79006d 921 CONFIG_SQUASHFS=y
351f379b
JR
922EOCONFIG
923
924 return 0
925}
a5585a68 926
351f379b
JR
927BuildConfig() {
928 %{?debug:set -x}
929 set -e
a5585a68 930
351f379b
JR
931 Config="kernel-%{target_arch_dir}.config"
932 echo >&2 "Building config file for %{_target_cpu} using $Config et al."
a5585a68 933
351f379b
JR
934 # prepare local and important options
935 cat <<-EOCONFIG > important.config
936 LOCALVERSION="-%{localversion}"
fb4e3822 937
351f379b
JR
938%if 0%{?debug:1}
939 CONFIG_DEBUG_SLAB=y
940 CONFIG_DEBUG_SLAB_LEAK=y
941 CONFIG_DEBUG_PREEMPT=y
942 CONFIG_RT_DEADLOCK_DETECT=y
a5585a68 943%endif
351f379b 944
351f379b
JR
945%if %{without ipv6}
946 CONFIG_IPV6=n
947%endif
a5585a68 948
351f379b
JR
949%ifarch i686 athlon pentium3 pentium4
950 %if %{with pae}
951 CONFIG_HIGHMEM4G=n
952 CONFIG_HIGHMEM64G=y
953 CONFIG_X86_PAE=y
7c99a84b 954 CONFIG_NUMA=n
351f379b
JR
955 %endif
956%endif
a5585a68 957
351f379b
JR
958%if %{without pcmcia}
959 CONFIG_PCMCIA=n
960%endif
a5585a68 961
351f379b
JR
962%if %{with fbcondecor}
963 CONFIG_FB_S3=n
964 CONFIG_FB_VT8623=n
965 CONFIG_FB_ARK=n
966 CONFIG_FB_TILEBLITTING=n
967 CONFIG_FB_CON_DECOR=y
968%endif
a5585a68 969
351f379b
JR
970%if %{with nfsroot}
971 CONFIG_NFS_FS=y
972 CONFIG_ROOT_NFS=y
973%endif
a5585a68 974
af0f7570
KK
975%if %{with virtio_gl}
976 CONFIG_VIRTIOGL=m
977%endif
978
351f379b 979# Temporary disabled RELOCATABLE. Needed only on x86??
15a064bf 980%if %{with pax} || %{with grsecurity}
351f379b
JR
981 CONFIG_RELOCATABLE=n
982%endif
983EOCONFIG
a5585a68 984
351f379b
JR
985%if %{with rescuecd}
986 RescueConfig rescue.config
987%endif
17da405a 988%if %{with pax}
351f379b
JR
989 PaXconfig pax.config
990%endif
a5585a68 991
351f379b
JR
992 # prepare kernel-style config file from multiple config files
993 %{__awk} -v arch="all %{target_arch_dir} %{_target_base_arch} %{_target_cpu}" -f %{SOURCE6} \
101ae904 994%if %{with myown}
995 $RPM_SOURCE_DIR/kernel-%{alt_kernel}.config \
996%endif
351f379b
JR
997 important.config \
998%if %{with rescuecd}
999 %{SOURCE58} \
1000 %{SOURCE59} \
1001 rescue.config \
1002%endif
1003 \
17da405a 1004%if %{with pax}
351f379b
JR
1005 %{SOURCE45} \
1006 %{SOURCE49} \
1007 pax.config \
1008%else
15a064bf 1009 %if %{with grsecurity}
351f379b
JR
1010 %{SOURCE45} \
1011 %{SOURCE50} \
351f379b 1012 %endif
351f379b
JR
1013%endif
1014 \
1015%if %{with reiser4}
1016 %{SOURCE56} \
1017%endif
1018%if %{with wrr}
1019 %{SOURCE57} \
1020%endif
1021%if %{with imq}
1022 %{SOURCE55} \
1023%endif
1024%if %{with vserver}
1025 %{SOURCE43} \
1026%endif
1027%if %{with tuxonice}
1028%ifarch %{ix86} %{x8664} ia64 ppc ppc64
1029 %{SOURCE42} \
1030%endif
351f379b
JR
1031%endif
1032 %{SOURCE40} %{?0:netfilter} \
1033 %{SOURCE41} %{?0:patches} \
1034 %{SOURCE20} \
1035 $RPM_SOURCE_DIR/$Config
1036}
a5585a68 1037
351f379b
JR
1038cd %{objdir}
1039install -d arch/%{target_arch_dir}
351f379b 1040BuildConfig > %{defconfig}
351f379b
JR
1041ln -sf %{defconfig} .config
1042cd -
a5585a68 1043
7856c5e8
AM
1044%{__make} \
1045 TARGETOBJ=%{targetobj} \
1046 %{?with_verbose:V=1} \
1047 oldconfig
a5585a68 1048
351f379b 1049%{__awk} %{?debug:-v dieOnError=1} -v infile=%{objdir}/%{defconfig} -f %{SOURCE8} %{objdir}/.config
a5585a68 1050
351f379b 1051# build kernel
7856c5e8
AM
1052%{__make} \
1053 TARGETOBJ=%{targetobj} \
1054 %{?with_verbose:V=1} \
1055 all
a5585a68 1056
351f379b
JR
1057%install
1058rm -rf $RPM_BUILD_ROOT
4505b6c5 1059%{__make} %{MakeOpts} -j1 %{!?with_verbose:-s} modules_install firmware_install \
351f379b
JR
1060 -C %{objdir} \
1061 %{?with_verbose:V=1} \
1062 DEPMOD=%{DepMod} \
1063 INSTALL_MOD_PATH=$RPM_BUILD_ROOT \
1064 INSTALL_FW_PATH=$RPM_BUILD_ROOT/lib/firmware/%{kernel_release} \
1065 KERNELRELEASE=%{kernel_release}
1066
1067install -d $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/misc
1068
101ae904 1069# create directories which may be missing, to simplyfy %files
64d14572 1070install -d $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/kernel/{arch,sound,mm}
101ae904 1071
351f379b
JR
1072# rpm obeys filelinkto checks for ghosted symlinks, convert to files
1073rm -f $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/{build,source}
1074touch $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/{build,source}
1075
6d54bd67
ER
1076# no point embed content for %ghost files. empty them
1077for a in \
1078 dep{,.bin} \
1079 alias{,.bin} \
1080 symbols{,.bin} \
1081 {pci,usb,ccw,isapnp,input,ieee1394,serio,of}map \
1082; do
09e63f4a 1083 test -f $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/modules.$a
6d54bd67
ER
1084 > $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/modules.$a
1085done
1086
351f379b
JR
1087# /boot
1088install -d $RPM_BUILD_ROOT/boot
1089cp -a %{objdir}/System.map $RPM_BUILD_ROOT/boot/System.map-%{kernel_release}
1090%ifarch %{ix86} %{x8664}
1db9a2c1
ER
1091 cp -a %{objdir}/arch/%{target_arch_dir}/boot/bzImage $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
1092 install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinux-%{kernel_release}
351f379b
JR
1093%endif
1094%ifarch ppc ppc64
1db9a2c1
ER
1095 install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
1096 install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinux-%{kernel_release}
a5585a68 1097%endif
a5585a68 1098%ifarch ia64
1db9a2c1
ER
1099 %{__gzip} -cfv %{objdir}/vmlinux > %{objdir}/vmlinuz
1100 cp -a %{objdir}/vmlinuz $RPM_BUILD_ROOT/boot/efi/vmlinuz-%{kernel_release}
1101 ln -sf efi/vmlinuz-%{kernel_release} $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
351f379b
JR
1102%endif
1103%ifarch alpha sparc sparc64
1104 %{__gzip} -cfv %{objdir}/vmlinux > %{objdir}/vmlinuz
1105 cp -a %{objdir}/vmlinuz $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
1db9a2c1
ER
1106 install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
1107 %ifarch sparc
1108 elftoaout %{objdir}/arch/sparc/boot/image -o %{objdir}/vmlinux.aout
1109 install -p %{objdir}/vmlinux.aout $RPM_BUILD_ROOT/boot/vmlinux.aout-%{kernel_release}
1110 %endif
1111 %ifarch sparc64
1112 elftoaout %{objdir}/arch/sparc64/boot/image -o %{objdir}/vmlinux.aout
1113 install -p %{objdir}/vmlinux.aout $RPM_BUILD_ROOT/boot/vmlinux.aout-%{kernel_release}
1114 %endif
351f379b
JR
1115%endif
1116%ifarch arm
1db9a2c1 1117 install -p %{objdir}/arch/arm/boot/zImage $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
a5585a68 1118%endif
a5585a68 1119
351f379b
JR
1120# ghosted initrd
1121touch $RPM_BUILD_ROOT%{initrd_dir}/initrd-%{kernel_release}.gz
a5585a68 1122
351f379b
JR
1123%if "%{_target_base_arch}" != "%{_arch}"
1124touch $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/modules.dep
1125%endif
a5585a68 1126
351f379b
JR
1127# /etc/modrobe.d
1128install -d $RPM_BUILD_ROOT%{_sysconfdir}/modprobe.d/%{kernel_release}
a5585a68 1129
351f379b 1130# /usr/src/linux
11b2646e 1131install -d $RPM_BUILD_ROOT%{_kernelsrcdir}/include/generated
351f379b
JR
1132# test if we can hardlink -- %{_builddir} and $RPM_BUILD_ROOT on same partition
1133if cp -al %{srcdir}/COPYING $RPM_BUILD_ROOT/COPYING 2>/dev/null; then
1134 l=l
1135 rm -f $RPM_BUILD_ROOT/COPYING
a5585a68 1136fi
a5585a68 1137
351f379b
JR
1138cp -a$l %{srcdir}/* $RPM_BUILD_ROOT%{_kernelsrcdir}
1139cp -a %{objdir}/Module.symvers $RPM_BUILD_ROOT%{_kernelsrcdir}/Module.symvers-dist
1140cp -aL %{objdir}/.config $RPM_BUILD_ROOT%{_kernelsrcdir}/config-dist
11b2646e
AM
1141cp -a %{objdir}/include/generated/autoconf.h $RPM_BUILD_ROOT%{_kernelsrcdir}/include/generated/autoconf-dist.h
1142cp -a %{objdir}/include/generated/utsrelease.h $RPM_BUILD_ROOT%{_kernelsrcdir}/include/generated
1143cp -a %{objdir}/include/linux/version.h $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux
1144cp -a %{SOURCE3} $RPM_BUILD_ROOT%{_kernelsrcdir}/include/generated/autoconf.h
351f379b
JR
1145cp -a %{SOURCE4} $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux/config.h
1146
1147# collect module-build files and directories
1148# Usage: kernel-module-build.pl $rpmdir $fileoutdir
1149fileoutdir=$(pwd)
1150cd $RPM_BUILD_ROOT%{_kernelsrcdir}
1151%{__perl} %{topdir}/kernel-module-build.pl %{_kernelsrcdir} $fileoutdir
1152cd -
1153
30f08736
ER
1154# move to %{_docdir} so we wouldn't depend on any kernel package for dirs
1155install -d $RPM_BUILD_ROOT%{_docdir}
1156mv $RPM_BUILD_ROOT{%{_kernelsrcdir}/Documentation,%{_docdir}/%{name}-%{version}}
1157
d3a69071
ER
1158rm -f $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/dontdiff
1159rm -f $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/Makefile
1160rm -f $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/*/Makefile
1161rm -f $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/*/*/Makefile
1162
351f379b
JR
1163%clean
1164rm -rf $RPM_BUILD_ROOT
1165
1166%preun
1167if [ -x /sbin/new-kernel-pkg ]; then
1168 /sbin/new-kernel-pkg --remove %{kernel_release}
a5585a68 1169fi
351f379b
JR
1170
1171%post
1172%ifarch ia64
1173mv -f /boot/efi/vmlinuz{,.old} 2> /dev/null
1174%{?alt_kernel:mv -f /boot/efi/vmlinuz%{_alt_kernel}{,.old} 2> /dev/null}
1175ln -sf vmlinuz-%{kernel_release} /boot/efi/vmlinuz
1176%{?alt_kernel:ln -sf vmlinuz-%{kernel_release} /boot/efi/vmlinuz%{_alt_kernel}}
1177%endif
1178mv -f /boot/vmlinuz{,.old} 2> /dev/null
1179%{?alt_kernel:mv -f /boot/vmlinuz%{_alt_kernel}{,.old} 2> /dev/null}
1180mv -f /boot/System.map{,.old} 2> /dev/null
1181%{?alt_kernel:mv -f /boot/System%{_alt_kernel}.map{,.old} 2> /dev/null}
1182ln -sf vmlinuz-%{kernel_release} /boot/vmlinuz
1183%{?alt_kernel:ln -sf vmlinuz-%{kernel_release} /boot/vmlinuz%{_alt_kernel}}
1184ln -sf System.map-%{kernel_release} /boot/System.map
1185%{?alt_kernel:ln -sf System.map-%{kernel_release} /boot/System.map%{_alt_kernel}}
1186
1187%depmod %{kernel_release}
1188
4dabe329
ER
1189%posttrans
1190# generate initrd after all dependant modules are installed
351f379b
JR
1191/sbin/geninitrd -f --initrdfs=rom %{initrd_dir}/initrd-%{kernel_release}.gz %{kernel_release}
1192mv -f %{initrd_dir}/initrd{,.old} 2> /dev/null
1193%{?alt_kernel:mv -f %{initrd_dir}/initrd%{_alt_kernel}{,.old} 2> /dev/null}
1194ln -sf initrd-%{kernel_release}.gz %{initrd_dir}/initrd
1195%{?alt_kernel:ln -sf initrd-%{kernel_release}.gz %{initrd_dir}/initrd%{_alt_kernel}}
1196
4dabe329 1197# update boot loaders when old package files are gone from filesystem
c5de1ad5 1198if [ -x /sbin/update-grub -a -f /etc/sysconfig/grub ]; then
4dabe329
ER
1199 if [ "$(. /etc/sysconfig/grub; echo ${UPDATE_GRUB:-no})" = "yes" ]; then
1200 /sbin/update-grub >/dev/null
c5de1ad5
ER
1201 fi
1202fi
351f379b
JR
1203if [ -x /sbin/new-kernel-pkg ]; then
1204 /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
1205fi
1206if [ -x /sbin/rc-boot ]; then
351f379b 1207 /sbin/rc-boot 1>&2 || :
a5585a68 1208fi
a5585a68 1209
351f379b
JR
1210%post vmlinux
1211mv -f /boot/vmlinux{,.old} 2> /dev/null
1212%{?alt_kernel:mv -f /boot/vmlinux-%{alt_kernel}{,.old} 2> /dev/null}
1213ln -sf vmlinux-%{kernel_release} /boot/vmlinux
1214%{?alt_kernel:ln -sf vmlinux-%{kernel_release} /boot/vmlinux-%{alt_kernel}}
1215
351f379b
JR
1216%post drm
1217%depmod %{kernel_release}
a5585a68 1218
351f379b
JR
1219%postun drm
1220%depmod %{kernel_release}
a5585a68 1221
351f379b
JR
1222%post pcmcia
1223%depmod %{kernel_release}
a5585a68 1224
351f379b
JR
1225%postun pcmcia
1226%depmod %{kernel_release}
a5585a68 1227
351f379b
JR
1228%post sound-alsa
1229%depmod %{kernel_release}
a5585a68 1230
351f379b
JR
1231%postun sound-alsa
1232%depmod %{kernel_release}
a5585a68 1233
351f379b
JR
1234%post sound-oss
1235%depmod %{kernel_release}
a5585a68 1236
351f379b
JR
1237%postun sound-oss
1238%depmod %{kernel_release}
a5585a68
AM
1239
1240%post headers
351f379b 1241ln -snf %{basename:%{_kernelsrcdir}} %{_prefix}/src/linux%{_alt_kernel}
a5585a68
AM
1242
1243%postun headers
351f379b
JR
1244if [ "$1" = "0" ]; then
1245 if [ -L %{_prefix}/src/linux%{_alt_kernel} ]; then
1246 if [ "$(readlink %{_prefix}/src/linux%{_alt_kernel})" = "linux%{_alt_kernel}-%{version}" ]; then
1247 rm -f %{_prefix}/src/linux%{_alt_kernel}
a5585a68
AM
1248 fi
1249 fi
1250fi
1251
351f379b
JR
1252%triggerin module-build -- %{name} = %{epoch}:%{version}-%{release}
1253ln -sfn %{_kernelsrcdir} /lib/modules/%{kernel_release}/build
1254ln -sfn %{_kernelsrcdir} /lib/modules/%{kernel_release}/source
1255
1256%triggerun module-build -- %{name} = %{epoch}:%{version}-%{release}
1257if [ "$1" = 0 ]; then
1258 rm -f /lib/modules/%{kernel_release}/{build,source}
1259fi
1260
a5585a68
AM
1261%files
1262%defattr(644,root,root,755)
a5585a68 1263%ifarch sparc sparc64
351f379b 1264/boot/vmlinux.aout-%{kernel_release}
a5585a68
AM
1265%endif
1266%ifarch ia64
351f379b
JR
1267/boot/efi/vmlinuz-%{kernel_release}
1268%endif
1269/boot/vmlinuz-%{kernel_release}
1270/boot/System.map-%{kernel_release}
1271%ghost %{initrd_dir}/initrd-%{kernel_release}.gz
ae1c66e5 1272/lib/firmware/%{kernel_release}
351f379b
JR
1273
1274%dir /lib/modules/%{kernel_release}
1275%dir /lib/modules/%{kernel_release}/kernel
351f379b 1276/lib/modules/%{kernel_release}/kernel/arch
351f379b
JR
1277/lib/modules/%{kernel_release}/kernel/crypto
1278/lib/modules/%{kernel_release}/kernel/drivers
101ae904 1279%if %{have_drm}
351f379b
JR
1280%exclude /lib/modules/%{kernel_release}/kernel/drivers/gpu
1281%endif
1282/lib/modules/%{kernel_release}/kernel/fs
351f379b 1283/lib/modules/%{kernel_release}/kernel/kernel
351f379b
JR
1284/lib/modules/%{kernel_release}/kernel/lib
1285/lib/modules/%{kernel_release}/kernel/net
fecce547 1286/lib/modules/%{kernel_release}/kernel/mm
101ae904 1287%if %{have_sound}
351f379b
JR
1288%dir /lib/modules/%{kernel_release}/kernel/sound
1289/lib/modules/%{kernel_release}/kernel/sound/ac97_bus.ko*
1290/lib/modules/%{kernel_release}/kernel/sound/sound*.ko*
1291%ifnarch sparc
1292%exclude /lib/modules/%{kernel_release}/kernel/drivers/media/video/cx88/cx88-alsa.ko*
1293%exclude /lib/modules/%{kernel_release}/kernel/drivers/media/video/em28xx/em28xx-alsa.ko*
1294%exclude /lib/modules/%{kernel_release}/kernel/drivers/media/video/saa7134/saa7134-alsa.ko*
1295%endif
1296%endif
1297%dir /lib/modules/%{kernel_release}/misc
101ae904 1298%if %{have_pcmcia}
351f379b
JR
1299%exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/[!p]*
1300%exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/pd6729.ko*
1301%exclude /lib/modules/%{kernel_release}/kernel/drivers/*/pcmcia
1302%if %{without rescuecd}
1303%exclude /lib/modules/%{kernel_release}/kernel/drivers/ata/pata_pcmcia.ko*
1304%exclude /lib/modules/%{kernel_release}/kernel/drivers/bluetooth/*_cs.ko*
1305%exclude /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
1306%exclude /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/b1pcmcia.ko*
1307%exclude /lib/modules/%{kernel_release}/kernel/drivers/telephony/ixj_pcmcia.ko*
1308%exclude /lib/modules/%{kernel_release}/kernel/drivers/usb/gadget/g_midi.ko*
1309%endif
1310%exclude /lib/modules/%{kernel_release}/kernel/drivers/ide/ide-cs.ko*
1311%exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/*_cs.ko*
1312%exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/b43
1313%exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/hostap/hostap_cs.ko*
1314%exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/libertas/*_cs.ko*
1315%exclude /lib/modules/%{kernel_release}/kernel/drivers/parport/parport_cs.ko*
1316%exclude /lib/modules/%{kernel_release}/kernel/drivers/serial/serial_cs.ko*
1317%exclude /lib/modules/%{kernel_release}/kernel/drivers/usb/host/sl811_cs.ko*
1318%endif
101ae904 1319%if %{with myown}
1320/lib/modules/%{kernel_release}/kernel/sound
1321%endif
6d54bd67
ER
1322
1323%dir %{_sysconfdir}/modprobe.d/%{kernel_release}
1324
1325# provided by build
1326/lib/modules/%{kernel_release}/modules.order
5ebe7534 1327/lib/modules/%{kernel_release}/modules.builtin
6d54bd67
ER
1328
1329# rest modules.* are ghost (regenerated by post depmod -a invocation)
1330%ghost /lib/modules/%{kernel_release}/modules.alias
1331%ghost /lib/modules/%{kernel_release}/modules.alias.bin
1332%ghost /lib/modules/%{kernel_release}/modules.ccwmap
1333%ghost /lib/modules/%{kernel_release}/modules.dep
1334%ghost /lib/modules/%{kernel_release}/modules.dep.bin
1335%ghost /lib/modules/%{kernel_release}/modules.ieee1394map
1336%ghost /lib/modules/%{kernel_release}/modules.inputmap
1337%ghost /lib/modules/%{kernel_release}/modules.isapnpmap
1338%ghost /lib/modules/%{kernel_release}/modules.ofmap
1339%ghost /lib/modules/%{kernel_release}/modules.pcimap
1340%ghost /lib/modules/%{kernel_release}/modules.seriomap
1341%ghost /lib/modules/%{kernel_release}/modules.symbols
1342%ghost /lib/modules/%{kernel_release}/modules.symbols.bin
1343%ghost /lib/modules/%{kernel_release}/modules.usbmap
1344
351f379b
JR
1345# symlinks pointing to kernelsrcdir
1346%ghost /lib/modules/%{kernel_release}/build
1347%ghost /lib/modules/%{kernel_release}/source
351f379b 1348
351f379b
JR
1349%ifarch alpha %{ix86} %{x8664} ppc ppc64 sparc sparc64
1350%files vmlinux
a5585a68 1351%defattr(644,root,root,755)
351f379b 1352/boot/vmlinux-%{kernel_release}
a5585a68
AM
1353%endif
1354
101ae904 1355%if %{have_drm}
351f379b 1356%files drm
a5585a68 1357%defattr(644,root,root,755)
351f379b 1358/lib/modules/%{kernel_release}/kernel/drivers/gpu
a5585a68
AM
1359%endif
1360
101ae904 1361%if %{have_pcmcia}
351f379b 1362%files pcmcia
a5585a68 1363%defattr(644,root,root,755)
351f379b
JR
1364/lib/modules/%{kernel_release}/kernel/drivers/pcmcia/*ko*
1365/lib/modules/%{kernel_release}/kernel/drivers/*/pcmcia
1366%exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/pcmcia*ko*
1367%if %{without rescuecd}
1368/lib/modules/%{kernel_release}/kernel/drivers/bluetooth/*_cs.ko*
1369/lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
1370/lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/b1pcmcia.ko*
1371/lib/modules/%{kernel_release}/kernel/drivers/telephony/ixj_pcmcia.ko*
1372%endif
1373/lib/modules/%{kernel_release}/kernel/drivers/ata/pata_pcmcia.ko*
1374/lib/modules/%{kernel_release}/kernel/drivers/ide/ide-cs.ko*
1375/lib/modules/%{kernel_release}/kernel/drivers/net/wireless/*_cs.ko*
1376/lib/modules/%{kernel_release}/kernel/drivers/net/wireless/b43
1377/lib/modules/%{kernel_release}/kernel/drivers/net/wireless/hostap/hostap_cs.ko*
1378/lib/modules/%{kernel_release}/kernel/drivers/net/wireless/libertas/*_cs.ko*
1379/lib/modules/%{kernel_release}/kernel/drivers/parport/parport_cs.ko*
1380/lib/modules/%{kernel_release}/kernel/drivers/serial/serial_cs.ko*
1381/lib/modules/%{kernel_release}/kernel/drivers/usb/host/sl811_cs.ko*
1382%endif
1383
101ae904 1384%if %{have_sound}
351f379b 1385%files sound-alsa
a5585a68 1386%defattr(644,root,root,755)
351f379b
JR
1387/lib/modules/%{kernel_release}/kernel/sound
1388%exclude %dir /lib/modules/%{kernel_release}/kernel/sound
1389%exclude /lib/modules/%{kernel_release}/kernel/sound/ac97_bus.ko*
1390%exclude /lib/modules/%{kernel_release}/kernel/sound/sound*.ko*
1391%if %{have_oss}
1392%exclude /lib/modules/%{kernel_release}/kernel/sound/oss
a5585a68 1393%endif
351f379b
JR
1394%ifnarch sparc
1395/lib/modules/%{kernel_release}/kernel/drivers/usb/gadget/g_midi.ko*
1396/lib/modules/%{kernel_release}/kernel/drivers/media/video/cx88/cx88-alsa.ko*
1397/lib/modules/%{kernel_release}/kernel/drivers/media/video/em28xx/em28xx-alsa.ko*
1398/lib/modules/%{kernel_release}/kernel/drivers/media/video/saa7134/saa7134-alsa.ko*
a5585a68
AM
1399%endif
1400
101ae904 1401%if %{have_oss}
351f379b 1402%files sound-oss
a5585a68 1403%defattr(644,root,root,755)
351f379b 1404/lib/modules/%{kernel_release}/kernel/sound/oss
a5585a68 1405%endif
a5585a68
AM
1406%endif
1407
fecce547 1408%files headers -f files.headers_exclude_kbuild
a5585a68 1409%defattr(644,root,root,755)
30f08736 1410%dir %{_kernelsrcdir}
351f379b
JR
1411%{_kernelsrcdir}/include
1412%dir %{_kernelsrcdir}/arch
1413%dir %{_kernelsrcdir}/arch/[!K]*
1414%{_kernelsrcdir}/arch/*/include
1415%dir %{_kernelsrcdir}/security
1416%dir %{_kernelsrcdir}/security/selinux
1417%{_kernelsrcdir}/security/selinux/include
1418%{_kernelsrcdir}/config-dist
1419%{_kernelsrcdir}/Module.symvers-dist
1420
fecce547 1421%files module-build -f files.mb_include_modulebuild_and_dirs
a5585a68 1422%defattr(644,root,root,755)
351f379b
JR
1423%ifarch ppc ppc64
1424%{_kernelsrcdir}/arch/powerpc/lib/crtsavres.*
1425%endif
fecce547 1426%exclude %dir %{_kernelsrcdir}/arch/m68knommu
1427%exclude %dir %{_kernelsrcdir}/arch/um
351f379b
JR
1428%{_kernelsrcdir}/arch/*/kernel/asm-offsets*
1429%{_kernelsrcdir}/arch/*/kernel/sigframe*.h
1430%{_kernelsrcdir}/drivers/lguest/lg.h
1431%{_kernelsrcdir}/kernel/bounds.c
1432%dir %{_kernelsrcdir}/scripts
351f379b
JR
1433%{_kernelsrcdir}/scripts/Kbuild.include
1434%{_kernelsrcdir}/scripts/Makefile*
1435%{_kernelsrcdir}/scripts/basic
960d2e94 1436%{_kernelsrcdir}/scripts/kconfig
1437%{_kernelsrcdir}/scripts/mkcompile_h
351f379b
JR
1438%{_kernelsrcdir}/scripts/mkmakefile
1439%{_kernelsrcdir}/scripts/mod
960d2e94 1440%{_kernelsrcdir}/scripts/module-common.lds
351f379b
JR
1441%{_kernelsrcdir}/scripts/setlocalversion
1442%{_kernelsrcdir}/scripts/*.c
1443%{_kernelsrcdir}/scripts/*.sh
351f379b
JR
1444%dir %{_kernelsrcdir}/scripts/selinux
1445%{_kernelsrcdir}/scripts/selinux/Makefile
9d6d5869
AM
1446%dir %{_kernelsrcdir}/scripts/selinux/genheaders
1447%{_kernelsrcdir}/scripts/selinux/genheaders/Makefile
1448%{_kernelsrcdir}/scripts/selinux/genheaders/*.c
c78e408d
PZ
1449%dir %{_kernelsrcdir}/scripts/selinux/mdp
1450%{_kernelsrcdir}/scripts/selinux/mdp/Makefile
1451%{_kernelsrcdir}/scripts/selinux/mdp/*.c
fecce547 1452%exclude %dir %{_kernelsrcdir}/security
1453%exclude %dir %{_kernelsrcdir}/security/selinux
a5585a68 1454
1848fd38 1455%if %{with doc}
a5585a68
AM
1456%files doc
1457%defattr(644,root,root,755)
d3a69071
ER
1458%dir %{_docdir}/%{name}-%{version}
1459
1460%{_docdir}/%{name}-%{version}/[!jkz]*
1461%{_docdir}/%{name}-%{version}/[jkz]*.txt
1462%{_docdir}/%{name}-%{version}/kbuild
1463%{_docdir}/%{name}-%{version}/kdump
2ddc4ac9 1464%{_docdir}/%{name}-%{version}/kvm
d3a69071
ER
1465%lang(ja) %{_docdir}/%{name}-%{version}/ja_JP
1466%lang(ko) %{_docdir}/%{name}-%{version}/ko_KR
1467%lang(zh_CN) %{_docdir}/%{name}-%{version}/zh_CN
1848fd38 1468%endif
a5585a68
AM
1469
1470%if %{with source}
fecce547 1471%files source -f files.source_exclude_modulebuild_and_dirs
a5585a68 1472%defattr(644,root,root,755)
351f379b
JR
1473%{_kernelsrcdir}/arch/*/[!Mik]*
1474%{_kernelsrcdir}/arch/*/kernel/[!M]*
351f379b
JR
1475%{_kernelsrcdir}/arch/ia64/install.sh
1476%{_kernelsrcdir}/arch/m68k/ifpsp060/[!M]*
1477%{_kernelsrcdir}/arch/m68k/ifpsp060/MISC
fecce547 1478%{_kernelsrcdir}/arch/m68k/install.sh
351f379b
JR
1479%{_kernelsrcdir}/arch/parisc/install.sh
1480%{_kernelsrcdir}/arch/x86/ia32/[!M]*
1481%{_kernelsrcdir}/arch/ia64/kvm
1482%{_kernelsrcdir}/arch/powerpc/kvm
1483%ifarch ppc ppc64
1484%exclude %{_kernelsrcdir}/arch/powerpc/lib/crtsavres.*
1485%endif
1486%{_kernelsrcdir}/arch/s390/kvm
1487%{_kernelsrcdir}/arch/x86/kvm
1488%exclude %{_kernelsrcdir}/arch/*/kernel/asm-offsets*
1489%exclude %{_kernelsrcdir}/arch/*/kernel/sigframe*.h
1490%exclude %{_kernelsrcdir}/drivers/lguest/lg.h
1491%{_kernelsrcdir}/block
1492%{_kernelsrcdir}/crypto
1493%{_kernelsrcdir}/drivers
1494%{_kernelsrcdir}/firmware
1495%{_kernelsrcdir}/fs
1496%if %{with grsecurity} && %{without rescuecd}
1497%{_kernelsrcdir}/grsecurity
1498%endif
1499%{_kernelsrcdir}/init
1500%{_kernelsrcdir}/ipc
1501%{_kernelsrcdir}/kernel
1502%exclude %{_kernelsrcdir}/kernel/bounds.c
1503%{_kernelsrcdir}/lib
1504%{_kernelsrcdir}/mm
1505%{_kernelsrcdir}/net
1506%{_kernelsrcdir}/virt
1507%{_kernelsrcdir}/samples
1508%{_kernelsrcdir}/scripts/*
1509%exclude %{_kernelsrcdir}/scripts/Kbuild.include
1510%exclude %{_kernelsrcdir}/scripts/Makefile*
1511%exclude %{_kernelsrcdir}/scripts/basic
1512%exclude %{_kernelsrcdir}/scripts/kconfig
960d2e94 1513%exclude %{_kernelsrcdir}/scripts/mkcompile_h
351f379b
JR
1514%exclude %{_kernelsrcdir}/scripts/mkmakefile
1515%exclude %{_kernelsrcdir}/scripts/mod
960d2e94 1516%exclude %{_kernelsrcdir}/scripts/module-common.lds
351f379b
JR
1517%exclude %{_kernelsrcdir}/scripts/setlocalversion
1518%exclude %{_kernelsrcdir}/scripts/*.c
1519%exclude %{_kernelsrcdir}/scripts/*.sh
960d2e94 1520%exclude %dir %{_kernelsrcdir}/scripts/selinux
1521%exclude %{_kernelsrcdir}/scripts/selinux/Makefile
c78e408d
PZ
1522%exclude %dir %{_kernelsrcdir}/scripts/selinux/genheaders
1523%exclude %{_kernelsrcdir}/scripts/selinux/genheaders/Makefile
1524%exclude %{_kernelsrcdir}/scripts/selinux/genheaders/*.c
960d2e94 1525%exclude %dir %{_kernelsrcdir}/scripts/selinux/mdp
1526%exclude %{_kernelsrcdir}/scripts/selinux/mdp/Makefile
1527%exclude %{_kernelsrcdir}/scripts/selinux/mdp/*.c
351f379b
JR
1528%{_kernelsrcdir}/sound
1529%{_kernelsrcdir}/security
1530%exclude %{_kernelsrcdir}/security/selinux/include
fecce547 1531%{_kernelsrcdir}/tools
351f379b
JR
1532%{_kernelsrcdir}/usr
1533%{_kernelsrcdir}/COPYING
1534%{_kernelsrcdir}/CREDITS
1535%{_kernelsrcdir}/MAINTAINERS
1536%{_kernelsrcdir}/README
1537%{_kernelsrcdir}/REPORTING-BUGS
a5585a68 1538%endif
This page took 0.727431 seconds and 4 git commands to generate.