czmq-ffi-gen 0.9.1-x86-mingw32

Sign up to get free protection for your applications and to get access to all the features.
Files changed (118) hide show
  1. checksums.yaml +7 -0
  2. data/AUTHORS +1 -0
  3. data/CHANGES.md +88 -0
  4. data/Gemfile +2 -0
  5. data/LICENSE +14 -0
  6. data/README.md +112 -0
  7. data/lib/czmq-ffi-gen.rb +7 -0
  8. data/lib/czmq-ffi-gen/czmq/ffi.rb +1210 -0
  9. data/lib/czmq-ffi-gen/czmq/ffi/version.rb +15 -0
  10. data/lib/czmq-ffi-gen/czmq/ffi/zactor.rb +186 -0
  11. data/lib/czmq-ffi-gen/czmq/ffi/zarmour.rb +286 -0
  12. data/lib/czmq-ffi-gen/czmq/ffi/zcert.rb +307 -0
  13. data/lib/czmq-ffi-gen/czmq/ffi/zcertstore.rb +222 -0
  14. data/lib/czmq-ffi-gen/czmq/ffi/zchunk.rb +388 -0
  15. data/lib/czmq-ffi-gen/czmq/ffi/zclock.rb +140 -0
  16. data/lib/czmq-ffi-gen/czmq/ffi/zconfig.rb +442 -0
  17. data/lib/czmq-ffi-gen/czmq/ffi/zdigest.rb +156 -0
  18. data/lib/czmq-ffi-gen/czmq/ffi/zdir.rb +283 -0
  19. data/lib/czmq-ffi-gen/czmq/ffi/zdir_patch.rb +194 -0
  20. data/lib/czmq-ffi-gen/czmq/ffi/zfile.rb +353 -0
  21. data/lib/czmq-ffi-gen/czmq/ffi/zframe.rb +359 -0
  22. data/lib/czmq-ffi-gen/czmq/ffi/zhash.rb +416 -0
  23. data/lib/czmq-ffi-gen/czmq/ffi/zhashx.rb +659 -0
  24. data/lib/czmq-ffi-gen/czmq/ffi/ziflist.rb +189 -0
  25. data/lib/czmq-ffi-gen/czmq/ffi/zlist.rb +365 -0
  26. data/lib/czmq-ffi-gen/czmq/ffi/zlistx.rb +478 -0
  27. data/lib/czmq-ffi-gen/czmq/ffi/zloop.rb +396 -0
  28. data/lib/czmq-ffi-gen/czmq/ffi/zmsg.rb +515 -0
  29. data/lib/czmq-ffi-gen/czmq/ffi/zpoller.rb +194 -0
  30. data/lib/czmq-ffi-gen/czmq/ffi/zproc.rb +294 -0
  31. data/lib/czmq-ffi-gen/czmq/ffi/zsock.rb +3479 -0
  32. data/lib/czmq-ffi-gen/czmq/ffi/zstr.rb +203 -0
  33. data/lib/czmq-ffi-gen/czmq/ffi/ztimerset.rb +203 -0
  34. data/lib/czmq-ffi-gen/czmq/ffi/ztrie.rb +221 -0
  35. data/lib/czmq-ffi-gen/czmq/ffi/zuuid.rb +227 -0
  36. data/lib/czmq-ffi-gen/errors.rb +12 -0
  37. data/lib/czmq-ffi-gen/gem_version.rb +5 -0
  38. data/lib/czmq-ffi-gen/legacy.rb +16 -0
  39. data/lib/czmq-ffi-gen/libzmq.rb +18 -0
  40. data/lib/czmq-ffi-gen/signals.rb +27 -0
  41. data/lib/czmq-ffi-gen/vendor.rb +5 -0
  42. data/lib/czmq-ffi-gen/versions.rb +19 -0
  43. data/vendor/local/bin/inproc_lat.exe +0 -0
  44. data/vendor/local/bin/inproc_thr.exe +0 -0
  45. data/vendor/local/bin/libczmq.dll +0 -0
  46. data/vendor/local/bin/libgcc_s_sjlj-1.dll +0 -0
  47. data/vendor/local/bin/libstdc++-6.dll +0 -0
  48. data/vendor/local/bin/libzmq.dll +0 -0
  49. data/vendor/local/bin/local_lat.exe +0 -0
  50. data/vendor/local/bin/local_thr.exe +0 -0
  51. data/vendor/local/bin/remote_lat.exe +0 -0
  52. data/vendor/local/bin/remote_thr.exe +0 -0
  53. data/vendor/local/include/czmq.h +31 -0
  54. data/vendor/local/include/czmq_library.h +199 -0
  55. data/vendor/local/include/czmq_prelude.h +641 -0
  56. data/vendor/local/include/readme.txt +83 -0
  57. data/vendor/local/include/sha1.h +76 -0
  58. data/vendor/local/include/sha1.inc_c +335 -0
  59. data/vendor/local/include/slre.h +92 -0
  60. data/vendor/local/include/slre.inc_c +660 -0
  61. data/vendor/local/include/zactor.h +76 -0
  62. data/vendor/local/include/zarmour.h +114 -0
  63. data/vendor/local/include/zauth.h +100 -0
  64. data/vendor/local/include/zauth_v2.h +88 -0
  65. data/vendor/local/include/zbeacon.h +86 -0
  66. data/vendor/local/include/zbeacon_v2.h +75 -0
  67. data/vendor/local/include/zcert.h +136 -0
  68. data/vendor/local/include/zcertstore.h +100 -0
  69. data/vendor/local/include/zchunk.h +163 -0
  70. data/vendor/local/include/zclock.h +73 -0
  71. data/vendor/local/include/zconfig.h +185 -0
  72. data/vendor/local/include/zctx.h +107 -0
  73. data/vendor/local/include/zdigest.h +65 -0
  74. data/vendor/local/include/zdir.h +149 -0
  75. data/vendor/local/include/zdir_patch.h +82 -0
  76. data/vendor/local/include/zfile.h +177 -0
  77. data/vendor/local/include/zframe.h +176 -0
  78. data/vendor/local/include/zgossip.h +95 -0
  79. data/vendor/local/include/zgossip_engine.inc +927 -0
  80. data/vendor/local/include/zgossip_msg.h +129 -0
  81. data/vendor/local/include/zhash.h +195 -0
  82. data/vendor/local/include/zhash_primes.inc +329 -0
  83. data/vendor/local/include/zhashx.h +298 -0
  84. data/vendor/local/include/ziflist.h +77 -0
  85. data/vendor/local/include/zlist.h +158 -0
  86. data/vendor/local/include/zlistx.h +205 -0
  87. data/vendor/local/include/zloop.h +168 -0
  88. data/vendor/local/include/zmonitor.h +73 -0
  89. data/vendor/local/include/zmonitor_v2.h +56 -0
  90. data/vendor/local/include/zmq.h +617 -0
  91. data/vendor/local/include/zmq_utils.h +48 -0
  92. data/vendor/local/include/zmsg.h +280 -0
  93. data/vendor/local/include/zmutex.h +55 -0
  94. data/vendor/local/include/zpoller.h +92 -0
  95. data/vendor/local/include/zproc.h +168 -0
  96. data/vendor/local/include/zproxy.h +111 -0
  97. data/vendor/local/include/zproxy_v2.h +62 -0
  98. data/vendor/local/include/zrex.h +82 -0
  99. data/vendor/local/include/zsock.h +912 -0
  100. data/vendor/local/include/zsock_option.inc +4126 -0
  101. data/vendor/local/include/zsocket.h +110 -0
  102. data/vendor/local/include/zsockopt.h +256 -0
  103. data/vendor/local/include/zstr.h +110 -0
  104. data/vendor/local/include/zsys.h +386 -0
  105. data/vendor/local/include/zthread.h +50 -0
  106. data/vendor/local/include/ztimerset.h +90 -0
  107. data/vendor/local/include/ztrie.h +106 -0
  108. data/vendor/local/include/zuuid.h +96 -0
  109. data/vendor/local/lib/libczmq.dll.a +0 -0
  110. data/vendor/local/lib/liblibzmq.dll.a +0 -0
  111. data/vendor/local/lib/libzmq-static.a +0 -0
  112. data/vendor/local/lib/pkgconfig/libczmq.pc +23 -0
  113. data/vendor/local/lib/pkgconfig/libzmq.pc +11 -0
  114. data/vendor/local/share/zmq/AUTHORS.txt +147 -0
  115. data/vendor/local/share/zmq/COPYING.LESSER.txt +181 -0
  116. data/vendor/local/share/zmq/COPYING.txt +674 -0
  117. data/vendor/local/share/zmq/NEWS.txt +978 -0
  118. metadata +230 -0
