diff options
Diffstat (limited to 'extended/Makefile')
-rw-r--r-- | extended/Makefile | 90 |
1 files changed, 90 insertions, 0 deletions
diff --git a/extended/Makefile b/extended/Makefile new file mode 100644 index 0000000..306d543 --- /dev/null +++ b/extended/Makefile @@ -0,0 +1,90 @@ +## -*- Mode: Makefile -*- +## +## File: externals/moocow/extended/Makefile +## Author: Bryan Jurish <moocow@bbaw.de> +## Description: pd-extended makefile for moocow's externals +## + +##====================================================================== +## Variables + +SUBDIRS = \ + ../deque \ + ../pdstring \ + ../readdir \ + ../weightmap + +# ../flite ../gfsm + +#CFLAGS ?= -march=k8 + +MOOCOW_DIR ?=$(shell pwd) +MOOCOW_BUILD ?=$(MOOCOW_DIR)/build + +CONFIGURE_ARGS=\ + CFLAGS="$(CFLAGS)" \ + --with-pd-include="$(pd_src)" \ + --with-pd-dir="$(MOOCOW_BUILD)" \ + --with-pd-extdir="$(MOOCOW_BUILD)/externs" + +##====================================================================== +## Rules: default +all: build.stamp + +autogen: $(SUBDIRS:=-autogen) +configure: $(SUBDIRS:=-configure) + +build.stamp: $(SUBDIRS:=/build.stamp) + touch $@ + +reamde: README.txt +README.txt: README.pod + pod2text README.pod $@ + +clean: + for d in $(SUBDIRS); do $(MAKE) -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; + +cvsclean: clean + for d in $(SUBDIRS); do $(MAKE) -C $$d cvsclean || true; done; + + +##====================================================================== +## Templates: subdir + +## RULES = $(call subdir_template,$(dir_path),$(configure_args)) +define subdir_template + $(1)-autogen: + (cd $(1); ./autogen.sh) || true + + $(1)-configure: + (cd $(1); ./configure $(CONFIGURE_ARGS) $(2)) || true + + $(1)/configure: $(1)/configure.in $(1)/Makefile.am $(1)/autogen.sh + $(MAKE) $(1)-autogen + + $(1)/Makefile: $(1)/configure + $(MAKE) $(1)-configure + + $(1)/build.stamp: $(1)/Makefile + $(MAKE) -C $(1) all install || true + touch $$@ + + $(1)-clean: + $(MAKE) -C $(1) clean || true +endef + + +##====================================================================== +## Rules: subdirectories + +$(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,../weightmap)) |