[Compbench-devel] CompBenchmarks++/Benchmark benchmarks-genliblist.sh, NONE, 1.1 benchmarks-genlib
Brought to you by:
xfred
From: Frederic T. <xf...@us...> - 2006-11-01 13:03:36
|
Update of /cvsroot/compbench/CompBenchmarks++/Benchmark In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv11467 Added Files: benchmarks-genliblist.sh benchmarks-genlibwrapper.sh Log Message: Dynamic library handling inferface wrapper scripts. --- NEW FILE: benchmarks-genlibwrapper.sh --- #!/bin/sh PACKAGE=`echo $1 | cut -f2 -d'-' | cut -f1 -d'.'` if test "$2"x = "x"; then PREFIX=. else PREFIX=$2 fi number=0 idx=0 cat <<EOF CBMBenchmark *cbmlib_getBenchmark(int idx, CBMSystem *_system) { switch(idx) { EOF for l in $(cat $PREFIX/benchmarks.list); do package=`echo $l | cut -f2 -d':'` bench=`echo $l | cut -f3 -d':'` if test ! "$package" = "$PACKAGE"; then continue; fi number=`expr $number + 1` cat <<EOF case $idx: return(new CBMBenchmark$bench(_system)); ;; EOF idx=`expr $idx + 1` done cat <<EOF default: return(0); ;; } } EOF cat <<EOF CBMBenchmark *cbmlib_getBenchmarkByName(char *bench_id, CBMSystem *_system) { std::string tmp = bench_id; EOF for l in $(cat $PREFIX/benchmarks.list); do package=`echo $l | cut -f2 -d':'` bench=`echo $l | cut -f1 -d':'` object=`echo $l | cut -f3 -d':'` if test ! "$package" = "$PACKAGE"; then continue; fi cat <<EOF if (tmp=="$bench") { return(new CBMBenchmark$object(_system)); } EOF done cat <<EOF return(0); } EOF cat <<EOF int cbmlib_getBenchmarkNumber(void) { return($number); } EOF --- NEW FILE: benchmarks-genliblist.sh --- #!/bin/sh if test "$1"x = "x"; then PREFIX=. else PREFIX=$1 fi for l in $(grep -v '^#' $PREFIX/benchmarks.list); do benchmark=`echo $l | cut -f1 -d':'` package=`echo $benchmark | cut -f1 -d'-'` cat <<EOF B=cbmlib_bench_load("$benchmark", system); if (B) B->display(); EOF done |