Commit 79fc0c5f authored by Masahiro Yamada's avatar Masahiro Yamada Committed by Tom Rini
Browse files

tools/env: cross-compile fw_printenv without setting HOSTCC



fw_printenv is a program which mostly runs on the target Linux.

Before switching to Kbuild, we needed to set HOSTCC at the
command line like this:
    make HOSTCC=<your CC cross-compiler> env

Going forward we can cross compile it by specifying CROSS_COMPILE:
    make CROSS_COMPILE=<your cross-compiler prefix> env
This looks more natural.
Signed-off-by: default avatarMasahiro Yamada <yamada.m@jp.panasonic.com>
Tested-by: default avatarGerhard Sittig <gsi@denx.de>
parent 9a368d0f
......@@ -16,7 +16,6 @@
/xway-swap-bytes
/*.exe
/easylogo/easylogo
/env/fw_printenv
/gdb/gdbcont
/gdb/gdbsend
/kernel-doc/docproc
fw_printenv
fw_printenv_unstripped
......@@ -5,6 +5,11 @@
# SPDX-License-Identifier: GPL-2.0+
#
# fw_printenv is supposed to run on the target system, which means it should be
# built with cross tools. Although it may look weird, we only replace "HOSTCC"
# with "CC" here for the maximum code reuse of scripts/Makefile.host.
HOSTCC = $(CC)
# Compile for a hosted environment on the target
HOST_EXTRACFLAGS = $(patsubst -I%,-idirafter%, $(UBOOTINCLUDE)) \
-idirafter $(SRCTREE)/tools/env \
......@@ -15,9 +20,15 @@ ifeq ($(MTD_VERSION),old)
HOST_EXTRACFLAGS += -DMTD_OLD
endif
hostprogs-y := fw_printenv
always := $(hostprogs-y)
always := fw_printenv
hostprogs-y := fw_printenv_unstripped
fw_printenv-objs := fw_env.o fw_env_main.o \
fw_printenv_unstripped-objs := fw_env.o fw_env_main.o \
crc32.o ctype.o linux_string.o \
env_attr.o env_flags.o
quiet_cmd_strip = STRIP $@
cmd_strip = $(STRIP) -o $@ $<
$(obj)/fw_printenv: $(obj)/fw_printenv_unstripped FORCE
$(call if_changed,strip)
......@@ -2,11 +2,10 @@
This is a demo implementation of a Linux command line tool to access
the U-Boot's environment variables.
In the current version, there is an issue in cross-compilation.
In order to cross-compile fw_printenv, run
make HOSTCC=<your CC cross-compiler> env
make CROSS_COMPILE=<your cross-compiler prefix> env
in the root directory of the U-Boot distribution. For example,
make HOSTCC=arm-linux-gcc env
make CROSS_COMPILE=arm-linux- env
For the run-time utility configuration uncomment the line
#define CONFIG_FILE "/etc/fw_env.config"
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment