From 0df6dd4d8aea6edc733de81fb7eec115ea59a36e Mon Sep 17 00:00:00 2001 From: Peter Breitenlohner Date: Sun, 7 Jul 2013 14:29:53 +0000 Subject: build system: additional Makefile fragments better handling of dependencies for highly parallel make git-svn-id: svn://tug.org/texlive/trunk@31127 c570f23f-e606-0410-a88d-b1316a301751 --- Build/source/texk/Makefile.am | 55 +++++++------------------------------------ 1 file changed, 9 insertions(+), 46 deletions(-) (limited to 'Build/source/texk/Makefile.am') diff --git a/Build/source/texk/Makefile.am b/Build/source/texk/Makefile.am index 3529e918507..5ca4f2ab25a 100644 --- a/Build/source/texk/Makefile.am +++ b/Build/source/texk/Makefile.am @@ -1,14 +1,14 @@ ## Makefile.am for the TeX Live subdirectory texk/ ## -## Copyright (C) 2009-2012 Peter Breitenlohner +## Copyright (C) 2009-2013 Peter Breitenlohner ## You may freely use, modify and/or distribute this file. ## ## Use 'aclocal --force' (for "computed m4_sinclude") ## ACLOCAL_AMFLAGS = -I ../m4 --force -SUBDIRS = . $(SUBTEXK) -DIST_SUBDIRS = $(DIST_SUBTEXK) +SUBDIRS = . $(MAKE_SUBDIRS) +DIST_SUBDIRS = $(CONF_SUBDIRS) cf_silent = $(cf_silent_@AM_V@) cf_silent_ = $(cf_silent_@AM_DEFAULT_V@) @@ -19,49 +19,12 @@ cf_silent_1 = dist-hook: rm -rf `find $(distdir) -name .svn` -CONFIG_AUX = ../subsubdir-conf.cmd - -all-local: subtexk - -.PHONY: subtexk -# We must configure all texk subdirs since 'make dist' needs the Makefile. -# For those not required for the current set of configure options -# we append '--disable-build' so they can skip tests that would -# fail because, e.g., some required libraries were not built. -# -# Sequentially configure and optionally build all texk programs; -# code inspired by automake's way to handle recursive targets. -subtexk: $(CONFIG_AUX) - @fail= failcom='exit 1'; \ - for f in x $$MAKEFLAGS; do \ - case $$f in \ - *=* | --[!k]*);; \ - *k*) failcom='fail=yes';; \ - esac; \ - done; \ - list='$(DIST_SUBTEXK)'; for subtexk in $$list; do \ - if test ! -f $$subtexk/Makefile; then \ - test -d $$subtexk || $(MKDIR_P) $$subtexk; \ - cmd=`cat $(CONFIG_AUX) | sed "s,auxdir/auxsub,texk/$$subtexk,g"`; \ - case " $(SUBTEXK) " in \ - *" $$subtexk "*) skip=;; \ - *) skip=' --disable-build';; \ - esac; \ - (cd $$subtexk && echo "=== configuring in $$subtexk (`pwd`)" && \ - if $(AM_V_P); then echo "make: running $(SHELL) $$cmd$$skip"; fi && \ - CONFIG_SHELL=$(SHELL) && export CONFIG_SHELL && \ - eval $(SHELL) $$cmd$$skip $(cf_silent) || \ - { echo "=== configuring in $$subtexk failed"; exit 1; }) && \ - if test "x$$skip" = x; then \ - echo "Making all in $$subtexk" && \ - (cd $$subtexk && $(MAKE) $(AM_MAKEFLAGS) all); \ - fi || eval $$failcom; \ - fi; \ - done; test -z "$$fail" +## Configure and build subdirs. +## +recurse_this = texk/ +recurse_top = ../ -../subsubdir-conf.cmd: - @echo "configure in ../auxdir/auxsub failed to create the file $@" - exit 1 +include $(srcdir)/../am/recurse.am # Common infrastructure for tests EXTRA_DIST = tests @@ -71,4 +34,4 @@ EXTRA_DIST = tests triptrap: web2c/Makefile cd web2c && $(MAKE) $(AM_MAKEFLAGS) $@ web2c/Makefile: - $(MAKE) $(AM_MAKEFLAGS) DIST_SUBTEXK=web2c subtexk + $(MAKE) $(AM_MAKEFLAGS) CONF_SUBDIRS=web2c subtexk -- cgit v1.2.3