Files
ml-kem/examples/example.mk
2025-10-24 21:07:44 +05:30

16 lines
683 B
Makefile

EXAMPLE_BUILD_DIR := $(BUILD_DIR)/example
EXAMPLE_DIR := examples
EXAMPLE_SOURCES := $(wildcard $(EXAMPLE_DIR)/*.cpp)
EXAMPLE_HEADERS := $(wildcard $(EXAMPLE_DIR)/*.hpp)
EXAMPLE_EXECS := $(addprefix $(EXAMPLE_BUILD_DIR)/, $(notdir $(EXAMPLE_SOURCES:.cpp=.exe)))
$(EXAMPLE_BUILD_DIR):
mkdir -p $@
$(EXAMPLE_BUILD_DIR)/%.exe: $(EXAMPLE_DIR)/%.cpp $(EXAMPLE_BUILD_DIR) $(SHA3_INC_DIR) $(RANDOMSHAKE_INC_DIR) $(SUBTLE_INC_DIR) $(BLAKE3_INC_DIR)
$(CXX) $(CXX_DEFS) $(CXX_FLAGS) $(WARN_FLAGS) $(RELEASE_FLAGS) $(I_FLAGS) $(DEP_IFLAGS) $< $(DEP_LFLAGS) -o $@
example: $(EXAMPLE_EXECS) ## Build and run example program, demonstrating usage of ML-KEM API
$(foreach exec,$^,./$(exec);)