From ded5b1e764fdc97403bd829b02106ae8b9af10a4 Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Mon, 3 Jul 2017 15:01:59 -0400 Subject: [PATCH] build: fix examples dist based on various configure flags this would previously break if: * cxx bindings were disabled * elua was disabled * base configure disabled examples and dist build disabled examples * base configure disabled examples and dist build enabled examples it still breaks if: * base configure disables examples and dist build enables examples --- Makefile.am | 12 +++++++++--- configure.ac | 44 +++++++++++++++++++++++++++----------------- src/Makefile.am | 9 ++++++++- 3 files changed, 44 insertions(+), 21 deletions(-) diff --git a/Makefile.am b/Makefile.am index 939687bfda..a818b4e353 100644 --- a/Makefile.am +++ b/Makefile.am @@ -437,7 +437,13 @@ endif EXTRA_DIST += $(systemdunits_DATA) -.PHONY: doc benchmark examples install-examples +PHONIES = doc benchmark + +if ALWAYS_BUILD_EXAMPLES +PHONIES += examples install-examples +endif + +.PHONY: $(PHONIES) # Documentation @@ -495,13 +501,13 @@ benchmark: @cd benchmark && ../src/benchmarks/eo/eo_bench$(EXEEXT) `date +%F_%s` # examples - +if ALWAYS_BUILD_EXAMPLES examples: @$(MAKE) $(AM_MAKEFLAGS) -C src examples install-examples: @$(MAKE) $(AM_MAKEFLAGS) -C src install-examples - +endif pkgbuild:: @echo "making arch packages" makepkg -f -p $(top_builddir)/pkgbuild/PKGBUILD diff --git a/configure.ac b/configure.ac index 4ff16581eb..72c4d6c78b 100644 --- a/configure.ac +++ b/configure.ac @@ -5621,6 +5621,32 @@ case "$host_os" in ;; esac +if test "x$want_always_build_examples" = "xyes" ; then + if test "x$have_cxx11" = "xyes" ; then + cxx_examples="src/examples/eina_cxx/Makefile + src/examples/eolian_cxx/Makefile" + fi + if test "x$have_elua" = "xyes" ; then + elua_examples="src/examples/elua/Makefile" + fi + examples_build="src/examples/eina/Makefile + src/examples/eet/Makefile + src/examples/evas/Makefile + src/examples/ecore/Makefile + src/examples/ecore_avahi/Makefile + src/examples/eio/Makefile + src/examples/eldbus/Makefile + src/examples/ephysics/Makefile + src/examples/edje/Makefile + src/examples/emotion/Makefile + src/examples/emile/Makefile + src/examples/ethumb_client/Makefile + src/examples/elocation/Makefile + src/examples/elementary/Makefile + $elua_examples + $cxx_examples" +fi + AC_CONFIG_FILES([ Makefile data/Makefile @@ -5639,23 +5665,7 @@ src/Makefile src/benchmarks/eina/Makefile src/benchmarks/eo/Makefile src/benchmarks/evas/Makefile -src/examples/eina/Makefile -src/examples/eina_cxx/Makefile -src/examples/eet/Makefile -src/examples/evas/Makefile -src/examples/ecore/Makefile -src/examples/ecore_avahi/Makefile -src/examples/eio/Makefile -src/examples/eldbus/Makefile -src/examples/ephysics/Makefile -src/examples/edje/Makefile -src/examples/emotion/Makefile -src/examples/emile/Makefile -src/examples/ethumb_client/Makefile -src/examples/elua/Makefile -src/examples/eolian_cxx/Makefile -src/examples/elocation/Makefile -src/examples/elementary/Makefile +$examples_build src/lib/eina/eina_config.h src/lib/efl/Efl_Config.h src/lib/elementary/Elementary_Options.h diff --git a/src/Makefile.am b/src/Makefile.am index cb89e3cacd..cd794557ee 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -97,7 +97,12 @@ endif include Makefile_Eolian_Js.am include Makefile_Efl_Js.am -.PHONY: benchmark examples +PHONIES = benchmark +if ALWAYS_BUILD_EXAMPLES +PHONIES += examples +endif + +.PHONY: $(PHONIES) BENCHMARK_SUBDIRS = \ benchmarks/eina \ @@ -150,6 +155,7 @@ check-build: all @$(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS) endif +if ALWAYS_BUILD_EXAMPLES examples: all @for d in $(EXAMPLES_SUBDIRS); do \ echo "Making examples in $$d"; \ @@ -161,6 +167,7 @@ install-examples: echo "Making install-examples in $$d"; \ $(MAKE) $(AM_MAKEFLAGS) -C $$d install-examples || exit 1; \ done +endif dist-hook: @mkdir -p $(distdir)/tests/elua/data/apps $(distdir)/tests/eolian/data