# Generated automatically from Makefile.in by configure. # HDF5 Library Makefile(.in) -*- makefile -*- # # Copyright (C) 1997 National Center for Supercomputing Applications. # All rights reserved. # # #------------------------------------------------------------- -*- makefile -*- # The following section of this makefile comes from the # `./config/commence' file which was generated with config.status # from `./config/commence.in'. #------------------------------------------------------------------------------ # Things that Make needs .SUFFIXES: .SUFFIXES: .c .o # Programs SHELL=/bin/sh CC=gcc CFLAGS=-g -Wall -Wshadow -Wpointer-arith -Wcast-qual -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wnested-externs CPPFLAGS= LIBS= AR=ar RANLIB=ranlib RM=rm -f INSTALL=/usr/bin/install -c INSTALL_PROGRAM=${INSTALL} INSTALL_DATA=${INSTALL} -m 644 # Installation points ROOT=/usr/home/koziol/hdf_dev/hdf5 prefix=/usr/local exec_prefix=${prefix} bindir=${exec_prefix}/bin libdir=${exec_prefix}/lib includedir=${prefix}/include # The default is to build the library and programs. all: lib progs # The following rules insure that the Makefile is up-to-date by rerunning # various autoconf components (although not all versions of make assume # that the makefile is implicitly a target). We use time stamp files to # keep track of the most recent update of H5config.h.in and H5config.h # because autoheader and config.status don't update the modification time # if the contents don't change. # # Graphically, the dependencies are: # # configure.in # | | # +--------------------+ +-------------------+ # | | # stamp1 configure # | | # | config.status # | | | # | +-------------------------------------+ | # | | | # stamp2 Makefile.in | # | | | # | +-----------+ +------+ # +-----------------------------+ | | # | | | # Makefile # # A side effect of updating stamp1 is to generate H5config.h.in and a # side effect of updating stamp2 is to generate H5config.h. When using # a version of make that doesn't treat the makefile as the initial target # the user may want to occassionally type `make Makefile' in any source # directory. # STAMP1=$(ROOT)/config/stamp1 STAMP2=$(ROOT)/config/stamp2 MAKEFILE_PARTS=$(ROOT)/config/commence.in Makefile.in \ $(ROOT)/config/conclude.in $(ROOT)/config/depend.in $(STAMP1): $(ROOT)/configure.in -(cd $(ROOT); \ touch $(STAMP1); \ autoheader) $(STAMP2): $(STAMP1) $(ROOT)/config.status -(cd $(ROOT); \ touch $(STAMP2); \ CONFIG_FILES= CONFIG_HEADERS=src/H5config.h ./config.status) $(ROOT)/configure: $(ROOT)/configure.in -(cd $(ROOT); autoconf) $(ROOT)/config.status: $(ROOT)/configure -(cd $(ROOT); ./config.status --recheck) Makefile: $(MAKEFILE_PARTS) $(ROOT)/config.status $(STAMP2) -(cd $(ROOT); CONFIG_HEADERS= ./config.status) #------------------------------------------------------------------------------ # The following section of this makefile comes from the middle of `Makefile.in' # from this directory. It was generated by running `config.status'. #------------------------------------------------------------------------------ # Add `-I.' to the C preprocessor flags. CPPFLAGS=-I. # These are our main targets: LIB=libhdf5.a PROGS=debug # Source and object files for the library (lexicographically)... LIB_SRC=H5.c H5A.c H5AC.c H5B.c H5C.c H5D.c H5E.c H5F.c H5G.c H5Gnode.c \ H5H.c H5M.c H5MF.c H5MM.c H5O.c H5Ocont.c H5Oname.c H5Onull.c \ H5Ostab.c H5Osdtyp.c H5Osdim.c H5P.c H5T.c LIB_OBJ=$(LIB_SRC:.c=.o) # Source and object files for programs... PROG_SRC=debug.c PROG_OBJ=$(PROG_SRC:.c=.o) # Public header files (to be installed)... PUB_HDR=H5public.h H5Apublic.h H5ACpublic.h H5Bpublic.h H5Cpublic.h \ H5Dpublic.h H5Epublic.h H5Fpublic.h H5Gpublic.h H5Hpublic.h \ H5Mpublic.h H5MFpublic.h H5MMpublic.h H5Opublic.h H5Ppublic.h \ H5Tpublic.h H5config.h hdf5.h # Other header files (not to be installed)... PRIVATE_HDR=H5private.h H5Aprivate.h H5ACprivate.h H5Bprivate.h \ H5Cprivate.h H5Dprivate.h H5Eprivate.h H5Fprivate.h H5Gprivate.h \ H5Hprivate.h H5Mprivate.h H5MFprivate.h H5MMprivate.h \ H5Oprivate.h H5Pprivate.h H5Tprivate.h # How to build the programs... debug: debug.o $(LIB) $(CC) $(CFLAGS) -o $@ debug.o $(LIB) #------------------------------------------------------------- -*- makefile -*- # The following section of this makefile comes from the # `./config/conclude' file which was generated with config.status # from `./config/conclude.in'. #------------------------------------------------------------------------------ # This is the target for the library described in the main body of the # makefile. # lib: $(LIB) $(LIB) __no_library__: $(LIB_OBJ) $(AR) -rc $@ $(LIB_OBJ) $(RANLIB) $@ progs: $(PROGS) # Build a tags file in this directory. TAGS: $(LIB_SRC) $(RM) $@ -etags $(LIB_SRC) # Runs each test in order, passing $(TEST_FLAGS) to the program. test: $(PROGS) @for test in $(TESTS) dummy; do \ if test $$test != dummy; then \ echo "$$test $(TEST_FLAGS)"; \ $$test $(TEST_FLAGS) || exit 1; \ fi; \ done; # Install the library, the public header files, and programs. install: $(LIB) $(PUB_HDR) $(PROGS) @if test -n "$(LIB)"; then \ (set -x; $(INSTALL_DATA) $(LIB) $(libdir) || exit 1); \ fi @if test -n "$(PUB_HDR)"; then \ (set -x; $(INSTALL_DATA) $(PUB_HDR) $(includedir) || exit 1); \ fi @if test -n "$(PROGS)"; then \ (set -x; $(INSTALL_PROGRAM) $(PROGS) $(bindir) || exit 1); \ fi # Removes those things that `make install' (would have) installed. uninstall: $(RM) $(libdir)/$(LIB) $(RM) $(includedir)/$(PUB_HDR) $(RM) $(bindir)/$(PROGS) # Removes temporary files without removing the final target files. That is, # remove things like object files but not libraries or executables. # mostlyclean: $(RM) $(LIB_OBJ) $(PROG_OBJ) # 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. # clean: mostlyclean $(RM) $(LIB) $(PROGS) # 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. # distclean: clean $(RM) .depend TAGS @if test -f Makefile.in; then \ (set -x; $(RM) Makefile); \ fi # Like `distclean' except it deletes all files that can be regenerated from # the makefile, including those generated from autoheader and autoconf. # maintainer-clean: distclean # Implicit rules .c.a: $(CC) $(CFLAGS) $(CPPFLAGS) -c $< $(AR) -rc $@ $*.o $(RM) $*.o .c.o: $(CC) $(CFLAGS) $(CPPFLAGS) -c $<