switch-coreboot/util/lar/Makefile
Stefan Reinauer 6220b632e7 Now version 3: LinuxBIOS -> coreboot rename.
- I left LB_TAG_ intact because they are used by the payloads
- file renames are still missing. see next commit
- some lb_ renames might be missing. feel free to provide patches.

Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Acked-by: Stefan Reinauer <stepan@coresystems.de>



git-svn-id: svn://coreboot.org/repository/coreboot-v3@564 f3766cd6-281f-0410-b1cd-43a5c92072e9
2008-01-27 18:54:57 +00:00

79 lines
2.5 KiB
Makefile

##
## lar - lightweight archiver
##
## Copyright (C) 2006-2008 coresystems GmbH
## (Written by Stefan Reinauer <stepan@coresystems.de> for coresystems GmbH)
##
## This program is free software; you can redistribute it and/or modify
## it under the terms of the GNU General Public License as published by
## the Free Software Foundation; version 2 of the License.
##
## 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
##
LAROBJ := lar.o stream.o lib.o
LARDIR := lardir
COMPRESSOR := $(LZMA_OBJ) $(obj)/util/lzma/lzma-compress.o
LARDIR += lzmadir
COMPRESSOR += $(obj)/util/nrv2b/nrv2b-compress.o
LARDIR += nrv2bdir
LAROBJ_ABS := $(patsubst %,$(obj)/util/lar/%,$(LAROBJ))
lardir:
$(Q)printf " BUILD LAR\n"
$(Q)mkdir -p $(obj)/util/lar
$(obj)/util/lar/lar: $(LARDIR) $(LAROBJ_ABS) $(COMPRESSOR)
$(Q)printf " HOSTCXX $(subst $(shell pwd)/,,$(@))\n"
$(Q)$(HOSTCXX) $(HOSTCXXFLAGS) -o $@ $(LAROBJ_ABS) $(COMPRESSOR)
$(obj)/util/lar/%.o: $(src)/util/lar/%.c
$(Q)printf " HOSTCC $(subst $(shell pwd)/,,$(@))\n"
$(Q)$(HOSTCC) $(HOSTCFLAGS) -c $< -o $@
lar: $(obj)/util/lar/lar
# -----------------------------------------------------------------------------
# Stuff below this line is for debugging purposes only.
ifdef DEBUG_LAR
example: example.c
$(Q)$(CC) $(CFLAGS) -o $@ $^
clean:
$(Q)rm -rf lar tree.lar tree tree2 example
tree:
$(Q)printf "Creating sample tree... "
$(Q)rm -rf tree
$(Q)mkdir tree
$(Q)mkdir -p tree/compression
$(Q)mkdir -p tree/normal
$(Q)mkdir -p tree/fallback
$(Q)dd if=/dev/urandom of=tree/compression/lzma bs=1k count=8 &>/dev/null
$(Q)dd if=/dev/urandom of=tree/normal/coreboot.elf.lzma bs=1k count=32 &>/dev/null
$(Q)dd if=/dev/urandom of=tree/normal/initmem bs=1k count=16 &>/dev/null
$(Q)dd if=/dev/urandom of=tree/fallback/coreboot.elf.lzma bs=1k count=32 &>/dev/null
$(Q)dd if=/dev/urandom of=tree/fallback/initmem bs=1k count=16 &>/dev/null
$(Q)printf "done.\n"
tree.lar: lar tree
$(Q)cd tree; ../lar c ../tree.lar `find . -type f | cut -c3-`
test: lar example tree.lar
$(Q)mkdir tree2; cd tree2; ../lar x ../tree.lar
$(Q)printf "Comparing tree:\n"
$(Q)diff -urN tree tree2
$(Q)rm -rf tree tree2
$(Q)./example tree.lar
endif