diff --git a/ChangeLog b/ChangeLog index da448618..f351d853 100644 --- a/ChangeLog +++ b/ChangeLog @@ -22,6 +22,7 @@ Nedko Arnaudov 2008-03-12 Stephane Letz * Marc-Olivier Barre library related scons patch. + * Nedko Arnaudov FULL_MIMIC patch. 2008-03-11 Stephane Letz diff --git a/SConstruct b/SConstruct index 4bba5521..9ade7b30 100644 --- a/SConstruct +++ b/SConstruct @@ -59,6 +59,7 @@ opts.AddOptions( BoolOption('BUILD_EXAMPLES', 'Build the example clients in their directory', True), BoolOption('INSTALL_EXAMPLES', 'Install the example clients in the BINDIR directory', True), BoolOption('BUILD_DOXYGEN_DOCS', 'Build doxygen documentation', False), + BoolOption('FULL_MIMIC', 'Mimic jack-1.0 installation layout as much as possible', False), ) # @@ -167,15 +168,31 @@ else: env.AppendUnique(CCFLAGS = ['-fPIC', '-DSOCKET_RPC_FIFO_SEMA', '-D__SMP__']) env.AppendUnique(CFLAGS = ['-fPIC', '-DUSE_POSIX_SHM']) +# used for alsa midi code, probably this define should be removed +env.AppendUnique(CFLAGS = ['-DJACKMP']) +env.AppendUnique(CPPFLAGS = ['-DJACKMP']) + env.Alias('install', env['LIBDIR']) env.Alias('install', env['INCLUDEDIR']) env.Alias('install', env['BINDIR']) +if env['FULL_MIMIC']: + env['SERVER'] = 'jackd' + env['CLIENTLIB'] = 'jack' + env['SERVERLIB'] = 'jackserver' + env['WRAPPERLIB'] = 'jackwrapper' + env['ADDON_DIR'] = env.subst(env['LIBDIR']) + "/jack" +else: + env['SERVER'] = 'jackdmp' + env['CLIENTLIB'] = 'jackmp' + env['SERVERLIB'] = 'jackservermp' + env['WRAPPERLIB'] = 'jackwrapper' + env['ADDON_DIR'] = env.subst(env['LIBDIR']) + "/jackmp" + # for config.h.in # TODO: Is that necessary ? -env['ADDON_DIR']='%s' % env['PREFIX'] env['LIB_DIR']='lib' -env['JACK_LOCATION']='%s' % env['BINDIR'] +env['JACK_LOCATION']=env.subst(env['BINDIR']) # To have the top_srcdir as the doxygen-script is used from auto* # TODO: Understand the previous comment diff --git a/common/JackAPIWrapper.cpp b/common/JackAPIWrapper.cpp index 6c228fc5..fe7b32ba 100644 --- a/common/JackAPIWrapper.cpp +++ b/common/JackAPIWrapper.cpp @@ -20,6 +20,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. #include "types.h" #include "jack.h" #include "JackExports.h" + +// TODO +//#include "varargs.h" +//#include "JackTools.h" +//#include "JackConstants.h" +//#include "JackServerLaunch.h" + #include #include #include @@ -206,6 +213,9 @@ extern "C" } #endif +// TODO +//using namespace Jack; + #define JACK_LIB "libjack.so.0.0" #define JACKMP_LIB "libjackmp.so" @@ -991,35 +1001,64 @@ EXPORT jack_status_t jack_internal_client_unload(jack_client_t* ext_client, jack } -typedef jack_client_t * (*jack_client_open_aux_fun_def)(const char *client_name, jack_options_t options, jack_status_t *status, va_list ap); +typedef jack_client_t * (*jack_client_open_aux_fun_def)(const char *ext_client_name, jack_options_t options, jack_status_t *status, va_list ap); static jack_client_open_aux_fun_def jack_client_open_aux_fun = 0; -EXPORT jack_client_t * jack_client_open(const char *client_name, jack_options_t options, jack_status_t *status, ...) +EXPORT jack_client_t * jack_client_open(const char *ext_client_name, jack_options_t options, jack_status_t *status, ...) { - // TODO : in "autostart mode", has to load jackdrc file and figure out which server has to be started... jack_log("jack_client_open"); - /* - va_list ap; - va_start (ap, status); - - if (try_start_server(&va, options, status)) { - jack_error("jack server is not running or cannot be started"); - JackLibGlobals::Destroy(); // jack library destruction - return 0; - } + // Library check... + if (open_library()) { + va_list ap; + va_start(ap, status); + jack_client_t* res = (*jack_client_open_aux_fun)(ext_client_name, options, status, ap); + va_end(ap); + return res; + } else { - va_end (ap); - */ + /* + jack_varargs_t va; // variable arguments + jack_status_t my_status; + char client_name[JACK_CLIENT_NAME_SIZE]; + + if (ext_client_name == NULL) { + jack_log("jack_client_open called with a NULL client_name"); + return NULL; + } + + JackTools::RewriteName(ext_client_name, client_name); + + if (status == NULL) // no status from caller? + status = &my_status; // use local status word + *status = (jack_status_t)0; + + // validate parameters + if ((options & ~JackOpenOptions)) { + int my_status1 = *status | (JackFailure | JackInvalidOption); + *status = (jack_status_t)my_status1; + return NULL; + } + + // parse variable arguments + va_list ap; + va_start(ap, status); + jack_varargs_parse(options, ap, &va); + va_end(ap); - // Library check... - if (!open_library()) - return 0; - - va_list ap; - va_start(ap, status); - jack_client_t* res = (*jack_client_open_aux_fun)(client_name, options, status, ap); - va_end(ap); - return res; + if (start_server(va.server_name, options)) { + return NULL; + } else if (open_library()) { + va_list ap; + va_start(ap, status); + jack_client_t* res = (*jack_client_open_aux_fun)(ext_client_name, options, status, ap); + va_end(ap); + return res; + } else { + return NULL; + } + */ + return NULL; + } } typedef jack_client_t * (*jack_client_new_fun_def)(const char *client_name); @@ -1095,7 +1134,7 @@ static bool check_client(void* library) // Try opening a client... if ((client = (*jack_client_new_fun)("dummy"))) { // server is running.... - jack_log("check_client 1 %x", jack_client_close_fun); + jack_log("check_client 1 %x", jack_client_close_fun); (*jack_client_close_fun)(client); jack_log("check_client 2"); return true; diff --git a/common/JackDriverLoader.cpp b/common/JackDriverLoader.cpp index 9b2917fc..b01874ba 100644 --- a/common/JackDriverLoader.cpp +++ b/common/JackDriverLoader.cpp @@ -256,26 +256,21 @@ jack_drivers_get_descriptor (JSList * drivers, const char * sofile) #endif int err; - /* char* driver_dir; - if ((driver_dir = getenv("JACK_DRIVER_DIR")) == 0) { - driver_dir = ADDON_DIR; - } - */ + if ((driver_dir = getenv("JACK_DRIVER_DIR")) == 0) { + // for WIN32 ADDON_DIR is defined in JackConstants.h as relative path + // for posix systems, it is absolute path of default driver dir #ifdef WIN32 - char* driver_dir = ADDON_DIR; - if (strcmp(ADDON_DIR, "") == 0) { char temp_driver_dir1[512]; char temp_driver_dir2[512]; GetCurrentDirectory(512, temp_driver_dir1); sprintf(temp_driver_dir2, "%s/%s", temp_driver_dir1, ADDON_DIR); driver_dir = temp_driver_dir2; - } #else - char driver_dir[512]; - snprintf(driver_dir, sizeof(driver_dir) - 1, "%s/%s/jackmp", ADDON_DIR, LIB_DIR); + driver_dir = ADDON_DIR; #endif + } filename = (char *)malloc(strlen (driver_dir) + 1 + strlen(sofile) + 1); sprintf (filename, "%s/%s", driver_dir, sofile); @@ -346,7 +341,8 @@ jack_drivers_get_descriptor (JSList * drivers, const char * sofile) EXPORT JSList * jack_drivers_load (JSList * drivers) { - char driver_dir[512]; + char * driver_dir; + char driver_dir_storage[512]; char dll_filename[512]; WIN32_FIND_DATA filedata; HANDLE file; @@ -354,9 +350,16 @@ jack_drivers_load (JSList * drivers) { JSList * driver_list = NULL; jack_driver_desc_t * desc; - GetCurrentDirectory(512, driver_dir); + if ((driver_dir = getenv("JACK_DRIVER_DIR")) == 0) { + // for WIN32 ADDON_DIR is defined in JackConstants.h as relative path + GetCurrentDirectory(512, driver_dir_storage); + strcat(driver_dir_storage, "/"); + strcat(driver_dir_storage, ADDON_DIR); + driver_dir = driver_dir_storage; + } + + sprintf(dll_filename, "%s/*.dll", driver_dir); - sprintf(dll_filename, "%s/%s", ADDON_DIR, "*.dll"); file = (HANDLE )FindFirstFile(dll_filename, &filedata); if (file == INVALID_HANDLE_VALUE) { @@ -400,14 +403,10 @@ jack_drivers_load (JSList * drivers) { JSList * driver_list = NULL; jack_driver_desc_t * desc; - /* char* driver_dir; if ((driver_dir = getenv("JACK_DRIVER_DIR")) == 0) { - driver_dir = ADDON_DIR; + driver_dir = ADDON_DIR; } - */ - char driver_dir[512]; - snprintf(driver_dir, sizeof(driver_dir) - 1, "%s/%s/jackmp", ADDON_DIR, LIB_DIR); /* search through the driver_dir and add get descriptors from the .so files in it */ diff --git a/common/JackError.c b/common/JackError.c index ec14b6ff..acd0fda4 100644 --- a/common/JackError.c +++ b/common/JackError.c @@ -79,7 +79,7 @@ EXPORT void jack_log(const char *fmt,...) static void default_jack_error_callback(const char *desc) { fprintf(stderr, "%s\n", desc); - fflush(stdout); + fflush(stderr); } static void default_jack_info_callback (const char *desc) diff --git a/common/JackLibAPI.cpp b/common/JackLibAPI.cpp index a3307748..15f7354c 100644 --- a/common/JackLibAPI.cpp +++ b/common/JackLibAPI.cpp @@ -61,6 +61,12 @@ EXPORT jack_client_t* jack_client_open_aux(const char* ext_client_name, jack_opt JackClient* client; char client_name[JACK_CLIENT_NAME_SIZE]; + if (ext_client_name == NULL) { + jack_error("jack_client_open called with a NULL client_name"); + return NULL; + } + + jack_log("jack_client_open %s", ext_client_name); JackTools::RewriteName(ext_client_name, client_name); if (status == NULL) /* no status from caller? */ @@ -78,13 +84,7 @@ EXPORT jack_client_t* jack_client_open_aux(const char* ext_client_name, jack_opt if (ap) jack_varargs_parse(options, ap, &va); - jack_log("jack_client_open %s", client_name); - if (client_name == NULL) { - jack_error("jack_client_open called with a NULL client_name"); - return NULL; - } - - JackLibGlobals::Init(); // jack library initialisation + JackLibGlobals::Init(); // jack library initialisation #ifndef WIN32 if (try_start_server(&va, options, status)) { diff --git a/common/JackServerAPI.cpp b/common/JackServerAPI.cpp index 30485786..31920e60 100644 --- a/common/JackServerAPI.cpp +++ b/common/JackServerAPI.cpp @@ -62,8 +62,14 @@ EXPORT jack_client_t* jack_client_open_aux(const char* ext_client_name, jack_opt jack_status_t my_status; JackClient* client; char client_name[JACK_CLIENT_NAME_SIZE]; - - JackTools::RewriteName(ext_client_name, client_name); + + if (ext_client_name == NULL) { + jack_error("jack_client_open called with a NULL client_name"); + return NULL; + } + + jack_log("jack_client_open %s", ext_client_name); + JackTools::RewriteName(ext_client_name, client_name); if (status == NULL) /* no status from caller? */ status = &my_status; /* use local status word */ @@ -79,13 +85,7 @@ EXPORT jack_client_t* jack_client_open_aux(const char* ext_client_name, jack_opt /* parse variable arguments */ if (ap) jack_varargs_parse(options, ap, &va); - - jack_log("jack_client_open %s", client_name); - if (client_name == NULL) { - jack_error("jack_client_open called with a NULL client_name"); - return NULL; - } - + if (!JackServerGlobals::Init()) { // jack server initialisation int my_status1 = (JackFailure | JackServerError); *status = (jack_status_t)my_status1; diff --git a/common/JackServerLaunch.cpp b/common/JackServerLaunch.cpp index 8256fba7..4fed286e 100644 --- a/common/JackServerLaunch.cpp +++ b/common/JackServerLaunch.cpp @@ -114,7 +114,7 @@ static void start_server_aux(const char* server_name) fprintf(stderr, "exec of JACK server (command = \"%s\") failed: %s\n", command, strerror(errno)); } -static int start_server(const char* server_name, jack_options_t options) +int start_server(const char* server_name, jack_options_t options) { if ((options & JackNoStartServer) || getenv("JACK_NO_START_SERVER")) { return 1; diff --git a/common/JackServerLaunch.h b/common/JackServerLaunch.h index 682971ab..499a45b6 100644 --- a/common/JackServerLaunch.h +++ b/common/JackServerLaunch.h @@ -23,9 +23,9 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #include "varargs.h" #include "types.h" -//#include "jack/types.h" int server_connect(char* name); int try_start_server(jack_varargs_t* va, jack_options_t options, jack_status_t* status); +int start_server(const char* server_name, jack_options_t options); #endif diff --git a/common/SConscript b/common/SConscript index fa09725b..da56466f 100644 --- a/common/SConscript +++ b/common/SConscript @@ -41,11 +41,6 @@ env.AppendUnique(CPPPATH=['#/linux','#/macosx']) # A symlinking command for our libraries' names symlinkcmd = 'ln -nsf $SOURCE.name $TARGET' -# Library names -clientlib_name = 'jackmp' -serverlib_name = 'jackservermp' -wrapperlib_name = 'jackwrapper' - # # Source files section # @@ -130,10 +125,11 @@ srcfiles_common_clientlib = [ 'JackTools.cpp' ] -srcfiles_common_wrapperlib = [ - 'JackAPIWrapper.cpp', - 'ringbuffer.c' - ] +if not env['FULL_MIMIC']: + srcfiles_common_wrapperlib = [ + 'JackAPIWrapper.cpp', + 'ringbuffer.c' + ] jack_headers = [ 'intclient.h', @@ -153,14 +149,19 @@ jack_headers = [ # Libraries clientlib = env.SharedLibrary(env['CLIENTLIB'], srcfiles_common_clientlib) serverlib = env.SharedLibrary(env['SERVERLIB'], srcfiles_common_serverlib) -wrapperlib = env.SharedLibrary(env['WRAPPERLIB'], srcfiles_common_wrapperlib) -env.Install( env['LIBDIR'], [clientlib, serverlib, wrapperlib]) +env.Install( env['LIBDIR'], [clientlib, serverlib]) +if not env['FULL_MIMIC']: + wrapperlib = env.SharedLibrary(env['WRAPPERLIB'], srcfiles_common_wrapperlib) + env.Install( env['LIBDIR'], [wrapperlib]) env.Alias('install', env['LIBDIR']) # Handle the way we name libraries on a POSIX system # TODO: this is not quite clean yet. changing the library version is a pain we'll need a nicer loop and a config value somewhere if env['PLATFORM'] == 'posix': - for lib_name, lib in [(env['CLIENTLIB'], clientlib), (env['SERVERLIB'], serverlib), (env['WRAPPERLIB'], wrapperlib)]: + libs = [(env['CLIENTLIB'], clientlib), (env['SERVERLIB'], serverlib)] + if not env['FULL_MIMIC']: + libs.append((env['WRAPPERLIB'], wrapperlib)) + for lib_name, lib in libs: env.Command('#/common/lib' + lib_name + '.so.0', lib, symlinkcmd) env.Command('#/common/lib' + lib_name + '.so', '#/common/lib'+lib_name+'.so.0', symlinkcmd) env.Command(env['LIBDIR'] + '/lib' + lib_name + '.so.0', env['LIBDIR'] + '/lib' + lib_name + '.so.0.0', symlinkcmd) diff --git a/example-clients/SConscript b/example-clients/SConscript index 300894cf..ee3a6545 100644 --- a/example-clients/SConscript +++ b/example-clients/SConscript @@ -74,5 +74,5 @@ if env['BUILD_EXAMPLES']: for example_lib, example_lib_source in example_libs.items(): lib = clientenv.SharedLibrary(example_lib, example_lib_source) if clientenv['INSTALL_EXAMPLES']: - clientenv.InstallAs(clientenv['LIBDIR'] + '/jackmp/' + example_lib + '.so', lib) - clientenv.Alias('install', clientenv['LIBDIR'] + '/jackmp/' + example_lib + '.so') + clientenv.InstallAs(clientenv['ADDON_DIR'] + '/' + example_lib + '.so', lib) + clientenv.Alias('install', clientenv['ADDON_DIR'] + '/' + example_lib + '.so') diff --git a/linux/Makefile b/linux/Makefile index 6d1b3115..b88fae70 100644 --- a/linux/Makefile +++ b/linux/Makefile @@ -55,13 +55,13 @@ objects_linux_firewire := JackFFADODriver.o objects_linux_dummy := JackDummyDriver.o CFLAGS := -g -O3 -fPIC -DJACKMP -DUSE_POSIX_SHM $(addprefix -I, $(subprojects)) $(CFLAGS) -CXXFLAGS := -g -O3 -fPIC -DJACKMP -DSOCKET_RPC_FIFO_SEMA -D__SMP__ -DADDON_DIR=\"$(prefix)\" -DLIB_DIR=\"$(libdir)\" -DJACK_LOCATION=\"$(prefix)/bin\" $(addprefix -I, $(subprojects)) $(CXXFLAGS) +CXXFLAGS := -g -O3 -fPIC -DJACKMP -DSOCKET_RPC_FIFO_SEMA -D__SMP__ -DADDON_DIR=\"$(prefix)/$(libdir)/jackmp\" -DLIB_DIR=\"$(libdir)\" -DJACK_LOCATION=\"$(prefix)/bin\" $(addprefix -I, $(subprojects)) $(CXXFLAGS) #CFLAGS := -g -fPIC -DUSE_POSIX_SHM $(addprefix -I, $(subprojects)) $(CFLAGS) -#CXXFLAGS := -g -fPIC -DSOCKET_RPC_FIFO_SEMA -D__SMP__ -DADDON_DIR=\"$(prefix)\" -DLIB_DIR=\"$(libdir)\" -DJACK_LOCATION=\"$(prefix)/bin\" $(addprefix -I, $(subprojects)) $(CXXFLAGS) +#CXXFLAGS := -g -fPIC -DSOCKET_RPC_FIFO_SEMA -D__SMP__ -DADDON_DIR=\"$(prefix)/$(libdir)/jackmp\" -DLIB_DIR=\"$(libdir)\" -DJACK_LOCATION=\"$(prefix)/bin\" $(addprefix -I, $(subprojects)) $(CXXFLAGS) # Use this line to compile with POSIX names semaphore -#CXXFLAGS := -g -O3 -fPIC -DSOCKET_RPC_POSIX_SEMA -D__SMP__ -DADDON_DIR=\"$(prefix)\" -DLIB_DIR=\"$(libdir)\" -DJACK_LOCATION=\"$(prefix)/bin\" $(addprefix -I, $(subprojects)) $(CXXFLAGS) +#CXXFLAGS := -g -O3 -fPIC -DSOCKET_RPC_POSIX_SEMA -D__SMP__ -DADDON_DIR=\"$(prefix)/$(libdir)/jackmp\" -DLIB_DIR=\"$(libdir)\" -DJACK_LOCATION=\"$(prefix)/bin\" $(addprefix -I, $(subprojects)) $(CXXFLAGS) all : $(TARGET_LINUX_SERVER_LIB) $(TARGET_LINUX_CLIENT_LIB) $(TARGET_LINUX_WRAPPER_LIB) \ $(TARGET_LINUX_SERVER) $(TARGET_LINUX_ALSA) $(TARGET_LINUX_DUMMY) \ diff --git a/linux/SConscript b/linux/SConscript index 9abb1450..b020bc60 100644 --- a/linux/SConscript +++ b/linux/SConscript @@ -35,6 +35,9 @@ srcfiles_linux_server = ['#/common/Jackdmp.cpp'] srcfiles_linux_alsa = [ 'JackAlsaDriver.cpp', + 'alsa_rawmidi.c', + 'alsa_seqmidi.c', + 'alsa_midi_jackmp.cpp', 'memops.c', 'generic_hw.c', 'hdsp.c', @@ -58,26 +61,28 @@ serverenv = env.Copy() serverenv.PrependUnique( LIBPATH=env['build_base'] ) serverenv.PrependUnique( LIBS=[env['SERVERLIB'], 'dl'] ) -server = serverenv.Program('jackdmp', srcfiles_linux_server) +server = serverenv.Program(env['SERVER'], srcfiles_linux_server) serverenv.Install( env['BINDIR'], server ) +driver_dir = env['ADDON_DIR'] + "/" + drv = serverenv.SharedLibrary( 'jack_dummy', srcfiles_linux_dummy ) -serverenv.InstallAs( env['LIBDIR'] + '/jackmp/jack_dummy.so', drv ) +serverenv.InstallAs( driver_dir + "jack_dummy.so", drv ) if env['ENABLE_ALSA']: if not env.GetOption('clean'): serverenv.MergeFlags( env['ALSA_FLAGS'] ) drv = serverenv.SharedLibrary( 'jack_alsa', srcfiles_linux_alsa ) - serverenv.InstallAs( env['LIBDIR'] + '/jackmp/jack_alsa.so', drv ) + serverenv.InstallAs( driver_dir + "jack_alsa.so", drv ) if env['ENABLE_FREEBOB']: if not env.GetOption('clean'): serverenv.MergeFlags( env['FREEBOB_FLAGS'] ) drv = serverenv.SharedLibrary( 'jack_freebob', srcfiles_linux_freebob ) - serverenv.InstallAs( env['LIBDIR'] + '/jackmp/jack_freebob.so', drv ) + serverenv.InstallAs( driver_dir + "jack_freebob.so", drv ) if env['ENABLE_FIREWIRE']: if not env.GetOption('clean'): serverenv.MergeFlags( env['FFADO_FLAGS'] ) drv = serverenv.SharedLibrary( 'jack_firewire', srcfiles_linux_ffado ) - serverenv.InstallAs( env['LIBDIR'] + '/jackmp/jack_firewire.so', drv ) + serverenv.InstallAs( driver_dir + "jack_firewire.so", drv ) diff --git a/linux/alsa/alsa_midi_impl.h b/linux/alsa/alsa_midi_impl.h index 1ac22143..1149163b 100644 --- a/linux/alsa/alsa_midi_impl.h +++ b/linux/alsa/alsa_midi_impl.h @@ -68,7 +68,7 @@ extern "C" #if defined(STANDALONE) #define MESSAGE(...) fprintf(stderr, __VA_ARGS__) #elif defined(JACKMP) -#define MESSAGE(...) fprintf(stderr, __VA_ARGS__) +#define MESSAGE(...) fprintf(stderr, __VA_ARGS__) ; fprintf(stderr, "\n") #else #include #endif diff --git a/macosx/Jackdmp.xcodeproj/project.pbxproj b/macosx/Jackdmp.xcodeproj/project.pbxproj index f61cb56b..38ffce66 100644 --- a/macosx/Jackdmp.xcodeproj/project.pbxproj +++ b/macosx/Jackdmp.xcodeproj/project.pbxproj @@ -5838,7 +5838,7 @@ "$(OTHER_CPLUSPLUSFLAGS_QUOTED_FOR_TARGET_1)", ); OTHER_CPLUSPLUSFLAGS_QUOTED_1 = "-DJACK_LOCATION=\\\"/usr/local/bin\\\""; - OTHER_CPLUSPLUSFLAGS_QUOTED_FOR_TARGET_1 = "-DADDON_DIR=\\\"/usr/local\\\""; + OTHER_CPLUSPLUSFLAGS_QUOTED_FOR_TARGET_1 = "-DADDON_DIR=\\\"/usr/local/lib/jackmp\\\""; OTHER_LDFLAGS = ( "-framework", Carbon, @@ -5899,7 +5899,7 @@ "$(OTHER_CPLUSPLUSFLAGS_QUOTED_FOR_TARGET_1)", ); OTHER_CPLUSPLUSFLAGS_QUOTED_1 = "-DJACK_LOCATION=\\\"/usr/local/bin\\\""; - OTHER_CPLUSPLUSFLAGS_QUOTED_FOR_TARGET_1 = "-DADDON_DIR=\\\"/usr/local\\\""; + OTHER_CPLUSPLUSFLAGS_QUOTED_FOR_TARGET_1 = "-DADDON_DIR=\\\"/usr/local/lib/jackmp\\\""; OTHER_LDFLAGS = ( "-framework", Carbon, @@ -5952,7 +5952,7 @@ "$(OTHER_CPLUSPLUSFLAGS_QUOTED_FOR_TARGET_1)", ); OTHER_CPLUSPLUSFLAGS_QUOTED_1 = "-DJACK_LOCATION=\\\"/usr/local/bin\\\""; - OTHER_CPLUSPLUSFLAGS_QUOTED_FOR_TARGET_1 = "-DADDON_DIR=\\\"/usr/local\\\""; + OTHER_CPLUSPLUSFLAGS_QUOTED_FOR_TARGET_1 = "-DADDON_DIR=\\\"/usr/local/lib/jackmp\\\""; OTHER_LDFLAGS = ( "-framework", Carbon, @@ -6012,8 +6012,8 @@ "$(OTHER_CPLUSPLUSFLAGS_QUOTED_2)", "$(OTHER_CPLUSPLUSFLAGS_QUOTED_3)", ); - OTHER_CPLUSPLUSFLAGS_QUOTED_1 = "-DADDON_DIR=\\\"/usr/local\\\""; - OTHER_CPLUSPLUSFLAGS_QUOTED_2 = "-DADDON_DIR=\\\"/usr/local\\\""; + OTHER_CPLUSPLUSFLAGS_QUOTED_1 = "-DADDON_DIR=\\\"/usr/local/lib/jackmp\\\""; + OTHER_CPLUSPLUSFLAGS_QUOTED_2 = "-DADDON_DIR=\\\"/usr/local/lib/jackmp\\\""; OTHER_CPLUSPLUSFLAGS_QUOTED_3 = "-DLIB_DIR=\\\"lib\\\""; OTHER_LDFLAGS = ( "-framework", @@ -6074,8 +6074,8 @@ "$(OTHER_CPLUSPLUSFLAGS_QUOTED_2)", "$(OTHER_CPLUSPLUSFLAGS_QUOTED_3)", ); - OTHER_CPLUSPLUSFLAGS_QUOTED_1 = "-DADDON_DIR=\\\"/usr/local\\\""; - OTHER_CPLUSPLUSFLAGS_QUOTED_2 = "-DADDON_DIR=\\\"/usr/local\\\""; + OTHER_CPLUSPLUSFLAGS_QUOTED_1 = "-DADDON_DIR=\\\"/usr/local/lib/jackmp\\\""; + OTHER_CPLUSPLUSFLAGS_QUOTED_2 = "-DADDON_DIR=\\\"/usr/local/lib/jackmp\\\""; OTHER_CPLUSPLUSFLAGS_QUOTED_3 = "-DLIB_DIR=\\\"lib\\\""; OTHER_LDFLAGS = ( "-framework", @@ -6128,8 +6128,8 @@ "$(OTHER_CPLUSPLUSFLAGS_QUOTED_2)", "$(OTHER_CPLUSPLUSFLAGS_QUOTED_3)", ); - OTHER_CPLUSPLUSFLAGS_QUOTED_1 = "-DADDON_DIR=\\\"/usr/local\\\""; - OTHER_CPLUSPLUSFLAGS_QUOTED_2 = "-DADDON_DIR=\\\"/usr/local\\\""; + OTHER_CPLUSPLUSFLAGS_QUOTED_1 = "-DADDON_DIR=\\\"/usr/local/lib/jackmp\\\""; + OTHER_CPLUSPLUSFLAGS_QUOTED_2 = "-DADDON_DIR=\\\"/usr/local/lib/jackmp\\\""; OTHER_CPLUSPLUSFLAGS_QUOTED_3 = "-DLIB_DIR=\\\"lib\\\""; OTHER_LDFLAGS = ( "-framework", @@ -9330,7 +9330,7 @@ "$(OTHER_CPLUSPLUSFLAGS_QUOTED_FOR_TARGET_1)", ); OTHER_CPLUSPLUSFLAGS_QUOTED_1 = "-DJACK_LOCATION=\\\"/usr/local/bin\\\""; - OTHER_CPLUSPLUSFLAGS_QUOTED_FOR_TARGET_1 = "-DADDON_DIR=\\\"/usr/local\\\""; + OTHER_CPLUSPLUSFLAGS_QUOTED_FOR_TARGET_1 = "-DADDON_DIR=\\\"/usr/local/lib/jackmp\\\""; OTHER_LDFLAGS = ( "-framework", Carbon, @@ -9389,7 +9389,7 @@ "$(OTHER_CPLUSPLUSFLAGS_QUOTED_FOR_TARGET_1)", ); OTHER_CPLUSPLUSFLAGS_QUOTED_1 = "-DJACK_LOCATION=\\\"/usr/local/bin\\\""; - OTHER_CPLUSPLUSFLAGS_QUOTED_FOR_TARGET_1 = "-DADDON_DIR=\\\"/usr/local\\\""; + OTHER_CPLUSPLUSFLAGS_QUOTED_FOR_TARGET_1 = "-DADDON_DIR=\\\"/usr/local/lib/jackmp\\\""; OTHER_LDFLAGS = ( "-framework", Carbon, @@ -9440,7 +9440,7 @@ "$(OTHER_CPLUSPLUSFLAGS_QUOTED_FOR_TARGET_1)", ); OTHER_CPLUSPLUSFLAGS_QUOTED_1 = "-DJACK_LOCATION=\\\"/usr/local/bin\\\""; - OTHER_CPLUSPLUSFLAGS_QUOTED_FOR_TARGET_1 = "-DADDON_DIR=\\\"/usr/local\\\""; + OTHER_CPLUSPLUSFLAGS_QUOTED_FOR_TARGET_1 = "-DADDON_DIR=\\\"/usr/local/lib/jackmp\\\""; OTHER_LDFLAGS = ( "-framework", Carbon, @@ -9498,8 +9498,8 @@ "$(OTHER_CPLUSPLUSFLAGS_QUOTED_2)", "$(OTHER_CPLUSPLUSFLAGS_QUOTED_3)", ); - OTHER_CPLUSPLUSFLAGS_QUOTED_1 = "-DADDON_DIR=\\\"/usr/local\\\""; - OTHER_CPLUSPLUSFLAGS_QUOTED_2 = "-DADDON_DIR=\\\"/usr/local\\\""; + OTHER_CPLUSPLUSFLAGS_QUOTED_1 = "-DADDON_DIR=\\\"/usr/local/lib/jackmp\\\""; + OTHER_CPLUSPLUSFLAGS_QUOTED_2 = "-DADDON_DIR=\\\"/usr/local/lib/jackmp\\\""; OTHER_CPLUSPLUSFLAGS_QUOTED_3 = "-DLIB_DIR=\\\"lib\\\""; OTHER_LDFLAGS = ( "-framework", @@ -9558,8 +9558,8 @@ "$(OTHER_CPLUSPLUSFLAGS_QUOTED_2)", "$(OTHER_CPLUSPLUSFLAGS_QUOTED_3)", ); - OTHER_CPLUSPLUSFLAGS_QUOTED_1 = "-DADDON_DIR=\\\"/usr/local\\\""; - OTHER_CPLUSPLUSFLAGS_QUOTED_2 = "-DADDON_DIR=\\\"/usr/local\\\""; + OTHER_CPLUSPLUSFLAGS_QUOTED_1 = "-DADDON_DIR=\\\"/usr/local/lib/jackmp\\\""; + OTHER_CPLUSPLUSFLAGS_QUOTED_2 = "-DADDON_DIR=\\\"/usr/local/lib/jackmp\\\""; OTHER_CPLUSPLUSFLAGS_QUOTED_3 = "-DLIB_DIR=\\\"lib\\\""; OTHER_LDFLAGS = ( "-framework", @@ -9610,8 +9610,8 @@ "$(OTHER_CPLUSPLUSFLAGS_QUOTED_2)", "$(OTHER_CPLUSPLUSFLAGS_QUOTED_3)", ); - OTHER_CPLUSPLUSFLAGS_QUOTED_1 = "-DADDON_DIR=\\\"/usr/local\\\""; - OTHER_CPLUSPLUSFLAGS_QUOTED_2 = "-DADDON_DIR=\\\"/usr/local\\\""; + OTHER_CPLUSPLUSFLAGS_QUOTED_1 = "-DADDON_DIR=\\\"/usr/local/lib/jackmp\\\""; + OTHER_CPLUSPLUSFLAGS_QUOTED_2 = "-DADDON_DIR=\\\"/usr/local/lib/jackmp\\\""; OTHER_CPLUSPLUSFLAGS_QUOTED_3 = "-DLIB_DIR=\\\"lib\\\""; OTHER_LDFLAGS = ( "-framework", @@ -11577,6 +11577,12 @@ INFOPLIST_FILE = "Jackwrapper-Info.plist"; INSTALL_PATH = "$(HOME)/Library/Frameworks"; MACOSX_DEPLOYMENT_TARGET = 10.4; + OTHER_CPLUSPLUSFLAGS = ( + "$(OTHER_CPLUSPLUSFLAGS_QUOTED_FOR_TARGET_1)", + "$(OTHER_CPLUSPLUSFLAGS_QUOTED_FOR_TARGET_2)", + ); + OTHER_CPLUSPLUSFLAGS_QUOTED_FOR_TARGET_1 = "-DJACK_LOCATION=\\\"/usr/local/bin\\\""; + OTHER_CPLUSPLUSFLAGS_QUOTED_FOR_TARGET_2 = "-DADDON_DIR=\\\"/usr/local/lib/jackdmp\\\""; OTHER_LDFLAGS = ( "-framework", Carbon, diff --git a/macosx/SConscript b/macosx/SConscript index 8efebc3a..bf85ee0c 100644 --- a/macosx/SConscript +++ b/macosx/SConscript @@ -46,11 +46,11 @@ serverenv = env.Copy() serverenv.PrependUnique( LIBPATH=env['build_base'] ) serverenv.PrependUnique( LIBS=[env['SERVERLIB'], 'dl'] ) -server = serverenv.Program('jackdmp', srcfiles_macosx_server) +server = serverenv.Program(env['SERVER'], srcfiles_macosx_server) serverenv.Install( env['BINDIR'], server ) drv = serverenv.SharedLibrary( 'jack_dummy', srcfiles_macosx_dummy ) -serverenv.InstallAs( env['LIBDIR']+ '/jackmp/jack_dummy.so', drv ) +serverenv.InstallAs( env['ADDON_DIR']+ '/jack_dummy.so', drv ) drv = serverenv.SharedLibrary( 'jack_coreaudio', srcfiles_macosx_coreaudio ) -serverenv.InstallAs( env['LIBDIR']+ '/jackmp/jack_coreaudio.so', drv ) +serverenv.InstallAs( env['ADDON_DIR']+ '/jack_coreaudio.so', drv )