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