For PR738:
Demote check for bison from error to warning and make sure that the
makefile can handle an empty definition for BISON variable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29861 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/Makefile.rules b/Makefile.rules
index 42c367a..808e2b5 100644
--- a/Makefile.rules
+++ b/Makefile.rules
@@ -1315,10 +1315,14 @@
# Rule for building the bison based parsers...
$(PROJ_SRC_DIR)/%.cpp $(PROJ_SRC_DIR)/%.h : $(PROJ_SRC_DIR)/%.y
+ifneq ($(BISON),)
$(Echo) "Bisoning $*.y"
$(Verb) $(BISON) -v -d -p $(<F:%Parser.y=%) -o $*.tab.c $<
$(Verb) $(MV) -f $*.tab.c $(PROJ_SRC_DIR)/$*.cpp
$(Verb) $(MV) -f $*.tab.h $(PROJ_SRC_DIR)/$*.h
+else
+ $(Echo) "Bison of $*.y SKIPPED -- bison not found"
+endif
# IFF the .y file has changed since it was last checked into CVS, copy the .y
# file to .y.cvs and the generated .cpp/.h file to .cpp.cvs/.h.cvs. We use this
diff --git a/autoconf/m4/bison.m4 b/autoconf/m4/bison.m4
index e186af0..48b83cc 100644
--- a/autoconf/m4/bison.m4
+++ b/autoconf/m4/bison.m4
@@ -8,7 +8,8 @@
AC_DEFUN([AC_PROG_BISON],
[AC_CACHE_CHECK([],[llvm_cv_has_bison],[AC_PROG_YACC()])
if test "$YACC" != "bison -y"; then
- AC_MSG_ERROR([bison not found but required])
+ AC_SUBST(BISON,[])
+ AC_MSG_WARN([bison not found, can't rebuild grammars])
else
- AC_SUBST(BISON,[bison],[location of bison])
+ AC_SUBST(BISON,[bison])
fi])
diff --git a/configure b/configure
index 25bbe72..7f35be5 100755
--- a/configure
+++ b/configure
@@ -6365,9 +6365,9 @@
{ echo "$as_me:$LINENO: result: $llvm_cv_has_bison" >&5
echo "${ECHO_T}$llvm_cv_has_bison" >&6; }
if test "$YACC" != "bison -y"; then
- { { echo "$as_me:$LINENO: error: bison not found but required" >&5
-echo "$as_me: error: bison not found but required" >&2;}
- { (exit 1); exit 1; }; }
+
+ { echo "$as_me:$LINENO: WARNING: bison not found, can't rebuild grammars" >&5
+echo "$as_me: WARNING: bison not found, can't rebuild grammars" >&2;}
else
BISON=bison