[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Patch for successful compilation on FreeBSD Release-6.1
From: |
Harley D. Eades III |
Subject: |
Patch for successful compilation on FreeBSD Release-6.1 |
Date: |
11 Jun 2006 10:28:44 -0500 |
User-agent: |
Gnus/5.09 (Gnus v5.9.0) Emacs/21.3 |
Hello,
I managed to work up a small patch for grub2. She makes it
possible to build grub2 on FreeBSD Release-6.1. There is one
thing I am not sure on. In configure.ac I had to move the
lines which restore the compiler flags above the checks for
_start etc..see the patch. I would like as much
feedback as possible. Thanks. :)
2006-06-10 Harley D. Eades III <address@hidden>
* configure.ac: Check for <malloc.h>. Check for memalign().
* include/grub/util/misc.h: Include <unistd.h>.
* util/grub-emu.c [HAVE_MALLOC_H]: Include <malloc.h>.
* util/misc.c: Likewise.
(grub_memalign) [!HAVE_MEMALIGN]: Don't call memalign, but
generate an error instead.
diff --exclude=CVS --exclude=configure --exclude=config.log
--exclude=config.h.in -ru grub2/configure.ac grub2Hacked/configure.ac
--- grub2/configure.ac Mon May 29 19:32:29 2006
+++ grub2Hacked/configure.ac Mon Jun 5 15:50:36 2006
@@ -122,6 +122,15 @@
AC_CHECK_SIZEOF(void *)
AC_CHECK_SIZEOF(long)
+# BSD checks.
+AC_CHECK_HEADER([malloc.h],
+ [AC_DEFINE(HAVE_MALLOC_H, [],
+ [Define to 1 if you have the malloc.h header file.])],
,)
+
+AC_CHECK_FUNC([memalign],
+ [AC_DEFINE(HAVE_MEMALIGN, [],
+ [Define to 1 if you have the memalign function.])], ,)
+
if test "x$host_m32" = x1; then
# Force 32-bit mode.
CFLAGS="$CFLAGS -m32"
@@ -232,6 +241,12 @@
AC_SUBST(TARGET_CPPFLAGS)
AC_SUBST(TARGET_LDFLAGS)
+# Restore the flags.
+CC="$tmp_CC"
+CFLAGS="$tmp_CFLAGS"
+CPPFLAGS="$tmp_CPPFLAGS"
+LDFLAGS="$tmp_LDFLAGS"
+
# Defined in aclocal.m4.
grub_PROG_OBJCOPY_ABSOLUTE
grub_ASM_USCORE
@@ -246,12 +261,6 @@
else
AC_DEFINE([NESTED_FUNC_ATTR], [], [Catch gcc bug])
fi
-
-# Restore the flags.
-CC="$tmp_CC"
-CFLAGS="$tmp_CFLAGS"
-CPPFLAGS="$tmp_CPPFLAGS"
-LDFLAGS="$tmp_LDFLAGS"
# Check for options.
AC_ARG_ENABLE([mm-debug],
diff --exclude=CVS --exclude=configure --exclude=config.log
--exclude=config.h.in -ru grub2/include/grub/util/misc.h
grub2Hacked/include/grub/util/misc.h
--- grub2/include/grub/util/misc.h Mon Feb 14 18:07:01 2005
+++ grub2Hacked/include/grub/util/misc.h Mon Jun 5 15:25:38
2006
@@ -23,6 +23,7 @@
#include <stdlib.h>
#include <stdio.h>
#include <setjmp.h>
+#include <unistd.h>
extern char *progname;
extern int verbosity;
diff --exclude=CVS --exclude=configure --exclude=config.log
--exclude=config.h.in -ru grub2/util/grub-emu.c
grub2Hacked/util/grub-emu.c
--- grub2/util/grub-emu.c Wed Apr 26 16:58:36 2006
+++ grub2Hacked/util/grub-emu.c Mon Jun 5 15:26:30 2006
@@ -18,7 +18,11 @@
*/
#include <stdlib.h>
+
+#ifdef HAVE_MALLOC_H
#include <malloc.h>
+#endif
+
#include <sys/stat.h>
#include <argp.h>
#include <string.h>
diff --exclude=CVS --exclude=configure --exclude=config.log
--exclude=config.h.in -ru grub2/util/misc.c grub2Hacked/util/misc.c
--- grub2/util/misc.c Sun Apr 23 08:37:36 2006
+++ grub2Hacked/util/misc.c Mon Jun 5 15:28:12 2006
@@ -24,7 +24,11 @@
#include <sys/types.h>
#include <sys/stat.h>
#include <sys/time.h>
+
+#ifdef HAVE_MALLOC_H
#include <malloc.h>
+#endif
+
#include <unistd.h>
#include <grub/util/misc.h>
@@ -228,8 +232,13 @@
grub_memalign (grub_size_t align, grub_size_t size)
{
void *p;
-
+
+#ifdef HAVE_MEMALIGN
p = memalign (align, size);
+#else
+ grub_util_error ("memalign not available");
+#endif
+
if (! p)
grub_util_error ("out of memory");
- Patch for successful compilation on FreeBSD Release-6.1,
Harley D. Eades III <=
- Re: Patch for successful compilation on FreeBSD Release-6.1, Jeroen Dekkers, 2006/06/11
- Re: Patch for successful compilation on FreeBSD Release-6.1, Harley D. Eades III, 2006/06/11
- Re: Patch for successful compilation on FreeBSD Release-6.1, Harley D. Eades III, 2006/06/12
- Re: Patch for successful compilation on FreeBSD Release-6.1, Marco Gerards, 2006/06/12
- Re: Patch for successful compilation on FreeBSD Release-6.1, Yoshinori K. Okuji, 2006/06/13
- Re: Patch for successful compilation on FreeBSD Release-6.1, Harley D. Eades III, 2006/06/13
- Re: Patch for successful compilation on FreeBSD Release-6.1, Yoshinori K. Okuji, 2006/06/13
- Re: Patch for successful compilation on FreeBSD Release-6.1, Harley D. Eades III, 2006/06/13
- Re: Patch for successful compilation on FreeBSD Release-6.1, Harley D. Eades III, 2006/06/13