Various fixes to cbfstool.
[coreboot.git] / util / cbfstool / Makefile
1 obj ?= $(shell pwd)
2
3 HOSTCXX  ?= g++
4 HOSTCC   ?= gcc
5 CFLAGS   ?= -g -Wall
6 CXXFLAGS ?=-DCOMPACT $(CFLAGS)
7 LDFLAGS  ?= -g
8
9 BINARY:=$(obj)/cbfstool
10
11 COMMON:=common.o compress.o minilzma.o
12 COMMON+=LZMAEncoder.o LZInWindow.o
13 COMMON+=RangeCoderBit.o StreamUtils.o
14 COMMON+=OutBuffer.o Alloc.o CRC.o
15 COMMON+=cbfs-mkstage.o cbfs-mkpayload.o cbfstool.o
16
17 COMMON:=$(addprefix $(obj)/,$(COMMON))
18
19 $(obj)/%.o: %.c
20         $(HOSTCC) $(CFLAGS) -c -o $@ $<
21
22 $(obj)/%.o: lzma/%.cc
23         $(HOSTCXX) $(CXXFLAGS) -c -o $@ $<
24
25 $(obj)/%.o: lzma/C/7zip/Compress/LZMA/%.cpp
26         $(HOSTCXX) $(CXXFLAGS) -c -o $@ $<
27
28 $(obj)/%.o: lzma/C/7zip/Compress/LZ/%.cpp
29         $(HOSTCXX) $(CXXFLAGS) -c -o $@ $<
30
31 $(obj)/%.o: lzma/C/7zip/Compress/RangeCoder/%.cpp
32         $(HOSTCXX) $(CXXFLAGS) -c -o $@ $<
33
34 $(obj)/%.o: lzma/C/7zip/Common/%.cpp
35         $(HOSTCXX) $(CXXFLAGS) -c -o $@ $<
36
37 $(obj)/%.o: lzma/C/Common/%.cpp
38         $(HOSTCXX) $(CXXFLAGS) -c -o $@ $<
39
40 all: $(BINARY)
41
42 clean:
43         rm -f $(COMMON) $(BINARY)
44
45 tags:
46         ctags *.[ch]
47
48 $(obj)/cbfstool:$(COMMON)
49         $(HOSTCXX) $(LDFLAGS) -o $@ $^