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: 477a910b5956ca67c857c2e69d550410
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 %ifarch %{ix86} %{x8664}
912 cp -a %{objdir}/arch/%{target_arch_dir}/boot/bzImage $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
913 install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinux-%{kernel_release}
916 install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
917 install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinux-%{kernel_release}
920 %{__gzip} -cfv %{objdir}/vmlinux > %{objdir}/vmlinuz
921 cp -a %{objdir}/vmlinuz $RPM_BUILD_ROOT/boot/efi/vmlinuz-%{kernel_release}
922 ln -sf efi/vmlinuz-%{kernel_release} $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
924 %ifarch alpha sparc sparc64
925 %{__gzip} -cfv %{objdir}/vmlinux > %{objdir}/vmlinuz
926 cp -a %{objdir}/vmlinuz $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
927 install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
929 elftoaout %{objdir}/arch/sparc/boot/image -o %{objdir}/vmlinux.aout
930 install -p %{objdir}/vmlinux.aout $RPM_BUILD_ROOT/boot/vmlinux.aout-%{kernel_release}
933 elftoaout %{objdir}/arch/sparc64/boot/image -o %{objdir}/vmlinux.aout
934 install -p %{objdir}/vmlinux.aout $RPM_BUILD_ROOT/boot/vmlinux.aout-%{kernel_release}
938 install -p %{objdir}/arch/arm/boot/zImage $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
942 touch $RPM_BUILD_ROOT%{initrd_dir}/initrd-%{kernel_release}.gz
943 touch $RPM_BUILD_ROOT%{initrd_dir}/initramfs-%{kernel_release}.img
945 %if "%{_target_base_arch}" != "%{_host_base_arch}"
946 touch $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/modules.dep
950 install -d $RPM_BUILD_ROOT%{_sysconfdir}/modprobe.d/%{kernel_release}
952 install -d $RPM_BUILD_ROOT/etc/sysconfig
953 install %{SOURCE1} $RPM_BUILD_ROOT/etc/sysconfig/kernel
956 install -d $RPM_BUILD_ROOT%{_kernelsrcdir}
958 # test if we can hardlink -- %{_builddir} and $RPM_BUILD_ROOT on same partition
959 if cp -al %{srcdir}/COPYING $RPM_BUILD_ROOT/COPYING 2>/dev/null; then
961 rm -f $RPM_BUILD_ROOT/COPYING
964 cp -a$l %{srcdir}/* $RPM_BUILD_ROOT%{_kernelsrcdir}
965 cp -a %{objdir}/Module.symvers $RPM_BUILD_ROOT%{_kernelsrcdir}
966 cp -aL %{objdir}/.config $RPM_BUILD_ROOT%{_kernelsrcdir}
967 cp -a %{objdir}/include $RPM_BUILD_ROOT%{_kernelsrcdir}
968 # copy arch/x86/include/generated
969 for dir in $(cd %{objdir} && find arch -name generated -type d); do
970 cp -a %{objdir}/$dir $RPM_BUILD_ROOT%{_kernelsrcdir}/$dir
971 find $RPM_BUILD_ROOT%{_kernelsrcdir}/$dir -name '.*.cmd' -exec rm "{}" ";"
974 # version.h location changed in 3.7, but a lot of external modules don't know about it
975 # add a compatibility symlink
976 ln -s ../generated/uapi/linux/version.h $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux/version.h
978 # disable this here, causes a lot of build-time problems and our rpm-build disables it anyway
979 %{__sed} -i -e 's|\(CONSTIFY_PLUGIN.*:=.*\)|# \1|' $RPM_BUILD_ROOT%{_kernelsrcdir}/Makefile
981 # collect module-build files and directories
982 # Usage: kernel-module-build.pl $rpmdir $fileoutdir
984 cd $RPM_BUILD_ROOT%{_kernelsrcdir}
985 %{__perl} %{topdir}/kernel-module-build.pl %{_kernelsrcdir} $fileoutdir
988 for f in `find %{objdir}/scripts -type f -print | grep -v "/\.\|\.o$"` ; do
991 echo "%attr(755,root,root) %{_kernelsrcdir}/$ff" >>files.mb_include_modulebuild_and_dirs
993 echo "%{_kernelsrcdir}/$ff" >>files.mb_include_modulebuild_and_dirs
995 echo "%exclude %{_kernelsrcdir}/$ff" >>files.source_exclude_modulebuild_and_dirs
996 cp -a "$f" "$RPM_BUILD_ROOT%{_kernelsrcdir}/$ff"
1000 # move to %{_docdir} so we wouldn't depend on any kernel package for dirs
1001 install -d $RPM_BUILD_ROOT%{_docdir}
1002 mv $RPM_BUILD_ROOT{%{_kernelsrcdir}/Documentation,%{_docdir}/%{name}-%{version}}
1004 %{__rm} $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/dontdiff
1005 %{__rm} $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/Makefile
1006 %{__rm} $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/*/Makefile
1007 %{__rm} $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/*/*/Makefile
1009 %{__rm} -r $RPM_BUILD_ROOT%{_kernelsrcdir}/Documentation
1013 rm -rf $RPM_BUILD_ROOT
1016 if [ -x /sbin/new-kernel-pkg ]; then
1017 /sbin/new-kernel-pkg --remove %{kernel_release}
1021 [ -f /etc/sysconfig/kernel ] && . /etc/sysconfig/kernel
1022 if [[ "$CREATE_SYMLINKS" != [Nn][Oo] ]]; then
1024 mv -f /boot/efi/vmlinuz{,.old} 2> /dev/null
1025 ln -sf vmlinuz-%{kernel_release} /boot/efi/vmlinuz
1026 %if 0%{?alt_kernel:1}
1027 mv -f /boot/efi/vmlinuz%{_alt_kernel}{,.old} 2> /dev/null
1028 ln -sf vmlinuz-%{kernel_release} /boot/efi/vmlinuz%{_alt_kernel}
1031 mv -f /boot/vmlinuz{,.old} 2> /dev/null
1032 mv -f /boot/System.map{,.old} 2> /dev/null
1033 ln -sf vmlinuz-%{kernel_release} /boot/vmlinuz
1034 ln -sf System.map-%{kernel_release} /boot/System.map
1035 %if 0%{?alt_kernel:1}
1036 mv -f /boot/vmlinuz%{_alt_kernel}{,.old} 2> /dev/null
1037 mv -f /boot/System%{_alt_kernel}.map{,.old} 2> /dev/null
1038 ln -sf vmlinuz-%{kernel_release} /boot/vmlinuz%{_alt_kernel}
1039 ln -sf System.map-%{kernel_release} /boot/System.map%{_alt_kernel}
1043 %depmod %{kernel_release}
1046 [ -f /etc/sysconfig/kernel ] && . /etc/sysconfig/kernel
1047 if [[ "$USE_GENINITRD" != [Nn][Oo] ]]; then
1048 # generate initrd after all dependant modules are installed
1049 /sbin/geninitrd -f --initrdfs=initramfs %{initrd_dir}/initrd-%{kernel_release}.gz %{kernel_release}
1051 if [[ "$CREATE_SYMLINKS" != [Nn][Oo] ]]; then
1052 mv -f %{initrd_dir}/initrd{,.old} 2> /dev/null
1053 ln -sf initrd-%{kernel_release}.gz %{initrd_dir}/initrd
1054 %if 0%{?alt_kernel:1}
1055 mv -f %{initrd_dir}/initrd%{_alt_kernel}{,.old} 2> /dev/null
1056 ln -sf initrd-%{kernel_release}.gz %{initrd_dir}/initrd%{_alt_kernel}
1060 # if dracut is present then generate full-featured initramfs
1061 if [[ "$USE_DRACUT" != [Nn][Oo] ]] && [ -x /sbin/dracut ]; then
1062 /sbin/dracut --force --quiet /boot/initramfs-%{kernel_release}.img %{kernel_release}
1065 # update boot loaders when old package files are gone from filesystem
1066 if [ -x /sbin/update-grub -a -f /etc/sysconfig/grub ]; then
1067 if [ "$(. /etc/sysconfig/grub; echo ${UPDATE_GRUB:-no})" = "yes" ]; then
1068 /sbin/update-grub >/dev/null
1071 if [ -x /sbin/new-kernel-pkg ]; then
1072 /sbin/new-kernel-pkg --initrdfile=%{initrd_dir}/initrd-%{kernel_release}.gz --install %{kernel_release} --banner "PLD Linux (%{pld_release})%{?alt_kernel: / %{alt_kernel}}"
1074 if [ -x /sbin/rc-boot ]; then
1075 /sbin/rc-boot 1>&2 || :
1079 [ -f /etc/sysconfig/kernel ] && . /etc/sysconfig/kernel
1080 if [[ "$CREATE_SYMLINKS" != [Nn][Oo] ]]; then
1081 mv -f /boot/vmlinux{,.old} 2> /dev/null
1082 ln -sf vmlinux-%{kernel_release} /boot/vmlinux
1083 %if 0%{?alt_kernel:1}
1084 mv -f /boot/vmlinux-%{alt_kernel}{,.old} 2> /dev/null
1085 ln -sf vmlinux-%{kernel_release} /boot/vmlinux-%{alt_kernel}
1090 %depmod %{kernel_release}
1093 %depmod %{kernel_release}
1096 %depmod %{kernel_release}
1099 %depmod %{kernel_release}
1102 %depmod %{kernel_release}
1105 %depmod %{kernel_release}
1108 %depmod %{kernel_release}
1111 %depmod %{kernel_release}
1114 ln -snf %{basename:%{_kernelsrcdir}} %{_prefix}/src/linux%{_alt_kernel}
1117 if [ "$1" = "0" ]; then
1118 if [ -L %{_prefix}/src/linux%{_alt_kernel} ]; then
1119 if [ "$(readlink %{_prefix}/src/linux%{_alt_kernel})" = "linux%{_alt_kernel}-%{version}" ]; then
1120 rm -f %{_prefix}/src/linux%{_alt_kernel}
1125 %triggerin module-build -- %{name} = %{epoch}:%{version}-%{release}
1126 ln -sfn %{_kernelsrcdir} /lib/modules/%{kernel_release}/build
1127 ln -sfn %{_kernelsrcdir} /lib/modules/%{kernel_release}/source
1129 %triggerun module-build -- %{name} = %{epoch}:%{version}-%{release}
1130 if [ "$1" = 0 ]; then
1131 rm -f /lib/modules/%{kernel_release}/{build,source}
1135 %defattr(644,root,root,755)
1136 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/kernel
1137 %ifarch sparc sparc64
1138 /boot/vmlinux.aout-%{kernel_release}
1141 /boot/efi/vmlinuz-%{kernel_release}
1143 /boot/vmlinuz-%{kernel_release}
1144 /boot/System.map-%{kernel_release}
1145 %ghost %{initrd_dir}/initrd-%{kernel_release}.gz
1146 %ghost %{initrd_dir}/initramfs-%{kernel_release}.img
1147 /lib/firmware/%{kernel_release}
1149 %dir /lib/modules/%{kernel_release}
1150 %dir /lib/modules/%{kernel_release}/kernel
1151 /lib/modules/%{kernel_release}/kernel/arch
1152 /lib/modules/%{kernel_release}/kernel/crypto
1153 /lib/modules/%{kernel_release}/kernel/drivers
1155 %exclude /lib/modules/%{kernel_release}/kernel/drivers/gpu
1157 /lib/modules/%{kernel_release}/kernel/fs
1158 /lib/modules/%{kernel_release}/kernel/kernel
1159 /lib/modules/%{kernel_release}/kernel/lib
1160 /lib/modules/%{kernel_release}/kernel/net
1161 /lib/modules/%{kernel_release}/kernel/mm
1163 %dir /lib/modules/%{kernel_release}/kernel/sound
1164 /lib/modules/%{kernel_release}/kernel/sound/ac97_bus.ko*
1165 /lib/modules/%{kernel_release}/kernel/sound/sound*.ko*
1167 %exclude /lib/modules/%{kernel_release}/kernel/drivers/media/pci/cx88/cx88-alsa.ko*
1168 %exclude /lib/modules/%{kernel_release}/kernel/drivers/media/usb/em28xx/em28xx-alsa.ko*
1169 %exclude /lib/modules/%{kernel_release}/kernel/drivers/media/pci/saa7134/saa7134-alsa.ko*
1172 %dir /lib/modules/%{kernel_release}/misc
1174 %exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/[!p]*
1175 %exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/pd6729.ko*
1176 %exclude /lib/modules/%{kernel_release}/kernel/drivers/*/pcmcia
1177 %if %{without rescuecd}
1178 %exclude /lib/modules/%{kernel_release}/kernel/drivers/ata/pata_pcmcia.ko*
1179 %exclude /lib/modules/%{kernel_release}/kernel/drivers/bluetooth/*_cs.ko*
1180 %exclude /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
1181 %exclude /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/b1pcmcia.ko*
1182 %exclude /lib/modules/%{kernel_release}/kernel/drivers/usb/gadget/g_midi.ko*
1184 %exclude /lib/modules/%{kernel_release}/kernel/drivers/ide/ide-cs.ko*
1185 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/*_cs.ko*
1186 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/b43
1187 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/hostap/hostap_cs.ko*
1188 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/libertas/*_cs.ko*
1189 %exclude /lib/modules/%{kernel_release}/kernel/drivers/parport/parport_cs.ko*
1190 %exclude /lib/modules/%{kernel_release}/kernel/drivers/tty/serial/8250/serial_cs.ko*
1191 %exclude /lib/modules/%{kernel_release}/kernel/drivers/usb/host/sl811_cs.ko*
1194 /lib/modules/%{kernel_release}/kernel/sound
1196 /lib/modules/%{kernel_release}/kernel/security
1198 %dir %{_sysconfdir}/modprobe.d/%{kernel_release}
1201 /lib/modules/%{kernel_release}/modules.order
1202 /lib/modules/%{kernel_release}/modules.builtin*
1204 # rest modules.* are ghost (regenerated by post depmod -a invocation)
1205 %ghost /lib/modules/%{kernel_release}/modules.alias
1206 %ghost /lib/modules/%{kernel_release}/modules.alias.bin
1207 %ghost /lib/modules/%{kernel_release}/modules.dep
1208 %ghost /lib/modules/%{kernel_release}/modules.dep.bin
1209 %ghost /lib/modules/%{kernel_release}/modules.devname
1210 %ghost /lib/modules/%{kernel_release}/modules.softdep
1211 %ghost /lib/modules/%{kernel_release}/modules.symbols
1212 %ghost /lib/modules/%{kernel_release}/modules.symbols.bin
1214 # symlinks pointing to kernelsrcdir
1215 %ghost /lib/modules/%{kernel_release}/build
1216 %ghost /lib/modules/%{kernel_release}/source
1218 %ifarch alpha %{ix86} %{x8664} ppc ppc64 sparc sparc64
1220 %defattr(644,root,root,755)
1221 /boot/vmlinux-%{kernel_release}
1226 %defattr(644,root,root,755)
1227 /lib/modules/%{kernel_release}/kernel/drivers/gpu
1232 %defattr(644,root,root,755)
1233 /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/*ko*
1234 /lib/modules/%{kernel_release}/kernel/drivers/*/pcmcia
1235 %exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/pcmcia*ko*
1236 %if %{without rescuecd}
1237 /lib/modules/%{kernel_release}/kernel/drivers/bluetooth/*_cs.ko*
1238 /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
1239 /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/b1pcmcia.ko*
1240 /lib/modules/%{kernel_release}/kernel/drivers/ata/pata_pcmcia.ko*
1242 /lib/modules/%{kernel_release}/kernel/drivers/ide/ide-cs.ko*
1243 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/*_cs.ko*
1244 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/b43
1245 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/hostap/hostap_cs.ko*
1246 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/libertas/*_cs.ko*
1247 /lib/modules/%{kernel_release}/kernel/drivers/parport/parport_cs.ko*
1248 /lib/modules/%{kernel_release}/kernel/drivers/tty/serial/8250/serial_cs.ko*
1249 /lib/modules/%{kernel_release}/kernel/drivers/usb/host/sl811_cs.ko*
1254 %defattr(644,root,root,755)
1255 /lib/modules/%{kernel_release}/kernel/sound
1256 %exclude %dir /lib/modules/%{kernel_release}/kernel/sound
1257 %exclude /lib/modules/%{kernel_release}/kernel/sound/ac97_bus.ko*
1258 %exclude /lib/modules/%{kernel_release}/kernel/sound/sound*.ko*
1260 %exclude /lib/modules/%{kernel_release}/kernel/sound/oss
1263 /lib/modules/%{kernel_release}/kernel/drivers/usb/gadget/g_midi.ko*
1264 /lib/modules/%{kernel_release}/kernel/drivers/media/pci/cx88/cx88-alsa.ko*
1265 /lib/modules/%{kernel_release}/kernel/drivers/media/usb/em28xx/em28xx-alsa.ko*
1266 /lib/modules/%{kernel_release}/kernel/drivers/media/pci/saa7134/saa7134-alsa.ko*
1271 %defattr(644,root,root,755)
1272 /lib/modules/%{kernel_release}/kernel/sound/oss
1276 %files headers -f files.headers_exclude_kbuild
1277 %defattr(644,root,root,755)
1278 %dir %{_kernelsrcdir}
1279 %{_kernelsrcdir}/include
1280 %dir %{_kernelsrcdir}/arch
1281 %dir %{_kernelsrcdir}/arch/[!K]*
1282 %{_kernelsrcdir}/arch/*/include
1283 %dir %{_kernelsrcdir}/security
1284 %dir %{_kernelsrcdir}/security/selinux
1285 %{_kernelsrcdir}/security/selinux/include
1286 %{_kernelsrcdir}/.config
1287 %{_kernelsrcdir}/Module.symvers
1289 %files module-build -f files.mb_include_modulebuild_and_dirs
1290 %defattr(644,root,root,755)
1292 %{_kernelsrcdir}/arch/powerpc/lib/crtsavres.*
1294 %exclude %dir %{_kernelsrcdir}/arch/um
1295 %{_kernelsrcdir}/arch/*/kernel/asm-offsets*
1296 %{_kernelsrcdir}/arch/*/kernel/sigframe*.h
1297 %{_kernelsrcdir}/drivers/lguest/lg.h
1298 %{_kernelsrcdir}/drivers/media/pci/bt8xx/bttv.h
1299 %{_kernelsrcdir}/kernel/bounds.c
1300 %{_kernelsrcdir}/scripts/basic/*.c
1301 %attr(755,root,root) %{_kernelsrcdir}/scripts/kconfig/*.sh
1302 %{_kernelsrcdir}/scripts/kconfig/*.in
1303 %{_kernelsrcdir}/scripts/kconfig/*_shipped
1304 %{_kernelsrcdir}/scripts/kconfig/*.pl
1305 %{_kernelsrcdir}/scripts/kconfig/*.glade
1306 %{_kernelsrcdir}/scripts/kconfig/*.gperf
1307 %{_kernelsrcdir}/scripts/kconfig/*.cc
1308 %{_kernelsrcdir}/scripts/kconfig/*.y
1309 %{_kernelsrcdir}/scripts/kconfig/*.l
1310 %{_kernelsrcdir}/scripts/kconfig/[c-k]*.c
1311 %{_kernelsrcdir}/scripts/kconfig/[c-k]*.h
1312 %{_kernelsrcdir}/scripts/kconfig/l*.h
1313 %{_kernelsrcdir}/scripts/kconfig/[m-u]*.c
1314 %{_kernelsrcdir}/scripts/kconfig/[m-u]*.h
1315 %{_kernelsrcdir}/scripts/kconfig/lxdialog
1316 %{_kernelsrcdir}/scripts/mod/*.c
1317 %{_kernelsrcdir}/scripts/mod/[^e]*.h
1318 %attr(755,root,root) %{_kernelsrcdir}/scripts/mkcompile_h
1319 %{_kernelsrcdir}/scripts/mkmakefile
1320 %{_kernelsrcdir}/scripts/module-common.lds
1321 %attr(755,root,root) %{_kernelsrcdir}/scripts/setlocalversion
1322 %{_kernelsrcdir}/scripts/*.c
1323 %attr(755,root,root) %{_kernelsrcdir}/scripts/*.sh
1324 %{_kernelsrcdir}/scripts/selinux/genheaders/*.c
1325 %{_kernelsrcdir}/scripts/selinux/mdp/*.c
1326 %exclude %dir %{_kernelsrcdir}/security
1327 %exclude %dir %{_kernelsrcdir}/security/selinux
1331 %defattr(644,root,root,755)
1332 %dir %{_docdir}/%{name}-%{version}
1334 %{_docdir}/%{name}-%{version}/[!jkz]*
1335 %{_docdir}/%{name}-%{version}/[jkz]*.txt
1336 %{_docdir}/%{name}-%{version}/kbuild
1337 %{_docdir}/%{name}-%{version}/kdump
1338 %lang(ja) %{_docdir}/%{name}-%{version}/ja_JP
1339 %lang(ko) %{_docdir}/%{name}-%{version}/ko_KR
1340 %lang(zh_CN) %{_docdir}/%{name}-%{version}/zh_CN
1344 %files source -f files.source_exclude_modulebuild_and_dirs
1345 %defattr(644,root,root,755)
1346 %{_kernelsrcdir}/arch/*/[!Mik]*
1347 %{_kernelsrcdir}/arch/*/kernel/[!M]*
1348 %{_kernelsrcdir}/arch/ia64/install.sh
1349 %{_kernelsrcdir}/arch/m68k/ifpsp060/[!M]*
1350 %{_kernelsrcdir}/arch/m68k/ifpsp060/MISC
1351 %{_kernelsrcdir}/arch/m68k/install.sh
1352 %{_kernelsrcdir}/arch/parisc/install.sh
1353 %{_kernelsrcdir}/arch/x86/ia32/[!M]*
1354 %{_kernelsrcdir}/arch/ia64/kvm
1355 %{_kernelsrcdir}/arch/powerpc/kvm
1357 %exclude %{_kernelsrcdir}/arch/powerpc/lib/crtsavres.*
1359 %{_kernelsrcdir}/arch/s390/kvm
1360 %{_kernelsrcdir}/arch/x86/kvm
1361 %exclude %{_kernelsrcdir}/arch/*/kernel/asm-offsets*
1362 %exclude %{_kernelsrcdir}/arch/*/kernel/sigframe*.h
1363 %exclude %{_kernelsrcdir}/drivers/lguest/lg.h
1364 %exclude %{_kernelsrcdir}/drivers/media/pci/bt8xx/bttv.h
1365 %{_kernelsrcdir}/block
1366 %{_kernelsrcdir}/crypto
1367 %{_kernelsrcdir}/drivers
1368 %{_kernelsrcdir}/firmware
1370 %{_kernelsrcdir}/init
1371 %{_kernelsrcdir}/ipc
1372 %{_kernelsrcdir}/kernel
1373 %exclude %{_kernelsrcdir}/kernel/bounds.c
1374 %{_kernelsrcdir}/lib
1376 %{_kernelsrcdir}/net
1377 %{_kernelsrcdir}/virt
1378 %{_kernelsrcdir}/samples
1379 %{_kernelsrcdir}/scripts/*
1380 %exclude %{_kernelsrcdir}/scripts/Kbuild.include
1381 %exclude %{_kernelsrcdir}/scripts/Makefile*
1382 %exclude %{_kernelsrcdir}/scripts/basic
1383 %exclude %{_kernelsrcdir}/scripts/kconfig
1384 %exclude %{_kernelsrcdir}/scripts/mkcompile_h
1385 %exclude %{_kernelsrcdir}/scripts/mkmakefile
1386 %exclude %{_kernelsrcdir}/scripts/mod
1387 %exclude %{_kernelsrcdir}/scripts/module-common.lds
1388 %exclude %{_kernelsrcdir}/scripts/setlocalversion
1389 %exclude %{_kernelsrcdir}/scripts/*.c
1390 %exclude %{_kernelsrcdir}/scripts/*.sh
1391 %exclude %dir %{_kernelsrcdir}/scripts/selinux
1392 %exclude %{_kernelsrcdir}/scripts/selinux/Makefile
1393 %exclude %dir %{_kernelsrcdir}/scripts/selinux/genheaders
1394 %exclude %{_kernelsrcdir}/scripts/selinux/genheaders/Makefile
1395 %exclude %{_kernelsrcdir}/scripts/selinux/genheaders/*.c
1396 %exclude %dir %{_kernelsrcdir}/scripts/selinux/mdp
1397 %exclude %{_kernelsrcdir}/scripts/selinux/mdp/Makefile
1398 %exclude %{_kernelsrcdir}/scripts/selinux/mdp/*.c
1399 %{_kernelsrcdir}/sound
1400 %{_kernelsrcdir}/security
1401 %exclude %{_kernelsrcdir}/security/selinux/include
1402 %{_kernelsrcdir}/tools/*
1403 %{_kernelsrcdir}/usr
1404 %{_kernelsrcdir}/COPYING
1405 %{_kernelsrcdir}/CREDITS
1406 %{_kernelsrcdir}/MAINTAINERS
1407 %{_kernelsrcdir}/README
1408 %{_kernelsrcdir}/REPORTING-BUGS