Get the lzma/ directory from v3 via svn:externals, for use with Bayou.

Also, fix a few Makefiles regarding lzma stuff and 'make clean' behaviour.

Add bayou.xml.example which users can use as a starting point.

Bayou does compile fine now (if you build ../libpayload) before.

Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de>
Acked-by: Uwe Hermann <uwe@hermann-uwe.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@3720 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
This commit is contained in:
Uwe Hermann 2008-11-02 17:48:20 +00:00
parent 7eb845e815
commit 54c5276c3a
3 changed files with 78 additions and 5 deletions

View File

@ -45,7 +45,7 @@ LIBGCC=$(shell $(CC) -m32 -print-libgcc-file-name)
LPCC=$(LIBPAYLOAD_DIR)/bin/lpgcc
bayou.elf: $(OBJECTS-y)
$(LPCC) -ldscript bayou.ldscript -m32 -o $@ $(OBJECTS-y)
$(LPCC) $(LDFLAGS) -m32 -o $@ $(OBJECTS-y)
@ strip $@
builtin-lar.o: $(BUILTIN_LAR)
@ -59,7 +59,9 @@ util/pbuilder/pbuilder:
make -C util/pbuilder
%.o: %.c
$(LPCC) $(CFLAGS) -c -o $@ $<
$(LPCC) $(CFLAGS) -c -o $@ $<
clean:
rm -f *.o bayou.elf builtin.lar
make -C util/pbuilder clean

View File

@ -0,0 +1,42 @@
<!--
## 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
-->
<!-- Sample Bayou config file. Adapt as needed, then rename to bayou.xml. -->
<BayouConfig>
<global>
<timeout>10</timeout>
</global>
<payloads>
<payload type="chain" flags="default">
<title>Default Chain</title>
<chain>
<file>payloads/passwd.elf</file>
<lar>passwd</lar>
</chain>
<chain>
<file>payloads/coreinfo.elf</file>
</chain>
</payload>
<payload type="chooser">
<file>payloads/coreinfo.elf</file>
</payload>
</payloads>
</BayouConfig>

View File

@ -22,17 +22,46 @@ PBUILDOBJS := config.o create.o show.o main.o
INCLUDES := -Iliblar/
CFLAGS=-Wall -Werror -g
all: pbuilder
LZMA_OBJ := lzma/LZMAEncoder.o lzma/LZInWindow.o lzma/RangeCoderBit.o
LZMA_OBJ += lzma/StreamUtils.o lzma/OutBuffer.o lzma/Alloc.o lzma/CRC.o
LZMA_OBJ += lzma/lzma-compress.o
lzma/lzma-compress.o: lzma/minilzma.cc
g++ -o $@ -c -DCOMPACT $<
lzma/%.o: lzma/C/7zip/Compress/LZMA/%.cpp
g++ -o $@ -c $<
lzma/%.o: lzma/C/7zip/Compress/LZ/%.cpp
g++ -o $@ -c $<
lzma/%.o: lzma/C/7zip/Compress/RangeCoder/%.cpp
g++ -o $@ -c $<
lzma/%.o: lzma/C/7zip/Decompress/%.cpp
g++ -o $@ -c $<
lzma/%.o: lzma/C/7zip/Common/%.cpp
g++ -o $@ -c $<
lzma/%.o: lzma/C/Common/%.cpp
g++ -o $@ -c $<
lzma/%.o: lzma/%.cc
g++ -o $@ -c $<
pbuilder: $(PBUILDOBJS) $(LZMA_OBJ) liblar/liblar.a
$(CXX) -o $@ $(PBUILDOBJS) $(LZMA_OBJ) -L ./liblar -llar -lexpat
liblar/liblar.a:
make -C liblar
include lzma/Makefile
%.o: %.c
$(CC) -c $(CFLAGS) $(INCLUDES) -o $@ $<
clean:
rm -f pbuilder *.o
rm -f pbuilder *.o lzma/*.o
make -C liblar clean