aboutsummaryrefslogtreecommitdiff
path: root/externals/grill/flext/makefile.pd-linux
diff options
context:
space:
mode:
Diffstat (limited to 'externals/grill/flext/makefile.pd-linux')
-rw-r--r--externals/grill/flext/makefile.pd-linux96
1 files changed, 96 insertions, 0 deletions
diff --git a/externals/grill/flext/makefile.pd-linux b/externals/grill/flext/makefile.pd-linux
new file mode 100644
index 00000000..501399bd
--- /dev/null
+++ b/externals/grill/flext/makefile.pd-linux
@@ -0,0 +1,96 @@
+# flext - C++ layer for Max/MSP and pd (pure data) externals
+# Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net)
+#
+# 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) $(SNDOBJ)
+FLAGS=-DPD
+CFLAGS=-O6 -mcpu=pentiumpro
+CFLAGS_D=-mcpu=pentiumpro -g
+CFLAGS_T=-DFLEXT_THREADS
+LIBS=
+
+# ----------------------------------------------
+# the rest can stay untouched
+# ----------------------------------------------
+
+NAME=flext
+
+# all the source files from the package
+include make-files.txt
+
+ifdef SNDOBJ
+_SRCS=$(SRCS) flsndobj.cpp
+_HDRS=$(HDRS) flsndobj.h
+else
+_SRCS=$(SRCS)
+_HDRS=$(HDRS)
+endif
+
+MAKEFILE=makefile.pd-linux
+TARGET=$(TARGDIR)/$(NAME).a
+TARGET_D=$(TARGDIR)/$(NAME)_d.a
+TARGET_T=$(TARGDIR)/$(NAME)_t.a
+TARGET_TD=$(TARGDIR)/$(NAME)_td.a
+
+all: $(TARGDIR) $(TARGET) $(TARGET_D) $(TARGET_T) $(TARGET_TD)
+
+$(TARGDIR):
+ mkdir $(TARGDIR)
+
+$(patsubst %,source/%,$(_SRCS)): $(patsubst %,source/%,$(_HDRS)) $(patsubst %,source/%,$(IHDRS)) $(MAKEFILE) $(CONFIG)
+ touch $@
+
+$(TARGDIR)/%.o : source/%.cpp
+ $(CXX) -c $(CFLAGS) $(FLAGS) $(patsubst %,-I%,$(INCLUDES) source) $< -o $@
+
+$(TARGDIR)/%.do : source/%.cpp
+ $(CXX) -c $(CFLAGS_D) $(FLAGS) $(patsubst %,-I%,$(INCLUDES) source) $< -o $@
+
+$(TARGDIR)/%.to : source/%.cpp
+ $(CXX) -c $(CFLAGS) $(CFLAGS_T) $(FLAGS) $(patsubst %,-I%,$(INCLUDES) source) $< -o $@
+
+$(TARGDIR)/%.tdo : source/%.cpp
+ $(CXX) -c $(CFLAGS_D) $(CFLAGS_T) $(FLAGS) $(patsubst %,-I%,$(INCLUDES) source) $< -o $@
+
+$(TARGET) : $(patsubst %.cpp,$(TARGDIR)/%.o,$(_SRCS))
+ ar rc $@ $^
+ chmod 755 $@
+
+$(TARGET_D) : $(patsubst %.cpp,$(TARGDIR)/%.do,$(_SRCS))
+ ar rc $@ $^
+ chmod 755 $@
+
+$(TARGET_T) : $(patsubst %.cpp,$(TARGDIR)/%.to,$(_SRCS))
+ ar rc $@ $^
+ chmod 755 $@
+
+$(TARGET_TD) : $(patsubst %.cpp,$(TARGDIR)/%.tdo,$(_SRCS))
+ ar rc $@ $^
+ chmod 755 $@
+
+.PHONY: clean install
+
+clean:
+ rm -f $(TARGDIR)/*.{o,do,to,tdo} $(TARGET) $(TARGET_D) $(TARGET_T) $(TARGET_TD)
+
+$(INSTDIR):
+ -mkdir $(INSTDIR)
+
+install:: $(INSTDIR)
+
+install:: $(TARGET) $(TARGET_D) $(TARGET_T) $(TARGET_TD) $(patsubst %,source/%,$(_HDRS))
+ cp $^ $(INSTDIR)
+ chmod 755 $(patsubst %,$(INSTDIR)/%,$(notdir $^))
+ chown root.users $(patsubst %,$(INSTDIR)/%,$(notdir $^))
+