File: get_mcdoc_snippets.sh

package info (click to toggle)
mccode 3.5.19%2Bds5-2
  • links: PTS, VCS
  • area: main
  • in suites: sid, trixie
  • size: 1,113,256 kB
  • sloc: ansic: 40,697; python: 25,137; yacc: 8,438; sh: 5,405; javascript: 4,596; lex: 1,632; cpp: 742; perl: 296; lisp: 273; makefile: 226; fortran: 132
file content (35 lines) | stat: -rwxr-xr-x 961 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#!/bin/sh
#
# Shellscript snippet for extracting mcdoc info from named components in subdir
#
#

echo "$0 $1 $2 $3"
pwd
ls $1*
DIRNAME=`basename $1`
PW=$PWD
SRCDIR=$2
echo "PW=$PWD, DN=$DIRNAME, SD=$SRCDIR"
PREFIX=$SRCDIR/COMPprefix
HEADER=$SRCDIR/COMPheader
FOOTER=$SRCDIR/COMPfooter

#search upwards for comps directory
COMP_SOURCE_DIR=$PW
while [ ! -d $COMP_SOURCE_DIR/mcstas-comps ] && [ "x$COMP_SOURCE_DIR" != "x" ]
do
  COMP_SOURCE_DIR=${COMP_SOURCE_DIR%/*}
done

for COMP in `cat $SRCDIR/$DIRNAME/mcdoc_index`
do
    echo "get_mcdoc_snippets: generating $DIRNAME/${COMP}.parms"
    sed s/@COMP@/$COMP/g $PREFIX | sed s/@CAT@/$DIRNAME/g > $DIRNAME/$COMP.parms
    cat $HEADER >> $DIRNAME/$COMP.parms
    cd $COMP_SOURCE_DIR/mcstas-comps
    mcdoc.pl --exact -t $COMP.comp | grep -A1000 \#\ Input | grep -B1000 \#\ Output | grep -ve ^\ *$ | grep -v \# >> $PW/$DIRNAME/$COMP.parms
    cd $PW
    cat $FOOTER >> $DIRNAME/$COMP.parms
done
touch $DIRNAME.done