--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/components/stdcxx/Solaris/run_examples.sh Thu Jul 14 11:26:11 2011 -0700
@@ -0,0 +1,490 @@
+#!/bin/bash
+#
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+# Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+#
+#
+
+unset LD_LIBRARY_PATH
+unset LD_LIBRARY_PATH_32
+unset LD_LIBRARY_PATH_64
+unset LD_PRELOAD
+unset LD_PRELOAD_32
+unset LD_PRELOAD_64
+
+export TOPDIR="../../"
+export DO_CLEANUP="no"
+export INDEX_HTML="index.html"
+export LD_LIBRARY_PATH="../lib"
+export LD_LIBRARY_PATH_32="../lib"
+export LD_LIBRARY_PATH_64="../lib"
+
+UNKNOWN_ARG=no
+PRINT_HELP=no
+
+check_args() {
+ while [ "$#" -gt 0 ] ; do
+ UNKNOWN_ARG=no
+ case "$1" in
+ --topdir=*)
+ TOPDIR=`echo $1 | sed "s,^--topdir=\(.*\),\1,"`
+ ;;
+ --cleanup)
+ DO_CLEANUP=yes
+ ;;
+ --help)
+ PRINT_HELP=yes
+ ;;
+ *)
+ UNKNOWN_ARG=yes
+ ;;
+ esac
+
+ if [ "${UNKNOWN_ARG}" = "yes" ] ; then
+ echo "$1: Invalid argument"
+ PRINT_HELP=yes
+ shift
+ continue
+ fi
+
+ shift
+ done
+
+ export TOPDIR DO_CLEANUP
+
+ if [ "$PRINT_HELP" = "yes" ] || [ "$UNKNOWN_ARG" = "yes" ] ; then
+ echo "Usage [1]: `basename $0` [ --topdir=\$(top_srcdir) ]"
+ echo "Usage [2]: `basename $0` [ --cleanup ]"
+ exit 1
+ fi
+}
+
+setup_index_html() {
+ cat /dev/null > ${INDEX_HTML}
+}
+
+run_examples() {
+ if [ "${DO_CLEANUP}" = "yes" ] ; then
+ return
+ fi
+
+ for file in \
+ "accumulate" \
+ "adj_diff" \
+ "advance" \
+ "alg1" \
+ "alg2" \
+ "alg3" \
+ "alg4" \
+ "alg5" \
+ "alg6" \
+ "alg7" \
+ "auto_ptr" \
+ "binary_search" \
+ "binders" \
+ "bitset" \
+ "codecvt" \
+ "codecvt1" \
+ "collate" \
+ "complex" \
+ "complx" \
+ "copyex" \
+ "count" \
+ "ctype" \
+ "deque" \
+ "distance" \
+ "dynatype" \
+ "equal" \
+ "equal_range" \
+ "failure" \
+ "filebuf" \
+ "fill" \
+ "find" \
+ "find_end" \
+ "find_first_of" \
+ "fmtflags_manip" \
+ "for_each" \
+ "fstream" \
+ "funct_ob" \
+ "generate" \
+ "graph" \
+ "gslice" \
+ "gslice_array" \
+ "has_facet" \
+ "heap_ops" \
+ "icecream" \
+ "ifstream" \
+ "includes" \
+ "indirect_array" \
+ "inner_product" \
+ "insert_iterator" \
+ "insert_wchar" \
+ "isalnum" \
+ "istream1" \
+ "istreambuf_iterator" \
+ "istringstream" \
+ "istrstream" \
+ "lex_compare" \
+ "limits" \
+ "list" \
+ "locale" \
+ "map" \
+ "mask_array" \
+ "max" \
+ "max_elem" \
+ "mbsrtowcs" \
+ "memfunc" \
+ "memfunref" \
+ "merge" \
+ "messages" \
+ "mismatch" \
+ "money_get" \
+ "moneypunct" \
+ "moneyput" \
+ "multimap" \
+ "multiset" \
+ "mutex" \
+ "negator" \
+ "nthelem" \
+ "num_get" \
+ "numpunct" \
+ "num_put" \
+ "ostream" \
+ "ostreambuf_iterator" \
+ "partial_sort" \
+ "partial_sum" \
+ "partition" \
+ "permutation" \
+ "pnt2fnct" \
+ "priority_queue" \
+ "queue" \
+ "radix" \
+ "random_shuffle" \
+ "remove" \
+ "replace" \
+ "reverse" \
+ "reverse_iterator" \
+ "rotate" \
+ "rwexcept" \
+ "search" \
+ "set_diff" \
+ "setex" \
+ "set_intr" \
+ "set_sym_diff" \
+ "set_union" \
+ "sieve" \
+ "slice" \
+ "slice_array" \
+ "sort" \
+ "stack" \
+ "stdexcept" \
+ "stringbuf" \
+ "strstream" \
+ "strstreambuf" \
+ "swap" \
+ "tele" \
+ "teller" \
+ "time_get" \
+ "time_put" \
+ "toupper" \
+ "transform" \
+ "ul_bound" \
+ "unique" \
+ "use_facet" \
+ "valarray" \
+ "vector" \
+ "widwork" \
+ "wostream" \
+ "wstringstream"
+ do
+ echo "------------------------------------------------------------"
+ if [ -f ${file} ] ; then
+ echo -n "Running example program ${file} ..."
+ logfile="${file}.out"
+ ./${file} > ${logfile} 2>&1
+ ret=$?
+ if [ ${ret} -eq 0 ] ; then
+ echo "SUCCESS."
+ else
+ echo "FAIL."
+ fi
+ echo "<a href=\"${file}.out\">${file}.out</a>" >> ${INDEX_HTML}
+ echo "</br>" >> ${INDEX_HTML}
+ else
+ echo "Example program ${file} not found. Skipping."
+ fi
+ echo "------------------------------------------------------------"
+ done
+}
+
+run_examples_with_input() {
+ if [ "${DO_CLEANUP}" = "yes" ] ; then
+ return
+ fi
+
+ echo "------------------------------------------------------------"
+ echo -n "Running example program spell ... "
+ echo spelltest | ./spell > ./spell.out 2>&1
+ ret=$?
+ if [ ${ret} -eq 0 ] ; then
+ echo "SUCCESS."
+ else
+ echo "FAIL."
+ fi
+ echo "------------------------------------------------------------"
+ echo "<a href=\"spell.out\">spell.out</a>" >> ${INDEX_HTML}
+ echo "</br>" >> ${INDEX_HTML}
+
+ echo "------------------------------------------------------------"
+ echo -n "Running example program stocks ... "
+ echo y y q | ./stocks >> ./stocks.out 2>&1
+ ret=$?
+ if [ ${ret} -eq 0 ] ; then
+ echo "SUCCESS."
+ else
+ echo "FAIL."
+ fi
+ echo "------------------------------------------------------------"
+ echo "<a href=\"stocks.out\">stocks.out</a>" >> ${INDEX_HTML}
+ echo "</br>" >> ${INDEX_HTML}
+
+ echo "------------------------------------------------------------"
+ echo -n "Running example program calc ... "
+ echo '5 1 2 + 4 * 3 - +' p q | ./calc >> ./calc.out 2>&1
+ ret=$?
+ if [ ${ret} -eq 0 ] ; then
+ echo "SUCCESS."
+ else
+ echo "FAIL."
+ fi
+ echo "------------------------------------------------------------"
+ echo "<a href=\"calc.out\">calc.out</a>" >> ${INDEX_HTML}
+ echo "</br>" >> ${INDEX_HTML}
+
+ echo "------------------------------------------------------------"
+ echo -n "Running example program concord ... "
+ echo 'this is a line of text' | ./concord >> ./concord.out 2>&1
+ ret=$?
+ if [ ${ret} -eq 0 ] ; then
+ echo "SUCCESS."
+ else
+ echo "FAIL."
+ fi
+ echo "------------------------------------------------------------"
+ echo "<a href=\"concord.out\">concord.out</a>" >> ${INDEX_HTML}
+ echo "</br>" >> ${INDEX_HTML}
+
+ echo "------------------------------------------------------------"
+ echo -n "Running example program money_manip ... "
+ echo '1234.56' | ./money_manip >> ./money_manip.out 2>&1
+ ret=$?
+ if [ ${ret} -eq 0 ] ; then
+ echo "SUCCESS."
+ else
+ echo "FAIL."
+ fi
+ echo "------------------------------------------------------------"
+ echo "<a href=\"money_manip.out\">money_manip.out</a>" >> ${INDEX_HTML}
+ echo "</br>" >> ${INDEX_HTML}
+
+ echo "------------------------------------------------------------"
+ echo -n "Running example program string ... "
+ echo 'This is a test string' | ./string >> ./string.out 2>&1
+ ret=$?
+ if [ ${ret} -eq 0 ] ; then
+ echo "SUCCESS."
+ else
+ echo "FAIL."
+ fi
+ echo "------------------------------------------------------------"
+ echo "<a href=\"string.out\">string.out</a>" >> ${INDEX_HTML}
+ echo "</br>" >> ${INDEX_HTML}
+
+ echo "------------------------------------------------------------"
+ echo -n "Running example program time_manip ... "
+ echo 'Thu Sep 17 13:23:53 2009' | ./time_manip >> ./time_manip.out 2>&1
+ ret=$?
+ if [ ${ret} -eq 0 ] ; then
+ echo "SUCCESS."
+ else
+ echo "FAIL."
+ fi
+ echo "------------------------------------------------------------"
+ echo "<a href=\"time_manip.out\">time_manip.out</a>" >> ${INDEX_HTML}
+ echo "</br>" >> ${INDEX_HTML}
+}
+
+do_cleanup() {
+ if [ "${DO_CLEANUP}" = "no" ] ; then
+ return
+ fi
+
+ for file in \
+ "accumulate" \
+ "adj_diff" \
+ "advance" \
+ "alg1" \
+ "alg2" \
+ "alg3" \
+ "alg4" \
+ "alg5" \
+ "alg6" \
+ "alg7" \
+ "auto_ptr" \
+ "binary_search" \
+ "binders" \
+ "bitset" \
+ "calc" \
+ "codecvt" \
+ "codecvt1" \
+ "collate" \
+ "complex" \
+ "complx" \
+ "concord" \
+ "copyex" \
+ "count" \
+ "ctype" \
+ "deque" \
+ "distance" \
+ "dynatype" \
+ "equal" \
+ "equal_range" \
+ "failure" \
+ "filebuf" \
+ "fill" \
+ "find" \
+ "find_end" \
+ "find_first_of" \
+ "fmtflags_manip" \
+ "for_each" \
+ "fstream" \
+ "funct_ob" \
+ "generate" \
+ "graph" \
+ "gslice" \
+ "gslice_array" \
+ "has_facet" \
+ "heap_ops" \
+ "icecream" \
+ "ifstream" \
+ "includes" \
+ "indirect_array" \
+ "inner_product" \
+ "insert_iterator" \
+ "insert_wchar" \
+ "isalnum" \
+ "istream1" \
+ "istreambuf_iterator" \
+ "istringstream" \
+ "istrstream" \
+ "lex_compare" \
+ "limits" \
+ "list" \
+ "locale" \
+ "map" \
+ "mask_array" \
+ "max" \
+ "max_elem" \
+ "mbsrtowcs" \
+ "memfunc" \
+ "memfunref" \
+ "merge" \
+ "messages" \
+ "mismatch" \
+ "money_get" \
+ "moneypunct" \
+ "moneyput" \
+ "money_manip" \
+ "multimap" \
+ "multiset" \
+ "mutex" \
+ "negator" \
+ "nthelem" \
+ "num_get" \
+ "numpunct" \
+ "num_put" \
+ "ostream" \
+ "ostreambuf_iterator" \
+ "partial_sort" \
+ "partial_sum" \
+ "partition" \
+ "permutation" \
+ "pnt2fnct" \
+ "priority_queue" \
+ "queue" \
+ "radix" \
+ "random_shuffle" \
+ "remove" \
+ "replace" \
+ "reverse" \
+ "reverse_iterator" \
+ "rotate" \
+ "rwexcept" \
+ "search" \
+ "set_diff" \
+ "setex" \
+ "set_intr" \
+ "set_sym_diff" \
+ "set_union" \
+ "sieve" \
+ "slice" \
+ "slice_array" \
+ "sort" \
+ "spell" \
+ "stack" \
+ "stdexcept" \
+ "stocks" \
+ "string" \
+ "stringbuf" \
+ "strstream" \
+ "strstreambuf" \
+ "swap" \
+ "tele" \
+ "teller" \
+ "time_get" \
+ "time_manip" \
+ "time_put" \
+ "toupper" \
+ "transform" \
+ "ul_bound" \
+ "unique" \
+ "use_facet" \
+ "valarray" \
+ "vector" \
+ "widwork" \
+ "wostream" \
+ "wstringstream"
+ do
+ rm -f "${file}.out"
+ done
+
+ rm -f core
+}
+
+check_args $@
+run_examples
+run_examples_with_input
+do_cleanup
+
+exit 0
+
+