## ## This file is part of the bayou project. ## ## Copyright (C) 2008 Advanced Micro Devices, Inc. ## ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License version 2 as ## published by the Free Software Foundation. ## ## This program is distributed in the hope that it will be useful, ## but WITHOUT ANY WARRANTY; without even the implied warranty of ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ## GNU General Public License for more details. ## ## You should have received a copy of the GNU General Public License ## along with this program; if not, write to the Free Software ## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA ## CONFIG_LZMA=y CONFIG_NRV2B=y CONFIG_BUILTIN_LAR=y PBUILDER_CONFIG=bayou.xml BUILTIN_LAR=builtin.lar export src := $(shell pwd) export obj := $(src)/build LIBPAYLOAD_DIR := $(obj)/libpayload CC?=gcc STRIP?=strip OBJCOPY?=objcopy FFLAGS-y= FFLAGS-$(CONFIG_BUILTIN_LAR) += -DCONFIG_BUILTIN_LAR FFLAGS-$(CONFIG_LZMA) += -DCONFIG_LZMA FFLAGS-$(CONFIG_NRV2B) += -DCONFIG_NRV2B OBJECTS-y=main.o payload.o config.o menu.o self.o OBJECTS-$(CONFIG_LZMA) += lzma.o OBJECTS-$(CONFIG_NRV2B) += nrv2b.o OBJECTS-$(CONFIG_BUILTIN_LAR) += builtin-lar.o CFLAGS= -Wall -Werror -Os $(FFLAGS-y) LDFLAGS=-Wl,-T,bayou.ldscript -static LIBGCC=$(shell $(CC) -m32 -print-libgcc-file-name) LPCC=$(LIBPAYLOAD_DIR)/bin/lpgcc bayou.elf: $(OBJECTS-y) $(LPCC) $(LDFLAGS) -m32 -o $@ $(OBJECTS-y) @$(STRIP) $@ builtin-lar.o: $(BUILTIN_LAR) @$(OBJCOPY) -I binary -B i386 -O elf32-i386 $(BUILTIN_LAR) $@ builtin.lar: util/pbuilder/pbuilder @rm -f $@ util/pbuilder/pbuilder -c $(PBUILDER_CONFIG) create $@ util/pbuilder/pbuilder: $(MAKE) -C util/pbuilder %.o: %.c $(LPCC) $(CFLAGS) -c -o $@ $< clean: rm -f *.o bayou.elf builtin.lar $(MAKE) -C util/pbuilder clean