On Jan 13, 2007, at 4:15 PM, Mikael Magnusson wrote:

Bjorn Roche wrote:

Now, it should work on Linux x86, Linux PPC, Mac OS X and FreeBSD. On other systems (I don't know what else uses these ring-buffers, other than Jack/Linux and CoreAudio) it should fail to compile, but give the user enough info to compile without SMP safety if they want (by defining ALLOW_SMP_DANGERS, which should probably have a better name). Any feedback before I commit (especially from someone familiar with x86)?

What about other architectures? The Debian portaudio19 package I'm maintaining together with the Debian VoIP team fails to build on most architectures. (Reported in Debian BTS #406754[1])

error:
src/common/pa_ringbuffer.c:100:11: error: #error Memory barriers are not define d on this system. You can still compile by defining ALLOW_SMP_DANGERS, but SMP safety will not be guaranteed.

PortAudio V19 used to build on all architectures: alpha, amd64, arm, hppa ,i386, ia64, m68k, mips, mipsel, powerpc, s390 and sparc.

Any solution?


As the error message says, you can compile by defining ALLOW_SMP_DANGERS (-DALLOW_SMP_DANGERS). This will not cause problems for single processor machines, but could cause problems on SMP (same as with the old code). Alternatively, if you could tell us what the appropriate memory barriers are (or if none are needed) for the platform and a way to detect it using #defines, I'll fix it.

        bjorn


-----------------------------
Bjorn Roche
XO Wave
Digital Audio Production and Post-Production Software
http://www.xowave.com
http://blog.bjornroche.com
http://myspace.com/xowave




--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to