public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Bin Meng <bmeng.cn@gmail.com>
To: u-boot@lists.denx.de
Subject: [PATCH 2/3] Dockerfile: Build GRUB UEFI target for RISC-V 32-bit
Date: Thu, 26 Mar 2020 09:04:53 -0700	[thread overview]
Message-ID: <1585238694-2714-2-git-send-email-bmeng.cn@gmail.com> (raw)
In-Reply-To: <1585238694-2714-1-git-send-email-bmeng.cn@gmail.com>

Build GRUB UEFI target grubriscv32.efi.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
---

 Dockerfile | 16 +++++++++++++++-
 1 file changed, 15 insertions(+), 1 deletion(-)

diff --git a/Dockerfile b/Dockerfile
index dc9d6c9..a19067e 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -96,7 +96,7 @@ RUN wget http://mirrors.kernel.org/ubuntu/pool/main/m/mpfr4/libmpfr4_3.1.4-1_amd
 # Manually install a new enough version of efitools (must be v1.5.2 or later)
 RUN wget http://mirrors.kernel.org/ubuntu/pool/universe/e/efitools/efitools_1.8.1-0ubuntu2_amd64.deb && sudo dpkg -i efitools_1.8.1-0ubuntu2_amd64.deb && rm efitools_1.8.1-0ubuntu2_amd64.deb
 
-# Build GRUB UEFI targets grubarm.efi and grubaa64.efi
+# Build GRUB UEFI targets for ARM & RISC-V, 32-bit and 64-bit
 RUN git clone git://git.savannah.gnu.org/grub.git /tmp/grub && \
 	cd /tmp/grub && \
 	git checkout grub-2.04 && \
@@ -143,6 +143,20 @@ RUN git clone git://git.savannah.gnu.org/grub.git /tmp/grub && \
 	lsefisystab loadenv lvm minicmd normal part_msdos part_gpt reboot \
 	search search_fs_file search_fs_uuid search_label serial sleep test \
 	true && \
+	make clean && \
+	./configure --target=riscv32 --with-platform=efi \
+	CC=gcc \
+	TARGET_CC=/opt/gcc-7.3.0-nolibc/riscv32-linux/bin/riscv32-linux-gcc \
+	TARGET_OBJCOPY=/opt/gcc-7.3.0-nolibc/riscv32-linux/bin/riscv32-linux-objcopy \
+	TARGET_STRIP=/opt/gcc-7.3.0-nolibc/riscv32-linux/bin/riscv32-linux-strip \
+	TARGET_NM=/opt/gcc-7.3.0-nolibc/riscv32-linux/bin/riscv32-linux-nm \
+	TARGET_RANLIB=/opt/gcc-7.3.0-nolibc/riscv32-linux/bin/riscv32-linux-ranlib && \
+	make && \
+	./grub-mkimage -O riscv32-efi -o /opt/grub/grubriscv32.efi --prefix= -d \
+	grub-core cat chain configfile echo efinet ext2 fat halt help linux \
+	lsefisystab loadenv lvm minicmd normal part_msdos part_gpt reboot \
+	search search_fs_file search_fs_uuid search_label serial sleep test \
+	true && \
 	rm -rf /tmp/grub
 
 RUN git clone git://git.qemu.org/qemu.git /tmp/qemu && \
-- 
2.7.4

  reply	other threads:[~2020-03-26 16:04 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-03-26 16:04 [PATCH 1/3] Dockerfile: Install riscv32 toolchain from kernel.org Bin Meng
2020-03-26 16:04 ` Bin Meng [this message]
2020-04-10 22:24   ` [PATCH 2/3] Dockerfile: Build GRUB UEFI target for RISC-V 32-bit Tom Rini
2020-03-26 16:04 ` [PATCH 3/3] Dockerfile: Build QEMU " Bin Meng
2020-04-10 22:24   ` Tom Rini
2020-03-26 16:14 ` [PATCH 1/3] Dockerfile: Install riscv32 toolchain from kernel.org Tom Rini
2020-03-27  1:57   ` Bin Meng
2020-03-27  1:59     ` Tom Rini
2020-03-27  6:05       ` Bin Meng
2020-03-27 15:25         ` Tom Rini
2020-03-27 23:55           ` Bin Meng
2020-03-31 15:15             ` Tom Rini
2020-04-01  3:31               ` Bin Meng
2020-04-10 22:23 ` Tom Rini

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1585238694-2714-2-git-send-email-bmeng.cn@gmail.com \
    --to=bmeng.cn@gmail.com \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox