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