Blame SPECS/fwupdate.spec

d99e03
%global efivar_version 36-1
d99e03
%global efibootmgr_version 17-1
d99e03
%global gnu_efi_version 1:3.0.8-1
d99e03
%global pesign_version 0.109-10
d99e03
d99e03
Name:           fwupdate
d99e03
Version:        12
d99e03
Release:        5%{?dist}
d99e03
Summary:        Tools to manage UEFI firmware updates
d99e03
License:        GPLv2+
d99e03
URL:            https://github.com/rhinstaller/fwupdate
d99e03
Requires:       %{name}-libs%{?_isa} = %{version}-%{release}
d99e03
BuildRequires:  efivar-devel >= %{efivar_version}
d99e03
BuildRequires:  gnu-efi >= %{gnu_efi_version}
d99e03
BuildRequires:  gnu-efi-devel >= %{gnu_efi_version}
d99e03
BuildRequires:  pesign >= %{pesign_version}
d99e03
BuildRequires:  elfutils popt-devel git gettext pkgconfig
d99e03
BuildRequires:  systemd
d99e03
ExclusiveArch:  x86_64 aarch64
d99e03
Source0:        https://github.com/rhinstaller/fwupdate/releases/download/%{name}-%{version}/%{name}-%{version}.tar.bz2
d99e03
Source1:        securebootca.cer
d99e03
Source2:        secureboot.cer
d99e03
Patch0001: 0001-Make-some-compiler-versions-ignore-missing-field-ini.patch
d99e03
Patch0002: 0002-libfwup-set_up_boot_next-make-sure-we-check-if-our-f.patch
d99e03
Patch0003: 0003-Actually-add-fwup_version-to-our-exposed-API-list.patch
d99e03
d99e03
%ifarch x86_64
d99e03
%global efiarch x64
d99e03
%endif
d99e03
%ifarch aarch64
d99e03
%global efiarch aa64
d99e03
%endif
d99e03
d99e03
# Figure out the right file path to use
d99e03
%global efidir %(eval echo $(grep ^ID= /etc/os-release | sed -e 's/^ID=//' -e 's/rhel/redhat/'))
d99e03
d99e03
%description
d99e03
fwupdate provides a simple command line interface to the UEFI firmware updates.
d99e03
d99e03
%package libs
d99e03
Summary: Library to manage UEFI firmware updates
d99e03
Requires: %{name}-efi = %{version}-%{release}
d99e03
d99e03
%description libs
d99e03
Library to allow for the simple manipulation of UEFI firmware updates.
d99e03
d99e03
%package devel
d99e03
Summary: Development headers for libfwup
d99e03
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
d99e03
Requires: efivar-devel >= %{efivar_version}
d99e03
d99e03
%description devel
d99e03
development headers required to use libfwup.
d99e03
d99e03
%package efi
d99e03
Summary: UEFI binaries used by libfwup
d99e03
Requires: shim
d99e03
d99e03
%description efi
d99e03
UEFI binaries used by libfwup.
d99e03
d99e03
%prep
d99e03
%setup -q -n %{name}-%{version}
d99e03
git init
d99e03
git config user.email "%{name}-owner@fedoraproject.org"
d99e03
git config user.name "Fedora Ninjas"
d99e03
git add .
d99e03
git commit -a -q -m "%{version} baseline."
d99e03
git am %{patches} 
d99e03
git config --unset user.email
d99e03
git config --unset user.name
d99e03
d99e03
%build
d99e03
git config --local --add fwupdate.efidir '%{efidir}'
d99e03
%ifarch x86_64
d99e03
setarch linux32 -B make CFLAGS="$RPM_OPT_FLAGS" libdir=%{_libdir} \
d99e03
        bindir=%{_bindir} EFIDIR=%{efidir} %{?_smp_mflags} \
d99e03
        SUBDIRS=efi ARCH=ia32
d99e03
mv -v efi/fwupia32.efi fwupia32.unsigned.efi
d99e03
%pesign -s -i fwupia32.unsigned.efi -o fwupia32.efi -a %{SOURCE1} -c %{SOURCE2} -n redhatsecureboot301
d99e03
make clean
d99e03
%endif
d99e03
make CFLAGS="$RPM_OPT_FLAGS" libdir=%{_libdir} bindir=%{_bindir} \
d99e03
     EFIDIR=%{efidir} %{?_smp_mflags}
d99e03
mv -v efi/fwup%{efiarch}.efi efi/fwup%{efiarch}.unsigned.efi
d99e03
%pesign -s -i efi/fwup%{efiarch}.unsigned.efi -o efi/fwup%{efiarch}.efi -a %{SOURCE1} -c %{SOURCE2} -n redhatsecureboot301
d99e03
d99e03
%install
d99e03
rm -rf $RPM_BUILD_ROOT
d99e03
install -d -m 0755 $RPM_BUILD_ROOT/boot/efi/EFI/%{efidir}/
d99e03
%make_install EFIDIR=%{efidir} libdir=%{_libdir} \
d99e03
       bindir=%{_bindir} mandir=%{_mandir} localedir=%{_datadir}/locale/ \
d99e03
       includedir=%{_includedir} libexecdir=%{_libexecdir} \
d99e03
       datadir=%{_datadir}
