From ffb7b436756e9cd077392d1733daf13218874530 Mon Sep 17 00:00:00 2001 From: Bryan Jurish Date: Fri, 3 Aug 2007 11:06:05 +0000 Subject: + expect CFLAGS and pd_src from parent Makefile + clobber DESTDIR from parent Makefile for children - since automake/autoconf respect DESTDIR: bummer + always autogen && configure on 'make build.stamp' + attempt to build even libraries with dependencies (flite,gfsm) svn path=/trunk/externals/moocow/; revision=8377 --- extended/Makefile | 60 ++++++++++++++++++++++++++++++++++------------------- extended/README.pod | 24 +++++++++++++++++---- extended/README.txt | 22 +++++++++++++++----- 3 files changed, 76 insertions(+), 30 deletions(-) (limited to 'extended') diff --git a/extended/Makefile b/extended/Makefile index 7c53b3b..1f6a31d 100644 --- a/extended/Makefile +++ b/extended/Makefile @@ -9,24 +9,30 @@ ## Variables SUBDIRS = \ + ../flite \ + ../gfsm \ ../deque \ ../pdstring \ ../readdir \ - ../weightmap \ - ../../sprinkler + ../../sprinkler \ + ../weightmap -# ../flite ../gfsm - -#CFLAGS ?= -march=k8 - -MOOCOW_DIR ?=$(shell pwd) -MOOCOW_BUILD ?=$(MOOCOW_DIR)/build +##-- local variables +MOOCOW_DIR ?=$(shell pwd) +MOOCOW_BUILD ?=$(MOOCOW_DIR)/build.moo +MOOCOW_MFLAGS ?=DESTDIR="" CONFIGURE_ARGS=\ CFLAGS="$(CFLAGS)" \ - --with-pd-include="$(pd_src)" \ - --with-pd-dir="$(MOOCOW_BUILD)" \ - --with-pd-extdir="$(MOOCOW_BUILD)/externs" + --with-pd-include="$(pd_src)/src" \ + --with-pd-dir="$(MOOCOW_BUILD)" + +# --with-pd-extdir="$(MOOCOW_BUILD)/externs" + +##-- defaults +CFLAGS ?= -g -O2 +pd_src ?= $(CURDIR)/../../../pd + ##====================================================================== ## Rules: default @@ -43,15 +49,18 @@ README.txt: README.pod pod2text README.pod $@ clean: - for d in $(SUBDIRS); do $(MAKE) -C $$d clean || true; rm -f $$d/build.stamp; done; + for d in $(SUBDIRS); do $(MAKE) $(MOOCOW_MFLAGS) -C $$d clean || true; rm -f $$d/build.stamp; done; rm -f build.stamp config.log rm -rf $(MOOCOW_BUILD) realclean: clean - for d in $(SUBDIRS); do $(MAKE) -C $$d realclean || true; done; + for d in $(SUBDIRS); do $(MAKE) $(MOOCOW_MFLAGS) -C $$d realclean || true; done; + +distclean: clean + for d in $(SUBDIRS); do $(MAKE) $(MOOCOW_MFLAGS) -C $$d distclean || true; done; cvsclean: clean - for d in $(SUBDIRS); do $(MAKE) -C $$d cvsclean || true; done; + for d in $(SUBDIRS); do $(MAKE) $(MOOCOW_MFLAGS) -C $$d cvsclean || true; done; ##====================================================================== @@ -59,27 +68,36 @@ cvsclean: clean ## RULES = $(call subdir_template,$(dir_path),$(configure_args)) define subdir_template - $(1)-autogen: - (cd $(1); ./autogen.sh) || true + $(1)-autogen: $(1)-distclean + (cd $(1); sh ./autogen.sh) || true $(1)-configure: $(1)-autogen - (cd $(1); ./configure $(CONFIGURE_ARGS) $(2)) || true + (cd $(1); sh ./configure $(CONFIGURE_ARGS) $(2)) || true $(1)/build.stamp: $(1)-configure - $(MAKE) -C $(1) all install || true + $(MAKE) $(MOOCOW_MFLAGS) -C $(1) all install || true touch $$@ $(1)-clean: $(MAKE) -C $(1) clean || true -endef + $(1)-distclean: + $(MAKE) -C $(1) distclean || true +endef ##====================================================================== ## Rules: subdirectories +##-- flite, gfsm: simulate failed builds +#$(eval $(call subdir_template,../flite,--with-flite-dir=/NOPE)) +#$(eval $(call subdir_template,../gfsm,--disable-gfsm)) + +##-- flite, gfsm: build 'em if you got 'em +$(eval $(call subdir_template,../flite)) +$(eval $(call subdir_template,../gfsm)) + +##-- the usual suspects $(eval $(call subdir_template,../deque)) -#$(eval $(call subdir_template,../flite)) -#$(eval $(call subdir_template,../gfsm)) $(eval $(call subdir_template,../pdstring,--enable-object-externals)) $(eval $(call subdir_template,../readdir)) $(eval $(call subdir_template,../../sprinkler)) diff --git a/extended/README.pod b/extended/README.pod index f01b373..7e23b44 100644 --- a/extended/README.pod +++ b/extended/README.pod @@ -19,23 +19,39 @@ Issuing the following commands to the shell: ... should result in all objects being compiled into extended/build/externs. This is intended to be called from externals/Makefile. + =head1 SUPPORTED EXTERNALS -This makefile currently supports the following of moocow's externals: +=head2 Standard Externals + +The following externals are built by default: deque pdstring (just the dummy object, not the library!) - any2string - string2any + any2string + string2any readdir + sprinkler weightmap -The following of moocow's externals are unsupported (for various reasons): +=head2 Optional Externals + +The following externals depend on additional libraries, which may or may +not be installed on your system. The build procedures for these externals +will be called, but may fail: flite gfsm + +=head2 Unsupported Externals + +The following externals and libraries are unsupported for various reasons: + ratts +See http://www.ling.uni-potsdam.de/~moocow/projects/pd for the "official" +distributions. + =head1 ACKNOWLEDGEMENTS diff --git a/extended/README.txt b/extended/README.txt index 35a0dba..c909ef6 100644 --- a/extended/README.txt +++ b/extended/README.txt @@ -17,22 +17,34 @@ USAGE externals/Makefile. SUPPORTED EXTERNALS - This makefile currently supports the following of moocow's externals: + Standard Externals + The following externals are built by default: deque pdstring (just the dummy object, not the library!) - any2string - string2any + any2string + string2any readdir + sprinkler weightmap - The following of moocow's externals are unsupported (for various - reasons): + Optional Externals + The following externals depend on additional libraries, which may or may + not be installed on your system. The build procedures for these + externals will be called, but may fail: flite gfsm + + Unsupported Externals + The following externals and libraries are unsupported for various + reasons: + ratts + See http://www.ling.uni-potsdam.de/~moocow/projects/pd for the + "official" distributions. + ACKNOWLEDGEMENTS Pd by Miller Puckette and others. -- cgit v1.2.1