]> TLD Linux GIT Repositories - packages/kernel.git/blobdiff - kernel-vanilla.spec
- updated to 3.8.8, NFY
[packages/kernel.git] / kernel-vanilla.spec
index 6ccb99f2c40978b4081b9e221e100e020e1a13e4..0912ce5905a4bec201cdebd918073f0ae1c57b3e 100644 (file)
@@ -4,14 +4,9 @@
 
 %{?debug:%define with_verbose 1}
 
-%define                have_drm        1
-%define                have_oss        1
-%define                have_sound      1
-%define                have_isa        1
-
-%define                _basever                3.2
-%define                _postver                .4
-%define                _rel                    0.1
+%define                _basever                3.8
+%define                _postver                .8
+%define                _rel                    1
 
 %define                _enable_debug_packages                  0
 
@@ -34,16 +29,17 @@ Release:    %{_rel}
 Epoch:         3
 License:       GPL v2
 Group:         Base/Kernel
-Source0:       http://www.kernel.org/pub/linux/kernel/v3.x/linux-%{_basever}.tar.bz2
-# Source0-md5: 7ceb61f87c097fc17509844b71268935
+Source0:       http://www.kernel.org/pub/linux/kernel/v3.x/linux-%{_basever}.tar.xz
+# Source0-md5: 1c738edfc54e7c65faeb90c436104e2f
 %if "%{_postver}" != "%{nil}"
 Source1:       http://www.kernel.org/pub/linux/kernel/v3.x/patch-%{version}.bz2
-# Source1-md5: 02adf3e0450969dec6219ca52ff2a68a
+# Source1-md5: 95224572ecb1f4c7089683c1f06ef2b4
 %endif
 
 Source2:       kernel-vanilla-autoconf.h
 Source3:       kernel-vanilla-config.h
 Source4:       kernel-vanilla-module-build.pl
+Source5:       kernel.sysconfig
 
 Source10:      kernel-vanilla-x86.config
 Source11:      kernel-vanilla-x86_64.config
@@ -61,12 +57,12 @@ BuildRequires:      rpm-build >= 4.4.9-56
 BuildRequires: rpmbuild(macros) >= 1.217
 Autoreqprov:   no
 Requires(post):        coreutils
-Requires(post):        geninitrd >= 2.57
-Requires(post):        module-init-tools >= 0.9.9
+Requires(post):        geninitrd >= 12639-1
+Requires(post):        virtual(module-tools)
 Requires:      /sbin/depmod
 Requires:      coreutils
-Requires:      geninitrd >= 2.57
-Requires:      module-init-tools >= 0.9.9
+Requires:      geninitrd >= 12639-1
+Requires:      virtual(module-tools)
 Obsoletes:     kernel%{_alt_kernel}-firmware
 Obsoletes:     kernel%{_alt_kernel}-isdn-mISDN
 Obsoletes:     kernel-misc-acer_acpi
@@ -81,7 +77,7 @@ Obsoletes:    kernel-smp
 Conflicts:     e2fsprogs < 1.29
 Conflicts:     isdn4k-utils < 3.1pre1
 Conflicts:     jfsutils < 1.1.3
-Conflicts:     module-init-tools < 0.9.10
+Conflicts:     module-init-tools < 3.16
 Conflicts:     nfs-utils < 1.0.5
 Conflicts:     oprofile < 0.9
 Conflicts:     ppp < 1:2.4.0
@@ -91,17 +87,17 @@ Conflicts:  reiserfsprogs < 3.6.3
 Conflicts:     udev < 1:071
 Conflicts:     util-linux < 2.10o
 Conflicts:     xfsprogs < 2.6.0
-ExclusiveArch: i586 i686 x86_64
+ExclusiveArch: i686 x86_64
 ExclusiveOS:   Linux
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
-%ifarch i586 i686 x86_64
+%ifarch i686 x86_64
 %define                target_arch_dir         x86
 %else
 %define                target_arch_dir         %{_target_base_arch}
 %endif
 
-%ifarch i586 i686
+%ifarch i686
 %define                kernel_config           x86
 %else
 %define                kernel_config           %{_target_base_arch}
@@ -118,7 +114,7 @@ BuildRoot:  %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 %define                _kernelsrcdir   /usr/src/linux-%{version}-%{alt_kernel}
 
 %if "%{_target_base_arch}" != "%{_arch}"
