2 ## This file is part of the bayou project.
4 ## Copyright (C) 2008 Advanced Micro Devices, Inc.
6 ## This program is free software; you can redistribute it and/or modify
7 ## it under the terms of the GNU General Public License version 2 as
8 ## published by the Free Software Foundation.
10 ## This program is distributed in the hope that it will be useful,
11 ## but WITHOUT ANY WARRANTY; without even the implied warranty of
12 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 ## GNU General Public License for more details.
20 PBUILDER_CONFIG
=bayou.xml
21 BUILTIN_LAR
=builtin.lar
23 export src
:= $(CURDIR
)
24 export obj
:= $(src
)/build
26 LIBPAYLOAD_DIR
:= $(obj
)/libpayload
33 FFLAGS-
$(CONFIG_BUILTIN_LAR
) += -DCONFIG_BUILTIN_LAR
34 FFLAGS-
$(CONFIG_LZMA
) += -DCONFIG_LZMA
35 FFLAGS-
$(CONFIG_NRV2B
) += -DCONFIG_NRV2B
37 OBJECTS-y
=main.o payload.o config.o menu.o self.o
38 OBJECTS-
$(CONFIG_LZMA
) += lzma.o
39 OBJECTS-
$(CONFIG_NRV2B
) += nrv2b.o
40 OBJECTS-
$(CONFIG_BUILTIN_LAR
) += builtin-lar.o
42 CFLAGS
= -Wall
-Werror
-Os
$(FFLAGS-y
)
43 LDFLAGS
=-Wl
,-T
,bayou.ldscript
-static
44 LIBGCC
=$(shell $(CC
) -m32
-print-libgcc-file-name
)
46 LPCC
=$(LIBPAYLOAD_DIR
)/bin
/lpgcc
48 bayou.elf
: $(OBJECTS-y
)
49 $(LPCC
) $(LDFLAGS
) -m32
-o
$@
$(OBJECTS-y
)
52 builtin-lar.o
: $(BUILTIN_LAR
)
53 @
$(OBJCOPY
) -I binary
-B i386
-O elf32-i386
$(BUILTIN_LAR
) $@
55 builtin.lar
: util
/pbuilder
/pbuilder
57 util
/pbuilder
/pbuilder
-c
$(PBUILDER_CONFIG
) create
$@
59 util
/pbuilder
/pbuilder
:
60 $(MAKE
) -C util
/pbuilder
63 $(LPCC
) $(CFLAGS
) -c
-o
$@
$<
66 rm -f
*.o bayou.elf builtin.lar
67 $(MAKE
) -C util
/pbuilder
clean