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