-       %define CrossOpts ARCH=%{_target_base_arch} CROSS_COMPILE=%{_target_cpu}-pld-linux-
+       %define CrossOpts ARCH=%{_target_base_arch} CROSS_COMPILE=%{_target_cpu}-tld-linux-
        %define DepMod /bin/true
 
        %if "%{_arch}" == "x86_64" && "%{_target_base_arch}" == "i386"
@@ -131,38 +127,28 @@ BuildRoot:        %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
        %define DepMod /sbin/depmod
 %endif
 
-%define Features %(echo "%{__features}" | sed '/^$/d')
-
 %description
 This package contains the Linux kernel that is used to boot and run
 your system. It contains few device drivers for specific hardware.
 Most hardware is instead supported by modules loaded after booting.
 
-%{Features}
-
 %description -l de.UTF-8
 Das Kernel-Paket enthält den Linux-Kernel (vmlinuz), den Kern des
 Linux-Betriebssystems. Der Kernel ist für grundliegende
 Systemfunktionen verantwortlich: Speicherreservierung,
 Prozeß-Management, Geräte Ein- und Ausgaben, usw.
 
-%{Features}
-
 %description -l fr.UTF-8
 Le package kernel contient le kernel linux (vmlinuz), la partie
 centrale d'un système d'exploitation Linux. Le noyau traite les
 fonctions basiques d'un système d'exploitation: allocation mémoire,
 allocation de process, entrée/sortie de peripheriques, etc.
 
-%{Features}
-
 %description -l pl.UTF-8
 Pakiet zawiera jądro Linuksa niezbędne do prawidłowego działania
 Twojego komputera. Zawiera w sobie sterowniki do sprzętu znajdującego
 się w komputerze, takiego jak sterowniki dysków itp.
 
-%{Features}
-
 %package vmlinux
 Summary:       vmlinux - uncompressed kernel image
 Summary(de.UTF-8):     vmlinux - dekompressiertes Kernel Bild
@@ -359,27 +345,12 @@ Pakiet zawiera dokumentację do jądra Linuksa pochodzącą z katalogu
 %patch0 -p1
 
 # Fix EXTRAVERSION in main Makefile
-sed -i 's#EXTRAVERSION =.*#EXTRAVERSION = %{_postver}-%{alt_kernel}#g' Makefile
+sed -i 's#EXTRAVERSION =.*#EXTRAVERSION = -%{alt_kernel}#g' Makefile
 
 # cleanup backups after patching
 find '(' -name '*~' -o -name '*.orig' -o -name '.gitignore' ')' -print0 | xargs -0 -r -l512 rm -f
 
 %build
