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