#
# spec file for package kernel-firmware
#
# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via http://bugs.opensuse.org/
#


Name:           kernel-firmware
BuildRequires:  fdupes
BuildRequires:  kernel-default
BuildRequires:  suse-module-tools
Version:        20150925git
Release:        0
Summary:        Linux kernel firmware files
License:        SUSE-Firmware and GPL-2.0 and GPL-2.0+ and MIT
Group:          System/Kernel
Url:            https://git.kernel.org/cgit/linux/kernel/git/firmware/linux-firmware.git/
# Created with git archive | bzip2
Source0:        linux-firmware-%{version}.tar.xz
Source1:        firmware.sh
# ast_dp501_fw.bin generated from header file of xf86-video-ast: MIT/X11 License
Source2:        ast_dp501_fw.bin
%define __find_supplements bash %_sourcedir/firmware.sh --find-supplements

%define __ksyms_supplements bash %_sourcedir/firmware.sh --cache %{_builddir}/%{?buildsubdir}/find_supplements.cache --find-supplements
%define __ksyms_path ^/lib/firmware
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
BuildArch:      noarch
# We make use of mkdir and touch during pre
Requires(pre):  coreutils
Provides:       qlogic-firmware
Obsoletes:      qlogic-firmware
Provides:       cxgb3-firmware
Obsoletes:      cxgb3-firmware
Provides:       ralink-firmware
Obsoletes:      ralink-firmware
Provides:       iwl1000-ucode
Obsoletes:      iwl1000-ucode
Provides:       iwl3945-ucode
Obsoletes:      iwl3945-ucode
Provides:       iwl4965-ucode
Obsoletes:      iwl4965-ucode
Provides:       iwl5000-ucode
Obsoletes:      iwl5000-ucode
Provides:       iwl5150-ucode
Obsoletes:      iwl5150-ucode
Provides:       iwl100-ucode
Obsoletes:      iwl100-ucode
Provides:       iwl1000-ucode
Obsoletes:      iwl1000-ucode
Provides:       iwl6000-ucode
Obsoletes:      iwl6000-ucode
Provides:       iwl6050-ucode
Obsoletes:      iwl6050-ucode
Provides:       iwl6000g2-ucode
Obsoletes:      iwl6000g2-ucode
Provides:       ath3k-firmware
Obsoletes:      ath3k-firmware

%description
This package contains the firmware for in-kernel drivers that was
previously included in the kernel. It is shared by all kernels >=
2.6.27-rc1.

%package -n ucode-amd
Supplements:    modalias(x86cpu:vendor%3A0002%3Afamily%3A*%3Amodel%3A*%3Afeature%3A*)
Summary:        Microcode updates for AMD CPUs
Group:          System/Kernel

%description -n ucode-amd
This package contains the microcode files used by AMD CPUs.

%prep
%setup -q -n linux-firmware-%version
cp %{S:2} .

%build
# nothing to do

%install
mkdir -p %{buildroot}/lib/firmware
cp -avf * %{buildroot}/lib/firmware
rm -f %{buildroot}/lib/firmware/WHENCE
bash %_sourcedir/firmware.sh --kill-duplicates %buildroot/lib/firmware/
%fdupes %{buildroot}
rm -f find_supplements.cache
# In alsa-firmware
rm -f %{buildroot}/lib/firmware/ctefx.bin
rm -f %{buildroot}/lib/firmware/ctspeq.bin
# Devel files
rm -rf %{buildroot}/lib/firmware/carl9170fw

%clean
rm -rf %{buildroot}

%post
%{?regenerate_initrd_post}

%post -n ucode-amd
%{?regenerate_initrd_post}

%posttrans
%{?regenerate_initrd_posttrans}

%posttrans -n ucode-amd
%{?regenerate_initrd_posttrans}

%files
%defattr(0644,root,root,0755)
%doc WHENCE README GPL-3 LICEN[CS]E.*
%exclude /lib/firmware/amd-ucode
%exclude /lib/firmware/LICENSE.amd-ucode
/lib/firmware/*

%files -n ucode-amd
%defattr(0644,root,root,0755)
/lib/firmware/amd-ucode
/lib/firmware/LICENSE.amd-ucode

%changelog