Finally have something useful.

This commit is contained in:
2023-04-11 23:42:27 -07:00
parent 1a4a19b938
commit cdbe51a3cc
34 changed files with 1065 additions and 475 deletions

View File

@@ -1,32 +1,39 @@
BUILD_DIR ?= build
ARCHS = -arch arm64 # -arch x86_64
INCLUDES = -I./include
CC = clang++
CCFLAGS += -std=c++17 -finput-charset=utf-8 -fdiagnostics-show-template-tree -fno-elide-type -g $(ARCHS) --stdlib=libc++
CCFLAGS += -std=c++17 -finput-charset=utf-8 -fdiagnostics-show-template-tree -fno-elide-type -g $(ARCHS) $(INCLUDES)
LD = clang++
LDFLAGS += $(ARCHS)
JTEST_HEADERS := $(wildcard include/JTest/*.h)
JTEST_SOURCES := $(wildcard src/JTest/*.cpp)
JTEST_OBJECTS := $(patsubst src/%.cpp, $(BUILD_DIR)/%.o, $(JTEST_SOURCES))
#$(patsubst src/%.cpp, $(BUILD_DIR)/%.o, $(JTEST_SOURCES))
.Phony: clean all $(BUILD_DIR)/test.txt
.Phony: clean all run
all: $(BUILD_DIR)/test.txt $(BUILD_DIR)/examples/example
@echo $(BUILD_DIR)
all: $(BUILD_DIR)/examples/example
clean:
rm -rf $(BUILD_DIR)
mkdir -p $(BUILD_DIR)/examples
@echo CC=$(CC)
@echo CCFLAGS=$(CCFLAGS)
@echo LD=$(LD)
@echo LDFLAGS=$(LDFLAGS)
mkdir -p $(BUILD_DIR)/JTest
# @echo JTEST_HEADERS = $(JTEST_HEADERS)
# @echo JTEST_SOURCES = $(JTEST_SOURCES)
# @echo JTEST_OBJECTS = $(JTEST_OBJECTS)
$(BUILD_DIR)/test.txt:
@echo $(BUILD_DIR)/test.txt
run: $(BUILD_DIR)/examples/example
$(BUILD_DIR)/examples/example
$(BUILD_DIR)/examples/example: $(BUILD_DIR)/examples/example.o $(BUILD_DIR)/examples/JTest.o
$(BUILD_DIR)/examples/example: $(BUILD_DIR)/examples/example.o $(JTEST_OBJECTS)
$(LD) $(LDFLAGS) -o $@ $^
$(BUILD_DIR)/examples/example.o: examples/example.cpp examples/ClassToTest.h examples/JTest.h
$(BUILD_DIR)/examples/%.o: examples/%.cpp examples/ClassToTest.h $(JTEST_HEADERS)
$(CC) $(CCFLAGS) -c -o $@ $<
$(BUILD_DIR)/examples/JTest.o: examples/JTest.cpp examples/JTest.h
$(BUILD_DIR)/examples/JTest.o: examples/JTest.cpp examples/JTest.h $(JTEST_HEADERS)
$(CC) $(CCFLAGS) -c -o $@ $<
$(BUILD_DIR)/JTest/%.o: src/JTest/%.cpp $(JTEST_HEADERS)
$(CC) $(CCFLAGS) -c -o $@ $<