From 0628246128acb4c44c980fb02c4fbf5feaf0d931 Mon Sep 17 00:00:00 2001 From: Peter Jones Date: Fri, 3 Oct 2008 18:04:58 +0000 Subject: [PATCH] - Update to 3.0e - Fix relocation bug in 3.0e --- .cvsignore | 3 ++- gnu-efi-3.0e-no-relocations.patch | 42 +++++++++++++++++++++++++++++++ gnu-efi.spec | 33 ++++++++++++------------ sources | 2 +- 4 files changed, 62 insertions(+), 18 deletions(-) create mode 100644 gnu-efi-3.0e-no-relocations.patch diff --git a/.cvsignore b/.cvsignore index 72e6c57..1bda4ed 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1,2 @@ -gnu-efi-3.0d.tar.gz +clog +gnu-efi-3.0e.tar.bz2 diff --git a/gnu-efi-3.0e-no-relocations.patch b/gnu-efi-3.0e-no-relocations.patch new file mode 100644 index 0000000..06f6a35 --- /dev/null +++ b/gnu-efi-3.0e-no-relocations.patch @@ -0,0 +1,42 @@ +diff --git a/apps/.t2.c.swp b/apps/.t2.c.swp +deleted file mode 100644 +index 4c0e28e..0000000 +Binary files a/apps/.t2.c.swp and /dev/null differ +diff --git a/apps/.t3.c.swp b/apps/.t3.c.swp +deleted file mode 100644 +index 68e3246..0000000 +Binary files a/apps/.t3.c.swp and /dev/null differ +diff --git a/apps/t2.efi b/apps/t2.efi +index f7ec910..f2742ed 100755 +Binary files a/apps/t2.efi and b/apps/t2.efi differ +diff --git a/gnuefi/libgnuefi.a b/gnuefi/libgnuefi.a +index 297b765..1fdc201 100644 +Binary files a/gnuefi/libgnuefi.a and b/gnuefi/libgnuefi.a differ +diff --git a/gnuefi/reloc_ia32.c b/gnuefi/reloc_ia32.c +index 9bf4a8d..0b461cf 100644 +--- a/gnuefi/reloc_ia32.c ++++ b/gnuefi/reloc_ia32.c +@@ -76,6 +76,9 @@ EFI_STATUS _relocate (long ldbase, ElfW(Dyn) *dyn, EFI_HANDLE image, EFI_SYSTEM_ + } + } + ++ if (!rel && relent == 0) ++ return EFI_SUCCESS; ++ + if (!rel || relent == 0) + return EFI_LOAD_ERROR; + +diff --git a/gnuefi/reloc_x86_64.c b/gnuefi/reloc_x86_64.c +index 9906084..3f94f47 100644 +--- a/gnuefi/reloc_x86_64.c ++++ b/gnuefi/reloc_x86_64.c +@@ -76,6 +76,9 @@ EFI_STATUS _relocate (long ldbase, ElfW(Dyn) *dyn, EFI_HANDLE image, EFI_SYSTEM_ + } + } + ++ if (!rel && relent == 0) ++ return EFI_SUCCESS; ++ + if (!rel || relent == 0) + return EFI_LOAD_ERROR; + diff --git a/gnu-efi.spec b/gnu-efi.spec index 249ed80..7f24c91 100644 --- a/gnu-efi.spec +++ b/gnu-efi.spec @@ -1,18 +1,15 @@ Summary: Development Libraries and headers for EFI Name: gnu-efi -Version: 3.0d -Release: 6%{?dist} +Version: 3.0e +Release: 1%{?dist} Group: Development/System License: GPLv2+ URL: ftp://ftp.hpl.hp.com/pub/linux-ia64 -Source: ftp://ftp.hpl.hp.com/pub/linux-ia64/gnu-efi-%{version}.tar.gz -Patch0: gnu-efi-3.0d-pragma.patch -Patch1: gnu-efi-3.0d-uefi_wrap.patch -Patch2: gnu-efi-3.0d-x86_64.patch -Patch3: gnu-efi-3.0d-rpm.patch -Patch4: gnu-efi-3.0d-unwrap.patch -Patch5: gnu-efi-3.0d-uefi_wrap_call10.patch -Patch6: gnu-efi-3.0d-palproc-license.patch +Source: ftp://ftp.hpl.hp.com/pub/linux-ia64/gnu-efi-%{version}.tar.bz2 +Patch0: gnu-efi-3.0e-no-relocations.patch +Patch1: gnu-efi-3.0d-unwrap.patch +Patch2: gnu-efi-3.0d-uefi_wrap.patch +Patch3: gnu-efi-3.0d-uefi_wrap_call10.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) ExclusiveArch: i386 x86_64 @@ -23,12 +20,12 @@ applications that run under EFI (Extensible Firmware Interface). %prep %setup -q %patch0 -p1 -%patch1 -p1 -%patch2 -p1 -%patch3 -p1 -%patch4 -p1 -%patch5 -p1 -%patch6 -p1 +# these are currently disabled as we don't need them per se, and they +# haven't gone upstream yet either. Also #2 and #3 haven't been updated +# to work with gnu-efi-3.0e yet. +#%%patch1 -p1 +#%%patch2 -p1 +#%%patch3 -p1 %build # Package cannot build with %{?_smp_mflags}. @@ -56,6 +53,10 @@ rm -rf %{buildroot} %{_libdir}/* %changelog +* Thu Oct 02 2008 Peter Jones - 3.0e-1 +- Update to 3.0e +- Fix relocation bug in 3.0e + * Tue Jul 29 2008 Tom "spot" Callaway - 3.0d-6 - fix license tag diff --git a/sources b/sources index 0776448..4026ea9 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -29013d3cd15009942fb855ba3e1a8096 gnu-efi-3.0d.tar.gz +964ba7c19d88ef26f3f411447c6ef733 gnu-efi-3.0e.tar.bz2