]> git.pld-linux.org Git - packages/kernel.git/blame - kernel.spec
MITIGATION_RFDS x86=y, too
[packages/kernel.git] / kernel.spec
CommitLineData
a7313793 1#
8ad00cb1 2# LATEST VERSION CHECKER:
c91cf860 3# # curl -s https://www.kernel.org/finger_banner
8ad00cb1 4#
a5585a68 5# TODO:
351f379b 6# - benchmark NO_HZ & HZ=1000 vs HZ=300 on i686
351f379b 7#
fc5a68a2
AM
8# HOWTO update configuration files:
9# - run build
10# - add new options to proper config (kernel-multiarch.config, kernel-x86.config, kernel-powerpc.config etc)
11# - sort configuration files using:
ee5dc1b8 12# ./kernel-config-sort.pl ~/rpm/BUILD/kernel-%{version}/linux-%{version}/ -a x86 kernel-x86.config
fc5a68a2 13# ./kernel-config-sort.pl ~/rpm/BUILD/kernel-%{version}/linux-%{version} kernel-multiarch.config
a5585a68
AM
14#
15# Conditional build:
a5585a68 16%bcond_without source # don't build kernel-source package
1848fd38 17%bcond_without doc # don't build kernel-doc package
351f379b 18
a5585a68 19%bcond_with verbose # verbose build (V=1)
351f379b 20
351f379b 21%bcond_with fbcondecor # build fbcondecor (disable FB_TILEBLITTING and affected fb modules)
f703e7a1 22%bcond_with pae # build PAE (HIGHMEM64G) support on 32bit i686 athlon pentium3 pentium4
351f379b
JR
23%bcond_with nfsroot # build with root on NFS support
24
351f379b
JR
25%bcond_without ipv6 # ipv6 support
26
63ae130d
AM
27%bcond_without aufs # aufs4 support
28
1a6e0f06
JK
29%bcond_with rt # real-time kernel (CONFIG_PREEMPT_RT) for low latencies
30
7141a3b6 31%bcond_with vanilla # don't include any patches
351f379b 32%bcond_with rescuecd # build kernel for our rescue
351f379b 33%bcond_with myown # build with your own config (kernel-myown.config)
a5585a68
AM
34
35%{?debug:%define with_verbose 1}
36
351f379b 37%define have_drm 1
351f379b
JR
38%define have_sound 1
39
40%if %{with rescuecd}
351f379b
JR
41%define have_drm 0
42%define have_sound 0
43%endif
44
101ae904 45%if %{with myown}
46%define have_drm 0
101ae904 47%define have_sound 0
351f379b
JR
48%endif
49
50%ifarch sparc sparc64
351f379b 51%define have_drm 0
351f379b
JR
52%endif
53
bf608f73 54%define rel 1
231d2c83
JP
55%define basever 6.9
56%define postver .0
a5585a68 57
e865f3ec 58# define this to '-%{basever}' for longterm branch
aec24f17 59%define versuffix %{nil}
e865f3ec 60
1fb73fcf
ER
61# __alt_kernel is list of features, empty string if none set
62# _alt kernel is defined as: %{nil}%{?alt_kernel:-%{?alt_kernel}} (defined in rpm.macros)
63# alt_kernel should be defined if __alt_kernel has non-empty value (for %{?alt_kernel:foo} constructs)
473f3855 64%define __alt_kernel %{nil}
b2615ca0 65
ff48aee0 66%if "%{__alt_kernel}" != ""
b2615ca0 67%define alt_kernel %{__alt_kernel}
ff48aee0
ER
68%endif
69
70# these override whatever name was picked from bconds
1fb73fcf 71%if %{with myown} && "%{_alt_kernel}" == ""
101ae904 72%define alt_kernel myown
351f379b 73%endif
06936f6f 74%if %{with rescuecd}
75%define alt_kernel rescuecd
351f379b 76%endif
ff48aee0
ER
77%if %{with vanilla}
78%define alt_kernel vanilla
b2615ca0 79%endif
b9666121
AM
80%if %{with pae}
81%define alt_kernel pae
4f58ff4b 82%endif
1a6e0f06
JK
83%if %{with rt}
84%define alt_kernel rt
85%endif
351f379b
JR
86
87# kernel release (used in filesystem and eventually in uname -r)
88# modules will be looked from /lib/modules/%{kernel_release}
89# localversion is just that without version for "> localversion"
90%define localversion %{rel}
1401be4b 91%define kernel_release %{version}%{?alt_kernel:.%{alt_kernel}}-%{localversion}
a5585a68 92
23782f02
AM
93%define kmod_ver 26-2
94
a5585a68 95Summary: The Linux kernel (the core of the Linux operating system)
351f379b
JR
96Summary(de.UTF-8): Der Linux-Kernel (Kern des Linux-Betriebssystems)
97Summary(et.UTF-8): Linuxi kernel (ehk operatsioonisüsteemi tuum)
98Summary(fr.UTF-8): Le Kernel-Linux (La partie centrale du systeme)
99Summary(pl.UTF-8): Jądro Linuksa
e865f3ec 100Name: kernel%{versuffix}%{_alt_kernel}
351f379b
JR
101Version: %{basever}%{postver}
102Release: %{rel}
a5585a68 103Epoch: 3
c491b43b 104License: GPL v2
a5585a68 105Group: Base/Kernel
82da57cb 106Source0: https://www.kernel.org/pub/linux/kernel/v6.x/linux-%{basever}.tar.xz
231d2c83 107# Source0-md5: b9828ed78dae306e3d90643cd5cdb8f1
4d8c31dd 108%if "%{postver}" != ".0"
82da57cb 109Patch0: https://www.kernel.org/pub/linux/kernel/v6.x/patch-%{version}.xz
850bdfd9 110# Patch0-md5: dc5d54c8f0e01412d18a520ff3f95a06
351f379b 111%endif
5aeaa3c2 112Source1: kernel.sysconfig
351f379b
JR
113
114Source3: kernel-autoconf.h
115Source4: kernel-config.h
351f379b
JR
116Source6: kernel-config.awk
117Source7: kernel-module-build.pl
118Source8: kernel-track-config-change.awk
119# not used by kernel.spec, but it's good to have it in SOURCES
120Source9: kernel-config-sort.pl
121Source10: kernel.make
122
123Source20: kernel-multiarch.config
124Source21: kernel-x86.config
125Source22: kernel-sparc.config
5a99ae3d 126Source23: kernel-alpha.config
127Source24: kernel-powerpc.config
d27ab633
JP
128Source26: kernel-arm.config
129Source27: kernel-arm64.config
351f379b 130
351f379b 131Source41: kernel-patches.config
1a6e0f06 132Source44: kernel-rt.config
351f379b 133
351f379b 134Source58: kernel-inittmpfs.config
351f379b 135
be80c152 136Patch2: android-enable-building-binder-as-module.patch
351f379b
JR
137# http://dev.gentoo.org/~spock/projects/fbcondecor/archive/fbcondecor-0.9.4-2.6.25-rc6.patch
138Patch3: kernel-fbcondecor.patch
28c4ae14 139Patch6: linux-wistron-nx.patch
351f379b
JR
140
141# netfilter related stuff mostly based on patch-o-matic-ng
17da405a 142# snapshot 20070806 with some fixes. Some modules
e69c45e8 143# were ported to nf_conntrack.
351f379b
JR
144
145Patch10: kernel-pom-ng-IPV4OPTSSTRIP.patch
351f379b 146
351f379b
JR
147### End netfilter
148
351f379b
JR
149# by Baggins request:
150# derived from ftp://ftp.cmf.nrl.navy.mil/pub/chas/linux-atm/vbr/vbr-kernel-diffs
60bb736d
JR
151Patch55: kernel-atm-vbr.patch
152Patch56: kernel-atmdd.patch
351f379b 153
351f379b
JR
154# http://synce.svn.sourceforge.net/svnroot/synce/trunk/patches/linux-2.6.22-rndis_host-wm5.patch
155Patch59: kernel-rndis_host-wm5.patch
156
e3fad6a6 157# see update-source.sh
0dcfbb52 158Patch145: kernel-aufs.patch
6be199e5 159Patch147: kernel-aufs-make.patch
a899ef35 160
54fd642e 161# Show normal colors in menuconfig with ncurses ABI 6
162Patch250: kernel-fix_256colors_menuconfig.patch
163
1a6e0f06 164# https://rt.wiki.kernel.org/
1f39f580 165# https://www.kernel.org/pub/linux/kernel/projects/rt/4.9/patch-4.9.6-rt4.patch.xz
1a6e0f06
JK
166Patch500: kernel-rt.patch
167
08aa9d92 168Patch2000: kernel-small_fixes.patch
60bb736d 169Patch2001: kernel-pwc-uncompress.patch
351f379b 170
351f379b 171# for rescuecd
48ead238 172# based on ftp://ftp.leg.uct.ac.za/pub/linux/rip/tmpfs_root-2.6.30.diff.gz
351f379b
JR
173Patch7000: kernel-inittmpfs.patch
174
cb548207 175# ARM only
cf66ed33 176Patch8000: rpi-sound.patch
8c9054af 177Patch8001: kernel-pinebook-pro.patch
99c6565b 178Patch8002: atheros-disallow-retrain-nongen1-pcie.patch
51c86cd6 179Patch8004: ath-regd.patch
98a5e014 180Patch8005: rkvdec-hevc.patch
cb548207 181
fa7ff97e 182URL: https://www.kernel.org/
3674ac16
JR
183AutoReqProv: no
184BuildRequires: /sbin/depmod
cfe00ca6
JP
185BuildRequires: bc >= 1.06.95
186BuildRequires: binutils >= 3:2.23
187BuildRequires: bison >= 2.0
a5585a68
AM
188%ifarch sparc sparc64
189BuildRequires: elftoaout
190%endif
3674ac16 191BuildRequires: elfutils-devel
cfe00ca6 192BuildRequires: flex >= 2.5.35
8d3d28a7 193BuildRequires: gcc >= 6:7.2.0-6
9c2c22a9 194BuildRequires: gcc-c++
00331e0d 195BuildRequires: gcc-plugin-devel
d80d232c 196BuildRequires: hostname
23782f02 197BuildRequires: kmod >= %{kmod_ver}
9c2c22a9 198BuildRequires: libstdc++-devel
cfe00ca6
JP
199BuildRequires: make >= 1:3.81
200BuildRequires: openssl-devel >= 1.0.0
201BuildRequires: openssl-tools >= 1.0.0
202BuildRequires: perl-base >= 5
b488384f 203BuildRequires: rpm-build >= 4.5-24
9e48c5b7 204BuildRequires: rpmbuild(macros) >= 2.019
ce7e9b52 205BuildRequires: tar >= 1:1.22
3674ac16
JR
206%ifarch ppc
207BuildRequires: uboot-mkimage
208%endif
209BuildRequires: xz >= 1:4.999.7
4b2f32be 210BuildConflicts: dwarves < 1.16
351f379b 211Requires(post): coreutils
0857d2bf 212Requires(post): geninitrd >= 12787-6
23782f02 213Requires(post): kmod >= %{kmod_ver}
351f379b
JR
214Requires: /sbin/depmod
215Requires: coreutils
0857d2bf 216Requires: geninitrd >= 12787-6
23782f02 217Requires: kmod >= %{kmod_ver}
bacfcd36
AM
218%if %{with pae}
219%ifarch i686 athlon pentium3 pentium4
220Requires: cpuinfo(pae)
221%endif
222%endif
54f0effc 223Suggests: dracut
b75546f3 224Suggests: keyutils
debf246c 225Suggests: linux-firmware
52e5f3df 226Provides: %{name}(netfilter) = 20070806
351f379b 227Provides: %{name}(vermagic) = %{kernel_release}
9aab3dce
JR
228Obsoletes: kernel%{_alt_kernel}-char-lirc-ene0100 < 0.9.0
229Obsoletes: kernel%{_alt_kernel}-char-lirc-it87 < 0.9.0
230Obsoletes: kernel%{_alt_kernel}-char-lirc-ite8709 < 0.9.0
231Obsoletes: kernel%{_alt_kernel}-char-lirc-mceusb < 0.9.0
232Obsoletes: kernel%{_alt_kernel}-char-lirc-streamzap < 0.9.0
233Obsoletes: kernel%{_alt_kernel}-isdn-mISDN < 2.0.35
3f621b42
JR
234Obsoletes: kernel-firmware < 3:2.6.33
235Obsoletes: kernel-misc-acer_acpi < 0.3-2
236Obsoletes: kernel-misc-fuse < 2.8.5-2
237Obsoletes: kernel-misc-uvc < 0.215.1-10
238Obsoletes: kernel-modules < 2.2.2-2
239Obsoletes: kernel-net-ar81 < 1.0.1.0-3
240Obsoletes: kernel-net-hostap < 0.4.7-2
241Obsoletes: kernel-net-ieee80211 < 1.2.18-7
242Obsoletes: kernel-net-ipp2p < 0.8.2.-17
243Obsoletes: kernel-net-rt61 < 1.1.0-2.2007122707.13
244Obsoletes: kernel-smp < 3:2.6.21
351f379b
JR
245Conflicts: e2fsprogs < 1.29
246Conflicts: isdn4k-utils < 3.1pre1
247Conflicts: jfsutils < 1.1.3
968cc686 248Conflicts: libcap-libs < 1:2.34
89785d20 249Conflicts: libusb < 1.0.9
af560d0f 250Conflicts: linux-firmware < 20120720
cf8de22f 251Conflicts: lvm2 < 2.02.40
8fe4cdc5 252Conflicts: module-init-tools < 3.16
351f379b
JR
253Conflicts: nfs-utils < 1.0.5
254Conflicts: oprofile < 0.9
255Conflicts: ppp < 1:2.4.0
256Conflicts: procps < 3.2.0
257Conflicts: quota-tools < 3.09
351f379b 258Conflicts: reiserfsprogs < 3.6.3
4dabe329 259Conflicts: rpm < 4.4.2-0.2
351f379b
JR
260Conflicts: udev < 1:081
261Conflicts: util-linux < 2.10o
351f379b 262Conflicts: xfsprogs < 2.6.0
b9666121 263%if %{with pae}
75243edd 264ExclusiveArch: i686 pentium3 pentium4 athlon
4f58ff4b 265%else
63ee9468 266ExclusiveArch: i486 i586 i686 pentium3 pentium4 athlon %{x8664} x32 alpha %{arm} ppc ppc64 sparc sparc64 aarch64
4f58ff4b 267%endif
a5585a68
AM
268ExclusiveOS: Linux
269BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
270
811cca3c
ER
271%define kmod_compress_cmd %{__xz}
272
5c6b663b 273%ifarch %{ix86} %{x8664} x32
351f379b
JR
274%define target_arch_dir x86
275%endif
276%ifarch ppc ppc64
277%define target_arch_dir powerpc
278%endif
5a99ae3d 279%ifarch sparc sparc64
280%define target_arch_dir sparc
281%endif
a3f06132
JP
282%ifarch aarch64
283%define target_arch_dir arm64
284%endif
285%ifnarch %{ix86} %{x8664} x32 ppc ppc64 sparc sparc64 aarch64
351f379b
JR
286%define target_arch_dir %{_target_base_arch}
287%endif
288
289%define defconfig arch/%{target_arch_dir}/defconfig
290
291# No ELF objects there to strip (skips processing 27k files)
ded910ba 292%define _noautostrip \\(.*%{_kernelsrcdir}/.*\\|.*/vmlinux.*\\)
351f379b 293%define _noautochrpath .*%{_kernelsrcdir}/.*
b36a2f6d 294%define _enable_debug_packages 0
351f379b 295
a5585a68 296%define initrd_dir /boot
a5585a68 297
351f379b 298%define topdir %{_builddir}/%{name}-%{version}
67d87e28 299%define srcdir %{topdir}/linux-%{basever}
351f379b 300%define objdir %{topdir}/%{targetobj}
6db8537c 301%define targetobj %{_target_base_arch}-gcc-%(%{__cc} -dumpversion)
351f379b 302
e865f3ec 303%define _kernelsrcdir /usr/src/linux%{versuffix}%{_alt_kernel}-%{version}
351f379b 304
7b6fa769 305%if "%{_target_base_arch}" != "%{_host_base_arch}"
351f379b
JR
306 %define CrossOpts ARCH=%{_target_base_arch} CROSS_COMPILE=%{_target_cpu}-pld-linux-
307 %define DepMod /bin/true
308
7b6fa769 309 %if "%{_host_base_arch}" == "sparc" && "%{_target_base_arch}" == "sparc64"
351f379b
JR
310 %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
311 %define DepMod /sbin/depmod
312 %endif
313
7b6fa769 314 %if "%{_host_base_arch}" == "sparc64" && "%{_target_base_arch}" == "sparc"
351f379b
JR
315 %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
316 %define DepMod /sbin/depmod
317 %endif
318
7b6fa769 319 %if "%{_host_base_arch}" == "x86_64" && "%{_target_base_arch}" == "i386"
351f379b
JR
320 %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
321 %define DepMod /sbin/depmod
322 %endif
323
5a99ae3d 324 %if "%{_target_base_arch}" == "ppc" || "%{_target_base_arch}" == "ppc64"
351f379b
JR
325 %define CrossOpts ARCH=powerpc CROSS_COMPILE=%{_target_cpu}-pld-linux-
326 %endif
327%else
328 %ifarch ppc ppc64
329 %define CrossOpts ARCH=powerpc CC="%{__cc}"
330 %else
a3f06132
JP
331 %ifarch aarch64
332 %define CrossOpts ARCH=arm64 CC="%{__cc}"
333 %else
351f379b
JR
334 %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
335 %endif
a3f06132 336 %endif
351f379b
JR
337 %define DepMod /sbin/depmod
338%endif
7e0d31a4
JB
339# use 64-bit offsets for fixdeps to work with 64-bit inodes
340%define MakeOpts %{CrossOpts} HOSTCC="%{__cc} -D_FILE_OFFSET_BITS=64"
351f379b 341
52e5f3df 342%define __features \
351f379b
JR
343%{?with_fbcondecor:Fbsplash/fbcondecor - enabled }\
344%{?with_nfsroot:Root on NFS - enabled}\
1a6e0f06 345%{?with_rt:CONFIG_PREEMPT_RT - enabled}\
351f379b
JR
346
347%define Features %(echo "%{__features}" | sed '/^$/d')
348
a5585a68
AM
349%description
350This package contains the Linux kernel that is used to boot and run
351your system. It contains few device drivers for specific hardware.
352Most hardware is instead supported by modules loaded after booting.
353
351f379b
JR
354%{Features}
355
3a467bc1
JR
356%description -l de.UTF-8
357Das Kernel-Paket enthält den Linux-Kernel (vmlinuz), den Kern des
358Linux-Betriebssystems. Der Kernel ist für grundliegende
a5585a68 359Systemfunktionen verantwortlich: Speicherreservierung,
3a467bc1 360Prozeß-Management, Geräte Ein- und Ausgaben, usw.
a5585a68 361
351f379b
JR
362%{Features}
363
3a467bc1 364%description -l fr.UTF-8
a5585a68 365Le package kernel contient le kernel linux (vmlinuz), la partie
3a467bc1
JR
366centrale d'un système d'exploitation Linux. Le noyau traite les
367fonctions basiques d'un système d'exploitation: allocation mémoire,
368allocation de process, entrée/sortie de peripheriques, etc.
a5585a68 369
351f379b
JR
370%{Features}
371
3a467bc1
JR
372%description -l pl.UTF-8
373Pakiet zawiera jądro Linuksa niezbędne do prawidłowego działania
374Twojego komputera. Zawiera w sobie sterowniki do sprzętu znajdującego
375się w komputerze, takiego jak sterowniki dysków itp.
a5585a68 376
351f379b
JR
377%{Features}
378
379%package vmlinux
380Summary: vmlinux - uncompressed kernel image
381Summary(de.UTF-8): vmlinux - dekompressiertes Kernel Bild
382Summary(pl.UTF-8): vmlinux - rozpakowany obraz jądra
383Group: Base/Kernel
3f621b42 384Obsoletes: kernel-smp-vmlinux < 3:2.6.21
351f379b
JR
385
386%description vmlinux
387vmlinux - uncompressed kernel image.
388
389%description vmlinux -l de.UTF-8
390vmlinux - dekompressiertes Kernel Bild.
391
392%description vmlinux -l pl.UTF-8
393vmlinux - rozpakowany obraz jądra.
394
a5585a68
AM
395%package drm
396Summary: DRM kernel modules
351f379b
JR
397Summary(de.UTF-8): DRM Kernel Treiber
398Summary(pl.UTF-8): Sterowniki DRM
a5585a68 399Group: Base/Kernel
351f379b
JR
400Requires(postun): %{name} = %{epoch}:%{version}-%{release}
401Requires: %{name} = %{epoch}:%{version}-%{release}
79ce7ecb 402Provides: kernel(vboxvideo) = %{kernel_release}
3f621b42 403Obsoletes: kernel-smp-drm < 3:2.6.21
07ff8614 404AutoReqProv: no
a5585a68
AM
405
406%description drm
351f379b
JR
407DRM kernel modules.
408
409%description drm -l de.UTF-8
410DRM Kernel Treiber.
a5585a68 411
3a467bc1 412%description drm -l pl.UTF-8
351f379b 413Sterowniki DRM.
a5585a68 414
a5585a68
AM
415%package sound-alsa
416Summary: ALSA kernel modules
351f379b
JR
417Summary(de.UTF-8): ALSA Kernel Module
418Summary(pl.UTF-8): Sterowniki dźwięku ALSA
a5585a68 419Group: Base/Kernel
351f379b
JR
420Requires(postun): %{name} = %{epoch}:%{version}-%{release}
421Requires: %{name} = %{epoch}:%{version}-%{release}
3f621b42 422Obsoletes: kernel-smp-sound-alsa < 3:2.6.21
07ff8614 423AutoReqProv: no
a5585a68
AM
424
425%description sound-alsa
426ALSA (Advanced Linux Sound Architecture) sound drivers.
427
351f379b
JR
428%description sound-alsa -l de.UTF-8
429ALSA (Advanced Linux Sound Architecture) Sound-Treiber.
430
3a467bc1
JR
431%description sound-alsa -l pl.UTF-8
432Sterowniki dźwięku ALSA (Advanced Linux Sound Architecture).
a5585a68 433
a5585a68
AM
434%package headers
435Summary: Header files for the Linux kernel
351f379b
JR
436Summary(de.UTF-8): Header Dateien für den Linux-Kernel
437Summary(pl.UTF-8): Pliki nagłówkowe jądra Linuksa
438Group: Development/Building
52e5f3df 439Provides: %{name}-headers(netfilter) = 20070806
07ff8614 440AutoReqProv: no
a5585a68
AM
441
442%description headers
443These are the C header files for the Linux kernel, which define
351f379b
JR
444structures and constants that are needed when rebuilding the kernel or
445building kernel modules.
446
447%description headers -l de.UTF-8
448Dies sind die C Header Dateien für den Linux-Kernel, die definierte
449Strukturen und Konstante beinhalten, die beim rekompilieren des
450Kernels oder bei Kernel Modul kompilationen gebraucht werden.
a5585a68 451
3a467bc1
JR
452%description headers -l pl.UTF-8
453Pakiet zawiera pliki nagłówkowe jądra, niezbędne do rekompilacji jądra
454oraz budowania modułów jądra.
a5585a68
AM
455
456%package module-build
457Summary: Development files for building kernel modules
351f379b
JR
458Summary(de.UTF-8): Development Dateien die beim Kernel Modul kompilationen gebraucht werden
459Summary(pl.UTF-8): Pliki służące do budowania modułów jądra
460Group: Development/Building
a5585a68 461Requires: %{name}-headers = %{epoch}:%{version}-%{release}
3674ac16 462Requires: elfutils-devel
48d6a50c 463Requires: make
56429959 464Conflicts: rpmbuild(macros) < 2.019
07ff8614 465AutoReqProv: no
a5585a68
AM
466
467%description module-build
468Development files from kernel source tree needed to build Linux kernel
469modules from external packages.
470
351f379b
JR
471%description module-build -l de.UTF-8
472Development Dateien des Linux-Kernels die beim kompilieren externer
473Kernel Module gebraucht werden.
474
3a467bc1
JR
475%description module-build -l pl.UTF-8
476Pliki ze drzewa źródeł jądra potrzebne do budowania modułów jądra
477Linuksa z zewnętrznych pakietów.
a5585a68
AM
478
479%package source
480Summary: Kernel source tree
351f379b
JR
481Summary(de.UTF-8): Der Kernel Quelltext
482Summary(pl.UTF-8): Kod źródłowy jądra Linuksa
483Group: Development/Building
a5585a68 484Requires: %{name}-module-build = %{epoch}:%{version}-%{release}
07ff8614 485AutoReqProv: no
45e04bab 486BuildArch: noarch
a5585a68
AM
487
488%description source
351f379b
JR
489This is the source code for the Linux kernel. You can build a custom
490kernel that is better tuned to your particular hardware.
a5585a68 491
3a467bc1
JR
492%description source -l de.UTF-8
493Das Kernel-Source-Paket enthält den source code (C/Assembler-Code) des
a5585a68 494Linux-Kernels. Die Source-Dateien werden gebraucht, um viele
351f379b 495C-Programme zu kompilieren, da sie auf Konstanten zurückgreifen, die
3a467bc1 496im Kernel-Source definiert sind. Die Source-Dateien können auch
351f379b 497benutzt werden, um einen Kernel zu kompilieren, der besser auf Ihre
a5585a68
AM
498Hardware ausgerichtet ist.
499
3a467bc1 500%description source -l fr.UTF-8
a5585a68 501Le package pour le kernel-source contient le code source pour le noyau
3a467bc1
JR
502linux. Ces sources sont nécessaires pour compiler la plupart des
503programmes C, car il dépend de constantes définies dans le code
504source. Les sources peuvent être aussi utilisée pour compiler un noyau
505personnalisé pour avoir de meilleures performances sur des matériels
a5585a68
AM
506particuliers.
507
3a467bc1
JR
508%description source -l pl.UTF-8
509Pakiet zawiera kod źródłowy jądra systemu.
a5585a68
AM
510
511%package doc
512Summary: Kernel documentation
351f379b
JR
513Summary(de.UTF-8): Kernel Dokumentation
514Summary(pl.UTF-8): Dokumentacja do jądra Linuksa
515Group: Documentation
07ff8614 516AutoReqProv: no
45e04bab 517BuildArch: noarch
a5585a68
AM
518
519%description doc
520This is the documentation for the Linux kernel, as found in
521/usr/src/linux/Documentation directory.
522
351f379b
JR
523%description doc -l de.UTF-8
524Dies ist die Kernel Dokumentation wie sie im 'Documentation'
525Verzeichniss vorgefunden werden kann.
526
3a467bc1
JR
527%description doc -l pl.UTF-8
528Pakiet zawiera dokumentację do jądra Linuksa pochodzącą z katalogu
a5585a68
AM
529/usr/src/linux/Documentation.
530
531%prep
351f379b
JR
532%setup -qc
533ln -s %{SOURCE7} kernel-module-build.pl
534ln -s %{SOURCE10} Makefile
67d87e28 535cd linux-%{basever}
a5585a68 536
1c5b0f0a 537%if "%{postver}" != ".0"
c6897157 538%patch0 -p1
351f379b 539%endif
a5585a68 540
7141a3b6 541%if %{without vanilla}
be80c152 542%patch2 -p1
7141a3b6 543
351f379b
JR
544%if %{with fbcondecor}
545%patch3 -p1
a5585a68 546%endif
28c4ae14 547%patch6 -p1
a5585a68 548
351f379b
JR
549## netfilter
550#
a5585a68 551
351f379b
JR
552# kernel-pom-ng-IPV4OPTSSTRIP.patch
553%patch10 -p1
a5585a68 554
351f379b
JR
555##
556# end of netfilter
557
351f379b
JR
558%patch55 -p1
559%patch56 -p1
560
351f379b
JR
561# kernel-rndis_host-wm5.patch
562%patch59 -p1
563
63ae130d 564%if %{with aufs}
6be199e5 565# aufs
20493b41 566%patch145 -p1
6be199e5 567%patch147 -p1
63ae130d 568%endif
a5585a68 569
351f379b
JR
570%if %{with rescuecd}
571%patch7000 -p1
e981df17 572%endif
a5585a68 573
cb548207
JP
574%ifarch %{arm} aarch64
575%patch8000 -p1
8c9054af 576%patch8001 -p1
99c6565b 577%patch8002 -p1
51c86cd6 578%patch8004 -p1
98a5e014 579%patch8005 -p1
cb548207
JP
580%endif
581
1a6e0f06
JK
582%if %{with rt}
583%patch500 -p1
584rm -f localversion-rt
585%endif
586
54fd642e 587%patch250 -p1
588
7141a3b6 589%endif # vanilla
590
351f379b 591# Small fixes:
debfe244 592%patch2000 -p1
351f379b 593%patch2001 -p1
a5585a68 594
f4503efa
JR
595chmod 755 tools/objtool/sync-check.sh
596
351f379b 597# Fix EXTRAVERSION in main Makefile
7a8dfe5c 598sed -i 's#EXTRAVERSION =.*#EXTRAVERSION = %{?alt_kernel:.%{alt_kernel}}#g' Makefile
a5585a68 599
351f379b
JR
600# cleanup backups after patching
601find '(' -name '*~' -o -name '*.orig' -o -name '.gitignore' ')' -print0 | xargs -0 -r -l512 rm -f
a5585a68 602
21cab9dc 603find -name '*.py' -print0 | \
cd112dcb
JP
604 xargs -0 %{__sed} -i -e '1s,/usr/bin/python$,%{__python},' \
605 -e '1s,/usr/bin/env python$,%{__python},' \
606 -e '1s,/usr/bin/env python3$,%{__python3},'
21cab9dc 607
cd112dcb
JP
608%{__sed} -i -e '1s,/usr/bin/python$,%{__python},' \
609 -e '1s,/usr/bin/env python$,%{__python},' \
610 -e '1s,/usr/bin/env python3$,%{__python3},' \
21cab9dc
JR
611 scripts/bloat-o-meter \
612 scripts/diffconfig \
2255d0fe 613 scripts/dtc/dt-extract-compatibles \
d58c55f2 614 scripts/jobserver-exec \
21cab9dc 615 scripts/show_delta \
d58c55f2 616 tools/hv/vmbus_testing \
42b5c33a 617 tools/kvm/kvm_stat/kvm_stat \
26eb093c 618 tools/testing/selftests/exec/binfmt_script.py
21cab9dc
JR
619
620find -name '*.pl' -print0 | \
621 xargs -0 %{__sed} -i -e '1s,/usr/bin/env perl,%{__perl},' \
622
623%{__sed} -i -e '1s,/usr/bin/env perl,%{__perl},' \
624 scripts/dtc/dt_to_config \
625 scripts/cleanfile \
626 scripts/cleanpatch \
627 scripts/documentation-file-ref-check \
628 scripts/get_dvb_firmware \
629 scripts/kernel-doc \
42a736d3 630 scripts/sphinx-pre-install \
21cab9dc
JR
631 scripts/stackdelta
632
42a736d3 633%{__sed} -i -e '1s,/usr/bin/env bash,%{__bash},' \
6d176551 634 tools/testing/selftests/powerpc/security/mitigation-patching.sh \
22319442 635 scripts/config \
5ef05d1d 636 scripts/coccicheck
42a736d3 637
351f379b
JR
638%build
639install -d %{objdir}
640cat > %{targetobj}.mk <<'EOF'
641# generated by %{name}.spec
5c6b663b 642KERNELSRC := %{srcdir}
351f379b
JR
643KERNELOUTPUT := %{objdir}
644
645SRCARCH := %{target_arch_dir}
646ARCH := %{_target_base_arch}
5c6b663b 647Q := %{!?with_verbose:@}
351f379b 648MAKE_OPTS := %{MakeOpts}
5a5ad91b 649DEFCONFIG := %{defconfig}
351f379b 650EOF
a5585a68 651
351f379b
JR
652RescueConfig() {
653 set -x
351f379b
JR
654 # CONFIG_SOUND is not set
655 # CONFIG_AUDIT is not set
656 # CONFIG_TR is not set
657 # CONFIG_BT is not set
658 # CONFIG_VIDEO_DEV is not set
659 # CONFIG_DVB_CORE is not set
660 # CONFIG_HAMRADIO is not set
661 # CONFIG_ARCNET is not set
351f379b
JR
662 # CONFIG_DRM is not set
663 # CONFIG_WATCHDOG is not set
664 # CONFIG_INPUT_JOYSTICK is not set
665 # CONFIG_DEBUG_KERNEL is not set
666 # CONFIG_ISDN is not set
667 # CONFIG_AGP is not set
668 # CONFIG_SECURITY is not set
669 # CONFIG_PARIDE is not set
670 # CONFIG_CPU_FREQ is not set
671 # CONFIG_GAMEPORT is not set
672 # CONFIG_KVM is not set
673 # CONFIG_PHONE is not set
dd55897d 674 # CONFIG_STRICT_DEVMEM is not set
6bab3a31 675 # CONFIG_IMA is not set
a947000a
AP
676 # CONFIG_MEDIA_SUPPORT is not set
677 # CONFIG_UWB is not set
678 # CONFIG_PWM is not set
38e632af
JK
679 # CONFIG_COMEDI_NI_LABPC_ISA is not set
680 # CONFIG_FB_SYS_FILLRECT is not set
681 # CONFIG_FB_SYS_COPYAREA is not set
682 # CONFIG_FB_SYS_IMAGEBLIT is not set
683 # CONFIG_FB_SYS_FOPS is not set
684 # CONFIG_FB_HECUBA is not set
685 # CONFIG_FB_SVGALIB is not set
686 # CONFIG_FB_CIRRUS is not set
687 # CONFIG_FB_PM2 is not set
688 # CONFIG_FB_CYBER2000 is not set
689 # CONFIG_FB_ARC is not set
690 # CONFIG_FB_ASILIANT is not set
691 # CONFIG_FB_IMSTT is not set
692 # CONFIG_FB_VGA16 is not set
693 # CONFIG_FB_UVESA is not set
694 # CONFIG_FB_N411 is not set
695 # CONFIG_FB_HGA is not set
696 # CONFIG_FB_S1D13XXX is not set
697 # CONFIG_FB_NVIDIA is not set
698 # CONFIG_FB_RIVA is not set
699 # CONFIG_FB_I740 is not set
700 # CONFIG_FB_LE80578 is not set
701 # CONFIG_FB_CARILLO_RANCH is not set
702 # CONFIG_FB_MATROX is not set
703 # CONFIG_FB_RADEON is not set
704 # CONFIG_FB_ATY128 is not set
705 # CONFIG_FB_ATY is not set
706 # CONFIG_FB_S3 is not set
707 # CONFIG_FB_SAVAGE is not set
708 # CONFIG_FB_SIS is not set
709 # CONFIG_FB_VIA is not set
710 # CONFIG_FB_NEOMAGIC is not set
711 # CONFIG_FB_KYRO is not set
712 # CONFIG_FB_3DFX is not set
713 # CONFIG_FB_VOODOO1 is not set
714 # CONFIG_FB_VT8623 is not set
715 # CONFIG_FB_TRIDENT is not set
716 # CONFIG_FB_ARK is not set
717 # CONFIG_FB_PM3 is not set
718 # CONFIG_FB_CARMINE is not set
719 # CONFIG_FB_GEODE is not set
720 # CONFIG_FB_TMIO is not set
721 # CONFIG_FB_SM501 is not set
722 # CONFIG_FB_SMSCUFX is not set
723 # CONFIG_FB_UDL is not set
724 # CONFIG_FB_GOLDFISH is not set
725 # CONFIG_XEN_FBDEV_FRONTEND is not set
726 # CONFIG_FB_METRONOME is not set
727 # CONFIG_FB_MB862XX is not set
728 # CONFIG_FB_BROADSHEET is not set
729 # CONFIG_FB_AUO_K190X is not set
730 # CONFIG_FB_AUO_K1900 is not set
731 # CONFIG_FB_AUO_K1901 is not set
732 # CONFIG_FB_HYPERV is not set
351f379b 733 CONFIG_AUFS=y
a899ef35 734 CONFIG_AUFS_FS=y
735 CONFIG_AUFS_BR_RAMFS=y
62fff140 736 CONFIG_AUFS_RDU=y
351f379b
JR
737 CONFIG_BLK_DEV_LOOP=y
738 CONFIG_ISO9660_FS=y
739 CONFIG_NLS_UTF8=y
6b79006d 740 CONFIG_SQUASHFS=y
38e632af
JK
741 CONFIG_FB=y
742 CONFIG_FB_EFI=y
743 CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
351f379b
JR
744EOCONFIG
745
746 return 0
747}
a5585a68 748
351f379b
JR
749BuildConfig() {
750 %{?debug:set -x}
751 set -e
a5585a68 752
351f379b
JR
753 Config="kernel-%{target_arch_dir}.config"
754 echo >&2 "Building config file for %{_target_cpu} using $Config et al."
a5585a68 755
351f379b
JR
756 # prepare local and important options
757 cat <<-EOCONFIG > important.config
758 LOCALVERSION="-%{localversion}"
fb4e3822 759
351f379b 760%if 0%{?debug:1}
351f379b
JR
761 CONFIG_DEBUG_PREEMPT=y
762 CONFIG_RT_DEADLOCK_DETECT=y
7e892be3 763%else
7e892be3 764 CONFIG_DEBUG_PREEMPT=n
a5585a68 765%endif
351f379b 766
351f379b
JR
767%if %{without ipv6}
768 CONFIG_IPV6=n
769%endif
a5585a68 770
351f379b 771%ifarch i686 athlon pentium3 pentium4
5a5ad91b 772 %if %{with pae}
351f379b
JR
773 CONFIG_HIGHMEM4G=n
774 CONFIG_HIGHMEM64G=y
775 CONFIG_X86_PAE=y
7c99a84b 776 CONFIG_NUMA=n
bf608f73
AM
777 %else
778 CONFIG_X86_PAE=n
5a5ad91b 779 %endif
351f379b 780%endif
a5585a68 781
351f379b
JR
782%if %{with fbcondecor}
783 CONFIG_FB_S3=n
784 CONFIG_FB_VT8623=n
785 CONFIG_FB_ARK=n
786 CONFIG_FB_TILEBLITTING=n
787 CONFIG_FB_CON_DECOR=y
788%endif
a5585a68 789
351f379b
JR
790%if %{with nfsroot}
791 CONFIG_NFS_FS=y
792 CONFIG_ROOT_NFS=y
793%endif
89c4c3f2
JR
794
795%ifarch x32
796 CONFIG_BPF_PRELOAD=n
797%endif
fdc2ddcf
JP
798%if %{_ver_ge %(rpm -q --qf='%%{VERSION}' gcc) 12}
799 CONFIG_INIT_STACK_ALL_ZERO=y
800 CONFIG_GCC_PLUGIN_STRUCTLEAK_BYREF_ALL=n
801%else
802 CONFIG_GCC_PLUGIN_STRUCTLEAK_BYREF_ALL=y
803%endif
351f379b 804EOCONFIG
a5585a68 805
351f379b
JR
806%if %{with rescuecd}
807 RescueConfig rescue.config
351f379b 808%endif
351f379b
JR
809 # prepare kernel-style config file from multiple config files
810 %{__awk} -v arch="all %{target_arch_dir} %{_target_base_arch} %{_target_cpu}" -f %{SOURCE6} \
101ae904 811%if %{with myown}
812 $RPM_SOURCE_DIR/kernel-%{alt_kernel}.config \
813%endif
351f379b 814 important.config \
7141a3b6 815%if %{without vanilla}
351f379b
JR
816%if %{with rescuecd}
817 %{SOURCE58} \
351f379b
JR
818 rescue.config \
819%endif
820 \
1a6e0f06
JK
821%if %{with rt}
822 %{SOURCE44} \
351f379b 823%endif
351f379b 824 %{SOURCE41} %{?0:patches} \
7141a3b6 825%endif
351f379b
JR
826 %{SOURCE20} \
827 $RPM_SOURCE_DIR/$Config
828}
a5585a68 829
351f379b
JR
830cd %{objdir}
831install -d arch/%{target_arch_dir}
351f379b 832BuildConfig > %{defconfig}
351f379b
JR
833ln -sf %{defconfig} .config
834cd -
a5585a68 835
7856c5e8
AM
836%{__make} \
837 TARGETOBJ=%{targetobj} \
838 %{?with_verbose:V=1} \
839 oldconfig
a5585a68 840
351f379b 841%{__awk} %{?debug:-v dieOnError=1} -v infile=%{objdir}/%{defconfig} -f %{SOURCE8} %{objdir}/.config
a5585a68 842
cfc515a1
JP
843%{__make} \
844 TARGETOBJ=%{targetobj} \
845 %{?with_verbose:V=1} \
846 scripts
847
351f379b 848# build kernel
c250522c 849export DTC_FLAGS=-@
cfc515a1 850ICECC_EXTRAFILES="${ICECC_EXTRAFILES:+$ICECC_EXTRAFILES:}$(test -d %{objdir}/scripts/gcc-plugins && find %{objdir}/scripts/gcc-plugins -name '*.so' | paste -s -d :)"
7856c5e8
AM
851%{__make} \
852 TARGETOBJ=%{targetobj} \
853 %{?with_verbose:V=1} \
854 all
a5585a68 855
351f379b
JR
856%install
857rm -rf $RPM_BUILD_ROOT
3d2d9b8a 858%{__make} %{MakeOpts} %{!?with_verbose:-s} modules_install \
351f379b
JR
859 -C %{objdir} \
860 %{?with_verbose:V=1} \
861 DEPMOD=%{DepMod} \
862 INSTALL_MOD_PATH=$RPM_BUILD_ROOT \
b27a36d8 863 INSTALL_MOD_STRIP="--strip-debug --remove-section=.comment --remove-section=.note.GNU-stack" \
351f379b
JR
864 KERNELRELEASE=%{kernel_release}
865
e4e33c3c 866%ifarch %{arm} aarch64
c250522c 867export DTC_FLAGS=-@
e4e33c3c
JP
868%{__make} %{MakeOpts} %{!?with_verbose:-s} dtbs_install \
869 -C %{objdir} \
870 %{?with_verbose:V=1} \
871 INSTALL_DTBS_PATH=$RPM_BUILD_ROOT/boot/dtb-%{kernel_release}
872%endif
873
351f379b
JR
874install -d $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/misc
875
101ae904 876# create directories which may be missing, to simplyfy %files
64d14572 877install -d $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/kernel/{arch,sound,mm}
101ae904 878
351f379b
JR
879# rpm obeys filelinkto checks for ghosted symlinks, convert to files
880rm -f $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/{build,source}
881touch $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/{build,source}
882
6d54bd67
ER
883# no point embed content for %ghost files. empty them
884for a in \
885 dep{,.bin} \
886 alias{,.bin} \
8ee3ac38
AM
887 devname \
888 softdep \
6d54bd67 889 symbols{,.bin} \
6d54bd67 890; do
09e63f4a 891 test -f $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/modules.$a
6d54bd67
ER
892 > $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/modules.$a
893done
894
351f379b
JR
895# /boot
896install -d $RPM_BUILD_ROOT/boot
897cp -a %{objdir}/System.map $RPM_BUILD_ROOT/boot/System.map-%{kernel_release}
99eb7fa8 898cp -aL %{objdir}/.config $RPM_BUILD_ROOT/boot/config-%{kernel_release}
5c6b663b 899%ifarch %{ix86} %{x8664} x32
1db9a2c1
ER
900 cp -a %{objdir}/arch/%{target_arch_dir}/boot/bzImage $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
901 install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinux-%{kernel_release}
351f379b
JR
902%endif
903%ifarch ppc ppc64
1db9a2c1
ER
904 install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
905 install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinux-%{kernel_release}
a5585a68 906%endif
351f379b
JR
907%ifarch alpha sparc sparc64
908 %{__gzip} -cfv %{objdir}/vmlinux > %{objdir}/vmlinuz
909 cp -a %{objdir}/vmlinuz $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
1db9a2c1
ER
910 install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
911 %ifarch sparc
912 elftoaout %{objdir}/arch/sparc/boot/image -o %{objdir}/vmlinux.aout
913 install -p %{objdir}/vmlinux.aout $RPM_BUILD_ROOT/boot/vmlinux.aout-%{kernel_release}
914 %endif
915 %ifarch sparc64
916 elftoaout %{objdir}/arch/sparc64/boot/image -o %{objdir}/vmlinux.aout
917 install -p %{objdir}/vmlinux.aout $RPM_BUILD_ROOT/boot/vmlinux.aout-%{kernel_release}
918 %endif
351f379b 919%endif
ecab658e 920%ifarch %{arm}
1db9a2c1 921 install -p %{objdir}/arch/arm/boot/zImage $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
a5585a68 922%endif
a3f06132
JP
923%ifarch aarch64
924 cp -a %{objdir}/arch/%{target_arch_dir}/boot/Image.gz $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
a3f06132 925%endif
a5585a68 926
351f379b
JR
927# ghosted initrd
928touch $RPM_BUILD_ROOT%{initrd_dir}/initrd-%{kernel_release}.gz
1a30aaa8 929touch $RPM_BUILD_ROOT%{initrd_dir}/initramfs-%{kernel_release}.img
a5585a68 930
7b6fa769 931%if "%{_target_base_arch}" != "%{_host_base_arch}"
351f379b
JR
932touch $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/modules.dep
933%endif
a5585a68 934
5e31e6e1
JP
935# /etc/depmod.d /etc/modrobe.d
936install -d $RPM_BUILD_ROOT%{_sysconfdir}/{depmod.d,modprobe.d}/%{kernel_release}
a5585a68 937
5aeaa3c2
JR
938install -d $RPM_BUILD_ROOT/etc/sysconfig
939install %{SOURCE1} $RPM_BUILD_ROOT/etc/sysconfig/kernel
940
351f379b 941# /usr/src/linux
82833fcc
AM
942install -d $RPM_BUILD_ROOT%{_kernelsrcdir}
943
351f379b
JR
944# test if we can hardlink -- %{_builddir} and $RPM_BUILD_ROOT on same partition
945if cp -al %{srcdir}/COPYING $RPM_BUILD_ROOT/COPYING 2>/dev/null; then
946 l=l
947 rm -f $RPM_BUILD_ROOT/COPYING
a5585a68 948fi
a5585a68 949
351f379b 950cp -a$l %{srcdir}/* $RPM_BUILD_ROOT%{_kernelsrcdir}
29564a2e
JR
951cp -a %{objdir}/Module.symvers $RPM_BUILD_ROOT%{_kernelsrcdir}
952cp -aL %{objdir}/.config $RPM_BUILD_ROOT%{_kernelsrcdir}
953cp -a %{objdir}/include $RPM_BUILD_ROOT%{_kernelsrcdir}
c122bff4
AM
954# copy arch/x86/include/generated
955for dir in $(cd %{objdir} && find arch -name generated -type d); do
956 cp -a %{objdir}/$dir $RPM_BUILD_ROOT%{_kernelsrcdir}/$dir
957 find $RPM_BUILD_ROOT%{_kernelsrcdir}/$dir -name '.*.cmd' -exec rm "{}" ";"
958done
351f379b 959
fc08a7a1 960%ifarch %{x8664} x32
dc2ad284
AM
961# Needed for CONFIG_STACK_VALIDATION / ORC_UNWINDER enabled builds
962install -d $RPM_BUILD_ROOT%{_kernelsrcdir}/tools/objtool
963cp -a %{objdir}/tools/objtool/fixdep $RPM_BUILD_ROOT%{_kernelsrcdir}/tools/objtool
964cp -a %{objdir}/tools/objtool/objtool $RPM_BUILD_ROOT%{_kernelsrcdir}/tools/objtool
fc08a7a1 965%endif
dc2ad284 966
301ecb4a
JR
967# version.h location changed in 3.7, but a lot of external modules don't know about it
968# add a compatibility symlink
fca82534 969ln -s ../generated/uapi/linux/version.h $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux/version.h
301ecb4a 970
4217a9ad
JR
971# disable this here, causes a lot of build-time problems and our rpm-build disables it anyway
972%{__sed} -i -e 's|\(CONSTIFY_PLUGIN.*:=.*\)|# \1|' $RPM_BUILD_ROOT%{_kernelsrcdir}/Makefile
973
351f379b
JR
974# collect module-build files and directories
975# Usage: kernel-module-build.pl $rpmdir $fileoutdir
976fileoutdir=$(pwd)
977cd $RPM_BUILD_ROOT%{_kernelsrcdir}
978%{__perl} %{topdir}/kernel-module-build.pl %{_kernelsrcdir} $fileoutdir
979cd -
980
29564a2e
JR
981for f in `find %{objdir}/scripts -type f -print | grep -v "/\.\|\.o$"` ; do
982 ff=${f##%{objdir}/}
983 if [ -x "$f" ]; then
984 echo "%attr(755,root,root) %{_kernelsrcdir}/$ff" >>files.mb_include_modulebuild_and_dirs
985 else
986 echo "%{_kernelsrcdir}/$ff" >>files.mb_include_modulebuild_and_dirs
987 fi
988 echo "%exclude %{_kernelsrcdir}/$ff" >>files.source_exclude_modulebuild_and_dirs
989 cp -a "$f" "$RPM_BUILD_ROOT%{_kernelsrcdir}/$ff"
990done
991
d63ae4d9 992%if %{with doc}
30f08736
ER
993# move to %{_docdir} so we wouldn't depend on any kernel package for dirs
994install -d $RPM_BUILD_ROOT%{_docdir}
995mv $RPM_BUILD_ROOT{%{_kernelsrcdir}/Documentation,%{_docdir}/%{name}-%{version}}
996
d63ae4d9
ER
997%{__rm} $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/dontdiff
998%{__rm} $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/Makefile
d63ae4d9
ER
999%{__rm} $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/*/*/Makefile
1000%else
1001%{__rm} -r $RPM_BUILD_ROOT%{_kernelsrcdir}/Documentation
1002%endif
d3a69071 1003
351f379b
JR
1004%clean
1005rm -rf $RPM_BUILD_ROOT
1006
1007%preun
1008if [ -x /sbin/new-kernel-pkg ]; then
1009 /sbin/new-kernel-pkg --remove %{kernel_release}
a5585a68 1010fi
351f379b
JR
1011
1012%post
5aeaa3c2
JR
1013[ -f /etc/sysconfig/kernel ] && . /etc/sysconfig/kernel
1014if [[ "$CREATE_SYMLINKS" != [Nn][Oo] ]]; then
5aeaa3c2
JR
1015 mv -f /boot/vmlinuz{,.old} 2> /dev/null
1016 mv -f /boot/System.map{,.old} 2> /dev/null
1017 ln -sf vmlinuz-%{kernel_release} /boot/vmlinuz
1018 ln -sf System.map-%{kernel_release} /boot/System.map
a0656eda 1019%ifarch %{arm} aarch64
2e863214
JP
1020 test -L /boot/dtb.old && rm /boot/dtb.old
1021 test ! -e /boot/dtb.old && mv -f /boot/dtb{,.old} 2> /dev/null
a0656eda
JP
1022 ln -sf dtb-%{kernel_release} /boot/dtb
1023%endif
b400362c 1024%if 0%{?alt_kernel:1}
5aeaa3c2
JR
1025 mv -f /boot/vmlinuz%{_alt_kernel}{,.old} 2> /dev/null
1026 mv -f /boot/System%{_alt_kernel}.map{,.old} 2> /dev/null
1027 ln -sf vmlinuz-%{kernel_release} /boot/vmlinuz%{_alt_kernel}
1028 ln -sf System.map-%{kernel_release} /boot/System.map%{_alt_kernel}
0b2f1d00
JP
1029%ifarch %{arm} aarch64
1030 test -L /boot/dtb%{_alt_kernel}.old && rm /boot/dtb%{_alt_kernel}.old
1031 test ! -e /boot/dtb%{_alt_kernel}.old && mv -f /boot/dtb%{_alt_kernel}{,.old} 2> /dev/null
1032 ln -sf dtb-%{kernel_release} /boot/dtb%{_alt_kernel}
1033%endif
b400362c 1034%endif
5aeaa3c2 1035fi
351f379b
JR
1036
1037%depmod %{kernel_release}
1038
4dabe329 1039%posttrans
31a535c1 1040# use posttrans to generate initrd after all dependant module packages (-drm, etc) are installed
5aeaa3c2 1041[ -f /etc/sysconfig/kernel ] && . /etc/sysconfig/kernel
fed5e62c 1042initrd_file=""
5aeaa3c2 1043if [[ "$USE_GENINITRD" != [Nn][Oo] ]]; then
31a535c1 1044 /sbin/geninitrd -f --initrdfs=initramfs %{initrd_dir}/initrd-%{kernel_release}.gz %{kernel_release} || :
fed5e62c 1045 initrd_file="initrd-%{kernel_release}.gz"
5aeaa3c2 1046fi
fed5e62c
JK
1047
1048# if dracut is present then generate full-featured initramfs
1049if [[ "$USE_DRACUT" != [Nn][Oo] ]] && [ -x /sbin/dracut ]; then
1050 /sbin/dracut --force --quiet /boot/initramfs-%{kernel_release}.img %{kernel_release}
5a5ad91b 1051 [ -n "$initrd_file" ] || initrd_file="initramfs-%{kernel_release}.img"
fed5e62c
JK
1052fi
1053
5aeaa3c2
JR
1054if [[ "$CREATE_SYMLINKS" != [Nn][Oo] ]]; then
1055 mv -f %{initrd_dir}/initrd{,.old} 2> /dev/null
5a5ad91b
ER
1056 if [ -n "$initrd_file" ] ; then
1057 ln -sf "$initrd_file" %{initrd_dir}/initrd
1058 fi
b400362c 1059%if 0%{?alt_kernel:1}
5aeaa3c2 1060 mv -f %{initrd_dir}/initrd%{_alt_kernel}{,.old} 2> /dev/null
5a5ad91b
ER
1061 if [ -n "$initrd_file" ] ; then
1062 ln -sf "$initrd_file" %{initrd_dir}/initrd%{_alt_kernel}
1063 fi
b400362c 1064%endif
5aeaa3c2 1065fi
351f379b 1066
4dabe329 1067# update boot loaders when old package files are gone from filesystem
c5de1ad5 1068if [ -x /sbin/update-grub -a -f /etc/sysconfig/grub ]; then
4dabe329
ER
1069 if [ "$(. /etc/sysconfig/grub; echo ${UPDATE_GRUB:-no})" = "yes" ]; then
1070 /sbin/update-grub >/dev/null
c5de1ad5
ER
1071 fi
1072fi
351f379b 1073if [ -x /sbin/new-kernel-pkg ]; then
6ef17cf1 1074 /sbin/new-kernel-pkg --initrdfile=%{initrd_dir}/$initrd_file --install %{kernel_release} --banner "PLD Linux (%{pld_release})%{?alt_kernel: / %{alt_kernel}}"
0bb27755
ER
1075fi
1076if [ -x /sbin/rc-boot ]; then
351f379b 1077 /sbin/rc-boot 1>&2 || :
a5585a68 1078fi
f06ac035
JK
1079if [ -x /sbin/efi-boot-update ]; then
1080 /sbin/efi-boot-update --auto || :
1081fi
a5585a68 1082
351f379b 1083%post vmlinux
5aeaa3c2
JR
1084[ -f /etc/sysconfig/kernel ] && . /etc/sysconfig/kernel
1085if [[ "$CREATE_SYMLINKS" != [Nn][Oo] ]]; then
1086 mv -f /boot/vmlinux{,.old} 2> /dev/null
1087 ln -sf vmlinux-%{kernel_release} /boot/vmlinux
b400362c 1088%if 0%{?alt_kernel:1}
5aeaa3c2
JR
1089 mv -f /boot/vmlinux-%{alt_kernel}{,.old} 2> /dev/null
1090 ln -sf vmlinux-%{kernel_release} /boot/vmlinux-%{alt_kernel}
b400362c 1091%endif
5aeaa3c2 1092fi
351f379b 1093
351f379b
JR
1094%post drm
1095%depmod %{kernel_release}
a5585a68 1096
351f379b
JR
1097%postun drm
1098%depmod %{kernel_release}
a5585a68 1099
351f379b
JR
1100%post sound-alsa
1101%depmod %{kernel_release}
a5585a68 1102
351f379b
JR
1103%postun sound-alsa
1104%depmod %{kernel_release}
a5585a68 1105
a5585a68 1106%post headers
e865f3ec 1107ln -snf %{basename:%{_kernelsrcdir}} %{_prefix}/src/linux%{versuffix}%{_alt_kernel}
a5585a68
AM
1108
1109%postun headers
351f379b 1110if [ "$1" = "0" ]; then
e865f3ec
JR
1111 if [ -L %{_prefix}/src/linux%{versuffix}%{_alt_kernel} ]; then
1112 if [ "$(readlink %{_prefix}/src/linux%{versuffix}%{_alt_kernel})" = "linux%{versuffix}%{_alt_kernel}-%{version}" ]; then
1113 rm -f %{_prefix}/src/linux%{versuffix}%{_alt_kernel}
a5585a68
AM
1114 fi
1115 fi
1116fi
1117
351f379b
JR
1118%triggerin module-build -- %{name} = %{epoch}:%{version}-%{release}
1119ln -sfn %{_kernelsrcdir} /lib/modules/%{kernel_release}/build
1120ln -sfn %{_kernelsrcdir} /lib/modules/%{kernel_release}/source
1121
1122%triggerun module-build -- %{name} = %{epoch}:%{version}-%{release}
1123if [ "$1" = 0 ]; then
1124 rm -f /lib/modules/%{kernel_release}/{build,source}
1125fi
1126
a5585a68
AM
1127%files
1128%defattr(644,root,root,755)
11f5dae8 1129%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/kernel
a5585a68 1130%ifarch sparc sparc64
351f379b 1131/boot/vmlinux.aout-%{kernel_release}
351f379b 1132%endif
e4e33c3c
JP
1133%ifarch %{arm} aarch64
1134/boot/dtb-%{kernel_release}
1135%endif
351f379b
JR
1136/boot/vmlinuz-%{kernel_release}
1137/boot/System.map-%{kernel_release}
d9faffc5 1138/boot/config-%{kernel_release}
351f379b 1139%ghost %{initrd_dir}/initrd-%{kernel_release}.gz
1a30aaa8 1140%ghost %{initrd_dir}/initramfs-%{kernel_release}.img
351f379b
JR
1141
1142%dir /lib/modules/%{kernel_release}
1143%dir /lib/modules/%{kernel_release}/kernel
351f379b 1144/lib/modules/%{kernel_release}/kernel/arch
f99f4214 1145/lib/modules/%{kernel_release}/kernel/block
351f379b
JR
1146/lib/modules/%{kernel_release}/kernel/crypto
1147/lib/modules/%{kernel_release}/kernel/drivers
101ae904 1148%if %{have_drm}
351f379b
JR
1149%exclude /lib/modules/%{kernel_release}/kernel/drivers/gpu
1150%endif
1151/lib/modules/%{kernel_release}/kernel/fs
351f379b 1152/lib/modules/%{kernel_release}/kernel/kernel
351f379b
JR
1153/lib/modules/%{kernel_release}/kernel/lib
1154/lib/modules/%{kernel_release}/kernel/net
fecce547 1155/lib/modules/%{kernel_release}/kernel/mm
101ae904 1156%if %{have_sound}
351f379b
JR
1157%dir /lib/modules/%{kernel_release}/kernel/sound
1158/lib/modules/%{kernel_release}/kernel/sound/ac97_bus.ko*
1159/lib/modules/%{kernel_release}/kernel/sound/sound*.ko*
1160%ifnarch sparc
2ba6f0dd
AM
1161%exclude /lib/modules/%{kernel_release}/kernel/drivers/media/pci/cx88/cx88-alsa.ko*
1162%exclude /lib/modules/%{kernel_release}/kernel/drivers/media/usb/em28xx/em28xx-alsa.ko*
1163%exclude /lib/modules/%{kernel_release}/kernel/drivers/media/pci/saa7134/saa7134-alsa.ko*
1179f49b 1164%exclude /lib/modules/%{kernel_release}/kernel/drivers/usb/gadget/legacy/g_midi.ko*
351f379b 1165%endif
8ccf368c
JP
1166%ifarch %{arm}
1167%exclude /lib/modules/%{kernel_release}/kernel/drivers/staging/vc04_services/bcm2835-audio
1168%endif
351f379b
JR
1169%endif
1170%dir /lib/modules/%{kernel_release}/misc
101ae904 1171%if %{with myown}
1172/lib/modules/%{kernel_release}/kernel/sound
1173%endif
30812fb8 1174/lib/modules/%{kernel_release}/kernel/security
6d54bd67 1175
5e31e6e1 1176%dir %{_sysconfdir}/depmod.d/%{kernel_release}
6d54bd67
ER
1177%dir %{_sysconfdir}/modprobe.d/%{kernel_release}
1178
1179# provided by build
1180/lib/modules/%{kernel_release}/modules.order
8ee3ac38 1181/lib/modules/%{kernel_release}/modules.builtin*
6d54bd67
ER
1182
1183# rest modules.* are ghost (regenerated by post depmod -a invocation)
1184%ghost /lib/modules/%{kernel_release}/modules.alias
1185%ghost /lib/modules/%{kernel_release}/modules.alias.bin
6d54bd67
ER
1186%ghost /lib/modules/%{kernel_release}/modules.dep
1187%ghost /lib/modules/%{kernel_release}/modules.dep.bin
8ee3ac38 1188%ghost /lib/modules/%{kernel_release}/modules.devname
8ee3ac38 1189%ghost /lib/modules/%{kernel_release}/modules.softdep
6d54bd67
ER
1190%ghost /lib/modules/%{kernel_release}/modules.symbols
1191%ghost /lib/modules/%{kernel_release}/modules.symbols.bin
6d54bd67 1192
351f379b
JR
1193# symlinks pointing to kernelsrcdir
1194%ghost /lib/modules/%{kernel_release}/build
1195%ghost /lib/modules/%{kernel_release}/source
351f379b 1196
5c6b663b 1197%ifarch alpha %{ix86} %{x8664} x32 ppc ppc64 sparc sparc64
351f379b 1198%files vmlinux
a5585a68 1199%defattr(644,root,root,755)
351f379b 1200/boot/vmlinux-%{kernel_release}
a5585a68
AM
1201%endif
1202
101ae904 1203%if %{have_drm}
351f379b 1204%files drm
a5585a68 1205%defattr(644,root,root,755)
351f379b 1206/lib/modules/%{kernel_release}/kernel/drivers/gpu
a5585a68
AM
1207%endif
1208
101ae904 1209%if %{have_sound}
351f379b 1210%files sound-alsa
a5585a68 1211%defattr(644,root,root,755)
351f379b
JR
1212/lib/modules/%{kernel_release}/kernel/sound
1213%exclude %dir /lib/modules/%{kernel_release}/kernel/sound
1214%exclude /lib/modules/%{kernel_release}/kernel/sound/ac97_bus.ko*
1215%exclude /lib/modules/%{kernel_release}/kernel/sound/sound*.ko*
351f379b 1216%ifnarch sparc
088462e0 1217/lib/modules/%{kernel_release}/kernel/drivers/usb/gadget/legacy/g_midi.ko*
2ba6f0dd
AM
1218/lib/modules/%{kernel_release}/kernel/drivers/media/pci/cx88/cx88-alsa.ko*
1219/lib/modules/%{kernel_release}/kernel/drivers/media/usb/em28xx/em28xx-alsa.ko*
1220/lib/modules/%{kernel_release}/kernel/drivers/media/pci/saa7134/saa7134-alsa.ko*
a5585a68 1221%endif
8ccf368c
JP
1222%ifarch %{arm}
1223/lib/modules/%{kernel_release}/kernel/drivers/staging/vc04_services/bcm2835-audio
1224%endif
a5585a68
AM
1225%endif
1226
fecce547 1227%files headers -f files.headers_exclude_kbuild
a5585a68 1228%defattr(644,root,root,755)
30f08736 1229%dir %{_kernelsrcdir}
351f379b
JR
1230%{_kernelsrcdir}/include
1231%dir %{_kernelsrcdir}/arch
1232%dir %{_kernelsrcdir}/arch/[!K]*
1233%{_kernelsrcdir}/arch/*/include
1234%dir %{_kernelsrcdir}/security
1235%dir %{_kernelsrcdir}/security/selinux
1236%{_kernelsrcdir}/security/selinux/include
726e6d04
JR
1237%dir %{_kernelsrcdir}/tools
1238%{_kernelsrcdir}/tools/include
cc921eca
JR
1239%dir %{_kernelsrcdir}/usr
1240%dir %{_kernelsrcdir}/usr/include
29564a2e
JR
1241%{_kernelsrcdir}/.config
1242%{_kernelsrcdir}/Module.symvers
351f379b 1243
fecce547 1244%files module-build -f files.mb_include_modulebuild_and_dirs
a5585a68 1245%defattr(644,root,root,755)
351f379b
JR
1246%ifarch ppc ppc64
1247%{_kernelsrcdir}/arch/powerpc/lib/crtsavres.*
1248%endif
fecce547 1249%exclude %dir %{_kernelsrcdir}/arch/um
351f379b 1250%{_kernelsrcdir}/arch/*/kernel/asm-offsets*
2ba6f0dd 1251%{_kernelsrcdir}/drivers/media/pci/bt8xx/bttv.h
351f379b 1252%{_kernelsrcdir}/kernel/bounds.c
4217a9ad
JR
1253%{_kernelsrcdir}/scripts/basic/*.c
1254%attr(755,root,root) %{_kernelsrcdir}/scripts/kconfig/*.sh
4217a9ad
JR
1255%{_kernelsrcdir}/scripts/kconfig/*.pl
1256%{_kernelsrcdir}/scripts/kconfig/*.glade
4217a9ad
JR
1257%{_kernelsrcdir}/scripts/kconfig/*.cc
1258%{_kernelsrcdir}/scripts/kconfig/*.y
1259%{_kernelsrcdir}/scripts/kconfig/*.l
1260%{_kernelsrcdir}/scripts/kconfig/[c-k]*.c
1261%{_kernelsrcdir}/scripts/kconfig/[c-k]*.h
1262%{_kernelsrcdir}/scripts/kconfig/l*.h
eca801bf
AM
1263%{_kernelsrcdir}/scripts/kconfig/[m-o]*.c
1264%{_kernelsrcdir}/scripts/kconfig/[m-o]*.h
1265%{_kernelsrcdir}/scripts/kconfig/preprocess.c
1266%{_kernelsrcdir}/scripts/kconfig/[q-u]*.c
1267%{_kernelsrcdir}/scripts/kconfig/[q-u]*.h
4217a9ad
JR
1268%{_kernelsrcdir}/scripts/kconfig/lxdialog
1269%{_kernelsrcdir}/scripts/mod/*.c
4442a07d 1270%{_kernelsrcdir}/scripts/mod/modpost.h
29564a2e 1271%attr(755,root,root) %{_kernelsrcdir}/scripts/mkcompile_h
29564a2e 1272%attr(755,root,root) %{_kernelsrcdir}/scripts/setlocalversion
c9b10cc9 1273%{_kernelsrcdir}/scripts/subarch.include
351f379b 1274%{_kernelsrcdir}/scripts/*.c
77460261 1275%{_kernelsrcdir}/scripts/*.h
29564a2e 1276%attr(755,root,root) %{_kernelsrcdir}/scripts/*.sh
9d6d5869 1277%{_kernelsrcdir}/scripts/selinux/genheaders/*.c
c78e408d 1278%{_kernelsrcdir}/scripts/selinux/mdp/*.c
fecce547 1279%exclude %dir %{_kernelsrcdir}/security
1280%exclude %dir %{_kernelsrcdir}/security/selinux
fc08a7a1 1281%ifarch %{x8664} x32
dc2ad284
AM
1282%attr(755,root,root) %{_kernelsrcdir}/tools/objtool/fixdep
1283%attr(755,root,root) %{_kernelsrcdir}/tools/objtool/objtool
fc08a7a1 1284%endif
a5585a68 1285
1848fd38 1286%if %{with doc}
a5585a68
AM
1287%files doc
1288%defattr(644,root,root,755)
d3a69071
ER
1289%dir %{_docdir}/%{name}-%{version}
1290
1291%{_docdir}/%{name}-%{version}/[!jkz]*
d3a69071 1292%{_docdir}/%{name}-%{version}/kbuild
92820201 1293%{_docdir}/%{name}-%{version}/kernel-hacking
1848fd38 1294%endif
a5585a68
AM
1295
1296%if %{with source}
fecce547 1297%files source -f files.source_exclude_modulebuild_and_dirs
a5585a68 1298%defattr(644,root,root,755)
351f379b
JR
1299%{_kernelsrcdir}/arch/*/[!Mik]*
1300%{_kernelsrcdir}/arch/*/kernel/[!M]*
351f379b
JR
1301%{_kernelsrcdir}/arch/m68k/ifpsp060/[!M]*
1302%{_kernelsrcdir}/arch/m68k/ifpsp060/MISC
fecce547 1303%{_kernelsrcdir}/arch/m68k/install.sh
351f379b
JR
1304%{_kernelsrcdir}/arch/parisc/install.sh
1305%{_kernelsrcdir}/arch/x86/ia32/[!M]*
394e211a 1306%{_kernelsrcdir}/arch/powerpc/kexec
351f379b 1307%{_kernelsrcdir}/arch/powerpc/kvm
cd233405 1308%{_kernelsrcdir}/arch/riscv/kvm
351f379b
JR
1309%ifarch ppc ppc64
1310%exclude %{_kernelsrcdir}/arch/powerpc/lib/crtsavres.*
1311%endif
392086de 1312%{_kernelsrcdir}/arch/arm64/kvm
94da8b28 1313%{_kernelsrcdir}/arch/loongarch/kvm
7770d33f 1314%{_kernelsrcdir}/arch/mips/kvm
351f379b
JR
1315%{_kernelsrcdir}/arch/s390/kvm
1316%{_kernelsrcdir}/arch/x86/kvm
1317%exclude %{_kernelsrcdir}/arch/*/kernel/asm-offsets*
2ba6f0dd 1318%exclude %{_kernelsrcdir}/drivers/media/pci/bt8xx/bttv.h
351f379b 1319%{_kernelsrcdir}/block
79b8bda9 1320%{_kernelsrcdir}/certs
351f379b
JR
1321%{_kernelsrcdir}/crypto
1322%{_kernelsrcdir}/drivers
351f379b 1323%{_kernelsrcdir}/fs
351f379b 1324%{_kernelsrcdir}/init
85ad412e 1325%{_kernelsrcdir}/io_uring
351f379b
JR
1326%{_kernelsrcdir}/ipc
1327%{_kernelsrcdir}/kernel
1328%exclude %{_kernelsrcdir}/kernel/bounds.c
1329%{_kernelsrcdir}/lib
1330%{_kernelsrcdir}/mm
1331%{_kernelsrcdir}/net
1332%{_kernelsrcdir}/virt
467c77f1 1333%{_kernelsrcdir}/rust
351f379b
JR
1334%{_kernelsrcdir}/samples
1335%{_kernelsrcdir}/scripts/*
1336%exclude %{_kernelsrcdir}/scripts/Kbuild.include
1337%exclude %{_kernelsrcdir}/scripts/Makefile*
1338%exclude %{_kernelsrcdir}/scripts/basic
1339%exclude %{_kernelsrcdir}/scripts/kconfig
960d2e94 1340%exclude %{_kernelsrcdir}/scripts/mkcompile_h
351f379b
JR
1341%exclude %{_kernelsrcdir}/scripts/mod
1342%exclude %{_kernelsrcdir}/scripts/setlocalversion
34312b6a 1343%exclude %{_kernelsrcdir}/scripts/subarch.include
351f379b 1344%exclude %{_kernelsrcdir}/scripts/*.c
77460261 1345%exclude %{_kernelsrcdir}/scripts/*.h
351f379b 1346%exclude %{_kernelsrcdir}/scripts/*.sh
960d2e94 1347%exclude %dir %{_kernelsrcdir}/scripts/selinux
1348%exclude %{_kernelsrcdir}/scripts/selinux/Makefile
c78e408d
PZ
1349%exclude %dir %{_kernelsrcdir}/scripts/selinux/genheaders
1350%exclude %{_kernelsrcdir}/scripts/selinux/genheaders/Makefile
1351%exclude %{_kernelsrcdir}/scripts/selinux/genheaders/*.c
960d2e94 1352%exclude %dir %{_kernelsrcdir}/scripts/selinux/mdp
1353%exclude %{_kernelsrcdir}/scripts/selinux/mdp/Makefile
1354%exclude %{_kernelsrcdir}/scripts/selinux/mdp/*.c
351f379b
JR
1355%{_kernelsrcdir}/sound
1356%{_kernelsrcdir}/security
1357%exclude %{_kernelsrcdir}/security/selinux/include
94a92871 1358%{_kernelsrcdir}/tools/*
726e6d04 1359%exclude %{_kernelsrcdir}/tools/include
fc08a7a1 1360%ifarch %{x8664} x32
dc2ad284
AM
1361%exclude %{_kernelsrcdir}/tools/objtool/fixdep
1362%exclude %{_kernelsrcdir}/tools/objtool/objtool
fc08a7a1 1363%endif
351f379b
JR
1364%{_kernelsrcdir}/usr
1365%{_kernelsrcdir}/COPYING
1366%{_kernelsrcdir}/CREDITS
1367%{_kernelsrcdir}/MAINTAINERS
1368%{_kernelsrcdir}/README
a5585a68 1369%endif
This page took 3.145505 seconds and 4 git commands to generate.