Peter Stuge | 1d862de | 2009-04-14 00:08:34 +0000 | [diff] [blame] | 1 | obj ?= $(shell pwd) |
| 2 | |
Alexandru Gagniuc | 4a7b115 | 2014-01-27 17:17:29 -0600 | [diff] [blame] | 3 | HOSTCC ?= $(CC) |
Ronald G. Minnich | aa2f739 | 2013-12-03 11:13:35 -0800 | [diff] [blame] | 4 | CFLAGS ?= -g |
Ronald G. Minnich | aa2f739 | 2013-12-03 11:13:35 -0800 | [diff] [blame] | 5 | CFLAGS += -Wall -Wundef -Wstrict-prototypes -Wmissing-prototypes |
| 6 | CFLAGS += -Wwrite-strings -Wredundant-decls -Wno-trigraphs |
| 7 | CFLAGS += -Wstrict-aliasing -Werror |
Alexandru Gagniuc | b63b75b | 2014-01-29 14:56:20 -0600 | [diff] [blame] | 8 | CFLAGS += -Wshadow |
Stefan Reinauer | 3a5c277 | 2009-05-26 12:22:10 +0000 | [diff] [blame] | 9 | |
Aaron Durbin | 4fde5a6 | 2014-03-07 15:11:53 -0600 | [diff] [blame] | 10 | CBFSTOOL_BINARY:=$(obj)/cbfstool |
Peter Stuge | 1d862de | 2009-04-14 00:08:34 +0000 | [diff] [blame] | 11 | |
Aaron Durbin | 4fde5a6 | 2014-03-07 15:11:53 -0600 | [diff] [blame] | 12 | CBFSTOOL_COMMON:=cbfstool.o common.o cbfs_image.o compress.o fit.o |
| 13 | CBFSTOOL_COMMON+=elfheaders.o cbfs-mkstage.o cbfs-mkpayload.o xdr.o |
Stefan Reinauer | 2e200cd | 2012-10-30 14:02:45 -0700 | [diff] [blame] | 14 | # LZMA |
Aaron Durbin | 4fde5a6 | 2014-03-07 15:11:53 -0600 | [diff] [blame] | 15 | CBFSTOOL_COMMON+=lzma/lzma.o |
| 16 | CBFSTOOL_COMMON+=lzma/C/LzFind.o lzma/C/LzmaDec.o lzma/C/LzmaEnc.o |
Peter Stuge | 1d862de | 2009-04-14 00:08:34 +0000 | [diff] [blame] | 17 | |
Aaron Durbin | 4fde5a6 | 2014-03-07 15:11:53 -0600 | [diff] [blame] | 18 | CBFSTOOL_COMMON+=linux_trampoline.o cbfs-payload-linux.o |
Patrick Georgi | de36d33 | 2013-08-27 20:22:21 +0200 | [diff] [blame] | 19 | |
Aaron Durbin | 4fde5a6 | 2014-03-07 15:11:53 -0600 | [diff] [blame] | 20 | CBFSTOOL_COMMON:=$(addprefix $(obj)/,$(CBFSTOOL_COMMON)) |
Peter Stuge | 1d862de | 2009-04-14 00:08:34 +0000 | [diff] [blame] | 21 | |
Aaron Durbin | 4fde5a6 | 2014-03-07 15:11:53 -0600 | [diff] [blame] | 22 | |
| 23 | RMODTOOL_BINARY:=$(obj)/rmodtool |
| 24 | RMODTOOL_COMMON:=rmodtool.o rmodule.o common.o elfheaders.o xdr.o |
| 25 | |
| 26 | RMODTOOL_COMMON:=$(addprefix $(obj)/,$(RMODTOOL_COMMON)) |
| 27 | |
| 28 | all: dep $(CBFSTOOL_BINARY) $(RMODTOOL_BINARY) |
Stefan Reinauer | 746d174 | 2012-08-15 16:02:52 -0700 | [diff] [blame] | 29 | |
Patrick Georgi | b7b56dd8 | 2009-09-14 13:29:27 +0000 | [diff] [blame] | 30 | $(obj)/%.o: %.c |
Stefan Reinauer | 9dd27bc | 2009-06-30 17:13:58 +0000 | [diff] [blame] | 31 | $(HOSTCC) $(CFLAGS) -c -o $@ $< |
Peter Stuge | 1d862de | 2009-04-14 00:08:34 +0000 | [diff] [blame] | 32 | |
Patrick Georgi | b7b56dd8 | 2009-09-14 13:29:27 +0000 | [diff] [blame] | 33 | clean: |
Aaron Durbin | 4fde5a6 | 2014-03-07 15:11:53 -0600 | [diff] [blame] | 34 | rm -f $(CBFSTOOL_COMMON) $(CBFSTOOL_BINARY) |
| 35 | rm -f $(RMODTOOL_COMMON) $(RMODTOOL_BINARY) |
Peter Stuge | 1d862de | 2009-04-14 00:08:34 +0000 | [diff] [blame] | 36 | |
Stefan Reinauer | 14e2277 | 2010-04-27 06:56:47 +0000 | [diff] [blame] | 37 | tags: |
Patrick Georgi | b7b56dd8 | 2009-09-14 13:29:27 +0000 | [diff] [blame] | 38 | ctags *.[ch] |
Peter Stuge | 1d862de | 2009-04-14 00:08:34 +0000 | [diff] [blame] | 39 | |
Aaron Durbin | 4fde5a6 | 2014-03-07 15:11:53 -0600 | [diff] [blame] | 40 | $(obj)/cbfstool:$(CBFSTOOL_COMMON) |
| 41 | $(HOSTCC) $(CFLAGS) -o $@ $^ |
| 42 | |
| 43 | $(obj)/rmodtool:$(RMODTOOL_COMMON) |
Stefan Reinauer | aa3f7ba | 2013-03-28 16:51:45 -0700 | [diff] [blame] | 44 | $(HOSTCC) $(CFLAGS) -o $@ $^ |
Stefan Reinauer | 746d174 | 2012-08-15 16:02:52 -0700 | [diff] [blame] | 45 | |
| 46 | dep: |
| 47 | @$(HOSTCC) $(CFLAGS) -MM *.c > .dependencies |
Stefan Reinauer | aa3f7ba | 2013-03-28 16:51:45 -0700 | [diff] [blame] | 48 | @$(HOSTCC) $(CFLAGS) -MM lzma/*.c >> .dependencies |
Stefan Reinauer | 2e200cd | 2012-10-30 14:02:45 -0700 | [diff] [blame] | 49 | @$(HOSTCC) $(CFLAGS) -MM lzma/C/*.c >> .dependencies |
Stefan Reinauer | 746d174 | 2012-08-15 16:02:52 -0700 | [diff] [blame] | 50 | |
| 51 | -include .dependencies |