]> granicus.if.org Git - jq/commitdiff
Autotools hackery so that "make dist" builds lexer and parser.
authorStephen Dolan <mu@netsoc.tcd.ie>
Thu, 9 May 2013 10:31:17 +0000 (11:31 +0100)
committerStephen Dolan <mu@netsoc.tcd.ie>
Thu, 9 May 2013 10:31:17 +0000 (11:31 +0100)
Makefile.am
Makefile.in
config.h.in
configure
configure.ac

index 7deffb3bea4d5f61f1161e6142f855ad6231fef6..274197f5f05b75f5a06002ba957e4e41d4e7074d 100644 (file)
@@ -3,11 +3,11 @@
 JQ_INCS = jq_parser.h builtin.h bytecode.h compile.h execute.h         \
   forkable_stack.h frame_layout.h jv.h jv_alloc.h jv_aux.h jv_dtoa.h   \
   jv_parse.h jv_unicode.h locfile.h opcode.h opcode_list.h parser.y    \
-  jv_utf8_tables.h
+  jv_utf8_tables.h lexer.l
 
 JQ_SRC = opcode.c bytecode.c compile.c execute.c builtin.c jv.c                \
   jv_parse.c jv_print.c jv_dtoa.c jv_unicode.c jv_aux.c jv_alloc.c     \
-  lexer.c jq_test.c ${JQ_INCS}
+  jq_test.c ${JQ_INCS}
 
 
 ### C build options
@@ -40,13 +40,19 @@ bin_PROGRAMS = jq
 jq_SOURCES = ${JQ_SRC} main.c
 
 
-### Tests
+### Tests (make check)
 
-# this is what gets "make check" to work
 TESTS = tests/all.test
 TEST_LOG_COMPILER = tests/run
 
 
+### Building the manpage
+
+man_MANS = jq.1
+jq.1: docs/content/3.manual/manual.yml
+       ( cd ${abs_srcdir}/docs; rake manpage ) > $@ || rm -f $@
+
+
 
 ### Packaging
 
@@ -61,19 +67,14 @@ install-binaries: $(BUILT_SOURCES)
 # setup is only used by distribution developers, not package developers.
 # Still, as a matter of allowing patching, its not a bad idea to distribute 
 # the developer setup script in the tarball.
-EXTRA_DIST = setup.sh config.h.in ChangeLog lexer.l lexer.h    \
-  gen_utf8_tables.py jq.spec testdata
+EXTRA_DIST = config.h.in $(BUILT_SOURCES) $(man_MANS) $(TESTS) \
+       $(TEST_LOG_COMPILER) gen_utf8_tables.py jq.spec
 
 # README.md is expected in Github projects, good stuff in it, so we'll 
 # distribute it and install it with the package in the doc directory.
 docdir = ${datadir}/doc/${PACKAGE}
 dist_doc_DATA = README.md COPYING AUTHORS README
 
-man_MANS = jq.1
-
-jq.1: docs/content/3.manual/manual.yml
-       ( cd ${abs_srcdir}/docs; rake manpage ) > $@ || rm -f $@
-
 releasetag:
        git tag -s "jq-$$(cat VERSION)" -m "jq release $$(cat VERSION)"
 
index daedb879b54080ae1b104ea57b1aa6b7b97fe32f..9c1f39c772fd9b194fcbf34d3f6469682f00bfdd 100644 (file)
@@ -57,8 +57,8 @@ subdir = .
 DIST_COMMON = README $(am__configure_deps) $(dist_doc_DATA) \
        $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
        $(srcdir)/config.h.in $(top_srcdir)/configure AUTHORS COPYING \
-       ChangeLog config/compile config/depcomp config/install-sh \
-       config/missing config/ylwrap parser.c parser.h
+       config/compile config/depcomp config/install-sh config/missing \
+       config/ylwrap lexer.c parser.c parser.h
 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 am__aclocal_m4_deps = $(top_srcdir)/configure.ac
 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
@@ -72,12 +72,12 @@ CONFIG_CLEAN_VPATH_FILES =
 am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man1dir)" \
        "$(DESTDIR)$(docdir)"
 PROGRAMS = $(bin_PROGRAMS)
-am__objects_1 = parser.$(OBJEXT)
+am__objects_1 = parser.$(OBJEXT) lexer.$(OBJEXT)
 am__objects_2 = opcode.$(OBJEXT) bytecode.$(OBJEXT) compile.$(OBJEXT) \
        execute.$(OBJEXT) builtin.$(OBJEXT) jv.$(OBJEXT) \
        jv_parse.$(OBJEXT) jv_print.$(OBJEXT) jv_dtoa.$(OBJEXT) \
        jv_unicode.$(OBJEXT) jv_aux.$(OBJEXT) jv_alloc.$(OBJEXT) \
