mirror of
https://github.com/HDFGroup/hdf5.git
synced 2024-11-27 02:10:55 +08:00
ca94c839d5
Description: The fortran Makefile.am used HDF_FORTRAN to indicate it is part of the Fortran API source so that conclude.am will give fortran api prefix in the test output. The symbox HDF_FORTRAN is also used in configure for a different purpose (indicated --enable-fortran). They conflicted. Similar problem for the symbol HDF_CXX. Solution: Changed all the involved Makefile.am to use "FORTRAN_API" instead. It is a more appropriate name. Same for CXX_API. Along the way, discovered that the Makefile.am of hl/fortran/test and hl/cxx/test did not have those symbols at all. Added them in. Platform tested: Kagiso only. It is a trivia change.
824 lines
29 KiB
Makefile
824 lines
29 KiB
Makefile
# Makefile.in generated by automake 1.10.1 from Makefile.am.
|
|
# @configure_input@
|
|
|
|
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
|
|
# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
|
|
# This Makefile.in is free software; the Free Software Foundation
|
|
# gives unlimited permission to copy and/or distribute it,
|
|
# with or without modifications, as long as this notice is preserved.
|
|
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
|
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
|
# PARTICULAR PURPOSE.
|
|
|
|
@SET_MAKE@
|
|
|
|
#
|
|
# 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 Examples Makefile(.in)
|
|
#
|
|
|
|
# We can't tell automake about example programs, because they need to be
|
|
# built using h5cc (or h5fc, etc.) instead of the standard compilers.
|
|
# This creates some extra work for us.
|
|
VPATH = @srcdir@
|
|
pkgdatadir = $(datadir)/@PACKAGE@
|
|
pkglibdir = $(libdir)/@PACKAGE@
|
|
pkgincludedir = $(includedir)/@PACKAGE@
|
|
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
|
install_sh_DATA = $(install_sh) -c -m 644
|
|
install_sh_PROGRAM = $(install_sh) -c
|
|
install_sh_SCRIPT = $(install_sh) -c
|
|
INSTALL_HEADER = $(INSTALL_DATA)
|
|
transform = $(program_transform_name)
|
|
NORMAL_INSTALL = :
|
|
PRE_INSTALL = :
|
|
POST_INSTALL = :
|
|
NORMAL_UNINSTALL = :
|
|
PRE_UNINSTALL = :
|
|
POST_UNINSTALL = :
|
|
build_triplet = @build@
|
|
host_triplet = @host@
|
|
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
|
|
$(srcdir)/testh5cc.sh.in $(top_srcdir)/config/commence.am \
|
|
$(top_srcdir)/config/conclude.am \
|
|
$(top_srcdir)/config/examples.am
|
|
TESTS =
|
|
subdir = examples
|
|
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
|
am__aclocal_m4_deps = $(top_srcdir)/configure.in
|
|
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
|
$(ACLOCAL_M4)
|
|
mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs
|
|
CONFIG_HEADER = $(top_builddir)/src/H5config.h
|
|
CONFIG_CLEAN_FILES = testh5cc.sh
|
|
SOURCES =
|
|
DIST_SOURCES =
|
|
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
|
ACLOCAL = /home1/packages/automake/automake-1.9.6/bin/aclocal-1.9 -I /afs/ncsa/projects/hdf/packages/libtool_1.5.14/Linux_2.4/share/aclocal
|
|
ADD_PARALLEL_FILES = @ADD_PARALLEL_FILES@
|
|
AMTAR = @AMTAR@
|
|
AM_MAKEFLAGS = @AM_MAKEFLAGS@
|
|
AR = @AR@
|
|
|
|
# Set the paths for AFS installs of autotools for Linux machines
|
|
# Ideally, these tools should never be needed during the build.
|
|
AUTOCONF = /home1/packages/autoconf/autoconf-2.60/bin/autoconf
|
|
AUTOHEADER = /home1/packages/autoconf/autoconf-2.60/bin/autoheader
|
|
AUTOMAKE = /home1/packages/automake/automake-1.9.6/bin/automake-1.9
|
|
AWK = @AWK@
|
|
BYTESEX = @BYTESEX@
|
|
CC = @CC@
|
|
CCDEPMODE = @CCDEPMODE@
|
|
CC_VERSION = @CC_VERSION@
|
|
|
|
# H5_CFLAGS holds flags that should be used as CFLAGS when building hdf5,
|
|
# but which shouldn't be exported to h5cc for building other programs.
|
|
CFLAGS = @CFLAGS@ @H5_CFLAGS@
|
|
CLEARFILEBUF = @CLEARFILEBUF@
|
|
CODESTACK = @CODESTACK@
|
|
CONFIG_DATE = @CONFIG_DATE@
|
|
CONFIG_MODE = @CONFIG_MODE@
|
|
CONFIG_USER = @CONFIG_USER@
|
|
CPP = @CPP@
|
|
CPPFLAGS = @CPPFLAGS@ @H5_CPPFLAGS@
|
|
CXX = @CXX@
|
|
CXXCPP = @CXXCPP@
|
|
CXXDEPMODE = @CXXDEPMODE@
|
|
CXXFLAGS = @CXXFLAGS@ @H5_CXXFLAGS@
|
|
CYGPATH_W = @CYGPATH_W@
|
|
DEBUG_PKG = @DEBUG_PKG@
|
|
DEFAULT_API_VERSION = @DEFAULT_API_VERSION@
|
|
DEFS = @DEFS@
|
|
DEPDIR = @DEPDIR@
|
|
DEPRECATED_SYMBOLS = @DEPRECATED_SYMBOLS@
|
|
DIRECT_VFD = @DIRECT_VFD@
|
|
DSYMUTIL = @DSYMUTIL@
|
|
DUMPBIN = @DUMPBIN@
|
|
DYNAMIC_DIRS = @DYNAMIC_DIRS@
|
|
ECHO_C = @ECHO_C@
|
|
ECHO_N = @ECHO_N@
|
|
ECHO_T = @ECHO_T@
|
|
EGREP = @EGREP@
|
|
EXEEXT = @EXEEXT@
|
|
EXTERNAL_FILTERS = @EXTERNAL_FILTERS@
|
|
|
|
# Make sure that these variables are exported to the Makefiles
|
|
F9XMODEXT = @F9XMODEXT@
|
|
F9XMODFLAG = @F9XMODFLAG@
|
|
F9XSUFFIXFLAG = @F9XSUFFIXFLAG@
|
|
FC = @FC@
|
|
FCFLAGS = @FCFLAGS@ @H5_FCFLAGS@
|
|
FCFLAGS_f90 = @FCFLAGS_f90@
|
|
FCLIBS = @FCLIBS@
|
|
FGREP = @FGREP@
|
|
FILTERS = @FILTERS@
|
|
FSEARCH_DIRS = @FSEARCH_DIRS@
|
|
GPFS = @GPFS@
|
|
GREP = @GREP@
|
|
H5_CFLAGS = @H5_CFLAGS@
|
|
H5_CPPFLAGS = @H5_CPPFLAGS@
|
|
H5_CXXFLAGS = @H5_CXXFLAGS@
|
|
H5_FCFLAGS = @H5_FCFLAGS@
|
|
H5_LONE_COLON = @H5_LONE_COLON@
|
|
H5_VERSION = @H5_VERSION@
|
|
HADDR_T = @HADDR_T@
|
|
HAVE_DMALLOC = @HAVE_DMALLOC@
|
|
HDF5_HL = @HDF5_HL@
|
|
HDF5_INTERFACES = @HDF5_INTERFACES@
|
|
HDF_CXX = @HDF_CXX@
|
|
HDF_FORTRAN = @HDF_FORTRAN@
|
|
HID_T = @HID_T@
|
|
HL = @HL@
|
|
HL_FOR = @HL_FOR@
|
|
HSIZE_T = @HSIZE_T@
|
|
HSSIZE_T = @HSSIZE_T@
|
|
INSTALL = @INSTALL@
|
|
INSTALL_DATA = @INSTALL_DATA@
|
|
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
|
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
|
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
|
INSTRUMENT = @INSTRUMENT@
|
|
INSTRUMENT_LIBRARY = @INSTRUMENT_LIBRARY@
|
|
LD = @LD@
|
|
LDFLAGS = @LDFLAGS@
|
|
LIBOBJS = @LIBOBJS@
|
|
LIBS = @LIBS@
|
|
LIBTOOL = @LIBTOOL@
|
|
LINUX_LFS = @LINUX_LFS@
|
|
LN_S = @LN_S@
|
|
LTLIBOBJS = @LTLIBOBJS@
|
|
LT_STATIC_EXEC = @LT_STATIC_EXEC@
|
|
MAINT = @MAINT@
|
|
MAKEINFO = @MAKEINFO@
|
|
MKDIR_P = @MKDIR_P@
|
|
MPE = @MPE@
|
|
MPI_GET_SIZE = @MPI_GET_SIZE@
|
|
NM = @NM@
|
|
NMEDIT = @NMEDIT@
|
|
OBJECT_NAMELEN_DEFAULT_F = @OBJECT_NAMELEN_DEFAULT_F@
|
|
OBJEXT = @OBJEXT@
|
|
PACKAGE = @PACKAGE@
|
|
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
|
PACKAGE_NAME = @PACKAGE_NAME@
|
|
PACKAGE_STRING = @PACKAGE_STRING@
|
|
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
|
PACKAGE_VERSION = @PACKAGE_VERSION@
|
|
PARALLEL = @PARALLEL@
|
|
PATH_SEPARATOR = @PATH_SEPARATOR@
|
|
PERL = @PERL@
|
|
PTHREAD = @PTHREAD@
|
|
RANLIB = @RANLIB@
|
|
ROOT = @ROOT@
|
|
RUNPARALLEL = @RUNPARALLEL@
|
|
RUNSERIAL = @RUNSERIAL@
|
|
R_INTEGER = @R_INTEGER@
|
|
R_LARGE = @R_LARGE@
|
|
SEARCH = @SEARCH@
|
|
SED = @SED@
|
|
SETX = @SETX@
|
|
SET_MAKE = @SET_MAKE@
|
|
|
|
# Hardcode SHELL to be /bin/sh. Most machines have this shell, and
|
|
# on at least one machine configure fails to detect its existence (janus).
|
|
# Also, when HDF5 is configured on one machine but run on another,
|
|
# configure's automatic SHELL detection may not work on the build machine.
|
|
SHELL = /bin/sh
|
|
SIZE_T = @SIZE_T@
|
|
STATIC_EXEC = @STATIC_EXEC@
|
|
STATIC_SHARED = @STATIC_SHARED@
|
|
STRICT_FORMAT_CHECKS = @STRICT_FORMAT_CHECKS@
|
|
STRIP = @STRIP@
|
|
TESTPARALLEL = @TESTPARALLEL@
|
|
THREADSAFE = @THREADSAFE@
|
|
TIME = @TIME@
|
|
TR = @TR@
|
|
TRACE_API = @TRACE_API@
|
|
UNAME_INFO = @UNAME_INFO@
|
|
USE_FILTER_DEFLATE = @USE_FILTER_DEFLATE@
|
|
USE_FILTER_FLETCHER32 = @USE_FILTER_FLETCHER32@
|
|
USE_FILTER_NBIT = @USE_FILTER_NBIT@
|
|
USE_FILTER_SCALEOFFSET = @USE_FILTER_SCALEOFFSET@
|
|
USE_FILTER_SHUFFLE = @USE_FILTER_SHUFFLE@
|
|
USE_FILTER_SZIP = @USE_FILTER_SZIP@
|
|
USINGMEMCHECKER = @USINGMEMCHECKER@
|
|
VERSION = @VERSION@
|
|
abs_builddir = @abs_builddir@
|
|
abs_srcdir = @abs_srcdir@
|
|
abs_top_builddir = @abs_top_builddir@
|
|
abs_top_srcdir = @abs_top_srcdir@
|
|
ac_ct_CC = @ac_ct_CC@
|
|
ac_ct_CXX = @ac_ct_CXX@
|
|
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
|
|
ac_ct_FC = @ac_ct_FC@
|
|
am__include = @am__include@
|
|
am__leading_dot = @am__leading_dot@
|
|
am__quote = @am__quote@
|
|
am__tar = @am__tar@
|
|
am__untar = @am__untar@
|
|
bindir = @bindir@
|
|
build = @build@
|
|
build_alias = @build_alias@
|
|
build_cpu = @build_cpu@
|
|
build_os = @build_os@
|
|
build_vendor = @build_vendor@
|
|
builddir = @builddir@
|
|
datadir = @datadir@
|
|
datarootdir = @datarootdir@
|
|
docdir = $(exec_prefix)/doc
|
|
dvidir = @dvidir@
|
|
enable_shared = @enable_shared@
|
|
enable_static = @enable_static@
|
|
exec_prefix = @exec_prefix@
|
|
host = @host@
|
|
host_alias = @host_alias@
|
|
host_cpu = @host_cpu@
|
|
host_os = @host_os@
|
|
host_vendor = @host_vendor@
|
|
htmldir = @htmldir@
|
|
|
|
# Install directories that automake doesn't know about
|
|
includedir = $(exec_prefix)/include
|
|
infodir = @infodir@
|
|
install_sh = @install_sh@
|
|
libdir = @libdir@
|
|
libexecdir = @libexecdir@
|
|
localedir = @localedir@
|
|
localstatedir = @localstatedir@
|
|
lt_ECHO = @lt_ECHO@
|
|
mandir = @mandir@
|
|
mkdir_p = @mkdir_p@
|
|
oldincludedir = @oldincludedir@
|
|
pdfdir = @pdfdir@
|
|
prefix = @prefix@
|
|
program_transform_name = @program_transform_name@
|
|
psdir = @psdir@
|
|
sbindir = @sbindir@
|
|
sharedstatedir = @sharedstatedir@
|
|
srcdir = @srcdir@
|
|
sysconfdir = @sysconfdir@
|
|
target_alias = @target_alias@
|
|
top_builddir = @top_builddir@
|
|
top_srcdir = @top_srcdir@
|
|
|
|
# Shell commands used in Makefiles
|
|
RM = rm -f
|
|
CP = cp
|
|
|
|
# Some machines need a command to run executables; this is that command
|
|
# so that our tests will run.
|
|
# We use RUNTESTS instead of RUNSERIAL directly because it may be that
|
|
# some tests need to be run with a different command. Older versions
|
|
# of the makefiles used the command
|
|
# $(LIBTOOL) --mode=execute
|
|
# in some directories, for instance.
|
|
RUNTESTS = $(RUNSERIAL)
|
|
|
|
# Libraries to link to while building
|
|
LIBHDF5 = $(top_builddir)/src/libhdf5.la
|
|
LIBH5TEST = $(top_builddir)/test/libh5test.la
|
|
LIBH5F = $(top_builddir)/fortran/src/libhdf5_fortran.la
|
|
LIBH5FTEST = $(top_builddir)/fortran/test/libh5test_fortran.la
|
|
LIBH5CPP = $(top_builddir)/c++/src/libhdf5_cpp.la
|
|
LIBH5TOOLS = $(top_builddir)/tools/lib/libh5tools.la
|
|
LIBH5_HL = $(top_builddir)/hl/src/libhdf5_hl.la
|
|
LIBH5F_HL = $(top_builddir)/hl/fortran/src/libhdf5hl_fortran.la
|
|
LIBH5CPP_HL = $(top_builddir)/hl/c++/src/libhdf5_hl_cpp.la
|
|
|
|
# Scripts used to build examples
|
|
# If only shared libraries have been installed, have h5cc build examples with
|
|
# shared libraries instead of static libraries
|
|
H5CC = $(bindir)/h5cc
|
|
H5CC_PP = $(bindir)/h5pcc
|
|
H5FC = $(bindir)/h5fc
|
|
H5FC_PP = $(bindir)/h5pfc
|
|
H5CPP = $(bindir)/h5c++
|
|
|
|
# The trace script; this is used on source files from the C library to
|
|
# insert tracing macros.
|
|
TRACE = perl $(top_srcdir)/bin/trace
|
|
|
|
# .chkexe files are used to mark tests that have run successfully.
|
|
# .chklog files are output from those tests.
|
|
# *.clog are from the MPE option.
|
|
CHECK_CLEANFILES = *.chkexe *.chklog *.clog $(EXTLINK_DIRS) *.h5
|
|
@BUILD_PARALLEL_CONDITIONAL_TRUE@TEST_PROG_PARA = ph5example
|
|
|
|
# Example programs.
|
|
# Don't tell automake about them, because if it knew they were programs,
|
|
# it would try to compile them instead of using the h5cc script.
|
|
# Use the boilerplate in config/examples.am instead.
|
|
TEST_PROG = h5_write h5_read h5_extend_write h5_chunk_read h5_compound \
|
|
h5_group h5_select h5_attribute h5_mount h5_reference h5_drivers \
|
|
h5_ref2reg h5_extlink h5_elink_unix2win h5_shared_mesg
|
|
|
|
TEST_SCRIPT = testh5cc.sh
|
|
|
|
# Install files
|
|
# List all file that should be installed in examples directory
|
|
INSTALL_FILES = h5_write.c h5_read.c h5_extend_write.c h5_chunk_read.c \
|
|
h5_compound.c h5_group.c h5_select.c h5_attribute.c h5_mount.c \
|
|
h5_reference.c h5_drivers.c h5_extlink.c h5_elink_unix2win.c \
|
|
h5_ref2reg.c h5_shared_mesg.c ph5example.c
|
|
|
|
|
|
# The external link examples demonstrate how to use paths; they need
|
|
# directories to be created to do this.
|
|
EXTLINK_DIRS = red blue u2w
|
|
|
|
# Example directory
|
|
EXAMPLEDIR = $(docdir)/hdf5/examples/c
|
|
|
|
# Assume that all tests in this directory are examples, and tell
|
|
# conclude.am when to build them.
|
|
EXAMPLE_PROG = $(TEST_PROG_PARA) $(TEST_PROG)
|
|
EXTRA_PROG = $(EXAMPLE_PROG)
|
|
|
|
# We need to tell automake what to clean
|
|
MOSTLYCLEANFILES = *.raw *.meta *.o
|
|
CLEANFILES = $(TEST_PROG) $(TEST_PROG_PARA)
|
|
|
|
# Automake needs to be taught how to build lib, progs, and tests targets.
|
|
# These will be filled in automatically for the most part (e.g.,
|
|
# lib_LIBRARIES are built for lib target), but EXTRA_LIB, EXTRA_PROG, and
|
|
# EXTRA_TEST variables are supplied to allow the user to force targets to
|
|
# be built at certain times.
|
|
LIB = $(lib_LIBRARIES) $(lib_LTLIBRARIES) $(noinst_LIBRARIES) \
|
|
$(noinst_LTLIBRARIES) $(check_LIBRARIES) $(check_LTLIBRARIES) $(EXTRA_LIB)
|
|
|
|
PROGS = $(bin_PROGRAMS) $(bin_SCRIPTS) $(noinst_PROGRAMS) $(noinst_SCRIPTS) \
|
|
$(EXTRA_PROG)
|
|
|
|
TEST_PROG_CHKEXE = $(TEST_PROG:=.chkexe_)
|
|
TEST_PROG_PARA_CHKEXE = $(TEST_PROG_PARA:=.chkexe_)
|
|
TEST_SCRIPT_CHKSH = $(TEST_SCRIPT:=.chkexe_)
|
|
TEST_SCRIPT_PARA_CHKSH = $(TEST_SCRIPT_PARA:=.chkexe_)
|
|
all: all-am
|
|
|
|
.SUFFIXES:
|
|
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/config/commence.am $(top_srcdir)/config/examples.am $(top_srcdir)/config/conclude.am $(am__configure_deps)
|
|
@for dep in $?; do \
|
|
case '$(am__configure_deps)' in \
|
|
*$$dep*) \
|
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
|
|
&& exit 0; \
|
|
exit 1;; \
|
|
esac; \
|
|
done; \
|
|
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign examples/Makefile'; \
|
|
cd $(top_srcdir) && \
|
|
$(AUTOMAKE) --foreign examples/Makefile
|
|
.PRECIOUS: Makefile
|
|
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
|
@case '$?' in \
|
|
*config.status*) \
|
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
|
*) \
|
|
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
|
|
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
|
|
esac;
|
|
|
|
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
|
|
|
$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
|
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
|
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
|
|
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
|
testh5cc.sh: $(top_builddir)/config.status $(srcdir)/testh5cc.sh.in
|
|
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
|
|
|
|
mostlyclean-libtool:
|
|
-rm -f *.lo
|
|
|
|
clean-libtool:
|
|
-rm -rf .libs _libs
|
|
tags: TAGS
|
|
TAGS:
|
|
|
|
ctags: CTAGS
|
|
CTAGS:
|
|
|
|
|
|
distdir: $(DISTFILES)
|
|
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
|
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
|
list='$(DISTFILES)'; \
|
|
dist_files=`for file in $$list; do echo $$file; done | \
|
|
sed -e "s|^$$srcdirstrip/||;t" \
|
|
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
|
|
case $$dist_files in \
|
|
*/*) $(MKDIR_P) `echo "$$dist_files" | \
|
|
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
|
|
sort -u` ;; \
|
|
esac; \
|
|
for file in $$dist_files; do \
|
|
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
|
|
if test -d $$d/$$file; then \
|
|
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
|
|
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
|
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
|
|
fi; \
|
|
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
|
|
else \
|
|
test -f $(distdir)/$$file \
|
|
|| cp -p $$d/$$file $(distdir)/$$file \
|
|
|| exit 1; \
|
|
fi; \
|
|
done
|
|
check-am: all-am
|
|
$(MAKE) $(AM_MAKEFLAGS) check-TESTS
|
|
check: check-am
|
|
all-am: Makefile all-local
|
|
installdirs:
|
|
install: install-am
|
|
install-exec: install-exec-am
|
|
install-data: install-data-am
|
|
uninstall: uninstall-am
|
|
|
|
install-am: all-am
|
|
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
|
|
|
installcheck: installcheck-am
|
|
install-strip:
|
|
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
|
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
|
`test -z '$(STRIP)' || \
|
|
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
|
|
mostlyclean-generic:
|
|
-test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES)
|
|
|
|
clean-generic:
|
|
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
|
|
|
|
distclean-generic:
|
|
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
|
|
|
maintainer-clean-generic:
|
|
@echo "This command is intended for maintainers to use"
|
|
@echo "it deletes files that may require special tools to rebuild."
|
|
clean: clean-am
|
|
|
|
clean-am: clean-generic clean-libtool mostlyclean-am
|
|
|
|
distclean: distclean-am
|
|
-rm -f Makefile
|
|
distclean-am: clean-am distclean-generic
|
|
|
|
dvi: dvi-am
|
|
|
|
dvi-am:
|
|
|
|
html: html-am
|
|
|
|
info: info-am
|
|
|
|
info-am:
|
|
|
|
install-data-am: install-data-local
|
|
|
|
install-dvi: install-dvi-am
|
|
|
|
install-exec-am:
|
|
|
|
install-html: install-html-am
|
|
|
|
install-info: install-info-am
|
|
|
|
install-man:
|
|
|
|
install-pdf: install-pdf-am
|
|
|
|
install-ps: install-ps-am
|
|
|
|
installcheck-am: installcheck-local
|
|
|
|
maintainer-clean: maintainer-clean-am
|
|
-rm -f Makefile
|
|
maintainer-clean-am: distclean-am maintainer-clean-generic
|
|
|
|
mostlyclean: mostlyclean-am
|
|
|
|
mostlyclean-am: mostlyclean-generic mostlyclean-libtool \
|
|
mostlyclean-local
|
|
|
|
pdf: pdf-am
|
|
|
|
pdf-am:
|
|
|
|
ps: ps-am
|
|
|
|
ps-am:
|
|
|
|
uninstall-am: uninstall-local
|
|
|
|
.MAKE: install-am install-strip
|
|
|
|
.PHONY: all all-am all-local check check-TESTS check-am clean \
|
|
clean-generic clean-libtool distclean distclean-generic \
|
|
distclean-libtool distdir dvi dvi-am html html-am info info-am \
|
|
install install-am install-data install-data-am \
|
|
install-data-local install-dvi install-dvi-am install-exec \
|
|
install-exec-am install-html install-html-am install-info \
|
|
install-info-am install-man install-pdf install-pdf-am \
|
|
install-ps install-ps-am install-strip installcheck \
|
|
installcheck-am installcheck-local installdirs \
|
|
maintainer-clean maintainer-clean-generic mostlyclean \
|
|
mostlyclean-generic mostlyclean-libtool mostlyclean-local pdf \
|
|
pdf-am ps ps-am uninstall uninstall-am uninstall-local
|
|
|
|
|
|
# List all build rules defined by HDF5 Makefiles as "PHONY" targets here.
|
|
# This tells the Makefiles that these targets are not files to be built but
|
|
# commands that should be executed even if a file with the same name already
|
|
# exists.
|
|
.PHONY: build-check-clean build-check-p build-check-s build-lib build-progs \
|
|
build-tests check-clean check-install check-p check-s check-vfd \
|
|
install-doc lib progs tests uninstall-doc _exec_check-s _test help
|
|
|
|
help:
|
|
@$(top_srcdir)/bin/makehelp
|
|
|
|
# How to build examples, using installed version of h5cc
|
|
@BUILD_PARALLEL_CONDITIONAL_TRUE@$(EXTRA_PROG): $(H5CC_PP)
|
|
@BUILD_PARALLEL_CONDITIONAL_TRUE@ $(H5CC_PP) $(H5CCFLAGS) $(CFLAGS) -o $@ $(srcdir)/$@.c;
|
|
@BUILD_PARALLEL_CONDITIONAL_FALSE@$(EXTRA_PROG): $(H5CC)
|
|
@BUILD_PARALLEL_CONDITIONAL_FALSE@ $(H5CC) $(H5CCFLAGS) $(CFLAGS) -o $@ $(srcdir)/$@.c;
|
|
|
|
# Two of the examples depend on files created by other examples.
|
|
h5_read.chkexe_: h5_write.chkexe_
|
|
h5_chunk_read.chkexe_: h5_extend_write.chkexe_
|
|
|
|
$(EXTLINK_DIRS):
|
|
echo $(mkdir_p) $@
|
|
$(mkdir_p) $@
|
|
|
|
# List dependencies for each program. Normally, automake would take
|
|
# care of this for us, but if we tell automake about the programs it
|
|
# will try to build them with the normal C compiler, not h5cc. This is
|
|
# an inelegant way of solving the problem.
|
|
# All programs share the same build rule and a dependency on the main hdf5
|
|
# library above.
|
|
h5_chunk_read: $(srcdir)/h5_chunk_read.c
|
|
h5_compound: $(srcdir)/h5_compound.c
|
|
h5_extend_write: $(srcdir)/h5_extend_write.c
|
|
h5_group: $(srcdir)/h5_group.c
|
|
h5_write: $(srcdir)/h5_write.c
|
|
h5_read: $(srcdir)/h5_read.c
|
|
h5_select: $(srcdir)/h5_select.c
|
|
h5_attribute: $(srcdir)/h5_attribute.c
|
|
h5_mount: $(srcdir)/h5_mount.c
|
|
h5_reference: $(srcdir)/h5_reference.c
|
|
h5_ref2reg: $(srcdir)/h5_ref2reg.c
|
|
h5_drivers: $(srcdir)/h5_drivers.c
|
|
ph5example: $(srcdir)/ph5example.c
|
|
h5_dtransform: $(srcdir)/h5_dtransform.c
|
|
h5_extlink: $(srcdir)/h5_extlink.c $(EXTLINK_DIRS)
|
|
h5_elink_unix2win: $(srcdir)/h5_elink_unix2win.c $(EXTLINK_DIRS)
|
|
h5_shared_mesg: $(srcdir)/h5_shared_mesg.c
|
|
|
|
# How to create EXAMPLEDIR if it doesn't already exist
|
|
$(EXAMPLEDIR):
|
|
-$(top_srcdir)/bin/mkdirs $@
|
|
|
|
# Install and uninstall rules. We install the source files, not the
|
|
# example programs themselves.
|
|
install-data-local:
|
|
@$(MAKE) $(AM_MAKEFLAGS) install-examples
|
|
uninstall-local:
|
|
@$(MAKE) $(AM_MAKEFLAGS) uninstall-examples
|
|
|
|
install-examples: $(EXAMPLEDIR) $(INSTALL_FILES)
|
|
@for f in X $(INSTALL_FILES); do \
|
|
if test $$f != X; then \
|
|
(set -x; $(INSTALL) $(srcdir)/$$f $(EXAMPLEDIR)/. || exit 1);\
|
|
fi; \
|
|
done
|
|
|
|
uninstall-examples:
|
|
@if test -n "$(INSTALL_FILES)" -a -d $(EXAMPLEDIR); then \
|
|
set -x; cd $(EXAMPLEDIR) && $(RM) $(INSTALL_FILES); \
|
|
fi
|
|
|
|
installcheck-local:
|
|
@if test "$(STATIC_SHARED)" = "static, shared"; then \
|
|
H5CCFLAGS="-shlib" $(MAKE) $(AM_MAKEFLAGS) check; \
|
|
$(MAKE) $(AM_MAKEFLAGS) clean; \
|
|
H5CCFLAGS="" $(MAKE) $(AM_MAKEFLAGS) check; \
|
|
elif test "$(STATIC_SHARED)" = "shared"; then \
|
|
H5CCFLAGS="-shlib" $(MAKE) $(AM_MAKEFLAGS) check; \
|
|
else \
|
|
$(MAKE) $(AM_MAKEFLAGS) check; \
|
|
fi
|
|
|
|
# lib/progs/tests targets recurse into subdirectories. build-* targets
|
|
# build files in this directory.
|
|
build-lib: $(LIB)
|
|
build-progs: $(LIB) $(PROGS)
|
|
build-tests: $(LIB) $(PROGS) $(TESTS)
|
|
|
|
# General rule for recursive building targets.
|
|
# BUILT_SOURCES contain targets that need to be built before anything else
|
|
# in the directory (e.g., for Fortran type detection)
|
|
lib progs tests check-s check-p :: $(BUILT_SOURCES)
|
|
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
|
|
@for d in X $(SUBDIRS); do \
|
|
if test $$d != X && test $$d != .; then \
|
|
(set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
|
|
fi; \
|
|
done
|
|
|
|
# General rule for recursive cleaning targets. Like the rule above,
|
|
# but doesn't require building BUILT_SOURCES.
|
|
check-clean ::
|
|
@$(MAKE) $(AM_MAKEFLAGS) build-$@ || exit 1;
|
|
@for d in X $(SUBDIRS); do \
|
|
if test $$d != X && test $$d != .; then \
|
|
(set -x; cd $$d && $(MAKE) $(AM_MAKEFLAGS) $@) || exit 1; \
|
|
fi; \
|
|
done
|
|
|
|
# Tell Automake to build tests when the user types `make all' (this is
|
|
# not its default behavior). Also build EXTRA_LIB and EXTRA_PROG since
|
|
# Automake won't build them automatically, either.
|
|
all-local: $(EXTRA_LIB) $(EXTRA_PROG) $(TESTS)
|
|
|
|
# make install-doc doesn't do anything outside of doc directory, but
|
|
# Makefiles should recognize it.
|
|
# UPDATE: docs no longer reside in this build tree, so this target
|
|
# is depreciated.
|
|
install-doc uninstall-doc:
|
|
@echo "Nothing to be done."
|
|
|
|
# clean up files generated by tests so they can be re-run.
|
|
build-check-clean:
|
|
$(RM) -rf $(CHECK_CLEANFILES)
|
|
|
|
# run check-clean whenever mostlyclean is run
|
|
mostlyclean-local: build-check-clean
|
|
|
|
# check-install is just a synonym for installcheck
|
|
check-install: installcheck
|
|
|
|
# Run each test in order, passing $(TEST_FLAGS) to the program.
|
|
# Since tests are done in a shell loop, "make -i" does apply inside it.
|
|
# Set HDF5_Make_Ignore to a non-blank string to ignore errors inside the loop.
|
|
# The timestamps give a rough idea how much time the tests use.
|
|
#
|
|
# Note that targets in TESTS (defined above) will be built when the user
|
|
# types 'make tests' or 'make check', but only programs in TEST_PROG,
|
|
# TEST_PROG_PARA, or TEST_SCRIPT will actually be executed.
|
|
check-TESTS: test
|
|
|
|
test _test:
|
|
@$(MAKE) build-check-s
|
|
@$(MAKE) build-check-p
|
|
|
|
# Actual execution of check-s.
|
|
build-check-s: $(LIB) $(PROGS) $(TESTS)
|
|
@if test -n "$(TEST_PROG)$(TEST_SCRIPT)"; then \
|
|
echo "===Serial tests in `echo ${PWD} | sed -e s:.*/::` begin `date`==="; \
|
|
fi
|
|
@$(MAKE) $(AM_MAKEFLAGS) _exec_check-s
|
|
@if test -n "$(TEST_PROG)$(TEST_SCRIPT)"; then \
|
|
echo "===Serial tests in `echo ${PWD} | sed -e s:.*/::` ended `date`===";\
|
|
fi
|
|
|
|
_exec_check-s: $(TEST_PROG_CHKEXE) $(TEST_SCRIPT_CHKSH)
|
|
|
|
# The dummy.chkexe here prevents the target from being
|
|
# empty if there are no tests in the current directory.
|
|
# $${log} is the log file.
|
|
# $${tname} is the name of test.
|
|
$(TEST_PROG_CHKEXE) $(TEST_PROG_PARA_CHKEXE) dummy.chkexe_:
|
|
@if test "X$@" != "X.chkexe_" && test "X$@" != "Xdummy.chkexe_"; then \
|
|
tname=$(@:.chkexe_=)$(EXEEXT);\
|
|
log=$(@:.chkexe_=.chklog); \
|
|
echo "============================"; \
|
|
if $(top_srcdir)/bin/newer $(@:.chkexe_=.chkexe) $${tname}; then \
|
|
echo "No need to test $${tname} again."; \
|
|
else \
|
|
echo "============================" > $${log}; \
|
|
if test "X$(FORTRAN_API)" = "Xyes"; then \
|
|
echo "Fortran API: Testing $(HDF5_DRIVER) $${tname} $(TEST_FLAGS)"; \
|
|
echo "Fortran API: $(HDF5_DRIVER) $${tname} $(TEST_FLAGS) Test Log" >> $${log}; \
|
|
elif test "X$(CXX_API)" = "Xyes"; then \
|
|
echo "C++ API: Testing $(HDF5_DRIVER) $${tname} $(TEST_FLAGS)"; \
|
|
echo "C++ API: $(HDF5_DRIVER) $${tname} $(TEST_FLAGS) Test Log" >> $${log};\
|
|
else \
|
|
echo "Testing $(HDF5_DRIVER) $${tname} $(TEST_FLAGS)"; \
|
|
echo "$(HDF5_DRIVER) $${tname} $(TEST_FLAGS) Test Log" >> $${log}; \
|
|
fi; \
|
|
echo "============================" >> $${log}; \
|
|
srcdir="$(srcdir)" \
|
|
$(TIME) $(RUNTESTS) ./$${tname} $(TEST_FLAGS) >> $${log} 2>&1 \
|
|
&& touch $(@:.chkexe_=.chkexe) || \
|
|
(test $$HDF5_Make_Ignore && echo "*** Error ignored") || \
|
|
(cat $${log} && false) || exit 1; \
|
|
echo "" >> $${log}; \
|
|
echo "Finished testing $${tname} $(TEST_FLAGS)" >> $${log}; \
|
|
echo "============================" >> $${log}; \
|
|
echo "Finished testing $${tname} $(TEST_FLAGS)"; \
|
|
cat $${log}; \
|
|
fi; \
|
|
fi
|
|
|
|
# The dummysh.chkexe here prevents the target from being
|
|
# empty if there are no tests in the current directory.
|
|
# $${log} is the log file.
|
|
# $${tname} is the name of test.
|
|
$(TEST_SCRIPT_CHKSH) $(TEST_SCRIPT_PARA_CHKSH) dummysh.chkexe_:
|
|
@if test "X$@" != "X.chkexe_" && test "X$@" != "Xdummysh.chkexe_"; then \
|
|
cmd=$(@:.chkexe_=);\
|
|
tname=`basename $$cmd`;\
|
|
chkname=`basename $(@:.chkexe_=.chkexe)`;\
|
|
log=`basename $(@:.chkexe_=.chklog)`; \
|
|
echo "============================"; \
|
|
if $(top_srcdir)/bin/newer $${chkname} $$cmd $(SCRIPT_DEPEND); then \
|
|
echo "No need to test $${tname} again."; \
|
|
else \
|
|
echo "============================" > $${log}; \
|
|
if test "X$(FORTRAN_API)" = "Xyes"; then \
|
|
echo "Fortran API: Testing $${tname} $(TEST_FLAGS)"; \
|
|
echo "Fortran API: $${tname} $(TEST_FLAGS) Test Log" >> $${log}; \
|
|
elif test "X$(CXX_API)" = "Xyes"; then \
|
|
echo "C++ API: Testing $${tname} $(TEST_FLAGS)"; \
|
|
echo "C++ API: $${tname} $(TEST_FLAGS) Test Log" >> $${log}; \
|
|
else \
|
|
echo "Testing $${tname} $(TEST_FLAGS)"; \
|
|
echo "$${tname} $(TEST_FLAGS) Test Log" >> $${log}; \
|
|
fi; \
|
|
echo "============================" >> $${log}; \
|
|
RUNSERIAL="$(RUNSERIAL)" RUNPARALLEL="$(RUNPARALLEL)" \
|
|
srcdir="$(srcdir)" \
|
|
$(TIME) $(SHELL) $$cmd $(TEST_FLAGS) >> $${log} 2>&1 \
|
|
&& touch $${chkname} || \
|
|
(test $$HDF5_Make_Ignore && echo "*** Error ignored") || \
|
|
(cat $${log} && false) || exit 1; \
|
|
echo "" >> $${log}; \
|
|
echo "Finished testing $${tname} $(TEST_FLAGS)" >> $${log}; \
|
|
echo "============================" >> $${log}; \
|
|
echo "Finished testing $${tname} $(TEST_FLAGS)"; \
|
|
cat $${log}; \
|
|
fi; \
|
|
echo "============================"; \
|
|
fi
|
|
|
|
# Actual execution of check-p.
|
|
build-check-p: $(LIB) $(PROGS) $(TESTS)
|
|
@if test -n "$(TEST_PROG_PARA)$(TEST_SCRIPT_PARA)"; then \
|
|
echo "===Parallel tests in `echo ${PWD} | sed -e s:.*/::` begin `date`==="; \
|
|
fi
|
|
@if test -n "$(TEST_PROG_PARA)"; then \
|
|
echo "**** Hint ****"; \
|
|
echo "Parallel test files reside in the current directory" \
|
|
"by default."; \
|
|
echo "Set HDF5_PARAPREFIX to use another directory. E.g.,"; \
|
|
echo " HDF5_PARAPREFIX=/PFS/user/me"; \
|
|
echo " export HDF5_PARAPREFIX"; \
|
|
echo " make check"; \
|
|
echo "**** end of Hint ****"; \
|
|
fi
|
|
@for test in $(TEST_PROG_PARA) dummy; do \
|
|
if test $$test != dummy; then \
|
|
$(MAKE) $(AM_MAKEFLAGS) $$test.chkexe_ \
|
|
RUNTESTS="$(RUNPARALLEL)" || exit 1; \
|
|
fi; \
|
|
done
|
|
@for test in $(TEST_SCRIPT_PARA) dummy; do \
|
|
if test $$test != dummy; then \
|
|
$(MAKE) $(AM_MAKEFLAGS) $$test.chkexe_ || exit 1; \
|
|
fi; \
|
|
done
|
|
@if test -n "$(TEST_PROG_PARA)$(TEST_SCRIPT_PARA)"; then \
|
|
echo "===Parallel tests in `echo ${PWD} | sed -e s:.*/::` ended `date`===";\
|
|
fi
|
|
|
|
# Run test with different Virtual File Driver
|
|
check-vfd: $(LIB) $(PROGS) $(TESTS)
|
|
@for vfd in $(VFD_LIST) dummy; do \
|
|
if test $$vfd != dummy; then \
|
|
echo "============================"; \
|
|
echo "Testing Virtual File Driver $$vfd"; \
|
|
echo "============================"; \
|
|
$(MAKE) $(AM_MAKEFLAGS) check-clean || exit 1; \
|
|
HDF5_DRIVER=$$vfd $(MAKE) $(AM_MAKEFLAGS) check || exit 1; \
|
|
fi; \
|
|
done
|
|
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
|
# Otherwise a system limit (for SysV at least) may be exceeded.
|
|
.NOEXPORT:
|