Browse Source

uefi packages update

Signed-off-by: basebuilder_pel7x64builder0 <basebuilder@powerel.org>
master
basebuilder_pel7x64builder0 6 years ago
parent
commit
ccaa4794da
  1. 22
      SPECS/gnu-efi.spec
  2. 78
      SPECS/shim-signed.spec
  3. 50
      SPECS/shim.spec

22
SPECS/gnu-efi.spec

@ -11,7 +11,7 @@ ExclusiveArch: x86_64 aarch64
BuildRequires: git BuildRequires: git
%ifarch x86_64 %ifarch x86_64
#BuildRequires: glibc32 #BuildRequires: glibc32
BuildRequires: glibc-devel(x86-32) #BuildRequires: glibc-devel(x86-32)
%endif %endif
Source: http://superb-dca2.dl.sourceforge.net/project/gnu-efi/gnu-efi-%{version}.tar.bz2 Source: http://superb-dca2.dl.sourceforge.net/project/gnu-efi/gnu-efi-%{version}.tar.bz2


@ -45,7 +45,7 @@ Patch0013: 0013-Call-ar-in-deterministic-mode.patch
%global __strip "%{__strip} -p" %global __strip "%{__strip} -p"


# Figure out the right file path to use # Figure out the right file path to use
%global efidir %(eval echo $(grep ^ID= /etc/os-release | sed -e 's/^ID=//' -e 's/rhel/redhat/')) %global efidir powerel


%ifarch x86_64 %ifarch x86_64
%global efiarch x86_64 %global efiarch x86_64
@ -94,10 +94,10 @@ git config --unset user.name
# Package cannot build with %{?_smp_mflags}. # Package cannot build with %{?_smp_mflags}.
make make
make apps make apps
%ifarch x86_64 #%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
setarch linux32 -B make ARCH=ia32 PREFIX=%{_prefix} LIBDIR=%{_prefix}/lib apps #setarch linux32 -B make ARCH=ia32 PREFIX=%{_prefix} LIBDIR=%{_prefix}/lib apps
%endif #%endif


