https://bugs.gentoo.org/538300 From 3da25ddd011c169b9857ed2f6a2e82988f059ba5 Mon Sep 17 00:00:00 2001 From: Mike Frysinger Date: Fri, 3 Apr 2015 02:39:21 -0400 Subject: [PATCH] make perl & examples optional The normal bison program does not require perl to build or run, so lets soften that requirement in the configure script. We now warn if its not found, and we make the examples logic depend on that. * configure.ac: Change AC_MSG_ERROR to AC_MSG_WARN for perl. Add an --enable-examples flag. * Makefile.am: Only include examples/local.mk when ENABLE_EXAMPLES. --- Makefile.am | 2 ++ configure.ac | 21 ++++++++++++++++++++- 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/Makefile.am b/Makefile.am index b6135cb..50ea0a0 100644 #--- a/Makefile.am #+++ b/Makefile.am @@ -59,7 +59,9 @@ include data/local.mk include djgpp/local.mk include doc/local.mk include etc/local.mk +if ENABLE_EXAMPLES include examples/local.mk +endif include lib/local.mk include src/local.mk include tests/local.mk diff --git a/configure.ac b/configure.ac index 6f20040..e67249b 100644 #--- a/configure.ac #+++ b/configure.ac @@ -179,12 +179,31 @@ AC_DEFINE_UNQUOTED([M4_GNU_OPTION], ["$M4_GNU"], [Define to "-g" if GNU M4 supports -g, otherwise to "".]) AC_PATH_PROG([PERL], [perl]) if test -z "$PERL"; then - AC_MSG_ERROR([perl not found]) + AC_MSG_WARN([perl required for the testsuites]) fi AM_MISSING_PROG([HELP2MAN], [help2man]) AC_PATH_PROG([XSLTPROC], [xsltproc]) AC_SUBST([XSLTPROC]) +AC_ARG_ENABLE([examples], + [AC_HELP_STRING([--disable-examples], + [do not build and install examples])]) +# Enable the examles by default if perl is available. +case $enable_examples in +no) ;; +yes) + if test -z "$PERL"; then + AC_MSG_ERROR([perl required for the examples]) + fi + ;; +*) + if test -n "$PERL"; then + enable_examples=yes + fi + ;; +esac +AM_CONDITIONAL([ENABLE_EXAMPLES], [test "xenable_examples" = xyes]) + # Checks for header files. AC_CHECK_HEADERS_ONCE([locale.h]) --- a/Makefile.in +++ b/Makefile.in @@ -248,13 +248,29 @@ POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ -check_PROGRAMS = $(am__EXEEXT_1) examples/mfcalc/mfcalc$(EXEEXT) \ - examples/rpcalc/rpcalc$(EXEEXT) +check_PROGRAMS = $(am__EXEEXT_1) $(am__EXEEXT_2) @CROSS_COMPILING_FALSE@am__append_1 = $(top_srcdir)/doc/bison.help -@FLEX_CXX_WORKS_TRUE@am__append_2 = examples/calc++/calc++ -@FLEX_CXX_WORKS_TRUE@am__append_3 = examples/calc++/calc++.test -@FLEX_CXX_WORKS_FALSE@am__append_4 = examples/calc++/calc++.test -@LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE@am__append_5 = lib/uniwidth/width.c +@ENABLE_EXAMPLES_TRUE@am__append_2 = $(extracted) \ +@ENABLE_EXAMPLES_TRUE@ examples/extracted.stamp \ +@ENABLE_EXAMPLES_TRUE@ $(calcxx_sources_generated) \ +@ENABLE_EXAMPLES_TRUE@ examples/calc++/calc++-parser.output \ +@ENABLE_EXAMPLES_TRUE@ examples/calc++/calc++-parser.stamp \ +@ENABLE_EXAMPLES_TRUE@ examples/calc++/calc++-scanner.cc \ +@ENABLE_EXAMPLES_TRUE@ examples/mfcalc/mfcalc.[ch] \ +@ENABLE_EXAMPLES_TRUE@ examples/mfcalc/mfcalc.output \ +@ENABLE_EXAMPLES_TRUE@ examples/rpcalc/rpcalc.[ch] \ +@ENABLE_EXAMPLES_TRUE@ examples/rpcalc/rpcalc.output +@ENABLE_EXAMPLES_TRUE@am__append_3 = .yy .stamp +@ENABLE_EXAMPLES_TRUE@@FLEX_CXX_WORKS_TRUE@am__append_4 = examples/calc++/calc++ +@ENABLE_EXAMPLES_TRUE@@FLEX_CXX_WORKS_TRUE@am__append_5 = examples/calc++/calc++.test +@ENABLE_EXAMPLES_TRUE@@FLEX_CXX_WORKS_FALSE@am__append_6 = examples/calc++/calc++.test +@ENABLE_EXAMPLES_TRUE@am__append_7 = $(mfcalc_sources) \ +@ENABLE_EXAMPLES_TRUE@ $(rpcalc_sources) +@ENABLE_EXAMPLES_TRUE@am__append_8 = examples/mfcalc/mfcalc \ +@ENABLE_EXAMPLES_TRUE@ examples/rpcalc/rpcalc +@ENABLE_EXAMPLES_TRUE@am__append_9 = examples/mfcalc/mfcalc.test \ +@ENABLE_EXAMPLES_TRUE@ examples/rpcalc/rpcalc.test +@LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE@am__append_10 = lib/uniwidth/width.c bin_PROGRAMS = src/bison$(EXEEXT) subdir = . ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 @@ -356,7 +372,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \ - $(am__configure_deps) $(dist_noinst_SCRIPTS) \ + $(am__configure_deps) $(am__dist_noinst_SCRIPTS_DIST) \ $(srcdir)/doc/version.texi $(srcdir)/doc/stamp-vti \ $(dist_doc_DATA) $(dist_m4sugar_DATA) $(dist_pkgdata_DATA) \ $(dist_xslt_DATA) $(am__DIST_COMMON) @@ -473,15 +489,18 @@ @ENABLE_YACC_TRUE@am_lib_liby_a_OBJECTS = lib/main.$(OBJEXT) \ @ENABLE_YACC_TRUE@ lib/yyerror.$(OBJEXT) lib_liby_a_OBJECTS = $(am_lib_liby_a_OBJECTS) -@FLEX_CXX_WORKS_TRUE@am__EXEEXT_1 = examples/calc++/calc++$(EXEEXT) +@ENABLE_EXAMPLES_TRUE@@FLEX_CXX_WORKS_TRUE@am__EXEEXT_1 = examples/calc++/calc++$(EXEEXT) +@ENABLE_EXAMPLES_TRUE@am__EXEEXT_2 = examples/mfcalc/mfcalc$(EXEEXT) \ +@ENABLE_EXAMPLES_TRUE@ examples/rpcalc/rpcalc$(EXEEXT) PROGRAMS = $(bin_PROGRAMS) -am__objects_2 = examples/calc++/examples_calc___calc__-calc++-driver.$(OBJEXT) \ - examples/calc++/examples_calc___calc__-calc++-scanner.$(OBJEXT) \ - examples/calc++/examples_calc___calc__-calc++.$(OBJEXT) -am__objects_3 = examples/calc++/examples_calc___calc__-calc++-parser.$(OBJEXT) -am__objects_4 = $(am__objects_2) $(am__objects_3) -@FLEX_CXX_WORKS_TRUE@nodist_examples_calc___calc___OBJECTS = \ -@FLEX_CXX_WORKS_TRUE@ $(am__objects_4) +@ENABLE_EXAMPLES_TRUE@am__objects_2 = examples/calc++/examples_calc___calc__-calc++-driver.$(OBJEXT) \ +@ENABLE_EXAMPLES_TRUE@ examples/calc++/examples_calc___calc__-calc++-scanner.$(OBJEXT) \ +@ENABLE_EXAMPLES_TRUE@ examples/calc++/examples_calc___calc__-calc++.$(OBJEXT) +@ENABLE_EXAMPLES_TRUE@am__objects_3 = examples/calc++/examples_calc___calc__-calc++-parser.$(OBJEXT) +@ENABLE_EXAMPLES_TRUE@am__objects_4 = $(am__objects_2) \ +@ENABLE_EXAMPLES_TRUE@ $(am__objects_3) +@ENABLE_EXAMPLES_TRUE@@FLEX_CXX_WORKS_TRUE@nodist_examples_calc___calc___OBJECTS = \ +@ENABLE_EXAMPLES_TRUE@@FLEX_CXX_WORKS_TRUE@ $(am__objects_4) examples_calc___calc___OBJECTS = \ $(nodist_examples_calc___calc___OBJECTS) examples_calc___calc___LDADD = $(LDADD) @@ -490,17 +509,17 @@ examples_calc___calc___LINK = $(CXXLD) \ $(examples_calc___calc___CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \ $(LDFLAGS) -o $@ -am__objects_5 = \ - examples/mfcalc/examples_mfcalc_mfcalc-mfcalc.$(OBJEXT) -am__objects_6 = $(am__objects_5) -nodist_examples_mfcalc_mfcalc_OBJECTS = $(am__objects_6) +@ENABLE_EXAMPLES_TRUE@am__objects_5 = examples/mfcalc/examples_mfcalc_mfcalc-mfcalc.$(OBJEXT) +@ENABLE_EXAMPLES_TRUE@am__objects_6 = $(am__objects_5) +@ENABLE_EXAMPLES_TRUE@nodist_examples_mfcalc_mfcalc_OBJECTS = \ +@ENABLE_EXAMPLES_TRUE@ $(am__objects_6) examples_mfcalc_mfcalc_OBJECTS = \ $(nodist_examples_mfcalc_mfcalc_OBJECTS) examples_mfcalc_mfcalc_DEPENDENCIES = -am__objects_7 = \ - examples/rpcalc/examples_rpcalc_rpcalc-rpcalc.$(OBJEXT) -am__objects_8 = $(am__objects_7) -nodist_examples_rpcalc_rpcalc_OBJECTS = $(am__objects_8) +@ENABLE_EXAMPLES_TRUE@am__objects_7 = examples/rpcalc/examples_rpcalc_rpcalc-rpcalc.$(OBJEXT) +@ENABLE_EXAMPLES_TRUE@am__objects_8 = $(am__objects_7) +@ENABLE_EXAMPLES_TRUE@nodist_examples_rpcalc_rpcalc_OBJECTS = \ +@ENABLE_EXAMPLES_TRUE@ $(am__objects_8) examples_rpcalc_rpcalc_OBJECTS = \ $(nodist_examples_rpcalc_rpcalc_OBJECTS) examples_rpcalc_rpcalc_DEPENDENCIES = @@ -528,6 +547,7 @@ src_bison_DEPENDENCIES = lib/libbison.a $(am__DEPENDENCIES_1) src_bison_LINK = $(CCLD) $(src_bison_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ $(LDFLAGS) -o $@ +am__dist_noinst_SCRIPTS_DIST = examples/extexi examples/test SCRIPTS = $(bin_SCRIPTS) $(dist_noinst_SCRIPTS) \ $(nodist_noinst_SCRIPTS) AM_V_P = $(am__v_P_@AM_V@) @@ -2145,7 +2165,7 @@ djgpp/subpipe.h djgpp/testsuite.sed doc/refcard.tex \ $(top_srcdir)/doc/bison.help $(dist_man_MANS:.1=.x) $(FIGS_GV) \ $(FIGS_GV:.gv=.txt) $(FIGS_GV:.gv=.eps) $(FIGS_GV:.gv=.pdf) \ - $(FIGS_GV:.gv=.png) doc/Doxyfile.in $(am__append_4) \ + $(FIGS_GV:.gv=.png) doc/Doxyfile.in $(am__append_6) \ lib/alignof.h lib/alloca.in.h \ $(top_srcdir)/build-aux/announce-gen lib/argmatch.h \ lib/c-strcaseeq.h lib/calloc.c lib/cloexec.h lib/close.c \ @@ -2249,27 +2269,20 @@ # a developer might naively reference .version in a test case while the bison # executable still compiles with VERSION, and so the test case might fail or # pass incorrectly. -BUILT_SOURCES = $(mfcalc_sources) $(rpcalc_sources) $(ALLOCA_H) \ - lib/configmake.h $(ERRNO_H) lib/fcntl.h $(FLOAT_H) $(GETOPT_H) \ - lib/inttypes.h lib/math.h $(SCHED_H) lib/signal.h \ - lib/arg-nonnull.h lib/c++defs.h lib/warn-on-use.h lib/spawn.h \ - $(STDBOOL_H) $(STDDEF_H) $(STDINT_H) lib/stdio.h lib/stdlib.h \ - lib/string.h lib/sys/stat.h lib/sys/time.h lib/sys/types.h \ - lib/sys/wait.h lib/time.h lib/unistd.h \ - $(LIBUNISTRING_UNITYPES_H) $(LIBUNISTRING_UNIWIDTH_H) \ - lib/wchar.h lib/wctype.h src/parse-gram.c src/parse-gram.h \ - src/scan-code.c src/scan-gram.c src/scan-skel.c \ - $(top_srcdir)/.version +BUILT_SOURCES = $(am__append_7) $(ALLOCA_H) lib/configmake.h \ + $(ERRNO_H) lib/fcntl.h $(FLOAT_H) $(GETOPT_H) lib/inttypes.h \ + lib/math.h $(SCHED_H) lib/signal.h lib/arg-nonnull.h \ + lib/c++defs.h lib/warn-on-use.h lib/spawn.h $(STDBOOL_H) \ + $(STDDEF_H) $(STDINT_H) lib/stdio.h lib/stdlib.h lib/string.h \ + lib/sys/stat.h lib/sys/time.h lib/sys/types.h lib/sys/wait.h \ + lib/time.h lib/unistd.h $(LIBUNISTRING_UNITYPES_H) \ + $(LIBUNISTRING_UNIWIDTH_H) lib/wchar.h lib/wctype.h \ + src/parse-gram.c src/parse-gram.h src/scan-code.c \ + src/scan-gram.c src/scan-skel.c $(top_srcdir)/.version CLEANFILES = doc/refcard.pdf $(FIGS_GV:.gv=.eps) $(FIGS_GV:.gv=.pdf) \ - $(FIGS_GV:.gv=.png) doc/Doxyfile $(extracted) \ - examples/extracted.stamp $(calcxx_sources_generated) \ - examples/calc++/calc++-parser.output \ - examples/calc++/calc++-parser.stamp \ - examples/calc++/calc++-scanner.cc examples/mfcalc/mfcalc.[ch] \ - examples/mfcalc/mfcalc.output examples/rpcalc/rpcalc.[ch] \ - examples/rpcalc/rpcalc.output lib/configmake.h \ - lib/configmake.h-t lib/charset.alias lib/ref-add.sed \ - lib/ref-del.sed + $(FIGS_GV:.gv=.png) doc/Doxyfile $(am__append_2) \ + lib/configmake.h lib/configmake.h-t lib/charset.alias \ + lib/ref-add.sed lib/ref-del.sed DISTCLEANFILES = tests/atconfig $(check_SCRIPTS) MOSTLYCLEANDIRS = lib/sys lib/sys MOSTLYCLEANFILES = $(top_srcdir)/doc/*.t lib/core lib/*.stackdump \ @@ -2289,10 +2302,9 @@ lib/unistd.h-t lib/unitypes.h lib/unitypes.h-t lib/uniwidth.h \ lib/uniwidth.h-t lib/wchar.h lib/wchar.h-t lib/wctype.h \ lib/wctype.h-t src/yacc -SUFFIXES = .gv .eps .pdf .png .yy .stamp +SUFFIXES = .gv .eps .pdf .png $(am__append_3) TESTS = $(dist_TESTS) -dist_TESTS = $(am__append_3) examples/mfcalc/mfcalc.test \ - examples/rpcalc/rpcalc.test +dist_TESTS = $(am__append_5) $(am__append_9) noinst_LIBRARIES = lib/libbison.a dist_pkgdata_DATA = \ data/README \ @@ -2364,59 +2376,59 @@ -e 's,@top_srcdir\@,$(top_srcdir),g' nodist_noinst_SCRIPTS = etc/bench.pl -dist_noinst_SCRIPTS = examples/extexi examples/test -TEST_LOG_COMPILER = $(top_srcdir)/examples/test -AM_CXXFLAGS = \ - $(WARN_CXXFLAGS) $(WARN_CXXFLAGS_TEST) $(WERROR_CXXFLAGS) - -doc = $(top_srcdir)/doc/bison.texi -extexi = $(top_srcdir)/examples/extexi -@ENABLE_GCC_WARNINGS_TRUE@extexiFLAGS = --synclines -extract = VERSION="$(VERSION)" $(PERL) $(extexi) $(extexiFLAGS) $(doc) -- -extracted = $(calcxx_extracted) $(mfcalc_extracted) \ - $(rpcalc_extracted) -calcxx_sources_extracted = \ - examples/calc++/calc++-driver.cc \ - examples/calc++/calc++-driver.hh \ - examples/calc++/calc++-scanner.ll \ - examples/calc++/calc++.cc - -calcxx_extracted = \ - $(calcxx_sources_extracted) \ - examples/calc++/calc++-parser.yy - -calcxx_sources_generated = \ - examples/calc++/calc++-parser.cc \ - examples/calc++/calc++-parser.hh \ - examples/calc++/location.hh \ - examples/calc++/position.hh \ - examples/calc++/stack.hh - -calcxx_sources = \ - $(calcxx_sources_extracted) \ - $(calcxx_sources_generated) - -@FLEX_CXX_WORKS_TRUE@nodist_examples_calc___calc___SOURCES = \ -@FLEX_CXX_WORKS_TRUE@ $(calcxx_sources) - -@FLEX_CXX_WORKS_TRUE@examples_calc___calc___CPPFLAGS = -I$(top_builddir)/examples/calc++ -@FLEX_CXX_WORKS_TRUE@examples_calc___calc___CXXFLAGS = $(AM_CXXFLAGS) $(FLEX_SCANNER_CXXFLAGS) -calcxxdir = $(docdir)/examples/calc++ -calcxx_DATA = $(calcxx_extracted) -mfcalc_extracted = examples/mfcalc/calc.h examples/mfcalc/mfcalc.y -mfcalc_sources = $(mfcalc_extracted) -examples_mfcalc_mfcalc_LDADD = -lm -nodist_examples_mfcalc_mfcalc_SOURCES = $(mfcalc_sources) -examples_mfcalc_mfcalc_CPPFLAGS = -I$(top_builddir)/examples/mfcalc -mfcalcdir = $(docdir)/examples/mfcalc -mfcalc_DATA = $(mfcalc_extracted) -rpcalc_extracted = examples/rpcalc/rpcalc.y -rpcalc_sources = $(rpcalc_extracted) -examples_rpcalc_rpcalc_LDADD = -lm -nodist_examples_rpcalc_rpcalc_SOURCES = $(rpcalc_sources) -examples_rpcalc_rpcalc_CPPFLAGS = -I$(top_builddir)/examples/rpcalc -rpcalcdir = $(docdir)/examples/rpcalc -rpcalc_DATA = $(rpcalc_extracted) +@ENABLE_EXAMPLES_TRUE@dist_noinst_SCRIPTS = examples/extexi examples/test +@ENABLE_EXAMPLES_TRUE@TEST_LOG_COMPILER = $(top_srcdir)/examples/test +@ENABLE_EXAMPLES_TRUE@AM_CXXFLAGS = \ +@ENABLE_EXAMPLES_TRUE@ $(WARN_CXXFLAGS) $(WARN_CXXFLAGS_TEST) $(WERROR_CXXFLAGS) + +@ENABLE_EXAMPLES_TRUE@doc = $(top_srcdir)/doc/bison.texi +@ENABLE_EXAMPLES_TRUE@extexi = $(top_srcdir)/examples/extexi +@ENABLE_EXAMPLES_TRUE@@ENABLE_GCC_WARNINGS_TRUE@extexiFLAGS = --synclines +@ENABLE_EXAMPLES_TRUE@extract = VERSION="$(VERSION)" $(PERL) $(extexi) $(extexiFLAGS) $(doc) -- +@ENABLE_EXAMPLES_TRUE@extracted = $(calcxx_extracted) \ +@ENABLE_EXAMPLES_TRUE@ $(mfcalc_extracted) $(rpcalc_extracted) +@ENABLE_EXAMPLES_TRUE@calcxx_sources_extracted = \ +@ENABLE_EXAMPLES_TRUE@ examples/calc++/calc++-driver.cc \ +@ENABLE_EXAMPLES_TRUE@ examples/calc++/calc++-driver.hh \ +@ENABLE_EXAMPLES_TRUE@ examples/calc++/calc++-scanner.ll \ +@ENABLE_EXAMPLES_TRUE@ examples/calc++/calc++.cc + +@ENABLE_EXAMPLES_TRUE@calcxx_extracted = \ +@ENABLE_EXAMPLES_TRUE@ $(calcxx_sources_extracted) \ +@ENABLE_EXAMPLES_TRUE@ examples/calc++/calc++-parser.yy + +@ENABLE_EXAMPLES_TRUE@calcxx_sources_generated = \ +@ENABLE_EXAMPLES_TRUE@ examples/calc++/calc++-parser.cc \ +@ENABLE_EXAMPLES_TRUE@ examples/calc++/calc++-parser.hh \ +@ENABLE_EXAMPLES_TRUE@ examples/calc++/location.hh \ +@ENABLE_EXAMPLES_TRUE@ examples/calc++/position.hh \ +@ENABLE_EXAMPLES_TRUE@ examples/calc++/stack.hh + +@ENABLE_EXAMPLES_TRUE@calcxx_sources = \ +@ENABLE_EXAMPLES_TRUE@ $(calcxx_sources_extracted) \ +@ENABLE_EXAMPLES_TRUE@ $(calcxx_sources_generated) + +@ENABLE_EXAMPLES_TRUE@@FLEX_CXX_WORKS_TRUE@nodist_examples_calc___calc___SOURCES = \ +@ENABLE_EXAMPLES_TRUE@@FLEX_CXX_WORKS_TRUE@ $(calcxx_sources) + +@ENABLE_EXAMPLES_TRUE@@FLEX_CXX_WORKS_TRUE@examples_calc___calc___CPPFLAGS = -I$(top_builddir)/examples/calc++ +@ENABLE_EXAMPLES_TRUE@@FLEX_CXX_WORKS_TRUE@examples_calc___calc___CXXFLAGS = $(AM_CXXFLAGS) $(FLEX_SCANNER_CXXFLAGS) +@ENABLE_EXAMPLES_TRUE@calcxxdir = $(docdir)/examples/calc++ +@ENABLE_EXAMPLES_TRUE@calcxx_DATA = $(calcxx_extracted) +@ENABLE_EXAMPLES_TRUE@mfcalc_extracted = examples/mfcalc/calc.h examples/mfcalc/mfcalc.y +@ENABLE_EXAMPLES_TRUE@mfcalc_sources = $(mfcalc_extracted) +@ENABLE_EXAMPLES_TRUE@examples_mfcalc_mfcalc_LDADD = -lm +@ENABLE_EXAMPLES_TRUE@nodist_examples_mfcalc_mfcalc_SOURCES = $(mfcalc_sources) +@ENABLE_EXAMPLES_TRUE@examples_mfcalc_mfcalc_CPPFLAGS = -I$(top_builddir)/examples/mfcalc +@ENABLE_EXAMPLES_TRUE@mfcalcdir = $(docdir)/examples/mfcalc +@ENABLE_EXAMPLES_TRUE@mfcalc_DATA = $(mfcalc_extracted) +@ENABLE_EXAMPLES_TRUE@rpcalc_extracted = examples/rpcalc/rpcalc.y +@ENABLE_EXAMPLES_TRUE@rpcalc_sources = $(rpcalc_extracted) +@ENABLE_EXAMPLES_TRUE@examples_rpcalc_rpcalc_LDADD = -lm +@ENABLE_EXAMPLES_TRUE@nodist_examples_rpcalc_rpcalc_SOURCES = $(rpcalc_sources) +@ENABLE_EXAMPLES_TRUE@examples_rpcalc_rpcalc_CPPFLAGS = -I$(top_builddir)/examples/rpcalc +@ENABLE_EXAMPLES_TRUE@rpcalcdir = $(docdir)/examples/rpcalc +@ENABLE_EXAMPLES_TRUE@rpcalc_DATA = $(rpcalc_extracted) # Implementation of bitsets. @@ -2441,7 +2453,7 @@ lib/progname.c lib/quotearg.c lib/sig-handler.c lib/size_max.h \ lib/spawn-pipe.h lib/spawn-pipe.c lib/w32spawn.h \ lib/glthread/threadlib.c lib/unistd.c lib/dup-safer.c \ - lib/fd-safer.c lib/pipe-safer.c $(am__append_5) \ + lib/fd-safer.c lib/pipe-safer.c $(am__append_10) \ lib/wait-process.h lib/wait-process.c lib/wctype-h.c \ lib/xmalloc.c lib/xalloc-die.c lib/xconcat-filename.c \ lib/xsize.h lib/xsize.c lib/xstrndup.h lib/xstrndup.c \ @@ -5328,31 +5340,31 @@ # configure, because the former is way faster than the latter. doc/Doxyfile: $(top_srcdir)/doc/Doxyfile.in $(AM_V_GEN) $(edit) $(top_srcdir)/doc/Doxyfile.in >doc/Doxyfile -examples/extracted.stamp: $(doc) $(extexi) - $(AM_V_GEN)rm -f $@ $@.tmp - $(AM_V_at)touch $@.tmp - $(AM_V_at)$(extract) $(extracted) - $(AM_V_at)mv $@.tmp $@ - -$(extracted): examples/extracted.stamp - @test -f $@ || rm -f examples/extracted.stamp - @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) examples/extracted.stamp +@ENABLE_EXAMPLES_TRUE@examples/extracted.stamp: $(doc) $(extexi) +@ENABLE_EXAMPLES_TRUE@ $(AM_V_GEN)rm -f $@ $@.tmp +@ENABLE_EXAMPLES_TRUE@ $(AM_V_at)touch $@.tmp +@ENABLE_EXAMPLES_TRUE@ $(AM_V_at)$(extract) $(extracted) +@ENABLE_EXAMPLES_TRUE@ $(AM_V_at)mv $@.tmp $@ + +@ENABLE_EXAMPLES_TRUE@$(extracted): examples/extracted.stamp +@ENABLE_EXAMPLES_TRUE@ @test -f $@ || rm -f examples/extracted.stamp +@ENABLE_EXAMPLES_TRUE@ @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) examples/extracted.stamp # Don't depend on $(BISON) otherwise we would rebuild these files # in srcdir, including during distcheck, which is forbidden. -examples/calc++/calc++-parser.stamp: $(BISON_IN) -.yy.stamp: - $(AM_V_YACC)rm -f $@ - $(AM_V_at)touch $@.tmp - $(AM_V_at)$(YACCCOMPILE) -o $*.cc $< - $(AM_V_at)mv -f $@.tmp $@ - -$(calcxx_sources_generated): examples/calc++/calc++-parser.stamp - @test -f $@ || rm -f examples/calc++/calc++-parser.stamp - @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) examples/calc++/calc++-parser.stamp +@ENABLE_EXAMPLES_TRUE@examples/calc++/calc++-parser.stamp: $(BISON_IN) +@ENABLE_EXAMPLES_TRUE@.yy.stamp: +@ENABLE_EXAMPLES_TRUE@ $(AM_V_YACC)rm -f $@ +@ENABLE_EXAMPLES_TRUE@ $(AM_V_at)touch $@.tmp +@ENABLE_EXAMPLES_TRUE@ $(AM_V_at)$(YACCCOMPILE) -o $*.cc $< +@ENABLE_EXAMPLES_TRUE@ $(AM_V_at)mv -f $@.tmp $@ + +@ENABLE_EXAMPLES_TRUE@$(calcxx_sources_generated): examples/calc++/calc++-parser.stamp +@ENABLE_EXAMPLES_TRUE@ @test -f $@ || rm -f examples/calc++/calc++-parser.stamp +@ENABLE_EXAMPLES_TRUE@ @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) examples/calc++/calc++-parser.stamp # Avoid using BUILT_SOURCES which is too global. -$(examples_calc___calc___OBJECTS): $(calcxx_sources_generated) +@ENABLE_EXAMPLES_TRUE@$(examples_calc___calc___OBJECTS): $(calcxx_sources_generated) # We need the following in order to create when the system # doesn't have one that works with the given compiler. --- a/configure +++ b/configure @@ -1693,6 +1693,8 @@ ALLOCA GL_COND_LIBTOOL_FALSE GL_COND_LIBTOOL_TRUE +ENABLE_EXAMPLES_FALSE +ENABLE_EXAMPLES_TRUE XSLTPROC HELP2MAN PERL @@ -1837,6 +1839,7 @@ enable_threads enable_gcc_warnings enable_yacc +enable_examples enable_assert with_gnu_ld enable_rpath @@ -2493,6 +2496,7 @@ Also, issue synclines from the examples/ to the corresponding source in the Texinfo doc. --disable-yacc do not build a yacc command or an -ly library + --disable-examples do not build and install examples --disable-assert turn off assertions --disable-rpath do not hardcode runtime library paths --disable-nls do not use Native Language Support @@ -8935,7 +8939,8 @@ if test -z "$PERL"; then - as_fn_error $? "perl not found" "$LINENO" 5 + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: perl required for the testsuites" >&5 +$as_echo "$as_me: WARNING: perl required for the testsuites" >&2;} fi HELP2MAN=${HELP2MAN-"${am_missing_run}help2man"} @@ -8982,6 +8987,34 @@ +# Check whether --enable-examples was given. +if test "${enable_examples+set}" = set; then : + enableval=$enable_examples; +fi + +# Enable the examles by default if perl is available. +case $enable_examples in +no) ;; +yes) + if test -z "$PERL"; then + as_fn_error $? "perl required for the examples" "$LINENO" 5 + fi + ;; +*) + if test -n "$PERL"; then + enable_examples=yes + fi + ;; +esac + if test "xenable_examples" = xyes; then + ENABLE_EXAMPLES_TRUE= + ENABLE_EXAMPLES_FALSE='#' +else + ENABLE_EXAMPLES_TRUE='#' + ENABLE_EXAMPLES_FALSE= +fi + + # Checks for header files. @@ -38129,6 +38162,10 @@ as_fn_error $? "conditional \"FLEX_CXX_WORKS\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${ENABLE_EXAMPLES_TRUE}" && test -z "${ENABLE_EXAMPLES_FALSE}"; then + as_fn_error $? "conditional \"ENABLE_EXAMPLES\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${GL_COND_LIBTOOL_TRUE}" && test -z "${GL_COND_LIBTOOL_FALSE}"; then as_fn_error $? "conditional \"GL_COND_LIBTOOL\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 -- 2.3.4