Correct linking issues.

git-svn-id: http://subversion.jackaudio.org/jack/jack2/trunk/jackmp@4288 0c269be4-1314-0410-8aa9-9f06e86f4224
This commit is contained in:
sletz 2011-04-08 11:30:59 +00:00
parent 1683375295
commit f942ca2284
4 changed files with 28 additions and 15 deletions

View File

@ -310,7 +310,7 @@ int jack_set_thread_init_callback (jack_client_t *client,
* jack_on_info_shutdown() will.
*/
void jack_on_shutdown (jack_client_t *client,
JackShutdownCallback shutdown_callback, void *arg) JACK_WEAK_EXPORT;
JackShutdownCallback shutdown_callback, void *arg) JACK_OPTIONAL_WEAK_EXPORT;
/**
* @param client pointer to JACK client structure.
@ -336,7 +336,7 @@ void jack_on_shutdown (jack_client_t *client,
* jack_on_info_shutdown() will.
*/
void jack_on_info_shutdown (jack_client_t *client,
JackInfoShutdownCallback shutdown_callback, void *arg) JACK_OPTIONAL_WEAK_EXPORT;
JackInfoShutdownCallback shutdown_callback, void *arg) JACK_WEAK_EXPORT;
/**
* Tell the Jack server to call @a process_callback whenever there is

View File

@ -40,13 +40,23 @@
the symbol it used with. For this to work full may
require linker arguments in the client as well.
*/
#define JACK_WEAK_EXPORT __attribute__((weak))
#ifdef WIN32
/*
Not working with __declspec(dllexport) so normal linking
Linking with JackWeakAPI.cpp will be the preferred way.
*/
#define JACK_WEAK_EXPORT
#else
/* Add other things here for non-gcc platforms */
#ifdef WIN32
#define JACK_WEAK_EXPORT
#endif
#define JACK_WEAK_EXPORT __attribute__((weak))
#endif
#else
/* Add other things here for non-gcc platforms */
#ifdef WIN32
#define JACK_WEAK_EXPORT
#endif
#endif
#endif
@ -59,13 +69,14 @@
#ifdef __GNUC__
#define JACK_OPTIONAL_WEAK_DEPRECATED_EXPORT __attribute__((__deprecated__))
#else
/* Add other things here for non-gcc platforms */
#ifdef WIN32
#define JACK_OPTIONAL_WEAK_DEPRECATED_EXPORT
#endif
/* Add other things here for non-gcc platforms */
#ifdef WIN32
#define JACK_OPTIONAL_WEAK_DEPRECATED_EXPORT
#endif
#endif /* __GNUC__ */
#endif
#endif /* __weakmacros_h__ */

View File

@ -745,7 +745,9 @@ int main (int argc, char *argv[])
}
jack_on_shutdown(client1, jack_shutdown, 0);
jack_on_info_shutdown(client1, jack_info_shutdown, 0);
if (jack_on_info_shutdown)
jack_on_info_shutdown(client1, jack_info_shutdown, 0);
if (jack_set_buffer_size_callback(client1, Jack_Update_Buffer_Size, 0) != 0) {
printf("Error when calling buffer_size_callback !\n");

View File

@ -25,7 +25,7 @@
</Linker>
</Target>
<Target title="Win32 Debug 64bits">
<Option output="Debug64\bin64\jack_lsp" prefix_auto="1" extension_auto="1" />
<Option output="Debug64\bin\jack_lsp" prefix_auto="1" extension_auto="1" />
<Option object_output="Debug64\" />
<Option type="1" />
<Option compiler="mingw_64" />