38 lines
1.1 KiB
Makefile
38 lines
1.1 KiB
Makefile
CC := gcc -fsanitize=address
|
|
program_NAME := sha256-hash
|
|
program_C_SRCS := $(wildcard *.c)
|
|
program_CXX_SRCS := $(wildcard *.cpp)
|
|
program_C_OBJS := ${program_C_SRCS:.c=.o}
|
|
program_CXX_OBJS := ${program_CXX_SRCS:.cpp=.o}
|
|
program_OBJS := $(program_C_OBJS) $(program_CXX_OBJS)
|
|
program_INCLUDE_DIRS :=
|
|
program_LIBRARY_DIRS :=
|
|
program_LIBRARIES :=
|
|
|
|
WOLF_INSTALL_DIR := /usr/local
|
|
program_INCLUDE_DIRS += $(WOLF_INSTALL_DIR)/include
|
|
program_INCLUDE_DIRS += ./include
|
|
program_LIBRARY_DIRS += $(WOLF_INSTALL_DIR)/lib
|
|
program_LIBRARIES += wolfssl
|
|
|
|
CPPFLAGS += $(foreach includedir,$(program_INCLUDE_DIRS),-I$(includedir))
|
|
#CPPFLAGS += -Werror
|
|
#CPPFLAGS += -Weverything
|
|
#CPPFLAGS += -Wsign-conversion
|
|
#CPPFLAGS += -Wshorten-64-to-32 #NOTE: Not supported on most linux distros.
|
|
LDFLAGS += $(foreach librarydir,$(program_LIBRARY_DIRS),-L$(librarydir))
|
|
LDFLAGS += $(foreach library,$(program_LIBRARIES),-l$(library))
|
|
|
|
.PHONY: all clean distclean
|
|
|
|
all: $(program_NAME)
|
|
|
|
$(program_NAME): $(program_OBJS)
|
|
$(CC) $(CPPFLAGS) $(program_OBJS) -o $(program_NAME) $(LDFLAGS)
|
|
|
|
clean:
|
|
@- $(RM) $(program_NAME)
|
|
@- $(RM) $(program_OBJS)
|
|
|
|
distclean: clean
|