diff options
Diffstat (limited to 'externals/grill/dynext/makefile.pd-linux')
-rw-r--r-- | externals/grill/dynext/makefile.pd-linux | 98 |
1 files changed, 98 insertions, 0 deletions
diff --git a/externals/grill/dynext/makefile.pd-linux b/externals/grill/dynext/makefile.pd-linux new file mode 100644 index 00000000..9d401053 --- /dev/null +++ b/externals/grill/dynext/makefile.pd-linux @@ -0,0 +1,98 @@ +# dyn~ - dynamic object management for PD +# +# Copyright (c)Thomas Grill (xovo@gmx.net) +# For information on usage and redistribution, and for a DISCLAIMER OF ALL +# WARRANTIES, see the file, "license.txt," in this distribution. +# +# +# Makefile for gcc @ linux +# +# usage: +# to build run "make -f makefile.pd-linux" +# to install (as root), do "make -f makefile.pd-linux install" +# + +CONFIG=config-pd-linux.txt + +include $(CONFIG) + + +# compiler+linker stuff +INCLUDES=$(PDPATH) +LIBPATH= +FLAGS=-DFLEXT_SYS=2 +CFLAGS=-O2 $(UFLAGS) +LDFLAGS=$(UFLAGS) # needed by icc +LIBS=stdc++ + + +ifdef FLEXT_SHARED +CFLAGS+=-shared -DFLEXT_SHARED +LDFLAGS+=-L $(FLEXTPATH) +LIBFLEXT=-lflext + +ifeq ($(CXX),icc) +LDFLAGS+=-i_dynamic +else +LDFLAGS+=-Wl,-Bdynamic +endif + +else + +LIBFLEXT=$(FLEXTPATH)/libflext.a + +endif + + +# --------------------------------------------- +# the rest can stay untouched +# ---------------------------------------------- + +NAME=dyn~ + +# all the source files from the package +include make-files.txt + + + +TARGET=$(TARGDIR)/$(NAME).pd_linux + +# default target +all: $(TARGDIR) $(TARGET) + +$(patsubst %,$(DIR)/%,$(SRCS)): $(patsubst %,$(DIR)/%,$(HDRS)) $(MAKEFILE) $(CONFIG) + touch $@ + +$(TARGDIR): + -mkdir $(TARGDIR) + +$(TARGDIR)/%.o : $(DIR)/%.cpp + $(CXX) -c $(CFLAGS) $(FLAGS) $(patsubst %,-I%,$(INCLUDES) $(FLEXTPATH)) $< -o $@ + +$(TARGET) : $(patsubst %.cpp,$(TARGDIR)/%.o,$(SRCS)) + $(CXX) -shared $(LDFLAGS) -o $@ $^ $(LIBFLEXT) $(patsubst %,-L%,$(LIBPATH)) $(patsubst %,-l%,$(LIBS)) + strip --strip-unneeded $@ + chmod 755 $@ + +$(INSTPATH): + -mkdir $(INSTPATH) + +install:: $(INSTPATH) + +install:: $(TARGET) + cp $^ $(INSTPATH) + chown root.root $(patsubst %,$(INSTPATH)/%,$(notdir $^)) + chmod 755 $(patsubst %,$(INSTPATH)/%,$(notdir $^)) + +.PHONY: clean +clean: + rm -f $(TARGDIR)/*.o $(TARGET) + + + + + + + + + |