Files
V2TMUMemTester/UnitTest/Sim/Makefile
2026-03-07 15:10:59 +01:00

44 lines
897 B
Makefile

# Sim Unit Test Makefile
CC := g++
CFLAGS := -Wall -Wextra -std=gnu++17 -I/usr/local/include -g3 -ggdb
LDFLAGS := -L/usr/local/lib -lm -lsystemc -lstdc++
# Directories
SRC_DIR := .
BUILD_DIR := build
BIN_DIR := bin
# Source and object files
SOURCES := $(wildcard $(SRC_DIR)/*.cpp)
OBJECTS := $(SOURCES:$(SRC_DIR)/%.cpp=$(BUILD_DIR)/%.o)
TARGET := $(BIN_DIR)/sim_test
# Default target
all: $(TARGET)
# Create directories
$(BUILD_DIR) $(BIN_DIR):
mkdir -p $@
# Link executable
$(TARGET): $(OBJECTS) | $(BIN_DIR)
$(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS)
# Compile objects
$(BUILD_DIR)/%.o: $(SRC_DIR)/%.cpp | $(BUILD_DIR)
$(CC) $(CFLAGS) -c -o $@ $<
# Run tests
run: $(TARGET)
./$(TARGET)
# Clean build artifacts
clean:
rm -rf $(BUILD_DIR) $(BIN_DIR)
# Phony targets
.PHONY: all run clean
test_EDORam.exe: $(BUILD_DIR)/test_EDORam.o
$(CC) $(CFLAGS) -o $(BIN_DIR)/test_EDORam $^ $(LDFLAGS)