aboutsummaryrefslogtreecommitdiff
path: root/externals/grill/flext/makefile.pd-mingw
diff options
context:
space:
mode:
authorThomas Grill <xovo@users.sourceforge.net>2004-02-22 03:34:00 +0000
committerThomas Grill <xovo@users.sourceforge.net>2004-02-22 03:34:00 +0000
commit74e28b058aaf629d94ad7d44a9add3062e89441d (patch)
treee2a99c9f85f48108d1e1bc98b754143d953adb22 /externals/grill/flext/makefile.pd-mingw
parentcc4ac0dd18e12e0f7e1d06eeb5133cb018aa0ebe (diff)
""
svn path=/trunk/; revision=1326
Diffstat (limited to 'externals/grill/flext/makefile.pd-mingw')
-rw-r--r--externals/grill/flext/makefile.pd-mingw136
1 files changed, 136 insertions, 0 deletions
diff --git a/externals/grill/flext/makefile.pd-mingw b/externals/grill/flext/makefile.pd-mingw
new file mode 100644
index 00000000..9a7db3a5
--- /dev/null
+++ b/externals/grill/flext/makefile.pd-mingw
@@ -0,0 +1,136 @@
+# flext - C++ layer for Max/MSP and pd (pure data) externals
+# Copyright (c) 2001-2004 Thomas Grill (xovo@gmx.net)
+#
+# Makefile for gcc @ mingw
+#
+# usage:
+# to build run "make -f makefile.pd-mingw"
+#
+# ---------------------------------------------
+#
+# compiling for threaded usage is not supported
+#
+
+CONFIG=config-pd-mingw.txt
+
+include $(CONFIG)
+
+
+# compiler+linker stuff
+INCLUDES=$(PDPATH)/src # /usr/include
+
+FLAGS=-DFLEXT_SYS=2 $(UFLAGS)
+CFLAGS=-O2
+CFLAGS_D=-DFLEXT_DEBUG -g
+CFLAGS_T=-DFLEXT_THREADS
+CFLAGS_S=-DFLEXT_SHARED
+LIBS=
+
+INSTDIR=$(PDPATH)/flext
+
+# ----------------------------------------------
+# the rest can stay untouched
+# ----------------------------------------------
+
+NAME=flext
+SRCDIR=source
+
+# all the source files from the package
+include make-files.txt
+
+ifdef SNDOBJ
+INCLUDES+=$(SNDOBJ)
+SRCS+=$(SRCS_SNDOBJ)
+HDRS+=$(HDRS_SNDOBJ)
+endif
+
+ifdef STK
+INCLUDES+=$(STK)
+SRCS+=$(SRCS_STK)
+HDRS+=$(HDRS_STK)
+endif
+
+MAKEFILE=makefile.pd-mingw
+TARGET=$(TARGDIR)/$(NAME)-pdwin.lib
+TARGET_D=$(TARGDIR)/$(NAME)_d-pdwin.lib
+TARGET_T=$(TARGDIR)/$(NAME)_t-pdwin.lib
+TARGET_TD=$(TARGDIR)/$(NAME)_td-pdwin.lib
+
+TARGETS=$(TARGET) $(TARGET_D) # $(TARGET_T) $(TARGET_TD) $(TARGET_S) $(TARGET_SD)
+
+
+all: $(TARGDIR) $(TARGETS)
+$(TARGDIR):
+ -mkdir $(TARGDIR)
+
+$(SRCS): $(HDRS) $(IHDRS) $(MAKEFILE) $(CONFIG)
+ touch $@
+
+
+$(TARGDIR)/%.o : $(SRCDIR)/%.cpp
+ $(CXX) -c $(CFLAGS) $(FLAGS) $(patsubst %,-I%,$(INCLUDES) $(SRCDIR)) $< -o $@
+
+$(TARGDIR)/%.do : $(SRCDIR)/%.cpp
+ $(CXX) -c $(CFLAGS_D) $(FLAGS) $(patsubst %,-I%,$(INCLUDES) $(SRCDIR)) $< -o $@
+
+$(TARGDIR)/%.to : $(SRCDIR)/%.cpp
+ $(CXX) -c $(CFLAGS) $(CFLAGS_T) $(FLAGS) $(patsubst %,-I%,$(INCLUDES) $(SRCDIR)) $< -o $@
+
+$(TARGDIR)/%.tdo : $(SRCDIR)/%.cpp
+ $(CXX) -c $(CFLAGS_D) $(CFLAGS_T) $(FLAGS) $(patsubst %,-I%,$(INCLUDES) $(SRCDIR)) $< -o $@
+
+$(TARGDIR)/%.so : $(SRCDIR)/%.cpp
+ $(CXX) -c $(CFLAGS) $(CFLAGS_S) $(FLAGS) $(patsubst %,-I%,$(INCLUDES) $(SRCDIR)) $< -o $@
+
+$(TARGDIR)/%.sdo : $(SRCDIR)/%.cpp
+ $(CXX) -c $(CFLAGS_D) $(CFLAGS_S) $(FLAGS) $(patsubst %,-I%,$(INCLUDES) $(SRCDIR)) $< -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 $@
+
+$(TARGET_S) : $(patsubst %.cpp,$(TARGDIR)/%.so,$(SRCS))
+ $(CXX) -o $@ $^
+ chmod 755 $@
+
+$(TARGET_SD) : $(patsubst %.cpp,$(TARGDIR)/%.sdo,$(SRCS))
+ $(CXX) -o $@ $^
+ chmod 755 $@
+
+
+.PHONY: clean install
+clean:
+ rm -f $(TARGDIR)/*.o $(TARGETS)
+
+ifdef INSTDIR
+$(INSTDIR):
+ -mkdir $(INSTDIR)
+
+install:: $(INSTDIR)
+endif
+
+install:: $(TARGETS) $(patsubst %,$(SRCDIR)/%,$(HDRS))
+ cp $^ $(INSTDIR)
+
+
+
+
+
+
+
+
+
+