mesa: check that flex/bison are installed
authorBrian Paul <brianp@vmware.com>
Wed, 18 May 2011 13:50:21 +0000 (07:50 -0600)
committerBrian Paul <brianp@vmware.com>
Wed, 18 May 2011 13:51:33 +0000 (07:51 -0600)
Fixes https://bugs.freedesktop.org/show_bug.cgi?id=36651

NOTE: This is a candidate for the 7.10 branch.

configs/autoconf.in
configs/default
configure.ac
src/glsl/Makefile
src/mesa/Makefile

index 4e931a3a9cc1f88f41f6936fb8ecbb6b819ee7cb..a484bcff996e433e64ddc0f531c643bcedf5be50 100644 (file)
@@ -58,6 +58,10 @@ INSTALL = @INSTALL@
 PYTHON2 = @PYTHON2@
 PYTHON_FLAGS = -t -O -O
 
+# Flex and Bison for GLSL compiler
+FLEX = @FLEX@
+BISON = @BISON@
+
 # Library names (base name)
 GL_LIB = GL
 GLU_LIB = GLU
index 0582a0210af884003e5040818ace78950b6d0e6d..b7acfd2f1a57d293acb3b3eec9234c43e7d57129 100644 (file)
@@ -38,6 +38,8 @@ MKLIB_OPTIONS =
 MKDEP = makedepend
 MKDEP_OPTIONS = -fdepend
 MAKE = make
+FLEX = flex
+BISON = bison
 
 # Use MINSTALL for installing libraries, INSTALL for everything else
 MINSTALL = $(SHELL) $(TOP)/bin/minstall
index a95012c24213aec761bb5f733b3ae4dc0270ede0..b55473ffec98a6b9a08d0081894df62f0de9da48 100644 (file)
@@ -39,6 +39,12 @@ if test "x$MKDEP" = "x"; then
     AC_MSG_ERROR([makedepend is required to build Mesa])
 fi
 
+AC_PATH_PROG([FLEX], [flex])
+test "x$FLEX" = "x" && AC_MSG_ERROR([flex is needed to build Mesa])
+
+AC_PATH_PROG([BISON], [bison])
+test "x$BISON" = "x" && AC_MSG_ERROR([bison is needed to build Mesa])
+
 dnl Our fallback install-sh is a symlink to minstall. Use the existing
 dnl configuration in that case.
 AC_PROG_INSTALL
index e4b992dbc112ce0fb719541e5ca21c634a97210c..4100414a37d96c405ed3a69c18c63099ead464ea 100644 (file)
@@ -192,16 +192,16 @@ $(DRICORE_OBJ_DIR)/%.o : %.c
        $(CC) -c $(INCLUDES) $(DRI_CFLAGS) $(DEFINES) $< -o $@
 
 glsl_lexer.cpp: glsl_lexer.ll
-       flex --nounistd -o$@  $<
+       $(FLEX) --nounistd -o$@  $<
 
 glsl_parser.cpp: glsl_parser.yy
-       bison -v -o "$@" -p "_mesa_glsl_" --defines=glsl_parser.h $<
+       $(BISON) -v -o "$@" -p "_mesa_glsl_" --defines=glsl_parser.h $<
 
 glcpp/glcpp-lex.c: glcpp/glcpp-lex.l
-       flex --nounistd -o$@  $<
+       $(FLEX) --nounistd -o$@  $<
 
 glcpp/glcpp-parse.c: glcpp/glcpp-parse.y
-       bison -v -o "$@" --defines=glcpp/glcpp-parse.h $<
+       $(BISON) -v -o "$@" --defines=glcpp/glcpp-parse.h $<
 
 builtin_compiler: $(GLSL2_OBJECTS) $(OBJECTS) builtin_stubs.o
        $(APP_CXX) $(INCLUDES) $(CXXFLAGS) $(LDFLAGS) $(OBJECTS) $(GLSL2_OBJECTS) builtin_stubs.o -o $@
index 03962e9c1942a8f1c933b0b09200e976debd0961..a903a260ac94c6c96345f5775a792a7d8e64b792 100644 (file)
@@ -75,10 +75,10 @@ main/api_exec_es2.c: main/APIspec.xml main/es_generator.py main/APIspecutil.py m
        $(PYTHON2) $(PYTHON_FLAGS) main/es_generator.py -S main/APIspec.xml -V GLES2.0 > $@
 
 program/program_parse.tab.c program/program_parse.tab.h: program/program_parse.y
-       bison -v -d --output=program/program_parse.tab.c $<
+       $(BISON) -v -d --output=program/program_parse.tab.c $<
 
 program/lex.yy.c: program/program_lexer.l
-       flex --never-interactive --outfile=$@ $<
+       $(FLEX) --never-interactive --outfile=$@ $<
 
 ######################################################################
 # Helper libraries used by many drivers: