mkspec
上传用户:jlfgdled
上传日期:2013-04-10
资源大小:33168k
文件大小:2k
源码类别:

Linux/Unix编程

开发平台:

Unix_Linux

  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. PROVIDES="$PROVIDES kernel-$VERSION.$PATCHLEVEL.$SUBLEVEL$EXTRAVERSION"
  23. echo "Name: kernel"
  24. echo "Summary: The Linux Kernel"
  25. echo "Version: "$VERSION.$PATCHLEVEL.$SUBLEVEL$EXTRAVERSION | sed -e "s/-//g"
  26. # we need to determine the NEXT version number so that uname and
  27. # rpm -q will agree
  28. echo "Release: `. scripts/mkversion`"
  29. echo "License: GPL"
  30. echo "Group: System Environment/Kernel"
  31. echo "Vendor: The Linux Community"
  32. echo "URL: http://www.kernel.org"
  33. echo -n "Source: kernel-$VERSION.$PATCHLEVEL.$SUBLEVEL"
  34. echo "$EXTRAVERSION.tar.gz" | sed -e "s/-//g"
  35. echo "BuildRoot: /var/tmp/%{name}-%{PACKAGE_VERSION}-root"
  36. echo "Provides: $PROVIDES"
  37. echo "%define __spec_install_post /usr/lib/rpm/brp-compress || :"
  38. echo ""
  39. echo "%description"
  40. echo "The Linux Kernel, the operating system core itself"
  41. echo ""
  42. echo "%prep"
  43. echo "%setup -q"
  44. echo ""
  45. echo "%build"
  46. # This is the first 'disagreement' between x86 and other archs.
  47. if [ $PC = 1 ]; then 
  48. echo "make oldconfig dep clean bzImage modules"
  49. else
  50. echo "make oldconfig dep clean vmlinux modules"
  51. fi
  52. # Back on track
  53. echo ""
  54. echo "%install"
  55. echo 'mkdir -p $RPM_BUILD_ROOT/boot $RPM_BUILD_ROOT/lib $RPM_BUILD_ROOT/lib/modules'
  56. echo 'INSTALL_MOD_PATH=$RPM_BUILD_ROOT make modules_install'
  57. # And that's the second
  58. if [ $PC = 1 ]; then
  59. echo 'cp arch/i386/boot/bzImage $RPM_BUILD_ROOT'"/boot/vmlinuz-$VERSION.$PATCHLEVEL.$SUBLEVEL$EXTRAVERSION"
  60. else
  61. echo 'cp vmlinux $RPM_BUILD_ROOT'"/boot/vmlinux-$VERSION.$PATCHLEVEL.$SUBLEVEL$EXTRAVERSION"
  62. fi
  63. # Back on track, again
  64. echo 'cp System.map $RPM_BUILD_ROOT'"/boot/System.map-$VERSION.$PATCHLEVEL.$SUBLEVEL$EXTRAVERSION"
  65. echo 'cp .config $RPM_BUILD_ROOT'"/boot/config-$VERSION.$PATCHLEVEL.$SUBLEVEL$EXTRAVERSION"
  66. echo ""
  67. echo "%clean"
  68. echo '#echo -rf $RPM_BUILD_ROOT'
  69. echo ""
  70. echo "%files"
  71. echo '%defattr (-, root, root)'
  72. echo "%dir /lib/modules"
  73. echo "/lib/modules/$VERSION.$PATCHLEVEL.$SUBLEVEL$EXTRAVERSION"
  74. echo "/boot/*"
  75. echo ""