-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathmakefile
37 lines (26 loc) · 876 Bytes
/
makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# Compiler options
FC := gfortran
BINDIR := bin
VPATH := src
FFLAGS := -O3 -g -static -static-libgcc -static-libgfortran -Wall -Warray-bounds -ffree-form -ffixed-line-length-none -fbounds-check -J$(BINDIR) #-I$(BINDIR)
# Information about this run
INFILE := input.in
# All modules
OBJS := $(BINDIR)/parameters.o $(BINDIR)/fparser.o $(BINDIR)/io.o $(BINDIR)/random.o $(BINDIR)/physics.o $(BINDIR)/interpolation.o $(BINDIR)/eedf.o $(BINDIR)/ratecoeffs.o $(BINDIR)/single_particle.o $(BINDIR)/populations.o
# Default rule
all: runner | $(BINDIR)
# Set some make specials
.SUFFIXES:
.SUFFIXES: .f .o .mod
.PHONY: setid getid
# Build rules
$(BINDIR)/%.o: $(VPATH)/%.f | $(BINDIR)
$(FC) $(FFLAGS) -c $^ -o $@
$(BINDIR)/%.mod:
runner: $(OBJS)
$(BINDIR):
@mkdir $(BINDIR)
clean:
@echo -n "Cleaning..."
@rm -rf $(BINDIR) *.mod runner* *.dat
@echo "done!"