[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: RISC OS port
From: |
Marco Gerards |
Subject: |
Re: RISC OS port |
Date: |
Fri, 03 Dec 2004 13:07:00 +0000 |
User-agent: |
Gnus/5.1006 (Gnus v5.10.6) Emacs/21.3 (gnu/linux) |
Timothy Baldwin <address@hidden> writes:
> On Saturday 27 Nov 2004 01:36, I wrote:
>
>> 1. Portability fixes and configure.ac changes.
>
> Here they are. However cross-compiling is broken in that
> the utilities are only built for the build system, without
> this patch they are only built for the host system. Either
> way, the result is not a complete installation.
Ok. I really hope someone else can have a look at this because I
don't know much about autoconf/automake, etc. However, I am trying to
comment on your code wherever I can.
> I propose to solve this problem by running configure twice
> when cross-compiling, once for the host, once for the build
> system. This could be done by adding these make rules:
>
> build/%: build/Makefile
> cd build && $(MAKE) $*
> touch $@
>
> build/Makefile: $(srcdir)/configure
> cd build && $(srcdir)/configure --host=$(build) --target=$(host)
>
> Define BUILD to "build/" when cross compiling or to ""
> when not cross-compiling and prefix use of the utilites
> in makefiles with $(BUILD).
>
> Shall I do that?
This does not look like a clean solution to me. Normally this is not
required to do it like this, right?
Can you please make a changelog entry for this patch?
> +if test "x$host_cpu" = xarm; then
> + AC_PATH_PROG(PERL, perl)
> +fi
> +
Why do you need perl?
> + GRUB_ERR_FILE_CLOSE_ERROR,
> + GRUB_ERR_FILE_OPEN_ERROR,
> + GRUB_ERR_DIR_READ_ERROR
When are these errors triggered, btw? Can't you use GRUB_ERR_BAD_FS
or GRUB_FS_BAD_FILE_TYPE instead?
> diff -purN -x '*.mk' -x '*~' -x autom4te.cache -x configure -x '.#*' -x CVS
> grub2-submitted/include/grub/misc.h grub2-arm/include/grub/misc.h
> --- grub2-submitted/include/grub/misc.h 2004-11-19 00:55:52.000000000 +0000
> +++ grub2-arm/include/grub/misc.h 2004-11-26 21:46:02.000000000 +0000
...
> +void *EXPORT_FUNC(memcpy) (void *dest, const void *src, grub_size_t n);
> +void *EXPORT_FUNC(memset) (void *s, int c, grub_size_t n);
Why do you want to do this? Can't you just use grub_memcpy and
grub_memset instead?
> -#define FUNCTION(x) .globl EXT_C(x) ; .type EXT_C(x), @function ; EXT_C(x):
> -#define VARIABLE(x) .globl EXT_C(x) ; .type EXT_C(x), @object ; EXT_C(x):
> +#define FUNCTION(x) .globl EXT_C(x) ; .type EXT_C(x), "function" ; EXT_C(x):
> +#define VARIABLE(x) .globl EXT_C(x) ; .type EXT_C(x), "object" ; EXT_C(x):
Can you please explain this change?
> }
> +
> void *memmove (void *dest, const void *src, grub_size_t n)
> __attribute__ ((alias ("grub_memmove")));
> +
Please watch out with adding white lines.
Does GRUB 2 still work on the PC after this patch is committed?
Thanks,
Marco