Files
U2FDevice/Scripts/uECC-Makefile

28 lines
650 B
Makefile
Executable File

#!/usr/bin/env make
SRC_DIR := .
OBJ_DIR := obj
LDFLAGS := -r
CPPFLAGS :=
CXXFLAGS := --std=c++14
CXXFLAGS += -MMD -MP
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.o: $(OBJECTS)
$(CXX) $(LDFLAGS) -o $@ $^
$(OBJECTSC): $(OBJ_DIR)/%.o: $(SRC_DIR)/%.c
@mkdir -p $(@D)
@$(CXX) $(CPPFLAGS) $(CXXFLAGS) -c -o $@ $<
$(OBJECTSI): $(OBJ_DIR)/%.o: $(SRC_DIR)/%.inc
@mkdir -p $(@D)
@$(CXX) -x c $(CPPFLAGS) $(CXXFLAGS) -c -o $@ $<
-include $(OBJECTS:.o=.d)