aboutsummaryrefslogtreecommitdiffstats
path: root/kernel.spec.template
blob: c6a25dd92330dc080ef4ee07900a567f92487fcd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
%global debug_package %{nil}

%define KVERREL %{version}-%{release}.%{_target_cpu}

Name:           kernel-@variant@
License:        GPLv2
Version:        @rpmvers@
Release:        @release@%{dist}.kraxel
Summary:        linux kernel, @variant@
Source0:        linux-@version@.tar.gz
Source1:        kernel.config.el75
Source9:        kernel.config.tweaks

BuildRequires:  gcc binutils
BuildRequires:  make bc flex bison
BuildRequires:  openssl-devel
BuildRequires:  pkgconfig(libelf)

Requires:       grubby
Provides:       kernel = %{KVERREL}

%package headers
Summary:        linux kernel, @variant@, headers
Obsoletes:      kernel-headers < %{KVERREL}
Provides:       kernel-headers = %{KVERREL}

%description
linux kernel, @variant@

%description headers
linux kernel, @variant@, headers

%prep
%setup -q -n linux-@version@

%build
mkdir build
make O=build defconfig
cp %{SOURCE1} build/.config
cat %{SOURCE9} >> build/.config
echo "CONFIG_LOCALVERSION=\"-%{release}.%{_target_cpu}\"" >> build/.config
make -C build olddefconfig
make -C build %{?_smp_mflags}

%install
mkdir -p %{buildroot}/{boot,lib/modules}
make INSTALL_PATH=%{buildroot}/boot \
     INSTALL_MOD_PATH=%{buildroot} \
     INSTALL_HDR_PATH=%{buildroot}/usr \
     INSTALLKERNEL=/bin/true \
     -C build \
     install modules_install headers_install

mv %{buildroot}/boot/System.map \
   %{buildroot}/boot/System.map-%{KVERREL}
mv %{buildroot}/boot/vmlinuz \
   %{buildroot}/boot/vmlinuz-%{KVERREL}
cp build/.config %{buildroot}/boot/config-%{KVERREL}

rm -rf %{buildroot}/lib/firmware
rm -f %{buildroot}/lib/modules/*/modules.*
find %{buildroot}/usr -name .install      -print | xargs rm
find %{buildroot}/usr -name ..install.cmd -print | xargs rm

find %{buildroot}/lib/modules -name "*.ko"  | xargs strip --strip-debug
find %{buildroot}/lib/modules -name "*.ko"  | xargs gzip

%post
echo "# new-kernel-pkg install %{name}-%{KVERREL}"
/usr/sbin/new-kernel-pkg --package %{name} --install "%{KVERREL}"

%preun
echo "# new-kernel-pkg remove %{name}-%{KVERREL}"
/usr/sbin/new-kernel-pkg --rminitrd --rmmoddep --remove "%{KVERREL}"

%posttrans
echo "# new-kernel-pkg update %{name}-%{KVERREL}"
/usr/sbin/new-kernel-pkg --package %{name} --mkinitrd --dracut --depmod \
	--update "%{KVERREL}"
echo "# new-kernel-pkg posttrans %{name}-%{KVERREL}"
/usr/sbin/new-kernel-pkg --package %{name} --rpmposttrans "%{KVERREL}"

%files
/boot/config-%{KVERREL}
/boot/vmlinuz-%{KVERREL}
/boot/System.map-%{KVERREL}
/lib/modules/*
%ghost /boot/initramfs-%{KVERREL}.img

%files headers
/usr/include/*