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