blob: 50f97961bcf8d513d0f5e95472d13c4a0ce4cd3e [file] [log] [blame]
Peter Stuge1d862de2009-04-14 00:08:34 +00001#
2#
3#
4
5obj ?= $(shell pwd)
6
Myles Watsonfeaaedc2009-04-20 21:38:11 +00007COMMANDS=create.o bootblock.o delete.o extract.o add.o print.o resize.o
Peter Stuge1d862de2009-04-14 00:08:34 +00008OBJ=$(COMMANDS) cbfstool.o util.o fs.o
9INC=cbfstool.h cbfs.h
10
Stefan Reinauer9dd27bc2009-06-30 17:13:58 +000011HOSTCC ?= gcc
Stefan Reinauer3a5c2772009-05-26 12:22:10 +000012HOSTCXX ?= g++
13
Myles Watson475aeda2009-05-08 19:39:15 +000014CFLAGS=-g -Wall -W -Werror
Peter Stuge1d862de2009-04-14 00:08:34 +000015
16DESTDIR ?= /usr/local/bin
17
Peter Stuge45ae92ff2009-04-14 19:48:32 +000018all: $(obj)/cbfstool $(obj)/tools/cbfs-mkpayload $(obj)/tools/cbfs-mkstage
Peter Stuge1d862de2009-04-14 00:08:34 +000019
20$(obj)/cbfstool: $(patsubst %,$(obj)/%,$(OBJ))
Stefan Reinauer9dd27bc2009-06-30 17:13:58 +000021 $(HOSTCC) -o $@ $(patsubst %,$(obj)/%,$(OBJ))
Peter Stuge1d862de2009-04-14 00:08:34 +000022
23tobj = $(obj)/tools
24tsrc = $(shell pwd)/tools
25
26include $(tsrc)/Makefile
27
28$(obj)/%.o: %.c $(INC)
Stefan Reinauer9dd27bc2009-06-30 17:13:58 +000029 $(HOSTCC) $(CFLAGS) -c -o $@ $<
Peter Stuge1d862de2009-04-14 00:08:34 +000030
Peter Stuge45ae92ff2009-04-14 19:48:32 +000031install: $(obj)/cbfstool $(obj)/tools/cbfs-mkpayload $(obj)/tools/cbfs-mkstage
Peter Stuge1d862de2009-04-14 00:08:34 +000032 @ install -d $(DESTDIR)
33 @ install -m 0755 $(obj)/cbfstool $(DESTDIR)/cbfstool
Peter Stuge45ae92ff2009-04-14 19:48:32 +000034 @ install -m 0755 $(obj)/tools/cbfs-mkstage $(DESTDIR)/cbfs-mkstage
35 @ install -m 0755 $(obj)/tools/cbfs-mkpayload $(DESTDIR)/cbfs-mkpayload
Peter Stuge1d862de2009-04-14 00:08:34 +000036
37tags:
38 ctags *.[ch] */*.[ch]
39
40clean: tools-clean
41 rm -f $(patsubst %,$(obj)/%,$(OBJ)) $(obj)/cbfstool
42