--- gforth/BUILD-FROM-SCRATCH 2000/06/10 21:10:50 1.2 +++ gforth/BUILD-FROM-SCRATCH 2007/07/06 10:36:25 1.19 @@ -1,38 +1,78 @@ # Procedures to build gforth from the CVS sources + +#use this with parameters and env variables like "configure" + +#Copyright (C) 2000,2002,2003,2006 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 +#of the License, or (at your option) any later version. + +#This program is distributed in the hope that it will be useful, +#but WITHOUT ANY WARRANTY; without even the implied warranty of +#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.#See the +#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. + + # created: 2may00jaw -# To build gforth from scratch you need autoconf and automake. +# To build gforth from scratch you need autoconf, automake and a +# gforth-0.6.2 # This file can be used as shell script. If you make the environment # variable GFORTH point to an existing gforth installation, this -# script takes over kernel and primitve files. +# script takes over the whole build process and will produce the +# kernel kernel images from the sources as well -# try to guess a previous version of Gforth +# try to guess a installed gforth -if [ "$GFORTH" == "" ] +if [ "$GFORTH"xx = "xx" ]; then + rm -f gforth GFORTH=`which gforth` + if [ "$GFORTH"xx = "xx" ]; then + echo 'BUILD-FROM-SCRATCH needs a working gforth (in environment variable GFORTH)' + exit 1 + fi + GFORTH="$GFORTH -m4M" fi # makes a aclocal.m4 which includes the automake macros for autconf -aclocal +aclocal && # generate configure script -autoconf +autoconf && # generate header files like engine/config.h.in -autoheader +autoheader && +echo timestamp >stamp-h.in + +# run configure Script -# run configure script +./configure "$@" && -./configure $* +# if you have specified a previous Gforth, you can safely run make now +# with FORTHK and FORTHP changed appropriately. -# if you have specified a previous Gforth, you can savely run make now -# with FORTHK and FORTHP changed appropriate. +#a local gforth.fi probably does not work with $GFORTH +rm -f gforth.fi && -if [ "$GFORTH" != "" ] +if [ "$GFORTH"xx != "xx" ] then - make FORTHK="$GFORTH" + bootstrap=engine/prim.i" "`echo kernl{16,32,64}{b,l}.fi` + echo 'Running: make BUILDFORTH="'$GFORTH'" FORTHP="'$GFORTH'" '$bootstrap && + make BUILDFORTH="$GFORTH" FORTHP="$GFORTH" engine/prim.i $bootstrap && + echo Running: make && + make && + make doc && + make more fi