# Top level configure fragment for GNU FORTRAN. # Copyright (C) 1995 Free Software Foundation, Inc. #This file is part of GNU Fortran. #GNU Fortran 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, or (at your option) #any later version. #GNU Fortran 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 GNU Fortran; see the file COPYING. If not, write to #the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA #02111-1307, USA. # Configure looks for the existence of this file to auto-config each language. # We define several parameters used by configure: # # language - name of language as it would appear in $(LANGUAGES) # compilers - value to add to $(COMPILERS) # stagestuff - files to add to $(STAGESTUFF) # diff_excludes - files to ignore when building diffs between two versions. if grep DECL_STATIC_CONSTRUCTOR $srcdir/tree.h >/dev/null; then if grep flag_move_all_movables $srcdir/toplev.c >/dev/null; then true else echo "You haven't applied the patches to the GCC 2.7.x distribution in" echo "$srcdir as described in g77/README.g77 and gcc/f/gbe/README." echo "" exit 1 fi else if grep put_pending_sizes $srcdir/stor-layout.c >/dev/null; then true else echo "You haven't applied the patches to the GCC 2.6.x distribution in" echo "$srcdir as described in g77/README.g77 and gcc/f/gbe/README." echo "" exit 1 fi fi language="f77" compilers="f771\$(exeext)" case "$arguments" in # *--enable-f2c* | *-enable-f2c*) # echo "f77: enabling f2c." # stagestuff="g77 g77-cross f771 libf2c.a f2c fc" ;; # stagestuff="g77 g77-cross f771 libf2c.a f2c" ;; *) stagestuff="g77\$(exeext) g77-cross\$(exeext) f771\$(exeext) libf2c.a" ;; esac diff_excludes="-x \"f/g77.info*\"" # Create the runtime library directory tree if necessary. test -d f || mkdir f test -d f/runtime || mkdir f/runtime test -d f/runtime/libI77 || mkdir f/runtime/libI77 test -d f/runtime/libF77 || mkdir f/runtime/libF77 # Need to make top-level stageN directory trees, else if needed # later by gcc/Makefile, it'll make only the first levels and # the language subdirectory levels, not the runtime stuff. for stageN in stage1 stage2 stage3 stage4 do test -d $stageN || mkdir $stageN test -d $stageN/f || mkdir $stageN/f test -d $stageN/f/runtime || mkdir $stageN/f/runtime test -d $stageN/f/runtime/libF77 || mkdir $stageN/f/runtime/libF77 test -d $stageN/f/runtime/libI77 || mkdir $stageN/f/runtime/libI77 done # Make links into top-level stageN from target trees. for stageN in stage1 stage2 stage3 stage4 include do $remove -f f/$stageN f/runtime/$stageN f/runtime/libF77/$stageN \ f/runtime/libI77/$stageN (cd f; $symbolic_link ../$stageN . 2>/dev/null) (cd f/runtime; $symbolic_link ../$stageN . 2>/dev/null) (cd f/runtime/libF77; $symbolic_link ../$stageN . 2>/dev/null) (cd f/runtime/libI77; $symbolic_link ../$stageN . 2>/dev/null) done case "$srcdir" in .) ;; *) echo echo "Building f77 outside the source directory is likely to not work" echo "unless you are using GNU make or a compatible VPATH mechanism." echo ;; esac