Modified to JPortAudio to support builds on Macintosh.
This commit is contained in:
parent
373c29f7b0
commit
ac4bb571cb
4 changed files with 36 additions and 3 deletions
|
|
@ -1,5 +1,10 @@
|
||||||
/* DO NOT EDIT THIS FILE - it is machine generated */
|
/* DO NOT EDIT THIS FILE - it is machine generated */
|
||||||
|
#if defined(__APPLE__)
|
||||||
|
#include <JavaVM/jni.h>
|
||||||
|
#else
|
||||||
#include <jni.h>
|
#include <jni.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
/* Header for class com_portaudio_BlockingStream */
|
/* Header for class com_portaudio_BlockingStream */
|
||||||
|
|
||||||
#ifndef _Included_com_portaudio_BlockingStream
|
#ifndef _Included_com_portaudio_BlockingStream
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
/* DO NOT EDIT THIS FILE - it is machine generated */
|
/* DO NOT EDIT THIS FILE - it is machine generated */
|
||||||
#include <jni.h>
|
#include <JavaVM/jni.h>
|
||||||
/* Header for class com_portaudio_PortAudio */
|
/* Header for class com_portaudio_PortAudio */
|
||||||
|
|
||||||
#ifndef _Included_com_portaudio_PortAudio
|
#ifndef _Included_com_portaudio_PortAudio
|
||||||
|
|
|
||||||
|
|
@ -178,7 +178,11 @@ jint jpa_ThrowError( JNIEnv *env, const char *message )
|
||||||
// Throw an exception on error.
|
// Throw an exception on error.
|
||||||
jint jpa_CheckError( JNIEnv *env, PaError err )
|
jint jpa_CheckError( JNIEnv *env, PaError err )
|
||||||
{
|
{
|
||||||
if( err < 0 )
|
if( err == -1 )
|
||||||
|
{
|
||||||
|
return jpa_ThrowError( env, "-1, possibly no available default device" );
|
||||||
|
}
|
||||||
|
else if( err < 0 )
|
||||||
{
|
{
|
||||||
if( err == paUnanticipatedHostError )
|
if( err == paUnanticipatedHostError )
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -34,4 +34,28 @@ Place the following libraries where they can be found, typically in the same fol
|
||||||
- jportaudio_x86.dll
|
- jportaudio_x86.dll
|
||||||
- jportaudio_x64.dll
|
- jportaudio_x64.dll
|
||||||
|
|
||||||
|
@section java_comp_max Building JPortAudio on Mac
|
||||||
|
|
||||||
|
These are notes from building JPortAudio on a Mac with 10.6.8 and XCode 4.
|
||||||
|
|
||||||
|
I created a target of type 'C' library.
|
||||||
|
|
||||||
|
I added the regular PortAudio frameworks plus the JavaVM framework.
|
||||||
|
|
||||||
|
I modified com_portaudio_PortAudio.h and com_portaudio_BlockingStream.h so that jni.h could found.
|
||||||
|
|
||||||
|
@code
|
||||||
|
#if defined(__APPLE__)
|
||||||
|
#include <JavaVM/jni.h>
|
||||||
|
#else
|
||||||
|
#include <jni.h>
|
||||||
|
#endif
|
||||||
|
@endcode
|
||||||
|
|
||||||
|
This is bad because those header files are autogenerated and will be overwritten.
|
||||||
|
We need a better solution for this.
|
||||||
|
|
||||||
|
I had trouble finding the "libjportaudio.jnilib". So I added a Build Phase that copied the library to "/Users/phil/Library/Java/Extensions".
|
||||||
|
|
||||||
|
On the Mac we can create a universal library for both 32 and 64-bit JVMs. So in the JAR file I will open "jportaudio" on Apple. ON WIndows I will continue to open "jportaudio_x64" and "jportaudio_x86".
|
||||||
*/
|
*/
|
||||||
Loading…
Reference in a new issue