2 %bcond_without source # don't build kernel-vanilla-source package
3 %bcond_with verbose # verbose build (V=1)
5 %{?debug:%define with_verbose 1}
11 %define _enable_debug_packages 0
13 %define alt_kernel vanilla
15 # kernel release (used in filesystem and eventually in uname -r)
16 # modules will be looked from /lib/modules/%{kernel_release}
17 # _localversion is just that without version for "> localversion"
18 %define _localversion %{_rel}
19 %define kernel_release %{version}-%{alt_kernel}-%{_localversion}
21 Summary: The Linux kernel (the core of the Linux operating system)
22 Summary(de.UTF-8): Der Linux-Kernel (Kern des Linux-Betriebssystems)
23 Summary(et.UTF-8): Linuxi kernel (ehk operatsioonisüsteemi tuum)
24 Summary(fr.UTF-8): Le Kernel-Linux (La partie centrale du systeme)
25 Summary(pl.UTF-8): Jądro Linuksa
26 Name: kernel-%{alt_kernel}
27 Version: %{_basever}%{_postver}
32 Source0: http://www.kernel.org/pub/linux/kernel/v3.x/linux-%{_basever}.tar.bz2
33 # Source0-md5: 7ceb61f87c097fc17509844b71268935
34 %if "%{_postver}" != "%{nil}"
35 Source1: http://www.kernel.org/pub/linux/kernel/v3.x/patch-%{version}.bz2
36 # Source1-md5: 02adf3e0450969dec6219ca52ff2a68a
39 Source2: kernel-vanilla-autoconf.h
40 Source3: kernel-vanilla-config.h
41 Source4: kernel-vanilla-module-build.pl
43 Source10: kernel-vanilla-x86.config
44 Source11: kernel-vanilla-x86_64.config
46 Patch0: kernel-vanilla-small_fixes.patch
48 URL: http://www.kernel.org/
49 BuildRequires: binutils >= 3:2.18
50 BuildRequires: /sbin/depmod
51 BuildRequires: gcc >= 5:3.2
52 # for hostname command
53 BuildRequires: net-tools
54 BuildRequires: perl-base
55 BuildRequires: rpm-build >= 4.4.9-56
56 BuildRequires: rpmbuild(macros) >= 1.217
58 Requires(post): coreutils
59 Requires(post): geninitrd >= 10000-3
60 Requires(post): virtual(module-tools)
61 Requires: /sbin/depmod
63 Requires: geninitrd >= 10000-3
64 Requires: virtual(module-tools)
65 Obsoletes: kernel%{_alt_kernel}-firmware
66 Obsoletes: kernel%{_alt_kernel}-isdn-mISDN
67 Obsoletes: kernel-misc-acer_acpi
68 Obsoletes: kernel-misc-fuse
69 Obsoletes: kernel-misc-uvc
70 Obsoletes: kernel-modules
71 Obsoletes: kernel-net-ar81
72 Obsoletes: kernel-net-hostap
73 Obsoletes: kernel-net-ieee80211
74 Obsoletes: kernel-net-ipp2p
76 Conflicts: e2fsprogs < 1.29
77 Conflicts: isdn4k-utils < 3.1pre1
78 Conflicts: jfsutils < 1.1.3
79 Conflicts: nfs-utils < 1.0.5
80 Conflicts: oprofile < 0.9
81 Conflicts: ppp < 1:2.4.0
82 Conflicts: procps < 3.2.0
83 Conflicts: quota-tools < 3.09
84 Conflicts: reiserfsprogs < 3.6.3
85 Conflicts: udev < 1:071
86 Conflicts: util-linux < 2.10o
87 Conflicts: xfsprogs < 2.6.0
88 ExclusiveArch: i586 i686 x86_64
90 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
92 %ifarch i586 i686 x86_64
93 %define target_arch_dir x86
95 %define target_arch_dir %{_target_base_arch}
99 %define kernel_config x86
101 %define kernel_config %{_target_base_arch}
104 %define defconfig arch/%{target_arch_dir}/defconfig
106 # No ELF objects there to strip (skips processing 27k files)
107 %define _noautostrip .*%{_kernelsrcdir}/.*
108 %define _noautochrpath .*%{_kernelsrcdir}/.*
110 %define initrd_dir /boot
112 %define _kernelsrcdir /usr/src/linux-%{version}-%{alt_kernel}
114 %if "%{_target_base_arch}" != "%{_arch}"
115 %define CrossOpts ARCH=%{_target_base_arch} CROSS_COMPILE=%{_target_cpu}-pld-linux-
116 %define DepMod /bin/true
118 %if "%{_arch}" == "x86_64" && "%{_target_base_arch}" == "i386"
119 %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
120 %define DepMod /sbin/depmod
124 %define CrossOpts ARCH=%{_target_base_arch} CC="%{__cc}"
125 %define DepMod /sbin/depmod
129 This package contains the Linux kernel that is used to boot and run
130 your system. It contains few device drivers for specific hardware.
131 Most hardware is instead supported by modules loaded after booting.
133 %description -l de.UTF-8
134 Das Kernel-Paket enthält den Linux-Kernel (vmlinuz), den Kern des
135 Linux-Betriebssystems. Der Kernel ist für grundliegende
136 Systemfunktionen verantwortlich: Speicherreservierung,
137 Prozeß-Management, Geräte Ein- und Ausgaben, usw.
139 %description -l fr.UTF-8
140 Le package kernel contient le kernel linux (vmlinuz), la partie
141 centrale d'un système d'exploitation Linux. Le noyau traite les
142 fonctions basiques d'un système d'exploitation: allocation mémoire,
143 allocation de process, entrée/sortie de peripheriques, etc.
145 %description -l pl.UTF-8
146 Pakiet zawiera jądro Linuksa niezbędne do prawidłowego działania
147 Twojego komputera. Zawiera w sobie sterowniki do sprzętu znajdującego
148 się w komputerze, takiego jak sterowniki dysków itp.
151 Summary: vmlinux - uncompressed kernel image
152 Summary(de.UTF-8): vmlinux - dekompressiertes Kernel Bild
153 Summary(pl.UTF-8): vmlinux - rozpakowany obraz jądra
155 Obsoletes: kernel-smp-vmlinux
158 vmlinux - uncompressed kernel image.
160 %description vmlinux -l de.UTF-8
161 vmlinux - dekompressiertes Kernel Bild.
163 %description vmlinux -l pl.UTF-8
164 vmlinux - rozpakowany obraz jądra.
167 Summary: DRM kernel modules
168 Summary(de.UTF-8): DRM Kernel Treiber
169 Summary(pl.UTF-8): Sterowniki DRM
171 Requires(postun): %{name} = %{epoch}:%{version}-%{release}
172 Requires: %{name} = %{epoch}:%{version}-%{release}
173 Obsoletes: kernel-smp-drm
179 %description drm -l de.UTF-8
182 %description drm -l pl.UTF-8
186 Summary: PCMCIA modules
187 Summary(de.UTF-8): PCMCIA Module
188 Summary(pl.UTF-8): Moduły PCMCIA
190 Requires(postun): %{name} = %{epoch}:%{version}-%{release}
191 Requires: %{name} = %{epoch}:%{version}-%{release}
192 Obsoletes: kernel-smp-pcmcia
193 Conflicts: pcmcia-cs < 3.1.21
194 Conflicts: pcmciautils < 004
200 %description pcmcia -l de.UTF-8
203 %description pcmcia -l pl.UTF-8
207 Summary: ALSA kernel modules
208 Summary(de.UTF-8): ALSA Kernel Module
209 Summary(pl.UTF-8): Sterowniki dźwięku ALSA
211 Requires(postun): %{name} = %{epoch}:%{version}-%{release}
212 Requires: %{name} = %{epoch}:%{version}-%{release}
213 Obsoletes: kernel-smp-sound-alsa
216 %description sound-alsa
217 ALSA (Advanced Linux Sound Architecture) sound drivers.
219 %description sound-alsa -l de.UTF-8
220 ALSA (Advanced Linux Sound Architecture) Sound-Treiber.
222 %description sound-alsa -l pl.UTF-8
223 Sterowniki dźwięku ALSA (Advanced Linux Sound Architecture).
226 Summary: OSS kernel modules
227 Summary(de.UTF-8): OSS Kernel Module
228 Summary(pl.UTF-8): Sterowniki dźwięku OSS
230 Requires(postun): %{name} = %{epoch}:%{version}-%{release}
231 Requires: %{name} = %{epoch}:%{version}-%{release}
232 Obsoletes: kernel-smp-sound-oss
235 %description sound-oss
236 OSS (Open Sound System) drivers.
238 %description sound-oss -l de.UTF-8
239 OSS (Open Sound System) Treiber.
241 %description sound-oss -l pl.UTF-8
242 Sterowniki dźwięku OSS (Open Sound System).
245 Summary: Header files for the Linux kernel
246 Summary(de.UTF-8): Header Dateien für den Linux-Kernel
247 Summary(pl.UTF-8): Pliki nagłówkowe jądra Linuksa
248 Group: Development/Building
252 These are the C header files for the Linux kernel, which define
253 structures and constants that are needed when rebuilding the kernel or
254 building kernel modules.
256 %description headers -l de.UTF-8
257 Dies sind die C Header Dateien für den Linux-Kernel, die definierte
258 Strukturen und Konstante beinhalten, die beim rekompilieren des
259 Kernels oder bei Kernel Modul kompilationen gebraucht werden.
261 %description headers -l pl.UTF-8
262 Pakiet zawiera pliki nagłówkowe jądra, niezbędne do rekompilacji jądra
263 oraz budowania modułów jądra.
265 %package module-build
266 Summary: Development files for building kernel modules
267 Summary(de.UTF-8): Development Dateien die beim Kernel Modul kompilationen gebraucht werden
268 Summary(pl.UTF-8): Pliki służące do budowania modułów jądra
269 Group: Development/Building
270 Requires: %{name}-headers = %{epoch}:%{version}-%{release}
271 Conflicts: rpmbuild(macros) < 1.321
274 %description module-build
275 Development files from kernel source tree needed to build Linux kernel
276 modules from external packages.
278 %description module-build -l de.UTF-8
279 Development Dateien des Linux-Kernels die beim kompilieren externer
280 Kernel Module gebraucht werden.
282 %description module-build -l pl.UTF-8
283 Pliki ze drzewa źródeł jądra potrzebne do budowania modułów jądra
284 Linuksa z zewnętrznych pakietów.
287 Summary: Kernel source tree
288 Summary(de.UTF-8): Der Kernel Quelltext
289 Summary(pl.UTF-8): Kod źródłowy jądra Linuksa
290 Group: Development/Building
291 Requires: %{name}-module-build = %{epoch}:%{version}-%{release}
295 This is the source code for the Linux kernel. You can build a custom
296 kernel that is better tuned to your particular hardware.
298 %description source -l de.UTF-8
299 Das Kernel-Source-Paket enthält den source code (C/Assembler-Code) des
300 Linux-Kernels. Die Source-Dateien werden gebraucht, um viele
301 C-Programme zu kompilieren, da sie auf Konstanten zurückgreifen, die
302 im Kernel-Source definiert sind. Die Source-Dateien können auch
303 benutzt werden, um einen Kernel zu kompilieren, der besser auf Ihre
304 Hardware ausgerichtet ist.
306 %description source -l fr.UTF-8
307 Le package pour le kernel-source contient le code source pour le noyau
308 linux. Ces sources sont nécessaires pour compiler la plupart des
309 programmes C, car il dépend de constantes définies dans le code
310 source. Les sources peuvent être aussi utilisée pour compiler un noyau
311 personnalisé pour avoir de meilleures performances sur des matériels
314 %description source -l pl.UTF-8
315 Pakiet zawiera kod źródłowy jądra systemu.
318 Summary: Kernel documentation
319 Summary(de.UTF-8): Kernel Dokumentation
320 Summary(pl.UTF-8): Dokumentacja do jądra Linuksa
325 This is the documentation for the Linux kernel, as found in
326 /usr/src/linux/Documentation directory.
328 %description doc -l de.UTF-8
329 Dies ist die Kernel Dokumentation wie sie im 'Documentation'
330 Verzeichniss vorgefunden werden kann.
332 %description doc -l pl.UTF-8
333 Pakiet zawiera dokumentację do jądra Linuksa pochodzącą z katalogu
334 /usr/src/linux/Documentation.
337 %setup -q -n linux-%{_basever}
339 %if "%{_postver}" != "%{nil}"
340 %{__bzip2} -dc %{SOURCE1} | patch -p1 -s
345 # Fix EXTRAVERSION in main Makefile
346 sed -i 's#EXTRAVERSION =.*#EXTRAVERSION = %{_postver}-%{alt_kernel}#g' Makefile
348 # cleanup backups after patching
349 find '(' -name '*~' -o -name '*.orig' -o -name '.gitignore' ')' -print0 | xargs -0 -r -l512 rm -f
352 TuneUpConfigForIX86 () {
356 sed -i "s:# CONFIG_HIGHMEM4G is not set:CONFIG_HIGHMEM4G=y:" $1
357 sed -i "s:CONFIG_HIGHMEM64G=y:# CONFIG_HIGHMEM64G is not set:" $1
358 sed -i ":CONFIG_X86_PAE=y:d" $1
360 sed -i 's:CONFIG_M586=y# CONFIG_M586 is not set::' $1
361 sed -i 's:# CONFIG_M686 is not set:CONFIG_M686=y:' $1
369 # is this a special kernel we want to build?
370 Config="%{kernel_config}"
371 KernelVer=%{kernel_release}
372 echo "Building config file using $Config.conf..."
373 cat $RPM_SOURCE_DIR/kernel-vanilla-$Config.config > %{defconfig}
374 TuneUpConfigForIX86 %{defconfig}
376 %{?debug:sed -i "s:# CONFIG_DEBUG_SLAB is not set:CONFIG_DEBUG_SLAB=y:" %{defconfig}}
377 %{?debug:sed -i "s:# CONFIG_DEBUG_PREEMPT is not set:CONFIG_DEBUG_PREEMPT=y:" %{defconfig}}
378 %{?debug:sed -i "s:# CONFIG_RT_DEADLOCK_DETECT is not set:CONFIG_RT_DEADLOCK_DETECT=y:" %{defconfig}}
384 echo "Building kernel $1 ..."
385 %{__make} %CrossOpts mrproper \
386 RCS_FIND_IGNORE='-name build-done -prune -o'
387 ln -sf %{defconfig} .config
389 %{__make} %CrossOpts clean \
390 RCS_FIND_IGNORE='-name build-done -prune -o'
391 %{__make} %CrossOpts include/linux/version.h \
394 %{__make} %CrossOpts scripts/mkcompile_h \
397 %{__make} %CrossOpts \
402 Config="%{kernel_config}"
403 KernelVer=%{kernel_release}
405 mkdir -p $KERNEL_INSTALL_DIR/boot
406 install System.map $KERNEL_INSTALL_DIR/boot/System.map-$KernelVer
407 install arch/x86/boot/bzImage $KERNEL_INSTALL_DIR/boot/vmlinuz-$KernelVer
408 install vmlinux $KERNEL_INSTALL_DIR/boot/vmlinux-$KernelVer
410 %{__make} %CrossOpts modules_install firmware_install \
411 %{?with_verbose:V=1} \
413 INSTALL_MOD_PATH=$KERNEL_INSTALL_DIR \
414 INSTALL_FW_PATH=$KERNEL_INSTALL_DIR/lib/firmware/$KernelVer \
415 KERNELRELEASE=$KernelVer
417 # You'd probabelly want to make it somewhat different
418 install -d $KERNEL_INSTALL_DIR%{_kernelsrcdir}
419 install Module.symvers $KERNEL_INSTALL_DIR%{_kernelsrcdir}/Module.symvers-dist
421 echo "CHECKING DEPENDENCIES FOR KERNEL MODULES"
422 if [ %DepMod = /sbin/depmod ]; then
423 /sbin/depmod --basedir $KERNEL_INSTALL_DIR -ae -F $KERNEL_INSTALL_DIR/boot/System.map-$KernelVer -r $KernelVer || :
425 touch $KERNEL_INSTALL_DIR/lib/modules/$KernelVer/modules.dep
426 echo "KERNEL RELEASE $KernelVer DONE"
429 KERNEL_BUILD_DIR=`pwd`
430 echo "-%{_localversion}" > localversion
432 KERNEL_INSTALL_DIR="$KERNEL_BUILD_DIR/build-done/kernel"
433 rm -rf $KERNEL_INSTALL_DIR
435 ln -sf %{defconfig} .config
437 install -d $KERNEL_INSTALL_DIR%{_kernelsrcdir}/include/generated
438 install -d $KERNEL_INSTALL_DIR%{_kernelsrcdir}/include/linux
439 install include/generated/autoconf.h \
440 $KERNEL_INSTALL_DIR%{_kernelsrcdir}/include/generated/autoconf-dist.h
441 install include/generated/utsrelease.h \
442 $KERNEL_INSTALL_DIR%{_kernelsrcdir}/include/generated/
443 install include/linux/version.h \
444 $KERNEL_INSTALL_DIR%{_kernelsrcdir}/include/linux/
446 $KERNEL_INSTALL_DIR%{_kernelsrcdir}/config-dist
449 cp scripts/mkcompile_h{,.save}
452 rm -rf $RPM_BUILD_ROOT
455 export DEPMOD=%DepMod
457 install -d $RPM_BUILD_ROOT%{_kernelsrcdir}
458 install -d $RPM_BUILD_ROOT%{_sysconfdir}/modprobe.d/%{kernel_release}
460 # test if we can hardlink -- %{_builddir} and $RPM_BUILD_ROOT on same partition
461 if cp -al COPYING $RPM_BUILD_ROOT/COPYING 2>/dev/null; then
463 rm -f $RPM_BUILD_ROOT/COPYING
466 KERNEL_BUILD_DIR=`pwd`
468 cp -a$l $KERNEL_BUILD_DIR/build-done/kernel/* $RPM_BUILD_ROOT
470 if [ -e $RPM_BUILD_ROOT/lib/modules/%{kernel_release} ] ; then
471 rm -f $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/build
472 ln -sf %{_kernelsrcdir} $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/build
473 install -d $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/{cluster,misc}
476 find . -maxdepth 1 ! -name "build-done" ! -name "." -exec cp -a$l "{}" "$RPM_BUILD_ROOT%{_kernelsrcdir}/" ";"
478 cd $RPM_BUILD_ROOT%{_kernelsrcdir}
480 %{__make} %CrossOpts mrproper archclean \
481 RCS_FIND_IGNORE='-name build-done -prune -o'
483 cp -Rdp$l $KERNEL_BUILD_DIR/include/linux/* \
484 $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux
486 %{__make} %CrossOpts mrproper
487 install -d $RPM_BUILD_ROOT%{_kernelsrcdir}/include/generated
488 install -d $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux
489 install $KERNEL_BUILD_DIR/build-done/kernel%{_kernelsrcdir}/include/linux/version.h \
490 $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux
491 install $KERNEL_BUILD_DIR/build-done/kernel%{_kernelsrcdir}/include/generated/autoconf-dist.h \
492 $RPM_BUILD_ROOT%{_kernelsrcdir}/include/generated
493 install $KERNEL_BUILD_DIR/build-done/kernel%{_kernelsrcdir}/include/generated/utsrelease.h \
494 $RPM_BUILD_ROOT%{_kernelsrcdir}/include/generated
495 install $KERNEL_BUILD_DIR/build-done/kernel%{_kernelsrcdir}/config-dist \
496 $RPM_BUILD_ROOT%{_kernelsrcdir}
497 install %{SOURCE2} $RPM_BUILD_ROOT%{_kernelsrcdir}/include/generated/autoconf.h
498 install %{SOURCE3} $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux/config.h
500 # collect module-build files and directories
501 perl %{SOURCE4} %{_kernelsrcdir} $KERNEL_BUILD_DIR
504 touch $RPM_BUILD_ROOT%{initrd_dir}/initrd-%{kernel_release}.gz
506 # rpm obeys filelinkto checks for ghosted symlinks, convert to files
507 rm -f $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/{build,source}
508 touch $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/{build,source}
510 # remove unnecessary dir with dead symlink
511 rm -rf $RPM_BUILD_ROOT/arch/i386
514 rm -rf $RPM_BUILD_ROOT
517 if [ -x /sbin/new-kernel-pkg ]; then
518 /sbin/new-kernel-pkg --remove %{kernel_release}
522 mv -f /boot/vmlinuz-%{alt_kernel} /boot/vmlinuz-%{alt_kernel}.old 2> /dev/null > /dev/null
523 ln -sf vmlinuz-%{kernel_release} /boot/vmlinuz-%{alt_kernel}
524 mv -f /boot/System.map-%{alt_kernel} /boot/System.map-%{alt_kernel}.old 2> /dev/null > /dev/null
525 ln -sf System.map-%{kernel_release} /boot/System.map-%{alt_kernel}
527 %depmod %{kernel_release}
529 /sbin/geninitrd -f --initrdfs=rom %{initrd_dir}/initrd-%{kernel_release}.gz %{kernel_release}
530 mv -f %{initrd_dir}/initrd-%{alt_kernel} %{initrd_dir}/initrd-%{alt_kernel}.old 2> /dev/null > /dev/null
531 ln -sf initrd-%{kernel_release}.gz %{initrd_dir}/initrd-%{alt_kernel}
533 if [ -x /sbin/new-kernel-pkg ]; then
534 if [ -f /etc/pld-release ]; then
535 title=$(sed 's/^[0-9.]\+ //' < /etc/pld-release)
540 title="$title %{alt_kernel}"
542 /sbin/new-kernel-pkg --initrdfile=%{initrd_dir}/initrd-%{kernel_release}.gz --install %{kernel_release} --banner "$title"
543 elif [ -x /sbin/rc-boot ]; then
544 /sbin/rc-boot 1>&2 || :
548 mv -f /boot/vmlinux-%{alt_kernel} /boot/vmlinux-%{alt_kernel}.old 2> /dev/null > /dev/null
549 ln -sf vmlinux-%{kernel_release} /boot/vmlinux-%{alt_kernel}
552 %depmod %{kernel_release}
555 %depmod %{kernel_release}
558 %depmod %{kernel_release}
561 %depmod %{kernel_release}
564 %depmod %{kernel_release}
567 %depmod %{kernel_release}
570 %depmod %{kernel_release}
573 %depmod %{kernel_release}
576 ln -snf %{basename:%{_kernelsrcdir}} %{_prefix}/src/linux-%{alt_kernel}
579 if [ "$1" = "0" ]; then
580 if [ -L %{_prefix}/src/linux-%{alt_kernel} ]; then
581 if [ "$(readlink %{_prefix}/src/linux-%{alt_kernel})" = "linux-%{version}-%{alt_kernel}" ]; then
582 rm -f %{_prefix}/src/linux-%{alt_kernel}
587 %triggerin module-build -- %{name} = %{epoch}:%{version}-%{release}
588 ln -sfn %{_kernelsrcdir} /lib/modules/%{kernel_release}/build
589 ln -sfn %{_kernelsrcdir} /lib/modules/%{kernel_release}/source
591 %triggerun module-build -- %{name} = %{epoch}:%{version}-%{release}
592 if [ "$1" = 0 ]; then
593 rm -f /lib/modules/%{kernel_release}/{build,source}
597 %defattr(644,root,root,755)
598 /boot/vmlinuz-%{kernel_release}
599 /boot/System.map-%{kernel_release}
600 %ghost %{initrd_dir}/initrd-%{kernel_release}.gz
601 /lib/firmware/%{kernel_release}
602 %dir /lib/modules/%{kernel_release}
603 %dir /lib/modules/%{kernel_release}/kernel
604 /lib/modules/%{kernel_release}/kernel/arch
605 /lib/modules/%{kernel_release}/kernel/crypto
606 /lib/modules/%{kernel_release}/kernel/drivers
608 %exclude /lib/modules/%{kernel_release}/kernel/drivers/gpu/drm
610 /lib/modules/%{kernel_release}/kernel/fs
611 # this directory will be removed after disabling rcutorture mod. in 2.6.20.
612 /lib/modules/%{kernel_release}/kernel/kernel
613 /lib/modules/%{kernel_release}/kernel/lib
616 /lib/modules/%{kernel_release}/kernel/mm
619 /lib/modules/%{kernel_release}/kernel/net
621 %dir /lib/modules/%{kernel_release}/kernel/sound
622 /lib/modules/%{kernel_release}/kernel/sound/ac97_bus.ko*
623 /lib/modules/%{kernel_release}/kernel/sound/sound*.ko*
624 %exclude /lib/modules/%{kernel_release}/kernel/drivers/media/video/cx88/cx88-alsa.ko*
625 %exclude /lib/modules/%{kernel_release}/kernel/drivers/media/video/em28xx/em28xx-alsa.ko*
626 %exclude /lib/modules/%{kernel_release}/kernel/drivers/media/video/saa7134/saa7134-alsa.ko*
628 %dir /lib/modules/%{kernel_release}/misc
630 %dir /lib/modules/%{kernel_release}/kernel/drivers/pcmcia
631 /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/pcmcia*ko*
632 %exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/[!p]*
633 %exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/pd6729.ko*
634 %exclude /lib/modules/%{kernel_release}/kernel/drivers/*/pcmcia
635 %exclude /lib/modules/%{kernel_release}/kernel/drivers/ata/pata_pcmcia.ko*
636 %exclude /lib/modules/%{kernel_release}/kernel/drivers/bluetooth/*_cs.ko*
637 %exclude /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
638 %exclude /lib/modules/%{kernel_release}/kernel/drivers/telephony/ixj_pcmcia.ko*
639 %exclude /lib/modules/%{kernel_release}/kernel/drivers/usb/gadget/g_midi.ko*
640 %exclude /lib/modules/%{kernel_release}/kernel/drivers/ide/ide-cs.ko*
641 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/*_cs.ko*
642 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/b43
643 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/hostap/hostap_cs.ko*
644 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/libertas/*_cs.ko*
645 %exclude /lib/modules/%{kernel_release}/kernel/drivers/parport/parport_cs.ko*
646 %exclude /lib/modules/%{kernel_release}/kernel/drivers/usb/host/sl811_cs.ko*
648 /lib/modules/%{kernel_release}/kernel/security
650 %ghost /lib/modules/%{kernel_release}/modules.*
651 # symlinks pointing to kernelsrcdir
652 %ghost /lib/modules/%{kernel_release}/build
653 %ghost /lib/modules/%{kernel_release}/source
654 %dir %{_sysconfdir}/modprobe.d/%{kernel_release}
657 %defattr(644,root,root,755)
658 /boot/vmlinux-%{kernel_release}
661 %defattr(644,root,root,755)
662 /lib/modules/%{kernel_release}/kernel/drivers/gpu/drm
665 %defattr(644,root,root,755)
666 %exclude /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/pcmcia*ko*
667 /lib/modules/%{kernel_release}/kernel/drivers/pcmcia/*ko*
668 /lib/modules/%{kernel_release}/kernel/drivers/*/pcmcia
669 /lib/modules/%{kernel_release}/kernel/drivers/bluetooth/*_cs.ko*
670 /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
671 /lib/modules/%{kernel_release}/kernel/drivers/telephony/ixj_pcmcia.ko*
672 /lib/modules/%{kernel_release}/kernel/drivers/ata/pata_pcmcia.ko*
673 /lib/modules/%{kernel_release}/kernel/drivers/ide/ide-cs.ko*
674 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/*_cs.ko*
675 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/b43
676 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/hostap/hostap_cs.ko*
677 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/libertas/*_cs.ko*
678 /lib/modules/%{kernel_release}/kernel/drivers/parport/parport_cs.ko*
679 /lib/modules/%{kernel_release}/kernel/drivers/usb/host/sl811_cs.ko*
682 %defattr(644,root,root,755)
683 /lib/modules/%{kernel_release}/kernel/sound
684 %exclude %dir /lib/modules/%{kernel_release}/kernel/sound
685 %exclude /lib/modules/%{kernel_release}/kernel/sound/ac97_bus.ko*
686 %exclude /lib/modules/%{kernel_release}/kernel/sound/sound*.ko*
687 %exclude /lib/modules/%{kernel_release}/kernel/sound/oss
688 /lib/modules/%{kernel_release}/kernel/drivers/usb/gadget/g_midi.ko*
689 /lib/modules/%{kernel_release}/kernel/drivers/media/video/cx88/cx88-alsa.ko*
690 /lib/modules/%{kernel_release}/kernel/drivers/media/video/em28xx/em28xx-alsa.ko*
691 /lib/modules/%{kernel_release}/kernel/drivers/media/video/saa7134/saa7134-alsa.ko*
694 %defattr(644,root,root,755)
695 /lib/modules/%{kernel_release}/kernel/sound/oss
698 %defattr(644,root,root,755)
699 %dir %{_kernelsrcdir}
700 %{_kernelsrcdir}/include
701 %dir %{_kernelsrcdir}/arch
702 %dir %{_kernelsrcdir}/arch/[!K]*
703 %{_kernelsrcdir}/arch/*/include
704 %dir %{_kernelsrcdir}/security
705 %dir %{_kernelsrcdir}/security/selinux
706 %{_kernelsrcdir}/security/selinux/include
707 %{_kernelsrcdir}/config-dist
708 %{_kernelsrcdir}/Module.symvers-dist
710 %files module-build -f aux_files
711 %defattr(644,root,root,755)
712 # symlinks pointint to kernelsrcdir
713 %dir /lib/modules/%{kernel_release}
714 /lib/modules/%{kernel_release}/build
715 %{_kernelsrcdir}/Kbuild
716 %{_kernelsrcdir}/localversion
717 %{_kernelsrcdir}/arch/*/kernel/asm-offsets*
718 %{_kernelsrcdir}/arch/*/kernel/sigframe*.h
719 %{_kernelsrcdir}/drivers/lguest/lg.h
720 %{_kernelsrcdir}/kernel/bounds.c
721 %dir %{_kernelsrcdir}/scripts
722 %dir %{_kernelsrcdir}/scripts/kconfig
723 %{_kernelsrcdir}/scripts/Kbuild.include
724 %{_kernelsrcdir}/scripts/Makefile*
725 %{_kernelsrcdir}/scripts/basic
726 %{_kernelsrcdir}/scripts/mkmakefile
727 %{_kernelsrcdir}/scripts/mod
728 %{_kernelsrcdir}/scripts/module-common.lds
729 %{_kernelsrcdir}/scripts/setlocalversion
730 %{_kernelsrcdir}/scripts/*.c
731 %{_kernelsrcdir}/scripts/*.sh
732 %{_kernelsrcdir}/scripts/kconfig/*
733 %{_kernelsrcdir}/scripts/mkcompile_h
734 %dir %{_kernelsrcdir}/scripts/selinux
735 %{_kernelsrcdir}/scripts/selinux/Makefile
736 %dir %{_kernelsrcdir}/scripts/selinux/mdp
737 %dir %{_kernelsrcdir}/scripts/selinux/genheaders
738 %{_kernelsrcdir}/scripts/selinux/mdp/Makefile
739 %{_kernelsrcdir}/scripts/selinux/mdp/*.c
740 %{_kernelsrcdir}/scripts/selinux/genheaders/Makefile
741 %{_kernelsrcdir}/scripts/selinux/genheaders/*.c
744 %defattr(644,root,root,755)
745 %dir %{_kernelsrcdir}
746 %{_kernelsrcdir}/Documentation
749 %files source -f aux_files_exc
750 %defattr(644,root,root,755)
751 %{_kernelsrcdir}/arch/*/[!Mk]*
752 %{_kernelsrcdir}/arch/*/kernel/[!M]*
753 %{_kernelsrcdir}/arch/ia64/kvm
754 %{_kernelsrcdir}/arch/powerpc/kvm
755 %{_kernelsrcdir}/arch/s390/kvm
756 %{_kernelsrcdir}/arch/x86/kvm
757 %exclude %{_kernelsrcdir}/arch/*/kernel/asm-offsets*
758 %exclude %{_kernelsrcdir}/arch/*/kernel/sigframe*.h
759 %exclude %{_kernelsrcdir}/drivers/lguest/lg.h
760 %{_kernelsrcdir}/block
761 %{_kernelsrcdir}/crypto
762 %{_kernelsrcdir}/drivers
763 %{_kernelsrcdir}/firmware
765 %{_kernelsrcdir}/init
767 %{_kernelsrcdir}/kernel
768 %exclude %{_kernelsrcdir}/kernel/bounds.c
772 %{_kernelsrcdir}/samples
773 %{_kernelsrcdir}/scripts/*
774 %exclude %{_kernelsrcdir}/scripts/Kbuild.include
775 %exclude %{_kernelsrcdir}/scripts/Makefile*
776 %exclude %{_kernelsrcdir}/scripts/basic
777 %exclude %{_kernelsrcdir}/scripts/kconfig
778 %exclude %{_kernelsrcdir}/scripts/mkmakefile
779 %exclude %{_kernelsrcdir}/scripts/mod
780 %exclude %{_kernelsrcdir}/scripts/setlocalversion
781 %exclude %{_kernelsrcdir}/scripts/*.c
782 %exclude %{_kernelsrcdir}/scripts/*.sh
783 %{_kernelsrcdir}/sound
784 %{_kernelsrcdir}/security
785 %{_kernelsrcdir}/tools
787 %{_kernelsrcdir}/virt
788 %{_kernelsrcdir}/COPYING
789 %{_kernelsrcdir}/CREDITS
790 %{_kernelsrcdir}/MAINTAINERS
791 %{_kernelsrcdir}/README
792 %{_kernelsrcdir}/REPORTING-BUGS
793 %{_kernelsrcdir}/.mailmap