Finally have something useful.
This commit is contained in:
33
Makefile
33
Makefile
@@ -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 $@ $<
|
||||
|
||||
Reference in New Issue
Block a user