]> git.pld-linux.org Git - packages/kernel.git/blob - kernel.spec
add fixes for pinebook pro
[packages/kernel.git] / kernel.spec
1 #
2 # LATEST VERSION CHECKER:
3 # # curl -s https://www.kernel.org/finger_banner
4 #
5 # TODO:
6 # - benchmark NO_HZ & HZ=1000 vs HZ=300 on i686
7 # - IPv4 source address selection for multihomed vservers is completely broken
8 #       meaning routing table is ignored except for default
9 #
10 # HOWTO update configuration files:
11 # - run build
12 # - add new options to proper config (kernel-multiarch.config, kernel-x86.config, kernel-powerpc.config etc)
13 # - sort configuration files using:
14 #   ./kernel-config-sort.pl ~/rpm/BUILD/kernel-%{version}/linux-%{version}/ -a x86 kernel-x86.config
15 #   ./kernel-config-sort.pl ~/rpm/BUILD/kernel-%{version}/linux-%{version} kernel-multiarch.config
16 #
17 # Conditional build:
18 %bcond_without  source          # don't build kernel-source package
19 %bcond_without  doc                     # don't build kernel-doc package
20 %bcond_without  pcmcia          # don't build pcmcia
21
22 %bcond_with     verbose         # verbose build (V=1)
23
24 %bcond_with     fbcondecor      # build fbcondecor (disable FB_TILEBLITTING and affected fb modules)
25 %bcond_with     pae             # build PAE (HIGHMEM64G) support on 32bit i686 athlon pentium3 pentium4
26 %bcond_with     nfsroot         # build with root on NFS support
27
28 %bcond_without  imq             # imq support
29 %bcond_without  ipv6            # ipv6 support
30
31 %bcond_without  aufs            # aufs4 support
32
33 %bcond_with     vserver         # support for VServer
34
35 %bcond_with     rt              # real-time kernel (CONFIG_PREEMPT_RT) for low latencies
36
37 %bcond_with     vanilla         # don't include any patches
38 %bcond_with     rescuecd        # build kernel for our rescue
39 %bcond_with     myown           # build with your own config (kernel-myown.config)
40
41 %{?debug:%define with_verbose 1}
42
43 %define         have_drm        1
44 %ifarch %{ix86} %{x8664} x32 alpha %{arm} ia64 ppc ppc64 sparc sparc64
45 %define         have_ide        1
46 %else
47 %define         have_ide        0
48 %endif
49 %define         have_sound      1
50 %define         have_pcmcia     1
51
52 %if %{with rescuecd}
53 %unglobal       with_vserver
54 %define         have_drm        0
55 %define         have_sound      0
56 %endif
57
58 %if %{with myown}
59 %define         have_drm        0
60 %define         have_ide        0
61 %define         have_sound      0
62 %define         have_pcmcia     0
63 %endif
64
65 %ifarch sparc sparc64
66 %unglobal       with_pcmcia
67 %define         have_drm        0
68 %endif
69
70 %if %{without pcmcia}
71 %define         have_pcmcia     0
72 %endif
73
74 %define         rel             1
75 %define         basever         5.10
76 %define         postver         .15
77
78 # define this to '-%{basever}' for longterm branch
79 %define         versuffix       %{nil}
80
81 # __alt_kernel is list of features, empty string if none set
82 # _alt kernel is defined as: %{nil}%{?alt_kernel:-%{?alt_kernel}} (defined in rpm.macros)
83 # alt_kernel should be defined if __alt_kernel has non-empty value (for %{?alt_kernel:foo} constructs)
84 %define         __alt_kernel    %{nil}
85
86 %if "%{__alt_kernel}" != ""
87 %define         alt_kernel      %{__alt_kernel}
88 %endif
89
90 # these override whatever name was picked from bconds
91 %if %{with myown} && "%{_alt_kernel}" == ""
92 %define         alt_kernel      myown
93 %endif
94 %if %{with rescuecd}
95 %define         alt_kernel      rescuecd
96 %endif
97 %if %{with vanilla}
98 %define         alt_kernel      vanilla
99 %endif
100 %if %{with pae}
101 %define         alt_kernel      pae
102 %endif
103 %if %{with rt}
104 %define         alt_kernel      rt
105 %endif
106
107 # kernel release (used in filesystem and eventually in uname -r)
108 # modules will be looked from /lib/modules/%{kernel_release}
109 # localversion is just that without version for "> localversion"
110 %define         localversion    %{rel}
111 %define         kernel_release  %{version}%{?alt_kernel:.%{alt_kernel}}-%{localversion}
112
113 %define         kmod_ver        26-2
114
115 Summary:        The Linux kernel (the core of the Linux operating system)
116 Summary(de.UTF-8):      Der Linux-Kernel (Kern des Linux-Betriebssystems)
117 Summary(et.UTF-8):      Linuxi kernel (ehk operatsioonisüsteemi tuum)
118 Summary(fr.UTF-8):      Le Kernel-Linux (La partie centrale du systeme)
119 Summary(pl.UTF-8):      JÄ…dro Linuksa
120 Name:           kernel%{versuffix}%{_alt_kernel}
121 Version:        %{basever}%{postver}
122 Release:        %{rel}
123 Epoch:          3
124 License:        GPL v2
125 Group:          Base/Kernel
126 Source0:        https://www.kernel.org/pub/linux/kernel/v5.x/linux-%{basever}.tar.xz
127 # Source0-md5:  753adc474bf799d569dec4f165ed92c3
128 %if "%{postver}" != ".0"
129 Patch0:         https://www.kernel.org/pub/linux/kernel/v5.x/patch-%{version}.xz
130 # Patch0-md5:   e42919d9469abc938a9e1efc7a9abb72
131 %endif
132 Source1:        kernel.sysconfig
133
134 Source3:        kernel-autoconf.h
135 Source4:        kernel-config.h
136 Source6:        kernel-config.awk
137 Source7:        kernel-module-build.pl
138 Source8:        kernel-track-config-change.awk
139 # not used by kernel.spec, but it's good to have it in SOURCES
140 Source9:        kernel-config-sort.pl
141 Source10:       kernel.make
142
143 Source20:       kernel-multiarch.config
144 Source21:       kernel-x86.config
145 Source22:       kernel-sparc.config
146 Source23:       kernel-alpha.config
147 Source24:       kernel-powerpc.config
148 Source25:       kernel-ia64.config
149
150 Source41:       kernel-patches.config
151 Source43:       kernel-vserver.config
152 Source44:       kernel-rt.config
153
154 Source55:       kernel-imq.config
155
156 Source58:       kernel-inittmpfs.config
157
158 # http://dev.gentoo.org/~spock/projects/fbcondecor/archive/fbcondecor-0.9.4-2.6.25-rc6.patch
159 Patch3:         kernel-fbcondecor.patch
160 Patch6:         linux-wistron-nx.patch
161
162 # netfilter related stuff mostly based on patch-o-matic-ng
163 # snapshot 20070806 with some fixes. Some modules
164 # were ported to nf_conntrack.
165
166 Patch10:        kernel-pom-ng-IPV4OPTSSTRIP.patch
167
168 # http://ftp.linux-vserver.org/pub/people/dhozac/p/k/delta-owner-xid-feat02.diff
169 Patch37:        kernel-owner-xid.patch
170
171 # based on kernel-2.6.25-layer7-2.20.patch from
172 # http://switch.dl.sourceforge.net/sourceforge/l7-filter/netfilter-layer7-v2.20.tar.gz
173 Patch40:        kernel-layer7.patch
174
175 ### End netfilter
176
177 # http://www.linuximq.net
178 Patch50:        kernel-imq.patch
179
180 # by Baggins request:
181 # derived from ftp://ftp.cmf.nrl.navy.mil/pub/chas/linux-atm/vbr/vbr-kernel-diffs
182 Patch55:        kernel-atm-vbr.patch
183 Patch56:        kernel-atmdd.patch
184
185 # http://synce.svn.sourceforge.net/svnroot/synce/trunk/patches/linux-2.6.22-rndis_host-wm5.patch
186 Patch59:        kernel-rndis_host-wm5.patch
187
188 # adds some ids for hostap suported cards and monitor_enable from/for aircrack-ng
189 # http://patches.aircrack-ng.org/hostap-kernel-2.6.18.patch
190 Patch85:        kernel-hostap.patch
191
192 %define vserver_patch 3.18.5-vs2.3.7.3
193 # http://vserver.13thfloor.at/Experimental/patch-3.18.5-vs2.3.7.3.diff
194 # note there are additional patches from above url:
195 # - *fix* are real fixes (we want these)
196 # - *feat* are new features/tests (we don't want these)
197 Patch100:       kernel-vserver-2.3.patch
198 Patch101:       kernel-vserver-fixes.patch
199
200 # git://github.com/sfjro/aufs5-standalone.git, read README
201 # Patch creation:
202 # git clone git://github.com/sfjro/aufs5-standalone.git
203 # cd aufs5-standalone
204 # git checkout -b aufs5.8 origin/aufs5.8
205 # cat aufs5-kbuild.patch aufs5-base.patch aufs5-mmap.patch aufs5-standalone.patch > ~/rpm/packages/kernel/kernel-aufs5.patch
206 # rm -rf linux && mkdir linux; cp -a Documentation fs include linux
207 # diff -urN /usr/share/empty linux | filterdiff -x linux/include/uapi/linux/Kbuild >> ~/rpm/packages/kernel/kernel-aufs5.patch
208 # cat aufs5-loopback.patch >> ~/rpm/packages/kernel/kernel-aufs5.patch
209 #
210 Patch145:       kernel-aufs5.patch
211 Patch146:       kernel-aufs+vserver.patch
212
213 # Show normal colors in menuconfig with ncurses ABI 6
214 Patch250:       kernel-fix_256colors_menuconfig.patch
215
216 # https://rt.wiki.kernel.org/
217 # https://www.kernel.org/pub/linux/kernel/projects/rt/4.9/patch-4.9.6-rt4.patch.xz
218 Patch500:       kernel-rt.patch
219
220 Patch2000:      kernel-small_fixes.patch
221 Patch2001:      kernel-pwc-uncompress.patch
222 Patch2003:      kernel-regressions.patch
223
224 # for rescuecd
225 # based on ftp://ftp.leg.uct.ac.za/pub/linux/rip/tmpfs_root-2.6.30.diff.gz
226 Patch7000:      kernel-inittmpfs.patch
227
228 # ARM only
229 Patch8000:      rpi-wm8804.patch
230 Patch8001:      kernel-pinebook-pro.patch
231 Patch8002:      kernel-rk3399-afbc-ytr.patch
232
233 # Do not remove this line, please. It is easier for me to uncomment two lines, then patch
234 # kernel.spec every time.
235 #Patch50000:    kernel-usb_reset.patch
236
237 URL:            https://www.kernel.org/
238 AutoReqProv:    no
239 BuildRequires:  /sbin/depmod
240 BuildRequires:  bc
241 BuildRequires:  binutils >= 3:2.18
242 BuildRequires:  bison
243 %ifarch sparc sparc64
244 BuildRequires:  elftoaout
245 %endif
246 BuildRequires:  elfutils-devel
247 BuildRequires:  flex
248 BuildRequires:  gcc >= 6:7.2.0-6
249 BuildRequires:  gcc-c++
250 BuildRequires:  gcc-plugin-devel
251 BuildRequires:  hostname
252 BuildRequires:  kmod >= %{kmod_ver}
253 BuildRequires:  libstdc++-devel
254 BuildRequires:  openssl-devel
255 BuildRequires:  openssl-tools
256 BuildRequires:  perl-base
257 BuildRequires:  rpm-build >= 4.5-24
258 BuildRequires:  rpmbuild(macros) >= 1.743
259 %ifarch ppc
260 BuildRequires:  uboot-mkimage
261 %endif
262 BuildRequires:  xz >= 1:4.999.7
263 Requires(post): coreutils
264 Requires(post): geninitrd >= 12787-6
265 Requires(post): kmod >= %{kmod_ver}
266 Requires:       /sbin/depmod
267 Requires:       coreutils
268 Requires:       geninitrd >= 12787-6
269 Requires:       kmod >= %{kmod_ver}
270 %if %{with pae}
271 %ifarch i686 athlon pentium3 pentium4
272 Requires:       cpuinfo(pae)
273 %endif
274 %endif
275 Suggests:       crda
276 Suggests:       dracut
277 Suggests:       keyutils
278 Requires:       linux-firmware
279 Provides:       %{name}(netfilter) = 20070806
280 Provides:       %{name}(vermagic) = %{kernel_release}
281 Obsoletes:      kernel%{_alt_kernel}-char-lirc-ene0100
282 Obsoletes:      kernel%{_alt_kernel}-char-lirc-it87
283 Obsoletes:      kernel%{_alt_kernel}-char-lirc-ite8709
284 Obsoletes:      kernel%{_alt_kernel}-char-lirc-mceusb
285 Obsoletes:      kernel%{_alt_kernel}-char-lirc-streamzap
286 Obsoletes:      kernel%{_alt_kernel}-isdn-mISDN
287 Obsoletes:      kernel-firmware
288 Obsoletes:      kernel-misc-acer_acpi
289 Obsoletes:      kernel-misc-fuse
290 Obsoletes:      kernel-misc-uvc
291 Obsoletes:      kernel-modules
292 Obsoletes:      kernel-net-ar81
293 Obsoletes:      kernel-net-hostap
294 Obsoletes:      kernel-net-ieee80211
295 Obsoletes:      kernel-net-ipp2p
296 Obsoletes:      kernel-net-rt61
297 Obsoletes:      kernel-smp
298 Conflicts:      e2fsprogs < 1.29
299 Conflicts:      isdn4k-utils < 3.1pre1
300 Conflicts:      jfsutils < 1.1.3
301 Conflicts:      libcap-libs < 1:2.34
302 Conflicts:      libusb < 1.0.9
303 Conflicts:      linux-firmware < 20120720
304 Conflicts:      lvm2 < 2.02.40
305 Conflicts:      module-init-tools < 3.16
306 Conflicts:      nfs-utils < 1.0.5
307 Conflicts:      oprofile < 0.9
308 Conflicts:      ppp < 1:2.4.0
309 Conflicts:      procps < 3.2.0
310 Conflicts:      quota-tools < 3.09
311 Conflicts:      reiserfsprogs < 3.6.3
312 Conflicts:      rpm < 4.4.2-0.2
313 Conflicts:      udev < 1:081
314 Conflicts:      util-linux < 2.10o
315 Conflicts:      util-vserver < 0.30.216
316 Conflicts:      xfsprogs < 2.6.0
317 %if %{with pae}
318 ExclusiveArch:  i686 pentium3 pentium4 athlon
319 %else
320 ExclusiveArch:  i486 i586 i686 pentium3 pentium4 athlon %{x8664} x32 alpha %{arm} ia64 ppc ppc64 sparc sparc64 aarch64
321 %endif
322 ExclusiveOS:    Linux
323 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
324
325 %define         kmod_compress_cmd       %{__xz}
326
327 %ifarch %{ix86} %{x8664} x32
328 %define         target_arch_dir         x86
329 %endif
330 %ifarch ppc ppc64
331 %define         target_arch_dir         powerpc
332 %endif
333 %ifarch sparc sparc64
334 %define         target_arch_dir         sparc
335 %endif
336 %ifarch aarch64
337 %define         target_arch_dir         arm64
338 %endif
339 %ifnarch %{ix86} %{x8664} x32 ppc ppc64 sparc sparc64 aarch64
340 %define         target_arch_dir         %{_target_base_arch}
341 %endif
342
343 %define         defconfig       arch/%{target_arch_dir}/defconfig
344
345 # No ELF objects there to strip (skips processing 27k files)
346 %define         _noautostrip    \\(.*%{_kernelsrcdir}/.*\\|.*/vmlinux.*\\)
347 %define         _noautochrpath  .*%{_kernelsrcdir}/.*
348 %define         _enable_debug_packages  0
349
350 %ifarch ia64
351 %define         initrd_dir      /boot/efi
352 %else
353 %define         initrd_dir      /boot
354 %endif
355
356 %define         topdir          %{_builddir}/%{name}-%{version}
357 %define         srcdir          %{topdir}/linux-%{basever}
358 %define         objdir          %{topdir}/%{targetobj}
359 %define         targetobj       %{_target_base_arch}-gcc-%(%{__cc} -dumpversion)
360
361 %define         _kernelsrcdir   /usr/src/linux%{versuffix}%{_alt_kernel}-%{version}
362
363 %if "%{_target_base_arch}" != "%{_host_base_arch}"
364         %define CrossOpts ARCH=%{_target_base_arch} CROSS_COMPILE=%{_target_cpu}-pld-linux-
365         %define DepMod /bin/true
366
367         %if "%{_host_base_arch}" == "sparc" && "%{_target_base_arch}" == "sparc64"
368         %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
369         %define DepMod /sbin/depmod
370         %endif
371
372         %if "%{_host_base_arch}" == "sparc64" && "%{_target_base_arch}" == "sparc"
373         %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
374         %define DepMod /sbin/depmod
375         %endif
376
377         %if "%{_host_base_arch}" == "x86_64" && "%{_target_base_arch}" == "i386"
378         %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
379         %define DepMod /sbin/depmod
380         %endif
381
382         %if "%{_target_base_arch}" == "ppc" || "%{_target_base_arch}" == "ppc64"
383         %define CrossOpts ARCH=powerpc CROSS_COMPILE=%{_target_cpu}-pld-linux-
384         %endif
385 %else
386         %ifarch ppc ppc64
387         %define CrossOpts ARCH=powerpc CC="%{__cc}"
388         %else
389         %ifarch aarch64
390         %define CrossOpts ARCH=arm64 CC="%{__cc}"
391         %else
392         %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
393         %endif
394         %endif
395         %define DepMod /sbin/depmod
396 %endif
397 # use 64-bit offsets for fixdeps to work with 64-bit inodes
398 %define MakeOpts %{CrossOpts} HOSTCC="%{__cc} -D_FILE_OFFSET_BITS=64"
399
400 %define __features \
401 %{?with_vserver:Vserver - enabled}\
402 %{!?with_vserver:WARNING: VSERVER IS DISABLED IN THIS KERNEL BUILD!}\
403 %{?with_fbcondecor:Fbsplash/fbcondecor - enabled }\
404 %{?with_nfsroot:Root on NFS - enabled}\
405 %{?with_vserver:Linux-VServer - %{vserver_patch}}\
406 %{?with_rt:CONFIG_PREEMPT_RT - enabled}\
407
408 %define Features %(echo "%{__features}" | sed '/^$/d')
409
410 %description
411 This package contains the Linux kernel that is used to boot and run
412 your system. It contains few device drivers for specific hardware.
413 Most hardware is instead supported by modules loaded after booting.
414
415 %{Features}
416
417 %description -l de.UTF-8
418 Das Kernel-Paket enthält den Linux-Kernel (vmlinuz), den Kern des
419 Linux-Betriebssystems. Der Kernel ist für grundliegende
420 Systemfunktionen verantwortlich: Speicherreservierung,
421 Prozeß-Management, Geräte Ein- und Ausgaben, usw.
422
423 %{Features}
424
425 %description -l fr.UTF-8
426 Le package kernel contient le kernel linux (vmlinuz), la partie
427 centrale d'un système d'exploitation Linux. Le noyau traite les
428 fonctions basiques d'un système d'exploitation: allocation mémoire,
429 allocation de process, entrée/sortie de peripheriques, etc.
430
431 %{Features}
432
433 %description -l pl.UTF-8
434 Pakiet zawiera jÄ…dro Linuksa niezbÄ™dne do prawidÅ‚owego dziaÅ‚ania
435 Twojego komputera. Zawiera w sobie sterowniki do sprzÄ™tu znajdujÄ…cego
436 siÄ™ w komputerze, takiego jak sterowniki dysków itp.
437
438 %{Features}
439
440 %package vmlinux
441 Summary:        vmlinux - uncompressed kernel image
442 Summary(de.UTF-8):      vmlinux - dekompressiertes Kernel Bild
443 Summary(pl.UTF-8):      vmlinux - rozpakowany obraz jÄ…dra
444 Group:          Base/Kernel
445 Obsoletes:      kernel-smp-vmlinux
446
447 %description vmlinux
448 vmlinux - uncompressed kernel image.
449
450 %description vmlinux -l de.UTF-8
451 vmlinux - dekompressiertes Kernel Bild.
452
453 %description vmlinux -l pl.UTF-8
454 vmlinux - rozpakowany obraz jÄ…dra.
455
456 %package drm
457 Summary:        DRM kernel modules
458 Summary(de.UTF-8):      DRM Kernel Treiber
459 Summary(pl.UTF-8):      Sterowniki DRM
460 Group:          Base/Kernel
461 Requires(postun):       %{name} = %{epoch}:%{version}-%{release}
462 Requires:       %{name} = %{epoch}:%{version}-%{release}
463 Provides:       kernel(vboxvideo) = %{kernel_release}
464 Obsoletes:      kernel-smp-drm
465 AutoReqProv:    no
466
467 %description drm
468 DRM kernel modules.
469
470 %description drm -l de.UTF-8
471 DRM Kernel Treiber.
472
473 %description drm -l pl.UTF-8
474 Sterowniki DRM.
475
476 %package ide
477 Summary:        IDE kernel modules
478 Summary(de.UTF-8):      IDE Kernel Treiber
479 Summary(pl.UTF-8):      Sterowniki IDE
480 Group:          Base/Kernel
481 Requires(postun):       %{name} = %{epoch}:%{version}-%{release}
482 Requires:       %{name} = %{epoch}:%{version}-%{release}
483 AutoReqProv:    no
484
485 %description ide
486 IDE kernel modules.
487
488 %description ide -l de.UTF-8
489 IDE Kernel Treiber.
490
491 %description ide -l pl.UTF-8
492 Sterowniki IDE.
493
494 %package pcmcia
495 Summary:        PCMCIA modules
496 Summary(de.UTF-8):      PCMCIA Module
497 Summary(pl.UTF-8):      ModuÅ‚y PCMCIA
498 Group:          Base/Kernel
499 Requires(postun):       %{name} = %{epoch}:%{version}-%{release}
500 Requires:       %{name} = %{epoch}:%{version}-%{release}
501 Obsoletes:      kernel-smp-pcmcia
502 Conflicts:      pcmcia-cs < 3.1.21
503 Conflicts:      pcmciautils < 004
504 AutoReqProv:    no
505
506 %description pcmcia
507 PCMCIA modules.
508
509 %description pcmcia -l de.UTF-8
510 PCMCIA Module.
511
512 %description pcmcia -l pl.UTF-8
513 ModuÅ‚y PCMCIA.
514
515 %package sound-alsa
516 Summary:        ALSA kernel modules
517 Summary(de.UTF-8):      ALSA Kernel Module
518 Summary(pl.UTF-8):      Sterowniki dźwiÄ™ku ALSA
519 Group:          Base/Kernel
520 Requires(postun):       %{name} = %{epoch}:%{version}-%{release}
521 Requires:       %{name} = %{epoch}:%{version}-%{release}
522 Obsoletes:      kernel-smp-sound-alsa
523 AutoReqProv:    no
524
525 %description sound-alsa
526 ALSA (Advanced Linux Sound Architecture) sound drivers.
527
528 %description sound-alsa -l de.UTF-8
529 ALSA (Advanced Linux Sound Architecture) Sound-Treiber.
530
531 %description sound-alsa -l pl.UTF-8
532 Sterowniki dźwiÄ™ku ALSA (Advanced Linux Sound Architecture).
533
534 %package headers
535 Summary:        Header files for the Linux kernel
536 Summary(de.UTF-8):      Header Dateien für den Linux-Kernel
537 Summary(pl.UTF-8):      Pliki nagłówkowe jÄ…dra Linuksa
538 Group:          Development/Building
539 Provides:       %{name}-headers(netfilter) = 20070806
540 AutoReqProv:    no
541
542 %description headers
543 These are the C header files for the Linux kernel, which define
544 structures and constants that are needed when rebuilding the kernel or
545 building kernel modules.
546
547 %description headers -l de.UTF-8
548 Dies sind die C Header Dateien für den Linux-Kernel, die definierte
549 Strukturen und Konstante beinhalten, die beim rekompilieren des
550 Kernels oder bei Kernel Modul kompilationen gebraucht werden.
551
552 %description headers -l pl.UTF-8
553 Pakiet zawiera pliki nagłówkowe jÄ…dra, niezbÄ™dne do rekompilacji jÄ…dra
554 oraz budowania modułów jÄ…dra.
555
556 %package module-build
557 Summary:        Development files for building kernel modules
558 Summary(de.UTF-8):      Development Dateien die beim Kernel Modul kompilationen gebraucht werden
559 Summary(pl.UTF-8):      Pliki sÅ‚użące do budowania modułów jÄ…dra
560 Group:          Development/Building
561 Requires:       %{name}-headers = %{epoch}:%{version}-%{release}
562 Requires:       elfutils-devel
563 Requires:       make
564 Conflicts:      rpmbuild(macros) < 1.704
565 AutoReqProv:    no
566
567 %description module-build
568 Development files from kernel source tree needed to build Linux kernel
569 modules from external packages.
570
571 %description module-build -l de.UTF-8
572 Development Dateien des Linux-Kernels die beim kompilieren externer
573 Kernel Module gebraucht werden.
574
575 %description module-build -l pl.UTF-8
576 Pliki ze drzewa ÅºródeÅ‚ jÄ…dra potrzebne do budowania modułów jÄ…dra
577 Linuksa z zewnÄ™trznych pakietów.
578
579 %package source
580 Summary:        Kernel source tree
581 Summary(de.UTF-8):      Der Kernel Quelltext
582 Summary(pl.UTF-8):      Kod ÅºródÅ‚owy jÄ…dra Linuksa
583 Group:          Development/Building
584 Requires:       %{name}-module-build = %{epoch}:%{version}-%{release}
585 AutoReqProv:    no
586 %if "%{_rpmversion}" >= "5"
587 BuildArch:      noarch
588 %endif
589
590 %description source
591 This is the source code for the Linux kernel. You can build a custom
592 kernel that is better tuned to your particular hardware.
593
594 %description source -l de.UTF-8
595 Das Kernel-Source-Paket enthält den source code (C/Assembler-Code) des
596 Linux-Kernels. Die Source-Dateien werden gebraucht, um viele
597 C-Programme zu kompilieren, da sie auf Konstanten zurückgreifen, die
598 im Kernel-Source definiert sind. Die Source-Dateien können auch
599 benutzt werden, um einen Kernel zu kompilieren, der besser auf Ihre
600 Hardware ausgerichtet ist.
601
602 %description source -l fr.UTF-8
603 Le package pour le kernel-source contient le code source pour le noyau
604 linux. Ces sources sont nécessaires pour compiler la plupart des
605 programmes C, car il dépend de constantes définies dans le code
606 source. Les sources peuvent Ãªtre aussi utilisée pour compiler un noyau
607 personnalisé pour avoir de meilleures performances sur des matériels
608 particuliers.
609
610 %description source -l pl.UTF-8
611 Pakiet zawiera kod ÅºródÅ‚owy jÄ…dra systemu.
612
613 %package doc
614 Summary:        Kernel documentation
615 Summary(de.UTF-8):      Kernel Dokumentation
616 Summary(pl.UTF-8):      Dokumentacja do jÄ…dra Linuksa
617 Group:          Documentation
618 AutoReqProv:    no
619 %if "%{_rpmversion}" >= "5"
620 BuildArch:      noarch
621 %endif
622
623 %description doc
624 This is the documentation for the Linux kernel, as found in
625 /usr/src/linux/Documentation directory.
626
627 %description doc -l de.UTF-8
628 Dies ist die Kernel Dokumentation wie sie im 'Documentation'
629 Verzeichniss vorgefunden werden kann.
630
631 %description doc -l pl.UTF-8
632 Pakiet zawiera dokumentacjÄ™ do jÄ…dra Linuksa pochodzÄ…cÄ… z katalogu
633 /usr/src/linux/Documentation.
634
635 %prep
636 %setup -qc
637 ln -s %{SOURCE7} kernel-module-build.pl
638 ln -s %{SOURCE10} Makefile
639 cd linux-%{basever}
640
641 %if "%{postver}" != ".0"
642 %patch0 -p1
643 %endif
644
645 %if %{without vanilla}
646
647 %if %{with fbcondecor}
648 %patch3 -p1
649 %endif
650 %patch6 -p1
651
652 ## netfilter
653 #
654
655 # kernel-pom-ng-IPV4OPTSSTRIP.patch
656 %patch10 -p1
657
658 # kernel-owner-xid.patch
659 %if %{with vserver}
660 %patch37 -p1
661 %endif
662
663 # kernel-layer7.patch
664 %patch40 -p1
665
666 ##
667 # end of netfilter
668
669 %if %{with imq}
670 #%patch50 -p1
671 %endif
672
673 %patch55 -p1
674 %patch56 -p1
675
676 # kernel-rndis_host-wm5.patch
677 %patch59 -p1
678
679 # hostap enhancements from/for aircrack-ng
680 %patch85 -p1
681
682 # vserver
683 %if %{with vserver}
684 %patch100 -p1
685 %patch101 -p1
686 %endif
687
688 %if %{with aufs}
689 # aufs4
690 %patch145 -p1
691 %if %{with vserver}
692 %patch146 -p1
693 %endif
694 %endif
695
696 %if %{with rescuecd}
697 %patch7000 -p1
698 %endif
699
700 %ifarch %{arm} aarch64
701 %patch8000 -p1
702 %patch8001 -p1
703 %patch8002 -p1
704 %endif
705
706 %if %{with rt}
707 %patch500 -p1
708 rm -f localversion-rt
709 %endif
710
711 %patch250 -p1
712
713 %endif # vanilla
714
715 # Small fixes:
716 %patch2000 -p1
717 %patch2001 -p1
718 #%patch2003 -p1
719
720 # Do not remove this, please!
721 #%%patch50000 -p1
722
723 chmod 755 tools/objtool/sync-check.sh
724
725 # Fix EXTRAVERSION in main Makefile
726 sed -i 's#EXTRAVERSION =.*#EXTRAVERSION = %{?alt_kernel:.%{alt_kernel}}#g' Makefile
727
728 # cleanup backups after patching
729 find '(' -name '*~' -o -name '*.orig' -o -name '.gitignore' ')' -print0 | xargs -0 -r -l512 rm -f
730
731 find -name '*.py' -print0 | \
732         xargs -0 %{__sed} -i -e '1s,/usr/bin/python$,%{__python},' \
733                              -e '1s,/usr/bin/env python$,%{__python},' \
734                              -e '1s,/usr/bin/env python3$,%{__python3},'
735
736 %{__sed} -i -e '1s,/usr/bin/python$,%{__python},' \
737             -e '1s,/usr/bin/env python$,%{__python},' \
738             -e '1s,/usr/bin/env python3$,%{__python3},' \
739         drivers/staging/greybus/tools/lbtest \
740         scripts/bloat-o-meter \
741         scripts/diffconfig \
742         scripts/jobserver-exec \
743         scripts/show_delta \
744         tools/hv/vmbus_testing \
745         tools/kvm/kvm_stat/kvm_stat \
746         tools/testing/selftests/exec/binfmt_script
747
748 find -name '*.pl' -print0 | \
749         xargs -0 %{__sed} -i -e '1s,/usr/bin/env perl,%{__perl},' \
750
751 %{__sed} -i -e '1s,/usr/bin/env perl,%{__perl},' \
752         scripts/dtc/dt_to_config \
753         scripts/cleanfile \
754         scripts/cleanpatch \
755         scripts/documentation-file-ref-check \
756         scripts/get_dvb_firmware \
757         scripts/kernel-doc \
758         scripts/stackdelta
759
760 %build
761 install -d %{objdir}
762 cat > %{targetobj}.mk <<'EOF'
763 # generated by %{name}.spec
764 KERNELSRC       := %{srcdir}
765 KERNELOUTPUT    := %{objdir}
766
767 SRCARCH         := %{target_arch_dir}
768 ARCH            := %{_target_base_arch}
769 Q               := %{!?with_verbose:@}
770 MAKE_OPTS       := %{MakeOpts}
771 DEFCONFIG       := %{defconfig}
772 EOF
773
774 RescueConfig() {
775         set -x
776                 # CONFIG_SOUND is not set
777                 # CONFIG_AUDIT is not set
778                 # CONFIG_TR is not set
779                 # CONFIG_BT is not set
780                 # CONFIG_VIDEO_DEV is not set
781                 # CONFIG_DVB_CORE is not set
782                 # CONFIG_HAMRADIO is not set
783                 # CONFIG_ARCNET is not set
784                 # CONFIG_DRM is not set
785                 # CONFIG_WATCHDOG is not set
786                 # CONFIG_INPUT_JOYSTICK is not set
787                 # CONFIG_DEBUG_KERNEL is not set
788                 # CONFIG_ISDN is not set
789                 # CONFIG_AGP is not set
790                 # CONFIG_SECURITY is not set
791                 # CONFIG_PARIDE is not set
792                 # CONFIG_CPU_FREQ is not set
793                 # CONFIG_GAMEPORT is not set
794                 # CONFIG_KVM is not set
795                 # CONFIG_PHONE is not set
796                 # CONFIG_STRICT_DEVMEM is not set
797                 # CONFIG_IMA is not set
798                 # CONFIG_MEDIA_SUPPORT is not set
799                 # CONFIG_UWB is not set
800                 # CONFIG_PWM is not set
801                 # CONFIG_COMEDI_NI_LABPC_ISA is not set
802                 # CONFIG_FB_SYS_FILLRECT is not set
803                 # CONFIG_FB_SYS_COPYAREA is not set
804                 # CONFIG_FB_SYS_IMAGEBLIT is not set
805                 # CONFIG_FB_SYS_FOPS is not set
806                 # CONFIG_FB_HECUBA is not set
807                 # CONFIG_FB_SVGALIB is not set
808                 # CONFIG_FB_CIRRUS is not set
809                 # CONFIG_FB_PM2 is not set
810                 # CONFIG_FB_CYBER2000 is not set
811                 # CONFIG_FB_ARC is not set
812                 # CONFIG_FB_ASILIANT is not set
813                 # CONFIG_FB_IMSTT is not set
814                 # CONFIG_FB_VGA16 is not set
815                 # CONFIG_FB_UVESA is not set
816                 # CONFIG_FB_N411 is not set
817                 # CONFIG_FB_HGA is not set
818                 # CONFIG_FB_S1D13XXX is not set
819                 # CONFIG_FB_NVIDIA is not set
820                 # CONFIG_FB_RIVA is not set
821                 # CONFIG_FB_I740 is not set
822                 # CONFIG_FB_LE80578 is not set
823                 # CONFIG_FB_CARILLO_RANCH is not set
824                 # CONFIG_FB_MATROX is not set
825                 # CONFIG_FB_RADEON is not set
826                 # CONFIG_FB_ATY128 is not set
827                 # CONFIG_FB_ATY is not set
828                 # CONFIG_FB_S3 is not set
829                 # CONFIG_FB_SAVAGE is not set
830                 # CONFIG_FB_SIS is not set
831                 # CONFIG_FB_VIA is not set
832                 # CONFIG_FB_NEOMAGIC is not set
833                 # CONFIG_FB_KYRO is not set
834                 # CONFIG_FB_3DFX is not set
835                 # CONFIG_FB_VOODOO1 is not set
836                 # CONFIG_FB_VT8623 is not set
837                 # CONFIG_FB_TRIDENT is not set
838                 # CONFIG_FB_ARK is not set
839                 # CONFIG_FB_PM3 is not set
840                 # CONFIG_FB_CARMINE is not set
841                 # CONFIG_FB_GEODE is not set
842                 # CONFIG_FB_TMIO is not set
843                 # CONFIG_FB_SM501 is not set
844                 # CONFIG_FB_SMSCUFX is not set
845                 # CONFIG_FB_UDL is not set
846                 # CONFIG_FB_GOLDFISH is not set
847                 # CONFIG_XEN_FBDEV_FRONTEND is not set
848                 # CONFIG_FB_METRONOME is not set
849                 # CONFIG_FB_MB862XX is not set
850                 # CONFIG_FB_BROADSHEET is not set
851                 # CONFIG_FB_AUO_K190X is not set
852                 # CONFIG_FB_AUO_K1900 is not set
853                 # CONFIG_FB_AUO_K1901 is not set
854                 # CONFIG_FB_HYPERV is not set
855                 CONFIG_AUFS=y
856                 CONFIG_AUFS_FS=y
857                 CONFIG_AUFS_BR_RAMFS=y
858                 CONFIG_AUFS_RDU=y
859                 CONFIG_BLK_DEV_LOOP=y
860                 CONFIG_ISO9660_FS=y
861                 CONFIG_NLS_UTF8=y
862                 CONFIG_SQUASHFS=y
863                 CONFIG_FB=y
864                 CONFIG_FB_EFI=y
865                 CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
866 EOCONFIG
867
868         return 0
869 }
870
871 BuildConfig() {
872         %{?debug:set -x}
873         set -e
874
875         Config="kernel-%{target_arch_dir}.config"
876         echo >&2 "Building config file for %{_target_cpu} using $Config et al."
877
878         # prepare local and important options
879         cat <<-EOCONFIG > important.config
880                 LOCALVERSION="-%{localversion}"
881
882 %if 0%{?debug:1}
883                 CONFIG_DEBUG_SLAB=y
884                 CONFIG_DEBUG_SLAB_LEAK=y
885                 CONFIG_DEBUG_PREEMPT=y
886                 CONFIG_RT_DEADLOCK_DETECT=y
887 %endif
888
889 %if %{without ipv6}
890                 CONFIG_IPV6=n
891 %endif
892
893 %ifarch i686 athlon pentium3 pentium4
894         %if %{with pae}
895                 CONFIG_HIGHMEM4G=n
896                 CONFIG_HIGHMEM64G=y
897                 CONFIG_X86_PAE=y
898                 CONFIG_NUMA=n
899         %endif
900 %endif
901
902 %if %{without pcmcia}
903                 CONFIG_PCMCIA=n
904 %endif
905
906 %if %{with fbcondecor}
907                 CONFIG_FB_S3=n
908                 CONFIG_FB_VT8623=n
909                 CONFIG_FB_ARK=n
910                 CONFIG_FB_TILEBLITTING=n
911                 CONFIG_FB_CON_DECOR=y
912 %endif
913
914 %if %{with nfsroot}
915                 CONFIG_NFS_FS=y
916                 CONFIG_ROOT_NFS=y
917 %endif
918
919 %ifarch x32
920                 CONFIG_BPF_PRELOAD=n
921 %endif
922 EOCONFIG
923
924 %if %{with rescuecd}
925         RescueConfig rescue.config
926 %endif
927         # prepare kernel-style config file from multiple config files
928         %{__awk} -v arch="all %{target_arch_dir} %{_target_base_arch} %{_target_cpu}" -f %{SOURCE6} \
929 %if %{with myown}
930                 $RPM_SOURCE_DIR/kernel-%{alt_kernel}.config \
931 %endif
932                 important.config \
933 %if %{without vanilla}
934 %if %{with rescuecd}
935                 %{SOURCE58} \
936                 rescue.config \
937 %endif
938                 \
939 %if %{with imq}
940                 %{SOURCE55} \
941 %endif
942 %if %{with vserver}
943                 %{SOURCE43} \
944 %endif
945 %if %{with rt}
946                 %{SOURCE44} \
947 %endif
948                 %{SOURCE41} %{?0:patches} \
949 %endif
950                 %{SOURCE20} \
951                 $RPM_SOURCE_DIR/$Config
952 }
953
954 cd %{objdir}
955 install -d arch/%{target_arch_dir}
956 BuildConfig > %{defconfig}
957 ln -sf %{defconfig} .config
958 cd -
959
960 %{__make} \
961         TARGETOBJ=%{targetobj} \
962         %{?with_verbose:V=1} \
963         oldconfig
964
965 %{__awk} %{?debug:-v dieOnError=1} -v infile=%{objdir}/%{defconfig} -f %{SOURCE8} %{objdir}/.config
966
967 # build kernel
968 %{__make} \
969         TARGETOBJ=%{targetobj} \
970         %{?with_verbose:V=1} \
971         all
972
973 %install
974 rm -rf $RPM_BUILD_ROOT
975 %{__make} %{MakeOpts} -j1 %{!?with_verbose:-s} modules_install \
976         -C %{objdir} \
977         %{?with_verbose:V=1} \
978         DEPMOD=%{DepMod} \
979         mod_compress_cmd=true \
980         INSTALL_MOD_PATH=$RPM_BUILD_ROOT \
981         KERNELRELEASE=%{kernel_release}
982
983 %ifarch %{arm} aarch64
984 %{__make} %{MakeOpts} %{!?with_verbose:-s} dtbs_install \
985         -C %{objdir} \
986         %{?with_verbose:V=1} \
987         INSTALL_DTBS_PATH=$RPM_BUILD_ROOT/boot/dtb-%{kernel_release}
988 %endif
989
990 install -d $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/misc
991
992 # create directories which may be missing, to simplyfy %files
993 install -d $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/kernel/{arch,sound,mm}
994
995 # rpm obeys filelinkto checks for ghosted symlinks, convert to files
996 rm -f $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/{build,source}
997 touch $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/{build,source}
998
999 # no point embed content for %ghost files. empty them
1000 for a in \
1001         dep{,.bin} \
1002         alias{,.bin} \
1003         devname \
1004         softdep \
1005         symbols{,.bin} \
1006 ; do
1007         test -f $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/modules.$a
1008         > $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/modules.$a
1009 done
1010
1011 # /boot
1012 install -d $RPM_BUILD_ROOT/boot
1013 cp -a %{objdir}/System.map $RPM_BUILD_ROOT/boot/System.map-%{kernel_release}
1014 cp -aL %{objdir}/.config $RPM_BUILD_ROOT/boot/config-%{kernel_release}
1015 %ifarch %{ix86} %{x8664} x32
1016         cp -a %{objdir}/arch/%{target_arch_dir}/boot/bzImage $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
1017         install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinux-%{kernel_release}
1018 %endif
1019 %ifarch ppc ppc64
1020         install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
1021         install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinux-%{kernel_release}
1022 %endif
1023 %ifarch ia64
1024         %{__gzip} -cfv %{objdir}/vmlinux > %{objdir}/vmlinuz
1025         cp -a %{objdir}/vmlinuz $RPM_BUILD_ROOT/boot/efi/vmlinuz-%{kernel_release}
1026         ln -sf efi/vmlinuz-%{kernel_release} $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
1027 %endif
1028 %ifarch alpha sparc sparc64
1029         %{__gzip} -cfv %{objdir}/vmlinux > %{objdir}/vmlinuz
1030         cp -a %{objdir}/vmlinuz $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
1031         install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
1032         %ifarch sparc
1033                 elftoaout %{objdir}/arch/sparc/boot/image -o %{objdir}/vmlinux.aout
1034                 install -p %{objdir}/vmlinux.aout $RPM_BUILD_ROOT/boot/vmlinux.aout-%{kernel_release}
1035         %endif
1036         %ifarch sparc64
1037                 elftoaout %{objdir}/arch/sparc64/boot/image -o %{objdir}/vmlinux.aout
1038                 install -p %{objdir}/vmlinux.aout $RPM_BUILD_ROOT/boot/vmlinux.aout-%{kernel_release}
1039         %endif
1040 %endif
1041 %ifarch %{arm}
1042         install -p %{objdir}/arch/arm/boot/zImage $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
1043 %endif
1044 %ifarch aarch64
1045         cp -a %{objdir}/arch/%{target_arch_dir}/boot/Image.gz $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
1046 %endif
1047
1048 # ghosted initrd
1049 touch $RPM_BUILD_ROOT%{initrd_dir}/initrd-%{kernel_release}.gz
1050 touch $RPM_BUILD_ROOT%{initrd_dir}/initramfs-%{kernel_release}.img
1051
1052 %if "%{_target_base_arch}" != "%{_host_base_arch}"
1053 touch $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/modules.dep
1054 %endif
1055
1056 # /etc/depmod.d /etc/modrobe.d
1057 install -d $RPM_BUILD_ROOT%{_sysconfdir}/{depmod.d,modprobe.d}/%{kernel_release}
1058
1059 install -d $RPM_BUILD_ROOT/etc/sysconfig
1060 install %{SOURCE1} $RPM_BUILD_ROOT/etc/sysconfig/kernel
1061
1062 # /usr/src/linux
1063 install -d $RPM_BUILD_ROOT%{_kernelsrcdir}
1064
1065 # test if we can hardlink -- %{_builddir} and $RPM_BUILD_ROOT on same partition
1066 if cp -al %{srcdir}/COPYING $RPM_BUILD_ROOT/COPYING 2>/dev/null; then
1067         l=l
1068         rm -f $RPM_BUILD_ROOT/COPYING
1069 fi
1070
1071 cp -a$l %{srcdir}/* $RPM_BUILD_ROOT%{_kernelsrcdir}
1072 cp -a %{objdir}/Module.symvers $RPM_BUILD_ROOT%{_kernelsrcdir}
1073 cp -aL %{objdir}/.config $RPM_BUILD_ROOT%{_kernelsrcdir}
1074 cp -a %{objdir}/include $RPM_BUILD_ROOT%{_kernelsrcdir}
1075 # copy arch/x86/include/generated
1076 for dir in $(cd %{objdir} && find arch -name generated -type d); do
1077         cp -a %{objdir}/$dir $RPM_BUILD_ROOT%{_kernelsrcdir}/$dir
1078         find $RPM_BUILD_ROOT%{_kernelsrcdir}/$dir -name '.*.cmd' -exec rm "{}" ";"
1079 done
1080
1081 %ifarch %{x8664} x32
1082 # Needed for CONFIG_STACK_VALIDATION / ORC_UNWINDER enabled builds
1083 install -d $RPM_BUILD_ROOT%{_kernelsrcdir}/tools/objtool
1084 cp -a %{objdir}/tools/objtool/fixdep $RPM_BUILD_ROOT%{_kernelsrcdir}/tools/objtool
1085 cp -a %{objdir}/tools/objtool/objtool $RPM_BUILD_ROOT%{_kernelsrcdir}/tools/objtool
1086 %endif
1087
1088 # version.h location changed in 3.7, but a lot of external modules don't know about it
1089 # add a compatibility symlink
1090 ln -s ../generated/uapi/linux/version.h $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux/version.h
1091
1092 # disable this here, causes a lot of build-time problems and our rpm-build disables it anyway
1093 %{__sed} -i -e 's|\(CONSTIFY_PLUGIN.*:=.*\)|# \1|' $RPM_BUILD_ROOT%{_kernelsrcdir}/Makefile
1094
1095 # collect module-build files and directories
1096 # Usage: kernel-module-build.pl $rpmdir $fileoutdir
1097 fileoutdir=$(pwd)
1098 cd $RPM_BUILD_ROOT%{_kernelsrcdir}
1099 %{__perl} %{topdir}/kernel-module-build.pl %{_kernelsrcdir} $fileoutdir
1100 cd -
1101
1102 for f in `find %{objdir}/scripts -type f -print | grep -v "/\.\|\.o$"` ; do
1103         ff=${f##%{objdir}/}
1104         if [ -x "$f" ]; then
1105                 echo "%attr(755,root,root) %{_kernelsrcdir}/$ff" >>files.mb_include_modulebuild_and_dirs
1106         else
1107                 echo "%{_kernelsrcdir}/$ff" >>files.mb_include_modulebuild_and_dirs
1108         fi
1109         echo "%exclude %{_kernelsrcdir}/$ff" >>files.source_exclude_modulebuild_and_dirs
1110         cp -a "$f" "$RPM_BUILD_ROOT%{_kernelsrcdir}/$ff"
1111 done
1112
1113 %if %{with doc}
1114 # move to %{_docdir} so we wouldn't depend on any kernel package for dirs
1115 install -d $RPM_BUILD_ROOT%{_docdir}
1116 mv $RPM_BUILD_ROOT{%{_kernelsrcdir}/Documentation,%{_docdir}/%{name}-%{version}}
1117
1118 %{__rm} $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/dontdiff
1119 %{__rm} $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/Makefile
1120 %{__rm} $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/*/*/Makefile
1121 %else
1122 %{__rm} -r $RPM_BUILD_ROOT%{_kernelsrcdir}/Documentation
1123 %endif
1124
1125 %clean
1126 rm -rf $RPM_BUILD_ROOT
1127
1128 %preun
1129 if [ -x /sbin/new-kernel-pkg ]; then
1130         /sbin/new-kernel-pkg --remove %{kernel_release}
1131 fi
1132
1133 %post
1134 [ -f /etc/sysconfig/kernel ] && . /etc/sysconfig/kernel
1135 if [[ "$CREATE_SYMLINKS" != [Nn][Oo] ]]; then
1136 %ifarch ia64
1137         mv -f /boot/efi/vmlinuz{,.old} 2> /dev/null
1138         ln -sf vmlinuz-%{kernel_release} /boot/efi/vmlinuz
1139 %if 0%{?alt_kernel:1}
1140         mv -f /boot/efi/vmlinuz%{_alt_kernel}{,.old} 2> /dev/null
1141         ln -sf vmlinuz-%{kernel_release} /boot/efi/vmlinuz%{_alt_kernel}
1142 %endif
1143 %endif
1144         mv -f /boot/vmlinuz{,.old} 2> /dev/null
1145         mv -f /boot/System.map{,.old} 2> /dev/null
1146         ln -sf vmlinuz-%{kernel_release} /boot/vmlinuz
1147         ln -sf System.map-%{kernel_release} /boot/System.map
1148 %if 0%{?alt_kernel:1}
1149         mv -f /boot/vmlinuz%{_alt_kernel}{,.old} 2> /dev/null
1150         mv -f /boot/System%{_alt_kernel}.map{,.old} 2> /dev/null
1151         ln -sf vmlinuz-%{kernel_release} /boot/vmlinuz%{_alt_kernel}
1152         ln -sf System.map-%{kernel_release} /boot/System.map%{_alt_kernel}
1153 %endif
1154 fi
1155
1156 %depmod %{kernel_release}
1157
1158 %if %{without vserver}
1159 %banner -e -a kernel <<EOF
1160
1161 WARNING: Vserver support is DISABLED in this kernel build!
1162
1163 EOF
1164 %endif
1165
1166 %posttrans
1167 # use posttrans to generate initrd after all dependant module packages (-drm, etc) are installed
1168 [ -f /etc/sysconfig/kernel ] && . /etc/sysconfig/kernel
1169 initrd_file=""
1170 if [[ "$USE_GENINITRD" != [Nn][Oo] ]]; then
1171         /sbin/geninitrd -f --initrdfs=initramfs %{initrd_dir}/initrd-%{kernel_release}.gz %{kernel_release} || :
1172         initrd_file="initrd-%{kernel_release}.gz"
1173 fi
1174
1175 # if dracut is present then generate full-featured initramfs
1176 if [[ "$USE_DRACUT" != [Nn][Oo] ]] && [ -x /sbin/dracut ]; then
1177         /sbin/dracut --force --quiet /boot/initramfs-%{kernel_release}.img %{kernel_release}
1178         [ -n "$initrd_file" ] || initrd_file="initramfs-%{kernel_release}.img"
1179 fi
1180
1181 if [[ "$CREATE_SYMLINKS" != [Nn][Oo] ]]; then
1182         mv -f %{initrd_dir}/initrd{,.old} 2> /dev/null
1183         if [ -n "$initrd_file" ] ; then
1184                 ln -sf "$initrd_file" %{initrd_dir}/initrd
1185         fi
1186 %if 0%{?alt_kernel:1}
1187         mv -f %{initrd_dir}/initrd%{_alt_kernel}{,.old} 2> /dev/null
1188         if [ -n "$initrd_file" ] ; then
1189                 ln -sf "$initrd_file" %{initrd_dir}/initrd%{_alt_kernel}
1190         fi
1191 %endif
1192 fi
1193
1194 # update boot loaders when old package files are gone from filesystem
1195 if [ -x /sbin/update-grub -a -f /etc/sysconfig/grub ]; then
1196         if [ "$(. /etc/sysconfig/grub; echo ${UPDATE_GRUB:-no})" = "yes" ]; then
1197                 /sbin/update-grub >/dev/null
1198         fi
1199 fi
1200 if [ -x /sbin/new-kernel-pkg ]; then
1201         /sbin/new-kernel-pkg --initrdfile=%{initrd_dir}/$initrd_file --install %{kernel_release} --banner "PLD Linux (%{pld_release})%{?alt_kernel: / %{alt_kernel}}"
1202 fi
1203 if [ -x /sbin/rc-boot ]; then
1204         /sbin/rc-boot 1>&2 || :
1205 fi
1206 if [ -x /sbin/efi-boot-update ]; then
1207         /sbin/efi-boot-update --auto || :
1208 fi
1209
1210 %post vmlinux
1211 [ -f /etc/sysconfig/kernel ] && . /etc/sysconfig/kernel
1212 if [[ "$CREATE_SYMLINKS" != [Nn][Oo] ]]; then
1213         mv -f /boot/vmlinux{,.old} 2> /dev/null
1214         ln -sf vmlinux-%{kernel_release} /boot/vmlinux
1215 %if 0%{?alt_kernel:1}
1216         mv -f /boot/vmlinux-%{alt_kernel}{,.old} 2> /dev/null
1217         ln -sf vmlinux-%{kernel_release} /boot/vmlinux-%{alt_kernel}
1218 %endif
1219 fi
1220
1221 %post drm
1222 %depmod %{kernel_release}
1223
1224 %postun drm
1225 %depmod %{kernel_release}
1226
1227 %post ide
1228 %depmod %{kernel_release}
1229
1230 %postun ide
1231 %depmod %{kernel_release}
1232
1233 %post pcmcia
1234 %depmod %{kernel_release}
1235
1236 %postun pcmcia
1237 %depmod %{kernel_release}
1238
1239 %post sound-alsa
1240 %depmod %{kernel_release}
1241
1242 %postun sound-alsa
1243 %depmod %{kernel_release}
1244
1245 %post headers
1246 ln -snf %{basename:%{_kernelsrcdir}} %{_prefix}/src/linux%{versuffix}%{_alt_kernel}
1247
1248 %postun headers
1249 if [ "$1" = "0" ]; then
1250         if [ -L %{_prefix}/src/linux%{versuffix}%{_alt_kernel} ]; then
1251                 if [ "$(readlink %{_prefix}/src/linux%{versuffix}%{_alt_kernel})" = "linux%{versuffix}%{_alt_kernel}-%{version}" ]; then
1252                         rm -f %{_prefix}/src/linux%{versuffix}%{_alt_kernel}
1253                 fi
1254         fi
1255 fi
1256
1257 %triggerin module-build -- %{name} = %{epoch}:%{version}-%{release}
1258 ln -sfn %{_kernelsrcdir} /lib/modules/%{kernel_release}/build
1259 ln -sfn %{_kernelsrcdir} /lib/modules/%{kernel_release}/source
1260
1261 %triggerun module-build -- %{name} = %{epoch}:%{version}-%{release}
1262 if [ "$1" = 0 ]; then
1263         rm -f /lib/modules/%{kernel_release}/{build,source}
1264 fi
1265
1266 %files
1267 %defattr(644,root,root,755)
1268 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/kernel
1269 %ifarch sparc sparc64
1270 /boot/vmlinux.aout-%{kernel_release}
1271 %endif
1272 %ifarch ia64
1273 /boot/efi/vmlinuz-%{kernel_release}
1274 %endif
1275 %ifarch %{arm} aarch64
1276 /boot/dtb-%{kernel_release}
1277 %endif
1278 /boot/vmlinuz-%{kernel_release}
1279 /boot/System.map-%{kernel_release}
1280 /boot/config-%{kernel_release}
1281 %ghost %{initrd_dir}/initrd-%{kernel_release}.gz
1282 %ghost %{initrd_dir}/initramfs-%{kernel_release}.img
1283
1284 %dir /lib/modules/%{kernel_release}
1285 %dir /lib/modules/%{kernel_release}/kernel
1286 /lib/modules/%{kernel_release}/kernel/arch
1287 /lib/modules/%{kernel_release}/kernel/block
1288 /lib/modules/%{kernel_release}/kernel/crypto
1289 /lib/modules/%{kernel_release}/kernel/drivers
1290 %if %{have_drm}
1291 %exclude /lib/modules/%{kernel_release}/kernel/drivers/gpu
1292 %endif
1293 %if %{have_ide}
1294 %exclude /lib/modules/%{kernel_release}/kernel/drivers/ide/*
1295 %endif
1296 /lib/modules/%{kernel_release}/kernel/fs
1297 /lib/modules/%{kernel_release}/kernel/kernel
1298 /lib/modules/%{kernel_release}/kernel/lib
1299 /lib/modules/%{kernel_release}/kernel/net
1300 /lib/modules/%{kernel_release}/kernel/mm
1301 %if %{have_sound}
1302 %dir /lib/modules/%{kernel_release}/kernel/sound
1303 /lib/modules/%{kernel_release}/kernel/sound/ac97_bus.ko*
1304 /lib/modules/%{kernel_release}/kernel/sound/sound*.ko*
1305 %ifnarch sparc
1306 %exclude /lib/modules/%{kernel_release}/kernel/drivers/media/pci/cx88/cx88-alsa.ko*
1307 %exclude /lib/modules/%{kernel_release}/kernel/drivers/media/usb/em28xx/em28xx-alsa.ko*
1308 %exclude /lib/modules/%{kernel_release}/kernel/drivers/media/pci/saa7134/saa7134-alsa.ko*
1309 %exclude /lib/modules/%{kernel_release}/kernel/drivers/usb/gadget/legacy/g_midi.ko*
1310 %endif
1311 %endif
1312 %dir /lib/modules/%{kernel_release}/misc
1313 %if %{have_pcmcia}
1314 %exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/[!p]*
1315 %exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/pd6729.ko*
1316 %exclude /lib/modules/%{kernel_release}/kernel/drivers/*/pcmcia
1317 %if %{without rescuecd}
1318 %exclude /lib/modules/%{kernel_release}/kernel/drivers/ata/pata_pcmcia.ko*
1319 %exclude /lib/modules/%{kernel_release}/kernel/drivers/bluetooth/*_cs.ko*
1320 %endif
1321 %exclude /lib/modules/%{kernel_release}/kernel/drivers/ide/ide-cs.ko*
1322 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/arcnet/com20020_cs.ko*
1323 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/can/softing/softing_cs.ko*
1324 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/ethernet/3com/3c574_cs.ko*
1325 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/ethernet/3com/3c589_cs.ko*
1326 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/ethernet/8390/axnet_cs.ko*
1327 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/ethernet/8390/pcnet_cs.ko*
1328 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/ethernet/amd/nmclan_cs.ko*
1329 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/ethernet/fujitsu/fmvj18x_cs.ko*
1330 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/ethernet/smsc/smc91c92_cs.ko*
1331 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/ethernet/xircom/xirc2ps_cs.ko*
1332 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/*_cs.ko*
1333 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/atmel/*_cs.ko*
1334 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/cisco/*_cs.ko*
1335 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/intersil/hostap/hostap_cs.ko*
1336 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/intersil/orinoco/*_cs.ko*
1337 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/marvell/libertas/*_cs.ko*
1338 %exclude /lib/modules/%{kernel_release}/kernel/drivers/parport/parport_cs.ko*
1339 %exclude /lib/modules/%{kernel_release}/kernel/drivers/tty/serial/8250/serial_cs.ko*
1340 %exclude /lib/modules/%{kernel_release}/kernel/drivers/usb/host/sl811_cs.ko*
1341 %endif
1342 %if %{with myown}
1343 /lib/modules/%{kernel_release}/kernel/sound
1344 %endif
1345 /lib/modules/%{kernel_release}/kernel/security
1346 %ifarch %{ix86} %{x8664} x32
1347 /lib/modules/%{kernel_release}/kernel/virt
1348 %endif
1349
1350 %dir %{_sysconfdir}/depmod.d/%{kernel_release}
1351 %dir %{_sysconfdir}/modprobe.d/%{kernel_release}
1352
1353 # provided by build
1354 /lib/modules/%{kernel_release}/modules.order
1355 /lib/modules/%{kernel_release}/modules.builtin*
1356
1357 # rest modules.* are ghost (regenerated by post depmod -a invocation)
1358 %ghost /lib/modules/%{kernel_release}/modules.alias
1359 %ghost /lib/modules/%{kernel_release}/modules.alias.bin
1360 %ghost /lib/modules/%{kernel_release}/modules.dep
1361 %ghost /lib/modules/%{kernel_release}/modules.dep.bin
1362 %ghost /lib/modules/%{kernel_release}/modules.devname
1363 %ghost /lib/modules/%{kernel_release}/modules.softdep
1364 %ghost /lib/modules/%{kernel_release}/modules.symbols
1365 %ghost /lib/modules/%{kernel_release}/modules.symbols.bin
1366
1367 # symlinks pointing to kernelsrcdir
1368 %ghost /lib/modules/%{kernel_release}/build
1369 %ghost /lib/modules/%{kernel_release}/source
1370
1371 %ifarch alpha %{ix86} %{x8664} x32 ppc ppc64 sparc sparc64
1372 %files vmlinux
1373 %defattr(644,root,root,755)
1374 /boot/vmlinux-%{kernel_release}
1375 %endif
1376
1377 %if %{have_drm}
1378 %files drm
1379 %defattr(644,root,root,755)
1380 /lib/modules/%{kernel_release}/kernel/drivers/gpu
1381 %endif
1382
1383 %if %{have_ide}
1384 %files ide
1385 %defattr(644,root,root,755)
1386 /lib/modules/%{kernel_release}/kernel/drivers/ide/*
1387 %if %{have_pcmcia}
1388 %exclude /lib/modules/%{kernel_release}/kernel/drivers/ide/ide-cs.ko*
1389 %endif
1390 %endif
1391
1392 %if %{have_pcmcia}
1393 %files pcmcia
1394 %defattr(644,root,root,755)
1395 /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/*ko*
1396 /lib/modules/%{kernel_release}/kernel/drivers/*/pcmcia
1397 %exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/pcmcia*ko*
1398 %if %{without rescuecd}
1399 /lib/modules/%{kernel_release}/kernel/drivers/bluetooth/*_cs.ko*
1400 /lib/modules/%{kernel_release}/kernel/drivers/ata/pata_pcmcia.ko*
1401 %endif
1402 /lib/modules/%{kernel_release}/kernel/drivers/ide/ide-cs.ko*
1403 /lib/modules/%{kernel_release}/kernel/drivers/net/arcnet/com20020_cs.ko*
1404 /lib/modules/%{kernel_release}/kernel/drivers/net/can/softing/softing_cs.ko*
1405 /lib/modules/%{kernel_release}/kernel/drivers/net/ethernet/3com/3c574_cs.ko*
1406 /lib/modules/%{kernel_release}/kernel/drivers/net/ethernet/3com/3c589_cs.ko*
1407 /lib/modules/%{kernel_release}/kernel/drivers/net/ethernet/8390/axnet_cs.ko*
1408 /lib/modules/%{kernel_release}/kernel/drivers/net/ethernet/8390/pcnet_cs.ko*
1409 /lib/modules/%{kernel_release}/kernel/drivers/net/ethernet/amd/nmclan_cs.ko*
1410 /lib/modules/%{kernel_release}/kernel/drivers/net/ethernet/fujitsu/fmvj18x_cs.ko*
1411 /lib/modules/%{kernel_release}/kernel/drivers/net/ethernet/smsc/smc91c92_cs.ko*
1412 /lib/modules/%{kernel_release}/kernel/drivers/net/ethernet/xircom/xirc2ps_cs.ko*
1413 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/*_cs.ko*
1414 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/atmel/*_cs.ko*
1415 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/cisco/*_cs.ko*
1416 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/intersil/hostap/hostap_cs.ko*
1417 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/intersil/orinoco/*_cs.ko*
1418 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/marvell/libertas/*_cs.ko*
1419 /lib/modules/%{kernel_release}/kernel/drivers/parport/parport_cs.ko*
1420 /lib/modules/%{kernel_release}/kernel/drivers/tty/serial/8250/serial_cs.ko*
1421 /lib/modules/%{kernel_release}/kernel/drivers/usb/host/sl811_cs.ko*
1422 %endif
1423
1424 %if %{have_sound}
1425 %files sound-alsa
1426 %defattr(644,root,root,755)
1427 /lib/modules/%{kernel_release}/kernel/sound
1428 %exclude %dir /lib/modules/%{kernel_release}/kernel/sound
1429 %exclude /lib/modules/%{kernel_release}/kernel/sound/ac97_bus.ko*
1430 %exclude /lib/modules/%{kernel_release}/kernel/sound/sound*.ko*
1431 %ifnarch sparc
1432 /lib/modules/%{kernel_release}/kernel/drivers/usb/gadget/legacy/g_midi.ko*
1433 /lib/modules/%{kernel_release}/kernel/drivers/media/pci/cx88/cx88-alsa.ko*
1434 /lib/modules/%{kernel_release}/kernel/drivers/media/usb/em28xx/em28xx-alsa.ko*
1435 /lib/modules/%{kernel_release}/kernel/drivers/media/pci/saa7134/saa7134-alsa.ko*
1436 %endif
1437 %endif
1438
1439 %files headers -f files.headers_exclude_kbuild
1440 %defattr(644,root,root,755)
1441 %dir %{_kernelsrcdir}
1442 %{_kernelsrcdir}/include
1443 %dir %{_kernelsrcdir}/arch
1444 %dir %{_kernelsrcdir}/arch/[!K]*
1445 %{_kernelsrcdir}/arch/*/include
1446 %dir %{_kernelsrcdir}/security
1447 %dir %{_kernelsrcdir}/security/selinux
1448 %{_kernelsrcdir}/security/selinux/include
1449 %dir %{_kernelsrcdir}/usr
1450 %dir %{_kernelsrcdir}/usr/include
1451 %{_kernelsrcdir}/.config
1452 %{_kernelsrcdir}/Module.symvers
1453
1454 %files module-build -f files.mb_include_modulebuild_and_dirs
1455 %defattr(644,root,root,755)
1456 %ifarch ppc ppc64
1457 %{_kernelsrcdir}/arch/powerpc/lib/crtsavres.*
1458 %endif
1459 %exclude %dir %{_kernelsrcdir}/arch/um
1460 %{_kernelsrcdir}/arch/*/kernel/asm-offsets*
1461 %{_kernelsrcdir}/arch/*/kernel/sigframe*.h
1462 %{_kernelsrcdir}/drivers/media/pci/bt8xx/bttv.h
1463 %{_kernelsrcdir}/kernel/bounds.c
1464 %{_kernelsrcdir}/scripts/basic/*.c
1465 %attr(755,root,root) %{_kernelsrcdir}/scripts/kconfig/*.sh
1466 %{_kernelsrcdir}/scripts/kconfig/*.pl
1467 %{_kernelsrcdir}/scripts/kconfig/*.glade
1468 %{_kernelsrcdir}/scripts/kconfig/*.cc
1469 %{_kernelsrcdir}/scripts/kconfig/*.y
1470 %{_kernelsrcdir}/scripts/kconfig/*.l
1471 %{_kernelsrcdir}/scripts/kconfig/[c-k]*.c
1472 %{_kernelsrcdir}/scripts/kconfig/[c-k]*.h
1473 %{_kernelsrcdir}/scripts/kconfig/l*.h
1474 %{_kernelsrcdir}/scripts/kconfig/[m-o]*.c
1475 %{_kernelsrcdir}/scripts/kconfig/[m-o]*.h
1476 %{_kernelsrcdir}/scripts/kconfig/preprocess.c
1477 %{_kernelsrcdir}/scripts/kconfig/[q-u]*.c
1478 %{_kernelsrcdir}/scripts/kconfig/[q-u]*.h
1479 %{_kernelsrcdir}/scripts/kconfig/lxdialog
1480 %{_kernelsrcdir}/scripts/mod/*.c
1481 %{_kernelsrcdir}/scripts/mod/modpost.h
1482 %attr(755,root,root) %{_kernelsrcdir}/scripts/mkcompile_h
1483 %{_kernelsrcdir}/scripts/mkmakefile
1484 %attr(755,root,root) %{_kernelsrcdir}/scripts/setlocalversion
1485 %{_kernelsrcdir}/scripts/subarch.include
1486 %{_kernelsrcdir}/scripts/*.c
1487 %{_kernelsrcdir}/scripts/*.h
1488 %attr(755,root,root) %{_kernelsrcdir}/scripts/*.sh
1489 %{_kernelsrcdir}/scripts/selinux/genheaders/*.c
1490 %{_kernelsrcdir}/scripts/selinux/mdp/*.c
1491 %exclude %dir %{_kernelsrcdir}/security
1492 %exclude %dir %{_kernelsrcdir}/security/selinux
1493 %ifarch %{x8664} x32
1494 %attr(755,root,root) %{_kernelsrcdir}/tools/objtool/fixdep
1495 %attr(755,root,root) %{_kernelsrcdir}/tools/objtool/objtool
1496 %endif
1497
1498 %if %{with doc}
1499 %files doc
1500 %defattr(644,root,root,755)
1501 %dir %{_docdir}/%{name}-%{version}
1502
1503 %{_docdir}/%{name}-%{version}/[!jkz]*
1504 %{_docdir}/%{name}-%{version}/kbuild
1505 %{_docdir}/%{name}-%{version}/kernel-hacking
1506 %endif
1507
1508 %if %{with source}
1509 %files source -f files.source_exclude_modulebuild_and_dirs
1510 %defattr(644,root,root,755)
1511 %{_kernelsrcdir}/arch/*/[!Mik]*
1512 %{_kernelsrcdir}/arch/*/kernel/[!M]*
1513 %{_kernelsrcdir}/arch/ia64/install.sh
1514 %{_kernelsrcdir}/arch/m68k/ifpsp060/[!M]*
1515 %{_kernelsrcdir}/arch/m68k/ifpsp060/MISC
1516 %{_kernelsrcdir}/arch/m68k/install.sh
1517 %{_kernelsrcdir}/arch/parisc/install.sh
1518 %{_kernelsrcdir}/arch/x86/ia32/[!M]*
1519 %{_kernelsrcdir}/arch/powerpc/kexec
1520 %{_kernelsrcdir}/arch/powerpc/kvm
1521 %ifarch ppc ppc64
1522 %exclude %{_kernelsrcdir}/arch/powerpc/lib/crtsavres.*
1523 %endif
1524 %{_kernelsrcdir}/arch/arm64/kvm
1525 %{_kernelsrcdir}/arch/mips/kvm
1526 %{_kernelsrcdir}/arch/s390/kvm
1527 %{_kernelsrcdir}/arch/x86/kvm
1528 %exclude %{_kernelsrcdir}/arch/*/kernel/asm-offsets*
1529 %exclude %{_kernelsrcdir}/arch/*/kernel/sigframe*.h
1530 %exclude %{_kernelsrcdir}/drivers/media/pci/bt8xx/bttv.h
1531 %{_kernelsrcdir}/block
1532 %{_kernelsrcdir}/certs
1533 %{_kernelsrcdir}/crypto
1534 %{_kernelsrcdir}/drivers
1535 %{_kernelsrcdir}/fs
1536 %{_kernelsrcdir}/init
1537 %{_kernelsrcdir}/ipc
1538 %{_kernelsrcdir}/kernel
1539 %exclude %{_kernelsrcdir}/kernel/bounds.c
1540 %{_kernelsrcdir}/lib
1541 %{_kernelsrcdir}/mm
1542 %{_kernelsrcdir}/net
1543 %{_kernelsrcdir}/virt
1544 %{_kernelsrcdir}/samples
1545 %{_kernelsrcdir}/scripts/*
1546 %exclude %{_kernelsrcdir}/scripts/Kbuild.include
1547 %exclude %{_kernelsrcdir}/scripts/Makefile*
1548 %exclude %{_kernelsrcdir}/scripts/basic
1549 %exclude %{_kernelsrcdir}/scripts/kconfig
1550 %exclude %{_kernelsrcdir}/scripts/mkcompile_h
1551 %exclude %{_kernelsrcdir}/scripts/mkmakefile
1552 %exclude %{_kernelsrcdir}/scripts/mod
1553 %exclude %{_kernelsrcdir}/scripts/setlocalversion
1554 %exclude %{_kernelsrcdir}/scripts/subarch.include
1555 %exclude %{_kernelsrcdir}/scripts/*.c
1556 %exclude %{_kernelsrcdir}/scripts/*.h
1557 %exclude %{_kernelsrcdir}/scripts/*.sh
1558 %exclude %dir %{_kernelsrcdir}/scripts/selinux
1559 %exclude %{_kernelsrcdir}/scripts/selinux/Makefile
1560 %exclude %dir %{_kernelsrcdir}/scripts/selinux/genheaders
1561 %exclude %{_kernelsrcdir}/scripts/selinux/genheaders/Makefile
1562 %exclude %{_kernelsrcdir}/scripts/selinux/genheaders/*.c
1563 %exclude %dir %{_kernelsrcdir}/scripts/selinux/mdp
1564 %exclude %{_kernelsrcdir}/scripts/selinux/mdp/Makefile
1565 %exclude %{_kernelsrcdir}/scripts/selinux/mdp/*.c
1566 %{_kernelsrcdir}/sound
1567 %{_kernelsrcdir}/security
1568 %exclude %{_kernelsrcdir}/security/selinux/include
1569 %{_kernelsrcdir}/tools/*
1570 %ifarch %{x8664} x32
1571 %exclude %{_kernelsrcdir}/tools/objtool/fixdep
1572 %exclude %{_kernelsrcdir}/tools/objtool/objtool
1573 %endif
1574 %{_kernelsrcdir}/usr
1575 %{_kernelsrcdir}/COPYING
1576 %{_kernelsrcdir}/CREDITS
1577 %{_kernelsrcdir}/MAINTAINERS
1578 %{_kernelsrcdir}/README
1579 %endif
This page took 0.207394 seconds and 4 git commands to generate.