[PD-cvs] SF.net SVN: pure-data: [9836] trunk/externals/loaders/hexloader
zmoelnig at users.sourceforge.net
zmoelnig at users.sourceforge.net
Sun May 18 09:38:36 CEST 2008
Revision: 9836
http://pure-data.svn.sourceforge.net/pure-data/?rev=9836&view=rev
Author: zmoelnig
Date: 2008-05-18 00:38:36 -0700 (Sun, 18 May 2008)
Log Message:
-----------
added faq with an explanation of the patch-loading bug;
disabled patch-loading by default (it doesn't work anyhow);
use the pd within this directory to compile
Modified Paths:
--------------
trunk/externals/loaders/hexloader/Makefile
trunk/externals/loaders/hexloader/hexloader.c
Added Paths:
-----------
trunk/externals/loaders/hexloader/FAQ.txt
Added: trunk/externals/loaders/hexloader/FAQ.txt
===================================================================
--- trunk/externals/loaders/hexloader/FAQ.txt (rev 0)
+++ trunk/externals/loaders/hexloader/FAQ.txt 2008-05-18 07:38:36 UTC (rev 9836)
@@ -0,0 +1,24 @@
+============================================
+= things you might ask yourself frequently =
+============================================
+
+Q: what's this?
+A: please read the README.txt for an explanation
+
+Q: it doesn't work!
+A: try increasing the verbosity of Pd by adding the "-verbose" flag
+ _multiple times_ to the startup flags; [hexloader] will become more
+ talkative at verbosity-level 2, which will help you (or us) to find the
+ source of your problem
+
+Q: hexloading abstraction does not work
+A1: it is not enabled by default! you can enable it by setting the
+ HEXLOADER_PATCHES preprocessor-define either via the Makefile or within
+ the source file.
+ the reason why it is disabled is:
+A2: hexloading abstractions (as opposed to "externals" written in other
+ languages (anything that uses the loader-mechanism; e.g. C or lua or python
+ externals; but not Pd-abstractions)) is currently broken as it does not
+ correctly resolve abstractions embedded within hexloaded abstractions.
+ that's a problem of Pd's abstraction-loading mechanism which i would rather
+ solve on the Pd-side
Modified: trunk/externals/loaders/hexloader/Makefile
===================================================================
--- trunk/externals/loaders/hexloader/Makefile 2008-05-17 21:31:20 UTC (rev 9835)
+++ trunk/externals/loaders/hexloader/Makefile 2008-05-18 07:38:36 UTC (rev 9836)
@@ -3,8 +3,8 @@
# path to pd
## change this according to your setup!
-#PDROOT=../../../pd
-PDROOT=/Net/iem/Benutzer/zmoelnig/src/pd-0.41-0test08
+PDROOT?=../../../pd
+#PDROOT=/Net/iem/Benutzer/zmoelnig/src/pd-0.41-0test08
# here we find the sources of pd (and evtl. the pd.lib)
PDSRCDIR=$(PDROOT)/src
Modified: trunk/externals/loaders/hexloader/hexloader.c
===================================================================
--- trunk/externals/loaders/hexloader/hexloader.c 2008-05-17 21:31:20 UTC (rev 9835)
+++ trunk/externals/loaders/hexloader/hexloader.c 2008-05-18 07:38:36 UTC (rev 9836)
@@ -42,8 +42,16 @@
#endif
-#define HEXLOADER_PATCHES
+/* for now hexloading abstractions does not work very well,
+ * as it chokes when the hexloaded abstractions has nested abstractions
+ *
+ * if you really want to enable hexloading patches,
+ * do so via the Makefile by defining HEXLOADER_PATCHES
+ *
+ */
+//#define HEXLOADER_PATCHES
+
#ifdef HEXLOADER_PATCHES
void canvas_popabstraction(t_canvas *x);
static void*hexloader_fakenew(t_symbol *s, int argc, t_atom *argv);
@@ -562,6 +570,7 @@
sprintf(fullfile, "%s/%s", pathname, filename);
while(altname) {
+ verbose(2, "hexloader trying %s (%s)", fullfile, altname->name);
if(hexloader_doload(fullfile, altname->name))
return 1;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Pd-cvs
mailing list