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