-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmakefile
33 lines (22 loc) · 872 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
HOME_DIR := /home/base/Homework/Fortran-Engine
MOD := $(HOME_DIR)/debug/mod
OUT := $(HOME_DIR)/debug/out
DEBUG := $(HOME_DIR)/debug
LIB := $(HOME_DIR)/lib
DEMO := $(HOME_DIR)/demo
all: lib demo
gfortran -g ./main.F90 $(OUT)/*.o -o $(DEBUG)/out.a -lncurses -J$(MOD) -I$(MOD)
lib: curses_init $(LIB)/*.F90
cd $(OUT) && gfortran -c -g $(LIB)/*.F90 -J$(MOD) -I$(MOD)
curses_init: $(LIB)/curses_init.c
cd $(OUT) && gcc -c -g $(LIB)/curses_init.c
demo: $(DEMO)/*.F90 snake tanks dungeon
cd $(OUT) && gfortran -c -g $(DEMO)/*.F90 -J$(MOD) -I$(MOD)
snake: $(DEMO)/snake/*.F90
cd $(OUT) && gfortran -c -g $(DEMO)/snake/*.F90 -J$(MOD) -I$(MOD)
tanks: $(DEMO)/tanks/*.F90
cd $(OUT) && gfortran -c -g $(DEMO)/tanks/*.F90 -J$(MOD) -I$(MOD)
dungeon: $(DEMO)/dungeon/*.F90
cd $(OUT) && gfortran -c -g $(DEMO)/dungeon/*.F90 -J$(MOD) -I$(MOD)
clean:
cd $(OUT) && rm *.o