You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gnu-efi/SPECS/gnu-efi.spec

452 lines
16 KiB

## START: Set by rpmautospec
## (rpmautospec version 0.6.1)
## RPMAUTOSPEC: autorelease, autochangelog
%define autorelease(e:s:pb:n) %{?-p:0.}%{lua:
release_number = 3;
base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}"));
print(release_number + base_release_number - 1);
}%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}}
## END: Set by rpmautospec
# No, please don't break the linker. Thanks.
%undefine _auto_set_build_flags
Name: gnu-efi
Epoch: 1
Version: 3.0.18
Release: %autorelease
Summary: Development Libraries and headers for EFI
License: BSD-2-Clause AND BSD-2-Clause-Patent AND BSD-3-Clause AND BSD-4-Clause AND GPL-2.0-or-later AND GPL-2.0-only
URL: https://sourceforge.net/projects/gnu-efi/
Source0: https://sourceforge.net/projects/gnu-efi/files/gnu-efi-%{version}.tar.bz2
# these are taken from upstream with `git diff 3.0.18 > gnu-efi-backports.patch`
Patch0001: gnu-efi-backports.patch
# upstream this breaks non-GNU LD, Heinrich Schuchardt asked us not to do this:
# "The correct approach is to adjust the loader script to put non-static
# data into a different section than the code and to make the .text section RX."
#Patch0048: 0048-ld-Don-t-warn-about-RWX-segment-maps.patch
ExclusiveArch: %{efi}
BuildRequires: binutils
BuildRequires: efi-srpm-macros >= 5-4
BuildRequires: gcc
# We're explicitly *not* requiring glibc-headers, because it gets us
# cross-arch dependency problems in "fedpkg mockbuild" from x86_64.
# BuildRequires: glibc-headers
%ifarch x86_64
# So... in some build environments, glibc32 provides some headers. In
# others, glibc-devel.i686 does. They have no provides in common, as
# file provides in /usr/include or /usr/lib are not usable with dnf5.
BuildRequires: (glibc-devel(x86-32) or glibc32)
%endif
BuildRequires: make
# added 2020-01-24, so time is up...
Obsoletes: %{name}-compat < 1:3.0.11-12
# rpmlint, shut up.
%define lib %{nil}lib%{nil}
%define debug_package %{nil}
# brp-strip-static-archive will senselessly /add/ timestamps and uid/gid
# data to our .a and make them not multilib clean if we don't have this.
%undefine __brp_strip_static_archive
%global __brp_strip_static_archive find '%{buildroot}' -name '*.a' -print -exec %{__strip} -gDp {} \\;
%description
This package contains development headers and libraries for developing
applications that run under EFI (Extensible Firmware Interface).
%package devel
Summary: Development Libraries and headers for EFI
Obsoletes: gnu-efi < 1:3.0.2-1
Requires: gnu-efi = %{epoch}:%{version}-%{release}
%description devel
This package contains development headers and libraries for developing
applications that run under EFI (Extensible Firmware Interface).
%package utils
Summary: Utilities for EFI systems
%description utils
This package contains utilities for debugging and developing EFI systems.
%prep
%autosetup -p1
%build
%undefine _hardened_ldflags
# Package cannot build with %%{?_smp_mflags}.
make LIBDIR=%{_prefix}/lib
make apps
%install
make PREFIX=%{_prefix} LIBDIR=%{_prefix}/lib INSTALLROOT=%{buildroot} install
mkdir -p %{buildroot}/%{efi_esp_dir}/%{efi_arch}
mv %{buildroot}/usr/lib/gnuefi/apps/*.efi %{buildroot}%{efi_esp_dir}/%{efi_arch}/
%ifarch x86_64 aarch64
mkdir -p %{buildroot}%{_libdir}
mv %{buildroot}%{_prefix}/lib/pkgconfig %{buildroot}%{_libdir}
%endif
# delete useless file
rm %{buildroot}/usr/lib/gnuefi/apps/debughook.efi.debug
%pretrans devel -p <lua>
-- Handle replacing a symlink to a directory with an actual directory
-- https://docs.fedoraproject.org/en-US/packaging-guidelines/Directory_Replacement/
path = "/usr/include/efi/x86_64"
st = posix.stat(path)
if st and st.type == "link" then
os.remove(path)
end
%files
%{_prefix}/lib/*.o
%{_prefix}/lib/*.lds
%files devel
%doc README.*
%{_includedir}/efi
%{_prefix}/lib/libefi.a
%{_prefix}/lib/libgnuefi.a
%{_libdir}/pkgconfig/gnu-efi.pc
%files utils
%dir %attr(0700,root,root) %{efi_esp_dir}/%{efi_arch}/
%attr(0700,root,root) %{efi_esp_dir}/%{efi_arch}/*.efi
%changelog
* Tue Nov 26 2024 MSVSphere Packaging Team <packager@msvsphere-os.ru> - 1:3.0.18-3
- Rebuilt for MSVSphere 10
## START: Generated by rpmautospec
* Mon Jun 24 2024 Troy Dawson <tdawson@redhat.com> - 1:3.0.18-3
- Bump release for June 2024 mass rebuild
* Wed Jun 05 2024 Richard Hughes <richard@hughsie.com> - 1:3.0.18-2
- Add a gating.yaml
* Mon Jun 03 2024 Richard Hughes <richard@hughsie.com> - 1:3.0.18-1
- Rebase to newer upstream version and remove a lot of downstream patches
* Thu Jan 25 2024 Yaakov Selkowitz <yselkowi@redhat.com> - 1:3.0.11-27
- Fix build with dnf5
* Wed Jan 24 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.0.11-26
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.0.11-25
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.0.11-24
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Fri Mar 03 2023 Richard Hughes <richard@hughsie.com> - 1:3.0.11-23
- Backport two patches from master to fix fwupd-efi
* Thu Mar 02 2023 Robbie Harwood <rharwood@redhat.com> - 1:3.0.11-22
- Richard's patch to drop -compat
* Thu Mar 02 2023 Richard Hughes <richard@hughsie.com> - 1:3.0.11-21
- Remove the -compat package
* Tue Feb 21 2023 Peter Jones <pjones@redhat.com> - 1:3.0.11-20
- Fix build error on aarch64
* Tue Feb 21 2023 Peter Jones <pjones@redhat.com> - 1:3.0.11-19
- Make gnu stack sections allocatable.
* Wed Feb 01 2023 Peter Jones <pjones@redhat.com> - 1:3.0.11-18
- Don't discard .note.GNU-stack sections any more.
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.0.11-17
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.0.11-16
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Tue Jan 25 2022 Robbie Harwood <rharwood@redhat.com> - 1:3.0.11-15
- Cope with Fedora insisting harder on default buildflags
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.0.11-14
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Fri Sep 24 2021 Robbie Harwood <rharwood@redhat.com> - 1:3.0.11-13
- Rebuild to prove we can
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.0.11-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.0.11-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Tue Jan 05 2021 Tom Stellard <tstellar@redhat.com> - 1:3.0.11-10
- Add BuildRequires: make
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.0.11-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Tue Feb 04 2020 Peter Jones <pjones@redhat.com> - 1:3.0.11-8
- Forward-port patches from f31 and rebase from git
* Tue Feb 04 2020 Peter Jones <pjones@redhat.com> - 1:3.0.11-7
- Add the result dir from 'fedpkg mockbuild' to gitingore
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.0.11-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Fri Jan 24 2020 Peter Jones <pjones@redhat.com> - 1:3.0.11-5
- Make a compat subpackage to provide the old paths
* Fri Jan 24 2020 Peter Jones <pjones@redhat.com> - 1:3.0.11-4
- Temporarily make -devel require -compat
* Fri Jan 24 2020 Peter Jones <pjones@redhat.com> - 1:3.0.11-3
- Move the compat stuff to a subpackage.
* Fri Jan 24 2020 Peter Jones <pjones@redhat.com> - 1:3.0.11-2
- Make the gnu-efi Makefiles install some of our compat libs.
* Thu Jan 23 2020 Peter Jones <pjones@redhat.com> - 1:3.0.11-1
- Update to 3.0.11 and add some fixes and enhancements.
- Update to 3.0.11 (via patches generated from git)
- Plus newer upstream fixes (also via patches generated from git)
- Fix shell exit failures in make
- Fix .reloc section generation
- Fix CHAR8 definition
- Fix "make DESTDIR=..."
- Change the installed .a/.o layout
- Provide makefiles for consumers to use.
- Make the -devel noarch since it's just headers.
- Add a bunch of compatibility symlinks for our older packages. These will
go away once we've migrated everything using them in fedora to use the
newer make system...
* Thu Jan 23 2020 Peter Jones <pjones@redhat.com> - 1:3.0.9-6
- New workaround for __brp_strip_static_archive being bad.
* Thu Dec 26 2019 Peter Robinson <pbrobinson@gmail.com> - 1:3.0.9-5
- Upstream fixes, minor cleanups
* Mon Aug 26 2019 Peter Jones <pjones@redhat.com> - 1:3.0.9-4
- Rebase to upstream git
* Mon Aug 26 2019 Peter Jones <pjones@redhat.com> - 1:3.0.9-3
- Fix some minor rpmlint complaints
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.0.9-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Wed Mar 20 2019 Peter Jones <pjones@redhat.com> - 1:3.0.9-1
- Update to gnu-efi 3.0.9
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.0.8-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Mon Jan 28 2019 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1:3.0.8-10
- Remove obsolete Group tag
* Wed Jul 18 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1:3.0.8-9
- add BuildRequires: gcc
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.0.8-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Tue Jul 10 2018 Jason Tibbitts <tibbs@math.uh.edu> - 1:3.0.8-7
- Remove needless use of %%defattr
* Fri May 04 2018 Peter Jones <pjones@redhat.com> - 1:3.0.8-6
- Rebuild for new efi-rpm-macros, now that it has settled down a bit.
* Tue May 01 2018 Peter Jones <pjones@redhat.com> - 1:3.0.8-5
- Use efi-rpm-macros instead of defining all the stuff ourselves
* Mon Apr 30 2018 Peter Jones <pjones@redhat.com> - 1:3.0.8-4
- Fix minor spelling error.
* Mon Apr 30 2018 Peter Jones <pjones@redhat.com> - 1:3.0.8-3
- Fix permissions on /boot/efi/...
* Wed Mar 21 2018 Peter Jones <pjones@redhat.com> - 1:3.0.8-2
- Fix permissions for /boot/efi/...
* Tue Mar 20 2018 Peter Jones <pjones@redhat.com> - 1:3.0.8-1
- Update to 3.0.8 (from git).
* Tue Mar 13 2018 Peter Jones <pjones@redhat.com> - 1:3.0.7-1
- Update to 3.0.7 (from git) and add some pending patches we need.
* Wed Feb 14 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1:3.0.5-18
- Remove %%clean section
* Tue Feb 13 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 1:3.0.5-17
- Remove BuildRoot definition
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.0.5-16
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Thu Aug 24 2017 Peter Jones <pjones@redhat.com> - 1:3.0.5-15
- Don't make .reloc sections on Aarch64 binaries.
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.0.5-14
- Rebuilt for
https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.0.5-13
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Tue Jun 13 2017 Peter Jones <pjones@redhat.com> - 1:3.0.5-12
- Update this to try to get determanistic builds.
* Tue Jun 13 2017 Peter Jones <pjones@redhat.com> - 1:3.0.5-11
- Update this to try to get determanistic builds.
* Mon Mar 20 2017 Peter Jones <pjones@redhat.com> - 1:3.0.5-10
- Also build the ia32 bits in a separate 32-bit package for other
consumers.
* Mon Mar 13 2017 Peter Jones <pjones@redhat.com> - 1:3.0.5-9
- Include ia32 bits in the x86_64 packages instead of making a separate
32-bit package
* Mon Mar 13 2017 Peter Jones <pjones@redhat.com> - 1:3.0.5-8
- Try asking for glibc32 instead...
* Mon Mar 13 2017 Peter Jones <pjones@redhat.com> - 1:3.0.5-7
- Include ia32 bits in the x86_64 packages instead of making a separate
32-bit package
* Tue Feb 28 2017 Peter Jones <pjones@redhat.com> - 1:3.0.5-6
- Fix some bugs from the 3.0.5 release...
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1:3.0.5-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Thu Feb 02 2017 Peter Jones <pjones@redhat.com> - 1:3.0.5-4
- Update to 3.0.5
* Thu Feb 02 2017 Peter Jones <pjones@redhat.com> - 1:3.0.5-3
- Attempt to fix the build on arm*v*7
* Thu Feb 02 2017 Peter Jones <pjones@redhat.com> - 1:3.0.5-2
- Attempt to fix the build on arm7
* Thu Feb 02 2017 Peter Jones <pjones@redhat.com> - 1:3.0.5-1
- Update to 3.0.5
* Tue Feb 23 2016 Peter Jones <pjones@redhat.com> - 1:3.0.3-4
- Include patches from upstream that are after 3.0.3 This should fix the
arm
* Tue Feb 23 2016 Peter Jones <pjones@redhat.com> - 1:3.0.3-3
- Also build for armv7
* Tue Feb 23 2016 Peter Jones <pjones@redhat.com> - 1:3.0.3-2
- Also build for armv7
* Mon Feb 22 2016 Peter Jones <pjones@redhat.com> - 1:3.0.3-1
- Rebase to 3.0.3
* Wed Feb 03 2016 Dennis Gilmore <dennis@ausil.us> - 1:3.0.2-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Fri Jan 29 2016 Dan Horák <dan@danny.cz> - 1:3.0.2-4
- use safer method to evaluate %%efidir
* Wed Jun 17 2015 Dennis Gilmore <dennis@ausil.us> - 1:3.0.2-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Wed May 13 2015 Peter Jones <pjones@redhat.com> - 1:3.0.2-2
- Fix up building of the apps for the new Makefiles.
* Wed May 13 2015 Peter Jones <pjones@redhat.com> - 1:3.0.2-1
- Update to 3.0.2
- Fix base package requirement on subpackages
- Add setjmp, because this is my life.
* Tue Mar 10 2015 Peter Jones <pjones@redhat.com> - 1:3.0.1-1
- Update to 3.0.1
* Thu Nov 20 2014 Peter Jones <pjones@redhat.com> - 3.0w-4
- Fix the paths in the patches.
* Thu Nov 20 2014 Peter Jones <pjones@redhat.com> - 3.0w-3
- Use patches upstream is going to take for the build fixes
- Add some new protocol definitons.
* Wed Sep 17 2014 Peter Jones <pjones@redhat.com> - 3.0w-2
- Use %%{ix86} instead of i686 in the ExclusiveArch line.
* Tue Aug 26 2014 Kyle McMartin <kyle@mcmartin.ca> - 3.0w-1
- New upstream version 3.0w
- Add pjones' build fixes patch from that other distro.
- Enable AArch64
* Sat Aug 16 2014 Peter Robinson <pbrobinson@fedoraproject.org> - 3.0u-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Sat Jun 07 2014 Dennis Gilmore <dennis@ausil.us> - 3.0u-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Wed Oct 02 2013 Peter Jones <pjones@redhat.com> - 3.0u-1
- Update to 3.0u
* Sat Aug 03 2013 Dennis Gilmore <dennis@ausil.us> - 3.0t-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Fri Jun 07 2013 Peter Jones <pjones@redhat.com> - 3.0t-1
- Update to 3.0t
- Don't allow use of mmx or sse registers.
* Thu May 16 2013 Peter Jones <pjones@redhat.com> - 3.0s-2
- Woops, forgot to update changelog in -1
* Thu May 16 2013 Peter Jones <pjones@redhat.com> - 3.0s-1
- Update to 3.0s
* Thu Feb 14 2013 Dennis Gilmore <dennis@ausil.us> - 3.0q-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Fri Sep 21 2012 Peter Jones <pjones@redhat.com> - 3.0q-2
- Fix "git am" invocation.
* Sat Jul 28 2012 Matthew Garrett <mjg@redhat.com> - 3.0q-1
- Update to current upstream
- License change - GPLv2+ to BSD
* Thu Jul 19 2012 Dennis Gilmore <dennis@ausil.us> - 3.0e-36
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Wed Apr 25 2012 Peter Jones <pjones@redhat.com> - 3.0e-35
- Align .reloc section as well to make secureboot work (mfleming)
* Fri Jan 13 2012 Dennis Gilmore <dennis@ausil.us> - 3.0e-34
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
* Thu Aug 11 2011 Peter Jones <pjones@redhat.com> - 3.0e-33
- Fix *another* compile error on i686.
* Thu Aug 11 2011 Peter Jones <pjones@redhat.com> - 3.0e-32
- Fix a compile error on i686.
* Thu Aug 11 2011 Peter Jones <pjones@redhat.com> - 3.0e-31
- Fix missing file.
* Thu Aug 11 2011 Peter Jones <pjones@redhat.com> - 3.0e-30
- Whitespace fixes.
* Thu Aug 11 2011 Peter Jones <pjones@redhat.com> - 3.0e-29
- Fix merge error.
* Thu Aug 11 2011 Peter Jones <pjones@redhat.com> - 3.0e-28
- RPMAUTOSPEC: unresolvable merge
## END: Generated by rpmautospec