Changed project back to C++

This commit is contained in:
Piotr Krygier committed 2022-10-05 15:51:19 +02:00
1 parent ce0c399810
commit e7b9d4a32f
15 files changed
+1181 -412

No files matched your search

+34 -9
View File
@@ -1,20 +1,45 @@
CC := /usr/bin/g++
INCLUDE_DIR := -I./include -I./third_party/vma/include
CFLAGS := -g -Werror -Wall -std=c++17 $(INCLUDE_DIR)
LFLAGS := -lglfw -lvulkan
CFLAGS := -g -Wall -Werror -std=c++20 $(INCLUDE_DIR) $(LFLAGS)
SRC_DIR := src
BUILD_DIR := ./build
TARGET := RedScarfEngine
SOURCES := main.cpp \
vulkanBase.cpp \
window.cpp
window.cpp \
logger.cpp \
OBJECTS := $(SOURCES:.cpp=.o)
OBJECTS := $(SOURCES:%=$(BUILD_DIR)/%)
OBJECTS := $(OBJECTS:cpp=o)
all: $(BUILD_DIR)/$(OBJECTS)
$(CC) $(CFLAGS) -o $(BUILD_DIR)/$(TARGET) $(BUILD_DIR)/$(OBJECTS)
SHADERS_DIR := ./shaders
$(BUILD_DIR)/main.o: $(SRC_DIR)/main.cpp $(BUILD_DIR)/vulkanBase.o
$(CC) $(CFLAGS) -c $(SRC_DIR)/main.cpp
SHADER_OBJECTS := vertex.spv \
fragments.spv \
$(BUILD_DIR)/vulkanBase.o: $(SRC_DIR)/vulkanBase.cpp
$(CC) $(CFLAGS) -c $(SRC_DIR)/vulkanBase.cpp
all: prepare_dirs $(OBJECTS) $(SHADER_OBJECTS)
$(CC) $(CFLAGS) -o $(BUILD_DIR)/$(TARGET) $(OBJECTS)
# Build shader files
vertex.spv: $(SHADERS_DIR)/shader.vert
glslc $^ -o $(BUILD_DIR)/$@
fragments.spv: $(SHADERS_DIR)/shader.frag
glslc $^ -o $(BUILD_DIR)/$@
$(BUILD_DIR)/%.spv:
echo $(basename $^)
glslc $^ -o $@
# Generic build command
$(BUILD_DIR)/%.o: $(SRC_DIR)/%.cpp
$(CC) $(CFLAGS) -c $^ -o $@
.PHONY: prepare_dirs
prepare_dirs:
mkdir -p ./build
.PHONY: clean
clean:
rm -rf ./build