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