#!/usr/bin/env make SRC_DIR := . OBJ_DIR := obj CFLAGS := -MMD -MP -fPIE $(CROSS_CFLAGS) MODULESC := $(wildcard $(SRC_DIR)/*.c) MODULESI := $(SRC_DIR)/curve-specific.inc OBJECTSC := $(MODULESC:$(SRC_DIR)/%.c=$(OBJ_DIR)/%.o) OBJECTSI := $(MODULESI:$(SRC_DIR)/%.inc=$(OBJ_DIR)/%.o) OBJECTS := $(OBJECTSC) $(OBJECTSI) libuECC.a: $(OBJECTS) ar rcs $@ $^ $(OBJECTSC): $(OBJ_DIR)/%.o: $(SRC_DIR)/%.c @mkdir -p $(@D) @$(CC) $(STATIC) $(CFLAGS) -c -o $@ $< $(OBJECTSI): $(OBJ_DIR)/%.o: $(SRC_DIR)/%.inc @mkdir -p $(@D) @$(CC) -x c $(STATIC) $(CFLAGS) -c -o $@ $< clean: rm -f obj/* rm -f libuECC.a .PHONY: clean -include $(OBJECTS:.o=.d)