Crudebyte Logo
weakjack.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2001-2013
3 
4  Developers:
5 
6  Paul Davis
7  Jack O'Quin
8  Steve Harris
9  Rui Nuno Capela
10  Devin Anderson
11  Kai Vehmanen
12  Ian Esten
13  Dmitry Baikov
14  Torben Hohn
15  Rohan Drape
16  Stephane Letz
17  Christian Schoenebeck
18 
19  This program is free software; you can redistribute it and/or modify
20  it under the terms of the GNU Lesser General Public License as published by
21  the Free Software Foundation; either version 2.1 of the License, or
22  (at your option) any later version.
23 
24  This program is distributed in the hope that it will be useful,
25  but WITHOUT ANY WARRANTY; without even the implied warranty of
26  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
27  GNU Lesser General Public License for more details.
28 
29  You should have received a copy of the GNU Lesser General Public License
30  along with this program; if not, write to the Free Software
31  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
32 
33  You are permitted to statically link against a binary version of
34  the JACK library obtained from
35 
36  http://jackaudio.org/downloads/JackiOS-SDK.zip
37 
38  and distribute the resulting application without complying with section 6
39  (requiring recipients of your application to be able to relink against
40  modified versions of libjack).
41 
42  This permission is granted if and ONLY if the resulting application binary
43  issue is intended for execution in any one of the following environments:
44 
45  * Apple Inc. iOS
46 
47  Additional environments may be added to this list in the future.
48  All other terms of the LGPL continue to apply.
49 
50 */
51 
52 #ifndef __weakjack_h__
53 #define __weakjack_h__
54 
127 #ifdef __APPLE__
128 #define WEAK_ATTRIBUTE weak_import
129 #else
130 #define WEAK_ATTRIBUTE __weak__
131 #endif
132 
133 #ifndef JACK_OPTIONAL_WEAK_EXPORT
134 /* JACK_OPTIONAL_WEAK_EXPORT needs to be a macro which
135  expands into a compiler directive. If non-null, the directive
136  must tell the compiler to arrange for weak linkage of
137  the symbol it used with. For this to work fully may
138  require linker arguments for the client as well.
139 */
140 #ifdef __GNUC__
141 #define JACK_OPTIONAL_WEAK_EXPORT __attribute__((WEAK_ATTRIBUTE))
142 #else
143 /* Add other things here for non-gcc platforms */
144 #endif
145 #endif
146 
147 #ifndef JACK_OPTIONAL_WEAK_DEPRECATED_EXPORT
148 /* JACK_OPTIONAL_WEAK_DEPRECATED_EXPORT needs to be a macro
149  which expands into a compiler directive. If non-null, the directive
150  must tell the compiler to arrange for weak linkage of the
151  symbol it is used with AND optionally to mark the symbol
152  as deprecated. For this to work fully may require
153  linker arguments for the client as well.
154 */
155 #ifdef __GNUC__
156 #define JACK_OPTIONAL_WEAK_DEPRECATED_EXPORT __attribute__((WEAK_ATTRIBUTE,__deprecated__))
157 #else
158 /* Add other things here for non-gcc platforms */
159 #endif
160 #endif
161 
164 #endif /* weakjack */
DE • EN
Copyright © MMXIII Crudebyte. All rights reserved.

twitter