-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
33 lines (29 loc) · 809 Bytes
/
Copy pathMakefile
File metadata and controls
33 lines (29 loc) · 809 Bytes
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
# Makefile for pnicorr
# edit Make.user to specify your BLAS_{C,LD}FLAGS
include Make.user
CC ?= cc
MPICC ?= mpicc
DBGFLAGS ?= -DDEBUG -O0 -g
OPTFLAGS ?= -O3
CFLAGS ?= -Wall -Wextra $(OPTFLAGS) -std=c11 $(BLAS_CFLAGS)
LDFLAGS ?= $(BLAS_LDFLAGS) -lz
PROG ?= pnicorr
MPIPROG ?= pnicorr_mpi
MPISRC= pnicorr.c
OTHSRC = pnicorr_io.c pnicorr_debug.c opts2struct/opts2struct.c
SOURCES = $(MPISRC) $(OTHSRC)
OBJECTS = $(SOURCES:.c=.o)
MPIOBJ = $(MPIPROG).o
OTHOBJ = $(OTHSRC:.c=.o)
all: $(SOURCES) $(PROG)
clean:
rm -f $(OBJECTS) $(MPIOBJ) $(PROG) $(MPIPROG) *~
$(PROG): $(OBJECTS)
$(CC) $(OBJECTS) $(LDFLAGS) -o $@
%.o: %.c
$(CC) -c $(CFLAGS) $< -o $@
$(MPIOBJ): $(MPISRC)
$(MPICC) -c $(CFLAGS) -DHAVE_MPI $< -o $@
$(MPIPROG): $(MPIOBJ) $(OTHOBJ)
$(MPICC) $(MPIOBJ) $(OTHOBJ) $(LDFLAGS) -o $@
.PHONY: clean