-       lexer.$(OBJEXT) jq_test.$(OBJEXT) $(am__objects_1)
+       jq_test.$(OBJEXT) $(am__objects_1)
 am_jq_OBJECTS = $(am__objects_2) main.$(OBJEXT)
 jq_OBJECTS = $(am_jq_OBJECTS)
 jq_LDADD = $(LDADD)
@@ -98,11 +98,15 @@ LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
 AM_V_CCLD = $(am__v_CCLD_@AM_V@)
 am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
 am__v_CCLD_0 = @echo "  CCLD  " $@;
+LEXCOMPILE = $(LEX) $(AM_LFLAGS) $(LFLAGS)
+AM_V_LEX = $(am__v_LEX_@AM_V@)
+am__v_LEX_ = $(am__v_LEX_@AM_DEFAULT_V@)
+am__v_LEX_0 = @echo "  LEX   " $@;
+YLWRAP = $(top_srcdir)/config/ylwrap
 YACCCOMPILE = $(YACC) $(AM_YFLAGS) $(YFLAGS)
 AM_V_YACC = $(am__v_YACC_@AM_V@)
 am__v_YACC_ = $(am__v_YACC_@AM_DEFAULT_V@)
 am__v_YACC_0 = @echo "  YACC  " $@;
-YLWRAP = $(top_srcdir)/config/ylwrap
 AM_V_GEN = $(am__v_GEN_@AM_V@)
 am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
 am__v_GEN_0 = @echo "  GEN   " $@;
@@ -241,7 +245,7 @@ am__remove_distdir = \
       && rm -rf "$(distdir)" \
       || { sleep 5 && rm -rf "$(distdir)"; }; \
   else :; fi
-DIST_ARCHIVES = $(distdir).tar.gz $(distdir).tar.bz2 $(distdir).zip
+DIST_ARCHIVES = $(distdir).tar.gz
 GZIP_ENV = --best
 distuninstallcheck_listfiles = find . -type f -print
 am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
@@ -272,6 +276,9 @@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
 INSTALL_SCRIPT = @INSTALL_SCRIPT@
 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
 LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
 LIBOBJS = @LIBOBJS@
 LIBS = @LIBS@
 LTLIBOBJS = @LTLIBOBJS@
@@ -303,7 +310,6 @@ am__quote = @am__quote@
 am__tar = @am__tar@
 am__untar = @am__untar@
 bindir = @bindir@
-bison_cmd = @bison_cmd@
 build_alias = @build_alias@
 builddir = @builddir@
 datadir = @datadir@
@@ -343,11 +349,11 @@ valgrind_cmd = @valgrind_cmd@
 JQ_INCS = jq_parser.h builtin.h bytecode.h compile.h execute.h         \
   forkable_stack.h frame_layout.h jv.h jv_alloc.h jv_aux.h jv_dtoa.h   \
   jv_parse.h jv_unicode.h locfile.h opcode.h opcode_list.h parser.y    \
-  jv_utf8_tables.h
+  jv_utf8_tables.h lexer.l
 
 JQ_SRC = opcode.c bytecode.c compile.c execute.c builtin.c jv.c                \
   jv_parse.c jv_print.c jv_dtoa.c jv_unicode.c jv_aux.c jv_alloc.c     \
-  lexer.c jq_test.c ${JQ_INCS}
+  jq_test.c ${JQ_INCS}
 
 
 ### C build options
@@ -367,25 +373,25 @@ BUILT_SOURCES = lexer.h lexer.c parser.h parser.c
 AM_YFLAGS = --warnings=all -d
 jq_SOURCES = ${JQ_SRC} main.c
 
-### Tests
-
-# this is what gets "make check" to work
+### Tests (make check)
 TESTS = tests/all.test
 TEST_LOG_COMPILER = tests/run
 
+### Building the manpage
+man_MANS = jq.1
+
 # setup is only used by distribution developers, not package developers.
 # Still, as a matter of allowing patching, its not a bad idea to distribute 
 # the developer setup script in the tarball.
-EXTRA_DIST = setup.sh config.h.in ChangeLog lexer.l lexer.h    \
-  gen_utf8_tables.py jq.spec testdata
+EXTRA_DIST = config.h.in $(BUILT_SOURCES) $(man_MANS) $(TESTS) \
+       $(TEST_LOG_COMPILER) gen_utf8_tables.py jq.spec
 
 dist_doc_DATA = README.md COPYING AUTHORS README
