%global Arch $(echo %{_host_cpu} | sed -e s/i.86/x86/ -e s/x86_64/x86/ -e s/aarch64.*/arm64/) %global KernelVer %{version}-%{release}.raspi.%{_target_cpu} %global hulkrelease 2005.2.0 %global debug_package %{nil} Name: raspberrypi-kernel Version: 4.19.90 Release: %{hulkrelease}.0036 Summary: Linux Kernel License: GPLv2 URL: http://www.kernel.org/ Source0: kernel.tar.gz BuildRequires: module-init-tools, patch >= 2.5.4, bash >= 2.03, tar BuildRequires: bzip2, xz, findutils, gzip, m4, perl, make >= 3.78, diffutils, gawk BuildRequires: gcc >= 3.4.2, binutils >= 2.12 BuildRequires: hostname, net-tools, bc BuildRequires: xmlto, asciidoc BuildRequires: openssl-devel BuildRequires: hmaccalc BuildRequires: ncurses-devel BuildRequires: elfutils-libelf-devel BuildRequires: rpm >= 4.14.2 BuildRequires: elfutils-devel zlib-devel binutils-devel newt-devel python-devel perl(ExtUtils::Embed) bison BuildRequires: audit-libs-devel BuildRequires: pciutils-devel gettext BuildRequires: rpm-build, elfutils BuildRequires: numactl-devel python3-devel glibc-static python3-docutils BuildRequires: perl-generators perl(Carp) libunwind-devel gtk2-devel libbabeltrace-devel java-1.8.0-openjdk AutoReq: no AutoProv: yes Provides: raspberrypi-kernel-aarch64 = %{version}-%{release} ExclusiveArch: aarch64 ExclusiveOS: Linux %description The Linux Kernel image for RaspberryPi. %prep %setup -q -n kernel-%{version} -c mv kernel linux-%{version} cp -rl linux-%{version} linux-%{KernelVer} cd linux-%{KernelVer} find . \( -name "*.orig" -o -name "*~" \) -exec rm -f {} \; >/dev/null find . -name .gitignore -exec rm -f {} \; >/dev/null %build cd linux-%{KernelVer} perl -p -i -e "s/^EXTRAVERSION.*/EXTRAVERSION = -%{release}.raspi.%{_target_cpu}/" Makefile make ARCH=%{Arch} %{?_smp_mflags} openeuler-raspi_defconfig make ARCH=%{Arch} dtbs TargetImage=$(basename $(make -s image_name)) make ARCH=%{Arch} $TargetImage %{?_smp_mflags} make ARCH=%{Arch} modules %{?_smp_mflags} %install cd linux-%{KernelVer} ## install linux make ARCH=%{Arch} INSTALL_MOD_PATH=$RPM_BUILD_ROOT modules_install KERNELRELEASE=%{KernelVer} rm -rf $RPM_BUILD_ROOT/lib/modules/%{KernelVer}/source $RPM_BUILD_ROOT/lib/modules/%{KernelVer}/build mkdir -p $RPM_BUILD_ROOT/boot install -m 755 $(make -s image_name) $RPM_BUILD_ROOT/boot/vmlinuz-%{KernelVer} install -m 644 .config $RPM_BUILD_ROOT/boot/config-%{KernelVer} install -m 644 System.map $RPM_BUILD_ROOT/boot/System.map-%{KernelVer} mkdir -p $RPM_BUILD_ROOT/boot/dtb-%{KernelVer}/overlays install -m 644 $(find arch/%{Arch}/boot/dts/broadcom/ -name "*.dtb") $RPM_BUILD_ROOT/boot/dtb-%{KernelVer}/ install -m 644 $(find arch/%{Arch}/boot/dts/overlays/ -name "*.dtbo") $RPM_BUILD_ROOT/boot/dtb-%{KernelVer}/overlays/ install -m 644 arch/%{Arch}/boot/dts/overlays/README $RPM_BUILD_ROOT/boot/dtb-%{KernelVer}/overlays/ %files %defattr (-, root, root) %doc /boot/config-* /boot/System.map-* /boot/vmlinuz-* /boot/dtb-* /lib/modules/%{KernelVer}/ %changelog * Thu Jun 11 2020 EulixOS Buildteam - 4.19.90-2003.4.0.0036-raspi - Add spec file to generate RaspberryPi kernel image rpm.