#!/bin/sh # # Output a simple RPM spec file that uses no fancy features requring # RPM v4. This is intended to work with any RPM distro. # # The only gothic bit here is redefining install_post to avoid # stripping the symbols from files in the kernel which we want # # Patched for non-x86 by Opencon (L) 2002 # # That's the voodoo to see if it's a x86. ISX86=`arch | grep -ie i.86` if [ ! -z $ISX86 ]; then PC=1 else PC=0 fi # starting to output the spec if [ "`grep CONFIG_DRM=y .config | cut -f2 -d\=`" = "y" ]; then PROVIDES=kernel-drm fi PROVIDES="$PROVIDES kernel-$VERSION.$PATCHLEVEL.$SUBLEVEL$EXTRAVERSION" echo "Name: kernel" echo "Summary: The Linux Kernel" echo "Version: "$VERSION.$PATCHLEVEL.$SUBLEVEL$EXTRAVERSION | sed -e "s/-//g" # we need to determine the NEXT version number so that uname and # rpm -q will agree echo "Release: `. scripts/mkversion`" echo "License: GPL" echo "Group: System Environment/Kernel" echo "Vendor: The Linux Community" echo "URL: http://www.kernel.org" echo -n "Source: kernel-$VERSION.$PATCHLEVEL.$SUBLEVEL" echo "$EXTRAVERSION.tar.gz" | sed -e "s/-//g" echo "BuildRoot: /var/tmp/%{name}-%{PACKAGE_VERSION}-root" echo "Provides: $PROVIDES" echo "%define __spec_install_post /usr/lib/rpm/brp-compress || :" echo "" echo "%description" echo "The Linux Kernel, the operating system core itself" echo "" echo "%prep" echo "%setup -q" echo "" echo "%build" # This is the first 'disagreement' between x86 and other archs. if [ $PC = 1 ]; then echo "make oldconfig dep clean bzImage modules" else echo "make oldconfig dep clean vmlinux modules" fi # Back on track echo "" echo "%install" echo 'mkdir -p $RPM_BUILD_ROOT/boot $RPM_BUILD_ROOT/lib $RPM_BUILD_ROOT/lib/modules' echo 'INSTALL_MOD_PATH=$RPM_BUILD_ROOT make modules_install' # And that's the second if [ $PC = 1 ]; then echo 'cp arch/i386/boot/bzImage $RPM_BUILD_ROOT'"/boot/vmlinuz-$VERSION.$PATCHLEVEL.$SUBLEVEL$EXTRAVERSION" else echo 'cp vmlinux $RPM_BUILD_ROOT'"/boot/vmlinux-$VERSION.$PATCHLEVEL.$SUBLEVEL$EXTRAVERSION" fi # Back on track, again echo 'cp System.map $RPM_BUILD_ROOT'"/boot/System.map-$VERSION.$PATCHLEVEL.$SUBLEVEL$EXTRAVERSION" echo 'cp .config $RPM_BUILD_ROOT'"/boot/config-$VERSION.$PATCHLEVEL.$SUBLEVEL$EXTRAVERSION" echo "" echo "%clean" echo '#echo -rf $RPM_BUILD_ROOT' echo "" echo "%files" echo '%defattr (-, root, root)' echo "%dir /lib/modules" echo "/lib/modules/$VERSION.$PATCHLEVEL.$SUBLEVEL$EXTRAVERSION" echo "/boot/*" echo ""