d99e03
%ifarch x86_64
d99e03
mv fwupia32.efi $RPM_BUILD_ROOT/boot/efi/EFI/%{efidir}/
d99e03
%endif
d99e03
d99e03
%ifnarch %{ix86}
d99e03
%post libs
d99e03
/sbin/ldconfig
d99e03
%systemd_post fwupdate-cleanup.service
d99e03
d99e03
%preun libs
d99e03
%systemd_preun fwupdate-cleanup.service
d99e03
d99e03
%postun libs
d99e03
/sbin/ldconfig
d99e03
%systemd_postun_with_restart pesign.service
d99e03
d99e03
%files
d99e03
%defattr(-,root,root,-)
d99e03
%{!?_licensedir:%global license %%doc}
d99e03
%license COPYING
d99e03
# %%doc README
d99e03
%{_bindir}/fwupdate
d99e03
%{_datadir}/locale/en/fwupdate.po
d99e03
%doc %{_mandir}/man1/*
d99e03
%dir %{_datadir}/bash-completion/completions
d99e03
%{_datadir}/bash-completion/completions/fwupdate
d99e03
d99e03
%files devel
d99e03
%defattr(-,root,root,-)
d99e03
%doc %{_mandir}/man3/*
d99e03
%{_includedir}/*
d99e03
%{_libdir}/*.so
d99e03
%{_libdir}/pkgconfig/*.pc
d99e03
d99e03
%files libs
d99e03
%defattr(-,root,root,-)
d99e03
%{_libdir}/*.so.*
d99e03
%{_datadir}/locale/en/libfwup.po
d99e03
%{_unitdir}/fwupdate-cleanup.service
d99e03
%attr(0755,root,root) %dir %{_sharedstatedir}/fwupdate/
d99e03
%config(noreplace) %ghost %{_sharedstatedir}/fwupdate/done
d99e03
%attr(0755,root,root) %dir %{_libexecdir}/fwupdate/
d99e03
%{_libexecdir}/fwupdate/cleanup
d99e03
%endif
d99e03
d99e03
%files efi
d99e03
%defattr(-,root,root,-)
d99e03
%dir %attr(0700,root,root) %dir /boot/efi
d99e03
%dir %attr(0700,root,root)/boot/efi/EFI/%{efidir}/
d99e03
%dir %attr(0700,root,root)/boot/efi/EFI/%{efidir}/fw/
d99e03
%attr(0700,root,root)/boot/efi/EFI/%{efidir}/fwup*.efi
d99e03
d99e03
%changelog
d99e03
* Thu Jun 28 2018 Peter Jones <pjones@redhat.com> - 12-5
d99e03
- Make sure fwup_version() gets exported correctly.
d99e03
  Related: rhbz#1570032
d99e03
d99e03
* Thu Jun 21 2018 Peter Jones <pjones@redhat.com> - 12-4
d99e03
- Fix permissions on /boot/efi/...
d99e03
  Related: rhbz#1496952
d99e03
d99e03
* Thu Jun 14 2018 Peter Jones <pjones@redhat.com> - 12-3
d99e03
- Fix some more covscan nits.
d99e03
  Related: rhbz#1570032
d99e03
d99e03
* Wed Jun 13 2018 Peter Jones <pjones@redhat.com> - 12-2
d99e03
- Fix some covscan nits.
d99e03
  Related: rhbz#1570032
d99e03
d99e03
* Mon Jun 11 2018 Peter Jones <pjones@redhat.com> - 12-1
d99e03
- Update to fwupdate-12
d99e03
  Resolves: rhbz#1570032
d99e03
d99e03
* Fri May 19 2017 Peter Jones <pjones@redhat.com> - 9-8
d99e03
- Hopefully the last TPS related rebuild.
d99e03
  Related: rhbz#1380825
d99e03
d99e03
* Fri May 19 2017 Peter Jones <pjones@redhat.com> - 9-7
d99e03
- One more TPS related rebuild...
d99e03
  Related: rhbz#1380825
d99e03
d99e03
* Wed May 17 2017 Peter Jones <pjones@redhat.com> - 9-6
d99e03
- Rebuild to make some dependencies versioned, in order to make TPS's really
d99e03
  broken builder setup work.
d99e03
  Related: rhbz#1380825
d99e03
d99e03
* Tue May 09 2017 Peter Jones <pjones@redhat.com> - 9-5
d99e03
- Fix some more coverity issues
d99e03
  Related: rhbz#1380825
d99e03
d99e03
* Mon May 08 2017 Peter Jones <pjones@redhat.com> - 9-4
d99e03
- Fix some more coverity issues
d99e03
  Related: rhbz#1380825
d99e03
d99e03
* Mon Apr 03 2017 Peter Jones <pjones@redhat.com> - 9-3
d99e03
- Fix CFLAGS on make invocation
d99e03
  Related: rhbz#1380825
d99e03
d99e03
* Tue Mar 28 2017 Peter Jones <pjones@redhat.com> - 9-2
d99e03
- Fix a pile of coverity issues.
d99e03
  Related: rhbz#1380825
d99e03
d99e03
* Mon Mar 13 2017 Peter Jones <pjones@redhat.com> - 9-1
d99e03
- First build in RHEL 7
d99e03
  Resolves: rhbz#1380825