-man_MANS = jq.1
 all: $(BUILT_SOURCES) config.h
        $(MAKE) $(AM_MAKEFLAGS) all-am
 
 .SUFFIXES:
-.SUFFIXES: .c .html .log .o .obj .test .test$(EXEEXT) .y
+.SUFFIXES: .c .html .l .log .o .obj .test .test$(EXEEXT) .y
 am--refresh: Makefile
        @:
 $(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
@@ -519,6 +525,9 @@ distclean-compile:
 @AMDEP_TRUE@@am__fastdepCC_FALSE@      DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@  $(AM_V_CC@am__nodep@)$(COMPILE) -c `$(CYGPATH_W) '$<'`
 
+.l.c:
+       $(AM_V_LEX)$(am__skiplex) $(SHELL) $(YLWRAP) $< $(LEX_OUTPUT_ROOT).c $@ -- $(LEXCOMPILE)
+
 .y.c:
        $(AM_V_YACC)$(am__skipyacc) $(SHELL) $(YLWRAP) $< y.tab.c $@ y.tab.h $*.h y.output $*.output -- $(YACCCOMPILE)
 install-man1: $(man_MANS)
@@ -824,6 +833,7 @@ distdir: $(DISTFILES)
 dist-gzip: distdir
        tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
        $(am__remove_distdir)
+
 dist-bzip2: distdir
        tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
        $(am__remove_distdir)
@@ -847,6 +857,7 @@ dist-tarZ: distdir
 dist-shar: distdir
        shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
        $(am__remove_distdir)
+
 dist-zip: distdir
        -rm -f $(distdir).zip
        zip -rq $(distdir).zip $(distdir)
@@ -854,9 +865,6 @@ dist-zip: distdir
 
 dist dist-all: distdir
        tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
-       tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
-       -rm -f $(distdir).zip
-       zip -rq $(distdir).zip $(distdir)
        $(am__remove_distdir)
 
 # This target untars the dist file and tries a VPATH configuration.  Then
@@ -988,6 +996,7 @@ distclean-generic:
 maintainer-clean-generic:
        @echo "This command is intended for maintainers to use"
        @echo "it deletes files that may require special tools to rebuild."
+       -rm -f lexer.c
        -rm -f parser.c
        -rm -f parser.h
        -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
@@ -1096,6 +1105,8 @@ lexer.h: lexer.c
 ### Building the jq binary
 
 main.c: config.h
+jq.1: docs/content/3.manual/manual.yml
+       ( cd ${abs_srcdir}/docs; rake manpage ) > $@ || rm -f $@
 
 ### Packaging
 
@@ -1106,9 +1117,6 @@ docs/site.yml: configure.ac
 install-binaries: $(BUILT_SOURCES)
        $(MAKE) $(AM_MAKEFLAGS) install-exec
 
-jq.1: docs/content/3.manual/manual.yml
-       ( cd ${abs_srcdir}/docs; rake manpage ) > $@ || rm -f $@
-
 releasetag:
        git tag -s "jq-$$(cat VERSION)" -m "jq release $$(cat VERSION)"
 
index dbfa12bc70cf9798ca8f001784369a08485ab62f..46b33c085a81e19d24d8044599ac166f862de699 100644 (file)
@@ -26,3 +26,7 @@
 
 /* Version number of package */
 #undef VERSION
+
+/* Define to 1 if `lex' declares `yytext' as a `char *' by default, not a
+   `char[]'. */
+#undef YYTEXT_POINTER
index 7170e4a23bffe643ff4a3e717aae3f0529640c24..9520197a765da568f7a768fd3039d4a890e2e519 100755 (executable)
--- a/configure
+++ b/configure
@@ -589,8 +589,10 @@ am__EXEEXT_TRUE
 LTLIBOBJS
 LIBOBJS
 valgrind_cmd
-bison_cmd
 flex_cmd
+LEXLIB
+LEX_OUTPUT_ROOT
+LEX
 YFLAGS
 YACC
 CPP
@@ -1483,6 +1485,52 @@ fi
   as_fn_set_status $ac_retval
 
 } # ac_fn_c_try_cpp
