git-svn-id: http://subversion.jackaudio.org/jack/jack2/trunk/jackmp@2346 0c269be4-1314-0410-8aa9-9f06e86f4224tags/1.90
@@ -23,6 +23,7 @@ Fernando Lopez-Lezcano | |||
2008-05-26 Stephane Letz <letz@grame.fr> | |||
* Merge control branch. | |||
* Cleanup example clients : use jack_client_open and install a proper 'quit' signal handler. | |||
2008-05-24 Stephane Letz <letz@grame.fr> | |||
@@ -28,361 +28,10 @@ | |||
#ifndef JACKCTL_H__2EEDAD78_DF4C_4B26_83B7_4FF1A446A47E__INCLUDED | |||
#define JACKCTL_H__2EEDAD78_DF4C_4B26_83B7_4FF1A446A47E__INCLUDED | |||
#include <jack/jslist.h> | |||
#ifdef WIN32 | |||
typedef unsigned long sigset_t; | |||
#endif | |||
/** Parameter types, intentionally similar to jack_driver_param_type_t */ | |||
typedef enum | |||
{ | |||
JackParamInt = 1, /**< @brief value type is a signed integer */ | |||
JackParamUInt, /**< @brief value type is an unsigned integer */ | |||
JackParamChar, /**< @brief value type is a char */ | |||
JackParamString, /**< @brief value type is a string with max size of ::JACK_PARAM_STRING_MAX+1 chars */ | |||
JackParamBool, /**< @brief value type is a boolean */ | |||
} jackctl_param_type_t; | |||
/** @brief Max value that jackctl_param_type_t type can have */ | |||
#define JACK_PARAM_MAX (JackParamBool + 1) | |||
/** @brief Max length of string parameter value, excluding terminating nul char */ | |||
#define JACK_PARAM_STRING_MAX 63 | |||
/** @brief Type for parameter value */ | |||
/* intentionally similar to jack_driver_param_value_t */ | |||
union jackctl_parameter_value | |||
{ | |||
uint32_t ui; /**< @brief member used for ::JackParamUInt */ | |||
int32_t i; /**< @brief member used for ::JackParamInt */ | |||
char c; /**< @brief member used for ::JackParamChar */ | |||
char str[JACK_PARAM_STRING_MAX + 1]; /**< @brief member used for ::JackParamString */ | |||
bool b; /**< @brief member used for ::JackParamBool */ | |||
}; | |||
/** opaque type for server object */ | |||
typedef struct jackctl_server jackctl_server_t; | |||
/** opaque type for driver object */ | |||
typedef struct jackctl_driver jackctl_driver_t; | |||
/** opaque type for parameter object */ | |||
typedef struct jackctl_parameter jackctl_parameter_t; | |||
#ifdef __cplusplus | |||
extern "C" { | |||
#endif | |||
#if 0 | |||
} /* Adjust editor indent */ | |||
#endif | |||
/** | |||
* Call this function to setup process signal handling. As a general | |||
* rule, it is required for proper operation for the server object. | |||
* | |||
* @param flags signals setup flags, use 0 for none. Currently no | |||
* flags are defined | |||
* | |||
* @return the configurated signal set. | |||
*/ | |||
sigset_t | |||
jackctl_setup_signals( | |||
unsigned int flags); | |||
/** | |||
* Call this function to wait on a signal set. | |||
* | |||
* @param signals signals set to wait on | |||
*/ | |||
void | |||
jackctl_wait_signals( | |||
sigset_t signals); | |||
/** | |||
* Call this function to create server object. | |||
* | |||
* @return server object handle, NULL if creation of server object | |||
* failed. Successfully created server object must be destroyed with | |||
* paired call to ::jackctl_server_destroy | |||
*/ | |||
jackctl_server_t * | |||
jackctl_server_create(); | |||
/** | |||
* Call this function to destroy server object. | |||
* | |||
* @param server server object handle to destroy | |||
*/ | |||
void | |||
jackctl_server_destroy( | |||
jackctl_server_t * server); | |||
/** | |||
* Call this function to get list of available drivers. List node data | |||
* pointers is a driver object handle (::jackctl_driver_t). | |||
* | |||
* @param server server object handle to get drivers for | |||
* | |||
* @return Single linked list of driver object handles. Must not be | |||
* modified. Always same for same server object. | |||
*/ | |||
const JSList * | |||
jackctl_server_get_drivers_list( | |||
jackctl_server_t * server); | |||
/** | |||
* Call this function to start JACK server | |||
* | |||
* @param server server object handle | |||
* @param driver driver to use | |||
* | |||
* @return success status: true - success, false - fail | |||
*/ | |||
bool | |||
jackctl_server_start( | |||
jackctl_server_t * server, | |||
jackctl_driver_t * driver); | |||
/** | |||
* Call this function to stop JACK server | |||
* | |||
* @param server server object handle | |||
* | |||
* @return success status: true - success, false - fail | |||
*/ | |||
bool | |||
jackctl_server_stop( | |||
jackctl_server_t * server); | |||
/** | |||
* Call this function to get list of server parameters. List node data | |||
* pointers is a parameter object handle (::jackctl_parameter_t). | |||
* | |||
* @param server server object handle to get parameters for | |||
* | |||
* @return Single linked list of parameter object handles. Must not be | |||
* modified. Always same for same server object. | |||
*/ | |||
const JSList * | |||
jackctl_server_get_parameters( | |||
jackctl_server_t * server); | |||
/** | |||
* Call this function to get name of driver. | |||
* | |||
* @param driver driver object handle to get name of | |||
* | |||
* @return driver name. Must not be modified. Always same for same | |||
* driver object. | |||
*/ | |||
const char * | |||
jackctl_driver_get_name( | |||
jackctl_driver_t * driver); | |||
/** | |||
* Call this function to get list of driver parameters. List node data | |||
* pointers is a parameter object handle (::jackctl_parameter_t). | |||
* | |||
* @param driver driver object handle to get parameters for | |||
* | |||
* @return Single linked list of parameter object handles. Must not be | |||
* modified. Always same for same driver object. | |||
*/ | |||
const JSList * | |||
jackctl_driver_get_parameters( | |||
jackctl_driver_t * driver); | |||
/** | |||
* Call this function to get parameter name. | |||
* | |||
* @param parameter parameter object handle to get name of | |||
* | |||
* @return parameter name. Must not be modified. Always same for same | |||
* parameter object. | |||
*/ | |||
const char * | |||
jackctl_parameter_get_name( | |||
jackctl_parameter_t * parameter); | |||
/** | |||
* Call this function to get parameter short description. | |||
* | |||
* @param parameter parameter object handle to get short description of | |||
* | |||
* @return parameter short description. Must not be modified. Always | |||
* same for same parameter object. | |||
*/ | |||
const char * | |||
jackctl_parameter_get_short_description( | |||
jackctl_parameter_t * parameter); | |||
/** | |||
* Call this function to get parameter long description. | |||
* | |||
* @param parameter parameter object handle to get long description of | |||
* | |||
* @return parameter long description. Must not be modified. Always | |||
* same for same parameter object. | |||
*/ | |||
const char * | |||
jackctl_parameter_get_long_description( | |||
jackctl_parameter_t * parameter); | |||
/** | |||
* Call this function to get parameter type. | |||
* | |||
* @param parameter parameter object handle to get type of | |||
* | |||
* @return parameter type. Always same for same parameter object. | |||
*/ | |||
jackctl_param_type_t | |||
jackctl_parameter_get_type( | |||
jackctl_parameter_t * parameter); | |||
/** | |||
* Call this function to get parameter character. | |||
* | |||
* @param parameter parameter object handle to get character of | |||
* | |||
* @return character. | |||
*/ | |||
char | |||
jackctl_parameter_get_id( | |||
jackctl_parameter_t * parameter); | |||
/** | |||
* Call this function to check whether parameter has been set, or its | |||
* default value is being used. | |||
* | |||
* @param parameter parameter object handle to check | |||
* | |||
* @return true - parameter is set, false - parameter is using default | |||
* value. | |||
*/ | |||
bool | |||
jackctl_parameter_is_set( | |||
jackctl_parameter_t * parameter); | |||
/** | |||
* Call this function to reset parameter to its default value. | |||
* | |||
* @param parameter parameter object handle to reset value of | |||
* | |||
* @return success status: true - success, false - fail | |||
*/ | |||
bool | |||
jackctl_parameter_reset( | |||
jackctl_parameter_t * parameter); | |||
/** | |||
* Call this function to get parameter value. | |||
* | |||
* @param parameter parameter object handle to get value of | |||
* | |||
* @return parameter value. | |||
*/ | |||
union jackctl_parameter_value | |||
jackctl_parameter_get_value( | |||
jackctl_parameter_t * parameter); | |||
/** | |||
* Call this function to set parameter value. | |||
* | |||
* @param parameter parameter object handle to get value of | |||
* @param value_ptr pointer to variable containing parameter value | |||
* | |||
* @return success status: true - success, false - fail | |||
*/ | |||
bool | |||
jackctl_parameter_set_value( | |||
jackctl_parameter_t * parameter, | |||
const union jackctl_parameter_value * value_ptr); | |||
/** | |||
* Call this function to get parameter default value. | |||
* | |||
* @param parameter parameter object handle to get default value of | |||
* | |||
* @return parameter default value. | |||
*/ | |||
union jackctl_parameter_value | |||
jackctl_parameter_get_default_value( | |||
jackctl_parameter_t * parameter); | |||
/** | |||
* Call this function to log an error message. | |||
* | |||
* @param format string | |||
*/ | |||
void | |||
jack_error( | |||
const char *format, | |||
...); | |||
/** | |||
* Call this function to log an information message. | |||
* | |||
* @param format string | |||
*/ | |||
void | |||
jack_info( | |||
const char *format, | |||
...); | |||
/** | |||
* Call this function to log an information message but only when | |||
* verbose mode is enabled. | |||
* | |||
* @param format string | |||
*/ | |||
void | |||
jack_log( | |||
const char *format, | |||
...); | |||
#if 0 | |||
{ /* Adjust editor indent */ | |||
#endif | |||
#ifdef __cplusplus | |||
} /* extern "C" */ | |||
#endif | |||
#endif /* #ifndef JACKCTL_H__2EEDAD78_DF4C_4B26_83B7_4FF1A446A47E__INCLUDED */ | |||
/* -*- Mode: C ; c-basic-offset: 4 -*- */ | |||
/* | |||
JACK control API | |||
Copyright (C) 2008 Nedko Arnaudov | |||
This program is free software; you can redistribute it and/or modify | |||
it under the terms of the GNU General Public License as published by | |||
the Free Software Foundation; version 2 of the License. | |||
This program is distributed in the hope that it will be useful, | |||
but WITHOUT ANY WARRANTY; without even the implied warranty of | |||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |||
GNU General Public License for more details. | |||
You should have received a copy of the GNU General Public License | |||
along with this program; if not, write to the Free Software | |||
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | |||
*/ | |||
/** | |||
* @file jack/control.h | |||
* @ingroup publicheader | |||
* @brief JACK control API | |||
* | |||
*/ | |||
#ifndef JACKCTL_H__2EEDAD78_DF4C_4B26_83B7_4FF1A446A47E__INCLUDED | |||
#define JACKCTL_H__2EEDAD78_DF4C_4B26_83B7_4FF1A446A47E__INCLUDED | |||
#include <jack/jslist.h> | |||
#include <jack/jslist.h> | |||
#ifdef WIN32 | |||
typedef unsigned long sigset_t; | |||
#ifdef WIN32 | |||
typedef unsigned long sigset_t; | |||
#endif | |||
/** Parameter types, intentionally similar to jack_driver_param_type_t */ | |||
@@ -57,8 +57,6 @@ main (int argc, char *argv[]) | |||
fprintf(stderr, "ERROR! client should be called jack_connect or jack_disconnect. client is called %s\n", my_name); | |||
return 1; | |||
} | |||
printf("connecting %ld\n",connecting); | |||
if (argc != 3) { | |||
fprintf (stderr, "usage: %s <src_port> <dst_port>\n", my_name); | |||
@@ -69,7 +67,7 @@ main (int argc, char *argv[]) | |||
/* try to become a client of the JACK server */ | |||
if ((client = jack_client_new (my_name)) == 0) { | |||
if ((client = jack_client_open (my_name, JackNullOption, NULL)) == 0) { | |||
fprintf (stderr, "jack server not running?\n"); | |||
return 1; | |||
} | |||
@@ -19,7 +19,7 @@ static int Jack_Graph_Order_Callback(void *arg) | |||
const char **ports; | |||
int i; | |||
printf("Jack_Graph_Order_Callback count = %ld\n", reorder++); | |||
printf("Jack_Graph_Order_Callback count = %d\n", reorder++); | |||
ports = jack_get_ports(client, NULL, NULL, JackPortIsPhysical|JackPortIsOutput); | |||
if (ports) { | |||
@@ -45,7 +45,6 @@ main (int argc, char *argv[]) | |||
{ | |||
jack_options_t options = JackNullOption; | |||
jack_status_t status; | |||
char c; | |||
/* open a client connection to the JACK server */ | |||
@@ -31,20 +31,20 @@ char *package; /* program name */ | |||
jack_client_t *client; | |||
int onoff; | |||
void jack_shutdown(void *arg) | |||
static void jack_shutdown(void *arg) | |||
{ | |||
fprintf(stderr, "JACK shut down, exiting ...\n"); | |||
exit(1); | |||
} | |||
void signal_handler(int sig) | |||
static void signal_handler(int sig) | |||
{ | |||
jack_client_close(client); | |||
fprintf(stderr, "signal received, exiting ...\n"); | |||
exit(0); | |||
} | |||
void parse_arguments(int argc, char *argv[]) | |||
static void parse_arguments(int argc, char *argv[]) | |||
{ | |||
if (argc < 2) { | |||
fprintf(stderr, "usage: %s y|n\n", package); | |||
@@ -61,32 +61,24 @@ void parse_arguments(int argc, char *argv[]) | |||
int | |||
main (int argc, char *argv[]) | |||
{ | |||
//parse_arguments (argc, argv); | |||
parse_arguments (argc, argv); | |||
/* become a JACK client */ | |||
if ((client = jack_client_new ("freewheel1")) == 0) { | |||
if ((client = jack_client_open ("freewheel", JackNullOption, NULL)) == 0) { | |||
fprintf (stderr, "JACK server not running?\n"); | |||
exit(1); | |||
} | |||
/* | |||
signal (SIGQUIT, signal_handler); | |||
signal (SIGTERM, signal_handler); | |||
signal (SIGHUP, signal_handler); | |||
signal (SIGINT, signal_handler); | |||
*/ | |||
jack_on_shutdown (client, jack_shutdown, 0); | |||
/* | |||
if (jack_set_freewheel (client, onoff)) { | |||
fprintf (stderr, "failed to reset freewheel mode\n"); | |||
} | |||
*/ | |||
jack_set_freewheel (client, 1); | |||
sleep(5); | |||
jack_set_freewheel (client, 0); | |||
sleep(5); | |||
jack_client_close(client); | |||
return 0; | |||
@@ -16,7 +16,7 @@ char *load_init = ""; | |||
char *server_name = NULL; | |||
int wait_opt = 0; | |||
void | |||
static void | |||
signal_handler (int sig) | |||
{ | |||
jack_status_t status; | |||
@@ -31,7 +31,7 @@ signal_handler (int sig) | |||
exit (0); | |||
} | |||
void | |||
static void | |||
show_usage () | |||
{ | |||
fprintf (stderr, "usage: %s [ options ] client-name [ load-name " | |||
@@ -45,7 +45,7 @@ show_usage () | |||
); | |||
} | |||
int | |||
static int | |||
parse_args (int argc, char *argv[]) | |||
{ | |||
int c; | |||
@@ -169,7 +169,8 @@ main (int argc, char *argv[]) | |||
sleep (1); | |||
} | |||
} | |||
jack_client_close(client); | |||
return 0; | |||
} | |||
@@ -69,7 +69,8 @@ main (int argc, char *argv[]) | |||
} else { | |||
fprintf (stdout, "%s unloaded.\n", client_name); | |||
} | |||
jack_client_close(client); | |||
return 0; | |||
} | |||
@@ -5,20 +5,17 @@ | |||
#endif | |||
#include <string.h> | |||
#include <getopt.h> | |||
//#include <config.h> | |||
#include <jack/jack.h> | |||
char * my_name; | |||
void | |||
static void | |||
show_version (void) | |||
{ | |||
//fprintf (stderr, "%s: JACK Audio Connection Kit version " VERSION "\n", my_name); | |||
} | |||
void | |||
static void | |||
show_usage (void) | |||
{ | |||
show_version (); | |||
@@ -54,7 +51,7 @@ main (int argc, char *argv[]) | |||
int show_type = 0; | |||
int c; | |||
int option_index; | |||
char* aliases[2]; | |||
char* aliases[2]; | |||
jack_port_t *port; | |||
struct option long_options[] = { | |||
@@ -129,9 +126,7 @@ main (int argc, char *argv[]) | |||
return 1; | |||
} | |||
ports = jack_get_ports (client, NULL, NULL, 0); | |||
//jack_port_t *port; | |||
ports = jack_get_ports (client, NULL, NULL, 0); | |||
for (i = 0; ports[i]; ++i) { | |||
// skip over any that don't match ALL of the strings presented at command line | |||
@@ -19,20 +19,19 @@ | |||
#include <stdlib.h> | |||
#include <stdio.h> | |||
#include <errno.h> | |||
#ifndef WIN32 | |||
#include <unistd.h> | |||
#endif | |||
#include <math.h> | |||
#include <getopt.h> | |||
#include <string.h> | |||
#include <jack/jack.h> | |||
#include <jack/transport.h> | |||
typedef jack_default_audio_sample_t sample_t; | |||
const double PI = 3.14; | |||
jack_client_t *client; | |||
jack_port_t *input_port; | |||
jack_port_t *output_port; | |||
unsigned long sr; | |||
int freq = 880; | |||
@@ -43,32 +42,41 @@ long offset = 0; | |||
int transport_aware = 0; | |||
jack_transport_state_t transport_state; | |||
void | |||
static void signal_handler(int sig) | |||
{ | |||
jack_client_close(client); | |||
fprintf(stderr, "signal received, exiting ...\n"); | |||
exit(0); | |||
} | |||
static void | |||
usage () | |||
{ | |||
fprintf (stderr, "\n" | |||
"usage: jack_metro \n" | |||
" [ --frequency OR -f frequency (in Hz) ]\n" | |||
" [ --amplitude OR -A maximum amplitude (between 0 and 1) ]\n" | |||
" [ --duration OR -D duration (in ms) ]\n" | |||
" [ --attack OR -a attack (in percent of duration) ]\n" | |||
" [ --decay OR -d decay (in percent of duration) ]\n" | |||
" [ --name OR -n jack name for metronome client ]\n" | |||
" [ --transport OR -t transport aware ]\n" | |||
" --bpm OR -b beats per minute\n" | |||
); | |||
"usage: jack_metro \n" | |||
" [ --frequency OR -f frequency (in Hz) ]\n" | |||
" [ --amplitude OR -A maximum amplitude (between 0 and 1) ]\n" | |||
" [ --duration OR -D duration (in ms) ]\n" | |||
" [ --attack OR -a attack (in percent of duration) ]\n" | |||
" [ --decay OR -d decay (in percent of duration) ]\n" | |||
" [ --name OR -n jack name for metronome client ]\n" | |||
" [ --transport OR -t transport aware ]\n" | |||
" --bpm OR -b beats per minute\n" | |||
); | |||
} | |||
void | |||
static void | |||
process_silence (jack_nframes_t nframes) | |||
{ | |||
sample_t *buffer = (sample_t *) jack_port_get_buffer (output_port, nframes); | |||
memset (buffer, 0, sizeof (jack_default_audio_sample_t) * nframes); | |||
} | |||
int | |||
process_audio (jack_nframes_t nframes, void *arg) | |||
static void | |||
process_audio (jack_nframes_t nframes) | |||
{ | |||
sample_t *buffer = (sample_t *) jack_port_get_buffer (output_port, nframes); | |||
jack_nframes_t frames_left = nframes; | |||
@@ -81,17 +89,9 @@ process_audio (jack_nframes_t nframes, void *arg) | |||
memcpy (buffer + (nframes - frames_left), wave + offset, sizeof (sample_t) * frames_left); | |||
offset += frames_left; | |||
} | |||
return 0; | |||
} | |||
void jack_port_register_cb(jack_port_id_t port, int mode, void *arg) | |||
{ | |||
printf("jack_port_register port = %ld mode = %ld\n", port, mode); | |||
} | |||
/* | |||
int | |||
static int | |||
process (jack_nframes_t nframes, void *arg) | |||
{ | |||
if (transport_aware) { | |||
@@ -108,8 +108,8 @@ process (jack_nframes_t nframes, void *arg) | |||
process_audio (nframes); | |||
return 0; | |||
} | |||
*/ | |||
int | |||
static int | |||
sample_rate_change () { | |||
printf("Sample rate has changed! Exiting...\n"); | |||
exit(-1); | |||
@@ -118,6 +118,7 @@ sample_rate_change () { | |||
int | |||
main (int argc, char *argv[]) | |||
{ | |||
sample_t scale; | |||
int i, attack_length, decay_length; | |||
double *amp; | |||
@@ -129,6 +130,7 @@ main (int argc, char *argv[]) | |||
char *client_name = 0; | |||
char *bpm_string = "bpm"; | |||
int verbose = 0; | |||
jack_status_t status; | |||
const char *options = "f:A:D:a:d:b:n:thv"; | |||
struct option long_options[] = | |||
@@ -145,7 +147,7 @@ main (int argc, char *argv[]) | |||
{"verbose", 0, 0, 'v'}, | |||
{0, 0, 0, 0} | |||
}; | |||
while ((opt = getopt_long (argc, argv, options, long_options, &option_index)) != EOF) { | |||
switch (opt) { | |||
case 'f': | |||
@@ -203,7 +205,6 @@ main (int argc, char *argv[]) | |||
return -1; | |||
} | |||
} | |||
if (!got_bpm) { | |||
fprintf (stderr, "bpm not specified\n"); | |||
usage (); | |||
@@ -215,16 +216,14 @@ main (int argc, char *argv[]) | |||
client_name = (char *) malloc (9 * sizeof (char)); | |||
strcpy (client_name, "metro"); | |||
} | |||
if ((client = jack_client_new (client_name)) == 0) { | |||
if ((client = jack_client_open (client_name, JackNoStartServer, &status)) == 0) { | |||
fprintf (stderr, "jack server not running?\n"); | |||
return 1; | |||
} | |||
jack_set_process_callback (client, process_audio, 0); | |||
jack_set_process_callback (client, process, 0); | |||
output_port = jack_port_register (client, bpm_string, JACK_DEFAULT_AUDIO_TYPE, JackPortIsOutput, 0); | |||
input_port = jack_port_register (client, "metro_in", JACK_DEFAULT_AUDIO_TYPE, JackPortIsInput, 0); | |||
sr = jack_get_sample_rate (client); | |||
sr = jack_get_sample_rate (client); | |||
/* setup wave table parameters */ | |||
wave_length = 60 * sr / bpm; | |||
@@ -234,9 +233,7 @@ main (int argc, char *argv[]) | |||
scale = 2 * PI * freq / sr; | |||
if (tone_length >= wave_length) { | |||
//fprintf (stderr, "invalid duration (tone length = %" PRIu32 | |||
// ", wave length = %" PRIu32 "\n", tone_length, | |||
// wave_length); | |||
fprintf (stderr, "invalid duration (tone length = %u, wave length = %u\n", tone_length, wave_length); | |||
return -1; | |||
} | |||
if (attack_length + decay_length > (int)tone_length) { | |||
@@ -251,51 +248,35 @@ main (int argc, char *argv[]) | |||
for (i = 0; i < attack_length; i++) { | |||
amp[i] = max_amp * i / ((double) attack_length); | |||
} | |||
for (i = attack_length; i < (int) tone_length - decay_length; i++) { | |||
for (i = attack_length; i < (int)tone_length - decay_length; i++) { | |||
amp[i] = max_amp; | |||
} | |||
for (i = (int)tone_length - decay_length; i < (int)tone_length; i++) { | |||
amp[i] = - max_amp * (i - (double) tone_length) / ((double) decay_length); | |||
} | |||
for (i = 0; i < (int) tone_length; i++) { | |||
for (i = 0; i < (int)tone_length; i++) { | |||
wave[i] = amp[i] * sin (scale * i); | |||
} | |||
for (i = tone_length; i < (int) wave_length; i++) { | |||
for (i = tone_length; i < (int)wave_length; i++) { | |||
wave[i] = 0; | |||
} | |||
if (jack_set_port_registration_callback(client, jack_port_register_cb, 0) != 0) { | |||
printf("Error when calling jack_set_port_registration_callback() !\n"); | |||
} | |||
if (jack_activate (client)) { | |||
if (jack_activate (client)) { | |||
fprintf (stderr, "cannot activate client"); | |||
return 1; | |||
} | |||
#ifdef WIN32 | |||
// Connection can only be done after activation | |||
jack_connect(client,jack_port_name(output_port), "portaudio:winmme:in1"); | |||
jack_connect(client,jack_port_name(output_port), "portaudio:winmme:in2"); | |||
jack_connect(client,"portaudio:winmme:out2", jack_port_name(input_port)); | |||
#else | |||
// Connection can only be done after activation | |||
jack_connect(client,jack_port_name(output_port), "coreaudio:Built-in Audio:in2"); | |||
jack_connect(client,"coreaudio:Built-in Audio:out2", jack_port_name(input_port)); | |||
#endif | |||
while ((getchar() != 'q')) { | |||
//while (1) { | |||
//sleep(1); | |||
//printf("jack_frame_time %ld\n", (long)jack_frame_time(client)); | |||
//usleep(2000); | |||
/* install a signal handler to properly quits jack client */ | |||
signal(SIGQUIT, signal_handler); | |||
signal(SIGTERM, signal_handler); | |||
signal(SIGHUP, signal_handler); | |||
signal(SIGINT, signal_handler); | |||
/* run until interrupted */ | |||
while (1) { | |||
sleep(1); | |||
}; | |||
if (jack_deactivate (client)) { | |||
fprintf (stderr, "cannot deactivate client"); | |||
return 1; | |||
} | |||
jack_client_close(client); | |||
return 0; | |||
exit (0); | |||
} |
@@ -32,7 +32,14 @@ jack_nframes_t num_notes; | |||
jack_nframes_t loop_nsamp; | |||
jack_nframes_t loop_index; | |||
void usage() | |||
static void signal_handler(int sig) | |||
{ | |||
jack_client_close(client); | |||
fprintf(stderr, "signal received, exiting ...\n"); | |||
exit(0); | |||
} | |||
static void usage() | |||
{ | |||
fprintf(stderr, "usage: jack_midiseq name nsamp [startindex note nsamp] ...... [startindex note nsamp]\n"); | |||
fprintf(stderr, "eg: jack_midiseq Sequencer 24000 0 60 8000 12000 63 8000\n"); | |||
@@ -40,7 +47,7 @@ void usage() | |||
fprintf(stderr, "that lasts for 12000 samples, then a d4# that starts at 1/4 sec that lasts for 800 samples\n"); | |||
} | |||
int process(jack_nframes_t nframes, void *arg) | |||
static int process(jack_nframes_t nframes, void *arg) | |||
{ | |||
int i,j; | |||
void* port_buf = jack_port_get_buffer(output_port, nframes); | |||
@@ -83,7 +90,7 @@ int main(int narg, char **args) | |||
usage(); | |||
exit(1); | |||
} | |||
if((client = jack_client_new (args[1])) == 0) | |||
if((client = jack_client_open (args[1], JackNullOption, NULL)) == 0) | |||
{ | |||
fprintf (stderr, "jack server not running?\n"); | |||
return 1; | |||
@@ -109,10 +116,18 @@ int main(int narg, char **args) | |||
fprintf (stderr, "cannot activate client"); | |||
return 1; | |||
} | |||
/* install a signal handler to properly quits jack client */ | |||
signal(SIGQUIT, signal_handler); | |||
signal(SIGTERM, signal_handler); | |||
signal(SIGHUP, signal_handler); | |||
signal(SIGINT, signal_handler); | |||
while (1) | |||
{ | |||
/* run until interrupted */ | |||
while (1) { | |||
sleep(1); | |||
}; | |||
jack_client_close(client); | |||
exit (0); | |||
} |
@@ -33,7 +33,16 @@ jack_default_audio_sample_t note_on; | |||
unsigned char note = 0; | |||
jack_default_audio_sample_t note_frqs[128]; | |||
void calc_note_frqs(jack_default_audio_sample_t srate) | |||
jack_client_t *client; | |||
static void signal_handler(int sig) | |||
{ | |||
jack_client_close(client); | |||
fprintf(stderr, "signal received, exiting ...\n"); | |||
exit(0); | |||
} | |||
static void calc_note_frqs(jack_default_audio_sample_t srate) | |||
{ | |||
int i; | |||
for(i=0; i<128; i++) | |||
@@ -42,7 +51,7 @@ void calc_note_frqs(jack_default_audio_sample_t srate) | |||
} | |||
} | |||
int process(jack_nframes_t nframes, void *arg) | |||
static int process(jack_nframes_t nframes, void *arg) | |||
{ | |||
int i; | |||
void* port_buf = jack_port_get_buffer(input_port, nframes); | |||
@@ -88,23 +97,21 @@ int process(jack_nframes_t nframes, void *arg) | |||
return 0; | |||
} | |||
int srate(jack_nframes_t nframes, void *arg) | |||
static int srate(jack_nframes_t nframes, void *arg) | |||
{ | |||
printf("the sample rate is now %" PRIu32 "/sec\n", nframes); | |||
calc_note_frqs((jack_default_audio_sample_t)nframes); | |||
return 0; | |||
} | |||
void jack_shutdown(void *arg) | |||
static void jack_shutdown(void *arg) | |||
{ | |||
exit(1); | |||
} | |||
int main(int narg, char **args) | |||
{ | |||
jack_client_t *client; | |||
if ((client = jack_client_new("midisine")) == 0) | |||
if ((client = jack_client_open("midisine", JackNullOption, NULL)) == 0) | |||
{ | |||
fprintf(stderr, "jack server not running?\n"); | |||
return 1; | |||
@@ -126,10 +133,15 @@ int main(int narg, char **args) | |||
fprintf(stderr, "cannot activate client"); | |||
return 1; | |||
} | |||
/* install a signal handler to properly quits jack client */ | |||
signal(SIGQUIT, signal_handler); | |||
signal(SIGTERM, signal_handler); | |||
signal(SIGHUP, signal_handler); | |||
signal(SIGINT, signal_handler); | |||
/* run until interrupted */ | |||
while(1) | |||
{ | |||
while(1) { | |||
sleep(1); | |||
} | |||
jack_client_close(client); | |||
@@ -1,204 +0,0 @@ | |||
/** @file mp_thread_client.c | |||
* | |||
* @brief This simple client demonstrates the use of "jack_thread_wait" function in a multi-threaded context. | |||
A set of threads (the jack process thread + n helper threads) are used to work on a global queue of tasks. | |||
The last finishing thread gives control back to libjack using the "jack_thread_wait" function. Other threads suspend | |||
on a condition variable and are resumed next cycle by the libjack suspended thread. | |||
*/ | |||
#include <unistd.h> | |||
#include <stdio.h> | |||
#include <errno.h> | |||
#include <stdlib.h> | |||
#include <string.h> | |||
#include <math.h> | |||
#define __SMP__ 1 | |||
#include <jack/jack.h> | |||
#include <jack/thread.h> | |||
#include <math.h> | |||
#include "JackAtomic.h" | |||
jack_port_t *input_port; | |||
jack_port_t *output_port; | |||
jack_client_t *client; | |||
int buffer_size; | |||
#define WORK_AT_EACH_CYCLE 1000 | |||
#define WORK_AT_EACH_LOOP 15 | |||
static SInt32 cycle_work_count = 0; | |||
pthread_cond_t cond; | |||
pthread_mutex_t mutex; | |||
jack_nframes_t last_time = 0; | |||
static int print_count = 50; | |||
int result = 0; | |||
typedef struct thread_context | |||
{ | |||
pthread_t thread; | |||
int num; | |||
}; | |||
// Simulate workload | |||
static int fib(int n) | |||
{ | |||
if (n < 2) | |||
return n; | |||
else | |||
return fib(n - 2) + fib(n - 1); | |||
} | |||
static void do_some_work(void *arg) | |||
{ | |||
result = fib(WORK_AT_EACH_LOOP); | |||
} | |||
static void resume_all_threads(void *arg) | |||
{ | |||
thread_context* context = (thread_context*)arg; | |||
jack_nframes_t cur_time = jack_frame_time(client); | |||
if (--print_count == 0) { | |||
printf("resume_all_threads from thread = %ld jack_frame_time = %u jack_cpu_load = %f\n", context->num, (cur_time - last_time), jack_cpu_load(client)); | |||
print_count = 50; | |||
} | |||
pthread_mutex_lock(&mutex); // Hum... | |||
pthread_cond_broadcast(&cond); | |||
pthread_mutex_unlock(&mutex); // Hum... | |||
cycle_work_count = WORK_AT_EACH_CYCLE; | |||
last_time = cur_time; | |||
} | |||
static void suspend_jack_thread(void *arg) | |||
{ | |||
jack_thread_wait(client, 0); | |||
resume_all_threads(arg); | |||
} | |||
static void suspend_worker_thread(void *arg) | |||
{ | |||
pthread_mutex_lock(&mutex); // Hum... | |||
pthread_cond_wait(&cond, &mutex); | |||
pthread_mutex_unlock(&mutex); // Hum... | |||
} | |||
static void * worker_aux_thread(void *arg) | |||
{ | |||
while (1) { | |||
int val = DEC_ATOMIC(&cycle_work_count); | |||
if (val == 1) { // Last thread | |||
suspend_jack_thread(arg); | |||
} else if (val < 1) { | |||
suspend_worker_thread(arg); | |||
} else { | |||
do_some_work(arg); | |||
} | |||
} | |||
return 0; | |||
} | |||
static void * worker_thread(void *arg) | |||
{ | |||
suspend_worker_thread(arg); // Start in "suspended" state | |||
worker_aux_thread(arg); | |||
return 0; | |||
} | |||
// Example of audio process | |||
int process(jack_nframes_t nframes, void *arg) | |||
{ | |||
resume_all_threads(arg); | |||
worker_aux_thread(arg); | |||
return 0; | |||
} | |||
/** | |||
* JACK calls this shutdown_callback if the server ever shuts down or | |||
* decides to disconnect the client. | |||
*/ | |||
void jack_shutdown (void *arg) | |||
{ | |||
exit(1); | |||
} | |||
int main (int argc, char *argv[]) | |||
{ | |||
thread_context* worker_threads; | |||
int n, nthreads = 0; | |||
if (argc == 2) | |||
nthreads = atoi(argv[1]); | |||
worker_threads = (thread_context *) malloc (sizeof (thread_context) * nthreads); | |||
/* open a client connection to the JACK server */ | |||
if ((client = jack_client_open("mp_thread_test", JackNoStartServer, NULL)) == NULL) { | |||
fprintf(stderr, "Cannot open client\n"); | |||
exit(1); | |||
} | |||
buffer_size = jack_get_buffer_size(client); | |||
/* tell the JACK server to call the 'callback' function | |||
*/ | |||
worker_threads[0].num = 0; | |||
jack_set_process_callback(client, process, &worker_threads[0]); | |||
/* tell the JACK server to call `jack_shutdown()' if | |||
it ever shuts down, either entirely, or if it | |||
just decides to stop calling us. | |||
*/ | |||
jack_on_shutdown(client, jack_shutdown, 0); | |||
pthread_mutex_init(&mutex, NULL); | |||
pthread_cond_init(&cond, NULL); | |||
input_port = jack_port_register(client, "input", JACK_DEFAULT_AUDIO_TYPE, JackPortIsInput, 0); | |||
output_port = jack_port_register(client, "output", JACK_DEFAULT_AUDIO_TYPE, JackPortIsOutput, 0); | |||
if ((input_port == NULL) || (output_port == NULL)) { | |||
fprintf(stderr, "no more JACK ports available\n"); | |||
exit(1); | |||
} | |||
fprintf(stderr, "Creating %d threads\n", nthreads); | |||
for (n = 1; n <= nthreads; ++n) { | |||
worker_threads[n].num = n; | |||
if (jack_client_create_thread(client, &worker_threads[n].thread, 90, 1, worker_thread, &worker_threads[n]) < 0) | |||
exit(1); | |||
jack_acquire_real_time_scheduling (worker_threads[n].thread, 90); | |||
} | |||
/* Tell the JACK server that we are ready to roll. Our | |||
* process() callback will start running now. */ | |||
if (jack_activate(client)) { | |||
fprintf(stderr, "cannot activate client"); | |||
exit(1); | |||
} | |||
while (1) { | |||
#ifdef WIN32 | |||
Sleep(1000); | |||
#else | |||
sleep(1); | |||
#endif | |||
} | |||
jack_client_close(client); | |||
pthread_mutex_destroy(&mutex); | |||
pthread_cond_destroy(&cond); | |||
exit(0); | |||
} |
@@ -23,6 +23,13 @@ volatile enum { | |||
Exit | |||
} client_state = Init; | |||
static void signal_handler(int sig) | |||
{ | |||
jack_client_close(client); | |||
fprintf(stderr, "signal received, exiting ...\n"); | |||
exit(0); | |||
} | |||
/** | |||
* The process callback for this JACK application is called in a | |||
* special realtime thread once for each audio cycle. | |||
@@ -30,7 +37,7 @@ volatile enum { | |||
* This client follows a simple rule: when the JACK transport is | |||
* running, copy the input port to the output. When it stops, exit. | |||
*/ | |||
int | |||
static int | |||
_process (jack_nframes_t nframes) | |||
{ | |||
jack_default_audio_sample_t *in, *out; | |||
@@ -57,38 +64,55 @@ _process (jack_nframes_t nframes) | |||
return 0; | |||
} | |||
/* | |||
int | |||
process (jack_nframes_t nframes, void* arg) | |||
static void* jack_thread(void *arg) | |||
{ | |||
jack_client_t* client = (jack_client_t*) arg; | |||
while ((nframes = jack_thread_wait (client, _process (nframes))) != 0); | |||
while (1) { | |||
jack_nframes_t frames = jack_cycle_wait (client); | |||
int status = _process(frames); | |||
jack_cycle_signal (client, status); | |||
// possibly do something else after signaling next clients in the graph | |||
} | |||
return 0; | |||
} | |||
*/ | |||
int | |||
process (jack_nframes_t nframes, void* arg) | |||
/* | |||
static void* jack_thread(void *arg) | |||
{ | |||
jack_client_t* client = (jack_client_t*) arg; | |||
do { | |||
int status = _process(nframes); | |||
while (1) { | |||
jack_nframes_t frames; | |||
int status; | |||
// cycle 1 | |||
frames = jack_cycle_wait (client); | |||
status = _process(frames); | |||
jack_cycle_signal (client, status); | |||
// cycle 2 | |||
frames = jack_cycle_wait (client); | |||
status = _process(frames); | |||
jack_cycle_signal (client, status); | |||
// cycle 3 | |||
frames = jack_cycle_wait (client); | |||
status = _process(frames); | |||
jack_cycle_signal (client, status); | |||
// possibly do something else after signaling next clients in the graph | |||
nframes = jack_cycle_wait (client); | |||
} while (nframes != 0); | |||
// cycle 4 | |||
frames = jack_cycle_wait (client); | |||
status = _process(frames); | |||
jack_cycle_signal (client, status); | |||
} | |||
return 0; | |||
} | |||
*/ | |||
/** | |||
* JACK calls this shutdown_callback if the server ever shuts down or | |||
* decides to disconnect the client. | |||
*/ | |||
void | |||
static void | |||
jack_shutdown (void *arg) | |||
{ | |||
exit (1); | |||
@@ -139,9 +163,9 @@ main (int argc, char *argv[]) | |||
/* tell the JACK server to call `process()' whenever | |||
there is work to be done. | |||
*/ | |||
jack_set_process_callback (client, process, client); | |||
*/ | |||
if (jack_set_process_thread(client, jack_thread, client) < 0) | |||
exit(1); | |||
/* tell the JACK server to call `jack_shutdown()' if | |||
it ever shuts down, either entirely, or if it | |||
@@ -211,6 +235,12 @@ main (int argc, char *argv[]) | |||
} | |||
free (ports); | |||
/* install a signal handler to properly quits jack client */ | |||
signal(SIGQUIT, signal_handler); | |||
signal(SIGTERM, signal_handler); | |||
signal(SIGHUP, signal_handler); | |||
signal(SIGINT, signal_handler); | |||
/* keep running until the transport stops */ | |||
@@ -1,250 +0,0 @@ | |||
/** @file simple_client.c | |||
* | |||
* @brief This simple client demonstrates the basic features of JACK | |||
* as they would be used by many applications. | |||
*/ | |||
#include <stdio.h> | |||
#include <errno.h> | |||
#include <unistd.h> | |||
#include <stdlib.h> | |||
#include <string.h> | |||
#include <jack/jack.h> | |||
#include <jack/thread.h> | |||
jack_port_t *input_port; | |||
jack_port_t *output_port; | |||
jack_client_t *client; | |||
/* a simple state machine for this client */ | |||
volatile enum { | |||
Init, | |||
Run, | |||
Exit | |||
} client_state = Init; | |||
/** | |||
* The process callback for this JACK application is called in a | |||
* special realtime thread once for each audio cycle. | |||
* | |||
* This client follows a simple rule: when the JACK transport is | |||
* running, copy the input port to the output. When it stops, exit. | |||
*/ | |||
/** | |||
* The process callback for this JACK application is called in a | |||
* special realtime thread once for each audio cycle. | |||
* | |||
* This client follows a simple rule: when the JACK transport is | |||
* running, copy the input port to the output. When it stops, exit. | |||
*/ | |||
int | |||
_process (jack_nframes_t nframes) | |||
{ | |||
jack_default_audio_sample_t *in, *out; | |||
jack_transport_state_t ts = jack_transport_query(client, NULL); | |||
if (ts == JackTransportRolling) { | |||
if (client_state == Init) | |||
client_state = Run; | |||
in = jack_port_get_buffer (input_port, nframes); | |||
out = jack_port_get_buffer (output_port, nframes); | |||
memcpy (out, in, | |||
sizeof (jack_default_audio_sample_t) * nframes); | |||
} else if (ts == JackTransportStopped) { | |||
if (client_state == Run) { | |||
client_state = Exit; | |||
printf("END\n"); | |||
return -1; // to stop the thread | |||
} | |||
} | |||
return 0; | |||
} | |||
static void* jack_thread(void *arg) | |||
{ | |||
jack_client_t* client = (jack_client_t*) arg; | |||
while (1) { | |||
jack_nframes_t frames = jack_cycle_wait (client); | |||
int status = _process(frames); | |||
jack_cycle_signal (client, status); | |||
} | |||
return 0; | |||
} | |||
/* | |||
static void* jack_thread(void *arg) | |||
{ | |||
jack_client_t* client = (jack_client_t*) arg; | |||
while (1) { | |||
jack_nframes_t frames; | |||
int status; | |||
// cycle 1 | |||
frames = jack_cycle_wait (client); | |||
status = _process(frames); | |||
jack_cycle_signal (client, status); | |||
// cycle 2 | |||
frames = jack_cycle_wait (client); | |||
status = _process(frames); | |||
jack_cycle_signal (client, status); | |||
// cycle 3 | |||
frames = jack_cycle_wait (client); | |||
status = _process(frames); | |||
jack_cycle_signal (client, status); | |||
// cycle 4 | |||
frames = jack_cycle_wait (client); | |||
status = _process(frames); | |||
jack_cycle_signal (client, status); | |||
} | |||
return 0; | |||
} | |||
*/ | |||
/** | |||
* JACK calls this shutdown_callback if the server ever shuts down or | |||
* decides to disconnect the client. | |||
*/ | |||
void | |||
jack_shutdown (void *arg) | |||
{ | |||
exit (1); | |||
} | |||
int | |||
main (int argc, char *argv[]) | |||
{ | |||
const char **ports; | |||
const char *client_name; | |||
const char *server_name = NULL; | |||
jack_options_t options = JackNullOption; | |||
jack_status_t status; | |||
if (argc >= 2) { /* client name specified? */ | |||
client_name = argv[1]; | |||
if (argc >= 3) { /* server name specified? */ | |||
server_name = argv[2]; | |||
options |= JackServerName; | |||
} | |||
} else { /* use basename of argv[0] */ | |||
client_name = strrchr(argv[0], '/'); | |||
if (client_name == 0) { | |||
client_name = argv[0]; | |||
} else { | |||
client_name++; | |||
} | |||
} | |||
/* open a client connection to the JACK server */ | |||
client = jack_client_open (client_name, options, &status, server_name); | |||
if (client == NULL) { | |||
fprintf (stderr, "jack_client_open() failed, " | |||
"status = 0x%2.0x\n", status); | |||
if (status & JackServerFailed) { | |||
fprintf (stderr, "Unable to connect to JACK server\n"); | |||
} | |||
exit (1); | |||
} | |||
if (status & JackServerStarted) { | |||
fprintf (stderr, "JACK server started\n"); | |||
} | |||
if (status & JackNameNotUnique) { | |||
client_name = jack_get_client_name(client); | |||
fprintf (stderr, "unique name `%s' assigned\n", client_name); | |||
} | |||
/* create RT thread | |||
*/ | |||
if (jack_set_process_thread(client, jack_thread, client) < 0) | |||
exit(1); | |||
/* tell the JACK server to call `jack_shutdown()' if | |||
it ever shuts down, either entirely, or if it | |||
just decides to stop calling us. | |||
*/ | |||
jack_on_shutdown (client, jack_shutdown, 0); | |||
/* display the current sample rate. | |||
*/ | |||
printf ("engine sample rate: %" PRIu32 "\n", | |||
jack_get_sample_rate (client)); | |||
/* create two ports */ | |||
input_port = jack_port_register (client, "input", | |||
JACK_DEFAULT_AUDIO_TYPE, | |||
JackPortIsInput, 0); | |||
output_port = jack_port_register (client, "output", | |||
JACK_DEFAULT_AUDIO_TYPE, | |||
JackPortIsOutput, 0); | |||
if ((input_port == NULL) || (output_port == NULL)) { | |||
fprintf(stderr, "no more JACK ports available\n"); | |||
exit (1); | |||
} | |||
/* Tell the JACK server that we are ready to roll. Our | |||
* process() callback will start running now. */ | |||
if (jack_activate (client)) { | |||
fprintf (stderr, "cannot activate client"); | |||
exit (1); | |||
} | |||
/* Connect the ports. You can't do this before the client is | |||
* activated, because we can't make connections to clients | |||
* that aren't running. Note the confusing (but necessary) | |||
* orientation of the driver backend ports: playback ports are | |||
* "input" to the backend, and capture ports are "output" from | |||
* it. | |||
*/ | |||
ports = jack_get_ports (client, NULL, NULL, | |||
JackPortIsPhysical|JackPortIsOutput); | |||
if (ports == NULL) { | |||
fprintf(stderr, "no physical capture ports\n"); | |||
exit (1); | |||
} | |||
if (jack_connect (client, ports[0], jack_port_name (input_port))) { | |||
fprintf (stderr, "cannot connect input ports\n"); | |||
} | |||
free (ports); | |||
ports = jack_get_ports (client, NULL, NULL, | |||
JackPortIsPhysical|JackPortIsInput); | |||
if (ports == NULL) { | |||
fprintf(stderr, "no physical playback ports\n"); | |||
exit (1); | |||
} | |||
if (jack_connect (client, jack_port_name (output_port), ports[0])) { | |||
fprintf (stderr, "cannot connect output ports\n"); | |||
} | |||
free (ports); | |||
/* keep running until the transport stops */ | |||
while (client_state != Exit) { | |||
sleep (1); | |||
} | |||
jack_client_close (client); | |||
exit (0); | |||
} |
@@ -29,7 +29,7 @@ int running = 1; | |||
int count = 0; | |||
jack_port_t* output_port; | |||
int | |||
static int | |||
process(jack_nframes_t nframes, void* arg) | |||
{ | |||
if (count++ == 1000) { | |||
@@ -41,7 +41,7 @@ process(jack_nframes_t nframes, void* arg) | |||
return 0; | |||
} | |||
void | |||
static void | |||
shutdown (void *arg) | |||
{ | |||
printf("shutdown \n"); | |||
@@ -29,7 +29,6 @@ | |||
4B35C6940D4733B9000DE7AE /* PBXTargetDependency */, | |||
4B35C6960D4733B9000DE7AE /* PBXTargetDependency */, | |||
4B0A29300D5210C4002EFF74 /* PBXTargetDependency */, | |||
4B0A2A700D524B01002EFF74 /* PBXTargetDependency */, | |||
4B35C6980D4733B9000DE7AE /* PBXTargetDependency */, | |||
4B35C69A0D4733B9000DE7AE /* PBXTargetDependency */, | |||
4B35C69C0D4733B9000DE7AE /* PBXTargetDependency */, | |||
@@ -70,7 +69,6 @@ | |||
4BA693E90CBE5BBA00EAD520 /* PBXTargetDependency */, | |||
4BA693EB0CBE5BBA00EAD520 /* PBXTargetDependency */, | |||
4B0A28F40D520D11002EFF74 /* PBXTargetDependency */, | |||
4B0A2A6E0D524AF2002EFF74 /* PBXTargetDependency */, | |||
4BFA99AC0AAAF41D009E916C /* PBXTargetDependency */, | |||
4BFA99500AAAED90009E916C /* PBXTargetDependency */, | |||
4BFA99520AAAED90009E916C /* PBXTargetDependency */, | |||
@@ -92,8 +90,6 @@ | |||
4B0206A10DC0BAB400319AF1 /* JackProcessSync.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4B02069D0DC0BAB400319AF1 /* JackProcessSync.cpp */; }; | |||
4B0A28ED0D520852002EFF74 /* tw.c in Sources */ = {isa = PBXBuildFile; fileRef = 4B0A28EC0D520852002EFF74 /* tw.c */; }; | |||
4B0A29260D52108E002EFF74 /* tw.c in Sources */ = {isa = PBXBuildFile; fileRef = 4B0A28EC0D520852002EFF74 /* tw.c */; }; | |||
4B0A29830D523269002EFF74 /* mp_tw.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4B0A29820D523269002EFF74 /* mp_tw.cpp */; }; | |||
4B0A2A5E0D524AB2002EFF74 /* mp_tw.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4B0A29820D523269002EFF74 /* mp_tw.cpp */; }; | |||
4B35C41E0D4731D1000DE7AE /* Jackdmp.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4BF8D2250834F06A00C94B91 /* Jackdmp.cpp */; }; | |||
4B35C4290D4731D1000DE7AE /* JackMachPort.h in Headers */ = {isa = PBXBuildFile; fileRef = 4B799AD707899652003F3F15 /* JackMachPort.h */; }; | |||
4B35C42A0D4731D1000DE7AE /* JackError.h in Headers */ = {isa = PBXBuildFile; fileRef = 4BF8D1770834EE4800C94B91 /* JackError.h */; }; | |||
@@ -304,8 +300,6 @@ | |||
4B4F9C930DC20C0400706CB0 /* JackMessageBuffer.h in Headers */ = {isa = PBXBuildFile; fileRef = 4B4F9C8B0DC20C0400706CB0 /* JackMessageBuffer.h */; }; | |||
4B4F9D820DC2178E00706CB0 /* JackMessageBuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4B4F9C8A0DC20C0400706CB0 /* JackMessageBuffer.cpp */; }; | |||
4B4F9D830DC2178F00706CB0 /* JackMessageBuffer.h in Headers */ = {isa = PBXBuildFile; fileRef = 4B4F9C8B0DC20C0400706CB0 /* JackMessageBuffer.h */; }; | |||
4B5175280D8FE69300961F37 /* tw1.c in Sources */ = {isa = PBXBuildFile; fileRef = 4B57F5BA0D72C2B000B4E719 /* tw1.c */; }; | |||
4B57F5BC0D72C2B000B4E719 /* tw1.c in Sources */ = {isa = PBXBuildFile; fileRef = 4B57F5BA0D72C2B000B4E719 /* tw1.c */; }; | |||
4B5A1BBE0CD1CC110005BF74 /* midiseq.c in Sources */ = {isa = PBXBuildFile; fileRef = 4B5A1BBD0CD1CC110005BF74 /* midiseq.c */; }; | |||
4B5A1BDD0CD1CD420005BF74 /* midisine.c in Sources */ = {isa = PBXBuildFile; fileRef = 4B5A1BDC0CD1CD420005BF74 /* midisine.c */; }; | |||
4B5DB9830CD2429A00EBA5EE /* JackDebugClient.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4B98AE000931D30C0091932A /* JackDebugClient.cpp */; }; | |||
@@ -547,20 +541,6 @@ | |||
remoteGlobalIDString = 4B0A29230D52108E002EFF74; | |||
remoteInfo = "jack_thread_wait 64 bits"; | |||
}; | |||
4B0A2A6D0D524AF2002EFF74 /* PBXContainerItemProxy */ = { | |||
isa = PBXContainerItemProxy; | |||
containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; | |||
proxyType = 1; | |||
remoteGlobalIDString = 4B0A29630D5231DC002EFF74; | |||
remoteInfo = jack_mp_thread_wait; | |||
}; | |||
4B0A2A6F0D524B01002EFF74 /* PBXContainerItemProxy */ = { | |||
isa = PBXContainerItemProxy; | |||
containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; | |||
proxyType = 1; | |||
remoteGlobalIDString = 4B0A2A5B0D524AB2002EFF74; | |||
remoteInfo = "jack_mp_thread_wait 64 bits"; | |||
}; | |||
4B35C5540D4731D2000DE7AE /* PBXContainerItemProxy */ = { | |||
isa = PBXContainerItemProxy; | |||
containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; | |||
@@ -947,9 +927,6 @@ | |||
4B0A28E60D52073D002EFF74 /* jack_thread_wait */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = jack_thread_wait; sourceTree = BUILT_PRODUCTS_DIR; }; | |||
4B0A28EC0D520852002EFF74 /* tw.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = tw.c; path = "../example-clients/tw.c"; sourceTree = SOURCE_ROOT; }; | |||
4B0A292D0D52108E002EFF74 /* jack_thread_wait */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = jack_thread_wait; sourceTree = BUILT_PRODUCTS_DIR; }; | |||
4B0A296D0D5231DC002EFF74 /* jack_mp_thread_wait */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = jack_mp_thread_wait; sourceTree = BUILT_PRODUCTS_DIR; }; | |||
4B0A29820D523269002EFF74 /* mp_tw.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = mp_tw.cpp; path = "../example-clients/mp_tw.cpp"; sourceTree = SOURCE_ROOT; }; | |||
4B0A2A650D524AB2002EFF74 /* jack_mp_thread_wait */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = jack_mp_thread_wait; sourceTree = BUILT_PRODUCTS_DIR; }; | |||
4B123D3308B3954300540632 /* JackGlobalsClient.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = JackGlobalsClient.cpp; path = ../common/JackGlobalsClient.cpp; sourceTree = SOURCE_ROOT; }; | |||
4B123D3608B3954A00540632 /* JackGlobalsServer.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = JackGlobalsServer.cpp; path = ../common/JackGlobalsServer.cpp; sourceTree = SOURCE_ROOT; }; | |||
4B2C28F908DAD01E00249230 /* JackGlobals.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = JackGlobals.cpp; path = ../common/JackGlobals.cpp; sourceTree = SOURCE_ROOT; }; | |||
@@ -990,11 +967,8 @@ | |||
4B464301076CAC7700E5077C /* Jack-Info.plist */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text.xml; path = "Jack-Info.plist"; sourceTree = SOURCE_ROOT; }; | |||
4B4F9C8A0DC20C0400706CB0 /* JackMessageBuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = JackMessageBuffer.cpp; path = ../common/JackMessageBuffer.cpp; sourceTree = SOURCE_ROOT; }; | |||
4B4F9C8B0DC20C0400706CB0 /* JackMessageBuffer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = JackMessageBuffer.h; path = ../common/JackMessageBuffer.h; sourceTree = SOURCE_ROOT; }; | |||
4B51752F0D8FE69300961F37 /* jack_thread_wait1 */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = jack_thread_wait1; sourceTree = BUILT_PRODUCTS_DIR; }; | |||
4B56880F08B5C8620022B32D /* JackFifo.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = JackFifo.cpp; path = ../common/JackFifo.cpp; sourceTree = SOURCE_ROOT; }; | |||
4B56881008B5C8620022B32D /* JackFifo.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = JackFifo.h; path = ../common/JackFifo.h; sourceTree = SOURCE_ROOT; }; | |||
4B57F5950D72C27900B4E719 /* jack_thread_wait1 */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = jack_thread_wait1; sourceTree = BUILT_PRODUCTS_DIR; }; | |||
4B57F5BA0D72C2B000B4E719 /* tw1.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = tw1.c; path = "../example-clients/tw1.c"; sourceTree = SOURCE_ROOT; }; | |||
4B5A1BBB0CD1CB9E0005BF74 /* jack_midiseq */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = jack_midiseq; sourceTree = BUILT_PRODUCTS_DIR; }; | |||
4B5A1BBD0CD1CC110005BF74 /* midiseq.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = midiseq.c; path = "../example-clients/midiseq.c"; sourceTree = SOURCE_ROOT; }; | |||
4B5A1BDA0CD1CCE10005BF74 /* jack_midisine */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = jack_midisine; sourceTree = BUILT_PRODUCTS_DIR; }; | |||
@@ -1187,20 +1161,6 @@ | |||
); | |||
runOnlyForDeploymentPostprocessing = 0; | |||
}; | |||
4B0A29670D5231DC002EFF74 /* Frameworks */ = { | |||
isa = PBXFrameworksBuildPhase; | |||
buildActionMask = 2147483647; | |||
files = ( | |||
); | |||
runOnlyForDeploymentPostprocessing = 0; | |||
}; | |||
4B0A2A5F0D524AB2002EFF74 /* Frameworks */ = { | |||
isa = PBXFrameworksBuildPhase; | |||
buildActionMask = 2147483647; | |||
files = ( | |||
); | |||
runOnlyForDeploymentPostprocessing = 0; | |||
}; | |||
4B35C41F0D4731D1000DE7AE /* Frameworks */ = { | |||
isa = PBXFrameworksBuildPhase; | |||
buildActionMask = 2147483647; | |||
@@ -1392,20 +1352,6 @@ | |||
); | |||
runOnlyForDeploymentPostprocessing = 0; | |||
}; | |||
4B5175290D8FE69300961F37 /* Frameworks */ = { | |||
isa = PBXFrameworksBuildPhase; | |||
buildActionMask = 2147483647; | |||
files = ( | |||
); | |||
runOnlyForDeploymentPostprocessing = 0; | |||
}; | |||
4B57F58F0D72C27900B4E719 /* Frameworks */ = { | |||
isa = PBXFrameworksBuildPhase; | |||
buildActionMask = 2147483647; | |||
files = ( | |||
); | |||
runOnlyForDeploymentPostprocessing = 0; | |||
}; | |||
4B5A1BB50CD1CB9E0005BF74 /* Frameworks */ = { | |||
isa = PBXFrameworksBuildPhase; | |||
buildActionMask = 2147483647; | |||
@@ -1705,11 +1651,7 @@ | |||
4B35C63E0D4731D3000DE7AE /* inprocess.so */, | |||
4B0A28E60D52073D002EFF74 /* jack_thread_wait */, | |||
4B0A292D0D52108E002EFF74 /* jack_thread_wait */, | |||
4B0A296D0D5231DC002EFF74 /* jack_mp_thread_wait */, | |||
4B0A2A650D524AB2002EFF74 /* jack_mp_thread_wait */, | |||
4B57F5950D72C27900B4E719 /* jack_thread_wait1 */, | |||
4BA7FEC30D8E76270017FF73 /* jack_server_control */, | |||
4B51752F0D8FE69300961F37 /* jack_thread_wait1 */, | |||
); | |||
name = Products; | |||
sourceTree = "<group>"; | |||
@@ -1718,8 +1660,6 @@ | |||
isa = PBXGroup; | |||
children = ( | |||
4BA7FEC80D8E76650017FF73 /* control.c */, | |||
4B0A29820D523269002EFF74 /* mp_tw.cpp */, | |||
4B57F5BA0D72C2B000B4E719 /* tw1.c */, | |||
4B0A28EC0D520852002EFF74 /* tw.c */, | |||
4B5A1BDC0CD1CD420005BF74 /* midisine.c */, | |||
4B5A1BBD0CD1CC110005BF74 /* midiseq.c */, | |||
@@ -2082,20 +2022,6 @@ | |||
); | |||
runOnlyForDeploymentPostprocessing = 0; | |||
}; | |||
4B0A29640D5231DC002EFF74 /* Headers */ = { | |||
isa = PBXHeadersBuildPhase; | |||
buildActionMask = 2147483647; | |||
files = ( | |||
); | |||
runOnlyForDeploymentPostprocessing = 0; | |||
}; | |||
4B0A2A5C0D524AB2002EFF74 /* Headers */ = { | |||
isa = PBXHeadersBuildPhase; | |||
buildActionMask = 2147483647; | |||
files = ( | |||
); | |||
runOnlyForDeploymentPostprocessing = 0; | |||
}; | |||
4B35C41C0D4731D1000DE7AE /* Headers */ = { | |||
isa = PBXHeadersBuildPhase; | |||
buildActionMask = 2147483647; | |||
@@ -2378,20 +2304,6 @@ | |||
); | |||
runOnlyForDeploymentPostprocessing = 0; | |||
}; | |||
4B5175260D8FE69300961F37 /* Headers */ = { | |||
isa = PBXHeadersBuildPhase; | |||
buildActionMask = 2147483647; | |||
files = ( | |||
); | |||
runOnlyForDeploymentPostprocessing = 0; | |||
}; | |||
4B57F58C0D72C27900B4E719 /* Headers */ = { | |||
isa = PBXHeadersBuildPhase; | |||
buildActionMask = 2147483647; | |||
files = ( | |||
); | |||
runOnlyForDeploymentPostprocessing = 0; | |||
}; | |||
4B5A1BB20CD1CB9E0005BF74 /* Headers */ = { | |||
isa = PBXHeadersBuildPhase; | |||
buildActionMask = 2147483647; | |||
@@ -2719,44 +2631,6 @@ | |||
productReference = 4B0A292D0D52108E002EFF74 /* jack_thread_wait */; | |||
productType = "com.apple.product-type.tool"; | |||
}; | |||
4B0A29630D5231DC002EFF74 /* jack_mp_thread_wait */ = { | |||
isa = PBXNativeTarget; | |||
buildConfigurationList = 4B0A29690D5231DC002EFF74 /* Build configuration list for PBXNativeTarget "jack_mp_thread_wait" */; | |||
buildPhases = ( | |||
4B0A29640D5231DC002EFF74 /* Headers */, | |||
4B0A29650D5231DC002EFF74 /* Sources */, | |||
4B0A29670D5231DC002EFF74 /* Frameworks */, | |||
4B0A29680D5231DC002EFF74 /* Rez */, | |||
); | |||
buildRules = ( | |||
); | |||
dependencies = ( | |||
); | |||
name = jack_mp_thread_wait; | |||
productInstallPath = /usr/local/bin; | |||
productName = testSem; | |||
productReference = 4B0A296D0D5231DC002EFF74 /* jack_mp_thread_wait */; | |||
productType = "com.apple.product-type.tool"; | |||
}; | |||
4B0A2A5B0D524AB2002EFF74 /* jack_mp_thread_wait 64 bits */ = { | |||
isa = PBXNativeTarget; | |||
buildConfigurationList = 4B0A2A610D524AB2002EFF74 /* Build configuration list for PBXNativeTarget "jack_mp_thread_wait 64 bits" */; | |||
buildPhases = ( | |||
4B0A2A5C0D524AB2002EFF74 /* Headers */, | |||
4B0A2A5D0D524AB2002EFF74 /* Sources */, | |||
4B0A2A5F0D524AB2002EFF74 /* Frameworks */, | |||
4B0A2A600D524AB2002EFF74 /* Rez */, | |||
); | |||
buildRules = ( | |||
); | |||
dependencies = ( | |||
); | |||
name = "jack_mp_thread_wait 64 bits"; | |||
productInstallPath = /usr/local/bin; | |||
productName = testSem; | |||
productReference = 4B0A2A650D524AB2002EFF74 /* jack_mp_thread_wait */; | |||
productType = "com.apple.product-type.tool"; | |||
}; | |||
4B35C41B0D4731D1000DE7AE /* jackdmp framework 64bits */ = { | |||
isa = PBXNativeTarget; | |||
buildConfigurationList = 4B35C4210D4731D1000DE7AE /* Build configuration list for PBXNativeTarget "jackdmp framework 64bits" */; | |||
@@ -3244,44 +3118,6 @@ | |||
productReference = 4B35C63E0D4731D3000DE7AE /* inprocess.so */; | |||
productType = "com.apple.product-type.library.dynamic"; | |||
}; | |||
4B5175250D8FE69300961F37 /* jack_thread_wait1 64 bits */ = { | |||
isa = PBXNativeTarget; | |||
buildConfigurationList = 4B51752B0D8FE69300961F37 /* Build configuration list for PBXNativeTarget "jack_thread_wait1 64 bits" */; | |||
buildPhases = ( | |||
4B5175260D8FE69300961F37 /* Headers */, | |||
4B5175270D8FE69300961F37 /* Sources */, | |||
4B5175290D8FE69300961F37 /* Frameworks */, | |||
4B51752A0D8FE69300961F37 /* Rez */, | |||
); | |||
buildRules = ( | |||
); | |||
dependencies = ( | |||
); | |||
name = "jack_thread_wait1 64 bits"; | |||
productInstallPath = /usr/local/bin; | |||
productName = testSem; | |||
productReference = 4B51752F0D8FE69300961F37 /* jack_thread_wait1 */; | |||
productType = "com.apple.product-type.tool"; | |||
}; | |||
4B57F58B0D72C27900B4E719 /* jack_thread_wait1 */ = { | |||
isa = PBXNativeTarget; | |||
buildConfigurationList = 4B57F5910D72C27900B4E719 /* Build configuration list for PBXNativeTarget "jack_thread_wait1" */; | |||
buildPhases = ( | |||
4B57F58C0D72C27900B4E719 /* Headers */, | |||
4B57F58D0D72C27900B4E719 /* Sources */, | |||
4B57F58F0D72C27900B4E719 /* Frameworks */, | |||
4B57F5900D72C27900B4E719 /* Rez */, | |||
); | |||
buildRules = ( | |||
); | |||
dependencies = ( | |||
); | |||
name = jack_thread_wait1; | |||
productInstallPath = /usr/local/bin; | |||
productName = testSem; | |||
productReference = 4B57F5950D72C27900B4E719 /* jack_thread_wait1 */; | |||
productType = "com.apple.product-type.tool"; | |||
}; | |||
4B5A1BB10CD1CB9E0005BF74 /* jack_midiseq Universal */ = { | |||
isa = PBXNativeTarget; | |||
buildConfigurationList = 4B5A1BB70CD1CB9E0005BF74 /* Build configuration list for PBXNativeTarget "jack_midiseq Universal" */; | |||
@@ -3823,8 +3659,6 @@ | |||
4BA692A60CBE4BC700EAD520 /* jack_load Universal */, | |||
4BA692CA0CBE4C9000EAD520 /* jack_unload Universal */, | |||
4B0A28DC0D52073D002EFF74 /* jack_thread_wait */, | |||
4B57F58B0D72C27900B4E719 /* jack_thread_wait1 */, | |||
4B0A29630D5231DC002EFF74 /* jack_mp_thread_wait */, | |||
4B699D4F097D421600A18468 /* synchroServer Universal */, | |||
4B699D67097D421600A18468 /* synchroClient Universal */, | |||
4B699D7F097D421700A18468 /* synchroServerClient Universal */, | |||
@@ -3852,8 +3686,6 @@ | |||
4B35C5C00D4731D2000DE7AE /* jack_load 64 bits */, | |||
4B35C5CC0D4731D2000DE7AE /* jack_unload 64 bits */, | |||
4B0A29230D52108E002EFF74 /* jack_thread_wait 64 bits */, | |||
4B5175250D8FE69300961F37 /* jack_thread_wait1 64 bits */, | |||
4B0A2A5B0D524AB2002EFF74 /* jack_mp_thread_wait 64 bits */, | |||
4B35C5D80D4731D2000DE7AE /* synchroServer 64 bits */, | |||
4B35C5EC0D4731D2000DE7AE /* synchroClient 64 bits */, | |||
4B35C6000D4731D2000DE7AE /* synchroServerClient 64 bits */, | |||
@@ -3911,20 +3743,6 @@ | |||
); | |||
runOnlyForDeploymentPostprocessing = 0; | |||
}; | |||
4B0A29680D5231DC002EFF74 /* Rez */ = { | |||
isa = PBXRezBuildPhase; | |||
buildActionMask = 2147483647; | |||
files = ( | |||
); | |||
runOnlyForDeploymentPostprocessing = 0; | |||
}; | |||
4B0A2A600D524AB2002EFF74 /* Rez */ = { | |||
isa = PBXRezBuildPhase; | |||
buildActionMask = 2147483647; | |||
files = ( | |||
); | |||
runOnlyForDeploymentPostprocessing = 0; | |||
}; | |||
4B35C4200D4731D1000DE7AE /* Rez */ = { | |||
isa = PBXRezBuildPhase; | |||
buildActionMask = 2147483647; | |||
@@ -4079,20 +3897,6 @@ | |||
); | |||
runOnlyForDeploymentPostprocessing = 0; | |||
}; | |||
4B51752A0D8FE69300961F37 /* Rez */ = { | |||
isa = PBXRezBuildPhase; | |||
buildActionMask = 2147483647; | |||
files = ( | |||
); | |||
runOnlyForDeploymentPostprocessing = 0; | |||
}; | |||
4B57F5900D72C27900B4E719 /* Rez */ = { | |||
isa = PBXRezBuildPhase; | |||
buildActionMask = 2147483647; | |||
files = ( | |||
); | |||
runOnlyForDeploymentPostprocessing = 0; | |||
}; | |||
4B5A1BB60CD1CB9E0005BF74 /* Rez */ = { | |||
isa = PBXRezBuildPhase; | |||
buildActionMask = 2147483647; | |||
@@ -4273,22 +4077,6 @@ | |||
); | |||
runOnlyForDeploymentPostprocessing = 0; | |||
}; | |||
4B0A29650D5231DC002EFF74 /* Sources */ = { | |||
isa = PBXSourcesBuildPhase; | |||
buildActionMask = 2147483647; | |||
files = ( | |||
4B0A29830D523269002EFF74 /* mp_tw.cpp in Sources */, | |||
); | |||
runOnlyForDeploymentPostprocessing = 0; | |||
}; | |||
4B0A2A5D0D524AB2002EFF74 /* Sources */ = { | |||
isa = PBXSourcesBuildPhase; | |||
buildActionMask = 2147483647; | |||
files = ( | |||
4B0A2A5E0D524AB2002EFF74 /* mp_tw.cpp in Sources */, | |||
); | |||
runOnlyForDeploymentPostprocessing = 0; | |||
}; | |||
4B35C41D0D4731D1000DE7AE /* Sources */ = { | |||
isa = PBXSourcesBuildPhase; | |||
buildActionMask = 2147483647; | |||
@@ -4586,22 +4374,6 @@ | |||
); | |||
runOnlyForDeploymentPostprocessing = 0; | |||
}; | |||
4B5175270D8FE69300961F37 /* Sources */ = { | |||
isa = PBXSourcesBuildPhase; | |||
buildActionMask = 2147483647; | |||
files = ( | |||
4B5175280D8FE69300961F37 /* tw1.c in Sources */, | |||
); | |||
runOnlyForDeploymentPostprocessing = 0; | |||
}; | |||
4B57F58D0D72C27900B4E719 /* Sources */ = { | |||
isa = PBXSourcesBuildPhase; | |||
buildActionMask = 2147483647; | |||
files = ( | |||
4B57F5BC0D72C2B000B4E719 /* tw1.c in Sources */, | |||
); | |||
runOnlyForDeploymentPostprocessing = 0; | |||
}; | |||
4B5A1BB30CD1CB9E0005BF74 /* Sources */ = { | |||
isa = PBXSourcesBuildPhase; | |||
buildActionMask = 2147483647; | |||
@@ -4914,16 +4686,6 @@ | |||
target = 4B0A29230D52108E002EFF74 /* jack_thread_wait 64 bits */; | |||
targetProxy = 4B0A292F0D5210C4002EFF74 /* PBXContainerItemProxy */; | |||
}; | |||
4B0A2A6E0D524AF2002EFF74 /* PBXTargetDependency */ = { | |||
isa = PBXTargetDependency; | |||
target = 4B0A29630D5231DC002EFF74 /* jack_mp_thread_wait */; | |||
targetProxy = 4B0A2A6D0D524AF2002EFF74 /* PBXContainerItemProxy */; | |||
}; | |||
4B0A2A700D524B01002EFF74 /* PBXTargetDependency */ = { | |||
isa = PBXTargetDependency; | |||
target = 4B0A2A5B0D524AB2002EFF74 /* jack_mp_thread_wait 64 bits */; | |||
targetProxy = 4B0A2A6F0D524B01002EFF74 /* PBXContainerItemProxy */; | |||
}; | |||
4B35C5530D4731D2000DE7AE /* PBXTargetDependency */ = { | |||
isa = PBXTargetDependency; | |||
target = 4B699D03097D421600A18468 /* jack_external_metro Universal */; | |||
@@ -5177,213 +4939,27 @@ | |||
4BFA99580AAAED90009E916C /* PBXTargetDependency */ = { | |||
isa = PBXTargetDependency; | |||
target = 4B699D4F097D421600A18468 /* synchroServer Universal */; | |||
targetProxy = 4BFA99570AAAED90009E916C /* PBXContainerItemProxy */; | |||
}; | |||
4BFA995A0AAAED90009E916C /* PBXTargetDependency */ = { | |||
isa = PBXTargetDependency; | |||
target = 4B699D67097D421600A18468 /* synchroClient Universal */; | |||
targetProxy = 4BFA99590AAAED90009E916C /* PBXContainerItemProxy */; | |||
}; | |||
4BFA995C0AAAED90009E916C /* PBXTargetDependency */ = { | |||
isa = PBXTargetDependency; | |||
target = 4B699D7F097D421700A18468 /* synchroServerClient Universal */; | |||
targetProxy = 4BFA995B0AAAED90009E916C /* PBXContainerItemProxy */; | |||
}; | |||
4BFA99AC0AAAF41D009E916C /* PBXTargetDependency */ = { | |||
isa = PBXTargetDependency; | |||
target = 4BFA99980AAAF3B0009E916C /* jdelay Universal */; | |||
targetProxy = 4BFA99AB0AAAF41D009E916C /* PBXContainerItemProxy */; | |||
}; | |||
/* End PBXTargetDependency section */ | |||
/* Begin XCBuildConfiguration section */ | |||
4B0A28E30D52073D002EFF74 /* Development */ = { | |||
isa = XCBuildConfiguration; | |||
buildSettings = { | |||
ARCHS = ( | |||
i386, | |||
ppc, | |||
); | |||
COPY_PHASE_STRIP = NO; | |||
GCC_DYNAMIC_NO_PIC = NO; | |||
GCC_ENABLE_FIX_AND_CONTINUE = YES; | |||
GCC_GENERATE_DEBUGGING_SYMBOLS = YES; | |||
GCC_OPTIMIZATION_LEVEL = 0; | |||
HEADER_SEARCH_PATHS = ../common; | |||
OTHER_CFLAGS = ""; | |||
OTHER_LDFLAGS = ( | |||
"-framework", | |||
Jackmp, | |||
); | |||
OTHER_REZFLAGS = ""; | |||
PRODUCT_NAME = jack_thread_wait; | |||
REZ_EXECUTABLE = YES; | |||
SDKROOT = ""; | |||
SECTORDER_FLAGS = ""; | |||
WARNING_CFLAGS = ( | |||
"-Wmost", | |||
"-Wno-four-char-constants", | |||
"-Wno-unknown-pragmas", | |||
); | |||
ZERO_LINK = YES; | |||
}; | |||
name = Development; | |||
}; | |||
4B0A28E40D52073D002EFF74 /* Deployment */ = { | |||
isa = XCBuildConfiguration; | |||
buildSettings = { | |||
ARCHS = ( | |||
i386, | |||
ppc, | |||
); | |||
COPY_PHASE_STRIP = YES; | |||
GCC_ENABLE_FIX_AND_CONTINUE = NO; | |||
GCC_OPTIMIZATION_LEVEL = 3; | |||
HEADER_SEARCH_PATHS = ../common; | |||
MACOSX_DEPLOYMENT_TARGET = 10.4; | |||
OTHER_CFLAGS = ""; | |||
OTHER_LDFLAGS = ( | |||
"-framework", | |||
Jackmp, | |||
); | |||
OTHER_REZFLAGS = ""; | |||
PRODUCT_NAME = jack_thread_wait; | |||
REZ_EXECUTABLE = YES; | |||
SDKROOT = ""; | |||
SECTORDER_FLAGS = ""; | |||
WARNING_CFLAGS = ( | |||
"-Wmost", | |||
"-Wno-four-char-constants", | |||
"-Wno-unknown-pragmas", | |||
); | |||
ZERO_LINK = NO; | |||
}; | |||
name = Deployment; | |||
}; | |||
4B0A28E50D52073D002EFF74 /* Default */ = { | |||
isa = XCBuildConfiguration; | |||
buildSettings = { | |||
ARCHS = ( | |||
i386, | |||
ppc, | |||
); | |||
GCC_OPTIMIZATION_LEVEL = 3; | |||
HEADER_SEARCH_PATHS = ../common; | |||
OTHER_CFLAGS = ""; | |||
OTHER_LDFLAGS = ( | |||
"-framework", | |||
Jackmp, | |||
); | |||
OTHER_REZFLAGS = ""; | |||
PRODUCT_NAME = jack_thread_wait; | |||
REZ_EXECUTABLE = YES; | |||
SDKROOT = ""; | |||
SECTORDER_FLAGS = ""; | |||
WARNING_CFLAGS = ( | |||
"-Wmost", | |||
"-Wno-four-char-constants", | |||
"-Wno-unknown-pragmas", | |||
); | |||
}; | |||
name = Default; | |||
}; | |||
4B0A292A0D52108E002EFF74 /* Development */ = { | |||
isa = XCBuildConfiguration; | |||
buildSettings = { | |||
ARCHS = ( | |||
i386, | |||
ppc, | |||
ppc64, | |||
x86_64, | |||
); | |||
COPY_PHASE_STRIP = NO; | |||
GCC_DYNAMIC_NO_PIC = NO; | |||
GCC_ENABLE_FIX_AND_CONTINUE = YES; | |||
GCC_GENERATE_DEBUGGING_SYMBOLS = YES; | |||
GCC_OPTIMIZATION_LEVEL = 0; | |||
HEADER_SEARCH_PATHS = ../common; | |||
OTHER_CFLAGS = ""; | |||
OTHER_LDFLAGS = ( | |||
"-framework", | |||
Jackmp, | |||
); | |||
OTHER_REZFLAGS = ""; | |||
PRODUCT_NAME = jack_thread_wait; | |||
REZ_EXECUTABLE = YES; | |||
SDKROOT = ""; | |||
SECTORDER_FLAGS = ""; | |||
WARNING_CFLAGS = ( | |||
"-Wmost", | |||
"-Wno-four-char-constants", | |||
"-Wno-unknown-pragmas", | |||
); | |||
ZERO_LINK = YES; | |||
}; | |||
name = Development; | |||
}; | |||
4B0A292B0D52108E002EFF74 /* Deployment */ = { | |||
isa = XCBuildConfiguration; | |||
buildSettings = { | |||
ARCHS = ( | |||
i386, | |||
ppc, | |||
ppc64, | |||
x86_64, | |||
); | |||
COPY_PHASE_STRIP = YES; | |||
GCC_ENABLE_FIX_AND_CONTINUE = NO; | |||
GCC_OPTIMIZATION_LEVEL = 3; | |||
HEADER_SEARCH_PATHS = ../common; | |||
MACOSX_DEPLOYMENT_TARGET = 10.4; | |||
OTHER_CFLAGS = ""; | |||
OTHER_LDFLAGS = ( | |||
"-framework", | |||
Jackmp, | |||
); | |||
OTHER_REZFLAGS = ""; | |||
PRODUCT_NAME = jack_thread_wait; | |||
REZ_EXECUTABLE = YES; | |||
SDKROOT = ""; | |||
SECTORDER_FLAGS = ""; | |||
WARNING_CFLAGS = ( | |||
"-Wmost", | |||
"-Wno-four-char-constants", | |||
"-Wno-unknown-pragmas", | |||
); | |||
ZERO_LINK = NO; | |||
}; | |||
name = Deployment; | |||
targetProxy = 4BFA99570AAAED90009E916C /* PBXContainerItemProxy */; | |||
}; | |||
4B0A292C0D52108E002EFF74 /* Default */ = { | |||
isa = XCBuildConfiguration; | |||
buildSettings = { | |||
ARCHS = ( | |||
i386, | |||
ppc, | |||
ppc64, | |||
x86_64, | |||
); | |||
GCC_OPTIMIZATION_LEVEL = 3; | |||
HEADER_SEARCH_PATHS = ../common; | |||
OTHER_CFLAGS = ""; | |||
OTHER_LDFLAGS = ( | |||
"-framework", | |||
Jackmp, | |||
); | |||
OTHER_REZFLAGS = ""; | |||
PRODUCT_NAME = jack_thread_wait; | |||
REZ_EXECUTABLE = YES; | |||
SDKROOT = ""; | |||
SECTORDER_FLAGS = ""; | |||
WARNING_CFLAGS = ( | |||
"-Wmost", | |||
"-Wno-four-char-constants", | |||
"-Wno-unknown-pragmas", | |||
); | |||
}; | |||
name = Default; | |||
4BFA995A0AAAED90009E916C /* PBXTargetDependency */ = { | |||
isa = PBXTargetDependency; | |||
target = 4B699D67097D421600A18468 /* synchroClient Universal */; | |||
targetProxy = 4BFA99590AAAED90009E916C /* PBXContainerItemProxy */; | |||
}; | |||
4BFA995C0AAAED90009E916C /* PBXTargetDependency */ = { | |||
isa = PBXTargetDependency; | |||
target = 4B699D7F097D421700A18468 /* synchroServerClient Universal */; | |||
targetProxy = 4BFA995B0AAAED90009E916C /* PBXContainerItemProxy */; | |||
}; | |||
4BFA99AC0AAAF41D009E916C /* PBXTargetDependency */ = { | |||
isa = PBXTargetDependency; | |||
target = 4BFA99980AAAF3B0009E916C /* jdelay Universal */; | |||
targetProxy = 4BFA99AB0AAAF41D009E916C /* PBXContainerItemProxy */; | |||
}; | |||
4B0A296A0D5231DC002EFF74 /* Development */ = { | |||
/* End PBXTargetDependency section */ | |||
/* Begin XCBuildConfiguration section */ | |||
4B0A28E30D52073D002EFF74 /* Development */ = { | |||
isa = XCBuildConfiguration; | |||
buildSettings = { | |||
ARCHS = ( | |||
@@ -5402,7 +4978,7 @@ | |||
Jackmp, | |||
); | |||
OTHER_REZFLAGS = ""; | |||
PRODUCT_NAME = jack_mp_thread_wait; | |||
PRODUCT_NAME = jack_thread_wait; | |||
REZ_EXECUTABLE = YES; | |||
SDKROOT = ""; | |||
SECTORDER_FLAGS = ""; | |||
@@ -5415,7 +4991,7 @@ | |||
}; | |||
name = Development; | |||
}; | |||
4B0A296B0D5231DC002EFF74 /* Deployment */ = { | |||
4B0A28E40D52073D002EFF74 /* Deployment */ = { | |||
isa = XCBuildConfiguration; | |||
buildSettings = { | |||
ARCHS = ( | |||
@@ -5433,7 +5009,7 @@ | |||
Jackmp, | |||
); | |||
OTHER_REZFLAGS = ""; | |||
PRODUCT_NAME = jack_mp_thread_wait; | |||
PRODUCT_NAME = jack_thread_wait; | |||
REZ_EXECUTABLE = YES; | |||
SDKROOT = ""; | |||
SECTORDER_FLAGS = ""; | |||
@@ -5446,7 +5022,7 @@ | |||
}; | |||
name = Deployment; | |||
}; | |||
4B0A296C0D5231DC002EFF74 /* Default */ = { | |||
4B0A28E50D52073D002EFF74 /* Default */ = { | |||
isa = XCBuildConfiguration; | |||
buildSettings = { | |||
ARCHS = ( | |||
@@ -5461,7 +5037,7 @@ | |||
Jackmp, | |||
); | |||
OTHER_REZFLAGS = ""; | |||
PRODUCT_NAME = jack_mp_thread_wait; | |||
PRODUCT_NAME = jack_thread_wait; | |||
REZ_EXECUTABLE = YES; | |||
SDKROOT = ""; | |||
SECTORDER_FLAGS = ""; | |||
@@ -5473,7 +5049,7 @@ | |||
}; | |||
name = Default; | |||
}; | |||
4B0A2A620D524AB2002EFF74 /* Development */ = { | |||
4B0A292A0D52108E002EFF74 /* Development */ = { | |||
isa = XCBuildConfiguration; | |||
buildSettings = { | |||
ARCHS = ( | |||
@@ -5494,7 +5070,7 @@ | |||
Jackmp, | |||
); | |||
OTHER_REZFLAGS = ""; | |||
PRODUCT_NAME = jack_mp_thread_wait; | |||
PRODUCT_NAME = jack_thread_wait; | |||
REZ_EXECUTABLE = YES; | |||
SDKROOT = ""; | |||
SECTORDER_FLAGS = ""; | |||
@@ -5507,7 +5083,7 @@ | |||
}; | |||
name = Development; | |||
}; | |||
4B0A2A630D524AB2002EFF74 /* Deployment */ = { | |||
4B0A292B0D52108E002EFF74 /* Deployment */ = { | |||
isa = XCBuildConfiguration; | |||
buildSettings = { | |||
ARCHS = ( | |||
@@ -5527,7 +5103,7 @@ | |||
Jackmp, | |||
); | |||
OTHER_REZFLAGS = ""; | |||
PRODUCT_NAME = jack_mp_thread_wait; | |||
PRODUCT_NAME = jack_thread_wait; | |||
REZ_EXECUTABLE = YES; | |||
SDKROOT = ""; | |||
SECTORDER_FLAGS = ""; | |||
@@ -5540,7 +5116,7 @@ | |||
}; | |||
name = Deployment; | |||
}; | |||
4B0A2A640D524AB2002EFF74 /* Default */ = { | |||
4B0A292C0D52108E002EFF74 /* Default */ = { | |||
isa = XCBuildConfiguration; | |||
buildSettings = { | |||
ARCHS = ( | |||
@@ -5557,7 +5133,7 @@ | |||
Jackmp, | |||
); | |||
OTHER_REZFLAGS = ""; | |||
PRODUCT_NAME = jack_mp_thread_wait; | |||
PRODUCT_NAME = jack_thread_wait; | |||
REZ_EXECUTABLE = YES; | |||
SDKROOT = ""; | |||
SECTORDER_FLAGS = ""; | |||
@@ -8647,188 +8223,6 @@ | |||
}; | |||
name = Default; | |||
}; | |||
4B51752C0D8FE69300961F37 /* Development */ = { | |||
isa = XCBuildConfiguration; | |||
buildSettings = { | |||
ARCHS = ( | |||
i386, | |||
ppc, | |||
); | |||
COPY_PHASE_STRIP = NO; | |||
GCC_DYNAMIC_NO_PIC = NO; | |||
GCC_ENABLE_FIX_AND_CONTINUE = YES; | |||
GCC_GENERATE_DEBUGGING_SYMBOLS = YES; | |||
GCC_OPTIMIZATION_LEVEL = 0; | |||
HEADER_SEARCH_PATHS = ../common; | |||
OTHER_CFLAGS = ""; | |||
OTHER_LDFLAGS = ( | |||
"-framework", | |||
Jackmp, | |||
); | |||
OTHER_REZFLAGS = ""; | |||
PRODUCT_NAME = jack_thread_wait; | |||
REZ_EXECUTABLE = YES; | |||
SDKROOT = ""; | |||
SECTORDER_FLAGS = ""; | |||
WARNING_CFLAGS = ( | |||
"-Wmost", | |||
"-Wno-four-char-constants", | |||
"-Wno-unknown-pragmas", | |||
); | |||
ZERO_LINK = YES; | |||
}; | |||
name = Development; | |||
}; | |||
4B51752D0D8FE69300961F37 /* Deployment */ = { | |||
isa = XCBuildConfiguration; | |||
buildSettings = { | |||
ARCHS = ( | |||
i386, | |||
ppc, | |||
ppc64, | |||
x86_64, | |||
); | |||
COPY_PHASE_STRIP = YES; | |||
GCC_ENABLE_FIX_AND_CONTINUE = NO; | |||
GCC_OPTIMIZATION_LEVEL = 3; | |||
HEADER_SEARCH_PATHS = ../common; | |||
MACOSX_DEPLOYMENT_TARGET = 10.4; | |||
OTHER_CFLAGS = ""; | |||
OTHER_LDFLAGS = ( | |||
"-framework", | |||
Jackmp, | |||
); | |||
OTHER_REZFLAGS = ""; | |||
PRODUCT_NAME = jack_thread_wait1; | |||
REZ_EXECUTABLE = YES; | |||
SDKROOT = ""; | |||
SECTORDER_FLAGS = ""; | |||
WARNING_CFLAGS = ( | |||
"-Wmost", | |||
"-Wno-four-char-constants", | |||
"-Wno-unknown-pragmas", | |||
); | |||
ZERO_LINK = NO; | |||
}; | |||
name = Deployment; | |||
}; | |||
4B51752E0D8FE69300961F37 /* Default */ = { | |||
isa = XCBuildConfiguration; | |||
buildSettings = { | |||
ARCHS = ( | |||
i386, | |||
ppc, | |||
); | |||
GCC_OPTIMIZATION_LEVEL = 3; | |||
HEADER_SEARCH_PATHS = ../common; | |||
OTHER_CFLAGS = ""; | |||
OTHER_LDFLAGS = ( | |||
"-framework", | |||
Jackmp, | |||
); | |||
OTHER_REZFLAGS = ""; | |||
PRODUCT_NAME = jack_thread_wait; | |||
REZ_EXECUTABLE = YES; | |||
SDKROOT = ""; | |||
SECTORDER_FLAGS = ""; | |||
WARNING_CFLAGS = ( | |||
"-Wmost", | |||
"-Wno-four-char-constants", | |||
"-Wno-unknown-pragmas", | |||
); | |||
}; | |||
name = Default; | |||
}; | |||
4B57F5920D72C27900B4E719 /* Development */ = { | |||
isa = XCBuildConfiguration; | |||
buildSettings = { | |||
ARCHS = ( | |||
i386, | |||
ppc, | |||
); | |||
COPY_PHASE_STRIP = NO; | |||
GCC_DYNAMIC_NO_PIC = NO; | |||
GCC_ENABLE_FIX_AND_CONTINUE = YES; | |||
GCC_GENERATE_DEBUGGING_SYMBOLS = YES; | |||
GCC_OPTIMIZATION_LEVEL = 0; | |||
HEADER_SEARCH_PATHS = ../common; | |||
OTHER_CFLAGS = ""; | |||
OTHER_LDFLAGS = ( | |||
"-framework", | |||
Jackmp, | |||
); | |||
OTHER_REZFLAGS = ""; | |||
PRODUCT_NAME = jack_thread_wait; | |||
REZ_EXECUTABLE = YES; | |||
SDKROOT = ""; | |||
SECTORDER_FLAGS = ""; | |||
WARNING_CFLAGS = ( | |||
"-Wmost", | |||
"-Wno-four-char-constants", | |||
"-Wno-unknown-pragmas", | |||
); | |||
ZERO_LINK = YES; | |||
}; | |||
name = Development; | |||
}; | |||
4B57F5930D72C27900B4E719 /* Deployment */ = { | |||
isa = XCBuildConfiguration; | |||
buildSettings = { | |||
ARCHS = ( | |||
i386, | |||
ppc, | |||
); | |||
COPY_PHASE_STRIP = YES; | |||
GCC_ENABLE_FIX_AND_CONTINUE = NO; | |||
GCC_OPTIMIZATION_LEVEL = 3; | |||
HEADER_SEARCH_PATHS = ../common; | |||
MACOSX_DEPLOYMENT_TARGET = 10.4; | |||
OTHER_CFLAGS = ""; | |||
OTHER_LDFLAGS = ( | |||
"-framework", | |||
Jackmp, | |||
); | |||
OTHER_REZFLAGS = ""; | |||
PRODUCT_NAME = jack_thread_wait1; | |||
REZ_EXECUTABLE = YES; | |||
SDKROOT = ""; | |||
SECTORDER_FLAGS = ""; | |||
WARNING_CFLAGS = ( | |||
"-Wmost", | |||
"-Wno-four-char-constants", | |||
"-Wno-unknown-pragmas", | |||
); | |||
ZERO_LINK = NO; | |||
}; | |||
name = Deployment; | |||
}; | |||
4B57F5940D72C27900B4E719 /* Default */ = { | |||
isa = XCBuildConfiguration; | |||
buildSettings = { | |||
ARCHS = ( | |||
i386, | |||
ppc, | |||
); | |||
GCC_OPTIMIZATION_LEVEL = 3; | |||
HEADER_SEARCH_PATHS = ../common; | |||
OTHER_CFLAGS = ""; | |||
OTHER_LDFLAGS = ( | |||
"-framework", | |||
Jackmp, | |||
); | |||
OTHER_REZFLAGS = ""; | |||
PRODUCT_NAME = jack_thread_wait; | |||
REZ_EXECUTABLE = YES; | |||
SDKROOT = ""; | |||
SECTORDER_FLAGS = ""; | |||
WARNING_CFLAGS = ( | |||
"-Wmost", | |||
"-Wno-four-char-constants", | |||
"-Wno-unknown-pragmas", | |||
); | |||
}; | |||
name = Default; | |||
}; | |||
4B5A1BB80CD1CB9E0005BF74 /* Development */ = { | |||
isa = XCBuildConfiguration; | |||
buildSettings = { | |||
@@ -11928,26 +11322,6 @@ | |||
defaultConfigurationIsVisible = 0; | |||
defaultConfigurationName = Default; | |||
}; | |||
4B0A29690D5231DC002EFF74 /* Build configuration list for PBXNativeTarget "jack_mp_thread_wait" */ = { | |||
isa = XCConfigurationList; | |||
buildConfigurations = ( | |||
4B0A296A0D5231DC002EFF74 /* Development */, | |||
4B0A296B0D5231DC002EFF74 /* Deployment */, | |||
4B0A296C0D5231DC002EFF74 /* Default */, | |||
); | |||
defaultConfigurationIsVisible = 0; | |||
defaultConfigurationName = Default; | |||
}; | |||
4B0A2A610D524AB2002EFF74 /* Build configuration list for PBXNativeTarget "jack_mp_thread_wait 64 bits" */ = { | |||
isa = XCConfigurationList; | |||
buildConfigurations = ( | |||
4B0A2A620D524AB2002EFF74 /* Development */, | |||
4B0A2A630D524AB2002EFF74 /* Deployment */, | |||
4B0A2A640D524AB2002EFF74 /* Default */, | |||
); | |||
defaultConfigurationIsVisible = 0; | |||
defaultConfigurationName = Default; | |||
}; | |||
4B35C4210D4731D1000DE7AE /* Build configuration list for PBXNativeTarget "jackdmp framework 64bits" */ = { | |||
isa = XCConfigurationList; | |||
buildConfigurations = ( | |||
@@ -12218,26 +11592,6 @@ | |||
defaultConfigurationIsVisible = 0; | |||
defaultConfigurationName = Default; | |||
}; | |||
4B51752B0D8FE69300961F37 /* Build configuration list for PBXNativeTarget "jack_thread_wait1 64 bits" */ = { | |||
isa = XCConfigurationList; | |||
buildConfigurations = ( | |||
4B51752C0D8FE69300961F37 /* Development */, | |||
4B51752D0D8FE69300961F37 /* Deployment */, | |||
4B51752E0D8FE69300961F37 /* Default */, | |||
); | |||
defaultConfigurationIsVisible = 0; | |||
defaultConfigurationName = Default; | |||
}; | |||
4B57F5910D72C27900B4E719 /* Build configuration list for PBXNativeTarget "jack_thread_wait1" */ = { | |||
isa = XCConfigurationList; | |||
buildConfigurations = ( | |||
4B57F5920D72C27900B4E719 /* Development */, | |||
4B57F5930D72C27900B4E719 /* Deployment */, | |||
4B57F5940D72C27900B4E719 /* Default */, | |||
); | |||
defaultConfigurationIsVisible = 0; | |||
defaultConfigurationName = Default; | |||
}; | |||
4B5A1BB70CD1CB9E0005BF74 /* Build configuration list for PBXNativeTarget "jack_midiseq Universal" */ = { | |||
isa = XCConfigurationList; | |||
buildConfigurations = ( | |||