The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/scripts/mkspec

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 #!/bin/sh
    2 #
    3 #       Output a simple RPM spec file that uses no fancy features requring
    4 #       RPM v4. This is intended to work with any RPM distro.
    5 #
    6 #       The only gothic bit here is redefining install_post to avoid 
    7 #       stripping the symbols from files in the kernel which we want
    8 #
    9 #       Patched for non-x86 by Opencon (L) 2002 <opencon@rio.skydome.net>
   10 #
   11 # That's the voodoo to see if it's a x86.
   12 ISX86=`arch | grep -ie i.86`
   13 if [ ! -z $ISX86 ]; then
   14         PC=1
   15 else
   16         PC=0
   17 fi
   18 # starting to output the spec
   19 if [ "`grep CONFIG_DRM=y .config | cut -f2 -d\=`" = "y" ]; then
   20         PROVIDES=kernel-drm
   21 fi
   22 
   23 PROVIDES="$PROVIDES kernel-$VERSION.$PATCHLEVEL.$SUBLEVEL$EXTRAVERSION"
   24 
   25 echo "Name: kernel"
   26 echo "Summary: The Linux Kernel"
   27 echo "Version: "$VERSION.$PATCHLEVEL.$SUBLEVEL$EXTRAVERSION | sed -e "s/-//g"
   28 # we need to determine the NEXT version number so that uname and
   29 # rpm -q will agree
   30 echo "Release: `. scripts/mkversion`"
   31 echo "License: GPL"
   32 echo "Group: System Environment/Kernel"
   33 echo "Vendor: The Linux Community"
   34 echo "URL: http://www.kernel.org"
   35 echo -n "Source: kernel-$VERSION.$PATCHLEVEL.$SUBLEVEL"
   36 echo "$EXTRAVERSION.tar.gz" | sed -e "s/-//g"
   37 echo "BuildRoot: /var/tmp/%{name}-%{PACKAGE_VERSION}-root"
   38 echo "Provides: $PROVIDES"
   39 echo "%define __spec_install_post /usr/lib/rpm/brp-compress || :"
   40 echo ""
   41 echo "%description"
   42 echo "The Linux Kernel, the operating system core itself"
   43 echo ""
   44 echo "%prep"
   45 echo "%setup -q"
   46 echo ""
   47 echo "%build"
   48 # This is the first 'disagreement' between x86 and other archs.
   49 if [ $PC = 1 ]; then 
   50         echo "make oldconfig dep clean bzImage modules"
   51 else
   52         echo "make oldconfig dep clean vmlinux modules"
   53 fi
   54 # Back on track
   55 echo ""
   56 echo "%install"
   57 echo 'mkdir -p $RPM_BUILD_ROOT/boot $RPM_BUILD_ROOT/lib $RPM_BUILD_ROOT/lib/modules'
   58 echo 'INSTALL_MOD_PATH=$RPM_BUILD_ROOT make modules_install'
   59 # And that's the second
   60 if [ $PC = 1 ]; then
   61         echo 'cp arch/i386/boot/bzImage $RPM_BUILD_ROOT'"/boot/vmlinuz-$VERSION.$PATCHLEVEL.$SUBLEVEL$EXTRAVERSION"
   62 else
   63         echo 'cp vmlinux $RPM_BUILD_ROOT'"/boot/vmlinux-$VERSION.$PATCHLEVEL.$SUBLEVEL$EXTRAVERSION"
   64 fi
   65 # Back on track, again
   66 echo 'cp System.map $RPM_BUILD_ROOT'"/boot/System.map-$VERSION.$PATCHLEVEL.$SUBLEVEL$EXTRAVERSION"
   67 echo 'cp .config $RPM_BUILD_ROOT'"/boot/config-$VERSION.$PATCHLEVEL.$SUBLEVEL$EXTRAVERSION"
   68 echo ""
   69 echo "%clean"
   70 echo '#echo -rf $RPM_BUILD_ROOT'
   71 echo ""
   72 echo "%files"
   73 echo '%defattr (-, root, root)'
   74 echo "%dir /lib/modules"
   75 echo "/lib/modules/$VERSION.$PATCHLEVEL.$SUBLEVEL$EXTRAVERSION"
   76 echo "/boot/*"
   77 echo ""

Cache object: 225958be9d5a97f46a77e8187c38ec90


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.