Update of /cvsroot/pure-data/externals/moocow/pdstring In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23251
Modified Files: configure.in Added Files: README.txt Log Message: pdstring v0.05 + added persistent string buffer to any2string + added initial buffer size and eos-character arguments to any2string, string2any - defaults are backwards-compatible but ugly + added --enable-object-externals option to configure
--- NEW FILE: README.txt --- README for pd external package 'pdstring'
Last updated for pdstring v0.02
DESCRIPTION The 'pdstring' package contains objects for converting to and from (ASCII)-strings, represented as lists of floats.
INSTALLATION Issue the following commands to the shell:
cd PACKAGE-XX.YY (or wherever you extracted the distribution) ./configure make make install
BUILD OPTIONS The 'configure' script supports the following options, among others:
* --enable-debug , --disable-debug Whether to enable verbose debugging messages. Default=no.
ACKNOWLEDGEMENTS PD by Miller Puckette and others.
Ideas, black magic, and other nuggets of information drawn from code by Guenter Geiger, Larry Troxler, and iohannes m zmoelnig.
KNOWN BUGS Memory Usage Encoding each byte of a string as its own float is shamefully wasteful: it uses only 1 byte out of at least 3 which could be losslessly used given ANSI/IEEE Std 754-1985 floats, not to mention the remaining byte(s) (usually 1) of the float itself or the (usually 4) bytes used for the a_type flag. Unfortunately, Pd trims some floating point precision in message boxes and in float atoms, so a truly lossless float encoding for Pd would only be possible using 2 bytes per float (wasting 1/2 the space of the float itself), and (to me), the memory saving such an encoding would provide is just not worth the lack of transparency and additional workload it would involve (but contact me if you want the code anyways).
AUTHOR Bryan Jurish moocow@ling.uni-potsdam.de
Index: configure.in =================================================================== RCS file: /cvsroot/pure-data/externals/moocow/pdstring/configure.in,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** configure.in 24 Jul 2007 22:58:49 -0000 1.2 --- configure.in 26 Jul 2007 12:20:49 -0000 1.3 *************** *** 5,9 **** dnl Some handy macros define([THE_PACKAGE_NAME], [pdstring]) ! define([THE_PACKAGE_VERSION], [0.04]) define([THE_PACKAGE_AUTHOR], [moocow@ling.uni-potsdam.de])
--- 5,9 ---- dnl Some handy macros define([THE_PACKAGE_NAME], [pdstring]) ! define([THE_PACKAGE_VERSION], [0.05]) define([THE_PACKAGE_AUTHOR], [moocow@ling.uni-potsdam.de])
*************** *** 73,78 ****
! dnl PD externals PD_OBJECT_EXTERNALS="pdstring$(EXEEXT)" AC_SUBST(PD_OBJECT_EXTERNALS)
--- 73,101 ----
! ##------- PD externals ! PD_LIB_EXTERNALS="pdstring" ! PD_OBJ_EXTERNALS="any2string string2any" ! ! AC_ARG_ENABLE(object-externals, ! AC_HELP_STRING([--enable-object-externals], [Whether to build single-object externals (default=no)]), ! [want_objext="$enableval"], ! [want_objext="no"]) ! AC_MSG_CHECKING([whether to build single-object externals]) ! ! ##-- always build lib PD_OBJECT_EXTERNALS="pdstring$(EXEEXT)" + + if test "$want_objext" != "no" ; then + ##-- single-objects + AC_MSG_RESULT(yes) + for ext in $PD_OBJ_EXTERNALS ; do + PD_OBJECT_EXTERNALS="$PD_OBJECT_EXTERNALS ${ext}$(EXEEXT)" + done + AC_DEFINE(PDSTRING_OBJECT_EXTERNALS,1, + [Define this if you are building single-object externals]) + else + ##-- libs + AC_MSG_RESULT(no) + fi AC_SUBST(PD_OBJECT_EXTERNALS)
*************** *** 129,133 **** [Define this to include debugging code for the 'string2any' external.]) AC_DEFINE(STRING2ANY_DEBUG,1, ! [Define this to include debugging code for 'the any2string' external.]) else AC_MSG_RESULT(no) --- 152,156 ---- [Define this to include debugging code for the 'string2any' external.]) AC_DEFINE(STRING2ANY_DEBUG,1, ! [Define this to include debugging code for the 'any2string' external.]) else AC_MSG_RESULT(no)