gnu-efi/gnu-efi.spec
chen-jan 3bededdc5a unset ldflags for fix build error
(cherry picked from commit 6be9400fe48650678399552709fe8c23007be6da)
2023-08-28 14:51:59 +08:00

129 lines
3.9 KiB
RPMSpec

%define debug_package %{nil}
Name: gnu-efi
Version: 3.0.17
Release: 5
Summary: Development Libraries and headers for EFI
Epoch: 1
License: BSD
URL: https://sourceforge.net/projects/gnu-efi
ExclusiveArch: x86_64 aarch64 loongarch64 riscv64
Source0: https://sourceforge.net/projects/gnu-efi/files/%{name}-%{version}.tar.bz2
#stubs-32.h comes from http://www.gnu.org/software/glibc/
Source1: stubs-32.h
Patch1: 0001-gnu-efi-add-CHAR16-for-loongarch64.patch
%global efidir %(eval echo $(grep ^ID= /etc/os-release | sed 's/^ID=//'))
%ifarch x86_64
%global efiarch x86_64
%endif
%ifarch aarch64
%global efiarch aarch64
%endif
%ifarch loongarch64
%global efiarch loongarch64
%endif
%ifarch riscv64
%global efiarch riscv64
%endif
Provides: %{name}-utils = %{epoch}:%{version}-%{release}
Obsoletes: %{name}-utils < %{epoch}:%{version}-%{release}
BuildRequires: gcc make binutils
%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).
%prep
%autosetup -n %{name}-%{version} -p1
install -d gnuefi/gnu
install -Dp %{SOURCE1} gnuefi/gnu/
%build
unset LDFLAGS
make
make apps
%ifarch x86_64
setarch linux32 -B make ARCH=ia32 PREFIX=%{_prefix} LIBDIR=%{_prefix}/lib
setarch linux32 -B make ARCH=ia32 PREFIX=%{_prefix} LIBDIR=%{_prefix}/lib apps
%endif
%install
install -d %{buildroot}/%{_libdir}/gnuefi
install -d %{buildroot}/boot/efi/EFI/%{efidir}/%{efiarch}
make PREFIX=%{_prefix} LIBDIR=%{_libdir} INSTALLROOT=%{buildroot} install
mv %{buildroot}/%{_libdir}/*.lds %{buildroot}/%{_libdir}/*.o %{buildroot}/%{_libdir}/gnuefi
mv %{efiarch}/apps/{route80h.efi,modelist.efi} %{buildroot}/boot/efi/EFI/%{efidir}/%{efiarch}/
%ifarch x86_64
install -d %{buildroot}/%{_prefix}/lib/gnuefi
install -d %{buildroot}/boot/efi/EFI/%{efidir}/ia32
setarch linux32 -B make PREFIX=%{_prefix} LIBDIR=%{_prefix}/lib INSTALLROOT=%{buildroot} ARCH=ia32 install
mv %{buildroot}/%{_prefix}/lib/*.{lds,o} %{buildroot}/%{_prefix}/lib/gnuefi/
mv ia32/apps/{route80h.efi,modelist.efi} %{buildroot}/boot/efi/EFI/%{efidir}/ia32/
%endif
%files
%{_prefix}/lib*/*
%dir %attr(0700,root,root) /boot/efi/EFI/%{efidir}/*/
%attr(0700,root,root) /boot/efi/EFI/%{efidir}/*/*.efi
%files devel
%defattr(-,root,root,-)
%doc README.*
%{_includedir}/efi
%changelog
* Mon Aug 28 2023 chenchen <chen_aka_jan@163.com> - 1:3.0.17-5
- unset ldflags for fix build error
* Thu Jul 20 2023 zhangxiang <zhangxiang@iscas.ac.cn> - 1:3.0.17-4
- Fix ExclusiveArch for riscv64
* Wed Jul 19 2023 misaka00251 <liuxin@iscas.ac.cn> - 1:3.0.17-3
- Enable build on riscv64
* Thu Jul 6 2023 doupengda <doupengda@loongson.cn> - 1:3.0.17-2
- gnu-efi add CHAR16 for loongarch64
* Tue Jun 20 2023 chenchen <chen_aka_jan@163.com> - 1:3.0.17-1
- Upgrade to version 3.0.17
* Mon Jun 7 2021 baizhonggui <baizhonggui@huawei.com> - 3.0.8-10
- Fix building error: make[1]: gcc: No such file or directory
- Add gcc in BuildRequires
* Thu Sep 10 2020 liuweibo <liuweibo10@huawei.com> - 3.0.8-9
- Fix Source0
* Wed Mar 18 2020 likexin <likexin4@huawei.com> - 3.0.8-8
- Delete modify-cflags.patch
* Wed Mar 18 2020 likexin <likexin4@huawei.com> - 3.0.8-7
- Fix up modify-cflags.patch
* Wed Mar 18 2020 likexin <likexin4@huawei.com> - 3.0.8-6
- Add cflags -fstack-protector-strong
* Fri Mar 13 2020 zhujunhao<zhujunhao5@huawei.com> - 3.0.8-5
- Modify x86 build failed
* Wed Jan 15 2020 yuxiangyang4<yuxiangyang4@huawei.com> - 3.0.8-4
- Upgrade source code to 3.0.8
* Wed Nov 20 2019 yangjian<yangjian79@huawei.com> - 3.0.8-3
- Package init