Hello dev list,
In recent months I changed some lines in Pd core code to make it
double-precision-compilable. I'd like to help a bit with making
Pd-extended ready for double precision as well. After puzzling on
repository layout and build system, and figuring out a decent test
method (together with Fred Jan Kraan), I am now ready to commit
rewritten lines for one external lib, creb. It is for this library
that I want to request commit access now, but it doesn't stop here. A
brief description of the project:
Pd-double is a fork of Miller Puckette's Pure Data, patched with
mentioned double-ready lines. It has (and will continue to have) the
same API, apart from the option to compile in single or double
precision at will. Pd-double enables double precision builds of
vanilla Pd, and is tested to work well on OSX and Linux. I still have
to work on the Windows side of things. In the meantime Pd-double is
useful as a framework against which external libraries can be
developed towards double-readiness. A usable development setup is
described on http://puredata.info/dev/pd-double/PdDoubleDevelopment.
Convenient unit-test abstractions are introduced here:
http://www.katjaas.nl/pdunittests/pdunittests.html. I'd like to invite
all Pd-devs to join in. Rewriting and testing classes assumes a fair
knowledge of their functioning, and Pd-extended is huge. For me, doing
one lib at a time works well, thoroughly testing the whole of it
before committing. When starting on another lib, I'll ask commit
access again. I could also submit patch files instead, if that is
preferred in some case.
A few words on my background so you know who's wanting to poke in your
code. During a one-year course at the Sonology Department of the Hague
Conservatory (Holland), I learned the basics of dsp math and
programming. That was 2007-2008, and I've never stopped music
programming since, documenting my efforts and experiments on
www.katjaas.nl. Pd has become my favourite environment, because of
it's open source and active community, and because I like how you can
prototype a neat audio tool quite fast, with GUI and all, while C code
is still an option to solve details. A few Pd-externals and projects
are shared online via mentioned site (nb 'slicycle' stuff and
[soundtouch~]). I teach Pd workshops sometimes. The
single-precisioness of Pd has been my only serious gripe. See
http://www.katjaas.nl/doubleprecision/doubleprecision.html for
illustrations of precision-bottlenecks. Working on this topic, I hope
to contribute to the wonderful tool and the community supporting it.
Katja
Patches item #3412977, was opened at 2011-09-22 13:11
Message generated for change (Comment added) made by eighthave
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=478072&aid=3412977&group_…
Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: puredata
Group: None
Status: Open
Resolution: None
Priority: 8
Private: No
Submitted By: Hans-Christoph Steiner (eighthave)
Assigned to: Miller Puckette (millerpuckette)
Summary: replace MSW with _WIN32 (please please please)
Initial Comment:
We are starting to port Pd to another interesting platform, (Google Chrome Native Client NaCl) and yet again we'll have to wade thru the #ifdefs to figure out what we need. Especially painful are things like #ifndef MSW. Lots of people have wasted many hours on this stuff. This MSW macro is unnecessary since every compiler for Windows defines _WIN32 automatically. If _WIN32 ever disappears, we can easily add -D_WIN32, which is just as easy as doing -DMSW. Or just replace -DMSW with -D_WIN32.
Also, having the MSW as _WIN32 makes it easier to solve MinGW and Cygwin build issues where those platforms differ from MSVC++
This can be achieved with this one liner, which I've tested on Mac OS X, Ubuntu/Maverick, and Windows XP:
cd pure-data.git/src && sed -i 's|\(^\#.*if.*\) MSW|\1 _WIN32|' *.[ch]
You can see the lines that this regexp would change by running this:
cd pure-data.git/src && sed -n 's|\(^\#.*if.*\) MSW|\1 _WIN32|p' *.[ch]|less
----------------------------------------------------------------------
>Comment By: Hans-Christoph Steiner (eighthave)
Date: 2011-11-03 14:39
Message:
so just to highlight the key point, this change has little risk, and a big
impact in future porting activities, like porting Pd to the Chrome native
code, Windows Mobile, etc.
----------------------------------------------------------------------
Comment By: Hans-Christoph Steiner (eighthave)
Date: 2011-11-03 14:37
Message:
> I can't log onto sourceforge right now but thought I whould ask you a
quick
> question about _WIN32 - would it be a good or a bad idea to try to
sneak
> this into 0.43-1? I could either do that now or hold off for 0.44,
depending
> on which you think would cause less wreckage.
I checked out all the changes that the sed replacement does, and did some
build tests. I think this is really a low risk change that would be great
to have in 0.43.1,
> And by the way, would it not be adequate just to put
> #ifdef _WIN32
> #define MSW
> #endif
> in m_pd.h?
This will only help a little, and could confuse things. It is not very
clear what exactly MSW means. It is some combination of _MSC_VER (MS
compilers) and _WIN32 (Win32 platform SDKs) and even some other things.
When doing things like porting to Cygwin or other Windows things, it'll be
much easier to be able to submit fixes if _WIN32 is there. Also, when
changing things to use specific macros like HAVE_ALLOCA_H, it'll make
things more understandable.
----------------------------------------------------------------------
Comment By: Hans-Christoph Steiner (eighthave)
Date: 2011-11-03 10:06
Message:
putting the priority back since its an easy change that can save people a
lot of work.
----------------------------------------------------------------------
Comment By: IOhannes m zmölnig (zmoelnig)
Date: 2011-11-03 05:46
Message:
i'm all for doing this
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=478072&aid=3412977&group_…
Patches item #3412977, was opened at 2011-09-22 13:11
Message generated for change (Comment added) made by eighthave
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=478072&aid=3412977&group_…
Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: puredata
Group: None
Status: Open
Resolution: None
Priority: 8
Private: No
Submitted By: Hans-Christoph Steiner (eighthave)
Assigned to: Miller Puckette (millerpuckette)
Summary: replace MSW with _WIN32 (please please please)
Initial Comment:
We are starting to port Pd to another interesting platform, (Google Chrome Native Client NaCl) and yet again we'll have to wade thru the #ifdefs to figure out what we need. Especially painful are things like #ifndef MSW. Lots of people have wasted many hours on this stuff. This MSW macro is unnecessary since every compiler for Windows defines _WIN32 automatically. If _WIN32 ever disappears, we can easily add -D_WIN32, which is just as easy as doing -DMSW. Or just replace -DMSW with -D_WIN32.
Also, having the MSW as _WIN32 makes it easier to solve MinGW and Cygwin build issues where those platforms differ from MSVC++
This can be achieved with this one liner, which I've tested on Mac OS X, Ubuntu/Maverick, and Windows XP:
cd pure-data.git/src && sed -i 's|\(^\#.*if.*\) MSW|\1 _WIN32|' *.[ch]
You can see the lines that this regexp would change by running this:
cd pure-data.git/src && sed -n 's|\(^\#.*if.*\) MSW|\1 _WIN32|p' *.[ch]|less
----------------------------------------------------------------------
>Comment By: Hans-Christoph Steiner (eighthave)
Date: 2011-11-03 14:37
Message:
> I can't log onto sourceforge right now but thought I whould ask you a
quick
> question about _WIN32 - would it be a good or a bad idea to try to
sneak
> this into 0.43-1? I could either do that now or hold off for 0.44,
depending
> on which you think would cause less wreckage.
I checked out all the changes that the sed replacement does, and did some
build tests. I think this is really a low risk change that would be great
to have in 0.43.1,
> And by the way, would it not be adequate just to put
> #ifdef _WIN32
> #define MSW
> #endif
> in m_pd.h?
This will only help a little, and could confuse things. It is not very
clear what exactly MSW means. It is some combination of _MSC_VER (MS
compilers) and _WIN32 (Win32 platform SDKs) and even some other things.
When doing things like porting to Cygwin or other Windows things, it'll be
much easier to be able to submit fixes if _WIN32 is there. Also, when
changing things to use specific macros like HAVE_ALLOCA_H, it'll make
things more understandable.
----------------------------------------------------------------------
Comment By: Hans-Christoph Steiner (eighthave)
Date: 2011-11-03 10:06
Message:
putting the priority back since its an easy change that can save people a
lot of work.
----------------------------------------------------------------------
Comment By: IOhannes m zmölnig (zmoelnig)
Date: 2011-11-03 05:46
Message:
i'm all for doing this
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=478072&aid=3412977&group_…
Bugs item #3432922, was opened at 2011-11-03 16:12
Message generated for change (Tracker Item Submitted) made by ricardofabbri
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=478070&aid=3432922&group_…
Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: externals
Group: v0.44
Status: Open
Resolution: None
Priority: 5
Private: No
Submitted By: Ricardo Fabbri (ricardofabbri)
Assigned to: Nobody/Anonymous (nobody)
Summary: pix_opencv + grdflow = crash
Initial Comment:
If gridflow is loaded into Pd, then I try to run any pix_opencv example, pd-extended crashes. I actually have to remove any -lib loading of gridflow and remove gridflow from any pd extended search path, to get pix_opencv to work again.
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=478070&aid=3432922&group_…
Patches item #3412977, was opened at 2011-09-22 13:11
Message generated for change (Comment added) made by eighthave
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=478072&aid=3412977&group_…
Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: puredata
Group: None
Status: Open
Resolution: None
>Priority: 8
Private: No
Submitted By: Hans-Christoph Steiner (eighthave)
Assigned to: Miller Puckette (millerpuckette)
Summary: replace MSW with _WIN32 (please please please)
Initial Comment:
We are starting to port Pd to another interesting platform, (Google Chrome Native Client NaCl) and yet again we'll have to wade thru the #ifdefs to figure out what we need. Especially painful are things like #ifndef MSW. Lots of people have wasted many hours on this stuff. This MSW macro is unnecessary since every compiler for Windows defines _WIN32 automatically. If _WIN32 ever disappears, we can easily add -D_WIN32, which is just as easy as doing -DMSW. Or just replace -DMSW with -D_WIN32.
Also, having the MSW as _WIN32 makes it easier to solve MinGW and Cygwin build issues where those platforms differ from MSVC++
This can be achieved with this one liner, which I've tested on Mac OS X, Ubuntu/Maverick, and Windows XP:
cd pure-data.git/src && sed -i 's|\(^\#.*if.*\) MSW|\1 _WIN32|' *.[ch]
You can see the lines that this regexp would change by running this:
cd pure-data.git/src && sed -n 's|\(^\#.*if.*\) MSW|\1 _WIN32|p' *.[ch]|less
----------------------------------------------------------------------
>Comment By: Hans-Christoph Steiner (eighthave)
Date: 2011-11-03 10:06
Message:
putting the priority back since its an easy change that can save people a
lot of work.
----------------------------------------------------------------------
Comment By: IOhannes m zmölnig (zmoelnig)
Date: 2011-11-03 05:46
Message:
i'm all for doing this
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=478072&aid=3412977&group_…
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
while i have access to the w32 build machine in the PdLab i have a hard
time getting anything useful to compile.
this is mainly, because i cannot access the binaries built by the
pd-extended autobuild, and i don't want build the whole shebang myself.
what is the preferred way to get anything going on that machine?
fgmasdr
IOhannes
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
iEYEARECAAYFAk6xQaQACgkQkX2Xpv6ydvQidACeIDI31SIfpvXCor13C/Z8n4O8
thMAnj2rcatu1p9tAAgyd+XwYuTpp9d9
=D5ej
-----END PGP SIGNATURE-----
Patches item #3432654, was opened at 2011-11-03 10:53
Message generated for change (Tracker Item Submitted) made by zmoelnig
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=478072&aid=3432654&group_…
Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: puredata-dev
Group: bugfix
Status: Open
Resolution: None
Priority: 5
Private: No
Submitted By: IOhannes m zmölnig (zmoelnig)
Assigned to: Miller Puckette (millerpuckette)
Summary: pkg-config improvement
Initial Comment:
with the new autotools-based build system, Pd also generates a pkg-config [1] file (it's pd.pc, generated from pd.pc.in).
the purpose of this file is to sease compilation of externals in a standardized way, by providing information on where to find header files (e.g. /usr/include/pd) and which libraries we need to link too (e.g. link against pd.lib" on w32, but not on other platforms)
unfortunately i was a bit too eager, when i first created this file, adding lots of flags and bells and whistles, which have turned out to be more confusing than helping.
attached patch therefore simplifies the generated pd.pc to only hold the relevant information (see in-patch description for more details)
[1]
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=478072&aid=3432654&group_…
Patches item #3412977, was opened at 2011-09-22 19:11
Message generated for change (Comment added) made by zmoelnig
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=478072&aid=3412977&group_…
Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: puredata
Group: None
Status: Open
Resolution: None
>Priority: 5
Private: No
Submitted By: Hans-Christoph Steiner (eighthave)
Assigned to: Miller Puckette (millerpuckette)
Summary: replace MSW with _WIN32 (please please please)
Initial Comment:
We are starting to port Pd to another interesting platform, (Google Chrome Native Client NaCl) and yet again we'll have to wade thru the #ifdefs to figure out what we need. Especially painful are things like #ifndef MSW. Lots of people have wasted many hours on this stuff. This MSW macro is unnecessary since every compiler for Windows defines _WIN32 automatically. If _WIN32 ever disappears, we can easily add -D_WIN32, which is just as easy as doing -DMSW. Or just replace -DMSW with -D_WIN32.
Also, having the MSW as _WIN32 makes it easier to solve MinGW and Cygwin build issues where those platforms differ from MSVC++
This can be achieved with this one liner, which I've tested on Mac OS X, Ubuntu/Maverick, and Windows XP:
cd pure-data.git/src && sed -i 's|\(^\#.*if.*\) MSW|\1 _WIN32|' *.[ch]
You can see the lines that this regexp would change by running this:
cd pure-data.git/src && sed -n 's|\(^\#.*if.*\) MSW|\1 _WIN32|p' *.[ch]|less
----------------------------------------------------------------------
>Comment By: IOhannes m zmölnig (zmoelnig)
Date: 2011-11-03 10:46
Message:
i'm all for doing this
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=478072&aid=3412977&group_…
Patches item #3432009, was opened at 2011-11-01 19:57
Message generated for change (Settings changed) made by zmoelnig
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=478072&aid=3432009&group_…
Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: externals
Group: bugfix
>Status: Pending
Resolution: Fixed
Priority: 5
Private: No
Submitted By: Ricardo Fabbri (ricardofabbri)
Assigned to: Nobody/Anonymous (nobody)
Summary: fix pdp link error regarding gsl
Initial Comment:
My pdp was giving link errors related to cblas/gsl symbols upon loading onto pd-extended.
I decided not to commit this one-line fix directly, but to get your opinion first. If you say yes, I can just go ahead and commit.
Best,
----------------------------------------------------------------------
Comment By: Ricardo Fabbri (ricardofabbri)
Date: 2011-11-02 13:34
Message:
I decided to commit a fix, including an 'if' statement - if Linux, use the
fix with pkg-config; if Darwin, keep it as it was before (i.e., we don't
mess with pkd-config until someone complains about this)
----------------------------------------------------------------------
Comment By: Hans-Christoph Steiner (eighthave)
Date: 2011-11-01 20:35
Message:
I'm fine with using pkg-config as long as its supported on all relevant
platforms. Windows is not an issue with PDP since PDP doesn't run on
Windows. And on Mac OS X 10.6 with Fink, that pkg-config line gives me:
hans@dhcp-10 ~ $ pkg-config --libs gsl
-L/sw/lib -lgsl -lgslcblas -lm
Lorenzo Sutton recently started as the maintainer for PDP, so we should
run this by him too, perhaps on pd-dev. As far as I'm concerned, I'm good
with you committing to PDP directly.
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=478072&aid=3432009&group_…
Hi,
#camera is not working on my Ubuntu 11.10 64bit. Gem and pidip both
work fine. The errors I get in gf is:
note: camera driver rejected (240 320) resolution in favour of (240 320)
[#in]: not open
and also, upon a bang:
ioctl VIDIOC_QUERYBUF: Invalid argument
[#io.v4l2 in /dev/video0 1] inlet 0 method bang: ioctl error
ioctl VIDIOC_QUERYBUF: Invalid argument
[#io.v4l2 in /dev/video0 1] inlet 0 method bang: ioctl error
.....
Sorry to bug you, but just letting you know about this.
Ricardo Fabbri
--
Linux registered user #175401
www.lems.brown.edu/~rfabbrilabmacambira.sf.net