diff options
author | Masahiro Yamada <masahiroy@kernel.org> | 2023-07-22 06:47:54 +0200 |
---|---|---|
committer | Masahiro Yamada <masahiroy@kernel.org> | 2023-07-24 17:59:32 +0200 |
commit | 93ed5605c6185edf3b47c433b257c00854f0a4e1 (patch) | |
tree | b9952385c8255501a840f32d3b1c887724a04027 /scripts/package | |
parent | kbuild: rpm-pkg: replace $__KERNELRELEASE in spec file with %{version} (diff) | |
download | linux-93ed5605c6185edf3b47c433b257c00854f0a4e1.tar.xz linux-93ed5605c6185edf3b47c433b257c00854f0a4e1.zip |
kbuild: rpm-pkg: replace $KERNELRELEASE in spec file with %{KERNELRELEASE}
Avoid hard-coding the value of KERNELRELEASE in the generated spec file.
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Diffstat (limited to 'scripts/package')
-rwxr-xr-x | scripts/package/mkspec | 59 |
1 files changed, 30 insertions, 29 deletions
diff --git a/scripts/package/mkspec b/scripts/package/mkspec index a6a383aaaea7..34b2489106cf 100755 --- a/scripts/package/mkspec +++ b/scripts/package/mkspec @@ -39,6 +39,7 @@ EXCLUDES="$RCS_TAR_IGNORE --exclude=*vmlinux* --exclude=*.mod \ # $M: this line is enabled only when CONFIG_MODULES is enabled sed -e '/^DEL/d' -e 's/^\t*//' <<EOF %define ARCH ${ARCH} +%define KERNELRELEASE ${KERNELRELEASE} %{!?make: %define make make} %define makeflags %{?_smp_mflags} ARCH=%{ARCH} @@ -54,7 +55,7 @@ sed -e '/^DEL/d' -e 's/^\t*//' <<EOF $S Source0: linux.tar.gz $S Source1: config $S Source2: diff.patch - Provides: kernel-$KERNELRELEASE + Provides: kernel-%{KERNELRELEASE} $S BuildRequires: bc binutils bison dwarves $S BuildRequires: (elfutils-libelf-devel or libelf-devel) flex $S BuildRequires: gcc make openssl openssl-devel perl python3 rsync @@ -94,58 +95,58 @@ $S cp %{SOURCE1} .config $S patch -p1 < %{SOURCE2} $S $S %build -$S %{make} %{makeflags} KERNELRELEASE=$KERNELRELEASE KBUILD_BUILD_VERSION=%{release} +$S %{make} %{makeflags} KERNELRELEASE=%{KERNELRELEASE} KBUILD_BUILD_VERSION=%{release} $S %install mkdir -p %{buildroot}/boot %ifarch ia64 mkdir -p %{buildroot}/boot/efi - cp \$(%{make} %{makeflags} -s image_name) %{buildroot}/boot/efi/vmlinuz-$KERNELRELEASE - ln -s efi/vmlinuz-$KERNELRELEASE %{buildroot}/boot/ + cp \$(%{make} %{makeflags} -s image_name) %{buildroot}/boot/efi/vmlinuz-%{KERNELRELEASE} + ln -s efi/vmlinuz-%{KERNELRELEASE} %{buildroot}/boot/ %else - cp \$(%{make} %{makeflags} -s image_name) %{buildroot}/boot/vmlinuz-$KERNELRELEASE + cp \$(%{make} %{makeflags} -s image_name) %{buildroot}/boot/vmlinuz-%{KERNELRELEASE} %endif $M %{make} %{makeflags} INSTALL_MOD_PATH=%{buildroot} modules_install %{make} %{makeflags} INSTALL_HDR_PATH=%{buildroot}/usr headers_install - cp System.map %{buildroot}/boot/System.map-$KERNELRELEASE - cp .config %{buildroot}/boot/config-$KERNELRELEASE -$S$M rm -f %{buildroot}/lib/modules/$KERNELRELEASE/build -$S$M rm -f %{buildroot}/lib/modules/$KERNELRELEASE/source -$S$M mkdir -p %{buildroot}/usr/src/kernels/$KERNELRELEASE -$S$M tar cf - $EXCLUDES . | tar xf - -C %{buildroot}/usr/src/kernels/$KERNELRELEASE -$S$M cd %{buildroot}/lib/modules/$KERNELRELEASE -$S$M ln -sf /usr/src/kernels/$KERNELRELEASE build -$S$M ln -sf /usr/src/kernels/$KERNELRELEASE source + cp System.map %{buildroot}/boot/System.map-%{KERNELRELEASE} + cp .config %{buildroot}/boot/config-%{KERNELRELEASE} +$S$M rm -f %{buildroot}/lib/modules/%{KERNELRELEASE}/build +$S$M rm -f %{buildroot}/lib/modules/%{KERNELRELEASE}/source +$S$M mkdir -p %{buildroot}/usr/src/kernels/%{KERNELRELEASE} +$S$M tar cf - $EXCLUDES . | tar xf - -C %{buildroot}/usr/src/kernels/%{KERNELRELEASE} +$S$M cd %{buildroot}/lib/modules/%{KERNELRELEASE} +$S$M ln -sf /usr/src/kernels/%{KERNELRELEASE} build +$S$M ln -sf /usr/src/kernels/%{KERNELRELEASE} source %clean rm -rf %{buildroot} %post - if [ -x /sbin/installkernel -a -r /boot/vmlinuz-$KERNELRELEASE -a -r /boot/System.map-$KERNELRELEASE ]; then - cp /boot/vmlinuz-$KERNELRELEASE /boot/.vmlinuz-$KERNELRELEASE-rpm - cp /boot/System.map-$KERNELRELEASE /boot/.System.map-$KERNELRELEASE-rpm - rm -f /boot/vmlinuz-$KERNELRELEASE /boot/System.map-$KERNELRELEASE - /sbin/installkernel $KERNELRELEASE /boot/.vmlinuz-$KERNELRELEASE-rpm /boot/.System.map-$KERNELRELEASE-rpm - rm -f /boot/.vmlinuz-$KERNELRELEASE-rpm /boot/.System.map-$KERNELRELEASE-rpm + if [ -x /sbin/installkernel -a -r /boot/vmlinuz-%{KERNELRELEASE} -a -r /boot/System.map-%{KERNELRELEASE} ]; then + cp /boot/vmlinuz-%{KERNELRELEASE} /boot/.vmlinuz-%{KERNELRELEASE}-rpm + cp /boot/System.map-%{KERNELRELEASE} /boot/.System.map-%{KERNELRELEASE}-rpm + rm -f /boot/vmlinuz-%{KERNELRELEASE} /boot/System.map-%{KERNELRELEASE} + /sbin/installkernel %{KERNELRELEASE} /boot/.vmlinuz-%{KERNELRELEASE}-rpm /boot/.System.map-%{KERNELRELEASE}-rpm + rm -f /boot/.vmlinuz-%{KERNELRELEASE}-rpm /boot/.System.map-%{KERNELRELEASE}-rpm fi %preun if [ -x /sbin/new-kernel-pkg ]; then - new-kernel-pkg --remove $KERNELRELEASE --rminitrd --initrdfile=/boot/initramfs-$KERNELRELEASE.img + new-kernel-pkg --remove %{KERNELRELEASE} --rminitrd --initrdfile=/boot/initramfs-%{KERNELRELEASE}.img elif [ -x /usr/bin/kernel-install ]; then - kernel-install remove $KERNELRELEASE + kernel-install remove %{KERNELRELEASE} fi %postun if [ -x /sbin/update-bootloader ]; then - /sbin/update-bootloader --remove $KERNELRELEASE + /sbin/update-bootloader --remove %{KERNELRELEASE} fi %files %defattr (-, root, root) -$M /lib/modules/$KERNELRELEASE -$M %exclude /lib/modules/$KERNELRELEASE/build -$M %exclude /lib/modules/$KERNELRELEASE/source +$M /lib/modules/%{KERNELRELEASE} +$M %exclude /lib/modules/%{KERNELRELEASE}/build +$M %exclude /lib/modules/%{KERNELRELEASE}/source /boot/* %files headers @@ -154,7 +155,7 @@ $M %exclude /lib/modules/$KERNELRELEASE/source $S$M $S$M %files devel $S$M %defattr (-, root, root) -$S$M /usr/src/kernels/$KERNELRELEASE -$S$M /lib/modules/$KERNELRELEASE/build -$S$M /lib/modules/$KERNELRELEASE/source +$S$M /usr/src/kernels/%{KERNELRELEASE} +$S$M /lib/modules/%{KERNELRELEASE}/build +$S$M /lib/modules/%{KERNELRELEASE}/source EOF |