erste-codebase/Makefile

42 lines
746 B
Makefile

# Makefile for Kaiser Operating System (KOS)
# For compiling code from when you were 15
# Compiler
CXX = g++
# Compiler flags
CXXFLAGS = -Wall -Wextra -std=c++11 -Ifiles
# Executables
CALCULATOR = $(BIN)/calculator
KOS = $(BIN)/kos
# Source files
CALCULATOR_SRC = files/calculator.cxx
KOS_SRC = files/KOS.cpp
# Header files
HEADERS = files/calculator.h files/KOSFunctions.h files/KOSVariables.h
BIN = ./bin
# Default target
all: $(CALCULATOR) $(KOS)
$(BIN):
mkdir -p $(BIN)
# Calculator executable
$(CALCULATOR): $(CALCULATOR_SRC) $(HEADERS) $(BIN)
$(CXX) $(CXXFLAGS) -o $@ $<
# KOS executable
$(KOS): $(KOS_SRC) $(HEADERS)
$(CXX) $(CXXFLAGS) -o $@ $<
# Clean up
clean:
rm -f $(CALCULATOR) $(KOS)
rm -rf $(BIN)
.PHONY: all clean