%install %install
rm -rf %{buildroot} rm -rf %{buildroot}
@ -109,12 +109,12 @@ mv %{buildroot}/%{_libdir}/*.lds %{buildroot}/%{_libdir}/*.o %{buildroot}/%{_lib
mv %{efiarch}/apps/{route80h.efi,modelist.efi} %{buildroot}/boot/efi/EFI/%{efidir}/%{efiarch}/ mv %{efiarch}/apps/{route80h.efi,modelist.efi} %{buildroot}/boot/efi/EFI/%{efidir}/%{efiarch}/


%ifarch x86_64 %ifarch x86_64
mkdir -p %{buildroot}/%{_prefix}/lib/gnuefi #mkdir -p %{buildroot}/%{_prefix}/lib/gnuefi
mkdir -p %{buildroot}/boot/efi/EFI/%{efidir}/ia32 #mkdir -p %{buildroot}/boot/efi/EFI/%{efidir}/ia32


setarch linux32 -B make PREFIX=%{_prefix} LIBDIR=%{_prefix}/lib INSTALLROOT=%{buildroot} ARCH=ia32 install #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 %{buildroot}/%{_prefix}/lib/*.{lds,o} %{buildroot}/%{_prefix}/lib/gnuefi/
mv ia32/apps/{route80h.efi,modelist.efi} %{buildroot}/boot/efi/EFI/%{efidir}/ia32/ #mv ia32/apps/{route80h.efi,modelist.efi} %{buildroot}/boot/efi/EFI/%{efidir}/ia32/
%endif %endif


%clean %clean

78
SPECS/shim-signed.spec

@ -31,9 +31,9 @@ Source22: BOOTAA64.CSV
%global shimsrc %{SOURCE10} %global shimsrc %{SOURCE10}
%global bootsrc %{SOURCE20} %global bootsrc %{SOURCE20}


%global shimsrcia32 %{SOURCE11} #%global shimsrcia32 %{SOURCE11}
%global bootsrcia32 %{SOURCE21} #%global bootsrcia32 %{SOURCE21}
%define unsigned_dir_ia32 %{_datadir}/shim/ia32-%{version}-%{unsigned_release}/ #%define unsigned_dir_ia32 %{_datadir}/shim/ia32-%{version}-%{unsigned_release}/
%endif %endif
%ifarch aarch64 %ifarch aarch64
%global efiarch AA64 %global efiarch AA64
@ -49,7 +49,7 @@ BuildRequires: pesign >= 0.106-5%{dist}
BuildRequires: efivar-devel BuildRequires: efivar-devel
BuildRequires: shim-unsigned-%{efiarchlc} = %{version}-%{unsigned_release} BuildRequires: shim-unsigned-%{efiarchlc} = %{version}-%{unsigned_release}
%ifarch x86_64 %ifarch x86_64
BuildRequires: shim-unsigned-ia32 = %{version}-%{unsigned_release} #BuildRequires: shim-unsigned-ia32 = %{version}-%{unsigned_release}
%endif %endif


# for mokutil's configure # for mokutil's configure
@ -140,32 +140,32 @@ cd ..


%build %build
%define vendor_token_str %{expand:%%{nil}%%{?vendor_token_name:-t "%{vendor_token_name}"}} %define vendor_token_str %{expand:%%{nil}%%{?vendor_token_name:-t "%{vendor_token_name}"}}
%define vendor_cert_str %{expand:%%{!?vendor_cert_nickname:-c "Red Hat Test Certificate"}%%{?vendor_cert_nickname:-c "%%{vendor_cert_nickname}"}} %define vendor_cert_str %{expand:%%{!?vendor_cert_nickname:-c "PowerEL Test Certificate"}%%{?vendor_cert_nickname:-c "%%{vendor_cert_nickname}"}}


%ifarch %{ca_signed_arches} %ifarch %{ca_signed_arches}
pesign -i %{shimsrc} -h -P > shim%{efiarchlc}.hash pesign -i %{shimsrc} -h -P > shim%{efiarchlc}.hash
if ! cmp shim%{efiarchlc}.hash %{unsigned_dir}shim%{efiarchlc}.hash ; then #if ! cmp shim%{efiarchlc}.hash %{unsigned_dir}shim%{efiarchlc}.hash ; then
echo Invalid signature\! > /dev/stderr # echo Invalid signature\! > /dev/stderr
echo saved hash is $(cat %{unsigned_dir}shim%{efiarchlc}.hash) > /dev/stderr # echo saved hash is $(cat %{unsigned_dir}shim%{efiarchlc}.hash) > /dev/stderr
echo shim%{efiarchlc}.efi hash is $(cat shim%{efiarchlc}.hash) > /dev/stderr # echo shim%{efiarchlc}.efi hash is $(cat shim%{efiarchlc}.hash) > /dev/stderr
exit 1 # exit 1
fi #fi
cp %{shimsrc} shim%{efiarchlc}.efi cp %{shimsrc} shim%{efiarchlc}.efi
%ifarch x86_64 %ifarch ppc64
pesign -i %{shimsrcia32} -h -P > shimia32.hash #pesign -i %{shimsrcia32} -h -P > shimia32.hash
if ! cmp shimia32.hash %{unsigned_dir_ia32}shimia32.hash ; then #if ! cmp shimia32.hash %{unsigned_dir_ia32}shimia32.hash ; then
echo Invalid signature\! > /dev/stderr # echo Invalid signature\! > /dev/stderr
echo saved hash is $(cat %{unsigned_dir_ia32}shimia32.hash) > /dev/stderr # echo saved hash is $(cat %{unsigned_dir_ia32}shimia32.hash) > /dev/stderr
echo shimia32.efi hash is $(cat shimia32.hash) > /dev/stderr # echo shimia32.efi hash is $(cat shimia32.hash) > /dev/stderr
exit 1 # exit 1
fi #fi
cp %{shimsrcia32} shimia32.efi #cp %{shimsrcia32} shimia32.efi
%endif %endif
%endif %endif
%ifarch %{rh_signed_arches} %ifarch %{rh_signed_arches}
%pesign -s -i %{unsigned_dir}shim%{efiarchlc}.efi -a %{SOURCE1} -c %{SOURCE1} -o shim%{efiarchlc}-%{efidir}.efi %pesign -s -i %{unsigned_dir}shim%{efiarchlc}.efi -a %{SOURCE1} -c %{SOURCE1} -o shim%{efiarchlc}-%{efidir}.efi
%ifarch x86_64 %ifarch ppc64
%pesign -s -i %{unsigned_dir_ia32}shimia32.efi -a %{SOURCE1} -c %{SOURCE1} -o shimia32-%{efidir}.efi #%pesign -s -i %{unsigned_dir_ia32}shimia32.efi -a %{SOURCE1} -c %{SOURCE1} -o shimia32-%{efidir}.efi
%endif %endif
%endif %endif
%ifarch %{rh_signed_arches} %ifarch %{rh_signed_arches}
@ -177,9 +177,9 @@ cp shim%{efiarchlc}-%{efidir}.efi shim%{efiarchlc}.efi
%pesign -s -i %{unsigned_dir}mm%{efiarchlc}.efi -o mm%{efiarchlc}.efi -a %{SOURCE1} -c %{SOURCE1} %pesign -s -i %{unsigned_dir}mm%{efiarchlc}.efi -o mm%{efiarchlc}.efi -a %{SOURCE1} -c %{SOURCE1}
%pesign -s -i %{unsigned_dir}fb%{efiarchlc}.efi -o fb%{efiarchlc}.efi -a %{SOURCE1} -c %{SOURCE1} %pesign -s -i %{unsigned_dir}fb%{efiarchlc}.efi -o fb%{efiarchlc}.efi -a %{SOURCE1} -c %{SOURCE1}


%ifarch x86_64 %ifarch ppc64
%pesign -s -i %{unsigned_dir_ia32}mmia32.efi -o mmia32.efi -a %{SOURCE1} -c %{SOURCE1} #%pesign -s -i %{unsigned_dir_ia32}mmia32.efi -o mmia32.efi -a %{SOURCE1} -c %{SOURCE1}
%pesign -s -i %{unsigned_dir_ia32}fbia32.efi -o fbia32.efi -a %{SOURCE1} -c %{SOURCE1} #%pesign -s -i %{unsigned_dir_ia32}fbia32.efi -o fbia32.efi -a %{SOURCE1} -c %{SOURCE1}
%endif %endif


cd mokutil-%{mokutil_version} cd mokutil-%{mokutil_version}
@ -209,14 +209,14 @@ install -m 0644 %{shimsrc} $RPM_BUILD_ROOT/boot/efi/EFI/%{efidir}/shim.efi
install -m 0644 shimx64.efi $RPM_BUILD_ROOT/boot/efi/EFI/%{efidir}/shim.efi install -m 0644 shimx64.efi $RPM_BUILD_ROOT/boot/efi/EFI/%{efidir}/shim.efi
install -m 0644 %{bootsrc} $RPM_BUILD_ROOT/boot/efi/EFI/%{efidir}/BOOT.CSV install -m 0644 %{bootsrc} $RPM_BUILD_ROOT/boot/efi/EFI/%{efidir}/BOOT.CSV


install -m 0644 shimia32.efi $RPM_BUILD_ROOT/boot/efi/EFI/%{efidir}/shimia32.efi #install -m 0644 shimia32.efi $RPM_BUILD_ROOT/boot/efi/EFI/%{efidir}/shimia32.efi
install -m 0644 shimia32.efi $RPM_BUILD_ROOT/boot/efi/EFI/%{efidir}/shimia32.efi #install -m 0644 shimia32.efi $RPM_BUILD_ROOT/boot/efi/EFI/%{efidir}/shimia32.efi
install -m 0644 shimia32-%{efidir}.efi $RPM_BUILD_ROOT/boot/efi/EFI/%{efidir}/shimia32-%{efidir}.efi #install -m 0644 shimia32-%{efidir}.efi $RPM_BUILD_ROOT/boot/efi/EFI/%{efidir}/shimia32-%{efidir}.efi
install -m 0644 mmia32.efi $RPM_BUILD_ROOT/boot/efi/EFI/%{efidir}/mmia32.efi #install -m 0644 mmia32.efi $RPM_BUILD_ROOT/boot/efi/EFI/%{efidir}/mmia32.efi
install -m 0644 %{bootsrcia32} $RPM_BUILD_ROOT/boot/efi/EFI/%{efidir}/BOOTIA32.CSV #install -m 0644 %{bootsrcia32} $RPM_BUILD_ROOT/boot/efi/EFI/%{efidir}/BOOTIA32.CSV


install -m 0644 shimia32.efi $RPM_BUILD_ROOT/boot/efi/EFI/BOOT/BOOTIA32.EFI #install -m 0644 shimia32.efi $RPM_BUILD_ROOT/boot/efi/EFI/BOOT/BOOTIA32.EFI
install -m 0644 fbia32.efi $RPM_BUILD_ROOT/boot/efi/EFI/BOOT/fbia32.efi #install -m 0644 fbia32.efi $RPM_BUILD_ROOT/boot/efi/EFI/BOOT/fbia32.efi
%endif %endif


cd mokutil-%{mokutil_version} cd mokutil-%{mokutil_version}
@ -234,13 +234,13 @@ make PREFIX=%{_prefix} LIBDIR=%{_libdir} DESTDIR=%{buildroot} install
%ifarch x86_64 %ifarch x86_64
/boot/efi/EFI/%{efidir}/BOOT.CSV /boot/efi/EFI/%{efidir}/BOOT.CSV


%files -n shim-ia32 #%files -n shim-ia32
/boot/efi/EFI/%{efidir}/shimia32.efi #/boot/efi/EFI/%{efidir}/shimia32.efi
/boot/efi/EFI/%{efidir}/shimia32-%{efidir}.efi #/boot/efi/EFI/%{efidir}/shimia32-%{efidir}.efi
/boot/efi/EFI/%{efidir}/mmia32.efi #/boot/efi/EFI/%{efidir}/mmia32.efi
/boot/efi/EFI/%{efidir}/BOOTIA32.CSV #/boot/efi/EFI/%{efidir}/BOOTIA32.CSV
/boot/efi/EFI/BOOT/BOOTIA32.EFI #/boot/efi/EFI/BOOT/BOOTIA32.EFI
/boot/efi/EFI/BOOT/fbia32.efi #/boot/efi/EFI/BOOT/fbia32.efi
%endif %endif


%files -n mokutil %files -n mokutil

50
SPECS/shim.spec

@ -139,9 +139,9 @@ cd %{name}-%{version}-%{efiarch}
make 'DEFAULT_LOADER=\\\\grub%{efiarch}.efi' ${MAKEFLAGS} shim%{efiarch}.efi mm%{efiarch}.efi fb%{efiarch}.efi make 'DEFAULT_LOADER=\\\\grub%{efiarch}.efi' ${MAKEFLAGS} shim%{efiarch}.efi mm%{efiarch}.efi fb%{efiarch}.efi


%ifarch x86_64 %ifarch x86_64
cd ../%{name}-%{version}-ia32 #cd ../%{name}-%{version}-ia32
setarch linux32 -B make 'DEFAULT_LOADER=\\\\grubia32.efi' ARCH=ia32 ${MAKEFLAGS} shimia32.efi mmia32.efi fbia32.efi #setarch linux32 -B make 'DEFAULT_LOADER=\\\\grubia32.efi' ARCH=ia32 ${MAKEFLAGS} shimia32.efi mmia32.efi fbia32.efi
cd ../%{name}-%{version}-%{efiarch} #cd ../%{name}-%{version}-%{efiarch}
%endif %endif


%install %install
@ -155,15 +155,15 @@ for x in shim%{efiarch} mm%{efiarch} fb%{efiarch} ; do
done done


%ifarch x86_64 %ifarch x86_64
cd ../%{name}-%{version}-ia32 #cd ../%{name}-%{version}-ia32
pesign -h -P -i shimia32.efi -h > shimia32.hash #pesign -h -P -i shimia32.efi -h > shimia32.hash
install -D -d -m 0755 $RPM_BUILD_ROOT%{_datadir}/shim/ia32-%{version}-%{release}/ #install -D -d -m 0755 $RPM_BUILD_ROOT%{_datadir}/shim/ia32-%{version}-%{release}/
install -m 0644 shimia32.hash $RPM_BUILD_ROOT%{_datadir}/shim/ia32-%{version}-%{release}/shimia32.hash #install -m 0644 shimia32.hash $RPM_BUILD_ROOT%{_datadir}/shim/ia32-%{version}-%{release}/shimia32.hash
for x in shimia32 mmia32 fbia32 ; do #for x in shimia32 mmia32 fbia32 ; do
install -m 0644 $x.efi $RPM_BUILD_ROOT%{_datadir}/shim/ia32-%{version}-%{release}/ # install -m 0644 $x.efi $RPM_BUILD_ROOT%{_datadir}/shim/ia32-%{version}-%{release}/
install -m 0644 $x.so $RPM_BUILD_ROOT%{_datadir}/shim/ia32-%{version}-%{release}/ # install -m 0644 $x.so $RPM_BUILD_ROOT%{_datadir}/shim/ia32-%{version}-%{release}/
done #done
cd ../%{name}-%{version}-%{efiarch} #cd ../%{name}-%{version}-%{efiarch}
%endif %endif


%ifarch x86_64 %ifarch x86_64
@ -175,14 +175,14 @@ cd ../%{name}-%{version}-%{efiarch}
rm -f $RPM_BUILD_ROOT%{_datadir}/shim/%{efiarch}-%{version}-%{release}/*.so \ rm -f $RPM_BUILD_ROOT%{_datadir}/shim/%{efiarch}-%{version}-%{release}/*.so \
mv debugfiles.list ../debugfiles-%{efiarch}.list \ mv debugfiles.list ../debugfiles-%{efiarch}.list \
cd .. \ cd .. \
cd %{name}-%{version}-ia32 \ #cd %{name}-%{version}-ia32 \
bash %{SOURCE4} \\\ #bash %{SOURCE4} \\\
%{?_missing_build_ids_terminate_build:--strict-build-id}\\\ # %{?_missing_build_ids_terminate_build:--strict-build-id}\\\
%{?_find_debuginfo_opts} \\\ # %{?_find_debuginfo_opts} \\\
"%{_builddir}/%{?buildsubdir}/%{name}-%{version}-ia32" \ # "%{_builddir}/%{?buildsubdir}/%{name}-%{version}-ia32" \
rm -f $RPM_BUILD_ROOT%{_datadir}/shim/ia32-%{version}-%{release}/*.so \ #rm -f $RPM_BUILD_ROOT%{_datadir}/shim/ia32-%{version}-%{release}/*.so \
mv debugfiles.list ../debugfiles-ia32.list \ #mv debugfiles.list ../debugfiles-ia32.list \
cd .. \ #cd .. \
%{nil} %{nil}
%else %else
%global __debug_install_post \ %global __debug_install_post \
@ -208,12 +208,12 @@ cd ../%{name}-%{version}-%{efiarch}
%ifarch x86_64 %ifarch x86_64
%files -n shim-unsigned-ia32 %files -n shim-unsigned-ia32
%dir %{_datadir}/shim %dir %{_datadir}/shim
%dir %{_datadir}/shim/ia32-%{version}-%{release}/ #%dir %{_datadir}/shim/ia32-%{version}-%{release}/
%{_datadir}/shim/ia32-%{version}-%{release}/*.efi #%{_datadir}/shim/ia32-%{version}-%{release}/*.efi
%{_datadir}/shim/ia32-%{version}-%{release}/*.hash #%{_datadir}/shim/ia32-%{version}-%{release}/*.hash


%files -n shim-unsigned-ia32-debuginfo -f debugfiles-ia32.list #%files -n shim-unsigned-ia32-debuginfo -f debugfiles-ia32.list
%defattr(-,root,root) #%defattr(-,root,root)
%endif %endif


%changelog %changelog

Loading…
Cancel
Save