-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmakefile
31 lines (24 loc) · 836 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
SYS = Linux
UNAME := $(shell uname)
ifeq ($(UNAME), Darwin)
OSARGS = -DSKIP_GETLINE
else ifeq ($(UNAME), Linux)
OSARGS = -DSKIP_GETLINE
else
OSARGS =
endif
CC = mpic++
DEBUG = -g
OWD = ~/projects/openworld
ODS = ~/projects/opendims
CFLAGS = -std=c++11 -Wall -c $(DEBUG) -I $(OWD) -I $(ODS) $(OSARGS)
LFLAGS = -Wall $(DEBUG)
OBJS_MAIN = $(OWD)/geotiff/tiffIO.o $(OWD)/geotiff/commonLib.o $(OWD)/datastr/GeographicMap.o $(OWD)/memory/Transients.o $(ODS)/dims/Dims.o $(ODS)/dims/Dimensions.o $(ODS)/dims/Dimensionless.o $(ODS)/measure/Units.o $(ODS)/measure/Inds.o $(ODS)/dims/GlobalDimensions.o
all: $(OBJS_MAIN) basinmask.o
$(CC) $(LFLAGS) basinmask.o $(OBJS_MAIN) -o basinmask
#Inference rule - states a general rule for compiling .o files
%.o : %.cpp
$(CC) $(CFLAGS) -c $< -o $@
clean:
\rm $(OBJS_MAIN)
\rm *.o basinmask