From dabfe3f7a3f165a77d1301a0826bdb7a1049317d Mon Sep 17 00:00:00 2001 From: Fabrice Date: Sun, 1 Mar 2026 17:50:59 +0100 Subject: init --- makefile | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 makefile (limited to 'makefile') diff --git a/makefile b/makefile new file mode 100644 index 0000000..2bdec21 --- /dev/null +++ b/makefile @@ -0,0 +1,41 @@ +.SILENT: +.DEFAULT_GOAL := all + +# ====== Configurations and Binaries ====== # +CXX := clang++ +RM := rm -f +PRINTF := printf + +# ====== Flags ====== # +CCXX_FLAGS := \ + -Wall -Wextra -Werror -pedantic \ + -MMD -MP + +CXX_FLAGS := -std=c++14 -nostdlib++ \ + $(CCXX_FLAGS) -fno-rtti -fno-exceptions + +LD_FLAGS := + +# ====== Sources ====== # +TOP_DIR := . +SRC_DIR := $(TOP_DIR)/src + +VOIDC_O := $(SRC_DIR)/voidc.o +VOIDC_D := $(SRC_DIR)voidc.d +VOIDC := $(TOP_DIR)/voidc + +# ====== Rules ====== # +.PHONY: all +all: $(VOIDC) + +$(VOIDC): $(VOIDC_O) + $(PRINTF) " CXXLD %s\n" $< + $(CXX) $< -o $@ $(LD_FLAGS) + +%.o: %.cc + $(PRINTF) " CXX %s\n" $< + $(CXX) $< -o $@ -c $(CXX_FLAGS) + +.PHONY: clean +clean: + $(RM) $(VOIDC_O) $(VOIDC_D) $(VOIDC) -- cgit v1.2.3