Get the lzma/ directory from v3 via svn:externals, for use with Bayou.
authorUwe Hermann <uwe@hermann-uwe.de>
Sun, 2 Nov 2008 17:48:20 +0000 (17:48 +0000)
committerUwe Hermann <uwe@hermann-uwe.de>
Sun, 2 Nov 2008 17:48:20 +0000 (17:48 +0000)
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

payloads/bayou/Makefile
payloads/bayou/bayou.xml.example [new file with mode: 0644]
payloads/bayou/util/pbuilder/Makefile

index 648d68a28ca986c4bb3efaa5493013ee553072cb..0865ae1f65c1f9031ca9c866e63f37e0eb7bc21b 100644 (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
+
diff --git a/payloads/bayou/bayou.xml.example b/payloads/bayou/bayou.xml.example
new file mode 100644 (file)
index 0000000..471ac35
--- /dev/null
@@ -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>
+
index 8483935cc658b30eeb70dbf589fb038c7b6ccb65..b3176300776f17c0e1a5dfbefe8cbbce96eb60ec 100644 (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
+