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