
##### User configurable options #####

MAKE          = make --no-print-directory

MPI_CC        = /proj/tpfimos/larour/Libraries/linux/mpich2-1.0.2p1/bin/mpicc
MPI_CLINKER   = $(MPI_CC)

DEBUG_LIBS    = 
MPI_INC       = 
MPI_LIBS      = 
CFLAGS        = 
MPE_INCDIR    = /proj/tpfimos/larour/Libraries/linux/mpich2-1.0.2p1/src/mpe2/include
MPE_LIBDIR    = /proj/tpfimos/larour/Libraries/linux/mpich2-1.0.2p1/src/mpe2/lib
COLLCHK_LIBS  = -L$(MPE_LIBDIR) -lmpe_collchk $(MPI_LIBS)

C_INCS        = -I$(MPE_INCDIR) $(MPI_INC)
RM            = rm

#### End User configurable options ###

srcdir        = /proj/tpfimos/larour/Libraries/linux/mpich2-1.0.2p1/src/mpe2/src/collchk/test

CC_FLAGS      = $(CFLAGS) $(C_INCS) $(MPE_COPTS)
CC_LDFLAGS    = $(LDFLAGS) $(CFLAGS) $(MPE_LDOPTS)

VPATH=.:$(srcdir)

.SUFFIXES: .c .o 

SRC           = wrong_composite.c wrong_scatterv.c \
                wrong_int_byte.c wrong_root.c \
                composite.c scatterv.c \
                time_bcast.c time_allreduce.c \
                time_alltoallv.c time_alltoallv0.c
OBJS          = $(SRC:.c=.o)
EXECS         = $(OBJS:.o=)

OPT_EXECS     = time_bcast_nochk time_allreduce_nochk \
                time_alltoallv0_nochk time_alltoallv_nochk

.c.o:
	$(MPI_CC) $(CC_FLAGS) -c $<

.o:
	$(MPI_CLINKER) $(CC_LDFLAGS) -o $@ $< $(COLLCHK_LIBS)

default: $(OBJS) $(EXECS) $(OPT_EXECS)

clean:
	@-$(RM) -f $(EXECS) $(OPT_EXECS) $(OBJS) *.o

time_bcast_nochk: time_bcast.o
	$(MPI_CLINKER) $(CC_LDFLAGS) -o $@ $?

time_allreduce_nochk: time_allreduce.o
	$(MPI_CLINKER) $(CC_LDFLAGS) -o $@ $?

time_alltoallv_nochk: time_alltoallv.o
	$(MPI_CLINKER) $(CC_LDFLAGS) -o $@ $?

time_alltoallv0_nochk: time_alltoallv0.o
	$(MPI_CLINKER) $(CC_LDFLAGS) -o $@ $?

distclean: clean
	@-$(RM) -f Makefile
