aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Grill <xovo@users.sourceforge.net>2004-08-10 03:37:21 +0000
committerThomas Grill <xovo@users.sourceforge.net>2004-08-10 03:37:21 +0000
commit62f2a55bbaf2724375c0c1455329c7b4d0fe4ecd (patch)
tree9160baaec38a7ae34e22027e47f65b468df50879
parent849cd0933db8af7191be6ce8e1d39b0452d43eea (diff)
""
svn path=/trunk/; revision=1935
-rw-r--r--externals/grill/pool/build-max-msvc.bat4
-rw-r--r--externals/grill/pool/config-max-msvc.txt28
-rw-r--r--externals/grill/pool/help-pool.pd72
-rw-r--r--externals/grill/pool/makefile.max-msvc76
-rw-r--r--externals/grill/pool/readme.txt8
-rw-r--r--externals/grill/pool/source/main.cpp2
-rw-r--r--externals/grill/pool/source/pool.cpp12
7 files changed, 161 insertions, 41 deletions
diff --git a/externals/grill/pool/build-max-msvc.bat b/externals/grill/pool/build-max-msvc.bat
new file mode 100644
index 00000000..130a3bc0
--- /dev/null
+++ b/externals/grill/pool/build-max-msvc.bat
@@ -0,0 +1,4 @@
+@echo --- Building with MS Visual C++ ---
+
+nmake -f makefile.max-msvc clean
+nmake -f makefile.max-msvc
diff --git a/externals/grill/pool/config-max-msvc.txt b/externals/grill/pool/config-max-msvc.txt
new file mode 100644
index 00000000..bb47b9ec
--- /dev/null
+++ b/externals/grill/pool/config-max-msvc.txt
@@ -0,0 +1,28 @@
+# pool - hierarchical storage object for PD and Max/MSP
+# Copyright (c) 2002-2004 Thomas Grill (xovo@gmx.net)
+#
+
+# where is the Max SDK?
+# you should have the latest version!
+MAXSDKPATH="F:\prog\audio\MaxWinSDK\c74support"
+
+# where do the flext libraries reside?
+FLEXTPATH="%CommonProgramFiles%\Cycling '74\flext"
+
+# where is MS VC++?
+# (need not be defined if the build is started with the compiler environment set)
+# MSVCPATH="c:\programme\prog\microsoft visual studio\VC98"
+
+
+# where should the external be built?
+# (path for temporary files)
+OUTPATH=max-msvc
+
+# where should the external be installed?
+# (leave blank to omit installation)
+INSTPATH="%CommonProgramFiles%\Cycling '74\externals\flext"
+
+
+# some user-definable flags
+# (check if they match your system!)
+UFLAGS=/G6 /arch:SSE
diff --git a/externals/grill/pool/help-pool.pd b/externals/grill/pool/help-pool.pd
index c7ef0a63..fe8c0dd5 100644
--- a/externals/grill/pool/help-pool.pd
+++ b/externals/grill/pool/help-pool.pd
@@ -1,4 +1,4 @@
-#N canvas 12 3 950 706 12;
+#N canvas 12 3 954 710 12;
#X msg 296 105 set 1 2 3;
#X obj 308 619 print K;
#X msg 607 211 getall;
@@ -202,8 +202,6 @@ the folder containing the current patcher will be used.;
#X msg 136 132 getechodir;
#X msg 132 232 getabsdir;
#X msg 146 313 getpool;
-#X text 272 13 a hierarchical storage object \, (C)2002-2003 Thomas
-Grill;
#X msg 297 279 add 2 14;
#X obj 260 478 pool @valcnt 10 @dircnt 5;
#X text 330 437 expected value and directory counts;
@@ -229,38 +227,40 @@ Grill;
#X connect 2 0 0 0;
#X connect 8 0 0 0;
#X restore 717 659 pd print;
-#X connect 0 0 72 0;
-#X connect 2 0 72 0;
-#X connect 3 0 72 0;
-#X connect 6 0 72 0;
-#X connect 7 0 72 0;
-#X connect 8 0 72 0;
-#X connect 9 0 72 0;
-#X connect 10 0 72 0;
-#X connect 11 0 72 0;
+#X text 272 13 a hierarchical storage object \, (C)2002-2004 Thomas
+Grill;
+#X connect 0 0 71 0;
+#X connect 2 0 71 0;
+#X connect 3 0 71 0;
+#X connect 6 0 71 0;
+#X connect 7 0 71 0;
+#X connect 8 0 71 0;
+#X connect 9 0 71 0;
+#X connect 10 0 71 0;
+#X connect 11 0 71 0;
#X connect 12 0 11 0;
#X connect 13 0 14 0;
-#X connect 14 0 72 0;
-#X connect 22 0 72 0;
-#X connect 23 0 72 0;
-#X connect 25 0 72 0;
-#X connect 27 0 72 0;
-#X connect 32 0 72 0;
-#X connect 33 0 72 0;
-#X connect 44 0 72 0;
-#X connect 47 0 72 0;
-#X connect 49 0 72 0;
-#X connect 60 0 72 0;
-#X connect 66 0 72 0;
-#X connect 67 0 72 0;
-#X connect 68 0 72 0;
-#X connect 69 0 72 0;
-#X connect 71 0 72 0;
-#X connect 72 0 4 0;
-#X connect 72 1 1 0;
-#X connect 72 2 5 0;
-#X connect 72 3 17 0;
-#X connect 72 4 64 0;
-#X connect 75 0 72 0;
-#X connect 76 0 72 0;
-#X connect 77 0 72 0;
+#X connect 14 0 71 0;
+#X connect 22 0 71 0;
+#X connect 23 0 71 0;
+#X connect 25 0 71 0;
+#X connect 27 0 71 0;
+#X connect 32 0 71 0;
+#X connect 33 0 71 0;
+#X connect 44 0 71 0;
+#X connect 47 0 71 0;
+#X connect 49 0 71 0;
+#X connect 60 0 71 0;
+#X connect 66 0 71 0;
+#X connect 67 0 71 0;
+#X connect 68 0 71 0;
+#X connect 69 0 71 0;
+#X connect 70 0 71 0;
+#X connect 71 0 4 0;
+#X connect 71 1 1 0;
+#X connect 71 2 5 0;
+#X connect 71 3 17 0;
+#X connect 71 4 64 0;
+#X connect 74 0 71 0;
+#X connect 75 0 71 0;
+#X connect 76 0 71 0;
diff --git a/externals/grill/pool/makefile.max-msvc b/externals/grill/pool/makefile.max-msvc
new file mode 100644
index 00000000..1bd26c6d
--- /dev/null
+++ b/externals/grill/pool/makefile.max-msvc
@@ -0,0 +1,76 @@
+# pool - hierarchical storage object for PD and Max/MSP
+# Copyright (c) 2002-2004 Thomas Grill (xovo@gmx.net)
+#
+# Makefile for MSVC++ 6 and .NET
+#
+# usage:
+# to build run "make -f makefile.max-msvc"
+#
+
+!include config-max-msvc.txt
+
+# includes
+INCPATH=/I$(MAXSDKPATH)\max-includes /I$(MAXSDKPATH)\msp-includes /I$(FLEXTPATH)
+LDFLAGS=/LIBPATH:$(FLEXTPATH)
+
+!ifdef MSVCPATH
+INCPATH=$(INCPATH) /I$(MSVCPATH)\include
+LDFLAGS=$(LDFLAGS) /LIBPATH:$(MSVCPATH)\lib
+!endif
+
+!ifdef _DEBUG
+LIBS=flext_d-maxwin.lib
+!else
+LIBS=flext-maxwin.lib
+!endif
+
+LDFLAGS=$(LDFLAGS) /LIBPATH:$(MAXSDKPATH)\max-includes /LIBPATH:$(MAXSDKPATH)\msp-includes
+
+LIBS=$(LIBS) maxapi.lib maxaudio.lib
+
+# compiler definitions and flags
+DEFS=/DFLEXT_SYS=1 $(UFLAGS)
+
+CFLAGS=/ML /GR- /GD /Ox /GX /Zp2
+
+# the rest can stay untouched
+# ----------------------------------------------
+
+# all the source files from the package
+!include make-files.txt
+
+# -----------------------------------------------
+
+EXT=mxe
+
+all: $(OUTPATH) $(OUTPATH)\$(NAME).$(EXT)
+
+# remove build
+clean:
+ -del /q $(OUTPATH) > nul
+ -rmdir $(OUTPATH) > nul
+
+OBJS= $(SRCS:.c=.obj)
+OBJS= $(OBJS:.objpp=.obj)
+
+
+$(OUTPATH):
+ -mkdir $(OUTPATH) > nul
+
+{$(SRCDIR)}.cpp{}.obj:
+ cl /c /LD $(CFLAGS) $(DEFS) $(INCPATH) $** /Fo$(OUTPATH)/$@
+
+{$(SRCDIR)}.c{}.obj:
+ cl /c /LD $(CFLAGS) $(DEFS) $(INCPATH) $** /Fo$(OUTPATH)/$@
+
+
+$(OUTPATH)\$(NAME).$(EXT): $(OBJS)
+ cd $(OUTPATH)
+ link /DLL $(LDFLAGS) /out:$(NAME).$(EXT) /INCREMENTAL:NO $** $(LIBS) $(LIBPATH)
+ @-del *.exp
+ @-del *.lib
+ cd ..
+!ifdef INSTPATH
+ @-if not exist $(INSTPATH) mkdir $(INSTPATH)
+ copy $@ $(INSTPATH) > nul
+!endif
diff --git a/externals/grill/pool/readme.txt b/externals/grill/pool/readme.txt
index 5a9de853..978d0dd7 100644
--- a/externals/grill/pool/readme.txt
+++ b/externals/grill/pool/readme.txt
@@ -1,6 +1,6 @@
pool - a hierarchical storage object for PD and Max/MSP
-Copyright (c) 2002-2004 Thomas Grill (xovo@gmx.net)
+Copyright (c) 2002-2004 Thomas Grill (gr@grrrr.org)
For information on usage and redistribution, and for a DISCLAIMER OF ALL
WARRANTIES, see the file, "license.txt," in this distribution.
@@ -10,7 +10,7 @@ Visit https://www.paypal.com/xclick/business=t.grill%40gmx.net&item_name=pool&no
----------------------------------------------------------------------------
You will need the flext C++ layer for PD and Max/MSP externals to compile this.
-see http://www.parasitaere-kapazitaeten.net/ext
+see http://grrrr.org/ext
Package files:
@@ -39,6 +39,8 @@ o Borland C++ 5.5 (free): edit "config-pd-bcc.txt" & run "build-pd-bcc.bat"
o Microsoft Visual C++ 6/7: edit "config-pd-msvc.txt" & run "build-pd-msvc.bat"
+o GCC (MinGW): edit "config-pd-mingw.txt" & run "build-pd-mingw.bat"
+
pd - linux:
-----------
o GCC: edit "config-pd-linux.txt" & run "sh build-pd-linux.sh"
@@ -53,7 +55,7 @@ o CodeWarrior: edit "pool.cw" and build
Max/MSP - Windows:
-------------------
-o Microsoft Visual C++ 7: edit "config-max-msvc.txt" & run "build-max-msvc.bat"
+o Microsoft Visual C++ 6/7: edit "config-max-msvc.txt" & run "build-max-msvc.bat"
----------------------------------------------------------------------------
diff --git a/externals/grill/pool/source/main.cpp b/externals/grill/pool/source/main.cpp
index 3e74360d..e6fb1273 100644
--- a/externals/grill/pool/source/main.cpp
+++ b/externals/grill/pool/source/main.cpp
@@ -1024,7 +1024,7 @@ V pool::ldrec(I argc,const A *argv,BL xml)
else {
string fl(MakeFilename(flnm));
if(!(xml?pl->LdDirXML(curdir,fl.c_str(),depth,mkdir):pl->LdDir(curdir,fl.c_str(),depth,mkdir)))
- post("%s - %s: directory couldn't be saved",thisName(),sym);
+ post("%s - %s: directory couldn't be saved",thisName(),sym);
}
echodir();
diff --git a/externals/grill/pool/source/pool.cpp b/externals/grill/pool/source/pool.cpp
index fd4b4a83..1e3f26c2 100644
--- a/externals/grill/pool/source/pool.cpp
+++ b/externals/grill/pool/source/pool.cpp
@@ -590,7 +590,17 @@ public:
string tag,attr;
bool Ok() const { return tag.length() > 0; }
bool operator ==(const C *t) const { return !tag.compare(t); }
- void Clear() { tag.clear(); attr.clear(); }
+
+ void Clear()
+ {
+#if defined(_MSC_VER) && (_MSC_VER < 0x1200)
+ // incomplete STL implementation
+ tag = ""; attr = "";
+#else
+ tag.clear(); attr.clear();
+#endif
+ }
+
enum { t_start,t_end,t_empty } type;
};