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