On 01/02/2019 11:40, Alexey Kardashevskiy wrote:
> At the moment the rtas's Makefile uses generic QEMU rules which means
> that when QEMU is compiled on a little endian system, the spapr-rtas.bin
> is compiled as little endian too which is incorrect as it is always
> executed in big endian mode.
>
> This enforces -mbig by defining %.o:%.S rule as spapr-rtas.bin is
> a standalone guest binary which should not depend on QEMU flags anyway.
Bag? Good? Useless? :)
>
> Signed-off-by: Alexey Kardashevskiy <a...@ozlabs.ru>
> ---
> pc-bios/spapr-rtas/Makefile | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/pc-bios/spapr-rtas/Makefile b/pc-bios/spapr-rtas/Makefile
> index f26dd42..4b9bb12 100644
> --- a/pc-bios/spapr-rtas/Makefile
> +++ b/pc-bios/spapr-rtas/Makefile
> @@ -14,8 +14,11 @@ $(call set-vpath, $(SRC_PATH)/pc-bios/spapr-rtas)
>
> build-all: spapr-rtas.bin
>
> +%.o: %.S
> + $(call quiet-command,$(CCAS) -mbig -c -o $@ $<,"CCAS","$(TARGET_DIR)$@")
> +
> %.img: %.o
> - $(call quiet-command,$(CC) -nostdlib -o $@
> $<,"Building","$(TARGET_DIR)$@")
> + $(call quiet-command,$(CC) -nostdlib -mbig -o $@
> $<,"Building","$(TARGET_DIR)$@")
>
> %.bin: %.img
> $(call quiet-command,$(OBJCOPY) -O binary -j .text $<
> $@,"Building","$(TARGET_DIR)$@")
>
--
Alexey