Summary: Microcode definitions for Intel processors
+Summary(pl.UTF-8): Definicje mikrokodu dla procesorów Intela
Name: microcode-data-intel
-Version: 20111110
+Version: 20180807
Release: 1
License: INTEL SOFTWARE LICENSE AGREEMENT
Group: Base
-# http://downloadcenter.intel.com/, enter "microcode" to the search
-Source0: http://downloadmirror.intel.com/20728/eng/microcode-%{version}.tgz
-# Source0-md5: ba288eb9490986513e59c5a035c93a65
+# http://downloadcenter.intel.com/, enter "processor microcode data file" to the search
+Source0: https://downloadmirror.intel.com/28039/eng/microcode-%{version}.tgz
+# Source0-md5: 49f534f1079d3c5bc178a150c1c105aa
Provides: microcode-data
-ExclusiveArch: i686 pentium2 pentium3 pentium4 %{x8664}
+BuildRequires: iucode-tool
+BuildArch: noarch
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-# nothing to put there
-%define _enable_debug_packages 0
-
%description
The microcode data file for Linux contains the latest microcode
definitions for all Intel processors.
+%description -l pl.UTF-8
+Te pliki danych mikrokodu dla Linuksa zawierają najnowsze definicje
+mikrokodu dla procesorów Intela.
+
+%package initrd
+Summary: Microcode for initrd
+Summary(pl.UTF-8): Mikrokod dla initrd
+Group: Base
+
+%description initrd
+Intel microcode for initrd.
+
+%description initrd -l pl.UTF-8
+Mikrokod dla procesorów Intel dla initrd.
+
%prep
-%setup -q -c
+%setup -qc
%build
-if ! grep -q 0x00000000 microcode.dat; then
- echo >&2 microcode.dat contains giberrish
- exit 1
-fi
+
+%{_sbindir}/iucode_tool intel-ucode*/*-* -tb --write-to=microcode.bin
+
+install -d kernel/x86/microcode
+ln microcode.bin kernel/x86/microcode/GenuineIntel.bin
+echo kernel/x86/microcode/GenuineIntel.bin | cpio -o -H newc -R 0:0 > intel-ucode.img
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT/lib/firmware
-cp -a microcode.dat $RPM_BUILD_ROOT/lib/firmware/microcode.dat
+install -d $RPM_BUILD_ROOT{/lib/firmware,/boot}
+
+cp -a intel-ucode $RPM_BUILD_ROOT/lib/firmware
+cp -p intel-ucode.img $RPM_BUILD_ROOT/boot
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(644,root,root,755)
-%attr(640,root,root) /lib/firmware/microcode.dat
+%doc releasenote
+/lib/firmware/intel-ucode
+
+%files initrd
+%doc releasenote
+%defattr(644,root,root,755)
+/boot/intel-ucode.img