diff options
Diffstat (limited to 'externals/build')
-rwxr-xr-x | externals/build/Makefile.buildlayout | 67 | ||||
-rw-r--r-- | externals/build/doc/makefile | 131 |
2 files changed, 140 insertions, 58 deletions
diff --git a/externals/build/Makefile.buildlayout b/externals/build/Makefile.buildlayout new file mode 100755 index 00000000..a2e6ef06 --- /dev/null +++ b/externals/build/Makefile.buildlayout @@ -0,0 +1,67 @@ + +## Makefile.buildlayout + +# This file should be exactly the same in each section of the CVS. A copy is +# kept in each section of the CVS so that each section will be self-contained. +# To use it, you need to include it in your Makefile (i.e. "include +# Makefile.buildlayout") and then define $(INSTALL_PREFIX) and $(SRC_ROOT_DIR). +# +# $(SRC_ROOT_DIR) is the base directory of src tree, equivalent to the root +# level of the pure-data CVS. +# +# $(INSTALL_PREFIX) is the base directory to where all of the resulting files +# will be copied. +# +# This file is currently located in these places: +# abstractions +# externals/build +# packages +# +# it will be going here too: +# doc +# extensions +# gem +# pd +# +# <hans@at.or.at> + +# sources +ABSTRACTIONS_SRC = $(SRC_ROOT_DIR)/abstractions +DOC_SRC = $(SRC_ROOT_DIR)/doc +EXTERNALS_SRC = $(SRC_ROOT_DIR)/externals +FLEXT_SRC = $(SRC_ROOT_DIR)/externals/grill/flext +GEM_SRC = $(SRC_ROOT_DIR)/Gem +GEMLIBS_SRC = $(SRC_ROOT_DIR)/GemLibs +PD_SRC = $(SRC_ROOT_DIR)/pd +SCRIPTS_SRC = $(SRC_ROOT_DIR)/scripts + + +# destinations +APPLICATIONS_DEST = $(DOCS_DEST)/examples +DOCS_DEST = $(INSTALL_PREFIX)/doc +OBJECTS_DEST = $(INSTALL_PREFIX)/extra +HELP_DEST = $(DOCS_DEST)/5.reference +MANUALS_DEST = $(DOCS_DEST)/manuals + +#------------------------------------------------------------------------------# +# DIRECTORY STRUCTURE TARGETS +#------------------------------------------------------------------------------# +# first make sure that the directory structure is setup +$(INSTALL_PREFIX): + install -d $(INSTALL_PREFIX) + +$(APPLICATIONS_DEST): $(INSTALL_PREFIX) + install -d $(APPLICATIONS_DEST) + +$(DOCS_DEST): $(INSTALL_PREFIX) + install -d $(DOCS_DEST) + +$(HELP_DEST): $(INSTALL_PREFIX) + install -d $(HELP_DEST) + +$(MANUALS_DEST): $(INSTALL_PREFIX) + install -d $(MANUALS_DEST) + +$(OBJECTS_DEST): $(INSTALL_PREFIX) + install -d $(OBJECTS_DEST) + diff --git a/externals/build/doc/makefile b/externals/build/doc/makefile index 93f3bfb2..d1e0dbe2 100644 --- a/externals/build/doc/makefile +++ b/externals/build/doc/makefile @@ -4,88 +4,103 @@ # inclusion into the externals packages # -DOC_DIR = . +SRC_ROOT_DIR := $(shell pwd)/../../.. +INSTALL_PREFIX = . -all: -# add write perms to allow rewriting over all files - chmod -R u+w $(DOC_DIR) +all: install + +include ../Makefile.buildlayout + +# this is here to retain compatibility to the way that this makefile copied +# files before it was added to the unified build system +HELP_DEST = . + +install: #---------------------------------------------------------------------------- # all standard objs' help files - install -p -m0644 \ - ../../OSCx/doc/*.pd \ - ../../control/*/*.pd \ - ../../signal/*/*.pd \ - ../../aenv~/*.pd \ - ../../arraysize/*.pd \ - ../../beatpipe/*.pd \ - ../../build/*.pd \ - ../../bbogart/chaos/tools/*.pd \ - ../../bbogart/*/*.pd \ - ../../creb/doc/*.pd \ - ../../creb/doc/examples/*.pd \ - ../../cxc/reference/*.pd \ - ../../dfx/*/*.pd \ - ../../ext13/doc/*.pd \ - ../../ggee/*/*-help.pd \ - ../../gem2pdp/*.pd \ - ../../ff/*.pd \ - ../../freeverb~/*.pd \ - ../../hcs/*-help.pd \ - ../../hcs/*/doc/*.pd \ - ../../hcs/hid/examples/*.pd \ - ../../hcs/pan/*-help.pd \ - ../../iem/*/*/*-help.pd \ - ../../markex/*.pd \ - ../../maxlib/help/*.* \ - ../../mjlib/doc/*.pd \ - ../../motex/*.pd \ - ../../nusmuk/line3/*.pd\ - ../../pdogg/*/*.pd \ - ../../plugin~/*.pd \ - ../../pmpd/help/*.pd\ - ../../rhythm_estimator/*.p? \ - ../../sprinkler/sprinkler-help.pd \ - ../../susloop~/*.pd \ - ../../svf~/*.pd \ - ../../vbap/*.pd \ - ../../vst/*.pd \ - ../../zhzxh~/*.pd \ - $(DOC_DIR) +# it had to be broken up because the list is soo long + install -p \ + $(EXTERNALS_SRC)/OSCx/doc/*.pd \ + $(EXTERNALS_SRC)/control/*/*.pd \ + $(EXTERNALS_SRC)/signal/*/*.pd \ + $(EXTERNALS_SRC)/aenv~/*.pd \ + $(EXTERNALS_SRC)/arraysize/*.pd \ + $(EXTERNALS_SRC)/beatpipe/*.pd \ + $(EXTERNALS_SRC)/build/*.pd \ + $(EXTERNALS_SRC)/bbogart/chaos/tools/*.pd \ + $(EXTERNALS_SRC)/bbogart/*/*.pd \ + $(EXTERNALS_SRC)/creb/doc/*.pd \ + $(HELP_DEST) + install -p \ + $(EXTERNALS_SRC)/creb/doc/examples/*.pd \ + $(EXTERNALS_SRC)/cxc/reference/*.pd \ + $(EXTERNALS_SRC)/dfx/*/*.pd \ + $(EXTERNALS_SRC)/ext13/doc/*.pd \ + $(EXTERNALS_SRC)/ggee/*/*-help.pd \ + $(EXTERNALS_SRC)/gem2pdp/*.pd \ + $(EXTERNALS_SRC)/ff/*.pd \ + $(EXTERNALS_SRC)/freeverb~/*.pd \ + $(EXTERNALS_SRC)/hcs/*-help.pd \ + $(HELP_DEST) + install -p \ + $(EXTERNALS_SRC)/hcs/*/doc/*.pd \ + $(EXTERNALS_SRC)/hcs/hid/examples/*.pd \ + $(EXTERNALS_SRC)/hcs/pan/*-help.pd \ + $(EXTERNALS_SRC)/iem/*/*/*-help.pd \ + $(EXTERNALS_SRC)/markex/*.pd \ + $(EXTERNALS_SRC)/maxlib/help/*.* \ + $(EXTERNALS_SRC)/mjlib/doc/*.pd \ + $(EXTERNALS_SRC)/motex/*.pd \ + $(EXTERNALS_SRC)/nusmuk/line3/*.pd\ + $(HELP_DEST) + install -p \ + $(EXTERNALS_SRC)/pdogg/*/*.pd \ + $(EXTERNALS_SRC)/plugin~/*.pd \ + $(EXTERNALS_SRC)/pmpd/help/*.pd\ + $(EXTERNALS_SRC)/rhythm_estimator/*.p? \ + $(EXTERNALS_SRC)/sprinkler/sprinkler-help.pd \ + $(EXTERNALS_SRC)/susloop~/*.pd \ + $(EXTERNALS_SRC)/svf~/*.pd \ + $(EXTERNALS_SRC)/vbap/*.pd \ + $(EXTERNALS_SRC)/vst/*.pd \ + $(EXTERNALS_SRC)/zhzxh~/*.pd \ + $(HELP_DEST) #---------------------------------------------------------------------------- # IEMlib uses its own dir and since its not maintained in CVS # its best not to change the objects - install -d -m0755 $(DOC_DIR)/iemhelp - install -p -m0644 ../../iemlib/iemhelp/*.* $(DOC_DIR)/iemhelp + install -d $(HELP_DEST)/iemhelp + install -p $(EXTERNALS_SRC)/iemlib/iemhelp/*.* $(HELP_DEST)/iemhelp #---------------------------------------------------------------------------- # PMDP examples - install -d -m0755 $(DOC_DIR)/pmpd + install -d $(HELP_DEST)/pmpd # pmpd exemples files has to go in an other directory - install -p -m0644 ../../pmpd/exemples/*.pd $(DOC_DIR)/pmpd + install -p $(EXTERNALS_SRC)/pmpd/exemples/*.pd $(HELP_DEST)/pmpd # pmpd documentation - cp -Rp ../../pmpd/doc $(DOC_DIR)/pmpd/doc + cp -Rp $(EXTERNALS_SRC)/pmpd/doc $(HELP_DEST)/pmpd/doc #---------------------------------------------------------------------------- # zexy uses its own dir - install -d -m0755 $(DOC_DIR)/zexy - install -p -m0644 ../../zexy/zexy.pd $(DOC_DIR) - install -p -m0644 ../../zexy/examples/*.* $(DOC_DIR)/zexy + install -d $(HELP_DEST)/zexy + install -p $(EXTERNALS_SRC)/zexy/zexy.pd $(HELP_DEST) + install -p $(EXTERNALS_SRC)/zexy/examples/*.* $(HELP_DEST)/zexy #---------------------------------------------------------------------------- # iemmatrix uses its own dir - install -d -m0755 $(DOC_DIR)/iemmatrix - install -p -m0644 ../../iem/iemmatrix/doc/*.pd $(DOC_DIR)/iemmatrix + install -d $(HELP_DEST)/iemmatrix + install -p $(EXTERNALS_SRC)/iem/iemmatrix/doc/*.pd $(HELP_DEST)/iemmatrix #---------------------------------------------------------------------------- # remove help files for objects that are not included due to conflicts, etc. # # mjlib [prob] conflicts with cyclone's [prob] - rm prob-help.pd + rm $(HELP_DEST)/prob-help.pd # maxlib conflicts with cyclone - rm split-help.pd + rm $(HELP_DEST)/split-help.pd #---------------------------------------------------------------------------- # this is mildly dangerous, since it just deletes everything clean: - rm -f -- *.pd *.ps *.txt test.som *~ - rm -Rf -- iemhelp zexy pmpd iemmatrix + cd $(HELP_DEST) && rm -f -- *.pd *.ps *.txt test.som *~ + rm -Rf -- $(HELP_DEST)/iemhelp $(HELP_DEST)/zexy \ + $(HELP_DEST)/pmpd $(HELP_DEST)/iemmatrix |