diff options
author | Hans-Christoph Steiner <eighthave@users.sourceforge.net> | 2005-11-18 07:08:35 +0000 |
---|---|---|
committer | Hans-Christoph Steiner <eighthave@users.sourceforge.net> | 2005-11-18 07:08:35 +0000 |
commit | 518cfd25c5e6d58e6eb0bfc25c59c3488723d6d5 (patch) | |
tree | d21c167049298842bc9978d7aea960fa5644fc63 /externals/Makefile.buildlayout | |
parent | a2b63665232ecbc31dddd6d1351ac34abe1c8457 (diff) |
it builds everything that the previous one did, plus the doc/makefile was folded into this one; next, make it actually do the C compiling instead of having the separate makefiles for each platform
svn path=/trunk/; revision=3961
Diffstat (limited to 'externals/Makefile.buildlayout')
-rw-r--r-- | externals/Makefile.buildlayout | 90 |
1 files changed, 90 insertions, 0 deletions
diff --git a/externals/Makefile.buildlayout b/externals/Makefile.buildlayout new file mode 100644 index 00000000..5a2ec76c --- /dev/null +++ b/externals/Makefile.buildlayout @@ -0,0 +1,90 @@ + +## 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> + +#------------------------------------------------------------------------------# +# PLATFORM-SPECIFIC SETTINGS +#------------------------------------------------------------------------------# +# which OS to compile for +UNAME := $(shell uname -s) +ifeq ($(UNAME),Linux) + OS_NAME = linux + EXTENSION = pd_linux +else + ifeq ($(UNAME),Darwin) + OS_NAME = darwin + EXTENSION = pd_darwin + else + ifeq (MINGW,$(findstring MINGW,$(UNAME))) + OS_NAME = win + EXTENSION = dll + else + OS_NAME = unknown + EXTENSION = so + $(warning WARNING: unknown environment "$(UNAME)".) + endif + endif +endif + +# 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) |