blob: 983138f384b37c5fccda40e2824cd4f6cdefb439 [file] [log] [blame]
nagendra modadugu4fae5422016-05-10 16:11:54 -07001obj ?= ./build
2CROSS_COMPILE ?=
3CC ?= $(CROSS_COMPILE)gcc
4AR ?= $(CROSS_COMPILE)ar
5
6SOURCES = hmac.c
7SOURCES += p256.c
8SOURCES += p256_ec.c
9SOURCES += p256_ecdsa.c
10SOURCES += p256_prng.c
11SOURCES += sha.c
12SOURCES += sha256.c
nagendra modadugu6283eee2016-12-13 10:23:48 -080013ifeq ($(CONFIG_UPTO_SHA512),y)
nagendra modaduguc0fe8362016-12-08 14:43:06 -080014SOURCES += sha384.c
15SOURCES += sha512.c
16endif
nagendra modadugu7c350b92016-10-18 15:13:05 -070017SOURCES += util.c
nagendra modadugu4fae5422016-05-10 16:11:54 -070018
19# Use V=1 for verbose output
20ifeq ($(V),)
21Q := @
22else
23Q :=
24endif
25
26CFLAGS += -Iinclude
27CFLAGS += -Wall -Werror
nagendra modadugu5319e832016-05-25 13:48:49 -070028CFLAGS += -DTHIRD_PARTY
nagendra modadugu6283eee2016-12-13 10:23:48 -080029ifeq ($(CONFIG_UPTO_SHA512),y)
30CFLAGS += -DSHA512_SUPPORT
31endif
nagendra modadugu4fae5422016-05-10 16:11:54 -070032
33OBJS = $(patsubst %.c,$(obj)/%.o,$(SOURCES))
34DEPS = $(patsubst %.c,$(obj)/%.d,$(SOURCES))
35
36# This is the default target
37$(obj)/libcryptoc.a: $(OBJS)
38 @echo " AR $(notdir $@)"
39 $(Q)$(AR) scr $@ $^
40
41$(obj):
42 @echo " MKDIR $(obj)"
43 $(Q)mkdir -p $(obj)
44
45$(obj)/%.d $(obj)/%.o: %.c | $(obj)
46 @echo " CC $(notdir $<)"
47 $(Q)$(CC) $(CFLAGS) -c -MMD -MF $(basename $@).d -o $(basename $@).o $<
48
49.PHONY: clean
50clean:
51 @echo " RM $(obj)"
52 $(Q)rm -rf $(obj)
53
54ifneq ($(MAKECMDGOALS),clean)
55-include $(DEPS)
56endif