##
# Copyright by The HDF Group.
# 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://hdfgroup.org/HDF5/doc/Copyright.html.  If you do not have
# access to either file, you may request a copy from help@hdfgroup.org.
##
## HDF5 Library Makefile(.in)
##
top_srcdir=@top_srcdir@
top_builddir=../..
srcdir=@srcdir@
@COMMENCE@

## Add include directory to the C preprocessor flags, add -lh5tools and
## -lhdf5 to the list of libraries.
## Add also the test include directory for #defines
CPPFLAGS=-I. -I$(srcdir) -I$(top_builddir)/src -I$(top_srcdir)/src  \
         -I$(top_srcdir)/test  \
         -I$(top_srcdir)/tools/lib @CPPFLAGS@  

## Test programs and scripts.
##
TEST_PROGS=h5repacktst
TEST_SCRIPTS=./h5repack.sh
PRIV_PROGS=testh5repack_detect_szip

## These are our main targets: library and tools.
##
LIBHDF5=$(top_builddir)/src/libhdf5.la
LIBTOOLS=../lib/libh5tools.la
LIBH5TEST=../../test/libh5test.la

PUB_PROGS=h5repack
PROGS=$(PUB_PROGS) $(TEST_PROGS) $(PRIV_PROGS)

## Source and object files for the library; do not install
##
LIB_SRC=
LIB_OBJ=$(LIB_SRC:.c=.lo)
PUB_LIB=

## Temporary files.  *.h5 are generated by h5repack.  They should
## copied to the testfiles/ directory if update is required.
MOSTLYCLEAN=*.h5 *.bin
DISTCLEAN=h5repack.sh

## Source and object files for programs...
##
PROG_SRC=h5repack.c h5repack_copy.c h5repack_refs.c h5repack_filters.c  h5repack_list.c h5repack_main.c h5repack_opttable.c h5repack_parse.c h5repack_verify.c h5repacktst.c
OBJS=h5repack.lo h5repack_filters.lo h5repack_copy.lo h5repack_refs.lo h5repack_list.lo h5repack_main.lo h5repack_opttable.lo h5repack_parse.lo h5repack_verify.lo	
TEST_OBJS=h5repack.lo h5repack_filters.lo  h5repack_copy.lo h5repack_refs.lo h5repack_list.lo h5repack_opttable.lo h5repack_parse.lo h5repack_verify.lo h5repacktst.lo
DETECT_OBJS=testh5repack_detect_szip.lo
PROG_OBJ=$(PROG_SRC:.c=.lo) $(DETECT_OBJS)

PRIVATE_HDR=

## Source and object files for the tests
##
TEST_SRC=
TEST_OBJ=$(TEST_SRC:.c=.lo)

## Programs have to be built before they can be tested!
##
check test _test: $(PROGS)

## How to build the programs...They all depend on the hdf5 library and
## the tools library compiled in this directory 
##
$(PROGS): $(LIBTOOLS)  $(LIBHDF5) 

h5repack: $(OBJS)
	@$(LT_LINK_EXE) $(CFLAGS) -o $@ $(OBJS)  $(LIBTOOLS)  $(LIBHDF5) $(LDFLAGS) $(LIBS)

h5repacktst: $(TEST_OBJS)
	@$(LT_LINK_EXE) $(CFLAGS) -o $@ $(TEST_OBJS)  $(LIBTOOLS) $(LIBH5TEST) $(LIBHDF5) $(LDFLAGS) $(LIBS)

testh5repack_detect_szip: $(DETECT_OBJS)
	@$(LT_LINK_EXE) $(CFLAGS) -o $@ $(DETECT_OBJS)  $(LIBTOOLS)  $(LIBHDF5) $(LDFLAGS) $(LIBS)

## The following empty rule is necessary to override a bug present when compiling with icc. It demands
##  a rule to make h5trav.h, so a blank one has been provided.
h5trav.h:

@CONCLUDE@
