aboutsummaryrefslogtreecommitdiff
path: root/tbext/makefile.pd-mingw
diff options
context:
space:
mode:
authorTim Blechmann <timblech@users.sourceforge.net>2004-07-13 20:01:49 +0000
committerIOhannes m zmölnig <zmoelnig@iem.at>2015-10-14 15:11:54 +0200
commit5e7742116ef3b268823d43d26dab3239e4472dcf (patch)
tree297b35bf6f93ead82996761c1c46a30996cf020c /tbext/makefile.pd-mingw
parentb02a1e9aee38e588e6d4430d0e84a9e736c2b0f0 (diff)
adapted thomas' build system
svn path=/trunk/externals/tb/; revision=1853
Diffstat (limited to 'tbext/makefile.pd-mingw')
-rw-r--r--tbext/makefile.pd-mingw85
1 files changed, 85 insertions, 0 deletions
diff --git a/tbext/makefile.pd-mingw b/tbext/makefile.pd-mingw
new file mode 100644
index 0000000..065930e
--- /dev/null
+++ b/tbext/makefile.pd-mingw
@@ -0,0 +1,85 @@
+# makefile adapted from thomas grill's xsample makefile
+#
+# Makefile for gcc @ minGW
+#
+# usage:
+# to build run "make -f makefile.pd-mingw"
+# to install (as root), do "make -f makefile.pd-mingw install"
+#
+
+CONFIG=config-pd-mingw.txt
+MAKEFILE=makefile.pd-mingw
+
+include ${CONFIG}
+
+
+# compiler stuff
+INCLUDES=$(PDINC) ./headers/plugin_interface ./headers/common ./headers/server ./headers/app ./headers/lang
+
+FLAGS=-DFLEXT_SYS=2
+CFLAGS=-O2 -funroll-loops -fmove-all-movables -frerun-loop-opt -finline-functions -fno-rtti -fno-exceptions ${UFLAGS}
+
+PDLIBS=$(PD)/bin/pd.dll $(PD)/bin/pthreadVC.dll
+
+
+ifdef FLEXT_SHARED
+
+CFLAGS+=-DFLEXT_SHARED
+FLEXTLIB=$(FLEXTPATH)/flext.dll
+
+else
+
+FLEXTLIB=$(FLEXTPATH)/flext-pdwin.lib
+
+endif
+
+
+# ----------------------------------------------
+# the rest can stay untouched
+# ----------------------------------------------
+
+NAME=tbext
+
+include make-files.txt
+
+TARGET=$(TARGDIR)/$(NAME).dll
+
+# default target
+all: $(TARGDIR) $(TARGET)
+
+$(patsubst %,$(SRCDIR)/%,$(SRCS)): $(patsubst %,$(SRCDIR)/%,$(HDRS)) $(MAKEFILE) $(CONFIG)
+# echo touch $(patsubst %,$(SRCDIR)/%,$(SRCS)) # minGW has no touch
+
+$(TARGDIR):
+ -mkdir $(TARGDIR)
+
+$(TARGDIR)/%.o : $(SRCDIR)/%.cpp
+ $(CXX) -c $(CFLAGS) $(FLAGS) $(patsubst %,-I%,$(INCLUDES) $(FLEXTPATH)) $< -o $@
+
+$(TARGET) : $(patsubst %.cpp,$(TARGDIR)/%.o,$(SRCS)) $(FLEXTLIB)
+ $(CXX) -shared $(LDFLAGS) $^ ${PDLIBS} $(patsubst %,-l%,$(LIBS)) -o $@
+ strip --strip-unneeded $@
+ chmod 755 $@
+
+$(INSTDIR):
+ -mkdir $(INSTDIR)
+
+install:: $(INSTDIR)
+
+install:: $(TARGET)
+ cp $^ $(INSTDIR)
+# chown root.root $(patsubst %,$(INSTDIR)/%,$(notdir $^))
+
+$(HELPDIR):
+ -mkdir $(HELPDIR)
+
+install-help:: $(HELPDIR)
+
+install-help:: ./pd
+ chmod 644 $^/*.*
+ cp $^/*.* $(HELPDIR)
+
+
+.PHONY: clean
+clean:
+ rm -f $(TARGDIR)/*.o $(TARGET)