hdf5/examples/run-c-ex.sh.in
Larry Knox 60abcfd2e8 [svn-r20482]
Fixed issue HDFFV-5866 (BZ 2156).  Changed scripts to run examples to use specific names for compiled executable files instead of a.out, which did not work on Cywin as it produces a.exe by default.  Removed issue from known problems section of RELEASE.txt.

Tested with Cygwin 1.7.8 on Windows 7.

This line, and those below, will be ignored--

M    release_docs/RELEASE.txt
M    hl/c++/examples/run-hlc++-ex.sh.in
M    hl/fortran/examples/run-hlfortran-ex.sh.in
M    hl/examples/run-hlc-ex.sh.in
M    c++/examples/run-c++-ex.sh.in
M    fortran/examples/run-fortran-ex.sh.in
M    examples/run-c-ex.sh.in
2011-04-12 12:58:57 -05:00

125 lines
3.4 KiB
Bash
Executable File

#! /bin/sh
#
# Copyright by The HDF Group.
# 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.
#
# This file: run-c-ex.sh
# Written by: Larry Knox
# Date: May 11, 2010
#
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
# #
# This script will compile and run the c examples from source files installed #
# in .../share/hdf5_examples/c using h5cc or h5pc. The order for running #
# programs with RunTest in the MAIN section below is taken from the Makefile. #
# The order is important since some of the test programs use data files created #
# by earlier test programs. Any future additions should be placed accordingly. #
# #
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
# Initializations
EXIT_SUCCESS=0
EXIT_FAILURE=1
# Where the tool is installed.
# Note: no '/' after DESTDIR. Explanation in commence.am
prefix="${prefix:-${DESTDIR}@prefix@}"
PARALLEL=@PARALLEL@ # Am I in parallel mode?
AR="@AR@"
RANLIB="@RANLIB@"
if [ "$PARALLEL" = no ]; then
H5TOOL="h5cc" # The tool name
else
H5TOOL="h5pcc" # The tool name
fi
H5TOOL_BIN="${prefix}/bin/${H5TOOL}" # The path of the tool binary
#### Run test ####
RunTest()
{
TEST_EXEC=$1
Test=$1".c"
echo
echo "################# $1 #################"
${H5TOOL_BIN} -o $TEST_EXEC $Test
if [ $? -ne 0 ]
then
echo "messed up compiling $Test"
exit 1
fi
./$TEST_EXEC
}
################## MAIN ##################
if ! test -d red; then
mkdir red
fi
if ! test -d blue; then
mkdir blue
fi
if ! test -d u2w; then
mkdir u2w
fi
# Run tests
if [ $? -eq 0 ]
then
if (RunTest h5_write &&\
rm h5_write &&\
RunTest h5_read &&\
rm h5_read &&\
RunTest h5_extend_write &&\
rm h5_extend_write &&\
RunTest h5_chunk_read &&\
rm h5_chunk_read &&\
RunTest h5_compound &&\
rm h5_compound &&\
RunTest h5_group &&\
rm h5_group &&\
RunTest h5_select &&\
rm h5_select &&\
RunTest h5_attribute &&\
rm h5_attribute &&\
RunTest h5_mount &&\
rm h5_mount &&\
RunTest h5_reference &&\
rm h5_reference &&\
RunTest h5_drivers &&\
rm h5_drivers &&\
RunTest h5_ref2reg &&\
rm h5_ref2reg &&\
RunTest h5_extlink &&\
rm h5_extlink &&\
RunTest h5_elink_unix2win &&\
rm h5_elink_unix2win &&\
RunTest h5_shared_mesg &&\
rm h5_shared_mesg); then
EXIT_VALUE=${EXIT_SUCCESS}
else
EXIT_VALUE=${EXIT_FAILURE}
fi
fi
# Cleanup
rm *.o
rm *.h5
rm -rf red blue u2w
echo
exit $EXIT_VALUE