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