2D_Engine_C/Makefile

52 lines
808 B
Makefile

SHELL = /usr/bin/env bash
# Build folder
BUILD_DIR = build
# Source output target name
SOURCE_OUTPUT = $(BUILD_DIR)/2D_Engine
# Core output target name
CORE_OUTPUT = $(BUILD_DIR)/libcore.a
# Assets output
ASSET_OUTPUT = $(BUILD_DIR)/game.data
# Verbosity
Q := @
ifeq ($(VERBOSE), 1)
Q :=
endif
# Colors
GREEN := \033[32m
YELLOW := \033[33m
RESET := \033[m
# Default targets
all: build_core build_src build_assets
# Sub Makefiles
SOURCE_DIR = src
CORE_DIR = SDL3_Core/src
ASSETS_DIR = assets
include $(CORE_DIR)/Makefile
include $(SOURCE_DIR)/Makefile
include $(ASSETS_DIR)/Makefile
# Clean
.PHONY: clean
clean:
$(Q)rm -rf $(BUILD_DIR)
@echo "Build dir cleaned"
# Run executable
.PHONY: run
run: all
$(Q)cd $(BUILD_DIR) && ./$(notdir $(SOURCE_OUTPUT))
.PHONY: print-%
print-% :
@echo $($*)