rpms/grub/devel grub-0.97-use-gnuefi.patch, NONE, 1.1 grub.spec, 1.106, 1.107
Peter Jones
pjones at fedoraproject.org
Thu Aug 20 14:34:19 UTC 2009
- Previous message (by thread): rpms/kdepim/F-11 kmail-fonts-4.3.patch, NONE, 1.1 kdepim.spec, 1.221, 1.222
- Next message (by thread): rpms/asymptote/devel .cvsignore, 1.53, 1.54 asymptote.spec, 1.67, 1.68 sources, 1.53, 1.54
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Author: pjones
Update of /cvs/extras/rpms/grub/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv25880
Modified Files:
grub.spec
Added Files:
grub-0.97-use-gnuefi.patch
Log Message:
* Thu Aug 20 2009 Peter Jones <pjones at redhat.com> - 0.97-59
- Correctly link against gnuefi.
grub-0.97-use-gnuefi.patch:
configure.in | 4 +++-
efi/Makefile.am | 12 +++++-------
efi/eficore.c | 13 +++++++++++++
3 files changed, 21 insertions(+), 8 deletions(-)
--- NEW FILE grub-0.97-use-gnuefi.patch ---
commit 94c31b2f558bb45ee80f374ceae487e6d737fcb1
Author: Peter Jones <pjones at redhat.com>
Date: Tue May 6 12:55:40 2008 -0400
Fix up makesfiles/configure to use gnu-efi versions of setjmp and _relocate.
Include setjmp/longjmp wrapper until I get a chance to clean up the headers.
diff -urpN grub-0.97/configure.in.gnuefi grub-0.97/configure.in
--- grub-0.97/configure.in.gnuefi 2009-08-20 09:52:01.000000000 -0400
+++ grub-0.97/configure.in 2009-08-20 09:52:45.000000000 -0400
@@ -63,7 +63,7 @@ if test "x$platform" = xefi; then
AC_SUBST(EFI_ARCH)
fi
-gnuefi_path=/usr/lib/gnuefi
+gnuefi_path=${libdir}/gnuefi
gnuefi_crt0=${gnuefi_path}/crt0-efi-${EFI_ARCH}.o
if ! test -f $gnuefi_crt0 ; then
gnuefi_crt0=crt0-efi.o
@@ -76,6 +76,8 @@ if ! test -f $gnuefi_lds ; then
fi
GNUEFI_LDS=${gnuefi_lds}
AC_SUBST(GNUEFI_LDS)
+LIBGNUEFI=${libdir}/libgnuefi.a
+AC_SUBST(LIBGNUEFI)
AC_SUBST(platform)
AM_CONDITIONAL(PLATFORM_EFI, test "x$platform" = xefi)
diff -urpN grub-0.97/efi/eficore.c.gnuefi grub-0.97/efi/eficore.c
--- grub-0.97/efi/eficore.c.gnuefi 2009-08-20 09:54:04.000000000 -0400
+++ grub-0.97/efi/eficore.c 2009-08-20 09:54:57.000000000 -0400
@@ -50,6 +50,19 @@ grub_efi_locate_handle_buffer (grub_efi_
search_type, protocol, search_key, no_handles, buffer);
}
+/* temporary, until we're using gnu-efi's include files --pjones */
+extern int setjmp(grub_jmp_buf env);
+int grub_setjmp(grub_jmp_buf env)
+{
+ return setjmp(env);
+}
+
+extern void longjmp(grub_jmp_buf env, int val);
+void grub_longjmp(grub_jmp_buf env, int val)
+{
+ longjmp(env, val);
+}
+
void *
grub_efi_locate_protocol (grub_efi_guid_t *protocol, void *registration)
{
diff -urpN grub-0.97/efi/Makefile.am.gnuefi grub-0.97/efi/Makefile.am
--- grub-0.97/efi/Makefile.am.gnuefi 2009-08-20 09:51:41.000000000 -0400
+++ grub-0.97/efi/Makefile.am 2009-08-20 09:53:57.000000000 -0400
@@ -32,8 +32,9 @@ GRUBEFI_FORMAT = efi-app-$(EFI_ARCH)
GRUBSO_LD_SCRIPT = @GNUEFI_LDS@
GRUBSO_LD_FLAGS = -T $(GRUBSO_LD_SCRIPT) -nostdlib -shared -Bsymbolic
-GRUBSO_OBJS = reloc.o efimain.o @GNUEFI_CRT0@
-GRUBSO_LIBS = $(top_srcdir)/stage2/libstage2.a libgrubefi.a @LIBGCC@
+GRUBSO_OBJS = efimain.o
+GRUBSO_LIBS = @GNUEFI_CRT0@ $(top_srcdir)/stage2/libstage2.a \
+ libgrubefi.a @LIBGCC@
if NETBOOT_SUPPORT
GRUBSO_LIBS += $(top_srcdir)/netboot/libdrivers.a
@@ -45,7 +46,7 @@ grub.efi: grub.so
$(OBJCOPY) -j .text -j .sdata -j .data -j .dynamic -j .dynsym -j .rel \
-j .rela -j .reloc --target=$(GRUBEFI_FORMAT) $^ $@
-grub.so: $(GRUBSO_OBJS) $(GRUBSO_LIBS)
+grub.so: $(GRUBSO_OBJS) $(GRUBSO_LIBS) @LIBGNUEFI@
$(LD) -o $@ $(GRUBSO_LD_FLAGS) $^
echo '-------------- unresolved symbols ---------------------'
! nm $@ | grep -iw u
@@ -57,9 +58,6 @@ crt0-efi.o: $(EFI_ARCH)/crt0-efi.S
efimain.o: efimain.c
$(CC) -o $@ -c $(libgrubefi_a_CFLAGS) $^
-reloc.o: $(EFI_ARCH)/reloc.c
- $(CC) -o $@ -c $(RELOC_FLAGS) $^
-
clean-local:
-rm -rf grub.so grub.efi
@@ -70,7 +68,7 @@ RELOC_FLAGS = $(STAGE2_CFLAGS) -I$(top_s
noinst_LIBRARIES = libgrubefi.a
libgrubefi_a_SOURCES = $(EFI_ARCH)/callwrap.c eficore.c efimm.c efimisc.c \
- $(EFI_ARCH)/setjmp.S eficon.c efidisk.c graphics.c efigraph.c efiuga.c \
+ eficon.c efidisk.c graphics.c efigraph.c efiuga.c \
font_8x16.c efiserial.c $(EFI_ARCH)/loader/linux.c efichainloader.c \
xpm.c pxe.c efitftp.c
libgrubefi_a_CFLAGS = $(RELOC_FLAGS) -nostdinc
Index: grub.spec
===================================================================
RCS file: /cvs/extras/rpms/grub/devel/grub.spec,v
retrieving revision 1.106
retrieving revision 1.107
diff -u -p -r1.106 -r1.107
--- grub.spec 11 Aug 2009 20:56:43 -0000 1.106
+++ grub.spec 20 Aug 2009 14:34:19 -0000 1.107
@@ -1,6 +1,6 @@
Name: grub
Version: 0.97
-Release: 58%{?dist}
+Release: 59%{?dist}
Summary: Grand Unified Boot Loader.
Group: System Environment/Base
License: GPLv2+
@@ -47,6 +47,7 @@ Patch18: grub-ext4-support.patch
Patch19: grub-0.97-xfs-writable-strings.patch
Patch20: grub-0.97-partitionable-md.patch
Patch21: grub-0.97-relocatable-kernel-on-x86_64-uefi.patch
+Patch22: grub-0.97-use-gnuefi.patch
%description
GRUB (Grand Unified Boot Loader) is an experimental boot loader
@@ -78,6 +79,7 @@ systems.
%patch19 -p1
%patch20 -p1
%patch21 -p1
+%patch22 -p1
%build
autoreconf
@@ -139,6 +141,9 @@ fi
%{_datadir}/grub
%changelog
+* Thu Aug 20 2009 Peter Jones <pjones at redhat.com> - 0.97-59
+- Correctly link against gnuefi.
+
* Tue Aug 11 2009 Peter Jones <pjones at redhat.com> - 0.97-58
- Dynamically choose load address for bzimage on 64-bit UEFI.
- Previous message (by thread): rpms/kdepim/F-11 kmail-fonts-4.3.patch, NONE, 1.1 kdepim.spec, 1.221, 1.222
- Next message (by thread): rpms/asymptote/devel .cvsignore, 1.53, 1.54 asymptote.spec, 1.67, 1.68 sources, 1.53, 1.54
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the fedora-extras-commits
mailing list