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: 1a1760420eac802c541a20ab51a093d1
112 %if "%{postver}" != ".0"
113 Patch0: http://www.kernel.org/pub/linux/kernel/v3.x/patch-%{version}.bz2
114 # Patch0-md5: d6a71df35d568dfa7e829a6780056960
117 Source3: kernel-autoconf.h
118 Source4: kernel-config.h
119 Source6: kernel-config.awk
120 Source7: kernel-module-build.pl
121 Source8: kernel-track-config-change.awk
122 # not used by kernel.spec, but it's good to have it in SOURCES
123 Source9: kernel-config-sort.pl
124 Source10: kernel.make
126 Source20: kernel-multiarch.config
127 Source21: kernel-x86.config
128 Source22: kernel-sparc.config
129 Source23: kernel-alpha.config
130 Source24: kernel-powerpc.config
131 Source25: kernel-ia64.config
133 Source41: kernel-patches.config
134 Source43: kernel-vserver.config
136 Source55: kernel-imq.config
137 Source56: kernel-reiser4.config
139 Source58: kernel-inittmpfs.config
141 # http://dev.gentoo.org/~spock/projects/fbcondecor/archive/fbcondecor-0.9.4-2.6.25-rc6.patch
142 Patch3: kernel-fbcondecor.patch
143 Patch4: kernel-fbcon-margins.patch
144 Patch5: linux-wistron-amilo8210.patch
146 # netfilter related stuff mostly based on patch-o-matic-ng
147 # snapshot 20070806 with some fixes. Some modules
148 # were ported to nf_conntrack.
150 Patch10: kernel-pom-ng-IPV4OPTSSTRIP.patch
152 # http://ftp.linux-vserver.org/pub/people/dhozac/p/k/delta-owner-xid-feat02.diff
153 Patch37: kernel-owner-xid.patch
155 # based on kernel-2.6.25-layer7-2.20.patch from
156 # http://switch.dl.sourceforge.net/sourceforge/l7-filter/netfilter-layer7-v2.20.tar.gz
157 Patch40: kernel-layer7.patch
161 # http://zph.bratcheda.org/linux-2.6.26.3-zph.patch
162 Patch49: kernel-zph.patch
164 # based on http://www.linuximq.net/patchs/patch-imqmq-3.1.diff.bz2
165 Patch50: kernel-imq.patch
167 Patch51: http://downloads.sourceforge.net/project/reiser4/reiser4-for-linux-3.x/reiser4-for-3.6.4.patch.gz
168 # Patch51-md5: 4128aa3bd062d0289117dda6775a7f20
170 # http://fatooh.org/esfq-2.6/sfq-2.6.24.1.tar.bz2
171 Patch53: kernel-esfq.patch
173 # by Baggins request:
174 # derived from ftp://ftp.cmf.nrl.navy.mil/pub/chas/linux-atm/vbr/vbr-kernel-diffs
175 Patch55: kernel-atm-vbr.patch
176 Patch56: kernel-atmdd.patch
178 # http://synce.svn.sourceforge.net/svnroot/synce/trunk/patches/linux-2.6.22-rndis_host-wm5.patch
179 Patch59: kernel-rndis_host-wm5.patch
181 # adds some ids for hostap suported cards and monitor_enable from/for aircrack-ng
182 # http://patches.aircrack-ng.org/hostap-kernel-2.6.18.patch
183 Patch85: kernel-hostap.patch
185 # http://vserver.13thfloor.at/Experimental/patch-3.6.9-vs2.3.4.4.diff
186 Patch100: kernel-vserver-2.3.patch
187 Patch101: kernel-vserver-fixes.patch
189 # git clone git://kernel.opensuse.org/kernel-source.git
191 Patch110: ovl01-vfs-add-i_op-dentry_open.patch
192 Patch111: ovl02-vfs-export-do_splice_direct-to-modules.patch
193 Patch112: ovl03-vfs-introduce-clone_private_mount.patch
194 Patch113: ovl04-overlay-filesystem.patch
195 Patch114: ovl05-overlayfs-add-statfs-support.patch
196 Patch115: ovl06-overlayfs-implement-show_options.patch
197 Patch116: ovl07-overlay-overlay-filesystem-documentation.patch
198 Patch117: ovl08-fs-limit-filesystem-stacking-depth.patch
199 Patch118: ovl09-overlayfs-fix-possible-leak-in-ovl_new_inode.patch
200 Patch119: ovl10-overlayfs-create-new-inode-in-ovl_link.patch
201 Patch120: ovl11-vfs-export-__inode_permission-to-modules.patch
202 Patch121: ovl12-ovl-switch-to-__inode_permission.patch
203 Patch122: ovl13-overlayfs-copy-up-i_uid-i_gid-from-the-underlying-in.patch
205 # git://aufs.git.sourceforge.net/gitroot/aufs/aufs3-standalone.git, read README
207 # git clone git://aufs.git.sourceforge.net/gitroot/aufs/aufs3-standalone.git
208 # cd aufs3-standalone
209 # git checkout -b aufs3.6 origin/aufs3.6
210 # cat aufs3-kbuild.patch aufs3-base.patch aufs3-standalone.patch > ~/rpm/packages/kernel/kernel-aufs3.patch
212 # cp -a Documentation fs include linux
213 # diff -urN /usr/share/empty linux >> ~/rpm/packages/kernel/kernel-aufs3.patch
214 # drop hunk at the end of patch (hunk is patching include/linux/Kbuild with single line change)
216 Patch145: kernel-aufs3.patch
218 # Show normal colors in menuconfig with ncurses ABI 6
219 Patch250: kernel-fix_256colors_menuconfig.patch
221 # https://patchwork.kernel.org/patch/236261/
222 Patch400: kernel-virtio-gl-accel.patch
224 Patch2000: kernel-small_fixes.patch
225 Patch2001: kernel-pwc-uncompress.patch
226 Patch2003: kernel-regressions.patch
228 # http://git.kernel.org/?p=linux/kernel/git/jj/linux-apparmor.git;a=shortlog;h=refs/heads/v3.5-aa2.8
229 Patch5000: kernel-apparmor.patch
232 # based on ftp://ftp.leg.uct.ac.za/pub/linux/rip/tmpfs_root-2.6.30.diff.gz
233 Patch7000: kernel-inittmpfs.patch
235 # Do not remove this line, please. It is easier for me to uncomment two lines, then patch
236 # kernel.spec every time.
237 #Patch50000: kernel-usb_reset.patch
239 URL: http://www.kernel.org/
240 BuildRequires: binutils >= 3:2.18
241 %ifarch sparc sparc64
242 BuildRequires: elftoaout
245 BuildRequires: uboot-mkimage
247 BuildRequires: /sbin/depmod
248 BuildRequires: gcc >= 5:3.2
249 BuildRequires: xz >= 1:4.999.7
251 BuildRequires: hostname
253 BuildRequires: perl-base
254 BuildRequires: rpm-build >= 4.5-24
255 BuildRequires: rpmbuild(macros) >= 1.652
256 Requires(post): coreutils
257 Requires(post): geninitrd >= 10000-3
258 Requires(post): virtual(module-tools)
259 Requires: /sbin/depmod
261 Requires: geninitrd >= 10000-3
262 Requires: virtual(module-tools)
264 %ifarch i686 athlon pentium3 pentium4
265 Requires: cpuinfo(pae)
270 Suggests: linux-firmware
271 Provides: %{name}(netfilter) = 20070806
272 Provides: %{name}(vermagic) = %{kernel_release}
273 Obsoletes: kernel%{_alt_kernel}-char-lirc-ene0100
274 Obsoletes: kernel%{_alt_kernel}-char-lirc-it87
275 Obsoletes: kernel%{_alt_kernel}-char-lirc-ite8709
276 Obsoletes: kernel%{_alt_kernel}-char-lirc-mceusb
277 Obsoletes: kernel%{_alt_kernel}-char-lirc-streamzap
278 Obsoletes: kernel%{_alt_kernel}-isdn-mISDN
279 Obsoletes: kernel-firmware
280 Obsoletes: kernel-misc-acer_acpi
281 Obsoletes: kernel-misc-fuse
282 Obsoletes: kernel-misc-uvc
283 Obsoletes: kernel-modules
284 Obsoletes: kernel-net-ar81
285 Obsoletes: kernel-net-hostap
286 Obsoletes: kernel-net-ieee80211
287 Obsoletes: kernel-net-ipp2p
288 Obsoletes: kernel-net-rt61
289 Obsoletes: kernel-smp
290 Conflicts: e2fsprogs < 1.29
291 Conflicts: isdn4k-utils < 3.1pre1
292 Conflicts: jfsutils < 1.1.3
293 Conflicts: linux-firmware < 20120720
294 Conflicts: lvm2 < 2.02.40
295 Conflicts: module-init-tools < 3.16
296 Conflicts: nfs-utils < 1.0.5
297 Conflicts: oprofile < 0.9
298 Conflicts: ppp < 1:2.4.0
299 Conflicts: procps < 3.2.0
300 Conflicts: quota-tools < 3.09
301 %{?with_reiserfs4:Conflicts: reiser4progs < 1.0.0}
302 Conflicts: reiserfsprogs < 3.6.3
303 Conflicts: rpm < 4.4.2-0.2
304 Conflicts: udev < 1:081
305 Conflicts: util-linux < 2.10o
306 Conflicts: util-vserver < 0.30.216
307 Conflicts: xfsprogs < 2.6.0
308 ExclusiveArch: %{ix86} %{x8664} alpha arm ia64 ppc ppc64 sparc sparc64
310 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
312 %ifarch %{ix86} %{x8664}
313 %define target_arch_dir x86
316 %define target_arch_dir powerpc
318 %ifarch sparc sparc64
319 %define target_arch_dir sparc
321 %ifnarch %{ix86} %{x8664} ppc ppc64 sparc sparc64
322 %define target_arch_dir %{_target_base_arch}
325 %define defconfig arch/%{target_arch_dir}/defconfig
327 # No ELF objects there to strip (skips processing 27k files)
328 %define _noautostrip \\(.*%{_kernelsrcdir}/.*\\|.*/vmlinux.*\\)
329 %define _noautochrpath .*%{_kernelsrcdir}/.*
330 %define _enable_debug_packages 0
333 %define initrd_dir /boot/efi
335 %define initrd_dir /boot
338 %define topdir %{_builddir}/%{name}-%{version}
339 %define srcdir %{topdir}/linux-%{basever}
340 %define objdir %{topdir}/%{targetobj}
341 %define targetobj %{_target_base_arch}-gcc-%(%{kgcc} -dumpversion)
343 %define _kernelsrcdir /usr/src/linux%{_alt_kernel}-%{version}
345 %if "%{_target_base_arch}" != "%{_host_base_arch}"
346 %define CrossOpts ARCH=%{_target_base_arch} CROSS_COMPILE=%{_target_cpu}-pld-linux-
347 %define DepMod /bin/true
349 %if "%{_host_base_arch}" == "sparc" && "%{_target_base_arch}" == "sparc64"
350 %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
351 %define DepMod /sbin/depmod
354 %if "%{_host_base_arch}" == "sparc64" && "%{_target_base_arch}" == "sparc"
355 %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
356 %define DepMod /sbin/depmod
359 %if "%{_host_base_arch}" == "x86_64" && "%{_target_base_arch}" == "i386"
360 %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
361 %define DepMod /sbin/depmod
364 %if "%{_target_base_arch}" == "ppc" || "%{_target_base_arch}" == "ppc64"
365 %define CrossOpts ARCH=powerpc CROSS_COMPILE=%{_target_cpu}-pld-linux-
369 %define CrossOpts ARCH=powerpc CC="%{__cc}"
371 %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
373 %define DepMod /sbin/depmod
375 %define MakeOpts %{CrossOpts} HOSTCC="%{__cc}"
378 %{?with_fbcondecor:Fbsplash/fbcondecor - enabled }\
379 %{?with_nfsroot:Root on NFS - enabled}\
381 %define Features %(echo "%{__features}" | sed '/^$/d')
384 This package contains the Linux kernel that is used to boot and run
385 your system. It contains few device drivers for specific hardware.
386 Most hardware is instead supported by modules loaded after booting.
390 %description -l de.UTF-8
391 Das Kernel-Paket enthält den Linux-Kernel (vmlinuz), den Kern des
392 Linux-Betriebssystems. Der Kernel ist für grundliegende
393 Systemfunktionen verantwortlich: Speicherreservierung,
394 Prozeß-Management, Geräte Ein- und Ausgaben, usw.
398 %description -l fr.UTF-8
399 Le package kernel contient le kernel linux (vmlinuz), la partie
400 centrale d'un système d'exploitation Linux. Le noyau traite les
401 fonctions basiques d'un système d'exploitation: allocation mémoire,
402 allocation de process, entrée/sortie de peripheriques, etc.
406 %description -l pl.UTF-8
407 Pakiet zawiera jądro Linuksa niezbędne do prawidłowego działania
408 Twojego komputera. Zawiera w sobie sterowniki do sprzętu znajdującego
409 się w komputerze, takiego jak sterowniki dysków itp.
414 Summary: vmlinux - uncompressed kernel image
415 Summary(de.UTF-8): vmlinux - dekompressiertes Kernel Bild
416 Summary(pl.UTF-8): vmlinux - rozpakowany obraz jÄ…dra
418 Obsoletes: kernel-smp-vmlinux
421 vmlinux - uncompressed kernel image.
423 %description vmlinux -l de.UTF-8
424 vmlinux - dekompressiertes Kernel Bild.
426 %description vmlinux -l pl.UTF-8
427 vmlinux - rozpakowany obraz jÄ…dra.
430 Summary: DRM kernel modules
431 Summary(de.UTF-8): DRM Kernel Treiber
432 Summary(pl.UTF-8): Sterowniki DRM
434 Requires(postun): %{name} = %{epoch}:%{version}-%{release}
435 Requires: %{name} = %{epoch}:%{version}-%{release}
436 Obsoletes: kernel-smp-drm
442 %description drm -l de.UTF-8
445 %description drm -l pl.UTF-8
449 Summary: PCMCIA modules
450 Summary(de.UTF-8): PCMCIA Module
451 Summary(pl.UTF-8): Moduły PCMCIA
453 Requires(postun): %{name} = %{epoch}:%{version}-%{release}
454 Requires: %{name} = %{epoch}:%{version}-%{release}
455 Obsoletes: kernel-smp-pcmcia
456 Conflicts: pcmcia-cs < 3.1.21
457 Conflicts: pcmciautils < 004
463 %description pcmcia -l de.UTF-8
466 %description pcmcia -l pl.UTF-8
470 Summary: ALSA kernel modules
471 Summary(de.UTF-8): ALSA Kernel Module
472 Summary(pl.UTF-8): Sterowniki dźwięku ALSA
474 Requires(postun): %{name} = %{epoch}:%{version}-%{release}
475 Requires: %{name} = %{epoch}:%{version}-%{release}
476 Obsoletes: kernel-smp-sound-alsa
479 %description sound-alsa
480 ALSA (Advanced Linux Sound Architecture) sound drivers.
482 %description sound-alsa -l de.UTF-8
483 ALSA (Advanced Linux Sound Architecture) Sound-Treiber.
485 %description sound-alsa -l pl.UTF-8
486 Sterowniki dźwięku ALSA (Advanced Linux Sound Architecture).
489 Summary: OSS kernel modules
490 Summary(de.UTF-8): OSS Kernel Module
491 Summary(pl.UTF-8): Sterowniki dźwięku OSS
493 Requires(postun): %{name} = %{epoch}:%{version}-%{release}
494 Requires: %{name} = %{epoch}:%{version}-%{release}
495 Obsoletes: kernel-smp-sound-oss
498 %description sound-oss
499 OSS (Open Sound System) drivers.
501 %description sound-oss -l de.UTF-8
502 OSS (Open Sound System) Treiber.
504 %description sound-oss -l pl.UTF-8
505 Sterowniki dźwięku OSS (Open Sound System).
508 Summary: Header files for the Linux kernel
509 Summary(de.UTF-8): Header Dateien für den Linux-Kernel
510 Summary(pl.UTF-8): Pliki nagłówkowe jądra Linuksa
511 Group: Development/Building
512 Provides: %{name}-headers(netfilter) = 20070806
516 These are the C header files for the Linux kernel, which define
517 structures and constants that are needed when rebuilding the kernel or
518 building kernel modules.
520 %description headers -l de.UTF-8
521 Dies sind die C Header Dateien für den Linux-Kernel, die definierte
522 Strukturen und Konstante beinhalten, die beim rekompilieren des
523 Kernels oder bei Kernel Modul kompilationen gebraucht werden.
525 %description headers -l pl.UTF-8
526 Pakiet zawiera pliki nagłówkowe jądra, niezbędne do rekompilacji jądra
527 oraz budowania modułów jądra.
529 %package module-build
530 Summary: Development files for building kernel modules
531 Summary(de.UTF-8): Development Dateien die beim Kernel Modul kompilationen gebraucht werden
532 Summary(pl.UTF-8): Pliki służące do budowania modułów jądra
533 Group: Development/Building
534 Requires: %{name}-headers = %{epoch}:%{version}-%{release}
535 Conflicts: rpmbuild(macros) < 1.652
538 %description module-build
539 Development files from kernel source tree needed to build Linux kernel
540 modules from external packages.
542 %description module-build -l de.UTF-8
543 Development Dateien des Linux-Kernels die beim kompilieren externer
544 Kernel Module gebraucht werden.
546 %description module-build -l pl.UTF-8
547 Pliki ze drzewa źródeł jądra potrzebne do budowania modułów jądra
548 Linuksa z zewnętrznych pakietów.
551 Summary: Kernel source tree
552 Summary(de.UTF-8): Der Kernel Quelltext
553 Summary(pl.UTF-8): Kod źródłowy jądra Linuksa
554 Group: Development/Building
555 Requires: %{name}-module-build = %{epoch}:%{version}-%{release}
559 This is the source code for the Linux kernel. You can build a custom
560 kernel that is better tuned to your particular hardware.
562 %description source -l de.UTF-8
563 Das Kernel-Source-Paket enthält den source code (C/Assembler-Code) des
564 Linux-Kernels. Die Source-Dateien werden gebraucht, um viele
565 C-Programme zu kompilieren, da sie auf Konstanten zurückgreifen, die
566 im Kernel-Source definiert sind. Die Source-Dateien können auch
567 benutzt werden, um einen Kernel zu kompilieren, der besser auf Ihre
568 Hardware ausgerichtet ist.
570 %description source -l fr.UTF-8
571 Le package pour le kernel-source contient le code source pour le noyau
572 linux. Ces sources sont nécessaires pour compiler la plupart des
573 programmes C, car il dépend de constantes définies dans le code
574 source. Les sources peuvent être aussi utilisée pour compiler un noyau
575 personnalisé pour avoir de meilleures performances sur des matériels
578 %description source -l pl.UTF-8
579 Pakiet zawiera kod źródłowy jądra systemu.
582 Summary: Kernel documentation
583 Summary(de.UTF-8): Kernel Dokumentation
584 Summary(pl.UTF-8): Dokumentacja do jÄ…dra Linuksa
589 This is the documentation for the Linux kernel, as found in
590 /usr/src/linux/Documentation directory.
592 %description doc -l de.UTF-8
593 Dies ist die Kernel Dokumentation wie sie im 'Documentation'
594 Verzeichniss vorgefunden werden kann.
596 %description doc -l pl.UTF-8
597 Pakiet zawiera dokumentacjÄ™ do jÄ…dra Linuksa pochodzÄ…cÄ… z katalogu
598 /usr/src/linux/Documentation.
602 ln -s %{SOURCE7} kernel-module-build.pl
603 ln -s %{SOURCE10} Makefile
606 %if "%{postver}" != ".0"
610 %if %{without vanilla}
612 %if %{with fbcondecor}
621 # kernel-pom-ng-IPV4OPTSSTRIP.patch
624 # kernel-owner-xid.patch
629 # kernel-layer7.patch
655 # kernel-rndis_host-wm5.patch
658 # hostap enhancements from/for aircrack-ng
703 # Do not remove this, please!
706 # Fix EXTRAVERSION in main Makefile
707 sed -i 's#EXTRAVERSION =.*#EXTRAVERSION = %{?alt_kernel:.%{alt_kernel}}#g' Makefile
709 # cleanup backups after patching
710 find '(' -name '*~' -o -name '*.orig' -o -name '.gitignore' ')' -print0 | xargs -0 -r -l512 rm -f
714 cat > %{targetobj}.mk <<'EOF'
715 # generated by %{name}.spec
716 KERNELSRC := %{srcdir}
717 KERNELOUTPUT := %{objdir}
719 SRCARCH := %{target_arch_dir}
720 ARCH := %{_target_base_arch}
721 Q := %{!?with_verbose:@}
722 MAKE_OPTS := %{MakeOpts}
723 DEFCONFIG := %{defconfig}
729 # CONFIG_SOUND is not set
730 # CONFIG_AUDIT is not set
731 # CONFIG_TR is not set
732 # CONFIG_BT is not set
733 # CONFIG_VIDEO_DEV is not set
734 # CONFIG_DVB_CORE is not set
735 # CONFIG_HAMRADIO is not set
736 # CONFIG_ARCNET is not set
737 # CONFIG_FB is not set
738 # CONFIG_DRM is not set
739 # CONFIG_WATCHDOG is not set
740 # CONFIG_INPUT_JOYSTICK is not set
741 # CONFIG_DEBUG_KERNEL is not set
742 # CONFIG_ISDN is not set
743 # CONFIG_AGP is not set
744 # CONFIG_SECURITY is not set
745 # CONFIG_PARIDE is not set
746 # CONFIG_CPU_FREQ is not set
747 # CONFIG_GAMEPORT is not set
748 # CONFIG_KVM is not set
749 # CONFIG_PHONE is not set
750 # CONFIG_STRICT_DEVMEM is not set
751 # CONFIG_IMA is not set
754 CONFIG_AUFS_BR_RAMFS=y
756 CONFIG_BLK_DEV_LOOP=y
769 Config="kernel-%{target_arch_dir}.config"
770 echo >&2 "Building config file for %{_target_cpu} using $Config et al."
772 # prepare local and important options
773 cat <<-EOCONFIG > important.config
774 LOCALVERSION="-%{localversion}"
778 CONFIG_DEBUG_SLAB_LEAK=y
779 CONFIG_DEBUG_PREEMPT=y
780 CONFIG_RT_DEADLOCK_DETECT=y
787 %ifarch i686 athlon pentium3 pentium4
796 %if %{without pcmcia}
800 %if %{with fbcondecor}
804 CONFIG_FB_TILEBLITTING=n
805 CONFIG_FB_CON_DECOR=y
815 RescueConfig rescue.config
817 # prepare kernel-style config file from multiple config files
818 %{__awk} -v arch="all %{target_arch_dir} %{_target_base_arch} %{_target_cpu}" -f %{SOURCE6} \
820 $RPM_SOURCE_DIR/kernel-%{alt_kernel}.config \
823 %if %{without vanilla}
838 %{SOURCE41} %{?0:patches} \
841 $RPM_SOURCE_DIR/$Config
845 install -d arch/%{target_arch_dir}
846 BuildConfig > %{defconfig}
847 ln -sf %{defconfig} .config
851 TARGETOBJ=%{targetobj} \
852 %{?with_verbose:V=1} \
855 %{__awk} %{?debug:-v dieOnError=1} -v infile=%{objdir}/%{defconfig} -f %{SOURCE8} %{objdir}/.config
859 TARGETOBJ=%{targetobj} \
860 %{?with_verbose:V=1} \
864 rm -rf $RPM_BUILD_ROOT
865 %{__make} %{MakeOpts} -j1 %{!?with_verbose:-s} modules_install firmware_install \
867 %{?with_verbose:V=1} \
869 INSTALL_MOD_PATH=$RPM_BUILD_ROOT \
870 INSTALL_FW_PATH=$RPM_BUILD_ROOT/lib/firmware/%{kernel_release} \
871 KERNELRELEASE=%{kernel_release}
873 install -d $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/misc
875 # create directories which may be missing, to simplyfy %files
876 install -d $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/kernel/{arch,sound,mm}
878 # rpm obeys filelinkto checks for ghosted symlinks, convert to files
879 rm -f $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/{build,source}
880 touch $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/{build,source}
882 # no point embed content for %ghost files. empty them
890 test -f $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/modules.$a
891 > $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/modules.$a
895 install -d $RPM_BUILD_ROOT/boot
896 cp -a %{objdir}/System.map $RPM_BUILD_ROOT/boot/System.map-%{kernel_release}
897 %ifarch %{ix86} %{x8664}
898 cp -a %{objdir}/arch/%{target_arch_dir}/boot/bzImage $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
899 install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinux-%{kernel_release}
902 install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
903 install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinux-%{kernel_release}
906 %{__gzip} -cfv %{objdir}/vmlinux > %{objdir}/vmlinuz
907 cp -a %{objdir}/vmlinuz $RPM_BUILD_ROOT/boot/efi/vmlinuz-%{kernel_release}
908 ln -sf efi/vmlinuz-%{kernel_release} $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
910 %ifarch alpha sparc sparc64
911 %{__gzip} -cfv %{objdir}/vmlinux > %{objdir}/vmlinuz
912 cp -a %{objdir}/vmlinuz $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
913 install -p %{objdir}/vmlinux $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
915 elftoaout %{objdir}/arch/sparc/boot/image -o %{objdir}/vmlinux.aout
916 install -p %{objdir}/vmlinux.aout $RPM_BUILD_ROOT/boot/vmlinux.aout-%{kernel_release}
919 elftoaout %{objdir}/arch/sparc64/boot/image -o %{objdir}/vmlinux.aout
920 install -p %{objdir}/vmlinux.aout $RPM_BUILD_ROOT/boot/vmlinux.aout-%{kernel_release}
924 install -p %{objdir}/arch/arm/boot/zImage $RPM_BUILD_ROOT/boot/vmlinuz-%{kernel_release}
928 touch $RPM_BUILD_ROOT%{initrd_dir}/initrd-%{kernel_release}.gz
929 touch $RPM_BUILD_ROOT%{initrd_dir}/initramfs-%{kernel_release}.img
931 %if "%{_target_base_arch}" != "%{_host_base_arch}"
932 touch $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/modules.dep
936 install -d $RPM_BUILD_ROOT%{_sysconfdir}/modprobe.d/%{kernel_release}
939 install -d $RPM_BUILD_ROOT%{_kernelsrcdir}
941 # test if we can hardlink -- %{_builddir} and $RPM_BUILD_ROOT on same partition
942 if cp -al %{srcdir}/COPYING $RPM_BUILD_ROOT/COPYING 2>/dev/null; then
944 rm -f $RPM_BUILD_ROOT/COPYING
947 cp -a$l %{srcdir}/* $RPM_BUILD_ROOT%{_kernelsrcdir}
948 cp -a %{objdir}/Module.symvers $RPM_BUILD_ROOT%{_kernelsrcdir}
949 cp -aL %{objdir}/.config $RPM_BUILD_ROOT%{_kernelsrcdir}
950 cp -a %{objdir}/include $RPM_BUILD_ROOT%{_kernelsrcdir}
951 # copy arch/x86/include/generated
952 for dir in $(cd %{objdir} && find arch -name generated -type d); do
953 cp -a %{objdir}/$dir $RPM_BUILD_ROOT%{_kernelsrcdir}/$dir
954 find $RPM_BUILD_ROOT%{_kernelsrcdir}/$dir -name '.*.cmd' -exec rm "{}" ";"
957 # disable this here, causes a lot of build-time problems and our rpm-build disables it anyway
958 %{__sed} -i -e 's|\(CONSTIFY_PLUGIN.*:=.*\)|# \1|' $RPM_BUILD_ROOT%{_kernelsrcdir}/Makefile
960 # collect module-build files and directories
961 # Usage: kernel-module-build.pl $rpmdir $fileoutdir
963 cd $RPM_BUILD_ROOT%{_kernelsrcdir}
964 %{__perl} %{topdir}/kernel-module-build.pl %{_kernelsrcdir} $fileoutdir
967 for f in `find %{objdir}/scripts -type f -print | grep -v "/\.\|\.o$"` ; do
970 echo "%attr(755,root,root) %{_kernelsrcdir}/$ff" >>files.mb_include_modulebuild_and_dirs
972 echo "%{_kernelsrcdir}/$ff" >>files.mb_include_modulebuild_and_dirs
974 echo "%exclude %{_kernelsrcdir}/$ff" >>files.source_exclude_modulebuild_and_dirs
975 cp -a "$f" "$RPM_BUILD_ROOT%{_kernelsrcdir}/$ff"
978 # move to %{_docdir} so we wouldn't depend on any kernel package for dirs
979 install -d $RPM_BUILD_ROOT%{_docdir}
980 mv $RPM_BUILD_ROOT{%{_kernelsrcdir}/Documentation,%{_docdir}/%{name}-%{version}}
982 rm -f $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/dontdiff
983 rm -f $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/Makefile
984 rm -f $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/*/Makefile
985 rm -f $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/*/*/Makefile
988 rm -rf $RPM_BUILD_ROOT
991 if [ -x /sbin/new-kernel-pkg ]; then
992 /sbin/new-kernel-pkg --remove %{kernel_release}
997 mv -f /boot/efi/vmlinuz{,.old} 2> /dev/null
998 %{?alt_kernel:mv -f /boot/efi/vmlinuz%{_alt_kernel}{,.old} 2> /dev/null}
999 ln -sf vmlinuz-%{kernel_release} /boot/efi/vmlinuz
1000 %{?alt_kernel:ln -sf vmlinuz-%{kernel_release} /boot/efi/vmlinuz%{_alt_kernel}}
1002 mv -f /boot/vmlinuz{,.old} 2> /dev/null
1003 %{?alt_kernel:mv -f /boot/vmlinuz%{_alt_kernel}{,.old} 2> /dev/null}
1004 mv -f /boot/System.map{,.old} 2> /dev/null
1005 %{?alt_kernel:mv -f /boot/System%{_alt_kernel}.map{,.old} 2> /dev/null}
1006 ln -sf vmlinuz-%{kernel_release} /boot/vmlinuz
1007 %{?alt_kernel:ln -sf vmlinuz-%{kernel_release} /boot/vmlinuz%{_alt_kernel}}
1008 ln -sf System.map-%{kernel_release} /boot/System.map
1009 %{?alt_kernel:ln -sf System.map-%{kernel_release} /boot/System.map%{_alt_kernel}}
1011 %depmod %{kernel_release}
1014 # generate initrd after all dependant modules are installed
1015 /sbin/geninitrd -f --initrdfs=initramfs %{initrd_dir}/initrd-%{kernel_release}.gz %{kernel_release}
1016 mv -f %{initrd_dir}/initrd{,.old} 2> /dev/null
1017 %{?alt_kernel:mv -f %{initrd_dir}/initrd%{_alt_kernel}{,.old} 2> /dev/null}
1018 ln -sf initrd-%{kernel_release}.gz %{initrd_dir}/initrd
1019 %{?alt_kernel:ln -sf initrd-%{kernel_release}.gz %{initrd_dir}/initrd%{_alt_kernel}}
1021 # if dracut is present then generate full-featured initramfs
1022 if [ -x /sbin/dracut ]; then
1023 /sbin/dracut --force --quiet /boot/initramfs-%{kernel_release}.img %{kernel_release}
1026 # update boot loaders when old package files are gone from filesystem
1027 if [ -x /sbin/update-grub -a -f /etc/sysconfig/grub ]; then
1028 if [ "$(. /etc/sysconfig/grub; echo ${UPDATE_GRUB:-no})" = "yes" ]; then
1029 /sbin/update-grub >/dev/null
1032 if [ -x /sbin/new-kernel-pkg ]; then
1033 /sbin/new-kernel-pkg --initrdfile=%{initrd_dir}/initrd-%{kernel_release}.gz --install %{kernel_release} --banner "PLD Linux (%{pld_release})%{?alt_kernel: / %{alt_kernel}}"
1035 if [ -x /sbin/rc-boot ]; then
1036 /sbin/rc-boot 1>&2 || :
1040 mv -f /boot/vmlinux{,.old} 2> /dev/null
1041 %{?alt_kernel:mv -f /boot/vmlinux-%{alt_kernel}{,.old} 2> /dev/null}
1042 ln -sf vmlinux-%{kernel_release} /boot/vmlinux
1043 %{?alt_kernel:ln -sf vmlinux-%{kernel_release} /boot/vmlinux-%{alt_kernel}}
1046 %depmod %{kernel_release}
1049 %depmod %{kernel_release}
1052 %depmod %{kernel_release}
1055 %depmod %{kernel_release}
1058 %depmod %{kernel_release}
1061 %depmod %{kernel_release}
1064 %depmod %{kernel_release}
1067 %depmod %{kernel_release}
1070 ln -snf %{basename:%{_kernelsrcdir}} %{_prefix}/src/linux%{_alt_kernel}
1073 if [ "$1" = "0" ]; then
1074 if [ -L %{_prefix}/src/linux%{_alt_kernel} ]; then
1075 if [ "$(readlink %{_prefix}/src/linux%{_alt_kernel})" = "linux%{_alt_kernel}-%{version}" ]; then
1076 rm -f %{_prefix}/src/linux%{_alt_kernel}
1081 %triggerin module-build -- %{name} = %{epoch}:%{version}-%{release}
1082 ln -sfn %{_kernelsrcdir} /lib/modules/%{kernel_release}/build
1083 ln -sfn %{_kernelsrcdir} /lib/modules/%{kernel_release}/source
1085 %triggerun module-build -- %{name} = %{epoch}:%{version}-%{release}
1086 if [ "$1" = 0 ]; then
1087 rm -f /lib/modules/%{kernel_release}/{build,source}
1091 %defattr(644,root,root,755)
1092 %ifarch sparc sparc64
1093 /boot/vmlinux.aout-%{kernel_release}
1096 /boot/efi/vmlinuz-%{kernel_release}
1098 /boot/vmlinuz-%{kernel_release}
1099 /boot/System.map-%{kernel_release}
1100 %ghost %{initrd_dir}/initrd-%{kernel_release}.gz
1101 %ghost %{initrd_dir}/initramfs-%{kernel_release}.img
1102 /lib/firmware/%{kernel_release}
1104 %dir /lib/modules/%{kernel_release}
1105 %dir /lib/modules/%{kernel_release}/kernel
1106 /lib/modules/%{kernel_release}/kernel/arch
1107 /lib/modules/%{kernel_release}/kernel/crypto
1108 /lib/modules/%{kernel_release}/kernel/drivers
1110 %exclude /lib/modules/%{kernel_release}/kernel/drivers/gpu
1112 /lib/modules/%{kernel_release}/kernel/fs
1113 /lib/modules/%{kernel_release}/kernel/kernel
1114 /lib/modules/%{kernel_release}/kernel/lib
1115 /lib/modules/%{kernel_release}/kernel/net
1116 /lib/modules/%{kernel_release}/kernel/mm
1118 %dir /lib/modules/%{kernel_release}/kernel/sound
1119 /lib/modules/%{kernel_release}/kernel/sound/ac97_bus.ko*
1120 /lib/modules/%{kernel_release}/kernel/sound/sound*.ko*
1122 %exclude /lib/modules/%{kernel_release}/kernel/drivers/media/video/cx88/cx88-alsa.ko*
1123 %exclude /lib/modules/%{kernel_release}/kernel/drivers/media/video/em28xx/em28xx-alsa.ko*
1124 %exclude /lib/modules/%{kernel_release}/kernel/drivers/media/video/saa7134/saa7134-alsa.ko*
1127 %dir /lib/modules/%{kernel_release}/misc
1129 %exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/[!p]*
1130 %exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/pd6729.ko*
1131 %exclude /lib/modules/%{kernel_release}/kernel/drivers/*/pcmcia
1132 %if %{without rescuecd}
1133 %exclude /lib/modules/%{kernel_release}/kernel/drivers/ata/pata_pcmcia.ko*
1134 %exclude /lib/modules/%{kernel_release}/kernel/drivers/bluetooth/*_cs.ko*
1135 %exclude /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
1136 %exclude /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/b1pcmcia.ko*
1137 %exclude /lib/modules/%{kernel_release}/kernel/drivers/staging/telephony/ixj_pcmcia.ko*
1138 %exclude /lib/modules/%{kernel_release}/kernel/drivers/usb/gadget/g_midi.ko*
1140 %exclude /lib/modules/%{kernel_release}/kernel/drivers/ide/ide-cs.ko*
1141 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/*_cs.ko*
1142 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/b43
1143 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/hostap/hostap_cs.ko*
1144 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/libertas/*_cs.ko*
1145 %exclude /lib/modules/%{kernel_release}/kernel/drivers/parport/parport_cs.ko*
1146 %exclude /lib/modules/%{kernel_release}/kernel/drivers/tty/serial/8250/serial_cs.ko*
1147 %exclude /lib/modules/%{kernel_release}/kernel/drivers/usb/host/sl811_cs.ko*
1150 /lib/modules/%{kernel_release}/kernel/sound
1152 /lib/modules/%{kernel_release}/kernel/security
1154 %dir %{_sysconfdir}/modprobe.d/%{kernel_release}
1157 /lib/modules/%{kernel_release}/modules.order
1158 /lib/modules/%{kernel_release}/modules.builtin*
1160 # rest modules.* are ghost (regenerated by post depmod -a invocation)
1161 %ghost /lib/modules/%{kernel_release}/modules.alias
1162 %ghost /lib/modules/%{kernel_release}/modules.alias.bin
1163 %ghost /lib/modules/%{kernel_release}/modules.dep
1164 %ghost /lib/modules/%{kernel_release}/modules.dep.bin
1165 %ghost /lib/modules/%{kernel_release}/modules.devname
1166 %ghost /lib/modules/%{kernel_release}/modules.softdep
1167 %ghost /lib/modules/%{kernel_release}/modules.symbols
1168 %ghost /lib/modules/%{kernel_release}/modules.symbols.bin
1170 # symlinks pointing to kernelsrcdir
1171 %ghost /lib/modules/%{kernel_release}/build
1172 %ghost /lib/modules/%{kernel_release}/source
1174 %ifarch alpha %{ix86} %{x8664} ppc ppc64 sparc sparc64
1176 %defattr(644,root,root,755)
1177 /boot/vmlinux-%{kernel_release}
1182 %defattr(644,root,root,755)
1183 /lib/modules/%{kernel_release}/kernel/drivers/gpu
1188 %defattr(644,root,root,755)
1189 /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/*ko*
1190 /lib/modules/%{kernel_release}/kernel/drivers/*/pcmcia
1191 %exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/pcmcia*ko*
1192 %if %{without rescuecd}
1193 /lib/modules/%{kernel_release}/kernel/drivers/bluetooth/*_cs.ko*
1194 /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
1195 /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/b1pcmcia.ko*
1196 /lib/modules/%{kernel_release}/kernel/drivers/staging/telephony/ixj_pcmcia.ko*
1198 /lib/modules/%{kernel_release}/kernel/drivers/ata/pata_pcmcia.ko*
1199 /lib/modules/%{kernel_release}/kernel/drivers/ide/ide-cs.ko*
1200 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/*_cs.ko*
1201 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/b43
1202 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/hostap/hostap_cs.ko*
1203 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/libertas/*_cs.ko*
1204 /lib/modules/%{kernel_release}/kernel/drivers/parport/parport_cs.ko*
1205 /lib/modules/%{kernel_release}/kernel/drivers/tty/serial/8250/serial_cs.ko*
1206 /lib/modules/%{kernel_release}/kernel/drivers/usb/host/sl811_cs.ko*
1211 %defattr(644,root,root,755)
1212 /lib/modules/%{kernel_release}/kernel/sound
1213 %exclude %dir /lib/modules/%{kernel_release}/kernel/sound
1214 %exclude /lib/modules/%{kernel_release}/kernel/sound/ac97_bus.ko*
1215 %exclude /lib/modules/%{kernel_release}/kernel/sound/sound*.ko*
1217 %exclude /lib/modules/%{kernel_release}/kernel/sound/oss
1220 /lib/modules/%{kernel_release}/kernel/drivers/usb/gadget/g_midi.ko*
1221 /lib/modules/%{kernel_release}/kernel/drivers/media/video/cx88/cx88-alsa.ko*
1222 /lib/modules/%{kernel_release}/kernel/drivers/media/video/em28xx/em28xx-alsa.ko*
1223 /lib/modules/%{kernel_release}/kernel/drivers/media/video/saa7134/saa7134-alsa.ko*
1228 %defattr(644,root,root,755)
1229 /lib/modules/%{kernel_release}/kernel/sound/oss
1233 %files headers -f files.headers_exclude_kbuild
1234 %defattr(644,root,root,755)
1235 %dir %{_kernelsrcdir}
1236 %{_kernelsrcdir}/include
1237 %dir %{_kernelsrcdir}/arch
1238 %dir %{_kernelsrcdir}/arch/[!K]*
1239 %{_kernelsrcdir}/arch/*/include
1240 %dir %{_kernelsrcdir}/security
1241 %dir %{_kernelsrcdir}/security/selinux
1242 %{_kernelsrcdir}/security/selinux/include
1243 %{_kernelsrcdir}/.config
1244 %{_kernelsrcdir}/Module.symvers
1246 %files module-build -f files.mb_include_modulebuild_and_dirs
1247 %defattr(644,root,root,755)
1249 %{_kernelsrcdir}/arch/powerpc/lib/crtsavres.*
1251 %exclude %dir %{_kernelsrcdir}/arch/um
1252 %{_kernelsrcdir}/arch/*/kernel/asm-offsets*
1253 %{_kernelsrcdir}/arch/*/kernel/sigframe*.h
1254 %{_kernelsrcdir}/drivers/lguest/lg.h
1255 %{_kernelsrcdir}/drivers/media/video/bt8xx/bttv.h
1256 %{_kernelsrcdir}/kernel/bounds.c
1257 %{_kernelsrcdir}/scripts/basic/*.c
1258 %attr(755,root,root) %{_kernelsrcdir}/scripts/kconfig/*.sh
1259 %{_kernelsrcdir}/scripts/kconfig/*.in
1260 %{_kernelsrcdir}/scripts/kconfig/*_shipped
1261 %{_kernelsrcdir}/scripts/kconfig/*.pl
1262 %{_kernelsrcdir}/scripts/kconfig/*.glade
1263 %{_kernelsrcdir}/scripts/kconfig/*.gperf
1264 %{_kernelsrcdir}/scripts/kconfig/*.cc
1265 %{_kernelsrcdir}/scripts/kconfig/*.y
1266 %{_kernelsrcdir}/scripts/kconfig/*.l
1267 %{_kernelsrcdir}/scripts/kconfig/[c-k]*.c
1268 %{_kernelsrcdir}/scripts/kconfig/[c-k]*.h
1269 %{_kernelsrcdir}/scripts/kconfig/l*.h
1270 %{_kernelsrcdir}/scripts/kconfig/[m-u]*.c
1271 %{_kernelsrcdir}/scripts/kconfig/[m-u]*.h
1272 %{_kernelsrcdir}/scripts/kconfig/lxdialog
1273 %{_kernelsrcdir}/scripts/mod/*.c
1274 %{_kernelsrcdir}/scripts/mod/[^e]*.h
1275 %attr(755,root,root) %{_kernelsrcdir}/scripts/mkcompile_h
1276 %{_kernelsrcdir}/scripts/mkmakefile
1277 %{_kernelsrcdir}/scripts/module-common.lds
1278 %attr(755,root,root) %{_kernelsrcdir}/scripts/setlocalversion
1279 %{_kernelsrcdir}/scripts/*.c
1280 %attr(755,root,root) %{_kernelsrcdir}/scripts/*.sh
1281 %{_kernelsrcdir}/scripts/selinux/genheaders/*.c
1282 %{_kernelsrcdir}/scripts/selinux/mdp/*.c
1283 %exclude %dir %{_kernelsrcdir}/security
1284 %exclude %dir %{_kernelsrcdir}/security/selinux
1288 %defattr(644,root,root,755)
1289 %dir %{_docdir}/%{name}-%{version}
1291 %{_docdir}/%{name}-%{version}/[!jkz]*
1292 %{_docdir}/%{name}-%{version}/[jkz]*.txt
1293 %{_docdir}/%{name}-%{version}/kbuild
1294 %{_docdir}/%{name}-%{version}/kdump
1295 %lang(ja) %{_docdir}/%{name}-%{version}/ja_JP
1296 %lang(ko) %{_docdir}/%{name}-%{version}/ko_KR
1297 %lang(zh_CN) %{_docdir}/%{name}-%{version}/zh_CN
1301 %files source -f files.source_exclude_modulebuild_and_dirs
1302 %defattr(644,root,root,755)
1303 %{_kernelsrcdir}/arch/*/[!Mik]*
1304 %{_kernelsrcdir}/arch/*/kernel/[!M]*
1305 %{_kernelsrcdir}/arch/ia64/install.sh
1306 %{_kernelsrcdir}/arch/m68k/ifpsp060/[!M]*
1307 %{_kernelsrcdir}/arch/m68k/ifpsp060/MISC
1308 %{_kernelsrcdir}/arch/m68k/install.sh
1309 %{_kernelsrcdir}/arch/parisc/install.sh
1310 %{_kernelsrcdir}/arch/x86/ia32/[!M]*
1311 %{_kernelsrcdir}/arch/ia64/kvm
1312 %{_kernelsrcdir}/arch/powerpc/kvm
1314 %exclude %{_kernelsrcdir}/arch/powerpc/lib/crtsavres.*
1316 %{_kernelsrcdir}/arch/s390/kvm
1317 %{_kernelsrcdir}/arch/x86/kvm
1318 %exclude %{_kernelsrcdir}/arch/*/kernel/asm-offsets*
1319 %exclude %{_kernelsrcdir}/arch/*/kernel/sigframe*.h
1320 %exclude %{_kernelsrcdir}/drivers/lguest/lg.h
1321 %exclude %{_kernelsrcdir}/drivers/media/video/bt8xx/bttv.h
1322 %{_kernelsrcdir}/block
1323 %{_kernelsrcdir}/crypto
1324 %{_kernelsrcdir}/drivers
1325 %{_kernelsrcdir}/firmware
1327 %{_kernelsrcdir}/init
1328 %{_kernelsrcdir}/ipc
1329 %{_kernelsrcdir}/kernel
1330 %exclude %{_kernelsrcdir}/kernel/bounds.c
1331 %{_kernelsrcdir}/lib
1333 %{_kernelsrcdir}/net
1334 %{_kernelsrcdir}/virt
1335 %{_kernelsrcdir}/samples
1336 %{_kernelsrcdir}/scripts/*
1337 %exclude %{_kernelsrcdir}/scripts/Kbuild.include
1338 %exclude %{_kernelsrcdir}/scripts/Makefile*
1339 %exclude %{_kernelsrcdir}/scripts/basic
1340 %exclude %{_kernelsrcdir}/scripts/kconfig
1341 %exclude %{_kernelsrcdir}/scripts/mkcompile_h
1342 %exclude %{_kernelsrcdir}/scripts/mkmakefile
1343 %exclude %{_kernelsrcdir}/scripts/mod
1344 %exclude %{_kernelsrcdir}/scripts/module-common.lds
1345 %exclude %{_kernelsrcdir}/scripts/setlocalversion
1346 %exclude %{_kernelsrcdir}/scripts/*.c
1347 %exclude %{_kernelsrcdir}/scripts/*.sh
1348 %exclude %dir %{_kernelsrcdir}/scripts/selinux
1349 %exclude %{_kernelsrcdir}/scripts/selinux/Makefile
1350 %exclude %dir %{_kernelsrcdir}/scripts/selinux/genheaders
1351 %exclude %{_kernelsrcdir}/scripts/selinux/genheaders/Makefile
1352 %exclude %{_kernelsrcdir}/scripts/selinux/genheaders/*.c
1353 %exclude %dir %{_kernelsrcdir}/scripts/selinux/mdp
1354 %exclude %{_kernelsrcdir}/scripts/selinux/mdp/Makefile
1355 %exclude %{_kernelsrcdir}/scripts/selinux/mdp/*.c
1356 %{_kernelsrcdir}/sound
1357 %{_kernelsrcdir}/security
1358 %exclude %{_kernelsrcdir}/security/selinux/include
1359 %{_kernelsrcdir}/tools/*
1360 %{_kernelsrcdir}/usr
1361 %{_kernelsrcdir}/COPYING
1362 %{_kernelsrcdir}/CREDITS
1363 %{_kernelsrcdir}/MAINTAINERS
1364 %{_kernelsrcdir}/README
1365 %{_kernelsrcdir}/REPORTING-BUGS