@@ -0,0 +1,106 @@
1
+ /* =========================================================================
2
+ ztrie - simple trie for tokenizable strings
3
+
4
+ Copyright (c) 1991-2012 iMatix Corporation -- http://www.imatix.com
5
+ Copyright other contributors as noted in the AUTHORS file.
6
+
7
+ This file is part of CZMQ, the high-level C binding for 0MQ: http://czmq.zeromq.org
8
+
9
+ This Source Code Form is subject to the terms of the Mozilla Public
10
+ License, v. 2.0. If a copy of the MPL was not distributed with this
11
+ file, You can obtain one at http://mozilla.org/MPL/2.0/.
12
+ =========================================================================
13
+ */
14
+
15
+ #ifndef ZTRIE_H_INCLUDED
16
+ #define ZTRIE_H_INCLUDED
17
+
18
+ #ifdef __cplusplus
19
+ extern "C" {
20
+ #endif
21
+
22
+
23
+ // @warning THE FOLLOWING @INTERFACE BLOCK IS AUTO-GENERATED BY ZPROJECT
24
+ // @warning Please edit the model at "api/ztrie.api" to make changes.
25
+ // @interface
26
+ // This is a draft class, and may change without notice. It is disabled in
27
+ // stable builds by default. If you use this in applications, please ask
28
+ // for it to be pushed to stable state. Use --enable-drafts to enable.
29
+ #ifdef CZMQ_BUILD_DRAFT_API
30
+ // Callback function for ztrie_node to destroy node data.
31
+ typedef void (ztrie_destroy_data_fn) (
32
+ void **data);
33
+
34
+ // *** Draft method, for development use, may change without warning ***
35
+ // Creates a new ztrie.
36
+ CZMQ_EXPORT ztrie_t *
37
+ ztrie_new (char delimiter);
38
+
39
+ // *** Draft method, for development use, may change without warning ***
40
+ // Destroy the ztrie.
41
+ CZMQ_EXPORT void
42
+ ztrie_destroy (ztrie_t **self_p);
43
+
44
+ // *** Draft method, for development use, may change without warning ***
45
+ // Inserts a new route into the tree and attaches the data. Returns -1
46
+ // if the route already exists, otherwise 0. This method takes ownership of
47
+ // the provided data if a destroy_data_fn is provided.
48
+ CZMQ_EXPORT int
49
+ ztrie_insert_route (ztrie_t *self, const char *path, void *data, ztrie_destroy_data_fn destroy_data_fn);
50
+
51
+ // *** Draft method, for development use, may change without warning ***
52
+ // Removes a route from the trie and destroys its data. Returns -1 if the
53
+ // route does not exists, otherwise 0.
54
+ // the start of the list call zlist_first (). Advances the cursor.
55
+ CZMQ_EXPORT int
56
+ ztrie_remove_route (ztrie_t *self, const char *path);
57
+
58
+ // *** Draft method, for development use, may change without warning ***
59
+ // Returns true if the path matches a route in the tree, otherwise false.
60
+ CZMQ_EXPORT bool
61
+ ztrie_matches (ztrie_t *self, const char *path);
62
+
63
+ // *** Draft method, for development use, may change without warning ***
64
+ // Returns the data of a matched route from last ztrie_matches. If the path
65
+ // did not match, returns NULL. Do not delete the data as it's owned by
66
+ // ztrie.
67
+ CZMQ_EXPORT void *
68
+ ztrie_hit_data (ztrie_t *self);
69
+
70
+ // *** Draft method, for development use, may change without warning ***
71
+ // Returns the count of parameters that a matched route has.
72
+ CZMQ_EXPORT size_t
73
+ ztrie_hit_parameter_count (ztrie_t *self);
74
+
75
+ // *** Draft method, for development use, may change without warning ***
76
+ // Returns the parameters of a matched route with named regexes from last
77
+ // ztrie_matches. If the path did not match or the route did not contain any
78
+ // named regexes, returns NULL.
79
+ CZMQ_EXPORT zhashx_t *
80
+ ztrie_hit_parameters (ztrie_t *self);
81
+
82
+ // *** Draft method, for development use, may change without warning ***
83
+ // Returns the asterisk matched part of a route, if there has been no match
84
+ // or no asterisk match, returns NULL.
85
+ CZMQ_EXPORT const char *
86
+ ztrie_hit_asterisk_match (ztrie_t *self);
87
+
88
+ // *** Draft method, for development use, may change without warning ***
89
+ // Print the trie
90
+ CZMQ_EXPORT void
91
+ ztrie_print (ztrie_t *self);
92
+
93
+ // *** Draft method, for development use, may change without warning ***
94
+ // Self test of this class.
95
+ CZMQ_EXPORT void
96
+ ztrie_test (bool verbose);
97
+
98
+ #endif // CZMQ_BUILD_DRAFT_API
99
+ // @end
100
+
101
+
102
+ #ifdef __cplusplus
103
+ }
104
+ #endif
105
+
106
+ #endif
@@ -0,0 +1,96 @@
1
+ /* =========================================================================
2
+ zuuid - UUID support class
3
+
4
+ Copyright (c) the Contributors as noted in the AUTHORS file.
5
+ This file is part of CZMQ, the high-level C binding for 0MQ:
6
+ http://czmq.zeromq.org.
7
+
8
+ This Source Code Form is subject to the terms of the Mozilla Public
9
+ License, v. 2.0. If a copy of the MPL was not distributed with this
10
+ file, You can obtain one at http://mozilla.org/MPL/2.0/.
11
+ =========================================================================
12
+ */
13
+
14
+ #ifndef __ZUUID_H_INCLUDED__
15
+ #define __ZUUID_H_INCLUDED__
16
+
17
+ #define ZUUID_LEN 16
18
+ #define ZUUID_STR_LEN (ZUUID_LEN * 2)
19
+
20
+ #ifdef __cplusplus
21
+ extern "C" {
22
+ #endif
23
+
24
+ // @warning THE FOLLOWING @INTERFACE BLOCK IS AUTO-GENERATED BY ZPROJECT
25
+ // @warning Please edit the model at "api/zuuid.api" to make changes.
26
+ // @interface
27
+ // This is a stable class, and may not change except for emergencies. It
28
+ // is provided in stable builds.
29
+ // Create a new UUID object.
30
+ CZMQ_EXPORT zuuid_t *
31
+ zuuid_new (void);
32
+
33
+ // Create UUID object from supplied ZUUID_LEN-octet value.
34
+ CZMQ_EXPORT zuuid_t *
35
+ zuuid_new_from (const byte *source);
36
+
37
+ // Destroy a specified UUID object.
38
+ CZMQ_EXPORT void
39
+ zuuid_destroy (zuuid_t **self_p);
40
+
41
+ // Set UUID to new supplied ZUUID_LEN-octet value.
42
+ CZMQ_EXPORT void
43
+ zuuid_set (zuuid_t *self, const byte *source);
44
+
45
+ // Set UUID to new supplied string value skipping '-' and '{' '}'
46
+ // optional delimiters. Return 0 if OK, else returns -1.
47
+ CZMQ_EXPORT int
48
+ zuuid_set_str (zuuid_t *self, const char *source);
49
+
50
+ // Return UUID binary data.
51
+ CZMQ_EXPORT const byte *
52
+ zuuid_data (zuuid_t *self);
53
+
54
+ // Return UUID binary size
55
+ CZMQ_EXPORT size_t
56
+ zuuid_size (zuuid_t *self);
57
+
58
+ // Returns UUID as string
59
+ CZMQ_EXPORT const char *
60
+ zuuid_str (zuuid_t *self);
61
+
62
+ // Return UUID in the canonical string format: 8-4-4-4-12, in lower
63
+ // case. Caller does not modify or free returned value. See
64
+ // http://en.wikipedia.org/wiki/Universally_unique_identifier
65
+ CZMQ_EXPORT const char *
66
+ zuuid_str_canonical (zuuid_t *self);
67
+
68
+ // Store UUID blob in target array
69
+ CZMQ_EXPORT void
70
+ zuuid_export (zuuid_t *self, byte *target);
71
+
72
+ // Check if UUID is same as supplied value
73
+ CZMQ_EXPORT bool
74
+ zuuid_eq (zuuid_t *self, const byte *compare);
75
+
76
+ // Check if UUID is different from supplied value
77
+ CZMQ_EXPORT bool
78
+ zuuid_neq (zuuid_t *self, const byte *compare);
79
+
80
+ // Make copy of UUID object; if uuid is null, or memory was exhausted,
81
+ // returns null.
82
+ CZMQ_EXPORT zuuid_t *
83
+ zuuid_dup (zuuid_t *self);
84
+
85
+ // Self test of this class.
86
+ CZMQ_EXPORT void
87
+ zuuid_test (bool verbose);
88
+
89
+ // @end
90
+
91
+
92
+ #ifdef __cplusplus
93
+ }
94
+ #endif
95
+
96
+ #endif
Binary file
Binary file
Binary file
@@ -0,0 +1,23 @@
1
+ ################################################################################
2
+ # THIS FILE IS 100% GENERATED BY ZPROJECT; DO NOT EDIT EXCEPT EXPERIMENTALLY #
3
+ # Read the zproject/README.md for information about making permanent changes. #
4
+ ################################################################################
5
+
6
+ prefix=/czmq-ffi-gen/vendor/local
7
+ exec_prefix=${prefix}
8
+ libdir=${prefix}/lib
9
+ includedir=${prefix}/include
10
+
11
+ Name: libczmq
12
+ Description: The high-level C binding for 0MQ
13
+ Version: 3.0.3
14
+
15
+ Requires:libzmq
16
+
17
+ Libs: -L${libdir} -lczmq
18
+ Cflags: -I${includedir} -DCZMQ_BUILD_DRAFT_API=1
19
+
20
+ ################################################################################
21
+ # THIS FILE IS 100% GENERATED BY ZPROJECT; DO NOT EDIT EXCEPT EXPERIMENTALLY #
22
+ # Read the zproject/README.md for information about making permanent changes. #
23
+ ################################################################################
@@ -0,0 +1,11 @@
1
+ prefix=/czmq-ffi-gen/vendor/local
2
+ exec_prefix=${prefix}
3
+ libdir=${prefix}/lib
4
+ includedir=${prefix}/include
5
+
6
+ Name: libzmq
7
+ Description: 0MQ c++ library
8
+ Version: 4.2.0
9
+ Libs: -L${libdir} -lzmq
10
+ Libs.private: -lstdc++
11
+ Cflags: -I${includedir} -DZMQ_BUILD_DRAFT_API=1
@@ -0,0 +1,147 @@
1
+ Corporate Contributors
2
+ ======================
3
+
4
+ Copyright (c) 2007-2014 iMatix Corporation
5
+ Copyright (c) 2009-2011 250bpm s.r.o.
6
+ Copyright (c) 2010-2011 Miru Limited
7
+ Copyright (c) 2011 VMware, Inc.
8
+ Copyright (c) 2012 Spotify AB
9
+ Copyright (c) 2013 Ericsson AB
10
+ Copyright (c) 2014 AppDynamics Inc.
11
+
12
+ Individual Contributors
13
+ =======================
14
+
15
+ AJ Lewis
16
+ Alexej Lotz
17
+ Andrew Thompson
18
+ André Caron
19
+ Asko Kauppi
20
+ Attila Mark
21
+ Barak Amar
22
+ Ben Gray
23
+ Bernd Melchers
24
+ Bernd Prager
25
+ Bob Beaty
26
+ Brandon Carpenter
27
+ Brett Cameron
28
+ Brian Buchanan
29
+ Burak Arslan
30
+ Carl Clemens
31
+ Chia-liang Kao
32
+ Chris Busbey
33
+ Chris Rempel
34
+ Chris Wong
35
+ Christian Gudrian
36
+ Christian Kamm
37
+ Chuck Remes
38
+ Conrad D. Steenberg
39
+ Constantin Rack
40
+ Daniel J. Bernstein
41
+ Dhammika Pathirana
42
+ Dhruva Krishnamurthy
43
+ Dirk O. Kaar
44
+ Doron Somech
45
+ Douglas Creager
46
+ Drew Crawford
47
+ Erich Heine
48
+ Erik Hugne
49
+ Erik Rigtorp
50
+ Fabien Ninoles
51
+ Frank Denis
52
+ George Neill
53
+ Gerard Toonstra
54
+ Ghislain Putois
55
+ Gonzalo Diethelm
56
+ Guido Goldstein
57
+ Hardeep Singh
58
+ Hiten Pandya
59
+ Ian Barber
60
+ Ilja Golshtein
61
+ Ilya Kulakov
62
+ Ivo Danihelka
63
+ Jacob Rideout
64
+ Joe Thornber
65
+ Jon Dyte
66
+ Kamil Shakirov
67
+ Ken Steele
68
+ Kouhei Sutou
69
+ Laurent Alebarde
70
+ Leonardo J. Consoni
71
+ Lourens Naudé
72
+ Luca Boccassi
73
+ Marc Rossi
74
+ Mark Barbisan
75
+ Martin Hurton
76
+ Martin Lucina
77
+ Martin Pales
78
+ Martin Sustrik
79
+ Matus Hamorsky
80
+ Max Wolf
81
+ McClain Looney
82
+ Michael Compton
83
+ Mika Fischer
84
+ Mikael Helbo Kjaer
85
+ Mike Gatny
86
+ Mikko Koppanen
87
+ Min Ragan-Kelley
88
+ Neale Ferguson
89
+ Nir Soffer
90
+ Osiris Pedroso
91
+ Paul Betts
92
+ Paul Colomiets
93
+ Pavel Gushcha
94
+ Pavol Malosek
95
+ Perry Kundert
96
+ Peter Bourgon
97
+ Philip Kovacs
98
+ Pieter Hintjens
99
+ Piotr Trojanek
100
+ Richard Newton
101
+ Rik van der Heijden
102
+ Robert G. Jakabosky
103
+ Sebastian Otaegui
104
+ Stefan Radomski
105
+ Steven McCoy
106
+ Stuart Webster
107
+ Tamara Kustarova
108
+ Taras Shpot
109
+ Tero Marttila
110
+ Terry Wilson
111
+ Thijs Terlouw
112
+ Thomas Rodgers
113
+ Tim Mossbarger
114
+ Toralf Wittner
115
+ Tore Halvorsen
116
+ Trevor Bernard
117
+ Vitaly Mayatskikh
118
+
119
+ Credits
120
+ =======
121
+
122
+ Aamir Mohammad
123
+ Adrian von Bidder
124
+ Aleksey Yeschenko
125
+ Alessio Spadaro
126
+ Alexander Majorov
127
+ Anh Vu
128
+ Bernd Schumacher
129
+ Brian Granger
130
+ Carsten Dinkelmann
131
+ David Bahi
132
+ Dirk Eddelbuettel
133
+ Evgueny Khartchenko
134
+ Frank Vanden Berghen
135
+ Ian Barber
136
+ John Apps
137
+ Markus Fischer
138
+ Matt Muggeridge
139
+ Michael Santy
140
+ Oleg Sevostyanov
141
+ Paulo Henrique Silva
142
+ Peter Busser
143
+ Peter Lemenkov
144
+ Robert Zhang
145
+ Toralf Wittner
146
+ Zed Shaw
147
+
@@ -0,0 +1,181 @@
1
+ GNU LESSER GENERAL PUBLIC LICENSE
2
+ Version 3, 29 June 2007
3
+
4
+ Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
5
+ Everyone is permitted to copy and distribute verbatim copies
6
+ of this license document, but changing it is not allowed.
7
+
8
+
9
+ This version of the GNU Lesser General Public License incorporates
10
+ the terms and conditions of version 3 of the GNU General Public
11
+ License, supplemented by the additional permissions listed below.
12
+
13
+ 0. Additional Definitions.
14
+
15
+ As used herein, "this License" refers to version 3 of the GNU Lesser
16
+ General Public License, and the "GNU GPL" refers to version 3 of the GNU
17
+ General Public License.
18
+
19
+ "The Library" refers to a covered work governed by this License,
20
+ other than an Application or a Combined Work as defined below.
21
+
22
+ An "Application" is any work that makes use of an interface provided
23
+ by the Library, but which is not otherwise based on the Library.
24
+ Defining a subclass of a class defined by the Library is deemed a mode
25
+ of using an interface provided by the Library.
26
+
27
+ A "Combined Work" is a work produced by combining or linking an
28
+ Application with the Library. The particular version of the Library
29
+ with which the Combined Work was made is also called the "Linked
30
+ Version".
31
+
32
+ The "Minimal Corresponding Source" for a Combined Work means the
33
+ Corresponding Source for the Combined Work, excluding any source code
34
+ for portions of the Combined Work that, considered in isolation, are
35
+ based on the Application, and not on the Linked Version.
36
+
37
+ The "Corresponding Application Code" for a Combined Work means the
38
+ object code and/or source code for the Application, including any data
39
+ and utility programs needed for reproducing the Combined Work from the
40
+ Application, but excluding the System Libraries of the Combined Work.
41
+
42
+ 1. Exception to Section 3 of the GNU GPL.
43
+
44
+ You may convey a covered work under sections 3 and 4 of this License
45
+ without being bound by section 3 of the GNU GPL.
46
+
47
+ 2. Conveying Modified Versions.
48
+
49
+ If you modify a copy of the Library, and, in your modifications, a
50
+ facility refers to a function or data to be supplied by an Application
51
+ that uses the facility (other than as an argument passed when the
52
+ facility is invoked), then you may convey a copy of the modified
53
+ version:
54
+
55
+ a) under this License, provided that you make a good faith effort to
56
+ ensure that, in the event an Application does not supply the
57
+ function or data, the facility still operates, and performs
58
+ whatever part of its purpose remains meaningful, or
59
+
60
+ b) under the GNU GPL, with none of the additional permissions of
61
+ this License applicable to that copy.
62
+
63
+ 3. Object Code Incorporating Material from Library Header Files.
64
+
65
+ The object code form of an Application may incorporate material from
66
+ a header file that is part of the Library. You may convey such object
67
+ code under terms of your choice, provided that, if the incorporated
68
+ material is not limited to numerical parameters, data structure
69
+ layouts and accessors, or small macros, inline functions and templates
70
+ (ten or fewer lines in length), you do both of the following:
71
+
72
+ a) Give prominent notice with each copy of the object code that the
73
+ Library is used in it and that the Library and its use are
74
+ covered by this License.
75
+
76
+ b) Accompany the object code with a copy of the GNU GPL and this license
77
+ document.
78
+
79
+ 4. Combined Works.
80
+
81
+ You may convey a Combined Work under terms of your choice that,
82
+ taken together, effectively do not restrict modification of the
83
+ portions of the Library contained in the Combined Work and reverse
84
+ engineering for debugging such modifications, if you also do each of
85
+ the following:
86
+
87
+ a) Give prominent notice with each copy of the Combined Work that
88
+ the Library is used in it and that the Library and its use are
89
+ covered by this License.
90
+
91
+ b) Accompany the Combined Work with a copy of the GNU GPL and this license
92
+ document.
93
+
94
+ c) For a Combined Work that displays copyright notices during
95
+ execution, include the copyright notice for the Library among
96
+ these notices, as well as a reference directing the user to the
97
+ copies of the GNU GPL and this license document.
98
+
99
+ d) Do one of the following:
100
+
101
+ 0) Convey the Minimal Corresponding Source under the terms of this
102
+ License, and the Corresponding Application Code in a form
103
+ suitable for, and under terms that permit, the user to
104
+ recombine or relink the Application with a modified version of
105
+ the Linked Version to produce a modified Combined Work, in the
106
+ manner specified by section 6 of the GNU GPL for conveying
107
+ Corresponding Source.
108
+
109
+ 1) Use a suitable shared library mechanism for linking with the
110
+ Library. A suitable mechanism is one that (a) uses at run time
111
+ a copy of the Library already present on the user's computer
112
+ system, and (b) will operate properly with a modified version
113
+ of the Library that is interface-compatible with the Linked
114
+ Version.
115
+
116
+ e) Provide Installation Information, but only if you would otherwise
117
+ be required to provide such information under section 6 of the
118
+ GNU GPL, and only to the extent that such information is
119
+ necessary to install and execute a modified version of the
120
+ Combined Work produced by recombining or relinking the
121
+ Application with a modified version of the Linked Version. (If
122
+ you use option 4d0, the Installation Information must accompany
123
+ the Minimal Corresponding Source and Corresponding Application
124
+ Code. If you use option 4d1, you must provide the Installation
125
+ Information in the manner specified by section 6 of the GNU GPL
126
+ for conveying Corresponding Source.)
127
+
128
+ 5. Combined Libraries.
129
+
130
+ You may place library facilities that are a work based on the
131
+ Library side by side in a single library together with other library
132
+ facilities that are not Applications and are not covered by this
133
+ License, and convey such a combined library under terms of your
134
+ choice, if you do both of the following:
135
+
136
+ a) Accompany the combined library with a copy of the same work based
137
+ on the Library, uncombined with any other library facilities,
138
+ conveyed under the terms of this License.
139
+
140
+ b) Give prominent notice with the combined library that part of it
141
+ is a work based on the Library, and explaining where to find the
142
+ accompanying uncombined form of the same work.
143
+
144
+ 6. Revised Versions of the GNU Lesser General Public License.
145
+
146
+ The Free Software Foundation may publish revised and/or new versions
147
+ of the GNU Lesser General Public License from time to time. Such new
148
+ versions will be similar in spirit to the present version, but may
149
+ differ in detail to address new problems or concerns.
150
+
151
+ Each version is given a distinguishing version number. If the
152
+ Library as you received it specifies that a certain numbered version
153
+ of the GNU Lesser General Public License "or any later version"
154
+ applies to it, you have the option of following the terms and
155
+ conditions either of that published version or of any later version
156
+ published by the Free Software Foundation. If the Library as you
157
+ received it does not specify a version number of the GNU Lesser
158
+ General Public License, you may choose any version of the GNU Lesser
159
+ General Public License ever published by the Free Software Foundation.
160
+
161
+ If the Library as you received it specifies that a proxy can decide
162
+ whether future versions of the GNU Lesser General Public License shall
163
+ apply, that proxy's public statement of acceptance of any version is
164
+ permanent authorization for you to choose that version for the
165
+ Library.
166
+
167
+ --------------------------------------------------------------------------------
168
+
169
+ SPECIAL EXCEPTION GRANTED BY COPYRIGHT HOLDERS
170
+
171
+ As a special exception, copyright holders give you permission to link this
172
+ library with independent modules to produce an executable, regardless of
173
+ the license terms of these independent modules, and to copy and distribute
174
+ the resulting executable under terms of your choice, provided that you also
175
+ meet, for each linked independent module, the terms and conditions of
176
+ the license of that module. An independent module is a module which is not
177
+ derived from or based on this library. If you modify this library, you must
178
+ extend this exception to your version of the library.
179
+
180
+ Note: this exception relieves you of any obligations under sections 4 and 5
181
+ of this license, and section 6 of the GNU General Public License.