+
+# ac_fn_c_try_link LINENO
+# -----------------------
+# Try to link conftest.$ac_ext, and return whether this succeeded.
+ac_fn_c_try_link ()
+{
+  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
+  rm -f conftest.$ac_objext conftest$ac_exeext
+  if { { ac_try="$ac_link"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+  (eval "$ac_link") 2>conftest.err
+  ac_status=$?
+  if test -s conftest.err; then
+    grep -v '^ *+' conftest.err >conftest.er1
+    cat conftest.er1 >&5
+    mv -f conftest.er1 conftest.err
+  fi
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; } && {
+        test -z "$ac_c_werror_flag" ||
+        test ! -s conftest.err
+       } && test -s conftest$ac_exeext && {
+        test "$cross_compiling" = yes ||
+        test -x conftest$ac_exeext
+       }; then :
+  ac_retval=0
+else
+  $as_echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+       ac_retval=1
+fi
+  # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information
+  # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would
+  # interfere with the next link command; also delete a directory that is
+  # left behind by Apple's compiler.  We do this before executing the actions.
+  rm -rf conftest.dSYM conftest_ipa8_conftest.oo
+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+  as_fn_set_status $ac_retval
+
+} # ac_fn_c_try_link
 cat >config.log <<_ACEOF
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
@@ -3966,17 +4014,18 @@ fi
 
 
 
-for ac_prog in flex
+
+for ac_prog in flex lex
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_flex_cmd+:} false; then :
+if ${ac_cv_prog_LEX+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-  if test -n "$flex_cmd"; then
-  ac_cv_prog_flex_cmd="$flex_cmd" # Let the user override the test.
+  if test -n "$LEX"; then
+  ac_cv_prog_LEX="$LEX" # Let the user override the test.
 else
 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
@@ -3985,7 +4034,7 @@ do
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
   if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_prog_flex_cmd="$ac_prog"
+    ac_cv_prog_LEX="$ac_prog"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
@@ -3995,35 +4044,152 @@ IFS=$as_save_IFS
 
 fi
 fi
-flex_cmd=$ac_cv_prog_flex_cmd
-if test -n "$flex_cmd"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $flex_cmd" >&5
-$as_echo "$flex_cmd" >&6; }
+LEX=$ac_cv_prog_LEX
+if test -n "$LEX"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LEX" >&5
+$as_echo "$LEX" >&6; }
 else
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
 
-  test -n "$flex_cmd" && break
+  test -n "$LEX" && break
 done
+test -n "$LEX" || LEX=":"
+
+if test "x$LEX" != "x:"; then
+  cat >conftest.l <<_ACEOF
+%%
+a { ECHO; }
+b { REJECT; }
+c { yymore (); }
+d { yyless (1); }
+e { /* IRIX 6.5 flex 2.5.4 underquotes its yyless argument.  */
+    yyless ((input () != 0)); }
+f { unput (yytext[0]); }
+. { BEGIN INITIAL; }
+%%
+#ifdef YYTEXT_POINTER
+extern char *yytext;
+#endif
+int
+main (void)
+{
+  return ! yylex () + ! yywrap ();
+}
+_ACEOF
+{ { ac_try="$LEX conftest.l"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+$as_echo "$ac_try_echo"; } >&5
+  (eval "$LEX conftest.l") 2>&5
+  ac_status=$?
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking lex output file root" >&5
+$as_echo_n "checking lex output file root... " >&6; }
+if ${ac_cv_prog_lex_root+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
 
-if test x$flex_cmd = "x" ; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: flex is required to patch jq." >&5
-$as_echo "$as_me: flex is required to patch jq." >&6;}
+if test -f lex.yy.c; then
+  ac_cv_prog_lex_root=lex.yy
+elif test -f lexyy.c; then
+  ac_cv_prog_lex_root=lexyy
+else
+  as_fn_error $? "cannot find output from $LEX; giving up" "$LINENO" 5
 fi
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_lex_root" >&5
+$as_echo "$ac_cv_prog_lex_root" >&6; }
+LEX_OUTPUT_ROOT=$ac_cv_prog_lex_root
 