-TuneUpConfigForIX86 () {
-       set -x
-%ifarch i586 i686
-       %ifarch i586
-       sed -i "s:# CONFIG_HIGHMEM4G is not set:CONFIG_HIGHMEM4G=y:" $1
-       sed -i "s:CONFIG_HIGHMEM64G=y:# CONFIG_HIGHMEM64G is not set:" $1
-       sed -i ":CONFIG_X86_PAE=y:d" $1
-       %else
-       sed -i 's:CONFIG_M586=y# CONFIG_M586 is not set::' $1
-       sed -i 's:# CONFIG_M686 is not set:CONFIG_M686=y:' $1
-       %endif
-       return 0
-%endif
-}
-
 BuildConfig() {
        %{?debug:set -x}
        # is this a special kernel we want to build?
@@ -387,7 +358,6 @@ BuildConfig() {
        KernelVer=%{kernel_release}
        echo "Building config file using $Config.conf..."
        cat $RPM_SOURCE_DIR/kernel-vanilla-$Config.config > %{defconfig}
-       TuneUpConfigForIX86 %{defconfig}
 
 %{?debug:sed -i "s:# CONFIG_DEBUG_SLAB is not set:CONFIG_DEBUG_SLAB=y:" %{defconfig}}
 %{?debug:sed -i "s:# CONFIG_DEBUG_PREEMPT is not set:CONFIG_DEBUG_PREEMPT=y:" %{defconfig}}
@@ -517,7 +487,8 @@ install %{SOURCE3} $RPM_BUILD_ROOT%{_kernelsrcdir}/include/linux/config.h
 perl %{SOURCE4} %{_kernelsrcdir} $KERNEL_BUILD_DIR
 
 # ghosted initrd
-touch $RPM_BUILD_ROOT%{initrd_dir}/initrd-%{kernel_release}.gz
+touch $RPM_BUILD_ROOT%{initrd_dir}/initrd-%{kernel_release}.img
+touch $RPM_BUILD_ROOT%{initrd_dir}/initramfs-%{kernel_release}.img
 
 # rpm obeys filelinkto checks for ghosted symlinks, convert to files
 rm -f $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/{build,source}
@@ -526,6 +497,9 @@ touch $RPM_BUILD_ROOT/lib/modules/%{kernel_release}/{build,source}
 # remove unnecessary dir with dead symlink
 rm -rf $RPM_BUILD_ROOT/arch/i386
 
+install -d $RPM_BUILD_ROOT/etc/sysconfig
+install %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/kernel
+
 %clean
 rm -rf $RPM_BUILD_ROOT
 
@@ -535,35 +509,34 @@ if [ -x /sbin/new-kernel-pkg ]; then
 fi
 
 %post
-mv -f /boot/vmlinuz-%{alt_kernel} /boot/vmlinuz-%{alt_kernel}.old 2> /dev/null > /dev/null
-ln -sf vmlinuz-%{kernel_release} /boot/vmlinuz-%{alt_kernel}
-mv -f /boot/System.map-%{alt_kernel} /boot/System.map-%{alt_kernel}.old 2> /dev/null > /dev/null
-ln -sf System.map-%{kernel_release} /boot/System.map-%{alt_kernel}
-
 %depmod %{kernel_release}
 
-/sbin/geninitrd -f --initrdfs=rom %{initrd_dir}/initrd-%{kernel_release}.gz %{kernel_release}
-mv -f %{initrd_dir}/initrd-%{alt_kernel} %{initrd_dir}/initrd-%{alt_kernel}.old 2> /dev/null > /dev/null
-ln -sf initrd-%{kernel_release}.gz %{initrd_dir}/initrd-%{alt_kernel}
+[ -f /etc/sysconfig/kernel ] && . /etc/sysconfig/kernel
+if [[ "$USE_GENINITRD" != [Nn][Oo] ]]; then
+       # generate initrd after all dependant modules are installed
+       /sbin/geninitrd -f %{initrd_dir}/initrd-%{kernel_release}.img %{kernel_release}
+fi
+
+# if dracut is present then generate full-featured initramfs
+if [[ "$USE_DRACUT" != [Nn][Oo] ]] && [ -x /sbin/dracut ]; then
+       /sbin/dracut --force --quiet /boot/initramfs-%{kernel_release}.img %{kernel_release}
+fi
 
-if [ -x /sbin/new-kernel-pkg ]; then
-       if [ -f /etc/pld-release ]; then
-               title=$(sed 's/^[0-9.]\+ //' < /etc/pld-release)
-       else
-               title='PLD Linux'
+# update boot loaders when old package files are gone from filesystem
+if [ -x /sbin/update-grub -a -f /etc/sysconfig/grub ]; then
+       if [ "$(. /etc/sysconfig/grub; echo ${UPDATE_GRUB:-no})" = "yes" ]; then
+               /sbin/update-grub >/dev/null
        fi
+fi
 
-       title="$title %{alt_kernel}"
+if [ -x /sbin/new-kernel-pkg ]; then
+       /sbin/new-kernel-pkg --initrdfile=%{initrd_dir}/initrd-%{kernel_release}.img --install %{kernel_release} --banner "TLD Linux %{alt_kernel}"
+fi
 
-       /sbin/new-kernel-pkg --initrdfile=%{initrd_dir}/initrd-%{kernel_release}.gz --install %{kernel_release} --banner "$title"
-elif [ -x /sbin/rc-boot ]; then
+if [ -x /sbin/rc-boot ]; then
        /sbin/rc-boot 1>&2 || :
 fi
 
-%post vmlinux
-mv -f /boot/vmlinux-%{alt_kernel} /boot/vmlinux-%{alt_kernel}.old 2> /dev/null > /dev/null
-ln -sf vmlinux-%{kernel_release} /boot/vmlinux-%{alt_kernel}
-
 %post drm
 %depmod %{kernel_release}
 
@@ -611,9 +584,11 @@ fi
 
 %files
 %defattr(644,root,root,755)
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/kernel
 /boot/vmlinuz-%{kernel_release}
 /boot/System.map-%{kernel_release}
-%ghost %{initrd_dir}/initrd-%{kernel_release}.gz
+%ghost %{initrd_dir}/initrd-%{kernel_release}.img
+%ghost %{initrd_dir}/initramfs-%{kernel_release}.img
 /lib/firmware/%{kernel_release}
 %dir /lib/modules/%{kernel_release}
 %dir /lib/modules/%{kernel_release}/kernel
@@ -621,12 +596,9 @@ fi
 /lib/modules/%{kernel_release}/kernel/crypto
 /lib/modules/%{kernel_release}/kernel/drivers
 
-%if %{have_drm}
 %exclude /lib/modules/%{kernel_release}/kernel/drivers/gpu/drm
-%endif
 
 /lib/modules/%{kernel_release}/kernel/fs
-# this directory will be removed after disabling rcutorture mod. in 2.6.20.
 /lib/modules/%{kernel_release}/kernel/kernel
 /lib/modules/%{kernel_release}/kernel/lib
 
@@ -636,14 +608,12 @@ fi
 
 /lib/modules/%{kernel_release}/kernel/net
 
-%if %{have_sound}
 %dir /lib/modules/%{kernel_release}/kernel/sound
 /lib/modules/%{kernel_release}/kernel/sound/ac97_bus.ko*
 /lib/modules/%{kernel_release}/kernel/sound/sound*.ko*
 %exclude /lib/modules/%{kernel_release}/kernel/drivers/media/video/cx88/cx88-alsa.ko*
 %exclude /lib/modules/%{kernel_release}/kernel/drivers/media/video/em28xx/em28xx-alsa.ko*
 %exclude /lib/modules/%{kernel_release}/kernel/drivers/media/video/saa7134/saa7134-alsa.ko*
-%endif
 
 %dir /lib/modules/%{kernel_release}/misc
 
@@ -655,7 +625,6 @@ fi
 %exclude /lib/modules/%{kernel_release}/kernel/drivers/ata/pata_pcmcia.ko*
 %exclude /lib/modules/%{kernel_release}/kernel/drivers/bluetooth/*_cs.ko*
 %exclude /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
-%exclude /lib/modules/%{kernel_release}/kernel/drivers/telephony/ixj_pcmcia.ko*
 %exclude /lib/modules/%{kernel_release}/kernel/drivers/usb/gadget/g_midi.ko*
 %exclude /lib/modules/%{kernel_release}/kernel/drivers/ide/ide-cs.ko*
 %exclude /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/*_cs.ko*
@@ -677,11 +646,9 @@ fi
 %defattr(644,root,root,755)
 /boot/vmlinux-%{kernel_release}
 
-%if %{have_drm}
 %files drm
 %defattr(644,root,root,755)
 /lib/modules/%{kernel_release}/kernel/drivers/gpu/drm
-%endif
 
 %files pcmcia
 %defattr(644,root,root,755)
@@ -690,7 +657,6 @@ fi
 /lib/modules/%{kernel_release}/kernel/drivers/*/pcmcia
 /lib/modules/%{kernel_release}/kernel/drivers/bluetooth/*_cs.ko*
 /lib/modules/%{kernel_release}/kernel/drivers/isdn/hardware/avm/avm_cs.ko*
-/lib/modules/%{kernel_release}/kernel/drivers/telephony/ixj_pcmcia.ko*
 /lib/modules/%{kernel_release}/kernel/drivers/ata/pata_pcmcia.ko*
 /lib/modules/%{kernel_release}/kernel/drivers/ide/ide-cs.ko*
 /lib/modules/%{kernel_release}/kernel/drivers/net/wireless/*_cs.ko*
@@ -700,27 +666,21 @@ fi
 /lib/modules/%{kernel_release}/kernel/drivers/parport/parport_cs.ko*
 /lib/modules/%{kernel_release}/kernel/drivers/usb/host/sl811_cs.ko*
 
-%if %{have_sound}
 %files sound-alsa
 %defattr(644,root,root,755)
 /lib/modules/%{kernel_release}/kernel/sound
 %exclude %dir /lib/modules/%{kernel_release}/kernel/sound
 %exclude /lib/modules/%{kernel_release}/kernel/sound/ac97_bus.ko*
 %exclude /lib/modules/%{kernel_release}/kernel/sound/sound*.ko*
-%if %{have_oss}
 %exclude /lib/modules/%{kernel_release}/kernel/sound/oss
-%endif
 /lib/modules/%{kernel_release}/kernel/drivers/usb/gadget/g_midi.ko*
 /lib/modules/%{kernel_release}/kernel/drivers/media/video/cx88/cx88-alsa.ko*
 /lib/modules/%{kernel_release}/kernel/drivers/media/video/em28xx/em28xx-alsa.ko*
 /lib/modules/%{kernel_release}/kernel/drivers/media/video/saa7134/saa7134-alsa.ko*
 
-%if %{have_oss}
 %files sound-oss
 %defattr(644,root,root,755)
 /lib/modules/%{kernel_release}/kernel/sound/oss
-%endif
-%endif
 
 %files headers
 %defattr(644,root,root,755)