From 2ff0ab3989d2eb49a334bd59129cc7b37552812f Mon Sep 17 00:00:00 2001 From: sletz Date: Wed, 18 Jun 2008 14:42:52 +0000 Subject: [PATCH] DBUS working on OSX git-svn-id: http://subversion.jackaudio.org/jack/jack2/trunk/jackmp@2537 0c269be4-1314-0410-8aa9-9f06e86f4224 --- common/wscript | 9 ++++++--- example-clients/wscript | 12 ++++++++---- linux/dbus/sigsegv.c | 10 ++++++++++ linux/dbus/wscript | 5 ++++- tests/wscript | 3 ++- wscript | 2 ++ 6 files changed, 32 insertions(+), 9 deletions(-) diff --git a/common/wscript b/common/wscript index 028ef243..cf5bde2c 100644 --- a/common/wscript +++ b/common/wscript @@ -134,7 +134,8 @@ def build(bld): serverlib.env.append_value("CPPFLAGS", "-fvisibility=hidden") if bld.env()['IS_MACOSX']: serverlib.env.append_value("CPPFLAGS", "-mmacosx-version-min=10.4 -arch i386 -arch ppc") - serverlib.env.append_value("LINKFLAGS", "-framework CoreAudio -framework vecLib -single_module -arch i386 -arch ppc") + #serverlib.env.append_value("LINKFLAGS", "-framework CoreAudio -framework vecLib -single_module -arch i386 -arch ppc") + serverlib.env.append_value("LINKFLAGS", "-framework CoreAudio -framework vecLib -single_module") clientlib = bld.create_obj('cpp', 'shlib') clientlib.features.append('cc') @@ -168,7 +169,8 @@ def build(bld): clientlib.env.append_value("CPPFLAGS", "-fvisibility=hidden") if bld.env()['IS_MACOSX']: clientlib.env.append_value("CPPFLAGS", "-mmacosx-version-min=10.4 -arch i386 -arch ppc") - clientlib.env.append_value("LINKFLAGS", "-framework CoreAudio -framework vecLib -single_module -arch i386 -arch ppc") + #clientlib.env.append_value("LINKFLAGS", "-framework CoreAudio -framework vecLib -single_module -arch i386 -arch ppc") + clientlib.env.append_value("LINKFLAGS", "-framework CoreAudio -framework vecLib -single_module") netmanagerlib = bld.create_obj('cpp', 'shlib') netmanagerlib.env['shlib_PATTERN'] = '%s.so' @@ -179,7 +181,8 @@ def build(bld): netmanagerlib.env.append_value("CPPFLAGS", "-fvisibility=hidden") if bld.env()['IS_MACOSX']: netmanagerlib.env.append_value("CPPFLAGS", "-mmacosx-version-min=10.4 -arch i386 -arch ppc") - netmanagerlib.env.append_value("LINKFLAGS", "-arch i386 -arch ppc") + #netmanagerlib.env.append_value("LINKFLAGS", "-arch i386 -arch ppc") + netmanagerlib.env.append_value("LINKFLAGS", "") netmanagerlib.inst_var = bld.env()['ADDON_DIR'] netmanagerlib.inst_dir = '/' if bld.env()['IS_MACOSX']: # is this really macosx sepcific? diff --git a/example-clients/wscript b/example-clients/wscript index 8a1ac73c..e978a5cb 100644 --- a/example-clients/wscript +++ b/example-clients/wscript @@ -62,7 +62,8 @@ def build(bld): prog.source = example_program_source if bld.env()['IS_MACOSX']: prog.env.append_value("CPPFLAGS", "-mmacosx-version-min=10.4 -arch i386 -arch ppc") - prog.env.append_value("LINKFLAGS", "-arch i386 -arch ppc") + #prog.env.append_value("LINKFLAGS", "-arch i386 -arch ppc") + prog.env.append_value("LINKFLAGS", "") if bld.env()['IS_LINUX']: prog.uselib = 'RT' prog.uselib_local = 'clientlib' @@ -75,7 +76,8 @@ def build(bld): prog.source = 'transport.c' if bld.env()['IS_MACOSX']: prog.env.append_value("CPPFLAGS", "-mmacosx-version-min=10.4 -arch i386 -arch ppc") - prog.env.append_value("LINKFLAGS", "-arch i386 -arch ppc") + #prog.env.append_value("LINKFLAGS", "-arch i386 -arch ppc") + prog.env.append_value("LINKFLAGS", "") if bld.env()['IS_LINUX']: prog.uselib = 'RT READLINE NCURSES' if bld.env()['IS_MACOSX']: @@ -89,7 +91,8 @@ def build(bld): prog.source = 'capture_client.c' if bld.env()['IS_MACOSX']: prog.env.append_value("CPPFLAGS", "-mmacosx-version-min=10.4 -arch i386 -arch ppc") - prog.env.append_value("LINKFLAGS", "-arch i386 -arch ppc") + #prog.env.append_value("LINKFLAGS", "-arch i386 -arch ppc") + prog.env.append_value("LINKFLAGS", "") if bld.env()['IS_LINUX']: prog.uselib = 'RT SNDFILE' if bld.env()['IS_MACOSX']: @@ -105,7 +108,8 @@ def build(bld): lib.source = example_lib_source if bld.env()['IS_MACOSX']: lib.env.append_value("CPPFLAGS", "-mmacosx-version-min=10.4 -arch i386 -arch ppc") - lib.env.append_value("LINKFLAGS", "-arch i386 -arch ppc") + #lib.env.append_value("LINKFLAGS", "-arch i386 -arch ppc") + lib.env.append_value("LINKFLAGS", "") lib.uselib_local = 'clientlib' lib.inst_var = bld.env()['ADDON_DIR'] lib.inst_dir = '/' diff --git a/linux/dbus/sigsegv.c b/linux/dbus/sigsegv.c index d66ea000..46645408 100644 --- a/linux/dbus/sigsegv.c +++ b/linux/dbus/sigsegv.c @@ -48,6 +48,14 @@ char * __cxa_demangle(const char * __mangled_name, char * __output_buffer, size_ # define REGFORMAT "%x" #endif +#ifdef __APPLE__ + +// TODO : does not compile yet on OSX +static void signal_segv(int signum, siginfo_t* info, void*ptr) +{} + +#else + static void signal_segv(int signum, siginfo_t* info, void*ptr) { static const char *si_codes[3] = {"", "SEGV_MAPERR", "SEGV_ACCERR"}; @@ -146,6 +154,8 @@ static void signal_segv(int signum, siginfo_t* info, void*ptr) { exit (-1); } +#endif + int setup_sigsegv() { struct sigaction action; diff --git a/linux/dbus/wscript b/linux/dbus/wscript index c7cb03e5..9dc1a1ab 100644 --- a/linux/dbus/wscript +++ b/linux/dbus/wscript @@ -80,7 +80,10 @@ def build(bld): 'xml_write_raw.c', 'sigsegv.c', ] - obj.uselib = 'PTHREAD DL RT DBUS-1 EXPAT' + if bld.env()['IS_LINUX']: + obj.uselib = 'PTHREAD DL RT DBUS-1 EXPAT' + if bld.env()['IS_MACOSX']: + obj.uselib = 'PTHREAD DL DBUS-1 EXPAT' obj.uselib_local = 'serverlib' obj.target = 'jackdbus' diff --git a/tests/wscript b/tests/wscript index 849bc7d3..c60456e8 100644 --- a/tests/wscript +++ b/tests/wscript @@ -19,7 +19,8 @@ def build(bld): prog.uselib = 'RT' if bld.env()['IS_MACOSX']: prog.env.append_value("CPPFLAGS", "-mmacosx-version-min=10.4 -arch i386 -arch ppc") - prog.env.append_value("LINKFLAGS", "-arch i386 -arch ppc") + #prog.env.append_value("LINKFLAGS", "-arch i386 -arch ppc") + prog.env.append_value("LINKFLAGS", "") prog.uselib_local = 'clientlib' prog.target = test_program if test_program != 'jack_test': diff --git a/wscript b/wscript index 78105a36..e84f3c76 100644 --- a/wscript +++ b/wscript @@ -132,6 +132,8 @@ def build(bld): bld.add_subdirs('macosx') bld.add_subdirs('example-clients') bld.add_subdirs('tests') + if bld.env()['BUILD_JACKDBUS'] == True: + bld.add_subdirs('linux/dbus') if bld.env()['BUILD_DOXYGEN_DOCS'] == True: share_dir = Params.g_build.env()['PREFIX'] + '/share/jack-audio-connection-kit'