-for ac_prog in bison
+if test -z "${LEXLIB+set}"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking lex library" >&5
+$as_echo_n "checking lex library... " >&6; }
+if ${ac_cv_lib_lex+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+
+    ac_save_LIBS=$LIBS
+    ac_cv_lib_lex='none needed'
+    for ac_lib in '' -lfl -ll; do
+      LIBS="$ac_lib $ac_save_LIBS"
+      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+`cat $LEX_OUTPUT_ROOT.c`
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  ac_cv_lib_lex=$ac_lib
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+      test "$ac_cv_lib_lex" != 'none needed' && break
+    done
+    LIBS=$ac_save_LIBS
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lex" >&5
+$as_echo "$ac_cv_lib_lex" >&6; }
+  test "$ac_cv_lib_lex" != 'none needed' && LEXLIB=$ac_cv_lib_lex
+fi
+
+
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether yytext is a pointer" >&5
+$as_echo_n "checking whether yytext is a pointer... " >&6; }
+if ${ac_cv_prog_lex_yytext_pointer+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  # POSIX says lex can declare yytext either as a pointer or an array; the
+# default is implementation-dependent.  Figure out which it is, since
+# not all implementations provide the %pointer and %array declarations.
+ac_cv_prog_lex_yytext_pointer=no
+ac_save_LIBS=$LIBS
+LIBS="$LEXLIB $ac_save_LIBS"
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+  #define YYTEXT_POINTER 1
+`cat $LEX_OUTPUT_ROOT.c`
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  ac_cv_prog_lex_yytext_pointer=yes
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_save_LIBS
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_lex_yytext_pointer" >&5
+$as_echo "$ac_cv_prog_lex_yytext_pointer" >&6; }
+if test $ac_cv_prog_lex_yytext_pointer = yes; then
+
+$as_echo "#define YYTEXT_POINTER 1" >>confdefs.h
+
+fi
+rm -f conftest.l $LEX_OUTPUT_ROOT.c
+
+fi
+if test "x$LEX" != xflex; then
+  LEX="$SHELL $missing_dir/missing flex"
+fi
+
+
+for ac_prog in flex
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
 $as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_bison_cmd+:} false; then :
+if ${ac_cv_prog_flex_cmd+:} false; then :
   $as_echo_n "(cached) " >&6
 else
-  if test -n "$bison_cmd"; then
-  ac_cv_prog_bison_cmd="$bison_cmd" # Let the user override the test.
+  if test -n "$flex_cmd"; then
+  ac_cv_prog_flex_cmd="$flex_cmd" # Let the user override the test.
 else
 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
@@ -4032,7 +4198,7 @@ do
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
   if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_prog_bison_cmd="$ac_prog"
+    ac_cv_prog_flex_cmd="$ac_prog"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
   fi
@@ -4042,22 +4208,22 @@ IFS=$as_save_IFS
 
 fi
 fi
-bison_cmd=$ac_cv_prog_bison_cmd
-if test -n "$bison_cmd"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $bison_cmd" >&5
-$as_echo "$bison_cmd" >&6; }
+flex_cmd=$ac_cv_prog_flex_cmd
+if test -n "$flex_cmd"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $flex_cmd" >&5
+$as_echo "$flex_cmd" >&6; }
 else
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
 $as_echo "no" >&6; }
 fi
 
 
-  test -n "$bison_cmd" && break
+  test -n "$flex_cmd" && break
 done
 
-if test x$bison_cmd = "x" ; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: bison is required to patch jq." >&5
-$as_echo "$as_me: bison is required to patch jq." >&6;}
+if test x$flex_cmd = "x" ; then
+    { $as_echo "$as_me:${as_lineno-$LINENO}: flex is required to patch jq." >&5
+$as_echo "$as_me: flex is required to patch jq." >&6;}
 fi
 
 for ac_prog in valgrind
index 5bbc0b553e5eb3dafd7d20d7c7766b075ad8f204..503ceaa0364afeb9af8c965bb211b945326fbf00 100644 (file)
@@ -20,18 +20,18 @@ dnl
 dnl these program checks should probably be deleted
 dnl
 
+AC_PROG_LEX
+if test "x$LEX" != xflex; then
+  LEX="$SHELL $missing_dir/missing flex"
+fi
+
+
 dnl Check for flex
 AC_CHECK_PROGS(flex_cmd, flex)
 if test x$flex_cmd = "x" ; then
     AC_MSG_NOTICE([flex is required to patch jq.])
 fi
 
-dnl Check for bison
-AC_CHECK_PROGS(bison_cmd, bison)
-if test x$bison_cmd = "x" ; then
-    AC_MSG_NOTICE([bison is required to patch jq.])
-fi
-
 dnl Check for valgrind
 AC_CHECK_PROGS(valgrind_cmd, valgrind)
 if test x$valgrind_cmd = "x" ; then
@@ -40,7 +40,7 @@ fi
 
 dnl AC_CONFIG_MACRO_DIR([m4])
 AC_CONFIG_HEADERS(config.h)
-AM_INIT_AUTOMAKE([-Wall dist-bzip2 dist-zip])
+AM_INIT_AUTOMAKE([-Wall])
 AC_CONFIG_FILES([Makefile])
 AC_OUTPUT