source: roaraudio/compbins/ast2roar @ 3499:3ea1a9540925

Last change on this file since 3499:3ea1a9540925 was 3499:3ea1a9540925, checked in by phi, 14 years ago

compbin for esddsp

  • Property exe set to *
File size: 2.0 KB
Line 
1#!/bin/sh
2
3OUT="$1"
4IN="$2"
5
6ARGS_END_OPTS_ON_NON_OPT=false
7
8[ -r $IN ] || exit 1;
9
10. ./$IN
11
12{
13 echo '#!/bin/sh'
14 echo
15
16 echo "_args='$ARGS_ADD_OPTS';"
17 cat <<_E_O_F_
18
19while [ -n "\$1" ]
20do
21 k="\$1";
22 shift;
23
24 case "\$k" in
25  '--')
26   break;
27  ;;
28_E_O_F_
29
30 for o in $ARGS_IGNORE_OPTS
31 do
32  on=`echo $o | cut -d: -f1`
33  oa=`echo $o | cut -d: -f2`
34  echo "  '$on')";
35  if $oa
36  then
37   echo '   shift;';
38  fi
39  echo '  ;;';
40 done
41
42 for o in $ARGS_PASS_OPTS
43 do
44  on=`echo $o | cut -d: -f1`
45  oa=`echo $o | cut -d: -f2`
46  echo "  '$on')";
47  if $oa
48  then
49   echo '   _args="$_args '"$on"' $1";';
50   echo '   shift;';
51  else
52   echo '   _args="$_args '"$on"'";';
53  fi
54  echo '  ;;';
55 done
56
57 for o in $ARGS_MAP_OPTS
58 do
59  on=`echo $o | cut -d: -f1`
60  oa=`echo $o | cut -d: -f2`
61  or=`echo $o | cut -d: -f3`
62  echo "  '$on')";
63  if $oa
64  then
65   echo '   _args="$_args '"$or"' $1";';
66   echo '   shift;';
67  else
68   echo '   _args="$_args '"$or"'";';
69  fi
70  echo '  ;;';
71 done
72
73 for o in $ARGS_DEEQ_OPTS
74 do
75  echo "  '$o='*)";
76  echo '   _para=`echo "$k" | cut -d= -f2`;';
77  echo '   _args="$_args '"$o"' $_para";';
78  echo '  ;;';
79 done
80
81 for o in $ARGS_ENV_OPTS
82 do
83  on=`echo $o | cut -d: -f1`
84  or=`echo $o | cut -d: -f2`
85  echo "  '$on')";
86  echo "   export $or=\"\$1\"";
87  echo '   shift;';
88  echo '  ;;';
89  echo "  '$on='*)";
90  echo '   _para=`echo "$k" | cut -d= -f2`;';
91  echo "   export $or=\"\$_para\"";
92  echo '  ;;';
93 done
94
95 cat <<_E_O_F_
96  '-'*)
97   echo "Unknown option" >&2;
98   exit 1;
99  ;;
100  *)
101_E_O_F_
102
103 if $ARGS_PASS_NON_OPTS
104 then
105  echo '   _args="$_args $k";';
106  if $ARGS_END_OPTS_ON_NON_OPT
107  then
108   echo '   break;';
109  fi
110 else
111  echo '   echo "Unknown option" >&2;';
112  echo '   exit 1;';
113 fi
114
115 cat <<_E_O_F_
116  ;;
117 esac;
118done
119
120_E_O_F_
121
122 if $ARGS_PASS_NON_OPTS
123 then
124  echo '_args="$_args $*";';
125 else
126  echo 'if [ "$*" != '' ]';
127  echo 'then';
128  echo ' echo "Unknown option" >&2;';
129  echo ' exit 1;';
130  echo 'fi';
131 fi
132
133 cat <<_E_O_F_
134
135exec $RNAME \$_args
136_E_O_F_
137
138 echo
139 echo '#ll'
140} > $OUT
141
142chmod a+rx $OUT
143
144exit 0;
145
146#ll
Note: See TracBrowser for help on using the repository browser.