grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[RFC PATCH 0/3] grub powerpc64 little-endian enablement


From: Paulo Flabiano Smorigo
Subject: [RFC PATCH 0/3] grub powerpc64 little-endian enablement
Date: Thu, 28 Aug 2014 16:56:02 -0300

From: Paulo Flabiano Smorigo <address@hidden>

Hi,

At the beginning of the year we provide a patchset that enabled GRUB for
little-endian PowerPC. Our approach at the time was to build GRUB itself and
its tools in 64-bit little-endian. One of the reasons of build in 64-bit is
to avoid 32-bit dependencies in the distro and build a system entirely 64-bit.

This patchset was not welcomed at the time because it would bring a
high-maintainance-cost, without real gain since it could just be cross-compiled.

After that, Brent Baude, Vladmir (phcoder) and I started to work in a solution
that would cross-compile but without 32-bit dependencies. This patchset is the
result of this new approach. It's based on the work of Brent Baude, Vladimir
(phcoder), and Tomohiro.

It can be devided in two parts:

  1) Skip libgcc dependency just for ppc64el (patch 1 and 2);
  2) Check elf endianess and byteswap if necessary (patch 3);

The result is GRUB itself in 32-bit BE and its tools in 64-bit LE. This solution
satisfies the needs of the distros. I tested it in three different distros, in
both endianess and it's fine.

If thoses patches were accepted we will have an official solution. Nowadays,
distros are taking diffrent approachs. Some of then are using the original
solutions and others are using cross-compiler.

--
Paulo Flabiano Smorigo
IBM Linux Technology Center


Paulo Flabiano Smorigo (3):
  Add powerpc little-endian (ppc64le) flags
  Files reorganization and include some libgcc fuctions
  Suport for bi-endianess in elf file

 configure.ac                         |  17 ++++-
 grub-core/Makefile.am                |   2 +
 grub-core/Makefile.core.def          |   1 +
 grub-core/kern/elf.c                 |  60 +++++++++++++++-
 grub-core/kern/elfXX.c               |  73 ++++++++++++++++++++
 grub-core/kern/misc.c                | 107 ++++++++++++++++++++++++++++
 grub-core/kern/powerpc/compiler-rt.S | 130 +++++++++++++++++++++++++++++++++++
 include/grub/compiler.h              |  61 ++++++++++++++++
 include/grub/libgcc.h                |  67 ------------------
 9 files changed, 447 insertions(+), 71 deletions(-)
 create mode 100644 grub-core/kern/powerpc/compiler-rt.S

-- 
1.8.1.4




reply via email to

[Prev in Thread] Current Thread [Next in Thread]