43 lines
556 B
Makefile
43 lines
556 B
Makefile
# Compiler
|
|
FC = gfortran
|
|
|
|
# Build type (default: Release)
|
|
BUILD ?= release
|
|
|
|
# Flags depending on build type
|
|
ifeq ($(BUILD),debug)
|
|
FFLAGS = -g -O0
|
|
else
|
|
FFLAGS = -O2
|
|
endif
|
|
|
|
# Output folder
|
|
OUT = bin
|
|
|
|
# Target executable
|
|
TARGET = event2
|
|
|
|
# Source files
|
|
SRCS = event2_03.f gbook.f
|
|
|
|
# Executable path
|
|
EXE = $(OUT)/$(TARGET)
|
|
|
|
# Default rule
|
|
all: $(EXE)
|
|
|
|
# Build rule
|
|
$(EXE): $(SRCS)
|
|
mkdir -p $(OUT)
|
|
$(FC) $(FFLAGS) -o $(EXE) $(SRCS)
|
|
|
|
# Convenience targets
|
|
debug:
|
|
$(MAKE) BUILD=debug
|
|
|
|
release:
|
|
$(MAKE) BUILD=release
|
|
|
|
# Clean rule
|
|
clean:
|
|
rm -rf $(OUT)
|