blob: e6dc5f32fc659aff19ff63e08c4a4bc49389709b [file] [log] [blame]
wdenk34b613e2002-12-17 01:51:00 +00001#
Marian Balakowiczd62379d2006-09-01 19:49:50 +02002# (C) Copyright 2002-2006
wdenk34b613e2002-12-17 01:51:00 +00003# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
4#
5# See file CREDITS for list of people who contributed to this
6# project.
7#
8# This program is free software; you can redistribute it and/or
9# modify it under the terms of the GNU General Public License as
10# published by the Free Software Foundation; either version 2 of
11# the License, or (at your option) any later version.
12#
13# This program is distributed in the hope that it will be useful,
14# but WITHOUT ANY WARRANTY; without even the implied warranty of
Wolfgang Denk302141d2010-11-27 23:30:56 +010015# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
wdenk34b613e2002-12-17 01:51:00 +000016# GNU General Public License for more details.
17#
18# You should have received a copy of the GNU General Public License
19# along with this program; if not, write to the Free Software
20# Foundation, Inc., 59 Temple Place, Suite 330, Boston,
21# MA 02111-1307 USA
22#
23
Marian Balakowiczd62379d2006-09-01 19:49:50 +020024include $(TOPDIR)/config.mk
wdenk34b613e2002-12-17 01:51:00 +000025
Andreas Bießmannb42e76b2011-10-17 22:11:12 +000026HOSTSRCS := $(SRCTREE)/lib/crc32.c fw_env.c fw_env_main.c
Joe Hershbergerdd7750a2012-12-11 22:16:32 -060027HOSTSRCS += $(SRCTREE)/lib/ctype.c $(SRCTREE)/lib/linux_string.c
28HOSTSRCS += $(SRCTREE)/common/env_attr.c $(SRCTREE)/common/env_flags.c
Mike Frysinger469c6ad2012-11-10 19:47:47 +000029HEADERS := fw_env.h
wdenk34b613e2002-12-17 01:51:00 +000030
Daniel Hobi4683c4b2010-11-10 14:11:21 +010031# Compile for a hosted environment on the target
32HOSTCPPFLAGS = -idirafter $(SRCTREE)/include \
Wolfgang Denk302141d2010-11-27 23:30:56 +010033 -idirafter $(OBJTREE)/include2 \
34 -idirafter $(OBJTREE)/include \
Joe Hershbergerdd7750a2012-12-11 22:16:32 -060035 -idirafter $(SRCTREE)/tools/env \
Joe Hershberger671adc42012-10-03 09:38:46 +000036 -DUSE_HOSTCC \
37 -DTEXT_BASE=$(TEXT_BASE)
Marian Balakowiczd62379d2006-09-01 19:49:50 +020038
Mike Frysinger469c6ad2012-11-10 19:47:47 +000039# Pass CONFIG_xxx settings via the command line so that we can build w/out
40# a config.h file existing in the first place. Useful for generic builds.
41CONFIG_VARS_TO_PASS = \
42 ENV_OVERWRITE \
43 OVERWRITE_ETHADDR_ONCE \
44 ETHADDR
45HOSTCPPFLAGS += \
46 $(foreach x,$(CONFIG_VARS_TO_PASS),$(if $(CONFIG_$(x)),-DCONFIG_$(x)=$(CONFIG_$(x))))
47
Markus Klotzbücher94db5572007-11-27 10:23:20 +010048ifeq ($(MTD_VERSION),old)
Daniel Hobi4683c4b2010-11-10 14:11:21 +010049HOSTCPPFLAGS += -DMTD_OLD
Markus Klotzbücher94db5572007-11-27 10:23:20 +010050endif
51
Marian Balakowiczd62379d2006-09-01 19:49:50 +020052all: $(obj)fw_printenv
53
Daniel Hobi4683c4b2010-11-10 14:11:21 +010054# Some files complain if compiled with -pedantic, use HOSTCFLAGS_NOPED
55$(obj)fw_printenv: $(HOSTSRCS) $(HEADERS)
56 $(HOSTCC) $(HOSTCFLAGS_NOPED) $(HOSTLDFLAGS) -o $@ $(HOSTSRCS)
Loïc Minier0d834332012-03-11 16:43:02 +010057 $(HOSTSTRIP) $@
wdenk34b613e2002-12-17 01:51:00 +000058
59clean:
Andreas Bießmannb42e76b2011-10-17 22:11:12 +000060 rm -f $(obj)fw_printenv
wdenk34b613e2002-12-17 01:51:00 +000061
62#########################################################################
63
Marian Balakowiczd62379d2006-09-01 19:49:50 +020064include $(TOPDIR)/rules.mk
wdenk34b613e2002-12-17 01:51:00 +000065
Marian Balakowiczd62379d2006-09-01 19:49:50 +020066sinclude $(obj).depend
wdenk34b613e2002-12-17 01:51:00 +000067
68#########################################################################