New cbfstool. Works without mmap or fork/exec and

supports fixed location files. Some parts are salvaged
from the pre-commit version (esp. stage and payload creation),
others are completely rewritten (eg. the main loop that handles
file addition)

Also adapt newconfig (we don't need cbfs/tools anymore) and fix
some minor issues in the cbfstool-README.

Signed-off-by: Patrick Georgi <patrick.georgi@coresystems.de>
Acked-by: Stefan Reinauer <stepan@coresystems.de>


git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4630 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
This commit is contained in:
Patrick Georgi
2009-09-14 13:29:27 +00:00
parent c8d4a05f8f
commit b7b56dd8fb
77 changed files with 656 additions and 2445 deletions

View File

@@ -2,34 +2,56 @@
ifdef POST_EVALUATION
cbfsobj :=
# commands
cbfsobj += create.o
cbfsobj += bootblock.o
cbfsobj += delete.o
cbfsobj += extract.o
cbfsobj += add.o
cbfsobj += print.o
cbfsobj += resize.o
# main tool
cbfsobj += common.o
cbfsobj += compress.o
cbfsobj += minilzma.o
cbfsobj += LZMAEncoder.o
cbfsobj += LZInWindow.o
cbfsobj += RangeCoderBit.o
cbfsobj += StreamUtils.o
cbfsobj += OutBuffer.o
cbfsobj += Alloc.o
cbfsobj += CRC.o
cbfsobj += cbfs-mkstage.o
cbfsobj += cbfs-mkpayload.o
cbfsobj += cbfstool.o
cbfsobj += util.o
cbfsobj += fs.o
cbfsinc := cbfstool.h cbfs.h
CBFSTOOLFLAGS=-m32 -DCOMPACT
$(obj)/util/cbfstool:
mkdir -p $@
mkdir -p $@/tools/lzma
$(obj)/util/cbfstool/%.o: $(top)/util/cbfstool/%.c
printf " HOSTCC $(subst $(obj)/,,$(@))\n"
$(HOSTCC) $(HOSTCFLAGS) -c -o $@ $<
$(HOSTCC) $(CBFSTOOLFLAGS) $(HOSTCFLAGS) -c -o $@ $<
$(obj)/util/cbfstool/cbfstool: $(obj)/util/cbfstool $(obj)/util/cbfstool/tools/cbfs-mkpayload $(obj)/util/cbfstool/tools/cbfs-mkstage $(addprefix $(obj)/util/cbfstool/,$(cbfsobj))
printf " HOSTCC $(subst $(obj)/,,$(@)) (link)\n"
$(HOSTCC) -o $@ $(addprefix $(obj)/util/cbfstool/,$(cbfsobj))
$(obj)/util/cbfstool/%.o: $(top)/util/cbfstool/lzma/%.cc
printf " HOSTCXX $(subst $(obj)/,,$(@))\n"
$(HOSTCXX) $(CBFSTOOLFLAGS) $(HOSTCXXFLAGS) -c -o $@ $<
$(obj)/util/cbfstool/%.o: $(top)/util/cbfstool/lzma/C/7zip/Compress/LZMA/%.cpp
printf " HOSTCXX $(subst $(obj)/,,$(@))\n"
$(HOSTCXX) $(CBFSTOOLFLAGS) $(HOSTCXXFLAGS) -c -o $@ $<
$(obj)/util/cbfstool/%.o: $(top)/util/cbfstool/lzma/C/7zip/Compress/LZ/%.cpp
printf " HOSTCXX $(subst $(obj)/,,$(@))\n"
$(HOSTCXX) $(CBFSTOOLFLAGS) $(HOSTCXXFLAGS) -c -o $@ $<
$(obj)/util/cbfstool/%.o: $(top)/util/cbfstool/lzma/C/7zip/Compress/RangeCoder/%.cpp
printf " HOSTCXX $(subst $(obj)/,,$(@))\n"
$(HOSTCXX) $(CBFSTOOLFLAGS) $(HOSTCXXFLAGS) -c -o $@ $<
$(obj)/util/cbfstool/%.o: $(top)/util/cbfstool/lzma/C/7zip/Common/%.cpp
printf " HOSTCXX $(subst $(obj)/,,$(@))\n"
$(HOSTCXX) $(CBFSTOOLFLAGS) $(HOSTCXXFLAGS) -c -o $@ $<
$(obj)/util/cbfstool/%.o: $(top)/util/cbfstool/lzma/C/Common/%.cpp
printf " HOSTCXX $(subst $(obj)/,,$(@))\n"
$(HOSTCXX) $(CBFSTOOLFLAGS) $(HOSTCXXFLAGS) -c -o $@ $<
$(obj)/util/cbfstool/cbfstool: $(obj)/util/cbfstool $(addprefix $(obj)/util/cbfstool/,$(cbfsobj))
printf " HOSTCXX $(subst $(obj)/,,$(@)) (link)\n"
$(HOSTCXX) $(CBFSTOOLFLAGS) -o $@ $(addprefix $(obj)/util/cbfstool/,$(cbfsobj))
endif
include $(top)/util/cbfstool/tools/Makefile.inc