2 # LATEST VERSION CHECKER:
3 # # curl -s http://www.kernel.org/kdist/finger_banner
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
10 # HOWTO update configuration files:
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
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
22 %bcond_with verbose # verbose build (V=1)
23 %bcond_with reiser4 # support for reiser4 fs (experimental)
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
29 %bcond_without imq # imq support
30 %bcond_without esfq # esfq support
31 %bcond_without ipv6 # ipv6 support
33 %bcond_without vserver # support for VServer (enabled by default)
35 %bcond_with vanilla # don't include any patches
36 %bcond_with rescuecd # build kernel for our rescue
37 %bcond_with myown # build with your own config (kernel-myown.config)
39 %{?debug:%define with_verbose 1}
47 %unglobal with_vserver
73 # __alt_kernel is list of features, empty string if none set
74 # _alt kernel is defined as: %{nil}%{?alt_kernel:-%{?alt_kernel}} (defined in rpm.macros)
75 # alt_kernel should be defined if __alt_kernel has non-empty value (for %{?alt_kernel:foo} constructs)
76 %define __alt_kernel %{nil}
78 %if "%{__alt_kernel}" != ""
79 %define alt_kernel %{__alt_kernel}
82 # these override whatever name was picked from bconds
83 %if %{with myown} && "%{_alt_kernel}" == ""
84 %define alt_kernel myown
87 %define alt_kernel rescuecd
90 %define alt_kernel vanilla
93 # kernel release (used in filesystem and eventually in uname -r)
94 # modules will be looked from /lib/modules/%{kernel_release}
95 # localversion is just that without version for "> localversion"
96 %define localversion %{rel}
97 %define kernel_release %{version}%{?alt_kernel:.%{alt_kernel}}-%{localversion}
99 Summary: The Linux kernel (the core of the Linux operating system)
100 Summary(de.UTF-8): Der Linux-Kernel (Kern des Linux-Betriebssystems)
101 Summary(et.UTF-8): Linuxi kernel (ehk operatsioonisüsteemi tuum)
102 Summary(fr.UTF-8): Le Kernel-Linux (La partie centrale du systeme)
103 Summary(pl.UTF-8): JÄ…dro Linuksa
104 Name: kernel%{_alt_kernel}
105 Version: %{basever}%{postver}
110 Source0: http://www.kernel.org/pub/linux/kernel/v3.x/linux-%{basever}.tar.xz
111 # Source0-md5: 1c738edfc54e7c65faeb90c436104e2f
112 %if "%{postver}" != ".0"
113 Patch0: http://www.kernel.org/pub/linux/kernel/v3.x/patch-%{version}.bz2
114 # Patch0-md5: 77cb3a52d24a05171006757abe4fd3fd
116 Source1: kernel.sysconfig
118 Source3: kernel-autoconf.h
119 Source4: kernel-config.h
120 Source6: kernel-config.awk
121 Source7: kernel-module-build.pl
122 Source8: kernel-track-config-change.awk
123 # not used by kernel.spec, but it's good to have it in SOURCES
124 Source9: kernel-config-sort.pl
125 Source10: kernel.make
127 Source20: kernel-multiarch.config
128 Source21: kernel-x86.config
129 Source22: kernel-sparc.config
130 Source23: kernel-alpha.config
131 Source24: kernel-powerpc.config
132 Source25: kernel-ia64.config
134 Source41: kernel-patches.config
135 Source43: kernel-vserver.config
137 Source55: kernel-imq.config
138 Source56: kernel-reiser4.config
140 Source58: kernel-inittmpfs.config
142 # http://dev.gentoo.org/~spock/projects/fbcondecor/archive/fbcondecor-0.9.4-2.6.25-rc6.patch
143 Patch3: kernel-fbcondecor.patch
144 Patch4: kernel-fbcon-margins.patch
145 Patch5: linux-wistron-amilo8210.patch
147 # netfilter related stuff mostly based on patch-o-matic-ng
148 # snapshot 20070806 with some fixes. Some modules
149 # were ported to nf_conntrack.
151 Patch10: kernel-pom-ng-IPV4OPTSSTRIP.patch
153 # http://ftp.linux-vserver.org/pub/people/dhozac/p/k/delta-owner-xid-feat02.diff
154 Patch37: kernel-owner-xid.patch
156 # based on kernel-2.6.25-layer7-2.20.patch from
157 # http://switch.dl.sourceforge.net/sourceforge/l7-filter/netfilter-layer7-v2.20.tar.gz
158 Patch40: kernel-layer7.patch
162 # http://zph.bratcheda.org/linux-2.6.26.3-zph.patch
163 Patch49: kernel-zph.patch
165 # http://www.linuximq.net/patches/patch-imqmq-3.5.diff.xz
166 Patch50: kernel-imq.patch
168 Patch51: http://downloads.sourceforge.net/reiser4/reiser4-for-3.6.4.patch.gz
169 # Patch51-md5: 4128aa3bd062d0289117dda6775a7f20
171 # http://fatooh.org/esfq-2.6/sfq-2.6.24.1.tar.bz2
172 Patch53: kernel-esfq.patch
174 # by Baggins request:
175 # derived from ftp://ftp.cmf.nrl.navy.mil/pub/chas/linux-atm/vbr/vbr-kernel-diffs
176 Patch55: kernel-atm-vbr.patch
177 Patch56: kernel-atmdd.patch
179 # http://synce.svn.sourceforge.net/svnroot/synce/trunk/patches/linux-2.6.22-rndis_host-wm5.patch
180 Patch59: kernel-rndis_host-wm5.patch
182 # adds some ids for hostap suported cards and monitor_enable from/for aircrack-ng
183 # http://patches.aircrack-ng.org/hostap-kernel-2.6.18.patch
184 Patch85: kernel-hostap.patch
186 # http://vserver.13thfloor.at/Experimental/patch-3.7.7-vs2.3.5.6.diff
187 # note there are additional patches from above url:
188 # - *fix* are real fixes (we want these)
189 # - *feat* are new features/tests (we don't want these)
190 Patch100: kernel-vserver-2.3.patch
191 Patch101: kernel-vserver-fixes.patch
193 # git clone git://kernel.opensuse.org/kernel-source.git
195 Patch110: ovl01-vfs-add-i_op-dentry_open.patch
196 Patch111: ovl02-vfs-export-do_splice_direct-to-modules.patch
197 Patch112: ovl03-vfs-introduce-clone_private_mount.patch
198 Patch113: ovl04-overlay-filesystem.patch
199 Patch114: ovl05-overlayfs-add-statfs-support.patch
200 Patch115: ovl06-overlayfs-implement-show_options.patch
201 Patch116: ovl07-overlay-overlay-filesystem-documentation.patch
202 Patch117: ovl08-fs-limit-filesystem-stacking-depth.patch
203 Patch118: ovl09-overlayfs-fix-possible-leak-in-ovl_new_inode.patch
204 Patch119: ovl10-overlayfs-create-new-inode-in-ovl_link.patch
205 Patch120: ovl11-vfs-export-__inode_permission-to-modules.patch
206 Patch121: ovl12-ovl-switch-to-__inode_permission.patch
207 Patch122: ovl13-overlayfs-copy-up-i_uid-i_gid-from-the-underlying-in.patch
209 # git://aufs.git.sourceforge.net/gitroot/aufs/aufs3-standalone.git, read README
211 # git clone git://aufs.git.sourceforge.net/gitroot/aufs/aufs3-standalone.git
212 # cd aufs3-standalone
213 # git checkout -b aufs3.8 origin/aufs3.8
214 # cat aufs3-kbuild.patch aufs3-base.patch aufs3-standalone.patch > ~/rpm/packages/kernel/kernel-aufs3.patch
216 # cp -a Documentation fs include linux
217 # diff -urN /usr/share/empty linux >> ~/rpm/packages/kernel/kernel-aufs3.patch
218 # drop hunk at the end of patch (hunk is patching include/linux/Kbuild with single line change)
220 Patch145: kernel-aufs3.patch
222 # Show normal colors in menuconfig with ncurses ABI 6
223 Patch250: kernel-fix_256colors_menuconfig.patch
225 # https://patchwork.kernel.org/patch/236261/
226 Patch400: kernel-virtio-gl-accel.patch
228 Patch2000: kernel-small_fixes.patch
229 Patch2001: kernel-pwc-uncompress.patch
230 Patch2003: kernel-regressions.patch
232 # http://git.kernel.org/?p=linux/kernel/git/jj/linux-apparmor.git;a=shortlog;h=refs/heads/v3.5-aa2.8
233 Patch5000: kernel-apparmor.patch
236 # based on ftp://ftp.leg.uct.ac.za/pub/linux/rip/tmpfs_root-2.6.30.diff.gz
237 Patch7000: kernel-inittmpfs.patch
239 # Do not remove this line, please. It is easier for me to uncomment two lines, then patch
240 # kernel.spec every time.
241 #Patch50000: kernel-usb_reset.patch
243 URL: http://www.kernel.org/
244 BuildRequires: binutils >= 3:2.18
245 %ifarch sparc sparc64
246 BuildRequires: elftoaout
249 BuildRequires: uboot-mkimage
251 BuildRequires: /sbin/depmod
252 BuildRequires: gcc >= 5:3.2
253 BuildRequires: xz >= 1:4.999.7
255 BuildRequires: hostname
257 BuildRequires: perl-base
258 BuildRequires: rpm-build >= 4.5-24
259 BuildRequires: rpmbuild(macros) >= 1.652
260 Requires(post): coreutils
261 Requires(post): geninitrd >= 10000-3
262 Requires(post): kmod >= 12-2
263 Requires: /sbin/depmod
265 Requires: geninitrd >= 10000-3
266 Requires: kmod >= 12-2
268 %ifarch i686 athlon pentium3 pentium4
269 Requires: cpuinfo(pae)
275 Suggests: linux-firmware
276 Provides: %{name}(netfilter) = 20070806
277 Provides: %{name}(vermagic) = %{kernel_release}
278 Obsoletes: kernel%{_alt_kernel}-char-lirc-ene0100
279 Obsoletes: kernel%{_alt_kernel}-char-lirc-it87
280 Obsoletes: kernel%{_alt_kernel}-char-lirc-ite8709
281 Obsoletes: kernel%{_alt_kernel}-char-lirc-mceusb
282 Obsoletes: kernel%{_alt_kernel}-char-lirc-streamzap
283 Obsoletes: kernel%{_alt_kernel}-isdn-mISDN
284 Obsoletes: kernel-firmware
285 Obsoletes: kernel-misc-acer_acpi
286 Obsoletes: kernel-misc-fuse
287 Obsoletes: kernel-misc-uvc
288 Obsoletes: kernel-modules
289 Obsoletes: kernel-net-ar81
290 Obsoletes: kernel-net-hostap
291 Obsoletes: kernel-net-ieee80211
292 Obsoletes: kernel-net-ipp2p
293 Obsoletes: kernel-net-rt61
294 Obsoletes: kernel-smp
295 Conflicts: e2fsprogs < 1.29
296 Conflicts: isdn4k-utils < 3.1pre1
297 Conflicts: jfsutils < 1.1.3
298 Conflicts: linux-firmware < 20120720
299 Conflicts: lvm2 < 2.02.40
300 Conflicts: module-init-tools < 3.16
301 Conflicts: nfs-utils < 1.0.5
302 Conflicts: oprofile < 0.9
303 Conflicts: ppp < 1:2.4.0
304 Conflicts: procps < 3.2.0
305 Conflicts: quota-tools < 3.09
306 %{?with_reiserfs4:Conflicts: reiser4progs < 1.0.0}
307 Conflicts: reiserfsprogs < 3.6.3
308 Conflicts: rpm < 4.4.2-0.2
309 Conflicts: udev < 1:081
310 Conflicts: util-linux < 2.10o
311 Conflicts: util-vserver < 0.30.216
312 Conflicts: xfsprogs < 2.6.0
313 ExclusiveArch: i486 i586 i686 pentium3 pentium4 athlon %{x8664} alpha arm ia64 ppc ppc64 sparc sparc64
315 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
317 %ifarch %{ix86} %{x8664}
318 %define target_arch_dir x86
321 %define target_arch_dir powerpc
323 %ifarch sparc sparc64
324 %define target_arch_dir sparc
326 %ifnarch %{ix86} %{x8664} ppc ppc64 sparc sparc64
327 %define target_arch_dir %{_target_base_arch}
330 %define defconfig arch/%{target_arch_dir}/defconfig
332 # No ELF objects there to strip (skips processing 27k files)
333 %define _noautostrip \\(.*%{_kernelsrcdir}/.*\\|.*/vmlinux.*\\)
334 %define _noautochrpath .*%{_kernelsrcdir}/.*
335 %define _enable_debug_packages 0
338 %define initrd_dir /boot/efi
340 %define initrd_dir /boot
343 %define topdir %{_builddir}/%{name}-%{version}
344 %define srcdir %{topdir}/linux-%{basever}
345 %define objdir %{topdir}/%{targetobj}
346 %define targetobj %{_target_base_arch}-gcc-%(%{kgcc} -dumpversion)
348 %define _kernelsrcdir /usr/src/linux%{_alt_kernel}-%{version}
350 %if "%{_target_base_arch}" != "%{_host_base_arch}"
351 %define CrossOpts ARCH=%{_target_base_arch} CROSS_COMPILE=%{_target_cpu}-pld-linux-
352 %define DepMod /bin/true
354 %if "%{_host_base_arch}" == "sparc" && "%{_target_base_arch}" == "sparc64"
355 %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
356 %define DepMod /sbin/depmod
359 %if "%{_host_base_arch}" == "sparc64" && "%{_target_base_arch}" == "sparc"
360 %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
361 %define DepMod /sbin/depmod
364 %if "%{_host_base_arch}" == "x86_64" && "%{_target_base_arch}" == "i386"
365 %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
366 %define DepMod /sbin/depmod
369 %if "%{_target_base_arch}" == "ppc" || "%{_target_base_arch}" == "ppc64"
370 %define CrossOpts ARCH=powerpc CROSS_COMPILE=%{_target_cpu}-pld-linux-
374 %define CrossOpts ARCH=powerpc CC="%{__cc}"
376 %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
378 %define DepMod /sbin/depmod
380 %define MakeOpts %{CrossOpts} HOSTCC="%{__cc}"
383 %{?with_fbcondecor:Fbsplash/fbcondecor - enabled }\
384 %{?with_nfsroot:Root on NFS - enabled}\
386 %define Features %(echo "%{__features}" | sed '/^$/d')
389 This package contains the Linux kernel that is used to boot and run
390 your system. It contains few device drivers for specific hardware.
391 Most hardware is instead supported by modules loaded after booting.
395 %description -l de.UTF-8
396 Das Kernel-Paket enthält den Linux-Kernel (vmlinuz), den Kern des
397 Linux-Betriebssystems. Der Kernel ist für grundliegende
398 Systemfunktionen verantwortlich: Speicherreservierung,
399 Prozeß-Management, Geräte Ein- und Ausgaben, usw.
403 %description -l fr.UTF-8
404 Le package kernel contient le kernel linux (vmlinuz), la partie
405 centrale d'un système d'exploitation Linux. Le noyau traite les
406 fonctions basiques d'un système d'exploitation: allocation mémoire,
407 allocation de process, entrée/sortie de peripheriques, etc.
411 %description -l pl.UTF-8
412 Pakiet zawiera jądro Linuksa niezbędne do prawidłowego działania
413 Twojego komputera. Zawiera w sobie sterowniki do sprzętu znajdującego
414 się w komputerze, takiego jak sterowniki dysków itp.
419 Summary: vmlinux - uncompressed kernel image
420 Summary(de.UTF-8): vmlinux - dekompressiertes Kernel Bild
421 Summary(pl.UTF-8): vmlinux - rozpakowany obraz jÄ…dra
423 Obsoletes: kernel-smp-vmlinux
426 vmlinux - uncompressed kernel image.
428 %description vmlinux -l de.UTF-8
429 vmlinux - dekompressiertes Kernel Bild.
431 %description vmlinux -l pl.UTF-8
432 vmlinux - rozpakowany obraz jÄ…dra.
435 Summary: DRM kernel modules
436 Summary(de.UTF-8): DRM Kernel Treiber
437 Summary(pl.UTF-8): Sterowniki DRM
439 Requires(postun): %{name} = %{epoch}:%{version}-%{release}
440 Requires: %{name} = %{epoch}:%{version}-%{release}
441 Obsoletes: kernel-smp-drm
447 %description drm -l de.UTF-8
450 %description drm -l pl.UTF-8
454 Summary: PCMCIA modules
455 Summary(de.UTF-8): PCMCIA Module
456 Summary(pl.UTF-8): Moduły PCMCIA
458 Requires(postun): %{name} = %{epoch}:%{version}-%{release}
459 Requires: %{name} = %{epoch}:%{version}-%{release}
460 Obsoletes: kernel-smp-pcmcia
461 Conflicts: pcmcia-cs < 3.1.21
462 Conflicts: pcmciautils < 004
468 %description pcmcia -l de.UTF-8
471 %description pcmcia -l pl.UTF-8
475 Summary: ALSA kernel modules
476 Summary(de.UTF-8): ALSA Kernel Module
477 Summary(pl.UTF-8): Sterowniki dźwięku ALSA
479 Requires(postun): %{name} = %{epoch}:%{version}-%{release}
480 Requires: %{name} = %{epoch}:%{version}-%{release}
481 Obsoletes: kernel-smp-sound-alsa
484 %description sound-alsa
485 ALSA (Advanced Linux Sound Architecture) sound drivers.
487 %description sound-alsa -l de.UTF-8
488 ALSA (Advanced Linux Sound Architecture) Sound-Treiber.
490 %description sound-alsa -l pl.UTF-8
491 Sterowniki dźwięku ALSA (Advanced Linux Sound Architecture).
494 Summary: OSS kernel modules
495 Summary(de.UTF-8): OSS Kernel Module
496 Summary(pl.UTF-8): Sterowniki dźwięku OSS
498 Requires(postun): %{name} = %{epoch}:%{version}-%{release}
499 Requires: %{name} = %{epoch}:%{version}-%{release}
500 Obsoletes: kernel-smp-sound-oss
503 %description sound-oss
504 OSS (Open Sound System) drivers.
506 %description sound-oss -l de.UTF-8
507 OSS (Open Sound System) Treiber.
509 %description sound-oss -l pl.UTF-8
510 Sterowniki dźwięku OSS (Open Sound System).
513 Summary: Header files for the Linux kernel
514 Summary(de.UTF-8): Header Dateien für den Linux-Kernel
515 Summary(pl.UTF-8): Pliki nagłówkowe jądra Linuksa
516 Group: Development/Building
517 Provides: %{name}-headers(netfilter) = 20070806
521 These are the C header files for the Linux kernel, which define
522 structures and constants that are needed when rebuilding the kernel or
523 building kernel modules.
525 %description headers -l de.UTF-8
526 Dies sind die C Header Dateien für den Linux-Kernel, die definierte
527 Strukturen und Konstante beinhalten, die beim rekompilieren des
528 Kernels oder bei Kernel Modul kompilationen gebraucht werden.
530 %description headers -l pl.UTF-8
531 Pakiet zawiera pliki nagłówkowe jądra, niezbędne do rekompilacji jądra
532 oraz budowania modułów jądra.
534 %package module-build
535 Summary: Development files for building kernel modules
536 Summary(de.UTF-8): Development Dateien die beim Kernel Modul kompilationen gebraucht werden
537 Summary(pl.UTF-8): Pliki służące do budowania modułów jądra
538 Group: Development/Building
539 Requires: %{name}-headers = %{epoch}:%{version}-%{release}
540 Conflicts: rpmbuild(macros) < 1.652
543 %description module-build
544 Development files from kernel source tree needed to build Linux kernel
545 modules from external packages.
547 %description module-build -l de.UTF-8
548 Development Dateien des Linux-Kernels die beim kompilieren externer
549 Kernel Module gebraucht werden.
551 %description module-build -l pl.UTF-8
552 Pliki ze drzewa źródeł jądra potrzebne do budowania modułów jądra
553 Linuksa z zewnętrznych pakietów.
556 Summary: Kernel source tree
557 Summary(de.UTF-8): Der Kernel Quelltext
558 Summary(pl.UTF-8): Kod źródłowy jądra Linuksa
559 Group: Development/Building
560 Requires: %{name}-module-build = %{epoch}:%{version}-%{release}
562 %if "%{_rpmversion}" >= "5"
567 This is the source code for the Linux kernel. You can build a custom
568 kernel that is better tuned to your particular hardware.
570 %description source -l de.UTF-8
571 Das Kernel-Source-Paket enthält den source code (C/Assembler-Code) des
572 Linux-Kernels. Die Source-Dateien werden gebraucht, um viele
573 C-Programme zu kompilieren, da sie auf Konstanten zurückgreifen, die
574 im Kernel-Source definiert sind. Die Source-Dateien können auch
575 benutzt werden, um einen Kernel zu kompilieren, der besser auf Ihre
576 Hardware ausgerichtet ist.
578 %description source -l fr.UTF-8
579 Le package pour le kernel-source contient le code source pour le noyau
580 linux. Ces sources sont nécessaires pour compiler la plupart des
581 programmes C, car il dépend de constantes définies dans le code
582 source. Les sources peuvent être aussi utilisée pour compiler un noyau
583 personnalisé pour avoir de meilleures performances sur des matériels
586 %description source -l pl.UTF-8
587 Pakiet zawiera kod źródłowy jądra systemu.
590 Summary: Kernel documentation
591 Summary(de.UTF-8): Kernel Dokumentation
592 Summary(pl.UTF-8): Dokumentacja do jÄ…dra Linuksa
595 %if "%{_rpmversion}" >= "5"
600 This is the documentation for the Linux kernel, as found in
601 /usr/src/linux/Documentation directory.
603 %description doc -l de.UTF-8
604 Dies ist die Kernel Dokumentation wie sie im 'Documentation'
605 Verzeichniss vorgefunden werden kann.
607 %description doc -l pl.UTF-8
608 Pakiet zawiera dokumentacjÄ™ do jÄ…dra Linuksa pochodzÄ…cÄ… z katalogu
609 /usr/src/linux/Documentation.
613 ln -s %{SOURCE7} kernel-module-build.pl
614 ln -s %{SOURCE10} Makefile
617 %if "%{postver}" != ".0"
621 %if %{without vanilla}
623 %if %{with fbcondecor}
632 # kernel-pom-ng-IPV4OPTSSTRIP.patch
635 # kernel-owner-xid.patch
640 # kernel-layer7.patch
666 # kernel-rndis_host-wm5.patch
669 # hostap enhancements from/for aircrack-ng
714 # Do not remove this, please!
717 # Fix EXTRAVERSION in main Makefile
718 sed -i 's#EXTRAVERSION =.*#EXTRAVERSION = %{?alt_kernel:.%{alt_kernel}}#g' Makefile
720 # cleanup backups after patching
721 find '(' -name '*~' -o -name '*.orig' -o -name '.gitignore' ')' -print0 | xargs -0 -r -l512 rm -f
725 cat > %{targetobj}.mk <<'EOF'
726 # generated by %{name}.spec
727 KERNELSRC := %{srcdir}
728 KERNELOUTPUT := %{objdir}
730 SRCARCH := %{target_arch_dir}
731 ARCH := %{_target_base_arch}
732 Q := %{!?with_verbose:@}
733 MAKE_OPTS := %{MakeOpts}
734 DEFCONFIG := %{defconfig}
740 # CONFIG_SOUND is not set
741 # CONFIG_AUDIT is not set
742 # CONFIG_TR is not set
743 # CONFIG_BT is not set
744 # CONFIG_VIDEO_DEV is not set
745 # CONFIG_DVB_CORE is not set
746 # CONFIG_HAMRADIO is not set
747 # CONFIG_ARCNET is not set
748 # CONFIG_FB is not set
749 # CONFIG_DRM is not set
750 # CONFIG_WATCHDOG is not set
751 # CONFIG_INPUT_JOYSTICK is not set
752 # CONFIG_DEBUG_KERNEL is not set
753 # CONFIG_ISDN is not set
754 # CONFIG_AGP is not set
755 # CONFIG_SECURITY is not set
756 # CONFIG_PARIDE is not set
757 # CONFIG_CPU_FREQ is not set
758 # CONFIG_GAMEPORT is not set
759 # CONFIG_KVM is not set
760 # CONFIG_PHONE is not set
761 # CONFIG_STRICT_DEVMEM is not set
762 # CONFIG_IMA is not set
763 # CONFIG_MEDIA_SUPPORT is not set
764 # CONFIG_UWB is not set
765 # CONFIG_PWM is not set
768 CONFIG_AUFS_BR_RAMFS=y
770 CONFIG_BLK_DEV_LOOP=y
783 Config="kernel-%{target_arch_dir}.config"
784 echo >&2 "Building config file for %{_target_cpu} using $Config et al."
786 # prepare local and important options
787 cat <<-EOCONFIG > important.config
788 LOCALVERSION="-%{localversion}"
792 CONFIG_DEBUG_SLAB_LEAK=y
793 CONFIG_DEBUG_PREEMPT=y
794 CONFIG_RT_DEADLOCK_DETECT=y
801 %ifarch i686 athlon pentium3 pentium4
810 %if %{without pcmcia}
814 %if %{with fbcondecor}
818 CONFIG_FB_TILEBLITTING=n
819 CONFIG_FB_CON_DECOR=y
829 RescueConfig rescue.config
831 # prepare kernel-style config file from multiple config files
832 %{__awk} -v arch="all %{target_arch_dir} %{_target_base_arch} %{_target_cpu}" -f %{SOURCE6} \
834 $RPM_SOURCE_DIR/kernel-%{alt_kernel}.config \
837 %if %{without vanilla}
852 %{SOURCE41} %{?0:patches} \
855 $RPM_SOURCE_DIR/$Config
859 install -d arch/%{target_arch_dir}
860 BuildConfig > %{defconfig}
861 ln -sf %{defconfig} .config
865 TARGETOBJ=%{targetobj} \
866 %{?with_verbose:V=1} \
869 %{__awk} %{?debug:-v dieOnError=1} -v infile=%{objdir}/%{defconfig} -f %{SOURCE8} %{objdir}/.config
873 TARGETOBJ=%{targetobj} \
874 %{?with_verbose:V=1} \
878 rm -rf $RPM_BUILD_ROOT
879 %{__make} %{MakeOpts} -j1 %{!?with_verbose:-s} modules_install firmware_install \
881 %{?with_verbose:V=1} \
883 INSTALL_MOD_PATH=$RPM_BUILD_ROOT \
884 INSTALL_FW_PATH=$RPM_BUILD_ROOT/lib/firmware/%{kernel_release} \
885 KERNELRELEASE=%{kernel_release}
887 install -d $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/misc
889 # create directories which may be missing, to simplyfy %files
890 install -d $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/kernel/{arch,sound,mm}
892 # rpm obeys filelinkto checks for ghosted symlinks, convert to files
893 rm -f $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/{build,source}
894 touch $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/{build,source}
896 # no point embed content for %ghost files. empty them
904 test -f $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/modules.$a
905 > $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/modules.$a
909 install -d $RPM_BUILD_ROOT/boot
910 cp -a %{objdir}/System.map $RPM_BUILD_ROOT/boot/System.map-%{kernel_release}
911 cp -aL %{objdir}/.config $RPM_BUILD_ROOT/boot/config-%{kernel_release}
912 %ifarch %{ix86} %{x8664}
913 cp -a %{objdir}/arch/%{target_arch_dir}/boot/bzImage $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
914 install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinux-%{kernel_release}
917 install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
918 install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinux-%{kernel_release}
921 %{__gzip} -cfv %{objdir}/vmlinux > %{objdir}/vmlinuz
922 cp -a %{objdir}/vmlinuz $RPM_BUILD_ROOT/boot/efi/vmlinuz-%{kernel_release}
923 ln -sf efi/vmlinuz-%{kernel_release} $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
925 %ifarch alpha sparc sparc64
926 %{__gzip} -cfv %{objdir}/vmlinux > %{objdir}/vmlinuz
927 cp -a %{objdir}/vmlinuz $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
928 install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
930 elftoaout %{objdir}/arch/sparc/boot/image -o %{objdir}/vmlinux.aout
931 install -p %{objdir}/vmlinux.aout $RPM_BUILD_ROOT/boot/vmlinux.aout-%{kernel_release}
934 elftoaout %{objdir}/arch/sparc64/boot/image -o %{objdir}/vmlinux.aout
935 install -p %{objdir}/vmlinux.aout $RPM_BUILD_ROOT/boot/vmlinux.aout-%{kernel_release}
939 install -p %{objdir}/arch/arm/boot/zImage $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
943 touch $RPM_BUILD_ROOT%{initrd_dir}/initrd-%{kernel_release}.gz
944 touch $RPM_BUILD_ROOT%{initrd_dir}/initramfs-%{kernel_release}.img
946 %if "%{_target_base_arch}" != "%{_host_base_arch}"
947 touch $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/modules.dep
951 install -d $RPM_BUILD_ROOT%{_sysconfdir}/modprobe.d/%{kernel_release}
953 install -d $RPM_BUILD_ROOT/etc/sysconfig
954 install %{SOURCE1} $RPM_BUILD_ROOT/etc/sysconfig/kernel
957 install -d $RPM_BUILD_ROOT%{_kernelsrcdir}
959 # test if we can hardlink -- %{_builddir} and $RPM_BUILD_ROOT on same partition
960 if cp -al %{srcdir}/COPYING $RPM_BUILD_ROOT/COPYING 2>/dev/null; then
962 rm -f $RPM_BUILD_ROOT/COPYING
965 cp -a$l %{srcdir}/* $RPM_BUILD_ROOT%{_kernelsrcdir}
966 cp -a %{objdir}/Module.symvers $RPM_BUILD_ROOT%{_kernelsrcdir}
967 cp -aL %{objdir}/.config $RPM_BUILD_ROOT%{_kernelsrcdir}
968 cp -a %{objdir}/include $RPM_BUILD_ROOT%{_kernelsrcdir}
969 # copy arch/x86/include/generated
970 for dir in $(cd %{objdir} && find arch -name generated -type d); do
971 cp -a %{objdir}/$dir $RPM_BUILD_ROOT%{_kernelsrcdir}/$dir
972 find $RPM_BUILD_ROOT%{_kernelsrcdir}/$dir -name '.*.cmd' -exec rm "{}" ";"
975 # version.h location changed in 3.7, but a lot of external modules don't know about it
976 # add a compatibility symlink
977 ln -s ../generated/uapi/linux/version.h $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux/version.h
979 # disable this here, causes a lot of build-time problems and our rpm-build disables it anyway
980 %{__sed} -i -e 's|\(CONSTIFY_PLUGIN.*:=.*\)|# \1|' $RPM_BUILD_ROOT%{_kernelsrcdir}/Makefile
982 # collect module-build files and directories
983 # Usage: kernel-module-build.pl $rpmdir $fileoutdir
985 cd $RPM_BUILD_ROOT%{_kernelsrcdir}
986 %{__perl} %{topdir}/kernel-module-build.pl %{_kernelsrcdir} $fileoutdir
989 for f in `find %{objdir}/scripts -type f -print | grep -v "/\.\|\.o$"` ; do
992 echo "%attr(755,root,root) %{_kernelsrcdir}/$ff" >>files.mb_include_modulebuild_and_dirs
994 echo "%{_kernelsrcdir}/$ff" >>files.mb_include_modulebuild_and_dirs
996 echo "%exclude %{_kernelsrcdir}/$ff" >>files.source_exclude_modulebuild_and_dirs
997 cp -a "$f" "$RPM_BUILD_ROOT%{_kernelsrcdir}/$ff"
1001 # move to %{_docdir} so we wouldn't depend on any kernel package for dirs
1002 install -d $RPM_BUILD_ROOT%{_docdir}
1003 mv $RPM_BUILD_ROOT{%{_kernelsrcdir}/Documentation,%{_docdir}/%{name}-%{version}}
1005 %{__rm} $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/dontdiff
1006 %{__rm} $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/Makefile
1007 %{__rm} $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/*/Makefile
1008 %{__rm} $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/*/*/Makefile
1010 %{__rm} -r $RPM_BUILD_ROOT%{_kernelsrcdir}/Documentation
1014 rm -rf $RPM_BUILD_ROOT
1017 if [ -x /sbin/new-kernel-pkg ]; then
1018 /sbin/new-kernel-pkg --remove %{kernel_release}
1022 [ -f /etc/sysconfig/kernel ] && . /etc/sysconfig/kernel
1023 if [[ "$CREATE_SYMLINKS" != [Nn][Oo] ]]; then
1025 mv -f /boot/efi/vmlinuz{,.old} 2> /dev/null
1026 ln -sf vmlinuz-%{kernel_release} /boot/efi/vmlinuz
1027 %if 0%{?alt_kernel:1}
1028 mv -f /boot/efi/vmlinuz%{_alt_kernel}{,.old} 2> /dev/null
1029 ln -sf vmlinuz-%{kernel_release} /boot/efi/vmlinuz%{_alt_kernel}
1032 mv -f /boot/vmlinuz{,.old} 2> /dev/null
1033 mv -f /boot/System.map{,.old} 2> /dev/null
1034 ln -sf vmlinuz-%{kernel_release} /boot/vmlinuz
1035 ln -sf System.map-%{kernel_release} /boot/System.map
1036 %if 0%{?alt_kernel:1}
1037 mv -f /boot/vmlinuz%{_alt_kernel}{,.old} 2> /dev/null
1038 mv -f /boot/System%{_alt_kernel}.map{,.old} 2> /dev/null
1039 ln -sf vmlinuz-%{kernel_release} /boot/vmlinuz%{_alt_kernel}
1040 ln -sf System.map-%{kernel_release} /boot/System.map%{_alt_kernel}
1044 %depmod %{kernel_release}
1047 [ -f /etc/sysconfig/kernel ] && . /etc/sysconfig/kernel
1048 if [[ "$USE_GENINITRD" != [Nn][Oo] ]]; then
1049 # generate initrd after all dependant modules are installed
1050 /sbin/geninitrd -f --initrdfs=initramfs %{initrd_dir}/initrd-%{kernel_release}.gz %{kernel_release}
1052 if [[ "$CREATE_SYMLINKS" != [Nn][Oo] ]]; then
1053 mv -f %{initrd_dir}/initrd{,.old} 2> /dev/null
1054 ln -sf initrd-%{kernel_release}.gz %{initrd_dir}/initrd
1055 %if 0%{?alt_kernel:1}
1056 mv -f %{initrd_dir}/initrd%{_alt_kernel}{,.old} 2> /dev/null
1057 ln -sf initrd-%{kernel_release}.gz %{initrd_dir}/initrd%{_alt_kernel}
1061 # if dracut is present then generate full-featured initramfs
1062 if [[ "$USE_DRACUT" != [Nn][Oo] ]] && [ -x /sbin/dracut ]; then
1063 /sbin/dracut --force --quiet /boot/initramfs-%{kernel_release}.img %{kernel_release}
1066 # update boot loaders when old package files are gone from filesystem
1067 if [ -x /sbin/update-grub -a -f /etc/sysconfig/grub ]; then
1068 if [ "$(. /etc/sysconfig/grub; echo ${UPDATE_GRUB:-no})" = "yes" ]; then
1069 /sbin/update-grub >/dev/null
1072 if [ -x /sbin/new-kernel-pkg ]; then
1073 /sbin/new-kernel-pkg --initrdfile=%{initrd_dir}/initrd-%{kernel_release}.gz --install %{kernel_release} --banner "PLD Linux (%{pld_release})%{?alt_kernel: / %{alt_kernel}}"
1075 if [ -x /sbin/rc-boot ]; then
1076 /sbin/rc-boot 1>&2 || :
1080 [ -f /etc/sysconfig/kernel ] && . /etc/sysconfig/kernel
1081 if [[ "$CREATE_SYMLINKS" != [Nn][Oo] ]]; then
1082 mv -f /boot/vmlinux{,.old} 2> /dev/null
1083 ln -sf vmlinux-%{kernel_release} /boot/vmlinux
1084 %if 0%{?alt_kernel:1}
1085 mv -f /boot/vmlinux-%{alt_kernel}{,.old} 2> /dev/null
1086 ln -sf vmlinux-%{kernel_release} /boot/vmlinux-%{alt_kernel}
1091 %depmod %{kernel_release}
1094 %depmod %{kernel_release}
1097 %depmod %{kernel_release}
1100 %depmod %{kernel_release}
1103 %depmod %{kernel_release}
1106 %depmod %{kernel_release}
1109 %depmod %{kernel_release}
1112 %depmod %{kernel_release}
1115 ln -snf %{basename:%{_kernelsrcdir}} %{_prefix}/src/linux%{_alt_kernel}
1118 if [ "$1" = "0" ]; then
1119 if [ -L %{_prefix}/src/linux%{_alt_kernel} ]; then
1120 if [ "$(readlink %{_prefix}/src/linux%{_alt_kernel})" = "linux%{_alt_kernel}-%{version}" ]; then
1121 rm -f %{_prefix}/src/linux%{_alt_kernel}
1126 %triggerin module-build -- %{name} = %{epoch}:%{version}-%{release}
1127 ln -sfn %{_kernelsrcdir} /lib/modules/%{kernel_release}/build
1128 ln -sfn %{_kernelsrcdir} /lib/modules/%{kernel_release}/source
1130 %triggerun module-build -- %{name} = %{epoch}:%{version}-%{release}
1131 if [ "$1" = 0 ]; then
1132 rm -f /lib/modules/%{kernel_release}/{build,source}
1136 %defattr(644,root,root,755)
1137 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/kernel
1138 %ifarch sparc sparc64
1139 /boot/vmlinux.aout-%{kernel_release}
1142 /boot/efi/vmlinuz-%{kernel_release}
1144 /boot/vmlinuz-%{kernel_release}
1145 /boot/System.map-%{kernel_release}
1146 /boot/config-%{kernel_release}
1147 %ghost %{initrd_dir}/initrd-%{kernel_release}.gz
1148 %ghost %{initrd_dir}/initramfs-%{kernel_release}.img
1149 /lib/firmware/%{kernel_release}
1151 %dir /lib/modules/%{kernel_release}
1152 %dir /lib/modules/%{kernel_release}/kernel
1153 /lib/modules/%{kernel_release}/kernel/arch
1154 /lib/modules/%{kernel_release}/kernel/crypto
1155 /lib/modules/%{kernel_release}/kernel/drivers
1157 %exclude /lib/modules/%{kernel_release}/kernel/drivers/gpu
1159 /lib/modules/%{kernel_release}/kernel/fs
1160 /lib/modules/%{kernel_release}/kernel/kernel
1161 /lib/modules/%{kernel_release}/kernel/lib
1162 /lib/modules/%{kernel_release}/kernel/net
1163 /lib/modules/%{kernel_release}/kernel/mm
1165 %dir /lib/modules/%{kernel_release}/kernel/sound
1166 /lib/modules/%{kernel_release}/kernel/sound/ac97_bus.ko*
1167 /lib/modules/%{kernel_release}/kernel/sound/sound*.ko*
1169 %exclude /lib/modules/%{kernel_release}/kernel/drivers/media/pci/cx88/cx88-alsa.ko*
1170 %exclude /lib/modules/%{kernel_release}/kernel/drivers/media/usb/em28xx/em28xx-alsa.ko*
1171 %exclude /lib/modules/%{kernel_release}/kernel/drivers/media/pci/saa7134/saa7134-alsa.ko*
1174 %dir /lib/modules/%{kernel_release}/misc
1176 %exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/[!p]*
1177 %exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/pd6729.ko*
1178 %exclude /lib/modules/%{kernel_release}/kernel/drivers/*/pcmcia
1179 %if %{without rescuecd}
1180 %exclude /lib/modules/%{kernel_release}/kernel/drivers/ata/pata_pcmcia.ko*
1181 %exclude /lib/modules/%{kernel_release}/kernel/drivers/bluetooth/*_cs.ko*
1182 %exclude /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
1183 %exclude /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/b1pcmcia.ko*
1184 %exclude /lib/modules/%{kernel_release}/kernel/drivers/usb/gadget/g_midi.ko*
1186 %exclude /lib/modules/%{kernel_release}/kernel/drivers/ide/ide-cs.ko*
1187 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/*_cs.ko*
1188 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/b43
1189 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/hostap/hostap_cs.ko*
1190 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/libertas/*_cs.ko*
1191 %exclude /lib/modules/%{kernel_release}/kernel/drivers/parport/parport_cs.ko*
1192 %exclude /lib/modules/%{kernel_release}/kernel/drivers/tty/serial/8250/serial_cs.ko*
1193 %exclude /lib/modules/%{kernel_release}/kernel/drivers/usb/host/sl811_cs.ko*
1196 /lib/modules/%{kernel_release}/kernel/sound
1198 /lib/modules/%{kernel_release}/kernel/security
1200 %dir %{_sysconfdir}/modprobe.d/%{kernel_release}
1203 /lib/modules/%{kernel_release}/modules.order
1204 /lib/modules/%{kernel_release}/modules.builtin*
1206 # rest modules.* are ghost (regenerated by post depmod -a invocation)
1207 %ghost /lib/modules/%{kernel_release}/modules.alias
1208 %ghost /lib/modules/%{kernel_release}/modules.alias.bin
1209 %ghost /lib/modules/%{kernel_release}/modules.dep
1210 %ghost /lib/modules/%{kernel_release}/modules.dep.bin
1211 %ghost /lib/modules/%{kernel_release}/modules.devname
1212 %ghost /lib/modules/%{kernel_release}/modules.softdep
1213 %ghost /lib/modules/%{kernel_release}/modules.symbols
1214 %ghost /lib/modules/%{kernel_release}/modules.symbols.bin
1216 # symlinks pointing to kernelsrcdir
1217 %ghost /lib/modules/%{kernel_release}/build
1218 %ghost /lib/modules/%{kernel_release}/source
1220 %ifarch alpha %{ix86} %{x8664} ppc ppc64 sparc sparc64
1222 %defattr(644,root,root,755)
1223 /boot/vmlinux-%{kernel_release}
1228 %defattr(644,root,root,755)
1229 /lib/modules/%{kernel_release}/kernel/drivers/gpu
1234 %defattr(644,root,root,755)
1235 /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/*ko*
1236 /lib/modules/%{kernel_release}/kernel/drivers/*/pcmcia
1237 %exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/pcmcia*ko*
1238 %if %{without rescuecd}
1239 /lib/modules/%{kernel_release}/kernel/drivers/bluetooth/*_cs.ko*
1240 /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
1241 /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/b1pcmcia.ko*
1242 /lib/modules/%{kernel_release}/kernel/drivers/ata/pata_pcmcia.ko*
1244 /lib/modules/%{kernel_release}/kernel/drivers/ide/ide-cs.ko*
1245 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/*_cs.ko*
1246 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/b43
1247 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/hostap/hostap_cs.ko*
1248 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/libertas/*_cs.ko*
1249 /lib/modules/%{kernel_release}/kernel/drivers/parport/parport_cs.ko*
1250 /lib/modules/%{kernel_release}/kernel/drivers/tty/serial/8250/serial_cs.ko*
1251 /lib/modules/%{kernel_release}/kernel/drivers/usb/host/sl811_cs.ko*
1256 %defattr(644,root,root,755)
1257 /lib/modules/%{kernel_release}/kernel/sound
1258 %exclude %dir /lib/modules/%{kernel_release}/kernel/sound
1259 %exclude /lib/modules/%{kernel_release}/kernel/sound/ac97_bus.ko*
1260 %exclude /lib/modules/%{kernel_release}/kernel/sound/sound*.ko*
1262 %exclude /lib/modules/%{kernel_release}/kernel/sound/oss
1265 /lib/modules/%{kernel_release}/kernel/drivers/usb/gadget/g_midi.ko*
1266 /lib/modules/%{kernel_release}/kernel/drivers/media/pci/cx88/cx88-alsa.ko*
1267 /lib/modules/%{kernel_release}/kernel/drivers/media/usb/em28xx/em28xx-alsa.ko*
1268 /lib/modules/%{kernel_release}/kernel/drivers/media/pci/saa7134/saa7134-alsa.ko*
1273 %defattr(644,root,root,755)
1274 /lib/modules/%{kernel_release}/kernel/sound/oss
1278 %files headers -f files.headers_exclude_kbuild
1279 %defattr(644,root,root,755)
1280 %dir %{_kernelsrcdir}
1281 %{_kernelsrcdir}/include
1282 %dir %{_kernelsrcdir}/arch
1283 %dir %{_kernelsrcdir}/arch/[!K]*
1284 %{_kernelsrcdir}/arch/*/include
1285 %dir %{_kernelsrcdir}/security
1286 %dir %{_kernelsrcdir}/security/selinux
1287 %{_kernelsrcdir}/security/selinux/include
1288 %{_kernelsrcdir}/.config
1289 %{_kernelsrcdir}/Module.symvers
1291 %files module-build -f files.mb_include_modulebuild_and_dirs
1292 %defattr(644,root,root,755)
1294 %{_kernelsrcdir}/arch/powerpc/lib/crtsavres.*
1296 %exclude %dir %{_kernelsrcdir}/arch/um
1297 %{_kernelsrcdir}/arch/*/kernel/asm-offsets*
1298 %{_kernelsrcdir}/arch/*/kernel/sigframe*.h
1299 %{_kernelsrcdir}/drivers/lguest/lg.h
1300 %{_kernelsrcdir}/drivers/media/pci/bt8xx/bttv.h
1301 %{_kernelsrcdir}/kernel/bounds.c
1302 %{_kernelsrcdir}/scripts/basic/*.c
1303 %attr(755,root,root) %{_kernelsrcdir}/scripts/kconfig/*.sh
1304 %{_kernelsrcdir}/scripts/kconfig/*.in
1305 %{_kernelsrcdir}/scripts/kconfig/*_shipped
1306 %{_kernelsrcdir}/scripts/kconfig/*.pl
1307 %{_kernelsrcdir}/scripts/kconfig/*.glade
1308 %{_kernelsrcdir}/scripts/kconfig/*.gperf
1309 %{_kernelsrcdir}/scripts/kconfig/*.cc
1310 %{_kernelsrcdir}/scripts/kconfig/*.y
1311 %{_kernelsrcdir}/scripts/kconfig/*.l
1312 %{_kernelsrcdir}/scripts/kconfig/[c-k]*.c
1313 %{_kernelsrcdir}/scripts/kconfig/[c-k]*.h
1314 %{_kernelsrcdir}/scripts/kconfig/l*.h
1315 %{_kernelsrcdir}/scripts/kconfig/[m-u]*.c
1316 %{_kernelsrcdir}/scripts/kconfig/[m-u]*.h
1317 %{_kernelsrcdir}/scripts/kconfig/lxdialog
1318 %{_kernelsrcdir}/scripts/mod/*.c
1319 %{_kernelsrcdir}/scripts/mod/[^e]*.h
1320 %attr(755,root,root) %{_kernelsrcdir}/scripts/mkcompile_h
1321 %{_kernelsrcdir}/scripts/mkmakefile
1322 %{_kernelsrcdir}/scripts/module-common.lds
1323 %attr(755,root,root) %{_kernelsrcdir}/scripts/setlocalversion
1324 %{_kernelsrcdir}/scripts/*.c
1325 %attr(755,root,root) %{_kernelsrcdir}/scripts/*.sh
1326 %{_kernelsrcdir}/scripts/selinux/genheaders/*.c
1327 %{_kernelsrcdir}/scripts/selinux/mdp/*.c
1328 %exclude %dir %{_kernelsrcdir}/security
1329 %exclude %dir %{_kernelsrcdir}/security/selinux
1333 %defattr(644,root,root,755)
1334 %dir %{_docdir}/%{name}-%{version}
1336 %{_docdir}/%{name}-%{version}/[!jkz]*
1337 %{_docdir}/%{name}-%{version}/[jkz]*.txt
1338 %{_docdir}/%{name}-%{version}/kbuild
1339 %{_docdir}/%{name}-%{version}/kdump
1340 %lang(ja) %{_docdir}/%{name}-%{version}/ja_JP
1341 %lang(ko) %{_docdir}/%{name}-%{version}/ko_KR
1342 %lang(zh_CN) %{_docdir}/%{name}-%{version}/zh_CN
1346 %files source -f files.source_exclude_modulebuild_and_dirs
1347 %defattr(644,root,root,755)
1348 %{_kernelsrcdir}/arch/*/[!Mik]*
1349 %{_kernelsrcdir}/arch/*/kernel/[!M]*
1350 %{_kernelsrcdir}/arch/ia64/install.sh
1351 %{_kernelsrcdir}/arch/m68k/ifpsp060/[!M]*
1352 %{_kernelsrcdir}/arch/m68k/ifpsp060/MISC
1353 %{_kernelsrcdir}/arch/m68k/install.sh
1354 %{_kernelsrcdir}/arch/parisc/install.sh
1355 %{_kernelsrcdir}/arch/x86/ia32/[!M]*
1356 %{_kernelsrcdir}/arch/ia64/kvm
1357 %{_kernelsrcdir}/arch/powerpc/kvm
1359 %exclude %{_kernelsrcdir}/arch/powerpc/lib/crtsavres.*
1361 %{_kernelsrcdir}/arch/s390/kvm
1362 %{_kernelsrcdir}/arch/x86/kvm
1363 %exclude %{_kernelsrcdir}/arch/*/kernel/asm-offsets*
1364 %exclude %{_kernelsrcdir}/arch/*/kernel/sigframe*.h
1365 %exclude %{_kernelsrcdir}/drivers/lguest/lg.h
1366 %exclude %{_kernelsrcdir}/drivers/media/pci/bt8xx/bttv.h
1367 %{_kernelsrcdir}/block
1368 %{_kernelsrcdir}/crypto
1369 %{_kernelsrcdir}/drivers
1370 %{_kernelsrcdir}/firmware
1372 %{_kernelsrcdir}/init
1373 %{_kernelsrcdir}/ipc
1374 %{_kernelsrcdir}/kernel
1375 %exclude %{_kernelsrcdir}/kernel/bounds.c
1376 %{_kernelsrcdir}/lib
1378 %{_kernelsrcdir}/net
1379 %{_kernelsrcdir}/virt
1380 %{_kernelsrcdir}/samples
1381 %{_kernelsrcdir}/scripts/*
1382 %exclude %{_kernelsrcdir}/scripts/Kbuild.include
1383 %exclude %{_kernelsrcdir}/scripts/Makefile*
1384 %exclude %{_kernelsrcdir}/scripts/basic
1385 %exclude %{_kernelsrcdir}/scripts/kconfig
1386 %exclude %{_kernelsrcdir}/scripts/mkcompile_h
1387 %exclude %{_kernelsrcdir}/scripts/mkmakefile
1388 %exclude %{_kernelsrcdir}/scripts/mod
1389 %exclude %{_kernelsrcdir}/scripts/module-common.lds
1390 %exclude %{_kernelsrcdir}/scripts/setlocalversion
1391 %exclude %{_kernelsrcdir}/scripts/*.c
1392 %exclude %{_kernelsrcdir}/scripts/*.sh
1393 %exclude %dir %{_kernelsrcdir}/scripts/selinux
1394 %exclude %{_kernelsrcdir}/scripts/selinux/Makefile
1395 %exclude %dir %{_kernelsrcdir}/scripts/selinux/genheaders
1396 %exclude %{_kernelsrcdir}/scripts/selinux/genheaders/Makefile
1397 %exclude %{_kernelsrcdir}/scripts/selinux/genheaders/*.c
1398 %exclude %dir %{_kernelsrcdir}/scripts/selinux/mdp
1399 %exclude %{_kernelsrcdir}/scripts/selinux/mdp/Makefile
1400 %exclude %{_kernelsrcdir}/scripts/selinux/mdp/*.c
1401 %{_kernelsrcdir}/sound
1402 %{_kernelsrcdir}/security
1403 %exclude %{_kernelsrcdir}/security/selinux/include
1404 %{_kernelsrcdir}/tools/*
1405 %{_kernelsrcdir}/usr
1406 %{_kernelsrcdir}/COPYING
1407 %{_kernelsrcdir}/CREDITS
1408 %{_kernelsrcdir}/MAINTAINERS
1409 %{_kernelsrcdir}/README
1410 %{_kernelsrcdir}/REPORTING-BUGS