Some comments. minor changes and a Makefile
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
#
|
||||
# Snel makefile
|
||||
#
|
||||
# Author: Christos Choutouridis AEM:8997
|
||||
# email: cchoutou@ece.auth.gr
|
||||
#
|
||||
|
||||
CXX := -c++
|
||||
CXXFLAGS := -std=c++14 -Wall -Wextra -Werror
|
||||
LDFLAGS := -lstdc++
|
||||
BUILD := ./bin
|
||||
OBJ_DIR := $(BUILD)/obj
|
||||
APP_DIR := $(BUILD)
|
||||
TARGET := snel
|
||||
SRC := $(wildcard src/*.cpp)
|
||||
|
||||
OBJECTS := $(SRC:%.cpp=$(OBJ_DIR)/%.o)
|
||||
|
||||
$(OBJ_DIR)/%.o: %.cpp
|
||||
@mkdir -p $(@D)
|
||||
$(CXX) $(CXXFLAGS) -o $@ -c $<
|
||||
|
||||
$(APP_DIR)/$(TARGET): $(OBJECTS)
|
||||
@mkdir -p $(@D)
|
||||
$(CXX) $(CXXFLAGS) $(LDFLAGS) -o $(APP_DIR)/$(TARGET) $(OBJECTS)
|
||||
|
||||
# === Rules ===
|
||||
snel: build $(APP_DIR)/$(TARGET)
|
||||
|
||||
build:
|
||||
@mkdir -p $(APP_DIR)
|
||||
@mkdir -p $(OBJ_DIR)
|
||||
|
||||
debug: CXXFLAGS += -DDEBUG -g3
|
||||
debug: snel
|
||||
|
||||
release: CXXFLAGS += -O2
|
||||
release: snel
|
||||
|
||||
all: release
|
||||
|
||||
clean:
|
||||
-@rm -rvf $(OBJ_DIR)/*
|
||||
-@rm -rvf $(APP_DIR)/*
|
||||
|
||||
.PHONY: snel build debug release all clean
|
||||
|
||||
|
||||
Reference in New Issue
Block a user