1999-07-20 03:56:57 +08:00
|
|
|
## HDF5 Library Makefile(.in)
|
|
|
|
##
|
2003-04-01 01:44:34 +08:00
|
|
|
##
|
|
|
|
## Copyright by the Board of Trustees of the University of Illinois.
|
|
|
|
## All rights reserved.
|
|
|
|
##
|
|
|
|
## This file is part of HDF5. The full HDF5 copyright notice, including
|
|
|
|
## terms governing use, modification, and redistribution, is contained in
|
|
|
|
## the files COPYING and Copyright.html. COPYING can be found at the root
|
|
|
|
## of the source code distribution tree; Copyright.html can be found at the
|
|
|
|
## root level of an installed copy of the electronic HDF5 document set and
|
|
|
|
## is linked from the top-level documents page. It can also be found at
|
|
|
|
## http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have
|
|
|
|
## access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu.
|
|
|
|
##
|
1999-07-08 04:19:44 +08:00
|
|
|
top_srcdir=@top_srcdir@
|
|
|
|
top_builddir=..
|
|
|
|
srcdir=@srcdir@
|
2002-03-08 04:26:10 +08:00
|
|
|
|
1998-10-27 04:07:31 +08:00
|
|
|
@COMMENCE@
|
2002-03-08 04:26:10 +08:00
|
|
|
|
|
|
|
TRACE=$(PERL) $(top_srcdir)/bin/trace
|
2001-07-05 23:07:00 +08:00
|
|
|
.SUFFIXES: .c .o .lo .x
|
2002-03-08 04:26:10 +08:00
|
|
|
|
1998-11-04 03:49:28 +08:00
|
|
|
###############################################################################
|
1999-07-20 03:56:57 +08:00
|
|
|
## MODIFICATONS FOR CREATING THE PABLO INSTRUMENTED LIBRARY libhdf5-inst.a
|
|
|
|
## For Pablo instrumenation of parallel code, remove the # from in front of
|
|
|
|
## PABLO_MPIO_FLAGS.
|
1998-11-04 03:49:28 +08:00
|
|
|
###############################################################################
|
2002-03-08 04:26:10 +08:00
|
|
|
PARALLEL_PABLO=@PARALLEL_PABLO@
|
2002-03-08 07:54:01 +08:00
|
|
|
|
2002-03-08 04:26:10 +08:00
|
|
|
PABLO_MPIO_FLAGS=${PARALLEL_PABLO:yes=-DH5_HAVE_PARALLEL -DH5_HAVE_MPIOTRACE}
|
2002-03-08 07:54:01 +08:00
|
|
|
PABLO_INC=-I$(top_srcdir)/src -I$(top_srcdir)/pablo -I$(top_builddir)/src -I.
|
|
|
|
PABLO_DEFS=-DH5_HAVE_PABLO -DH5_DEBUG_API -DNDEBUG -D$(PABLO_BLD)_BUILD
|
|
|
|
|
|
|
|
PABLO_FLAGS=$(PABLO_DEFS) $(PABLO_MPIO_FLAGS) $(PABLO_INC)
|
2002-03-08 04:26:10 +08:00
|
|
|
|
2002-03-08 07:54:01 +08:00
|
|
|
CPPFLAGS=$(PABLO_FLAGS) @CPPFLAGS@
|
1998-10-27 04:07:31 +08:00
|
|
|
|
1999-07-20 03:56:57 +08:00
|
|
|
## This is our main target:
|
1998-10-27 04:07:31 +08:00
|
|
|
LIB=libhdf5-inst.a
|
|
|
|
|
2002-03-08 04:26:10 +08:00
|
|
|
SRCDIRS=./. ../src/.
|
|
|
|
|
2000-10-06 01:02:52 +08:00
|
|
|
# Took out the GNU'isms for the SRCFILES and LIB_SRC variables.
|
2002-03-08 04:26:10 +08:00
|
|
|
#
|
|
|
|
# This may cause problems in two ways: any changes to the SRCDIRS
|
|
|
|
# variable should be make to the SRCFILES macro also and the LIB_SRC
|
|
|
|
# variable now has directory paths included in it (which may cause
|
|
|
|
# problems somewhere). - QAK
|
|
|
|
#
|
|
|
|
LIB_SRC=H5.c H5FDmulti.c H5HG.c H5Oname.c H5T.c H5A.c H5FDsec2.c H5HL.c \
|
|
|
|
H5Onull.c H5TB.c H5AC.c H5FDsrb.c H5I.c H5Osdspace.c H5TS.c \
|
|
|
|
H5B.c H5FDstdio.c H5MF.c H5Oshared.c H5Tbit.c H5D.c H5FDstream.c \
|
|
|
|
H5MM.c H5Ostab.c H5Tconv.c H5E.c H5FL.c H5O.c H5P.c H5Tinit.c \
|
|
|
|
H5F.c H5Farray.c H5Oattr.c H5R.c H5Tvlen.c H5FD.c H5Fcontig.c \
|
|
|
|
H5Ocomp.c H5S.c H5V.c H5FDcore.c H5Fistore.c H5Ocont.c H5Sall.c \
|
2002-03-08 08:09:05 +08:00
|
|
|
H5Z.c H5Fseq.c H5Odtype.c H5Shyper.c H5Zdeflate.c H5FDfamily.c \
|
|
|
|
H5G.c H5Oefl.c H5Smpio.c H5detect.c H5FDgass.c H5Gent.c \
|
|
|
|
H5Ofill.c H5Snone.c H5FDlog.c H5Gnode.c H5Olayout.c H5Spoint.c \
|
|
|
|
H5FDmpio.c H5Gstab.c H5Omtime.c H5Sselect.c
|
2002-03-08 04:26:10 +08:00
|
|
|
|
|
|
|
PABLO_OBJ=PabloHDF.o PabloHDF_RT.o PabloHDF_SDDF.o PabloHDF_MPIO.o
|
|
|
|
|
|
|
|
LIB_XOBJ=$(LIB_SRC:.c=.x)
|
|
|
|
LIB_COBJ=$(LIB_XOBJ:.x=.o)
|
|
|
|
LIB_OBJ=$(PABLO_OBJ) $(LIB_COBJ)
|
1998-10-27 04:07:31 +08:00
|
|
|
|
2001-07-05 23:07:00 +08:00
|
|
|
.c.x:
|
2002-04-11 00:33:23 +08:00
|
|
|
if test "$*" != "H5Tinit"; then \
|
|
|
|
$(CC) $(CFLAGS) $(CPPFLAGS) -c $(top_srcdir)/src/$*.c -o $*.o; \
|
|
|
|
else \
|
|
|
|
$(CC) $(CFLAGS) $(CPPFLAGS) -c $(top_builddir)/src/$*.c -o $*.o; \
|
|
|
|
fi;
|
2001-07-05 23:07:00 +08:00
|
|
|
cp $*.o $@
|
1998-10-27 04:07:31 +08:00
|
|
|
|
2000-10-06 01:02:52 +08:00
|
|
|
# 'vpath' directive is only supported in gmake, take out - QAK
|
|
|
|
#vpath %.c $(shell echo $(SRCDIRS) | sed 's/ /:/g')
|
1998-10-27 04:07:31 +08:00
|
|
|
|
1999-07-20 03:56:57 +08:00
|
|
|
## Pablo header files (to be installed)...
|
2002-03-08 04:26:10 +08:00
|
|
|
PABLO_HDR=HDFentryNames.h HDFidList.h ProcIDs.h HDFTrace.h ProcTrace.h \
|
|
|
|
ProcTrace.inc
|
1999-04-15 05:17:56 +08:00
|
|
|
|
1999-07-20 03:56:57 +08:00
|
|
|
##------------------------------------------------------------ -*- makefile -*-
|
|
|
|
## The following section of this makefile comes from the
|
|
|
|
## `./config/conclude' file which was generated with config.status
|
|
|
|
## from `./config/conclude.in'.
|
|
|
|
##-----------------------------------------------------------------------------
|
1998-10-27 04:07:31 +08:00
|
|
|
|
1999-07-20 03:56:57 +08:00
|
|
|
## This is the target for the library described in the main body of the
|
|
|
|
## makefile.
|
|
|
|
##
|
1998-10-27 04:07:31 +08:00
|
|
|
lib: $(LIB)
|
2001-07-05 23:07:00 +08:00
|
|
|
$(LIB): $(PABLO_OBJ) $(LIB_XOBJ)
|
|
|
|
$(AR) -rc $@ $(LIB_OBJ)
|
1998-10-27 04:07:31 +08:00
|
|
|
$(RANLIB) $@
|
1999-07-20 03:56:57 +08:00
|
|
|
##
|
|
|
|
## Dummy this out so that there is no redundant make of the library
|
|
|
|
##
|
1998-11-13 23:16:27 +08:00
|
|
|
progs:
|
1998-10-27 04:07:31 +08:00
|
|
|
|
1999-07-20 03:56:57 +08:00
|
|
|
## Build a tags file in this directory.
|
1998-10-27 04:07:31 +08:00
|
|
|
TAGS: $(LIB_SRC)
|
|
|
|
$(RM) $@
|
|
|
|
-etags $(LIB_SRC)
|
|
|
|
|
1999-07-20 03:56:57 +08:00
|
|
|
##
|
|
|
|
## Dummy this out so that there is no redundant make of the library
|
|
|
|
##
|
1998-11-13 23:16:27 +08:00
|
|
|
tests:
|
1998-10-27 04:07:31 +08:00
|
|
|
|
1999-07-20 03:56:57 +08:00
|
|
|
## Install the library, the public header files, and programs.
|
1998-11-13 23:16:27 +08:00
|
|
|
install: $(LIB)
|
1998-10-27 04:07:31 +08:00
|
|
|
@test -d $(libdir) || mkdir $(libdir)
|
2002-03-08 04:26:10 +08:00
|
|
|
@for f in X $(LIB); do \
|
|
|
|
if test $$f != X; then \
|
|
|
|
(set -x; $(INSTALL_DATA) $$f $(libdir)/. || exit 1); \
|
|
|
|
fi; \
|
1998-10-27 04:07:31 +08:00
|
|
|
done
|
1999-04-15 05:17:56 +08:00
|
|
|
@test -d $(includedir) || mkdir $(includedir)
|
2002-03-08 04:26:10 +08:00
|
|
|
@for f in X $(PABLO_HDR); do \
|
|
|
|
if test $$f != X; then \
|
|
|
|
(set -x; $(INSTALL_DATA) $$f $(includedir)/. || exit 1); \
|
|
|
|
fi \
|
1999-04-15 05:17:56 +08:00
|
|
|
done
|
1998-10-27 04:07:31 +08:00
|
|
|
|
1999-07-20 03:56:57 +08:00
|
|
|
## Removes those things that `make install' (would have) installed.
|
1998-10-27 04:07:31 +08:00
|
|
|
uninstall:
|
2002-03-08 04:26:10 +08:00
|
|
|
@if test "X$(LIB)" != X; then \
|
|
|
|
set -x; cd $(libdir) && $(RM) $(LIB); \
|
1998-10-27 04:07:31 +08:00
|
|
|
fi
|
2002-03-08 04:26:10 +08:00
|
|
|
|
1999-07-20 03:56:57 +08:00
|
|
|
## Removes temporary files without removing the final target files. That is,
|
|
|
|
## remove things like object files but not libraries or executables.
|
|
|
|
##
|
1998-10-27 04:07:31 +08:00
|
|
|
mostlyclean:
|
2001-07-05 23:07:00 +08:00
|
|
|
$(RM) $(LIB_OBJ) $(LIB_XOBJ) $(TEST_OBJ) $(PROG_OBJ) $(MOSTLYCLEAN)
|
1998-10-27 04:07:31 +08:00
|
|
|
|
1999-07-20 03:56:57 +08:00
|
|
|
## Like `mostlyclean' except it also removes the final targets: things like
|
|
|
|
## libraries and executables. This target doesn't remove any file that
|
|
|
|
## is part of the HDF5 distribution.
|
|
|
|
##
|
1998-10-27 04:07:31 +08:00
|
|
|
clean: mostlyclean
|
2001-07-05 23:07:00 +08:00
|
|
|
$(RM) $(LIB) $(TESTS) $(PROGS) $(CLEAN) $(PABLO_CLEAN) H*.c
|
1998-10-27 04:07:31 +08:00
|
|
|
|
1999-07-20 03:56:57 +08:00
|
|
|
## Like `clean' except it also removes files that were created by running
|
|
|
|
## configure. If you've unpacked the source and built HDF5 without creating
|
|
|
|
## any other files, then `make distclean' will leave only the files that were
|
|
|
|
## in the distribution.
|
|
|
|
##
|
1998-10-27 04:07:31 +08:00
|
|
|
distclean: clean
|
|
|
|
$(RM) .depend TAGS *~ core *.core *.bak *.old *.new $(DISTCLEAN)
|
2002-03-08 04:26:10 +08:00
|
|
|
@if test -f $(top_srcdir)/src/Makefile.in; then \
|
|
|
|
(set -x; $(RM) Makefile); \
|
1998-10-27 04:07:31 +08:00
|
|
|
fi
|
|
|
|
|
1999-07-20 03:56:57 +08:00
|
|
|
## Like `distclean' except it deletes all files that can be regenerated from
|
|
|
|
## the makefile, including those generated from autoheader and autoconf.
|
|
|
|
##
|
1998-10-27 04:07:31 +08:00
|
|
|
maintainer-clean: distclean
|
|
|
|
$(RM) *~ core core.* *.core *.bak *.contrib gmon.out
|
|
|
|
|
2000-11-08 22:02:07 +08:00
|
|
|
.c.lo:
|
2002-03-08 04:26:10 +08:00
|
|
|
@$(LT_COMPILE) $(CFLAGS) $(CPPFLAGS) -c $(top_srcdir)/src/$*.c $<
|
2000-11-08 22:02:07 +08:00
|
|
|
|
2002-03-09 02:34:25 +08:00
|
|
|
.PHONY: all progs test _test check dep depend
|
1998-10-27 04:07:31 +08:00
|
|
|
|
2002-03-08 04:26:10 +08:00
|
|
|
PABLO_INCLUDES=HDFentryNames.h HDFidList.h ProcIDs.h HDFTrace.h ProcTrace.h \
|
|
|
|
ProcTrace.inc
|
1999-04-15 05:17:56 +08:00
|
|
|
|
2002-03-08 04:26:10 +08:00
|
|
|
PABLO_CLEAN=HDFentryNames.h HDFidList.h ProcMasks.h HDFentries.txt \
|
|
|
|
ProcTrace.inc
|
1999-04-15 05:17:56 +08:00
|
|
|
|
2002-03-08 04:26:10 +08:00
|
|
|
HDFentries.txt: $(top_srcdir)/src/*.c
|
|
|
|
grep "FUNC_ENTER[_INIT ]*(" $(top_srcdir)/src/*.c | \
|
2002-04-23 02:14:00 +08:00
|
|
|
sed "s/.*FUNC_ENTER[_INIT ]*( *//;s/[,)].*//" | sort -u > $@
|
1999-04-15 05:17:56 +08:00
|
|
|
|
|
|
|
HDFentryNames.h: HDFentries.txt
|
|
|
|
sed "s/.*/\"&\",/" $? > $@
|
1998-10-27 04:07:31 +08:00
|
|
|
|
1999-04-15 05:17:56 +08:00
|
|
|
HDFidList.h: HDFentries.txt
|
|
|
|
sed "s/.*/ID_&,/" $? > $@
|
|
|
|
echo ID_ALLHDF, >> $@
|
2002-03-08 04:26:10 +08:00
|
|
|
grep "#define[ ]*PABLO_MASK" $(top_srcdir)/src/*.c | \
|
|
|
|
sed "s/.*H5/ID_H5/;s/mask.*/c,/" | sort -u >> $@
|
1999-04-15 05:17:56 +08:00
|
|
|
|
2002-03-08 04:26:10 +08:00
|
|
|
ProcMasks.h: $(top_srcdir)/src/*.c
|
|
|
|
grep "#define[ ]*PABLO_MASK" $(top_srcdir)/src/*.c | \
|
|
|
|
sed "s/.*[ ]H5/H5/;s/_mask.*//;s/.*/#define &_mask ID_&_c/" >$@
|
1999-04-15 05:17:56 +08:00
|
|
|
|
|
|
|
ProcIDs.h: HDFidList.h ProcMasks.h
|
|
|
|
|
|
|
|
ProcTrace.inc: HDFidList.h
|
2002-03-08 08:01:51 +08:00
|
|
|
sed "=" $? | sed -f $(top_srcdir)/pablo/PabloSedscr > $@
|
2000-11-08 22:02:07 +08:00
|
|
|
|
2001-07-05 23:07:00 +08:00
|
|
|
PabloHDF.o: PabloHDF.c $(PABLO_INCLUDES)
|
2001-03-14 02:28:03 +08:00
|
|
|
$(CC) -g $(CFLAGS) $(CPPFLAGS) $(PABLO_FLAGS) -c $<
|
1998-10-31 04:13:58 +08:00
|
|
|
|
2001-07-05 23:07:00 +08:00
|
|
|
PabloHDF_RT.o: PabloHDF_RT.c $(PABLO_INCLUDES)
|
|
|
|
$(CC) $(CFLAGS) $(CPPFLAGS) $(PABLO_FLAGS) -c $<
|
|
|
|
|
|
|
|
PabloHDF_SDDF.o: PabloHDF_SDDF.c $(PABLO_INCLUDES)
|
2000-08-29 23:41:58 +08:00
|
|
|
$(CC) $(CFLAGS) $(CPPFLAGS) $(PABLO_FLAGS) -c $<
|
1998-10-31 04:13:58 +08:00
|
|
|
|
2001-07-05 23:07:00 +08:00
|
|
|
PabloHDF_MPIO.o: PabloHDF_MPIO.c $(PABLO_INCLUDES)
|
2000-08-29 23:41:58 +08:00
|
|
|
$(CC) $(CFLAGS) $(CPPFLAGS) $(PABLO_FLAGS) -c $<
|
1998-10-27 04:07:31 +08:00
|
|
|
|
2001-07-05 23:07:00 +08:00
|
|
|
PabloHDFff.o: PabloHDFff.f $(PABLO_INCLUDES)
|
2001-03-14 02:28:03 +08:00
|
|
|
$(F77) $(FFLAGS) -O -c PabloHDFff.f
|
2001-07-05 23:07:00 +08:00
|
|
|
|
2002-03-08 04:26:10 +08:00
|
|
|
H5.c: $(top_srcdir)/src/H5.c
|
|
|
|
H5A.c: $(top_srcdir)/src/H5A.c
|
|
|
|
H5AC.c: $(top_srcdir)/src/H5AC.c
|
|
|
|
H5B.c: $(top_srcdir)/src/H5B.c
|
|
|
|
H5D.c: $(top_srcdir)/src/H5D.c
|
|
|
|
H5E.c: $(top_srcdir)/src/H5E.c
|
|
|
|
H5F.c: $(top_srcdir)/src/H5F.c
|
|
|
|
H5FD.c: $(top_srcdir)/src/H5FD.c
|
|
|
|
H5FDcore.c: $(top_srcdir)/src/H5FDcore.c
|
|
|
|
H5FDfamily.c: $(top_srcdir)/src/H5FDfamily.c
|
|
|
|
H5FDgass.c: $(top_srcdir)/src/H5FDgass.c
|
|
|
|
H5FDlog.c: $(top_srcdir)/src/H5FDlog.c
|
|
|
|
H5FDmpio.c: $(top_srcdir)/src/H5FDmpio.c
|
|
|
|
H5FDmulti.c: $(top_srcdir)/src/H5FDmulti.c
|
|
|
|
H5FDsec2.c: $(top_srcdir)/src/H5FDsec2.c
|
|
|
|
H5FDsrb.c: $(top_srcdir)/src/H5FDsrb.c
|
|
|
|
H5FDstdio.c: $(top_srcdir)/src/H5FDstdio.c
|
|
|
|
H5FDstream.c: $(top_srcdir)/src/H5FDstream.c
|
|
|
|
H5FL.c: $(top_srcdir)/src/H5FL.c
|
|
|
|
H5Farray.c: $(top_srcdir)/src/H5Farray.c
|
|
|
|
H5Fcontig.c: $(top_srcdir)/src/H5Fcontig.c
|
|
|
|
H5Fistore.c: $(top_srcdir)/src/H5Fistore.c
|
|
|
|
H5Fseq.c: $(top_srcdir)/src/H5Fseq.c
|
|
|
|
H5G.c: $(top_srcdir)/src/H5G.c
|
|
|
|
H5Gent.c: $(top_srcdir)/src/H5Gent.c
|
|
|
|
H5Gnode.c: $(top_srcdir)/src/H5Gnode.c
|
|
|
|
H5Gstab.c: $(top_srcdir)/src/H5Gstab.c
|
|
|
|
H5HG.c: $(top_srcdir)/src/H5HG.c
|
|
|
|
H5HL.c: $(top_srcdir)/src/H5HL.c
|
|
|
|
H5I.c: $(top_srcdir)/src/H5I.c
|
|
|
|
H5MF.c: $(top_srcdir)/src/H5MF.c
|
|
|
|
H5MM.c: $(top_srcdir)/src/H5MM.c
|
|
|
|
H5O.c: $(top_srcdir)/src/H5O.c
|
|
|
|
H5Oattr.c: $(top_srcdir)/src/H5Oattr.c
|
|
|
|
H5Ocomp.c: $(top_srcdir)/src/H5Ocomp.c
|
|
|
|
H5Ocont.c: $(top_srcdir)/src/H5Ocont.c
|
|
|
|
H5Odtype.c: $(top_srcdir)/src/H5Odtype.c
|
|
|
|
H5Oefl.c: $(top_srcdir)/src/H5Oefl.c
|
|
|
|
H5Ofill.c: $(top_srcdir)/src/H5Ofill.c
|
|
|
|
H5Olayout.c: $(top_srcdir)/src/H5Olayout.c
|
|
|
|
H5Omtime.c: $(top_srcdir)/src/H5Omtime.c
|
|
|
|
H5Oname.c: $(top_srcdir)/src/H5Oname.c
|
|
|
|
H5Onull.c: $(top_srcdir)/src/H5Onull.c
|
|
|
|
H5Osdspace.c: $(top_srcdir)/src/H5Osdspace.c
|
|
|
|
H5Oshared.c: $(top_srcdir)/src/H5Oshared.c
|
|
|
|
H5Ostab.c: $(top_srcdir)/src/H5Ostab.c
|
|
|
|
H5P.c: $(top_srcdir)/src/H5P.c
|
|
|
|
H5R.c: $(top_srcdir)/src/H5R.c
|
|
|
|
H5S.c: $(top_srcdir)/src/H5S.c
|
|
|
|
H5Sall.c: $(top_srcdir)/src/H5Sall.c
|
|
|
|
H5Shyper.c: $(top_srcdir)/src/H5Shyper.c
|
|
|
|
H5Smpio.c: $(top_srcdir)/src/H5Smpio.c
|
|
|
|
H5Snone.c: $(top_srcdir)/src/H5Snone.c
|
|
|
|
H5Spoint.c: $(top_srcdir)/src/H5Spoint.c
|
|
|
|
H5Sselect.c: $(top_srcdir)/src/H5Sselect.c
|
|
|
|
H5T.c: $(top_srcdir)/src/H5T.c
|
|
|
|
H5TB.c: $(top_srcdir)/src/H5TB.c
|
|
|
|
H5TS.c: $(top_srcdir)/src/H5TS.c
|
|
|
|
H5Tbit.c: $(top_srcdir)/src/H5Tbit.c
|
|
|
|
H5Tconv.c: $(top_srcdir)/src/H5Tconv.c
|
2002-03-08 08:09:05 +08:00
|
|
|
H5Tinit.c: $(top_builddir)/src/H5Tinit.c
|
2002-03-08 04:26:10 +08:00
|
|
|
H5Tvlen.c: $(top_srcdir)/src/H5Tvlen.c
|
|
|
|
H5V.c: $(top_srcdir)/src/H5V.c
|
|
|
|
H5Z.c: $(top_srcdir)/src/H5Z.c
|
|
|
|
H5Zdeflate.c: $(top_srcdir)/src/H5Zdeflate.c
|
|
|
|
H5detect.c: $(top_srcdir)/src/H5detect.c
|