53 lines
1.3 KiB
Makefile
53 lines
1.3 KiB
Makefile
obj ?= $(shell pwd)
|
|
|
|
HOSTCC ?= $(CC)
|
|
CFLAGS ?= -g
|
|
CFLAGS += -Wall -Wundef -Wstrict-prototypes -Wmissing-prototypes
|
|
CFLAGS += -Wwrite-strings -Wredundant-decls -Wno-trigraphs
|
|
CFLAGS += -Wstrict-aliasing -Werror
|
|
CFLAGS += -Wshadow
|
|
LDFLAGS += -g
|
|
|
|
CBFSTOOL_BINARY:=$(obj)/cbfstool
|
|
|
|
CBFSTOOL_COMMON:=cbfstool.o common.o cbfs_image.o compress.o fit.o
|
|
CBFSTOOL_COMMON+=elfheaders.o cbfs-mkstage.o cbfs-mkpayload.o xdr.o
|
|
# LZMA
|
|
CBFSTOOL_COMMON+=lzma/lzma.o
|
|
CBFSTOOL_COMMON+=lzma/C/LzFind.o lzma/C/LzmaDec.o lzma/C/LzmaEnc.o
|
|
|
|
CBFSTOOL_COMMON+=linux_trampoline.o cbfs-payload-linux.o
|
|
|
|
CBFSTOOL_COMMON:=$(addprefix $(obj)/,$(CBFSTOOL_COMMON))
|
|
|
|
|
|
RMODTOOL_BINARY:=$(obj)/rmodtool
|
|
RMODTOOL_COMMON:=rmodtool.o rmodule.o common.o elfheaders.o xdr.o
|
|
|
|
RMODTOOL_COMMON:=$(addprefix $(obj)/,$(RMODTOOL_COMMON))
|
|
|
|
all: dep $(CBFSTOOL_BINARY) $(RMODTOOL_BINARY)
|
|
|
|
$(obj)/%.o: %.c
|
|
$(HOSTCC) $(CFLAGS) -c -o $@ $<
|
|
|
|
clean:
|
|
rm -f $(CBFSTOOL_COMMON) $(CBFSTOOL_BINARY)
|
|
rm -f $(RMODTOOL_COMMON) $(RMODTOOL_BINARY)
|
|
|
|
tags:
|
|
ctags *.[ch]
|
|
|
|
$(obj)/cbfstool:$(CBFSTOOL_COMMON)
|
|
$(HOSTCC) $(CFLAGS) -o $@ $^
|
|
|
|
$(obj)/rmodtool:$(RMODTOOL_COMMON)
|
|
$(HOSTCC) $(CFLAGS) -o $@ $^
|
|
|
|
dep:
|
|
@$(HOSTCC) $(CFLAGS) -MM *.c > .dependencies
|
|
@$(HOSTCC) $(CFLAGS) -MM lzma/*.c >> .dependencies
|
|
@$(HOSTCC) $(CFLAGS) -MM lzma/C/*.c >> .dependencies
|
|
|
|
-include .dependencies
|