xref: /linux-6.15/scripts/package/mkspec (revision 1da177e4)
1*1da177e4SLinus Torvalds#!/bin/sh
2*1da177e4SLinus Torvalds#
3*1da177e4SLinus Torvalds#	Output a simple RPM spec file that uses no fancy features requring
4*1da177e4SLinus Torvalds#	RPM v4. This is intended to work with any RPM distro.
5*1da177e4SLinus Torvalds#
6*1da177e4SLinus Torvalds#	The only gothic bit here is redefining install_post to avoid
7*1da177e4SLinus Torvalds#	stripping the symbols from files in the kernel which we want
8*1da177e4SLinus Torvalds#
9*1da177e4SLinus Torvalds#	Patched for non-x86 by Opencon (L) 2002 <[email protected]>
10*1da177e4SLinus Torvalds#
11*1da177e4SLinus Torvalds
12*1da177e4SLinus Torvalds# how we were called determines which rpms we build and how we build them
13*1da177e4SLinus Torvaldsif [ "$1" = "prebuilt" ]; then
14*1da177e4SLinus Torvalds	PREBUILT=true
15*1da177e4SLinus Torvaldselse
16*1da177e4SLinus Torvalds	PREBUILT=false
17*1da177e4SLinus Torvaldsfi
18*1da177e4SLinus Torvalds
19*1da177e4SLinus Torvalds# starting to output the spec
20*1da177e4SLinus Torvaldsif [ "`grep CONFIG_DRM=y .config | cut -f2 -d\=`" = "y" ]; then
21*1da177e4SLinus Torvalds	PROVIDES=kernel-drm
22*1da177e4SLinus Torvaldsfi
23*1da177e4SLinus Torvalds
24*1da177e4SLinus TorvaldsPROVIDES="$PROVIDES kernel-$KERNELRELEASE"
25*1da177e4SLinus Torvalds__KERNELRELEASE=`echo $KERNELRELEASE | sed -e "s/-//g"`
26*1da177e4SLinus Torvalds
27*1da177e4SLinus Torvaldsecho "Name: kernel"
28*1da177e4SLinus Torvaldsecho "Summary: The Linux Kernel"
29*1da177e4SLinus Torvaldsecho "Version: $__KERNELRELEASE"
30*1da177e4SLinus Torvalds# we need to determine the NEXT version number so that uname and
31*1da177e4SLinus Torvalds# rpm -q will agree
32*1da177e4SLinus Torvaldsecho "Release: `. $srctree/scripts/mkversion`"
33*1da177e4SLinus Torvaldsecho "License: GPL"
34*1da177e4SLinus Torvaldsecho "Group: System Environment/Kernel"
35*1da177e4SLinus Torvaldsecho "Vendor: The Linux Community"
36*1da177e4SLinus Torvaldsecho "URL: http://www.kernel.org"
37*1da177e4SLinus Torvalds
38*1da177e4SLinus Torvaldsif ! $PREBUILT; then
39*1da177e4SLinus Torvaldsecho "Source: kernel-$__KERNELRELEASE.tar.gz"
40*1da177e4SLinus Torvaldsfi
41*1da177e4SLinus Torvalds
42*1da177e4SLinus Torvaldsecho "BuildRoot: /var/tmp/%{name}-%{PACKAGE_VERSION}-root"
43*1da177e4SLinus Torvaldsecho "Provides: $PROVIDES"
44*1da177e4SLinus Torvaldsecho "%define __spec_install_post /usr/lib/rpm/brp-compress || :"
45*1da177e4SLinus Torvaldsecho "%define debug_package %{nil}"
46*1da177e4SLinus Torvaldsecho ""
47*1da177e4SLinus Torvaldsecho "%description"
48*1da177e4SLinus Torvaldsecho "The Linux Kernel, the operating system core itself"
49*1da177e4SLinus Torvaldsecho ""
50*1da177e4SLinus Torvalds
51*1da177e4SLinus Torvaldsif ! $PREBUILT; then
52*1da177e4SLinus Torvaldsecho "%prep"
53*1da177e4SLinus Torvaldsecho "%setup -q"
54*1da177e4SLinus Torvaldsecho ""
55*1da177e4SLinus Torvaldsfi
56*1da177e4SLinus Torvalds
57*1da177e4SLinus Torvaldsecho "%build"
58*1da177e4SLinus Torvalds
59*1da177e4SLinus Torvaldsif ! $PREBUILT; then
60*1da177e4SLinus Torvaldsecho "make clean && make %{_smp_mflags}"
61*1da177e4SLinus Torvaldsecho ""
62*1da177e4SLinus Torvaldsfi
63*1da177e4SLinus Torvalds
64*1da177e4SLinus Torvaldsecho "%install"
65*1da177e4SLinus Torvaldsecho 'mkdir -p $RPM_BUILD_ROOT/boot $RPM_BUILD_ROOT/lib $RPM_BUILD_ROOT/lib/modules'
66*1da177e4SLinus Torvalds
67*1da177e4SLinus Torvaldsecho 'INSTALL_MOD_PATH=$RPM_BUILD_ROOT make %{_smp_mflags} modules_install'
68*1da177e4SLinus Torvaldsecho 'cp $KBUILD_IMAGE $RPM_BUILD_ROOT'"/boot/vmlinuz-$KERNELRELEASE"
69*1da177e4SLinus Torvalds
70*1da177e4SLinus Torvaldsecho 'cp System.map $RPM_BUILD_ROOT'"/boot/System.map-$KERNELRELEASE"
71*1da177e4SLinus Torvalds
72*1da177e4SLinus Torvaldsecho 'cp .config $RPM_BUILD_ROOT'"/boot/config-$KERNELRELEASE"
73*1da177e4SLinus Torvaldsecho ""
74*1da177e4SLinus Torvaldsecho "%clean"
75*1da177e4SLinus Torvaldsecho '#echo -rf $RPM_BUILD_ROOT'
76*1da177e4SLinus Torvaldsecho ""
77*1da177e4SLinus Torvaldsecho "%files"
78*1da177e4SLinus Torvaldsecho '%defattr (-, root, root)'
79*1da177e4SLinus Torvaldsecho "%dir /lib/modules"
80*1da177e4SLinus Torvaldsecho "/lib/modules/$KERNELRELEASE"
81*1da177e4SLinus Torvaldsecho "/boot/*"
82*1da177e4SLinus Torvaldsecho ""
83