
srcdir = .


include ../../macros.make

INCDIR          = $(srcdir)/../../src/lib
LIBDIR          = ../../src/lib

INCLUDES        = -I$(INCDIR) -I../../src/lib

CC              = /usr/lib/openmpi/bin/mpicc
CFLAGS          = -pipe -Wall -g -O2 -march=i586 -mtune=generic -fPIC -DPIC -DNDEBUG -Df2cFortran -O2 -Wall -Wstrict-prototypes -Wmissing-prototypes -Wundef -Wpointer-arith -Wbad-function-cast $(INCLUDES)
FC              = /usr/lib/openmpi/bin/mpif77
FFLAGS          = -pipe -Wall -g -O2 -march=i586 -mtune=generic -fPIC -DPIC -DNDEBUG -Df2cFortran $(INCLUDES) -I../../src/libf

LDFLAGS         = -L$(LIBDIR) 
LIBS            = -lpnetcdf 

C_SRCS = pnetcdf-write-from-master.c pnetcdf-read-from-master.c \
	 pnetcdf-write-nfiles.c pnetcdf-read-nfiles.c \
	 pnetcdf-write-standard.c pnetcdf-read-standard.c \
	 pnetcdf-write-flexible.c pnetcdf-read-flexible.c \
	 pnetcdf-write-nb.c pnetcdf-read-nb.c \
         pnetcdf-write-buffered.c

F_SRCS = pnetcdf-write-bufferedf.F

C_OBJS = $(C_SRCS:.c=.o)
F_OBJS = $(F_SRCS:.F=.o)
C_PROG = $(C_SRCS:.c=)
F_PROG = $(F_SRCS:.F=)

ifeq (yes, yes)
OBJS   = $(C_OBJS) $(F_OBJS)
PROGS  = $(C_PROG) $(F_PROG)
else
OBJS   = $(C_OBJS)
PROGS  = $(C_PROG)
endif

GARBAGE      = $(PROGS)

PACKING_LIST =  $(C_SRCS) $(F_SRCS) \
                    Makefile.in

.c.o:
	$(CC) $(CFLAGS) -c $<
.F.o:
	$(FC) $(FFLAGS) -c $<

all: $(PROGS)

install:

uninstall:

pnetcdf-write-from-master: pnetcdf-write-from-master.o
	$(LINK.c) $< -o $@ $(LDFLAGS) $(ld_pnetcdf) $(LIBS)

pnetcdf-read-from-master: pnetcdf-read-from-master.o
	$(LINK.c) $< -o $@ $(LDFLAGS) $(ld_pnetcdf) $(LIBS)

pnetcdf-write-nfiles: pnetcdf-write-nfiles.o
	$(LINK.c) $< -o $@ $(LDFLAGS) $(ld_pnetcdf) $(LIBS)

pnetcdf-read-nfiles: pnetcdf-read-nfiles.o
	$(LINK.c) $< -o $@ $(LDFLAGS) $(ld_pnetcdf) $(LIBS)

pnetcdf-write-standard: pnetcdf-write-standard.o
	$(LINK.c) $< -o $@ $(LDFLAGS) $(ld_pnetcdf) $(LIBS)

pnetcdf-read-standard: pnetcdf-read-standard.o
	$(LINK.c) $< -o $@ $(LDFLAGS) $(ld_pnetcdf) $(LIBS)

pnetcdf-write-flexible: pnetcdf-write-flexible.o
	$(LINK.c) $< -o $@ $(LDFLAGS) $(ld_pnetcdf) $(LIBS)

pnetcdf-read-flexible: pnetcdf-read-flexible.o
	$(LINK.c) $< -o $@ $(LDFLAGS) $(ld_pnetcdf) $(LIBS)

pnetcdf-write-nb: pnetcdf-write-nb.o
	$(LINK.c) $< -o $@ $(LDFLAGS) $(ld_pnetcdf) $(LIBS)

pnetcdf-read-nb: pnetcdf-read-nb.o
	$(LINK.c) $< -o $@ $(LDFLAGS) $(ld_pnetcdf) $(LIBS)

pnetcdf-write-buffered: pnetcdf-write-buffered.o
	$(LINK.c) $< -o $@ $(LDFLAGS) $(ld_pnetcdf) $(LIBS)

pnetcdf-write-bufferedf: pnetcdf-write-bufferedf.o
	$(LINK.F) $< -o $@ $(LDFLAGS) $(ld_pnetcdf) $(LIBS)

clean:
	$(RM) -f *.o $(PROGS) *.nc *.gcno *.gcda gmon.out

distclean: clean
	$(RM) -f Makefile



