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