[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [30483] trunk/lib/windows/jack: Update to Jack 1.9.5 (still doesn't properly link though, so no use in enabling in configs yet).
Nathan Letwory
nathan at letworyinteractive.com
Mon Jul 19 09:08:05 CEST 2010
Revision: 30483
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=30483
Author: jesterking
Date: 2010-07-19 09:08:05 +0200 (Mon, 19 Jul 2010)
Log Message:
-----------
Update to Jack 1.9.5 (still doesn't properly link though, so no use in enabling in configs yet).
Modified Paths:
--------------
trunk/lib/windows/jack/include/control.h
trunk/lib/windows/jack/include/jack/systemdeps.h
trunk/lib/windows/jack/include/jack/transport.h
trunk/lib/windows/jack/include/jack/types.h
trunk/lib/windows/jack/include/jack.h
trunk/lib/windows/jack/include/jslist.h
trunk/lib/windows/jack/include/midiport.h
trunk/lib/windows/jack/include/thread.h
trunk/lib/windows/jack/lib/libjack.a
trunk/lib/windows/jack/lib/libjack.dll
trunk/lib/windows/jack/lib/libjack.lib
Added Paths:
-----------
trunk/lib/windows/jack/include/jack/weakmacros.h
trunk/lib/windows/jack/include/weakjack.h
Modified: trunk/lib/windows/jack/include/control.h
===================================================================
--- trunk/lib/windows/jack/include/control.h 2010-07-19 06:56:08 UTC (rev 30482)
+++ trunk/lib/windows/jack/include/control.h 2010-07-19 07:08:05 UTC (rev 30483)
@@ -31,7 +31,9 @@
#include <jack/jslist.h>
#include <jack/systemdeps.h>
+#if !defined (__sun__)
#include <stdbool.h>
+#endif
/** Parameter types, intentionally similar to jack_driver_param_type_t */
typedef enum
Modified: trunk/lib/windows/jack/include/jack/systemdeps.h
===================================================================
--- trunk/lib/windows/jack/include/jack/systemdeps.h 2010-07-19 06:56:08 UTC (rev 30482)
+++ trunk/lib/windows/jack/include/jack/systemdeps.h 2010-07-19 07:08:05 UTC (rev 30483)
@@ -42,7 +42,7 @@
#elif __MINGW32__ /* MINGW */
#include <stdint.h>
#include <sys/types.h>
- /*#ifndef pthread_t
+/* #ifndef pthread_t
typedef HANDLE pthread_t;
#endif*/
#else /* other compilers ...*/
Modified: trunk/lib/windows/jack/include/jack/transport.h
===================================================================
--- trunk/lib/windows/jack/include/jack/transport.h 2010-07-19 06:56:08 UTC (rev 30482)
+++ trunk/lib/windows/jack/include/jack/transport.h 2010-07-19 07:08:05 UTC (rev 30483)
@@ -26,6 +26,7 @@
#endif
#include <jack/types.h>
+#include <jack/weakmacros.h>
/**
* @defgroup TransportControl Transport and Timebase control
@@ -48,7 +49,7 @@
*
* @return 0 on success, otherwise a non-zero error code.
*/
-int jack_release_timebase (jack_client_t *client);
+int jack_release_timebase (jack_client_t *client) JACK_OPTIONAL_WEAK_EXPORT;
/**
* Register (or unregister) as a slow-sync client, one that cannot
@@ -72,7 +73,7 @@
*/
int jack_set_sync_callback (jack_client_t *client,
JackSyncCallback sync_callback,
- void *arg);
+ void *arg) JACK_OPTIONAL_WEAK_EXPORT;
/**
* Set the timeout value for slow-sync clients.
@@ -92,7 +93,7 @@
* @return 0 on success, otherwise a non-zero error code.
*/
int jack_set_sync_timeout (jack_client_t *client,
- jack_time_t timeout);
+ jack_time_t timeout) JACK_OPTIONAL_WEAK_EXPORT;
/**
* Register as timebase master for the JACK subsystem.
@@ -122,7 +123,7 @@
int jack_set_timebase_callback (jack_client_t *client,
int conditional,
JackTimebaseCallback timebase_callback,
- void *arg);
+ void *arg) JACK_OPTIONAL_WEAK_EXPORT;
/**
* Reposition the transport to a new frame number.
@@ -141,7 +142,7 @@
* @return 0 if valid request, non-zero otherwise.
*/
int jack_transport_locate (jack_client_t *client,
- jack_nframes_t frame);
+ jack_nframes_t frame) JACK_OPTIONAL_WEAK_EXPORT;
/**
* Query the current transport state and position.
@@ -159,7 +160,7 @@
* @return Current transport state.
*/
jack_transport_state_t jack_transport_query (const jack_client_t *client,
- jack_position_t *pos);
+ jack_position_t *pos) JACK_OPTIONAL_WEAK_EXPORT;
/**
* Return an estimate of the current transport frame,
@@ -168,7 +169,7 @@
*
* @param client the JACK client structure
*/
-jack_nframes_t jack_get_current_transport_frame (const jack_client_t *client);
+jack_nframes_t jack_get_current_transport_frame (const jack_client_t *client) JACK_OPTIONAL_WEAK_EXPORT;
/**
* Request a new transport position.
@@ -187,7 +188,7 @@
* @return 0 if valid request, EINVAL if position structure rejected.
*/
int jack_transport_reposition (jack_client_t *client,
- jack_position_t *pos);
+ jack_position_t *pos) JACK_OPTIONAL_WEAK_EXPORT;
/**
* Start the JACK transport rolling.
@@ -200,7 +201,7 @@
*
* @param client the JACK client structure.
*/
-void jack_transport_start (jack_client_t *client);
+void jack_transport_start (jack_client_t *client) JACK_OPTIONAL_WEAK_EXPORT;
/**
* Stop the JACK transport.
@@ -210,7 +211,7 @@
*
* @param client the JACK client structure.
*/
-void jack_transport_stop (jack_client_t *client);
+void jack_transport_stop (jack_client_t *client) JACK_OPTIONAL_WEAK_EXPORT;
/**
* Gets the current transport info structure (deprecated).
@@ -225,7 +226,7 @@
* @pre Must be called from the process thread.
*/
void jack_get_transport_info (jack_client_t *client,
- jack_transport_info_t *tinfo);
+ jack_transport_info_t *tinfo) JACK_OPTIONAL_WEAK_EXPORT;
/**
* Set the transport info structure (deprecated).
@@ -235,7 +236,7 @@
* a ::JackTimebaseCallback.
*/
void jack_set_transport_info (jack_client_t *client,
- jack_transport_info_t *tinfo);
+ jack_transport_info_t *tinfo) JACK_OPTIONAL_WEAK_EXPORT;
/*@}*/
Modified: trunk/lib/windows/jack/include/jack/types.h
===================================================================
--- trunk/lib/windows/jack/include/jack/types.h 2010-07-19 06:56:08 UTC (rev 30482)
+++ trunk/lib/windows/jack/include/jack/types.h 2010-07-19 07:08:05 UTC (rev 30483)
@@ -202,7 +202,7 @@
*
* @return zero on success, non-zero on error
*/
-typedef int (*JackPortRenameCallback)(jack_port_id_t port, const char* new_name, void *arg);
+typedef int (*JackPortRenameCallback)(jack_port_id_t port, const char* old_name, const char* new_name, void *arg);
/**
* Prototype for the client supplied function that is called
@@ -295,7 +295,15 @@
* systems are examples of clients that would set this flag for
* their ports.
*/
- JackPortIsTerminal = 0x10
+ JackPortIsTerminal = 0x10,
+
+ /**
+ * JackPortIsActive means the port has been registered and the
+ * client is "active", that is jack_activate has been called
+ *
+ * JackPortIsActive is on between jack_activate and jack_deactivate.
+ */
+ JackPortIsActive = 0x20
};
/**
@@ -419,7 +427,17 @@
/**
* Client's protocol version does not match
*/
- JackVersionError = 0x400
+ JackVersionError = 0x400,
+
+ /**
+ * Backend error
+ */
+ JackBackendError = 0x800,
+
+ /**
+ * Client zombified failure
+ */
+ JackClientZombie = 0x1000
};
/**
@@ -644,4 +662,19 @@
} jack_transport_info_t;
+/**
+ * Prototype for the client supplied function that is called
+ * whenever jackd is shutdown. Note that after server shutdown,
+ * the client pointer is *not* deallocated by libjack,
+ * the application is responsible to properly use jack_client_close()
+ * to release client ressources. Warning: jack_client_close() cannot be
+ * safely used inside the shutdown callback and has to be called outside of
+ * the callback context.
+
+ * @param code a status word, formed by OR-ing together the relevant @ref JackStatus bits.
+ * @param reason a string describing the shutdown reason (backend failure, server crash... etc...)
+ * @param arg pointer to a client supplied structure
+ */
+typedef void (*JackInfoShutdownCallback)(jack_status_t code, const char* reason, void *arg);
+
#endif /* __jack_types_h__ */
Added: trunk/lib/windows/jack/include/jack/weakmacros.h
===================================================================
--- trunk/lib/windows/jack/include/jack/weakmacros.h (rev 0)
+++ trunk/lib/windows/jack/include/jack/weakmacros.h 2010-07-19 07:08:05 UTC (rev 30483)
@@ -0,0 +1,63 @@
+/*
+ Copyright (C) 2010 Paul Davis
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU Lesser General Public License as published by
+ the Free Software Foundation; either version 2.1 of the License, or
+ (at your option) any later version.
+
+ 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 Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+*/
+
+#ifndef __weakmacros_h__
+#define __weakmacros_h__
+
+/*************************************************************
+ * NOTE: JACK_WEAK_EXPORT ***MUST*** be used on every function
+ * added to the JACK API after the 0.116.2 release.
+ *
+ * Functions that predate this release are marked with
+ * JACK_WEAK_OPTIONAL_EXPORT which can be defined at compile
+ * time in a variety of ways. The default definition is empty,
+ * so that these symbols get normal linkage. If you wish to
+ * use all JACK symbols with weak linkage, include
+ * <jack/weakjack.h> before jack.h.
+ *************************************************************/
+
+#ifndef JACK_WEAK_EXPORT
+#ifdef __GNUC__
+/* JACK_WEAK_EXPORT needs to be a macro which
+ expands into a compiler directive. If non-null, the directive
+ must tell the compiler to arrange for weak linkage of
+ 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))
+#else
+/* Add other things here for non-gcc platforms */
+#define JACK_WEAK_EXPORT
+#endif
+#endif
+
+#ifndef JACK_OPTIONAL_WEAK_EXPORT
+#define JACK_OPTIONAL_WEAK_EXPORT
+#endif
+
+#ifndef JACK_OPTIONAL_WEAK_DEPRECATED_EXPORT
+#ifdef __GNUC__
+#define JACK_OPTIONAL_WEAK_DEPRECATED_EXPORT __attribute__((__deprecated__))
+#else
+/* Add other things here for non-gcc platforms */
+#define JACK_OPTIONAL_WEAK_DEPRECATED_EXPORT
+#endif /* __GNUC__ */
+#endif
+
+#endif /* __weakmacros_h__ */
Modified: trunk/lib/windows/jack/include/jack.h
===================================================================
--- trunk/lib/windows/jack/include/jack.h 2010-07-19 06:56:08 UTC (rev 30482)
+++ trunk/lib/windows/jack/include/jack.h 2010-07-19 07:08:05 UTC (rev 30483)
@@ -34,12 +34,21 @@
* Note: More documentation can be found in jack/types.h.
*/
+ /*************************************************************
+ * NOTE: JACK_WEAK_EXPORT ***MUST*** be used on every function
+ * added to the JACK API after the 0.116.2 release.
+ *
+ * Functions that predate this release are marked with
+ * JACK_WEAK_OPTIONAL_EXPORT which can be defined at compile
+ * time in a variety of ways. The default definition is empty,
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list