1
1
Ralph Castain 1e2019ce2a Revert "Update to sync with OMPI master and cleanup to build"
This reverts commit cb55c88a8b7817d5891ff06a447ea190b0e77479.
2016-11-22 15:03:20 -08:00

106 строки
3.2 KiB
Makefile

CC = @CC@
AR = @AR@
LIBNAME = @LIBNAME@
RANLIB = @RANLIB@
srcdir = @srcdir@
CC_SHL = @CC_SHL@
SHLIBNAME = @SHLIBNAME@
INCLUDE_DIR = -I@MPI_INCLUDE_DIR@ -I../../include -I${srcdir}/../../mpi-io -I${srcdir}/../../adio/include -I../../adio/include
CFLAGS = -DHAVE_MPI_INFO_SRC @CFLAGS@ $(MPIOPROFILE) $(INCLUDE_DIR)
top_builddir = @master_topbuild_dir@
LIBTOOL = @LIBTOOL@
C_COMPILE_SHL = $(CC_SHL)
@VPATH@
MPIO_OBJECTS = info_create.o info_dup.o info_get.o info_getnth.o \
info_set.o info_delete.o info_free.o info_getnks.o info_getvln.o \
info_c2f.o info_f2c.o
MPIO_TMP_POBJECTS = info_create.p info_dup.p info_get.p info_getnth.p \
info_set.p info_delete.p info_free.p info_getnks.p info_getvln.p \
info_c2f.p info_f2c.p
MPIO_REAL_POBJECTS = _info_create.o _info_dup.o _info_get.o _info_getnth.o \
_info_set.o _info_delete.o _info_free.o _info_getnks.o _info_getvln.o \
_info_c2f.o _info_f2c.o
all: $(LIBNAME)
@if [ "@ENABLE_SHLIB@" != "none" ] ; then \
$(MAKE) $(SHLIBNAME).la ;\
fi
.SUFFIXES: $(SUFFIXES) .p .sp .lo
.c.o:
$(CC) $(CFLAGS) -c $<
.c.lo:
$(C_COMPILE_SHL) $(CFLAGS) -c $< -o _s$*.o
@mv -f _s$*.o $*.lo
.c.p:
@cp $(srcdir)/$*.c _$*.c
$(CC) $(CFLAGS) -c _$*.c
@rm -f _$*.c
.c.sp:
$(C_COMPILE_SHL) $(CFLAGS) -c $< -o _$*.lo
profile: $(MPIO_REAL_POBJECTS)
$(AR) $(LIBNAME) $(MPIO_REAL_POBJECTS)
$(RANLIB) $(LIBNAME)
@if [ "@ENABLE_SHLIB@" != "none" ] ; then \
$(MAKE) P$(SHLIBNAME).la ;\
fi
@rm -f _*.o
$(LIBNAME): $(MPIO_OBJECTS)
$(AR) $(LIBNAME) $(MPIO_OBJECTS)
$(RANLIB) $(LIBNAME)
MPIO_LOOBJECTS = $(MPIO_OBJECTS:.o=.lo)
$(SHLIBNAME).la: $(MPIO_LOOBJECTS)
$(AR) $(SHLIBNAME).la $(MPIO_LOOBJECTS)
# --------------------------------------------------------------------------
# We use P$(SHLBNAME) simply to distinguish the regular lib build from the
# profiling library build
MPIO_LOPOBJECTS = $(MPIO_REAL_POBJECTS:.o=.lo)
MPIO_TMP_LOPOBJECTS = ${MPIO_TMP_POBJECTS:.p=.sp}
P$(SHLIBNAME).la: $(MPIO_TMP_LOPOBJECTS)
$(AR) $(SHLIBNAME).la $(MPIO_LOPOBJECTS)
# --------------------------------------------------------------------------
clean:
@rm -f *.o *.lo *.gcno *.gcda *.bb *.bbg
@rm -f ${srcdir}/*.gcno ${srcdir}/*.gcda
@rm -f ${srcdir}/*.bb ${srcdir}/*.bbg
# Rules for the profiling objects
info_create.o: infocreate.c
$(CC) $(CFLAGS) -c $(srcdir)/infocreate.c -o _info_create.o
info_dup.o: infodup.c
$(CC) $(CFLAGS) -c $(srcdir)/infodup.c -o _info_dup.o
info_get.o: infoget.c
$(CC) $(CFLAGS) -c $(srcdir)/infoget.c -o _info_get.o
info_getnth.o: infogetnth.c
$(CC) $(CFLAGS) -c $(srcdir)/infogetnth.c -o _info_getnth.o
info_set.o: infoset.c
$(CC) $(CFLAGS) -c $(srcdir)/infoset.c -o _info_set.o
info_delete.o: infodelete.c
$(CC) $(CFLAGS) -c $(srcdir)/infodelete.c -o _info_delete.o
info_free.o: infofree.c
$(CC) $(CFLAGS) -c $(srcdir)/infofree.c -o _info_free.o
info_getnks.o: infogetnks.c
$(CC) $(CFLAGS) -c $(srcdir)/infogetnks.c -o _info_getnks.o
info_getvln.o: infogetvln.c
$(CC) $(CFLAGS) -c $(srcdir)/infogetvln.c -o _info_getvln.o
info_c2f.o: infoc2f.c
$(CC) $(CFLAGS) -c $(srcdir)/infoc2f.c -o _info_c2f.o
info_f2c.o: infof2c.c
$(CC) $(CFLAGS) -c $(srcdir)/infof2c.c -o _info_f2c.o