NetBSD's gcc wants libgcc and libc to define __enable_execute_stack,
but this is useless for a free-standing executable like grub. Define
a dummy function in lieu of libgcc to supply __enable_execute_stack.
Index: include/grub/mm.h
===================================================================
RCS file: /sources/grub/grub2/include/grub/mm.h,v
retrieving revision 1.8
diff -u -r1.8 mm.h
--- include/grub/mm.h 21 Jul 2007 23:32:22 -0000 1.8
+++ include/grub/mm.h 3 Feb 2008 21:24:18 -0000
@@ -33,6 +33,7 @@
void EXPORT_FUNC(grub_free) (void *ptr);
void *EXPORT_FUNC(grub_realloc) (void *ptr, grub_size_t size);
void *EXPORT_FUNC(grub_memalign) (grub_size_t align, grub_size_t size);
+void EXPORT_FUNC(__enable_execute_stack) (void); /* For NetBSD gcc */
/* For debugging. */
#if defined(MM_DEBUG) && !defined(GRUB_UTIL)
Index: kern/mm.c
===================================================================
RCS file: /sources/grub/grub2/kern/mm.c,v
retrieving revision 1.19
diff -u -r1.19 mm.c
--- kern/mm.c 23 Jan 2008 14:57:40 -0000 1.19
+++ kern/mm.c 3 Feb 2008 21:24:19 -0000
@@ -66,6 +66,12 @@
#include <grub/disk.h>
#include <grub/dl.h>
+/* Dummy symbol to make NetBSD gcc happy */
+void
+__enable_execute_stack(void)
+{
+}
+
#ifdef MM_DEBUG
# undef grub_malloc
# undef grub_realloc
_______________________________________________
Grub-devel mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/grub-devel