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