Merge branch 'for-linus/bugfixes' of git://xenbits.xensource.com/people/ianc/linux-2.6
[pandora-kernel.git] / scripts / package / mkspec
1 #!/bin/sh
2 #
3 #       Output a simple RPM spec file that uses no fancy features requiring
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
12 # how we were called determines which rpms we build and how we build them
13 if [ "$1" = "prebuilt" ]; then
14         PREBUILT=true
15 else
16         PREBUILT=false
17 fi
18
19 # starting to output the spec
20 if [ "`grep CONFIG_DRM=y .config | cut -f2 -d\=`" = "y" ]; then
21         PROVIDES=kernel-drm
22 fi
23
24 PROVIDES="$PROVIDES kernel-$KERNELRELEASE"
25 __KERNELRELEASE=`echo $KERNELRELEASE | sed -e "s/-//g"`
26
27 echo "Name: kernel"
28 echo "Summary: The Linux Kernel"
29 echo "Version: $__KERNELRELEASE"
30 # we need to determine the NEXT version number so that uname and
31 # rpm -q will agree
32 echo "Release: `. $srctree/scripts/mkversion`"
33 echo "License: GPL"
34 echo "Group: System Environment/Kernel"
35 echo "Vendor: The Linux Community"
36 echo "URL: http://www.kernel.org"
37
38 if ! $PREBUILT; then
39 echo "Source: kernel-$__KERNELRELEASE.tar.gz"
40 fi
41
42 echo "BuildRoot: %{_tmppath}/%{name}-%{PACKAGE_VERSION}-root"
43 echo "Provides: $PROVIDES"
44 echo "%define __spec_install_post /usr/lib/rpm/brp-compress || :"
45 echo "%define debug_package %{nil}"
46 echo ""
47 echo "%description"
48 echo "The Linux Kernel, the operating system core itself"
49 echo ""
50
51 if ! $PREBUILT; then
52 echo "%prep"
53 echo "%setup -q"
54 echo ""
55 fi
56
57 echo "%build"
58
59 if ! $PREBUILT; then
60 echo "make clean && make %{?_smp_mflags}"
61 echo ""
62 fi
63
64 echo "%install"
65 echo "%ifarch ia64"
66 echo 'mkdir -p $RPM_BUILD_ROOT/boot/efi $RPM_BUILD_ROOT/lib/modules'
67 echo 'mkdir -p $RPM_BUILD_ROOT/lib/firmware'
68 echo "%else"
69 echo 'mkdir -p $RPM_BUILD_ROOT/boot $RPM_BUILD_ROOT/lib/modules'
70 echo 'mkdir -p $RPM_BUILD_ROOT/lib/firmware'
71 echo "%endif"
72
73 echo 'INSTALL_MOD_PATH=$RPM_BUILD_ROOT make %{_smp_mflags} KBUILD_SRC= modules_install'
74 echo "%ifarch ia64"
75 echo 'cp $KBUILD_IMAGE $RPM_BUILD_ROOT'"/boot/efi/vmlinuz-$KERNELRELEASE"
76 echo 'ln -s '"efi/vmlinuz-$KERNELRELEASE" '$RPM_BUILD_ROOT'"/boot/"
77 echo "%else"
78 echo "%ifarch ppc64"
79 echo "cp vmlinux arch/powerpc/boot"
80 echo "cp arch/powerpc/boot/"'$KBUILD_IMAGE $RPM_BUILD_ROOT'"/boot/vmlinuz-$KERNELRELEASE"
81 echo "%else"
82 echo 'cp $KBUILD_IMAGE $RPM_BUILD_ROOT'"/boot/vmlinuz-$KERNELRELEASE"
83 echo "%endif"
84 echo "%endif"
85
86 echo 'cp System.map $RPM_BUILD_ROOT'"/boot/System.map-$KERNELRELEASE"
87
88 echo 'cp .config $RPM_BUILD_ROOT'"/boot/config-$KERNELRELEASE"
89
90 echo "%ifnarch ppc64"
91 echo 'cp vmlinux vmlinux.orig'
92 echo 'bzip2 -9 vmlinux'
93 echo 'mv vmlinux.bz2 $RPM_BUILD_ROOT'"/boot/vmlinux-$KERNELRELEASE.bz2"
94 echo 'mv vmlinux.orig vmlinux'
95 echo "%endif"
96
97 echo ""
98 echo "%clean"
99 echo 'rm -rf $RPM_BUILD_ROOT'
100 echo ""
101 echo "%files"
102 echo '%defattr (-, root, root)'
103 echo "%dir /lib/modules"
104 echo "/lib/modules/$KERNELRELEASE"
105 echo "/lib/firmware"
106 echo "/boot/*"
107 echo ""