--- gforth/vmgen.in 2001/05/01 15:07:04 1.1 +++ gforth/vmgen.in 2008/11/01 22:19:30 1.10 @@ -1,12 +1,12 @@ #! /bin/sh # @configure_input@ -#Copyright (C) 2001 Free Software Foundation, Inc. +#Copyright (C) 2001,2002,2003,2007,2008 Free Software Foundation, Inc. #This file is part of Gforth. #Gforth is free software; you can redistribute it and/or #modify it under the terms of the GNU General Public License -#as published by the Free Software Foundation; either version 2 +#as published by the Free Software Foundation, either version 3 #of the License, or (at your option) any later version. #This program is distributed in the hope that it will be useful, @@ -15,30 +15,35 @@ #GNU General Public License for more details. #You should have received a copy of the GNU General Public License -#along with this program; if not, write to the Free Software -#Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA. +#along with this program; if not, see http://www.gnu.org/licenses/. prefix=@prefix@ test "x$GFORTHDIR" != x || GFORTHDIR=@exec_prefix@/bin -test "x$GFORTHDATADIR" != x || GFORTHDATADIR=$prefix/share/gforth/@VERSION@ +test "x$GFORTHDATADIR" != x || GFORTHDATADIR=$prefix/share/gforth/@PACKAGE_VERSION@ GFORTH=$GFORTHDIR/gforth-fast if test $# = 0 || test $1 = --help || test $1 = -h; then echo "usage: `basename $0` .vmg" exit 0 elif test $1 = --version || test $1 = -v; then - echo "vmgen (@PACKAGE@) @VERSION@" + echo "vmgen (@PACKAGE_NAME@) @PACKAGE_VERSION@" $GFORTH --version - echo 'Copyright (C) 2001 Free Software Foundation, Inc.' + echo 'Copyright (C) 2001,2002,2003,2007,2008 Free Software Foundation, Inc.' echo 'This program is part of Gforth' $GFORTH -e "license bye" exit 0 else true #old shells require this fi +if grep -q vmgen-version $1; then + version=`grep vmgen-version $1|sed 's/^.*vmgen-version //'` +else + version=0.6.2 +fi +prims2x=$GFORTHDATADIR/prims2x$version.fs file=`basename $1 .vmg` -$GFORTH -m 1000000 $GFORTHDATADIR/prims2x.fs -e "c-flag on s\" $1\" ' output-c ' output-c-combined process-file bye" > $file-vm.i && -$GFORTH -m 1000000 $GFORTHDATADIR/prims2x.fs -e "c-flag on s\" $1\" ' output-disasm dup process-file bye" > $file-disasm.i && -$GFORTH -m 1000000 $GFORTHDATADIR/prims2x.fs -e "c-flag on s\" $1\" ' output-gen ' noop process-file bye" > $file-gen.i && -$GFORTH -m 1000000 $GFORTHDATADIR/prims2x.fs -e "c-flag on s\" $1\" ' output-label dup process-file bye" > $file-labels.i && -$GFORTH -m 1000000 $GFORTHDATADIR/prims2x.fs -e "c-flag on s\" $1\" ' output-profile dup process-file bye" > $file-profile.i && -$GFORTH -m 1000000 $GFORTHDATADIR/prims2x.fs -e "c-flag on s\" $1\" ' noop ' output-peephole process-file bye" > $file-peephole.i +$GFORTH -m 1000000 -e "create vmgen" $prims2x -e "c-flag on s\" $file-vm.i\" out-filename 2! s\" $1\" ' output-c ' output-c-combined process-file bye" > $file-vm.i && +$GFORTH -m 1000000 -e "create vmgen" $prims2x -e "c-flag on s\" $1\" ' output-disasm dup process-file bye" > $file-disasm.i && +$GFORTH -m 1000000 -e "create vmgen" $prims2x -e "c-flag on s\" $1\" ' output-gen ' noop process-file bye" > $file-gen.i && +$GFORTH -m 1000000 -e "create vmgen" $prims2x -e "c-flag on s\" $1\" ' output-label dup process-file bye" > $file-labels.i && +$GFORTH -m 1000000 -e "create vmgen" $prims2x -e "c-flag on s\" $1\" ' output-profile dup process-file bye" > $file-profile.i && +$GFORTH -m 1000000 -e "create vmgen" $prims2x -e "c-flag on s\" $1\" ' noop ' output-peephole process-file bye" > $file-peephole.i