# HG changeset patch # User jwe # Date 973012713 0 # Node ID ea62136d86e8ecbc0f98107d9081a188b125d3cc # Parent 1840434037760b05c8b588946b40bcd581169db8 [project @ 2000-10-31 17:17:26 by jwe] diff --git a/ChangeLog b/ChangeLog --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,13 @@ +2000-10-31 John W. Eaton + + * missing: New file, modified from the missing script provided by + automake (never create files, just exit with failure status). + * aclocal.m4 (OCTAVE_PROG_BISON, OCTAVE_PROG_FLEX, OCTAVE_PROG_GPERF): + Use $(top_srcdir)/missing as replacement script. + + * aclocal.m4 (OCTAVE_PROG_FLEX, OCTAVE_PROG_BISON): New macros. + * configure.in: Use them. + 2000-10-27 John W. Eaton * autogen.sh: Don't run configure. diff --git a/aclocal.m4 b/aclocal.m4 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -737,6 +737,45 @@ fi ]) dnl +dnl Check for flex +dnl +AC_DEFUN(OCTAVE_PROG_FLEX, [ +### For now, don't define LEXLIB to be -lfl -- we don't use anything in +### it, and it might not be installed. +### +### Also make sure that we generate an interactive scanner if we are +### using flex. + AC_PROG_LEX + case "$LEX" in + flex*) + LFLAGS="-t -I" + AC_MSG_RESULT([defining LFLAGS to be $LFLAGS]) + LEXLIB= + ;; + *) + LEX='$(top_srcdir)/missing flex' + warn_flex="I didn't find flex, but it's only a problem if you need to reconstruct lex.cc" + AC_MSG_WARN($warn_flex) + ;; + esac + AC_SUBST(LFLAGS) +]) +dnl +dnl Check for bison +dnl +AC_DEFUN(OCTAVE_PROG_BISON, [ + AC_PROG_YACC + case "$YACC" in + bison*) + ;; + *) + YACC='$(top_srcdir)/missing bison' + warn_bison="I didn't find bison, but it's only a problem if you need to reconstruct parse.cc" + AC_MSG_WARN($warn_bison) + ;; + esac +]) +dnl dnl What pager should we use? dnl AC_DEFUN(OCTAVE_PROG_PAGER, @@ -833,6 +872,7 @@ AC_DEFUN(OCTAVE_PROG_GPERF, [AC_CHECK_PROG(GPERF, gperf, gperf, []) if test -z "$GPERF"; then + GPERF='$(top_srcdir)/missing gperf' warn_gperf="I didn't find gperf, but it's only a problem if you need to reconstruct oct-gperf.h" AC_MSG_WARN($warn_gperf) fi diff --git a/configure.in b/configure.in --- a/configure.in +++ b/configure.in @@ -21,7 +21,7 @@ ### Software Foundation, 59 Temple Place - Suite 330, Boston, MA ### 02111-1307, USA. -AC_REVISION($Revision: 1.335 $) +AC_REVISION($Revision: 1.336 $) AC_PREREQ(2.9) AC_INIT(src/octave.cc) AC_CONFIG_HEADER(config.h) @@ -1178,38 +1178,9 @@ ### Checks for other programs used for building, testing, installing, ### and running Octave. -### -### For now, don't define LEXLIB to be -lfl -- we don't use anything in -### it, and it might not be installed. -### -### Also make sure that we generate an interactive scanner if we are -### using flex. -AC_PROG_LEX -case "$LEX" in - flex*) - LFLAGS="-t -I" - AC_MSG_RESULT([defining LFLAGS to be $LFLAGS]) - LEXLIB= - ;; - *) - LFLAGS="-t" - AC_MSG_RESULT([defining LFLAGS to be $LFLAGS]) - warn_flex="I didn't find flex, but it's only a problem if you need to reconstruct lex.cc" - AC_MSG_WARN($warn_flex) - ;; -esac -AC_SUBST(LFLAGS) - -AC_PROG_YACC -case "$YACC" in - bison*) - ;; - *) - warn_bison="I didn't find bison, but it's only a problem if you need to reconstruct parse.cc" - AC_MSG_WARN($warn_bison) - ;; -esac +OCTAVE_PROG_FLEX +OCTAVE_PROG_BISON AC_PROG_LN_S diff --git a/missing b/missing new file mode 100755 --- /dev/null +++ b/missing @@ -0,0 +1,163 @@ +#! /bin/sh +# Common stub for a few missing GNU programs while installing. +# Copyright (C) 1996, 1997 Free Software Foundation, Inc. +# Franc,ois Pinard , 1996. + +# This program 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. + +# 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-1307, USA. + +if test $# -eq 0; then + echo 1>&2 "Try \`$0 --help' for more information" + exit 1 +fi + +fail_missing=false + +case "$1" in + + -h|--h|--he|--hel|--help) + echo "\ +$0 [OPTION]... PROGRAM [ARGUMENT]... + +Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an +error status if there is no known handling for PROGRAM. + +Options: + -h, --help display this help and exit + -v, --version output version information and exit + +Supported PROGRAM values: + aclocal touch file \`aclocal.m4' + autoconf touch file \`configure' + autoheader touch file \`config.h.in' + automake touch all \`Makefile.in' files + bison create \`y.tab.[ch]', if possible, from existing .[ch] + flex create \`lex.yy.c', if possible, from existing .c + gperf + lex create \`lex.yy.c', if possible, from existing .c + makeinfo touch the output file + yacc create \`y.tab.[ch]', if possible, from existing .[ch]" + ;; + + -v|--v|--ve|--ver|--vers|--versi|--versio|--version) + echo "missing - GNU libit 0.0" + ;; + + -*) + echo 1>&2 "$0: Unknown \`$1' option" + echo 1>&2 "Try \`$0 --help' for more information" + exit 1 + ;; + + aclocal) + echo 1>&2 "\ +WARNING: \`$1' is missing on your system. You should only need it if + you modified \`acinclude.m4' or \`configure.in'. You might want + to install the \`Automake' and \`Perl' packages. Grab them from + any GNU archive site." + fail_missing=true + ;; + + autoconf) + echo 1>&2 "\ +WARNING: \`$1' is missing on your system. You should only need it if + you modified \`configure.in'. You might want to install the + \`Autoconf' and \`GNU m4' packages. Grab them from any GNU + archive site." + fail_missing=true + ;; + + autoheader) + echo 1>&2 "\ +WARNING: \`$1' is missing on your system. You should only need it if + you modified \`acconfig.h' or \`configure.in'. You might want + to install the \`Autoconf' and \`GNU m4' packages. Grab them + from any GNU archive site." + fail_missing=true + ;; + + automake) + echo 1>&2 "\ +WARNING: \`$1' is missing on your system. You should only need it if + you modified \`Makefile.am', \`acinclude.m4' or \`configure.in'. + You might want to install the \`Automake' and \`Perl' packages. + Grab them from any GNU archive site." + fail_missing=true + ;; + + bison|yacc) + echo 1>&2 "\ +WARNING: \`$1' is missing on your system. You should only need it if + you modified a \`.y' file. You may need the \`Bison' package + in order for those modifications to take effect. You can get + \`Bison' from any GNU archive site." + fail_missing=true + ;; + + lex|flex) + echo 1>&2 "\ +WARNING: \`$1' is missing on your system. You should only need it if + you modified a \`.l' file. You may need the \`Flex' package + in order for those modifications to take effect. You can get + \`Flex' from any GNU archive site." + fail_missing=true + ;; + + gperf) + echo 1>&2 "\ +WARNING: \`$1' is missing on your system. You should only need it if + you modified a \`.gperf' file. You may need the \`gperf' package + in order for those modifications to take effect. You can get + \`gperf' from any GNU archive site." + fail_missing=true + ;; + + makeinfo) + echo 1>&2 "\ +WARNING: \`$1' is missing on your system. You should only need it if + you modified a \`.texi' or \`.texinfo' file, or any other file + indirectly affecting the aspect of the manual. The spurious + call might also be the consequence of using a buggy \`make' (AIX, + DU, IRIX). You might want to install the \`Texinfo' package or + the \`GNU make' package. Grab either from any GNU archive site." + fail_missing=true + ;; + + *) + echo 1>&2 "\ +WARNING: \`$1' is needed, and you do not seem to have it handy on your + system. You might have modified some files without having the + proper tools for further handling them. Check the \`README' file, + it often tells you about the needed prerequirements for installing + this package. You may also peek at any GNU archive site, in case + some other package would contain this missing \`$1' program." + fail_missing=true + ;; +esac + +if $fail_missing; then + echo 1>&2 "\ + + You may also need \`$1' if you obtained this package from the CVS + archive because files that can be automatically generated are not + considered source files and are not checked in to the CVS archive. + + You may also need \`$1' if you ran make maintainer-clean and + removed files that can be automatically generated but that are + normally distributed as part of the package for convenience." + exit 1 +fi + +exit 0