perf tools: Address python 3.6 DeprecationWarning for string scapes
[platform/kernel/linux-starfive.git] / scripts / package / mkspec
index 783e199..d41608e 100755 (executable)
 #      Patched for non-x86 by Opencon (L) 2002 <opencon@rio.skydome.net>
 #
 
-# how we were called determines which rpms we build and how we build them
-if [ "$1" = prebuilt ]; then
-       S=DEL
-else
-       S=
-
-       mkdir -p rpmbuild/SOURCES
-       cp linux.tar.gz rpmbuild/SOURCES
-       cp "${KCONFIG_CONFIG}" rpmbuild/SOURCES/config
-       "${srctree}/scripts/package/gen-diff-patch" rpmbuild/SOURCES/diff.patch
-fi
-
 if grep -q CONFIG_MODULES=y include/config/auto.conf; then
-       M=
+echo '%define with_devel %{?_without_devel: 0} %{?!_without_devel: 1}'
 else
-       M=DEL
+echo '%define with_devel 0'
 fi
 
-# We can label the here-doc lines for conditional output to the spec file
-#
-# Labels:
-#  $S: this line is enabled only when building source package
-#  $M: this line is enabled only when CONFIG_MODULES is enabled
-sed -e '/^DEL/d' -e 's/^\t*//' <<EOF
+cat<<EOF
 %define ARCH ${ARCH}
 %define KERNELRELEASE ${KERNELRELEASE}
-
-%{!?make: %define make make}
-%define makeflags %{?_smp_mflags} ARCH=%{ARCH}
-
-       Name: kernel
-       Summary: The Linux Kernel
-       Version: %(echo %{KERNELRELEASE} | sed -e 's/-/_/g')
-       Release: $(cat .version 2>/dev/null || echo 1)
-       License: GPL
-       Group: System Environment/Kernel
-       Vendor: The Linux Community
-       URL: https://www.kernel.org
-$S     Source0: linux.tar.gz
-$S     Source1: config
-$S     Source2: diff.patch
-       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
-
-       # $UTS_MACHINE as a fallback of _arch in case
-       # /usr/lib/rpm/platform/*/macros was not included.
-       %{!?_arch: %define _arch $UTS_MACHINE}
-       %define __spec_install_post /usr/lib/rpm/brp-compress || :
-       %define debug_package %{nil}
-
-       %description
-       The Linux Kernel, the operating system core itself
-
-       %package headers
-       Summary: Header files for the Linux kernel for use by glibc
-       Group: Development/System
-       Obsoletes: kernel-headers
-       Provides: kernel-headers = %{version}
-       %description headers
-       Kernel-headers includes the C header files that specify the interface
-       between the Linux kernel and userspace libraries and programs.  The
-       header files define structures and constants that are needed for
-       building most standard programs and are also needed for rebuilding the
-       glibc package.
-
-$S$M   %package devel
-$S$M   Summary: Development package for building kernel modules to match the %{version} kernel
-$S$M   Group: System Environment/Kernel
-$S$M   AutoReqProv: no
-$S$M   %description -n kernel-devel
-$S$M   This package provides kernel headers and makefiles sufficient to build modules
-$S$M   against the %{version} kernel package.
-$S$M
-$S     %prep
-$S     %setup -q -n linux
-$S     cp %{SOURCE1} .config
-$S     patch -p1 < %{SOURCE2}
-$S
-$S     %build
-$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/
-       %else
-       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   %{make} %{makeflags} run-command KBUILD_RUN_COMMAND='\${srctree}/scripts/package/install-extmod-build %{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
-       fi
-
-       %preun
-       if [ -x /sbin/new-kernel-pkg ]; then
-       new-kernel-pkg --remove %{KERNELRELEASE} --rminitrd --initrdfile=/boot/initramfs-%{KERNELRELEASE}.img
-       elif [ -x /usr/bin/kernel-install ]; then
-       kernel-install remove %{KERNELRELEASE}
-       fi
-
-       %postun
-       if [ -x /sbin/update-bootloader ]; then
-       /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
-       /boot/*
-
-       %files headers
-       %defattr (-, root, root)
-       /usr/include
-$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
+%define pkg_release $("${srctree}/init/build-version")
 EOF
+
+cat "${srctree}/scripts/package/kernel.spec"