1.1 --- a/gmyth-stream/gmemcoder/src/gmencoder.c Wed Aug 29 10:00:25 2007 +0100
1.2 +++ b/gmyth-stream/gmemcoder/src/gmencoder.c Wed Aug 29 14:29:24 2007 +0100
1.3 @@ -866,7 +866,6 @@
1.4
1.5 GstElement *bsrc = NULL;
1.6 GstElement *src = NULL;
1.7 - GstElement *queue = NULL;
1.8 GstElement *aqueue = NULL;
1.9 GstElement *vqueue = NULL;
1.10 GstElement *decode = NULL;
1.11 @@ -888,11 +887,10 @@
1.12 if (src == NULL)
1.13 goto error;
1.14
1.15 - decode = gst_element_factory_make("decodebin", "decode");
1.16 + decode = gst_element_factory_make("decodebin2", "decode");
1.17 if (decode == NULL)
1.18 goto error;
1.19
1.20 - queue = gst_element_factory_make("queue", "queue_src");
1.21 aqueue = gst_element_factory_make("queue", "aqueue");
1.22 if (aqueue == NULL)
1.23 goto error;
1.24 @@ -901,9 +899,9 @@
1.25 if (vqueue == NULL)
1.26 goto error;
1.27
1.28 - gst_bin_add_many(GST_BIN(bsrc), src, queue, decode, aqueue, vqueue,
1.29 + gst_bin_add_many(GST_BIN(bsrc), src, decode, aqueue, vqueue,
1.30 NULL);
1.31 - gst_element_link_many(src, queue, decode, NULL);
1.32 + gst_element_link (src, decode);
1.33
1.34 g_signal_connect(G_OBJECT(decode),
1.35 "new-decoded-pad",
2.1 --- a/gmyth-stream/libgnomevfs2/AUTHORS Wed Aug 29 10:00:25 2007 +0100
2.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
2.3 @@ -1,2 +0,0 @@
2.4 -Artur Duque de Souza <artur.souza@indt.org.br>
2.5 -Renato Filho <>
3.1 --- a/gmyth-stream/libgnomevfs2/COPYING Wed Aug 29 10:00:25 2007 +0100
3.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
3.3 @@ -1,504 +0,0 @@
3.4 - GNU LESSER GENERAL PUBLIC LICENSE
3.5 - Version 2.1, February 1999
3.6 -
3.7 - Copyright (C) 1991, 1999 Free Software Foundation, Inc.
3.8 - 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
3.9 - Everyone is permitted to copy and distribute verbatim copies
3.10 - of this license document, but changing it is not allowed.
3.11 -
3.12 -[This is the first released version of the Lesser GPL. It also counts
3.13 - as the successor of the GNU Library Public License, version 2, hence
3.14 - the version number 2.1.]
3.15 -
3.16 - Preamble
3.17 -
3.18 - The licenses for most software are designed to take away your
3.19 -freedom to share and change it. By contrast, the GNU General Public
3.20 -Licenses are intended to guarantee your freedom to share and change
3.21 -free software--to make sure the software is free for all its users.
3.22 -
3.23 - This license, the Lesser General Public License, applies to some
3.24 -specially designated software packages--typically libraries--of the
3.25 -Free Software Foundation and other authors who decide to use it. You
3.26 -can use it too, but we suggest you first think carefully about whether
3.27 -this license or the ordinary General Public License is the better
3.28 -strategy to use in any particular case, based on the explanations below.
3.29 -
3.30 - When we speak of free software, we are referring to freedom of use,
3.31 -not price. Our General Public Licenses are designed to make sure that
3.32 -you have the freedom to distribute copies of free software (and charge
3.33 -for this service if you wish); that you receive source code or can get
3.34 -it if you want it; that you can change the software and use pieces of
3.35 -it in new free programs; and that you are informed that you can do
3.36 -these things.
3.37 -
3.38 - To protect your rights, we need to make restrictions that forbid
3.39 -distributors to deny you these rights or to ask you to surrender these
3.40 -rights. These restrictions translate to certain responsibilities for
3.41 -you if you distribute copies of the library or if you modify it.
3.42 -
3.43 - For example, if you distribute copies of the library, whether gratis
3.44 -or for a fee, you must give the recipients all the rights that we gave
3.45 -you. You must make sure that they, too, receive or can get the source
3.46 -code. If you link other code with the library, you must provide
3.47 -complete object files to the recipients, so that they can relink them
3.48 -with the library after making changes to the library and recompiling
3.49 -it. And you must show them these terms so they know their rights.
3.50 -
3.51 - We protect your rights with a two-step method: (1) we copyright the
3.52 -library, and (2) we offer you this license, which gives you legal
3.53 -permission to copy, distribute and/or modify the library.
3.54 -
3.55 - To protect each distributor, we want to make it very clear that
3.56 -there is no warranty for the free library. Also, if the library is
3.57 -modified by someone else and passed on, the recipients should know
3.58 -that what they have is not the original version, so that the original
3.59 -author's reputation will not be affected by problems that might be
3.60 -introduced by others.
3.61 -
3.62 - Finally, software patents pose a constant threat to the existence of
3.63 -any free program. We wish to make sure that a company cannot
3.64 -effectively restrict the users of a free program by obtaining a
3.65 -restrictive license from a patent holder. Therefore, we insist that
3.66 -any patent license obtained for a version of the library must be
3.67 -consistent with the full freedom of use specified in this license.
3.68 -
3.69 - Most GNU software, including some libraries, is covered by the
3.70 -ordinary GNU General Public License. This license, the GNU Lesser
3.71 -General Public License, applies to certain designated libraries, and
3.72 -is quite different from the ordinary General Public License. We use
3.73 -this license for certain libraries in order to permit linking those
3.74 -libraries into non-free programs.
3.75 -
3.76 - When a program is linked with a library, whether statically or using
3.77 -a shared library, the combination of the two is legally speaking a
3.78 -combined work, a derivative of the original library. The ordinary
3.79 -General Public License therefore permits such linking only if the
3.80 -entire combination fits its criteria of freedom. The Lesser General
3.81 -Public License permits more lax criteria for linking other code with
3.82 -the library.
3.83 -
3.84 - We call this license the "Lesser" General Public License because it
3.85 -does Less to protect the user's freedom than the ordinary General
3.86 -Public License. It also provides other free software developers Less
3.87 -of an advantage over competing non-free programs. These disadvantages
3.88 -are the reason we use the ordinary General Public License for many
3.89 -libraries. However, the Lesser license provides advantages in certain
3.90 -special circumstances.
3.91 -
3.92 - For example, on rare occasions, there may be a special need to
3.93 -encourage the widest possible use of a certain library, so that it becomes
3.94 -a de-facto standard. To achieve this, non-free programs must be
3.95 -allowed to use the library. A more frequent case is that a free
3.96 -library does the same job as widely used non-free libraries. In this
3.97 -case, there is little to gain by limiting the free library to free
3.98 -software only, so we use the Lesser General Public License.
3.99 -
3.100 - In other cases, permission to use a particular library in non-free
3.101 -programs enables a greater number of people to use a large body of
3.102 -free software. For example, permission to use the GNU C Library in
3.103 -non-free programs enables many more people to use the whole GNU
3.104 -operating system, as well as its variant, the GNU/Linux operating
3.105 -system.
3.106 -
3.107 - Although the Lesser General Public License is Less protective of the
3.108 -users' freedom, it does ensure that the user of a program that is
3.109 -linked with the Library has the freedom and the wherewithal to run
3.110 -that program using a modified version of the Library.
3.111 -
3.112 - The precise terms and conditions for copying, distribution and
3.113 -modification follow. Pay close attention to the difference between a
3.114 -"work based on the library" and a "work that uses the library". The
3.115 -former contains code derived from the library, whereas the latter must
3.116 -be combined with the library in order to run.
3.117 -
3.118 - GNU LESSER GENERAL PUBLIC LICENSE
3.119 - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
3.120 -
3.121 - 0. This License Agreement applies to any software library or other
3.122 -program which contains a notice placed by the copyright holder or
3.123 -other authorized party saying it may be distributed under the terms of
3.124 -this Lesser General Public License (also called "this License").
3.125 -Each licensee is addressed as "you".
3.126 -
3.127 - A "library" means a collection of software functions and/or data
3.128 -prepared so as to be conveniently linked with application programs
3.129 -(which use some of those functions and data) to form executables.
3.130 -
3.131 - The "Library", below, refers to any such software library or work
3.132 -which has been distributed under these terms. A "work based on the
3.133 -Library" means either the Library or any derivative work under
3.134 -copyright law: that is to say, a work containing the Library or a
3.135 -portion of it, either verbatim or with modifications and/or translated
3.136 -straightforwardly into another language. (Hereinafter, translation is
3.137 -included without limitation in the term "modification".)
3.138 -
3.139 - "Source code" for a work means the preferred form of the work for
3.140 -making modifications to it. For a library, complete source code means
3.141 -all the source code for all modules it contains, plus any associated
3.142 -interface definition files, plus the scripts used to control compilation
3.143 -and installation of the library.
3.144 -
3.145 - Activities other than copying, distribution and modification are not
3.146 -covered by this License; they are outside its scope. The act of
3.147 -running a program using the Library is not restricted, and output from
3.148 -such a program is covered only if its contents constitute a work based
3.149 -on the Library (independent of the use of the Library in a tool for
3.150 -writing it). Whether that is true depends on what the Library does
3.151 -and what the program that uses the Library does.
3.152 -
3.153 - 1. You may copy and distribute verbatim copies of the Library's
3.154 -complete source code as you receive it, in any medium, provided that
3.155 -you conspicuously and appropriately publish on each copy an
3.156 -appropriate copyright notice and disclaimer of warranty; keep intact
3.157 -all the notices that refer to this License and to the absence of any
3.158 -warranty; and distribute a copy of this License along with the
3.159 -Library.
3.160 -
3.161 - You may charge a fee for the physical act of transferring a copy,
3.162 -and you may at your option offer warranty protection in exchange for a
3.163 -fee.
3.164 -
3.165 - 2. You may modify your copy or copies of the Library or any portion
3.166 -of it, thus forming a work based on the Library, and copy and
3.167 -distribute such modifications or work under the terms of Section 1
3.168 -above, provided that you also meet all of these conditions:
3.169 -
3.170 - a) The modified work must itself be a software library.
3.171 -
3.172 - b) You must cause the files modified to carry prominent notices
3.173 - stating that you changed the files and the date of any change.
3.174 -
3.175 - c) You must cause the whole of the work to be licensed at no
3.176 - charge to all third parties under the terms of this License.
3.177 -
3.178 - d) If a facility in the modified Library refers to a function or a
3.179 - table of data to be supplied by an application program that uses
3.180 - the facility, other than as an argument passed when the facility
3.181 - is invoked, then you must make a good faith effort to ensure that,
3.182 - in the event an application does not supply such function or
3.183 - table, the facility still operates, and performs whatever part of
3.184 - its purpose remains meaningful.
3.185 -
3.186 - (For example, a function in a library to compute square roots has
3.187 - a purpose that is entirely well-defined independent of the
3.188 - application. Therefore, Subsection 2d requires that any
3.189 - application-supplied function or table used by this function must
3.190 - be optional: if the application does not supply it, the square
3.191 - root function must still compute square roots.)
3.192 -
3.193 -These requirements apply to the modified work as a whole. If
3.194 -identifiable sections of that work are not derived from the Library,
3.195 -and can be reasonably considered independent and separate works in
3.196 -themselves, then this License, and its terms, do not apply to those
3.197 -sections when you distribute them as separate works. But when you
3.198 -distribute the same sections as part of a whole which is a work based
3.199 -on the Library, the distribution of the whole must be on the terms of
3.200 -this License, whose permissions for other licensees extend to the
3.201 -entire whole, and thus to each and every part regardless of who wrote
3.202 -it.
3.203 -
3.204 -Thus, it is not the intent of this section to claim rights or contest
3.205 -your rights to work written entirely by you; rather, the intent is to
3.206 -exercise the right to control the distribution of derivative or
3.207 -collective works based on the Library.
3.208 -
3.209 -In addition, mere aggregation of another work not based on the Library
3.210 -with the Library (or with a work based on the Library) on a volume of
3.211 -a storage or distribution medium does not bring the other work under
3.212 -the scope of this License.
3.213 -
3.214 - 3. You may opt to apply the terms of the ordinary GNU General Public
3.215 -License instead of this License to a given copy of the Library. To do
3.216 -this, you must alter all the notices that refer to this License, so
3.217 -that they refer to the ordinary GNU General Public License, version 2,
3.218 -instead of to this License. (If a newer version than version 2 of the
3.219 -ordinary GNU General Public License has appeared, then you can specify
3.220 -that version instead if you wish.) Do not make any other change in
3.221 -these notices.
3.222 -
3.223 - Once this change is made in a given copy, it is irreversible for
3.224 -that copy, so the ordinary GNU General Public License applies to all
3.225 -subsequent copies and derivative works made from that copy.
3.226 -
3.227 - This option is useful when you wish to copy part of the code of
3.228 -the Library into a program that is not a library.
3.229 -
3.230 - 4. You may copy and distribute the Library (or a portion or
3.231 -derivative of it, under Section 2) in object code or executable form
3.232 -under the terms of Sections 1 and 2 above provided that you accompany
3.233 -it with the complete corresponding machine-readable source code, which
3.234 -must be distributed under the terms of Sections 1 and 2 above on a
3.235 -medium customarily used for software interchange.
3.236 -
3.237 - If distribution of object code is made by offering access to copy
3.238 -from a designated place, then offering equivalent access to copy the
3.239 -source code from the same place satisfies the requirement to
3.240 -distribute the source code, even though third parties are not
3.241 -compelled to copy the source along with the object code.
3.242 -
3.243 - 5. A program that contains no derivative of any portion of the
3.244 -Library, but is designed to work with the Library by being compiled or
3.245 -linked with it, is called a "work that uses the Library". Such a
3.246 -work, in isolation, is not a derivative work of the Library, and
3.247 -therefore falls outside the scope of this License.
3.248 -
3.249 - However, linking a "work that uses the Library" with the Library
3.250 -creates an executable that is a derivative of the Library (because it
3.251 -contains portions of the Library), rather than a "work that uses the
3.252 -library". The executable is therefore covered by this License.
3.253 -Section 6 states terms for distribution of such executables.
3.254 -
3.255 - When a "work that uses the Library" uses material from a header file
3.256 -that is part of the Library, the object code for the work may be a
3.257 -derivative work of the Library even though the source code is not.
3.258 -Whether this is true is especially significant if the work can be
3.259 -linked without the Library, or if the work is itself a library. The
3.260 -threshold for this to be true is not precisely defined by law.
3.261 -
3.262 - If such an object file uses only numerical parameters, data
3.263 -structure layouts and accessors, and small macros and small inline
3.264 -functions (ten lines or less in length), then the use of the object
3.265 -file is unrestricted, regardless of whether it is legally a derivative
3.266 -work. (Executables containing this object code plus portions of the
3.267 -Library will still fall under Section 6.)
3.268 -
3.269 - Otherwise, if the work is a derivative of the Library, you may
3.270 -distribute the object code for the work under the terms of Section 6.
3.271 -Any executables containing that work also fall under Section 6,
3.272 -whether or not they are linked directly with the Library itself.
3.273 -
3.274 - 6. As an exception to the Sections above, you may also combine or
3.275 -link a "work that uses the Library" with the Library to produce a
3.276 -work containing portions of the Library, and distribute that work
3.277 -under terms of your choice, provided that the terms permit
3.278 -modification of the work for the customer's own use and reverse
3.279 -engineering for debugging such modifications.
3.280 -
3.281 - You must give prominent notice with each copy of the work that the
3.282 -Library is used in it and that the Library and its use are covered by
3.283 -this License. You must supply a copy of this License. If the work
3.284 -during execution displays copyright notices, you must include the
3.285 -copyright notice for the Library among them, as well as a reference
3.286 -directing the user to the copy of this License. Also, you must do one
3.287 -of these things:
3.288 -
3.289 - a) Accompany the work with the complete corresponding
3.290 - machine-readable source code for the Library including whatever
3.291 - changes were used in the work (which must be distributed under
3.292 - Sections 1 and 2 above); and, if the work is an executable linked
3.293 - with the Library, with the complete machine-readable "work that
3.294 - uses the Library", as object code and/or source code, so that the
3.295 - user can modify the Library and then relink to produce a modified
3.296 - executable containing the modified Library. (It is understood
3.297 - that the user who changes the contents of definitions files in the
3.298 - Library will not necessarily be able to recompile the application
3.299 - to use the modified definitions.)
3.300 -
3.301 - b) Use a suitable shared library mechanism for linking with the
3.302 - Library. A suitable mechanism is one that (1) uses at run time a
3.303 - copy of the library already present on the user's computer system,
3.304 - rather than copying library functions into the executable, and (2)
3.305 - will operate properly with a modified version of the library, if
3.306 - the user installs one, as long as the modified version is
3.307 - interface-compatible with the version that the work was made with.
3.308 -
3.309 - c) Accompany the work with a written offer, valid for at
3.310 - least three years, to give the same user the materials
3.311 - specified in Subsection 6a, above, for a charge no more
3.312 - than the cost of performing this distribution.
3.313 -
3.314 - d) If distribution of the work is made by offering access to copy
3.315 - from a designated place, offer equivalent access to copy the above
3.316 - specified materials from the same place.
3.317 -
3.318 - e) Verify that the user has already received a copy of these
3.319 - materials or that you have already sent this user a copy.
3.320 -
3.321 - For an executable, the required form of the "work that uses the
3.322 -Library" must include any data and utility programs needed for
3.323 -reproducing the executable from it. However, as a special exception,
3.324 -the materials to be distributed need not include anything that is
3.325 -normally distributed (in either source or binary form) with the major
3.326 -components (compiler, kernel, and so on) of the operating system on
3.327 -which the executable runs, unless that component itself accompanies
3.328 -the executable.
3.329 -
3.330 - It may happen that this requirement contradicts the license
3.331 -restrictions of other proprietary libraries that do not normally
3.332 -accompany the operating system. Such a contradiction means you cannot
3.333 -use both them and the Library together in an executable that you
3.334 -distribute.
3.335 -
3.336 - 7. You may place library facilities that are a work based on the
3.337 -Library side-by-side in a single library together with other library
3.338 -facilities not covered by this License, and distribute such a combined
3.339 -library, provided that the separate distribution of the work based on
3.340 -the Library and of the other library facilities is otherwise
3.341 -permitted, and provided that you do these two things:
3.342 -
3.343 - a) Accompany the combined library with a copy of the same work
3.344 - based on the Library, uncombined with any other library
3.345 - facilities. This must be distributed under the terms of the
3.346 - Sections above.
3.347 -
3.348 - b) Give prominent notice with the combined library of the fact
3.349 - that part of it is a work based on the Library, and explaining
3.350 - where to find the accompanying uncombined form of the same work.
3.351 -
3.352 - 8. You may not copy, modify, sublicense, link with, or distribute
3.353 -the Library except as expressly provided under this License. Any
3.354 -attempt otherwise to copy, modify, sublicense, link with, or
3.355 -distribute the Library is void, and will automatically terminate your
3.356 -rights under this License. However, parties who have received copies,
3.357 -or rights, from you under this License will not have their licenses
3.358 -terminated so long as such parties remain in full compliance.
3.359 -
3.360 - 9. You are not required to accept this License, since you have not
3.361 -signed it. However, nothing else grants you permission to modify or
3.362 -distribute the Library or its derivative works. These actions are
3.363 -prohibited by law if you do not accept this License. Therefore, by
3.364 -modifying or distributing the Library (or any work based on the
3.365 -Library), you indicate your acceptance of this License to do so, and
3.366 -all its terms and conditions for copying, distributing or modifying
3.367 -the Library or works based on it.
3.368 -
3.369 - 10. Each time you redistribute the Library (or any work based on the
3.370 -Library), the recipient automatically receives a license from the
3.371 -original licensor to copy, distribute, link with or modify the Library
3.372 -subject to these terms and conditions. You may not impose any further
3.373 -restrictions on the recipients' exercise of the rights granted herein.
3.374 -You are not responsible for enforcing compliance by third parties with
3.375 -this License.
3.376 -
3.377 - 11. If, as a consequence of a court judgment or allegation of patent
3.378 -infringement or for any other reason (not limited to patent issues),
3.379 -conditions are imposed on you (whether by court order, agreement or
3.380 -otherwise) that contradict the conditions of this License, they do not
3.381 -excuse you from the conditions of this License. If you cannot
3.382 -distribute so as to satisfy simultaneously your obligations under this
3.383 -License and any other pertinent obligations, then as a consequence you
3.384 -may not distribute the Library at all. For example, if a patent
3.385 -license would not permit royalty-free redistribution of the Library by
3.386 -all those who receive copies directly or indirectly through you, then
3.387 -the only way you could satisfy both it and this License would be to
3.388 -refrain entirely from distribution of the Library.
3.389 -
3.390 -If any portion of this section is held invalid or unenforceable under any
3.391 -particular circumstance, the balance of the section is intended to apply,
3.392 -and the section as a whole is intended to apply in other circumstances.
3.393 -
3.394 -It is not the purpose of this section to induce you to infringe any
3.395 -patents or other property right claims or to contest validity of any
3.396 -such claims; this section has the sole purpose of protecting the
3.397 -integrity of the free software distribution system which is
3.398 -implemented by public license practices. Many people have made
3.399 -generous contributions to the wide range of software distributed
3.400 -through that system in reliance on consistent application of that
3.401 -system; it is up to the author/donor to decide if he or she is willing
3.402 -to distribute software through any other system and a licensee cannot
3.403 -impose that choice.
3.404 -
3.405 -This section is intended to make thoroughly clear what is believed to
3.406 -be a consequence of the rest of this License.
3.407 -
3.408 - 12. If the distribution and/or use of the Library is restricted in
3.409 -certain countries either by patents or by copyrighted interfaces, the
3.410 -original copyright holder who places the Library under this License may add
3.411 -an explicit geographical distribution limitation excluding those countries,
3.412 -so that distribution is permitted only in or among countries not thus
3.413 -excluded. In such case, this License incorporates the limitation as if
3.414 -written in the body of this License.
3.415 -
3.416 - 13. The Free Software Foundation may publish revised and/or new
3.417 -versions of the Lesser General Public License from time to time.
3.418 -Such new versions will be similar in spirit to the present version,
3.419 -but may differ in detail to address new problems or concerns.
3.420 -
3.421 -Each version is given a distinguishing version number. If the Library
3.422 -specifies a version number of this License which applies to it and
3.423 -"any later version", you have the option of following the terms and
3.424 -conditions either of that version or of any later version published by
3.425 -the Free Software Foundation. If the Library does not specify a
3.426 -license version number, you may choose any version ever published by
3.427 -the Free Software Foundation.
3.428 -
3.429 - 14. If you wish to incorporate parts of the Library into other free
3.430 -programs whose distribution conditions are incompatible with these,
3.431 -write to the author to ask for permission. For software which is
3.432 -copyrighted by the Free Software Foundation, write to the Free
3.433 -Software Foundation; we sometimes make exceptions for this. Our
3.434 -decision will be guided by the two goals of preserving the free status
3.435 -of all derivatives of our free software and of promoting the sharing
3.436 -and reuse of software generally.
3.437 -
3.438 - NO WARRANTY
3.439 -
3.440 - 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
3.441 -WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
3.442 -EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
3.443 -OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
3.444 -KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
3.445 -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
3.446 -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
3.447 -LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
3.448 -THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
3.449 -
3.450 - 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
3.451 -WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
3.452 -AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
3.453 -FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
3.454 -CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
3.455 -LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
3.456 -RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
3.457 -FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
3.458 -SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
3.459 -DAMAGES.
3.460 -
3.461 - END OF TERMS AND CONDITIONS
3.462 -
3.463 - How to Apply These Terms to Your New Libraries
3.464 -
3.465 - If you develop a new library, and you want it to be of the greatest
3.466 -possible use to the public, we recommend making it free software that
3.467 -everyone can redistribute and change. You can do so by permitting
3.468 -redistribution under these terms (or, alternatively, under the terms of the
3.469 -ordinary General Public License).
3.470 -
3.471 - To apply these terms, attach the following notices to the library. It is
3.472 -safest to attach them to the start of each source file to most effectively
3.473 -convey the exclusion of warranty; and each file should have at least the
3.474 -"copyright" line and a pointer to where the full notice is found.
3.475 -
3.476 - <one line to give the library's name and a brief idea of what it does.>
3.477 - Copyright (C) <year> <name of author>
3.478 -
3.479 - This library is free software; you can redistribute it and/or
3.480 - modify it under the terms of the GNU Lesser General Public
3.481 - License as published by the Free Software Foundation; either
3.482 - version 2.1 of the License, or (at your option) any later version.
3.483 -
3.484 - This library is distributed in the hope that it will be useful,
3.485 - but WITHOUT ANY WARRANTY; without even the implied warranty of
3.486 - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
3.487 - Lesser General Public License for more details.
3.488 -
3.489 - You should have received a copy of the GNU Lesser General Public
3.490 - License along with this library; if not, write to the Free Software
3.491 - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
3.492 -
3.493 -Also add information on how to contact you by electronic and paper mail.
3.494 -
3.495 -You should also get your employer (if you work as a programmer) or your
3.496 -school, if any, to sign a "copyright disclaimer" for the library, if
3.497 -necessary. Here is a sample; alter the names:
3.498 -
3.499 - Yoyodyne, Inc., hereby disclaims all copyright interest in the
3.500 - library `Frob' (a library for tweaking knobs) written by James Random Hacker.
3.501 -
3.502 - <signature of Ty Coon>, 1 April 1990
3.503 - Ty Coon, President of Vice
3.504 -
3.505 -That's all there is to it!
3.506 -
3.507 -
4.1 --- a/gmyth-stream/libgnomevfs2/INSTALL Wed Aug 29 10:00:25 2007 +0100
4.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
4.3 @@ -1,236 +0,0 @@
4.4 -Installation Instructions
4.5 -*************************
4.6 -
4.7 -Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005 Free
4.8 -Software Foundation, Inc.
4.9 -
4.10 -This file is free documentation; the Free Software Foundation gives
4.11 -unlimited permission to copy, distribute and modify it.
4.12 -
4.13 -Basic Installation
4.14 -==================
4.15 -
4.16 -These are generic installation instructions.
4.17 -
4.18 - The `configure' shell script attempts to guess correct values for
4.19 -various system-dependent variables used during compilation. It uses
4.20 -those values to create a `Makefile' in each directory of the package.
4.21 -It may also create one or more `.h' files containing system-dependent
4.22 -definitions. Finally, it creates a shell script `config.status' that
4.23 -you can run in the future to recreate the current configuration, and a
4.24 -file `config.log' containing compiler output (useful mainly for
4.25 -debugging `configure').
4.26 -
4.27 - It can also use an optional file (typically called `config.cache'
4.28 -and enabled with `--cache-file=config.cache' or simply `-C') that saves
4.29 -the results of its tests to speed up reconfiguring. (Caching is
4.30 -disabled by default to prevent problems with accidental use of stale
4.31 -cache files.)
4.32 -
4.33 - If you need to do unusual things to compile the package, please try
4.34 -to figure out how `configure' could check whether to do them, and mail
4.35 -diffs or instructions to the address given in the `README' so they can
4.36 -be considered for the next release. If you are using the cache, and at
4.37 -some point `config.cache' contains results you don't want to keep, you
4.38 -may remove or edit it.
4.39 -
4.40 - The file `configure.ac' (or `configure.in') is used to create
4.41 -`configure' by a program called `autoconf'. You only need
4.42 -`configure.ac' if you want to change it or regenerate `configure' using
4.43 -a newer version of `autoconf'.
4.44 -
4.45 -The simplest way to compile this package is:
4.46 -
4.47 - 1. `cd' to the directory containing the package's source code and type
4.48 - `./configure' to configure the package for your system. If you're
4.49 - using `csh' on an old version of System V, you might need to type
4.50 - `sh ./configure' instead to prevent `csh' from trying to execute
4.51 - `configure' itself.
4.52 -
4.53 - Running `configure' takes awhile. While running, it prints some
4.54 - messages telling which features it is checking for.
4.55 -
4.56 - 2. Type `make' to compile the package.
4.57 -
4.58 - 3. Optionally, type `make check' to run any self-tests that come with
4.59 - the package.
4.60 -
4.61 - 4. Type `make install' to install the programs and any data files and
4.62 - documentation.
4.63 -
4.64 - 5. You can remove the program binaries and object files from the
4.65 - source code directory by typing `make clean'. To also remove the
4.66 - files that `configure' created (so you can compile the package for
4.67 - a different kind of computer), type `make distclean'. There is
4.68 - also a `make maintainer-clean' target, but that is intended mainly
4.69 - for the package's developers. If you use it, you may have to get
4.70 - all sorts of other programs in order to regenerate files that came
4.71 - with the distribution.
4.72 -
4.73 -Compilers and Options
4.74 -=====================
4.75 -
4.76 -Some systems require unusual options for compilation or linking that the
4.77 -`configure' script does not know about. Run `./configure --help' for
4.78 -details on some of the pertinent environment variables.
4.79 -
4.80 - You can give `configure' initial values for configuration parameters
4.81 -by setting variables in the command line or in the environment. Here
4.82 -is an example:
4.83 -
4.84 - ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix
4.85 -
4.86 - *Note Defining Variables::, for more details.
4.87 -
4.88 -Compiling For Multiple Architectures
4.89 -====================================
4.90 -
4.91 -You can compile the package for more than one kind of computer at the
4.92 -same time, by placing the object files for each architecture in their
4.93 -own directory. To do this, you must use a version of `make' that
4.94 -supports the `VPATH' variable, such as GNU `make'. `cd' to the
4.95 -directory where you want the object files and executables to go and run
4.96 -the `configure' script. `configure' automatically checks for the
4.97 -source code in the directory that `configure' is in and in `..'.
4.98 -
4.99 - If you have to use a `make' that does not support the `VPATH'
4.100 -variable, you have to compile the package for one architecture at a
4.101 -time in the source code directory. After you have installed the
4.102 -package for one architecture, use `make distclean' before reconfiguring
4.103 -for another architecture.
4.104 -
4.105 -Installation Names
4.106 -==================
4.107 -
4.108 -By default, `make install' installs the package's commands under
4.109 -`/usr/local/bin', include files under `/usr/local/include', etc. You
4.110 -can specify an installation prefix other than `/usr/local' by giving
4.111 -`configure' the option `--prefix=PREFIX'.
4.112 -
4.113 - You can specify separate installation prefixes for
4.114 -architecture-specific files and architecture-independent files. If you
4.115 -pass the option `--exec-prefix=PREFIX' to `configure', the package uses
4.116 -PREFIX as the prefix for installing programs and libraries.
4.117 -Documentation and other data files still use the regular prefix.
4.118 -
4.119 - In addition, if you use an unusual directory layout you can give
4.120 -options like `--bindir=DIR' to specify different values for particular
4.121 -kinds of files. Run `configure --help' for a list of the directories
4.122 -you can set and what kinds of files go in them.
4.123 -
4.124 - If the package supports it, you can cause programs to be installed
4.125 -with an extra prefix or suffix on their names by giving `configure' the
4.126 -option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
4.127 -
4.128 -Optional Features
4.129 -=================
4.130 -
4.131 -Some packages pay attention to `--enable-FEATURE' options to
4.132 -`configure', where FEATURE indicates an optional part of the package.
4.133 -They may also pay attention to `--with-PACKAGE' options, where PACKAGE
4.134 -is something like `gnu-as' or `x' (for the X Window System). The
4.135 -`README' should mention any `--enable-' and `--with-' options that the
4.136 -package recognizes.
4.137 -
4.138 - For packages that use the X Window System, `configure' can usually
4.139 -find the X include and library files automatically, but if it doesn't,
4.140 -you can use the `configure' options `--x-includes=DIR' and
4.141 -`--x-libraries=DIR' to specify their locations.
4.142 -
4.143 -Specifying the System Type
4.144 -==========================
4.145 -
4.146 -There may be some features `configure' cannot figure out automatically,
4.147 -but needs to determine by the type of machine the package will run on.
4.148 -Usually, assuming the package is built to be run on the _same_
4.149 -architectures, `configure' can figure that out, but if it prints a
4.150 -message saying it cannot guess the machine type, give it the
4.151 -`--build=TYPE' option. TYPE can either be a short name for the system
4.152 -type, such as `sun4', or a canonical name which has the form:
4.153 -
4.154 - CPU-COMPANY-SYSTEM
4.155 -
4.156 -where SYSTEM can have one of these forms:
4.157 -
4.158 - OS KERNEL-OS
4.159 -
4.160 - See the file `config.sub' for the possible values of each field. If
4.161 -`config.sub' isn't included in this package, then this package doesn't
4.162 -need to know the machine type.
4.163 -
4.164 - If you are _building_ compiler tools for cross-compiling, you should
4.165 -use the option `--target=TYPE' to select the type of system they will
4.166 -produce code for.
4.167 -
4.168 - If you want to _use_ a cross compiler, that generates code for a
4.169 -platform different from the build platform, you should specify the
4.170 -"host" platform (i.e., that on which the generated programs will
4.171 -eventually be run) with `--host=TYPE'.
4.172 -
4.173 -Sharing Defaults
4.174 -================
4.175 -
4.176 -If you want to set default values for `configure' scripts to share, you
4.177 -can create a site shell script called `config.site' that gives default
4.178 -values for variables like `CC', `cache_file', and `prefix'.
4.179 -`configure' looks for `PREFIX/share/config.site' if it exists, then
4.180 -`PREFIX/etc/config.site' if it exists. Or, you can set the
4.181 -`CONFIG_SITE' environment variable to the location of the site script.
4.182 -A warning: not all `configure' scripts look for a site script.
4.183 -
4.184 -Defining Variables
4.185 -==================
4.186 -
4.187 -Variables not defined in a site shell script can be set in the
4.188 -environment passed to `configure'. However, some packages may run
4.189 -configure again during the build, and the customized values of these
4.190 -variables may be lost. In order to avoid this problem, you should set
4.191 -them in the `configure' command line, using `VAR=value'. For example:
4.192 -
4.193 - ./configure CC=/usr/local2/bin/gcc
4.194 -
4.195 -causes the specified `gcc' to be used as the C compiler (unless it is
4.196 -overridden in the site shell script). Here is a another example:
4.197 -
4.198 - /bin/bash ./configure CONFIG_SHELL=/bin/bash
4.199 -
4.200 -Here the `CONFIG_SHELL=/bin/bash' operand causes subsequent
4.201 -configuration-related scripts to be executed by `/bin/bash'.
4.202 -
4.203 -`configure' Invocation
4.204 -======================
4.205 -
4.206 -`configure' recognizes the following options to control how it operates.
4.207 -
4.208 -`--help'
4.209 -`-h'
4.210 - Print a summary of the options to `configure', and exit.
4.211 -
4.212 -`--version'
4.213 -`-V'
4.214 - Print the version of Autoconf used to generate the `configure'
4.215 - script, and exit.
4.216 -
4.217 -`--cache-file=FILE'
4.218 - Enable the cache: use and save the results of the tests in FILE,
4.219 - traditionally `config.cache'. FILE defaults to `/dev/null' to
4.220 - disable caching.
4.221 -
4.222 -`--config-cache'
4.223 -`-C'
4.224 - Alias for `--cache-file=config.cache'.
4.225 -
4.226 -`--quiet'
4.227 -`--silent'
4.228 -`-q'
4.229 - Do not print messages saying which checks are being made. To
4.230 - suppress all normal output, redirect it to `/dev/null' (any error
4.231 - messages will still be shown).
4.232 -
4.233 -`--srcdir=DIR'
4.234 - Look for the package's source code in directory DIR. Usually
4.235 - `configure' can determine that directory automatically.
4.236 -
4.237 -`configure' also accepts some other, not widely useful, options. Run
4.238 -`configure --help' for more details.
4.239 -
5.1 --- a/gmyth-stream/libgnomevfs2/Makefile.am Wed Aug 29 10:00:25 2007 +0100
5.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
5.3 @@ -1,5 +0,0 @@
5.4 -SUBDIRS = modules
5.5 -DIST_SUBDIRS = common m4 modules
5.6 -
5.7 -EXTRA_DIST = \
5.8 - autogen.sh
6.1 --- a/gmyth-stream/libgnomevfs2/README Wed Aug 29 10:00:25 2007 +0100
6.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
6.3 @@ -1,12 +0,0 @@
6.4 -URI: myth://host:port/filename
6.5 -
6.6 -or, when downloading LiveTV content...
6.7 -
6.8 -URI: myth://user:password@host:port/?dbname&channel=channel_num
6.9 -
6.10 -sample (remote .NUV file): gnomevfs-cat myth://127.0.0.1:7654/video.nuv
6.11 -
6.12 -sample (LiveTV): gnomevfs-cat 'myth://mythtv:mythtv@192.168.3.165:6543/livetv?channel=4'
6.13 -
6.14 -gst-launch-0.10 gnomevfssrc location='myth://192.168.3.165:6543/livetv?channel=444' ! nuvdemux name=d .audio_src ! queue ! alsasink d.video_src ! ffdec_mpeg4 ! xvimagesink
6.15 -
7.1 --- a/gmyth-stream/libgnomevfs2/autogen.sh Wed Aug 29 10:00:25 2007 +0100
7.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
7.3 @@ -1,99 +0,0 @@
7.4 -#!/bin/sh
7.5 -# Run this to generate all the initial makefiles, etc.
7.6 -
7.7 -DIE=0
7.8 -package=libgnomevfs2-mythtv
7.9 -srcfile=configure.ac
7.10 -
7.11 -# a quick cvs co if necessary to alleviate the pain - may remove this
7.12 -# when developers get a clue ;)
7.13 -if test ! -d common;
7.14 -then
7.15 - echo "+ getting common/ from cvs"
7.16 - cvs co common
7.17 -fi
7.18 -
7.19 -# source helper functions
7.20 -if test ! -f common/autogen-helper.sh;
7.21 -then
7.22 - echo There is something wrong with your source tree.
7.23 - echo You are missing common/autogen-helper.sh
7.24 - exit 1
7.25 -fi
7.26 -. common/autogen-helper.sh
7.27 -
7.28 -CONFIGURE_DEF_OPT='--enable-maintainer-mode'
7.29 -
7.30 -autogen_options $*
7.31 -
7.32 -echo -n "+ check for build tools"
7.33 -if test ! -z "$NOCHECK"; then echo " skipped"; else echo; fi
7.34 -version_check "autoconf" "$AUTOCONF autoconf autoconf-2.54 autoconf-2.53" \
7.35 - "ftp://ftp.gnu.org/pub/gnu/autoconf/" 2 53 || DIE=1
7.36 -version_check "automake" "$AUTOMAKE automake automake-1.9 automake-1.8 automake-1.7 automake-1.6" \
7.37 - "ftp://ftp.gnu.org/pub/gnu/automake/" 1 6 || DIE=1
7.38 -version_check "libtoolize" "$LIBTOOLIZE libtoolize" \
7.39 - "ftp://ftp.gnu.org/pub/gnu/libtool/" 1 5 0 || DIE=1
7.40 -version_check "pkg-config" "" \
7.41 - "http://www.freedesktop.org/software/pkgconfig" 0 8 0 || DIE=1
7.42 -
7.43 -die_check $DIE
7.44 -
7.45 -aclocal_check || DIE=1
7.46 -autoheader_check || DIE=1
7.47 -
7.48 -die_check $DIE
7.49 -
7.50 -# if no arguments specified then this will be printed
7.51 -if test -z "$*"; then
7.52 - echo "+ checking for autogen.sh options"
7.53 - echo " This autogen script will automatically run ./configure as:"
7.54 - echo " ./configure $CONFIGURE_DEF_OPT"
7.55 - echo " To pass any additional options, please specify them on the $0"
7.56 - echo " command line."
7.57 -fi
7.58 -
7.59 -toplevel_check $srcfile
7.60 -
7.61 -tool_run "$aclocal" "-I m4 $ACLOCAL_FLAGS"
7.62 -tool_run "$libtoolize" "--copy --force"
7.63 -tool_run "$autoheader"
7.64 -
7.65 -# touch the stamp-h.in build stamp so we don't re-run autoheader in maintainer mode -- wingo
7.66 -echo timestamp > stamp-h.in 2> /dev/null
7.67 -
7.68 -tool_run "$autoconf"
7.69 -tool_run "$automake" "-a -c"
7.70 -
7.71 -# if enable exists, add an -enable option for each of the lines in that file
7.72 -if test -f enable; then
7.73 - for a in `cat enable`; do
7.74 - CONFIGURE_FILE_OPT="--enable-$a"
7.75 - done
7.76 -fi
7.77 -
7.78 -# if disable exists, add an -disable option for each of the lines in that file
7.79 -if test -f disable; then
7.80 - for a in `cat disable`; do
7.81 - CONFIGURE_FILE_OPT="$CONFIGURE_FILE_OPT --disable-$a"
7.82 - done
7.83 -fi
7.84 -
7.85 -test -n "$NOCONFIGURE" && {
7.86 - echo "+ skipping configure stage for package $package, as requested."
7.87 - echo "+ autogen.sh done."
7.88 - exit 0
7.89 -}
7.90 -
7.91 -echo "+ running configure ... "
7.92 -test ! -z "$CONFIGURE_DEF_OPT" && echo " ./configure default flags: $CONFIGURE_DEF_OPT"
7.93 -test ! -z "$CONFIGURE_EXT_OPT" && echo " ./configure external flags: $CONFIGURE_EXT_OPT"
7.94 -test ! -z "$CONFIGURE_FILE_OPT" && echo " ./configure enable/disable flags: $CONFIGURE_FILE_OPT"
7.95 -echo
7.96 -
7.97 -./configure $CONFIGURE_DEF_OPT $CONFIGURE_EXT_OPT $CONFIGURE_FILE_OPT || {
7.98 - echo " configure failed"
7.99 - exit 1
7.100 -}
7.101 -
7.102 -echo "Now type 'make' to compile $package."
8.1 --- a/gmyth-stream/libgnomevfs2/common/Makefile.am Wed Aug 29 10:00:25 2007 +0100
8.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
8.3 @@ -1,1 +0,0 @@
8.4 -EXTRA_DIST = autogen-helper.sh
9.1 --- a/gmyth-stream/libgnomevfs2/common/autogen-helper.sh Wed Aug 29 10:00:25 2007 +0100
9.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
9.3 @@ -1,302 +0,0 @@
9.4 -# a silly hack that generates autoregen.sh but it's handy
9.5 -echo "#!/bin/sh" > autoregen.sh
9.6 -echo "./autogen.sh $@ \$@" >> autoregen.sh
9.7 -chmod +x autoregen.sh
9.8 -
9.9 -# helper functions for autogen.sh
9.10 -
9.11 -debug ()
9.12 -# print out a debug message if DEBUG is a defined variable
9.13 -{
9.14 - if test ! -z "$DEBUG"
9.15 - then
9.16 - echo "DEBUG: $1"
9.17 - fi
9.18 -}
9.19 -
9.20 -version_check ()
9.21 -# check the version of a package
9.22 -# first argument : package name (executable)
9.23 -# second argument : optional path where to look for it instead
9.24 -# third argument : source download url
9.25 -# rest of arguments : major, minor, micro version
9.26 -# all consecutive ones : suggestions for binaries to use
9.27 -# (if not specified in second argument)
9.28 -{
9.29 - PACKAGE=$1
9.30 - PKG_PATH=$2
9.31 - URL=$3
9.32 - MAJOR=$4
9.33 - MINOR=$5
9.34 - MICRO=$6
9.35 -
9.36 - # for backwards compatibility, we let PKG_PATH=PACKAGE when PKG_PATH null
9.37 - if test -z "$PKG_PATH"; then PKG_PATH=$PACKAGE; fi
9.38 - debug "major $MAJOR minor $MINOR micro $MICRO"
9.39 - VERSION=$MAJOR
9.40 - if test ! -z "$MINOR"; then VERSION=$VERSION.$MINOR; else MINOR=0; fi
9.41 - if test ! -z "$MICRO"; then VERSION=$VERSION.$MICRO; else MICRO=0; fi
9.42 -
9.43 - debug "major $MAJOR minor $MINOR micro $MICRO"
9.44 -
9.45 - for SUGGESTION in $PKG_PATH; do
9.46 - COMMAND="$SUGGESTION"
9.47 -
9.48 - # don't check if asked not to
9.49 - test -z "$NOCHECK" && {
9.50 - echo -n " checking for $COMMAND >= $VERSION ... "
9.51 - } || {
9.52 - # we set a var with the same name as the package, but stripped of
9.53 - # unwanted chars
9.54 - VAR=`echo $PACKAGE | sed 's/-//g'`
9.55 - debug "setting $VAR"
9.56 - eval $VAR="$COMMAND"
9.57 - return 0
9.58 - }
9.59 -
9.60 - debug "checking version with $COMMAND"
9.61 - ($COMMAND --version) < /dev/null > /dev/null 2>&1 ||
9.62 - {
9.63 - echo "not found."
9.64 - continue
9.65 - }
9.66 - # strip everything that's not a digit, then use cut to get the first field
9.67 - pkg_version=`$COMMAND --version|head -n 1|sed 's/^[^0-9]*//'|cut -d' ' -f1`
9.68 - debug "pkg_version $pkg_version"
9.69 - # remove any non-digit characters from the version numbers to permit numeric
9.70 - # comparison
9.71 - pkg_major=`echo $pkg_version | cut -d. -f1 | sed s/[a-zA-Z\-].*//g`
9.72 - pkg_minor=`echo $pkg_version | cut -d. -f2 | sed s/[a-zA-Z\-].*//g`
9.73 - pkg_micro=`echo $pkg_version | cut -d. -f3 | sed s/[a-zA-Z\-].*//g`
9.74 - test -z "$pkg_major" && pkg_major=0
9.75 - test -z "$pkg_minor" && pkg_minor=0
9.76 - test -z "$pkg_micro" && pkg_micro=0
9.77 - debug "found major $pkg_major minor $pkg_minor micro $pkg_micro"
9.78 -
9.79 - #start checking the version
9.80 - debug "version check"
9.81 -
9.82 - # reset check
9.83 - WRONG=
9.84 -
9.85 - if [ ! "$pkg_major" -gt "$MAJOR" ]; then
9.86 - debug "major: $pkg_major <= $MAJOR"
9.87 - if [ "$pkg_major" -lt "$MAJOR" ]; then
9.88 - debug "major: $pkg_major < $MAJOR"
9.89 - WRONG=1
9.90 - elif [ ! "$pkg_minor" -gt "$MINOR" ]; then
9.91 - debug "minor: $pkg_minor <= $MINOR"
9.92 - if [ "$pkg_minor" -lt "$MINOR" ]; then
9.93 - debug "minor: $pkg_minor < $MINOR"
9.94 - WRONG=1
9.95 - elif [ "$pkg_micro" -lt "$MICRO" ]; then
9.96 - debug "micro: $pkg_micro < $MICRO"
9.97 - WRONG=1
9.98 - fi
9.99 - fi
9.100 - fi
9.101 -
9.102 - if test ! -z "$WRONG"; then
9.103 - echo "found $pkg_version, not ok !"
9.104 - continue
9.105 - else
9.106 - echo "found $pkg_version, ok."
9.107 - # we set a var with the same name as the package, but stripped of
9.108 - # unwanted chars
9.109 - VAR=`echo $PACKAGE | sed 's/-//g'`
9.110 - debug "setting $VAR"
9.111 - eval $VAR="$COMMAND"
9.112 - return 0
9.113 - fi
9.114 - done
9.115 -
9.116 - echo "not found !"
9.117 - echo "You must have $PACKAGE installed to compile $package."
9.118 - echo "Download the appropriate package for your distribution,"
9.119 - echo "or get the source tarball at $URL"
9.120 - return 1;
9.121 -}
9.122 -
9.123 -aclocal_check ()
9.124 -{
9.125 - # normally aclocal is part of automake
9.126 - # so we expect it to be in the same place as automake
9.127 - # so if a different automake is supplied, we need to adapt as well
9.128 - # so how's about replacing automake with aclocal in the set var,
9.129 - # and saving that in $aclocal ?
9.130 - # note, this will fail if the actual automake isn't called automake*
9.131 - # or if part of the path before it contains it
9.132 - if [ -z "$automake" ]; then
9.133 - echo "Error: no automake variable set !"
9.134 - return 1
9.135 - else
9.136 - aclocal=`echo $automake | sed s/automake/aclocal/`
9.137 - debug "aclocal: $aclocal"
9.138 - if [ "$aclocal" != "aclocal" ];
9.139 - then
9.140 - CONFIGURE_DEF_OPT="$CONFIGURE_DEF_OPT --with-aclocal=$aclocal"
9.141 - fi
9.142 - if [ ! -x `which $aclocal` ]; then
9.143 - echo "Error: cannot execute $aclocal !"
9.144 - return 1
9.145 - fi
9.146 - fi
9.147 -}
9.148 -
9.149 -autoheader_check ()
9.150 -{
9.151 - # same here - autoheader is part of autoconf
9.152 - # use the same voodoo
9.153 - if [ -z "$autoconf" ]; then
9.154 - echo "Error: no autoconf variable set !"
9.155 - return 1
9.156 - else
9.157 - autoheader=`echo $autoconf | sed s/autoconf/autoheader/`
9.158 - debug "autoheader: $autoheader"
9.159 - if [ "$autoheader" != "autoheader" ];
9.160 - then
9.161 - CONFIGURE_DEF_OPT="$CONFIGURE_DEF_OPT --with-autoheader=$autoheader"
9.162 - fi
9.163 - if [ ! -x `which $autoheader` ]; then
9.164 - echo "Error: cannot execute $autoheader !"
9.165 - return 1
9.166 - fi
9.167 - fi
9.168 -
9.169 -}
9.170 -
9.171 -autoconf_2_52d_check ()
9.172 -{
9.173 - # autoconf 2.52d has a weird issue involving a yes:no error
9.174 - # so don't allow it's use
9.175 - test -z "$NOCHECK" && {
9.176 - ac_version=`$autoconf --version|head -n 1|sed 's/^[a-zA-Z\.\ ()]*//;s/ .*$//'`
9.177 - if test "$ac_version" = "2.52d"; then
9.178 - echo "autoconf 2.52d has an issue with our current build."
9.179 - echo "We don't know who's to blame however. So until we do, get a"
9.180 - echo "regular version. RPM's of a working version are on the gstreamer site."
9.181 - exit 1
9.182 - fi
9.183 - }
9.184 - return 0
9.185 -}
9.186 -
9.187 -die_check ()
9.188 -{
9.189 - # call with $DIE
9.190 - # if set to 1, we need to print something helpful then die
9.191 - DIE=$1
9.192 - if test "x$DIE" = "x1";
9.193 - then
9.194 - echo
9.195 - echo "- Please get the right tools before proceeding."
9.196 - echo "- Alternatively, if you're sure we're wrong, run with --nocheck."
9.197 - exit 1
9.198 - fi
9.199 -}
9.200 -
9.201 -autogen_options ()
9.202 -{
9.203 - if test "x$1" = "x"; then
9.204 - return 0
9.205 - fi
9.206 -
9.207 - while test "x$1" != "x" ; do
9.208 - optarg=`expr "x$1" : 'x[^=]*=\(.*\)'`
9.209 - case "$1" in
9.210 - --noconfigure)
9.211 - NOCONFIGURE=defined
9.212 - AUTOGEN_EXT_OPT="$AUTOGEN_EXT_OPT --noconfigure"
9.213 - echo "+ configure run disabled"
9.214 - shift
9.215 - ;;
9.216 - --nocheck)
9.217 - AUTOGEN_EXT_OPT="$AUTOGEN_EXT_OPT --nocheck"
9.218 - NOCHECK=defined
9.219 - echo "+ autotools version check disabled"
9.220 - shift
9.221 - ;;
9.222 - --debug)
9.223 - DEBUG=defined
9.224 - AUTOGEN_EXT_OPT="$AUTOGEN_EXT_OPT --debug"
9.225 - echo "+ debug output enabled"
9.226 - shift
9.227 - ;;
9.228 - --prefix=*)
9.229 - CONFIGURE_EXT_OPT="$CONFIGURE_EXT_OPT --prefix=$optarg"
9.230 - echo "+ passing --prefix=$optarg to configure"
9.231 - shift
9.232 - ;;
9.233 - --prefix)
9.234 - shift
9.235 - echo "DEBUG: $1"
9.236 - CONFIGURE_EXT_OPT="$CONFIGURE_EXT_OPT --prefix=$1"
9.237 - echo "+ passing --prefix=$1 to configure"
9.238 - shift
9.239 - ;;
9.240 - -h|--help)
9.241 - echo "autogen.sh (autogen options) -- (configure options)"
9.242 - echo "autogen.sh help options: "
9.243 - echo " --noconfigure don't run the configure script"
9.244 - echo " --nocheck don't do version checks"
9.245 - echo " --debug debug the autogen process"
9.246 - echo " --prefix will be passed on to configure"
9.247 - echo
9.248 - echo " --with-autoconf PATH use autoconf in PATH"
9.249 - echo " --with-automake PATH use automake in PATH"
9.250 - echo
9.251 - echo "to pass options to configure, put them as arguments after -- "
9.252 - exit 1
9.253 - ;;
9.254 - --with-automake=*)
9.255 - AUTOMAKE=$optarg
9.256 - echo "+ using alternate automake in $optarg"
9.257 - CONFIGURE_DEF_OPT="$CONFIGURE_DEF_OPT --with-automake=$AUTOMAKE"
9.258 - shift
9.259 - ;;
9.260 - --with-autoconf=*)
9.261 - AUTOCONF=$optarg
9.262 - echo "+ using alternate autoconf in $optarg"
9.263 - CONFIGURE_DEF_OPT="$CONFIGURE_DEF_OPT --with-autoconf=$AUTOCONF"
9.264 - shift
9.265 - ;;
9.266 - --disable*|--enable*|--with*)
9.267 - echo "+ passing option $1 to configure"
9.268 - CONFIGURE_EXT_OPT="$CONFIGURE_EXT_OPT $1"
9.269 - shift
9.270 - ;;
9.271 - --) shift ; break ;;
9.272 - *) echo "- ignoring unknown autogen.sh argument $1"; shift ;;
9.273 - esac
9.274 - done
9.275 -
9.276 - for arg do CONFIGURE_EXT_OPT="$CONFIGURE_EXT_OPT $arg"; done
9.277 - if test ! -z "$CONFIGURE_EXT_OPT"
9.278 - then
9.279 - echo "+ options passed to configure: $CONFIGURE_EXT_OPT"
9.280 - fi
9.281 -}
9.282 -
9.283 -toplevel_check ()
9.284 -{
9.285 - srcfile=$1
9.286 - test -f $srcfile || {
9.287 - echo "You must run this script in the top-level $package directory"
9.288 - exit 1
9.289 - }
9.290 -}
9.291 -
9.292 -
9.293 -tool_run ()
9.294 -{
9.295 - tool=$1
9.296 - options=$2
9.297 - run_if_fail=$3
9.298 - echo "+ running $tool $options..."
9.299 - $tool $options || {
9.300 - echo
9.301 - echo $tool failed
9.302 - eval $run_if_fail
9.303 - exit 1
9.304 - }
9.305 -}
10.1 --- a/gmyth-stream/libgnomevfs2/configure.ac Wed Aug 29 10:00:25 2007 +0100
10.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
10.3 @@ -1,117 +0,0 @@
10.4 -AC_INIT(libgnomevfs2-gmythstream, 0.1)
10.5 -
10.6 -dnl when going to/from release please set the nano (fourth number) right !
10.7 -dnl releases only do Wall, cvs and prerelease does Werror too
10.8 -AS_VERSION(libgnomevfs2-gmythstream, LIBGNOMEVFS2_GMYTHSTREAM, 0, 1, 0, 1, LIBGNOMEVFS2_GMYTHSTREAM_CVS="no", LIBGNOMEVFS2_GMYTHSTREAM_CVS="yes")
10.9 -
10.10 -AM_INIT_AUTOMAKE($PACKAGE, $VERSION)
10.11 -
10.12 -AM_CONFIG_HEADER(config.h)
10.13 -
10.14 -AM_DISABLE_STATIC
10.15 -
10.16 -dnl AM_MAINTAINER_MODE provides the option to enable maintainer mode
10.17 -AM_MAINTAINER_MODE
10.18 -dnl make aclocal work in maintainer mode
10.19 -AC_SUBST(ACLOCAL_AMFLAGS, "-I m4")
10.20 -
10.21 -dnl check for tools
10.22 -dnl Make sure CFLAGS is defined to stop AC_PROC_CC adding -g
10.23 -CFLAGS="$CFLAGS "
10.24 -AC_PROG_CC
10.25 -AC_PROG_CPP
10.26 -AM_PROG_CC_STDC
10.27 -AC_HEADER_STDC
10.28 -AC_PROG_LIBTOOL
10.29 -
10.30 -dnl Test if --enable-debug given
10.31 -AC_ARG_ENABLE(debug, [AC_HELP_STRING([--enable-debug],[enable debugging mode])])
10.32 -if test "x$enable_debug" = "xyes" ; then
10.33 - CFLAGS="$CFLAGS -g"
10.34 -fi
10.35 -
10.36 -dnl optimisation flag
10.37 -CFLAGS="$CFLAGS -O2"
10.38 -
10.39 -dnl decide on error flags
10.40 -AS_COMPILER_FLAG(-Wall, LIBGNOMEVFS2_MYTHTV_WALL="yes", LIBGNOMEVFS2_MYTHTV_WALL="no")
10.41 -
10.42 -if test "x$LIBGNOMEVFS2_MYTHTV_WALL" = "xyes"; then
10.43 - CFLAGS="$CFLAGS -Wall"
10.44 -
10.45 - if test "x$LIBGNOMEVFS2_MYTHTV_CVS" = "xyes"; then
10.46 - AS_COMPILER_FLAG(-Werror,CFLAGS="$CFLAGS -Werror",)
10.47 - fi
10.48 -fi
10.49 -
10.50 -dnl Now check required packages
10.51 -
10.52 -dnl Check for pkgconfig
10.53 -AC_CHECK_PROG(HAVE_PKGCONFIG, pkg-config, yes, no)
10.54 -dnl Give error and exit if we don't have pkgconfig
10.55 -if test "x$HAVE_PKGCONFIG" = "xno"; then
10.56 - AC_MSG_ERROR(you need to have pkgconfig installed !)
10.57 -fi
10.58 -
10.59 -dnl Check for Glib2.0
10.60 -PKG_CHECK_MODULES(GLIB, glib-2.0, HAVE_GLIB=yes,HAVE_GLIB=no)
10.61 -
10.62 -dnl Give error and exit if we don't have glib
10.63 -if test "x$HAVE_GLIB" = "xno"; then
10.64 - AC_MSG_ERROR(you need glib-2.0 installed)
10.65 -fi
10.66 -
10.67 -dnl make GLIB_CFLAGS and GLIB_LIBS available
10.68 -AC_SUBST(GLIB_CFLAGS)
10.69 -AC_SUBST(GLIB_LIBS)
10.70 -
10.71 -AC_DEFINE(HAVE_GLIB,1,[Defined when glib-2.0 was found])
10.72 -
10.73 -dnl Check for GObject2.0
10.74 -PKG_CHECK_MODULES(GOBJECT,
10.75 - gobject-2.0,
10.76 - HAVE_GOBJECT=yes, HAVE_GOBJECT=no)
10.77 -
10.78 -dnl Give error and exit if we don't have gobject
10.79 -if test "x$HAVE_GOBJECT" = "xno"; then
10.80 - AC_MSG_ERROR(you need gobject-2.0 installed)
10.81 -fi
10.82 -
10.83 -dnl make GOBJECT_CFLAGS and GOBJECT_LIBS available
10.84 -AC_SUBST(GOBJECT_CFLAGS)
10.85 -AC_SUBST(GOBJECT_LIBS)
10.86 -
10.87 -GNOME_VFS_REQS=2.7.4
10.88 -PKG_CHECK_MODULES(GNOME_VFS,
10.89 - gnome-vfs-2.0 >= $GNOME_VFS_REQS gnome-vfs-module-2.0 >= $GNOME_VFS_REQS,
10.90 - HAVE_GNOME_VFS=yes,
10.91 - HAVE_GNOME_VFS=no)
10.92 -
10.93 -if test x"$HAVE_GNOME_VFS" = xno; then
10.94 - AC_MSG_ERROR([You need gnome-vfs2 development packages to compile libgnomevfs2-gmythstream])
10.95 -fi
10.96 -
10.97 -AC_SUBST(GNOME_VFS_CFLAGS)
10.98 -AC_SUBST(GNOME_VFS_LIBS)
10.99 -
10.100 -dnl Check for gmyth
10.101 -MYTHSTREAM_REQS=0.1
10.102 -PKG_CHECK_MODULES(LIBMYTHSTREAM,
10.103 - gmyth-stream-client >= $MYTHSTREAM_REQS,
10.104 - have_libgmythstream=yes,
10.105 - have_libgmythstream=no)
10.106 -
10.107 -if test x"$have_libgmyth" = "xno"; then
10.108 - AC_MSG_ERROR(gmyth-stream-client, not found)
10.109 -fi
10.110 -
10.111 -AC_SUBST(LIBMYTHSTREAM_CFLAGS)
10.112 -AC_SUBST(LIBMYTHSTREAM_LIBS)
10.113 -
10.114 -
10.115 -AC_OUTPUT([
10.116 -Makefile
10.117 -modules/Makefile
10.118 -common/Makefile
10.119 -m4/Makefile
10.120 -])
11.1 --- a/gmyth-stream/libgnomevfs2/debian/README.Debian Wed Aug 29 10:00:25 2007 +0100
11.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
11.3 @@ -1,6 +0,0 @@
11.4 -libgnomevfs2-mythtv for Debian
11.5 -------------------
11.6 -
11.7 -This package provides the libgnomevfs2 mythtv modules.
11.8 -
11.9 - -- Hallyson Melo <hallyson.melo@indt.org.br>, Tue, 20 Oct 2006 10:53:12 -0300
12.1 --- a/gmyth-stream/libgnomevfs2/debian/changelog Wed Aug 29 10:00:25 2007 +0100
12.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
12.3 @@ -1,6 +0,0 @@
12.4 -libgnomevfs2-gmythstream (0.1.1) unstable; urgency=low
12.5 -
12.6 - * Initial release
12.7 -
12.8 - -- Hallyson Melo <hallyson.melo@indt.org.br> Tue, 20 Oct 2006 10:53:12 -0300
12.9 -
13.1 --- a/gmyth-stream/libgnomevfs2/debian/compat Wed Aug 29 10:00:25 2007 +0100
13.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
13.3 @@ -1,1 +0,0 @@
13.4 -4
14.1 --- a/gmyth-stream/libgnomevfs2/debian/control Wed Aug 29 10:00:25 2007 +0100
14.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
14.3 @@ -1,15 +0,0 @@
14.4 -Source: libgnomevfs2-gmythstream
14.5 -Priority: optional
14.6 -Maintainer: Hallyson Melo <hallyson.melo@indt.org.br>
14.7 -Build-Depends: debhelper (>= 4.0.0), autotools-dev, cdbs (>= 0.4.0), libglib2.0-dev, gmythstream-client-dev (>= 0.1)
14.8 -Standards-Version: 3.6.1
14.9 -Section: user/library
14.10 -
14.11 -Package: libgnomevfs2-gmythstream
14.12 -Section: user/library
14.13 -Architecture: any
14.14 -Depends: libglib2.0-0, gmythstream-client (>= 0.1)
14.15 -Description: libgnomevfs2-gmythstream
14.16 - Contains the gnomevfs2 modules for GMythStream protocol.
14.17 - .
14.18 - This package contains the libgnomevfs2 gmythstream module.
15.1 --- a/gmyth-stream/libgnomevfs2/debian/copyright Wed Aug 29 10:00:25 2007 +0100
15.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
15.3 @@ -1,23 +0,0 @@
15.4 -This package was debianized by Hallyson Melo <hallyson.melo@indt.org.br> on
15.5 -Tue, 16 May 2006 10:53:12 -0300.
15.6 -
15.7 -Copyright Holder: 2006 INdT
15.8 -
15.9 -License:
15.10 -
15.11 - This package is free software; you can redistribute it and/or
15.12 - modify it under the terms of the GNU Lesser General Public
15.13 - License as published by the Free Software Foundation; either
15.14 - version 2 of the License, or (at your option) any later version.
15.15 -
15.16 - This package is distributed in the hope that it will be useful,
15.17 - but WITHOUT ANY WARRANTY; without even the implied warranty of
15.18 - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15.19 - Lesser General Public License for more details.
15.20 -
15.21 - You should have received a copy of the GNU Lesser General Public
15.22 - License along with this package; if not, write to the Free Software
15.23 - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
15.24 -
15.25 -On Debian GNU/Linux systems, the complete text of the GNU Lesser General
15.26 -Public License can be found in `/usr/share/common-licenses/LGPL'.
16.1 --- a/gmyth-stream/libgnomevfs2/debian/dirs Wed Aug 29 10:00:25 2007 +0100
16.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
16.3 @@ -1,2 +0,0 @@
16.4 -usr/lib/gnome-vfs-2.0/modules/
16.5 -etc/gnome-vfs-2.0/modules/
17.1 --- a/gmyth-stream/libgnomevfs2/debian/rules Wed Aug 29 10:00:25 2007 +0100
17.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
17.3 @@ -1,21 +0,0 @@
17.4 -#!/usr/bin/make -f
17.5 -
17.6 -include /usr/share/cdbs/1/rules/debhelper.mk
17.7 -include /usr/share/cdbs/1/class/autotools.mk
17.8 -include /usr/share/cdbs/1/rules/simple-patchsys.mk
17.9 -include /usr/share/cdbs/1/rules/utils.mk
17.10 -
17.11 -# debian package version
17.12 -version=$(shell dpkg-parsechangelog | grep ^Version: | cut -d ' ' -f 2)
17.13 -
17.14 -maint: debian/control
17.15 -
17.16 -common_conf_flags = \
17.17 - --disable-debug
17.18 -
17.19 -# FIXME: should disable docs for arch only builds
17.20 -DEB_CONFIGURE_EXTRA_FLAGS := $(common_conf_flags)
17.21 -
17.22 -DEB_INSTALL_DOCS_ALL += debian/README.Debian NEWS
17.23 -
17.24 -.PHONY: maint
18.1 --- a/gmyth-stream/libgnomevfs2/m4/Makefile.am Wed Aug 29 10:00:25 2007 +0100
18.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
18.3 @@ -1,4 +0,0 @@
18.4 -EXTRA_DIST = \
18.5 - as-compiler-flag.m4 \
18.6 - as-expand.m4 \
18.7 - as-version.m4
19.1 --- a/gmyth-stream/libgnomevfs2/m4/as-compiler-flag.m4 Wed Aug 29 10:00:25 2007 +0100
19.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
19.3 @@ -1,33 +0,0 @@
19.4 -dnl as-compiler-flag.m4 0.1.0
19.5 -
19.6 -dnl autostars m4 macro for detection of compiler flags
19.7 -
19.8 -dnl David Schleef <ds@schleef.org>
19.9 -
19.10 -dnl $Id: as-compiler-flag.m4,v 1.1.1.1 2005/08/26 00:42:44 andrunko Exp $
19.11 -
19.12 -dnl AS_COMPILER_FLAG(CFLAGS, ACTION-IF-ACCEPTED, [ACTION-IF-NOT-ACCEPTED])
19.13 -dnl Tries to compile with the given CFLAGS.
19.14 -dnl Runs ACTION-IF-ACCEPTED if the compiler can compile with the flags,
19.15 -dnl and ACTION-IF-NOT-ACCEPTED otherwise.
19.16 -
19.17 -AC_DEFUN([AS_COMPILER_FLAG],
19.18 -[
19.19 - AC_MSG_CHECKING([to see if compiler understands $1])
19.20 -
19.21 - save_CFLAGS="$CFLAGS"
19.22 - CFLAGS="$CFLAGS $1"
19.23 -
19.24 - AC_TRY_COMPILE([ ], [], [flag_ok=yes], [flag_ok=no])
19.25 - CFLAGS="$save_CFLAGS"
19.26 -
19.27 - if test "X$flag_ok" = Xyes ; then
19.28 - $2
19.29 - true
19.30 - else
19.31 - $3
19.32 - true
19.33 - fi
19.34 - AC_MSG_RESULT([$flag_ok])
19.35 -])
19.36 -
20.1 --- a/gmyth-stream/libgnomevfs2/m4/as-expand.m4 Wed Aug 29 10:00:25 2007 +0100
20.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
20.3 @@ -1,40 +0,0 @@
20.4 -dnl AS_AC_EXPAND(VAR, CONFIGURE_VAR)
20.5 -dnl
20.6 -dnl example
20.7 -dnl AS_AC_EXPAND(SYSCONFDIR, $sysconfdir)
20.8 -dnl will set SYSCONFDIR to /usr/local/etc if prefix=/usr/local
20.9 -
20.10 -AC_DEFUN([AS_AC_EXPAND],
20.11 -[
20.12 - EXP_VAR=[$1]
20.13 - FROM_VAR=[$2]
20.14 -
20.15 - dnl first expand prefix and exec_prefix if necessary
20.16 - prefix_save=$prefix
20.17 - exec_prefix_save=$exec_prefix
20.18 -
20.19 - dnl if no prefix given, then use /usr/local, the default prefix
20.20 - if test "x$prefix" = "xNONE"; then
20.21 - prefix=$ac_default_prefix
20.22 - fi
20.23 - dnl if no exec_prefix given, then use prefix
20.24 - if test "x$exec_prefix" = "xNONE"; then
20.25 - exec_prefix=$prefix
20.26 - fi
20.27 -
20.28 - full_var="$FROM_VAR"
20.29 - dnl loop until it doesn't change anymore
20.30 - while true; do
20.31 - new_full_var="`eval echo $full_var`"
20.32 - if test "x$new_full_var"="x$full_var"; then break; fi
20.33 - full_var=$new_full_var
20.34 - done
20.35 -
20.36 - dnl clean up
20.37 - full_var=$new_full_var
20.38 - AC_SUBST([$1], "$full_var")
20.39 -
20.40 - dnl restore prefix and exec_prefix
20.41 - prefix=$prefix_save
20.42 - exec_prefix=$exec_prefix_save
20.43 -])
21.1 --- a/gmyth-stream/libgnomevfs2/m4/as-version.m4 Wed Aug 29 10:00:25 2007 +0100
21.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
21.3 @@ -1,59 +0,0 @@
21.4 -dnl version.m4 0.0.5
21.5 -dnl autostars m4 macro for versioning
21.6 -dnl thomas@apestaart.org
21.7 -dnl
21.8 -dnl AS_VERSION(PACKAGE, PREFIX, MAJOR, MINOR, MICRO, NANO, ACTION_IF_NO_NANO, ACTION_IF_NANO)
21.9 -dnl example
21.10 -dnl AS_VERSION(gstreamer, GST_VERSION, 0, 3, 2,)
21.11 -dnl for a 0.3.2 release version
21.12 -dnl
21.13 -dnl this macro
21.14 -dnl - defines [$PREFIX]_MAJOR, MINOR and MICRO
21.15 -dnl - if NANO is empty, then we're in release mode, else in cvs/dev mode
21.16 -dnl - defines [$PREFIX], VERSION, and [$PREFIX]_RELEASE
21.17 -dnl - executes the relevant action
21.18 -dnl - AC_SUBST's PACKAGE, VERSION, [$PREFIX] and [$PREFIX]_RELEASE
21.19 -dnl as well as the little ones
21.20 -dnl - doesn't call AM_INIT_AUTOMAKE anymore because it prevents
21.21 -dnl maintainer mode from running ok
21.22 -dnl
21.23 -dnl don't forget to put #undef [$2] and [$2]_RELEASE in acconfig.h
21.24 -
21.25 -AC_DEFUN([AS_VERSION],
21.26 -[
21.27 - PACKAGE=[$1]
21.28 - [$2]_MAJOR_VERSION=[$3]
21.29 - [$2]_MINOR_VERSION=[$4]
21.30 - [$2]_MICRO_VERSION=[$5]
21.31 - NANO=[$6]
21.32 - [$2]_NANO_VERSION=$NANO
21.33 - if test "x$NANO" = "x" || test "x$NANO" = "x0";
21.34 - then
21.35 - AC_MSG_NOTICE(configuring [$1] for release)
21.36 - VERSION=[$3].[$4].[$5]
21.37 - [$2]_RELEASE=1
21.38 - dnl execute action
21.39 - ifelse([$7], , :, [$7])
21.40 - else
21.41 - AC_MSG_NOTICE(configuring [$1] for development with nano $NANO)
21.42 - VERSION=[$3].[$4].[$5].$NANO
21.43 - [$2]_RELEASE=`date +%Y%m%d_%H%M%S`
21.44 - dnl execute action
21.45 - ifelse([$8], , :, [$8])
21.46 - fi
21.47 -
21.48 - [$2]_VERSION=$VERSION
21.49 - AC_DEFINE_UNQUOTED([$2]_VERSION, "$[$2]_VERSION", [Define the version])
21.50 - AC_SUBST([$2]_VERSION)
21.51 -
21.52 - AC_SUBST([$2]_RELEASE)
21.53 -
21.54 - AC_SUBST([$2]_MAJOR_VERSION)
21.55 - AC_SUBST([$2]_MINOR_VERSION)
21.56 - AC_SUBST([$2]_MICRO_VERSION)
21.57 - AC_SUBST([$2]_NANO_VERSION)
21.58 - AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Define the package name])
21.59 - AC_SUBST(PACKAGE)
21.60 - AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Define the version])
21.61 - AC_SUBST(VERSION)
21.62 -])
22.1 --- a/gmyth-stream/libgnomevfs2/modules/Makefile.am Wed Aug 29 10:00:25 2007 +0100
22.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
22.3 @@ -1,29 +0,0 @@
22.4 -INCLUDES = \
22.5 - -I$(top_srcdir) \
22.6 - -I$(top_builddir) \
22.7 - $(GNOME_VFS_CFLAGS) \
22.8 - $(LIBMYTHSTREAM_CFLAGS) \
22.9 - -D_FILE_OFFSET_BITS=64 \
22.10 - -D_BSD_SOURCE \
22.11 - -D_LARGEFILE64_SOURCE \
22.12 - -D_POSIX_PTHREAD_SEMANTICS \
22.13 - -D_REENTRANT \
22.14 - -DG_DISABLE_DEPRECATED \
22.15 - -DG_LOG_DOMAIN=\"gnome-vfs-modules\"
22.16 -
22.17 -EXTRA_DIST = \
22.18 - gmythstream-module.conf
22.19 -
22.20 -modulesconfdir = $(sysconfdir)/gnome-vfs-2.0/modules
22.21 -modulesconf_DATA = \
22.22 - gmythstream-module.conf
22.23 -
22.24 -module_flags = -export_dynamic -avoid-version -module -no-undefined
22.25 -modulesdir = $(libdir)/gnome-vfs-2.0/modules
22.26 -modules_LTLIBRARIES = libgmythstream.la
22.27 -
22.28 -libgmythstream_la_SOURCES = gmythstream-method.c
22.29 -libgmythstream_la_LDFLAGS = $(module_flags)
22.30 -libgmythstream_la_LIBADD = \
22.31 - $(GNOME_VFS_LIBS) \
22.32 - $(LIBMYTHSTREAM_LIBS)
23.1 --- a/gmyth-stream/libgnomevfs2/modules/gmythstream-method.c Wed Aug 29 10:00:25 2007 +0100
23.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
23.3 @@ -1,363 +0,0 @@
23.4 -/*
23.5 - * @author Artur Duque de Souza <souza.artur@indt.org.br>
23.6 - *
23.7 - * This program is free software; you can redistribute it and/or modify
23.8 - * it under the terms of the GNU Lesser General Public License as published by
23.9 - * the Free Software Foundation; either version 2 of the License, or
23.10 - * (at your option) any later version.
23.11 - *
23.12 - * This program is distributed in the hope that it will be useful,
23.13 - * but WITHOUT ANY WARRANTY; without even the implied warranty of
23.14 - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23.15 - * GNU General Public License for more details.
23.16 - *
23.17 - m * You should have received a copy of the GNU Lesser General Public License
23.18 - * along with this program; if not, write to the Free Software
23.19 - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
23.20 - */
23.21 -
23.22 -#ifdef HAVE_CONFIG_H
23.23 -#include <config.h>
23.24 -#endif
23.25 -
23.26 -#include <sys/socket.h> /* for socket(), connect(), send(), and
23.27 - * recv() */
23.28 -#include <arpa/inet.h> /* for sockaddr_in and inet_addr() */
23.29 -#include <stdlib.h> /* for atoi() and exit() */
23.30 -#include <string.h> /* for memset() */
23.31 -#include <unistd.h> /* for close() */
23.32 -#include <errno.h>
23.33 -
23.34 -#include <glib.h>
23.35 -#include <glib/gprintf.h>
23.36 -#include <glib/gstdio.h>
23.37 -#include <gmyth-stream-client.h>
23.38 -
23.39 -#include <libgnomevfs/gnome-vfs-module.h>
23.40 -#include <libgnomevfs/gnome-vfs-utils.h>
23.41 -
23.42 -#define BUFFER_SIZE 4096
23.43 -
23.44 -typedef struct {
23.45 - gint port;
23.46 - gchar *hostname;
23.47 -
23.48 - GMythStreamClient *stream;
23.49 - gint fd;
23.50 -} gmsHandle;
23.51 -
23.52 -typedef struct {
23.53 - gchar *file_name;
23.54 - gchar *mux;
23.55 - gchar *vcodec;
23.56 - guint vbitrate;
23.57 - gdouble fps;
23.58 - gchar *acodec;
23.59 - guint abitrate;
23.60 - guint width;
23.61 - guint height;
23.62 - guint port;
23.63 - gchar *opt;
23.64 -} UriArgs;
23.65 -
23.66 -
23.67 -static gmsHandle *gmsHandle_new(GnomeVFSURI * uri);
23.68 -
23.69 -static GnomeVFSResult
23.70 -do_open(GnomeVFSMethod * method,
23.71 - GnomeVFSMethodHandle ** method_handle,
23.72 - GnomeVFSURI * uri,
23.73 - GnomeVFSOpenMode mode, GnomeVFSContext * context);
23.74 -
23.75 -static GnomeVFSResult
23.76 -do_read(GnomeVFSMethod * method,
23.77 - GnomeVFSMethodHandle * method_handle,
23.78 - gpointer buffer,
23.79 - GnomeVFSFileSize bytes,
23.80 - GnomeVFSFileSize * bytes_read, GnomeVFSContext * context);
23.81 -
23.82 -static GnomeVFSResult
23.83 -do_close(GnomeVFSMethod * method,
23.84 - GnomeVFSMethodHandle * method_handle, GnomeVFSContext * context);
23.85 -
23.86 -static GnomeVFSResult
23.87 -do_get_file_info(GnomeVFSMethod * method,
23.88 - GnomeVFSURI * uri,
23.89 - GnomeVFSFileInfo * file_info,
23.90 - GnomeVFSFileInfoOptions options,
23.91 - GnomeVFSContext * context);
23.92 -
23.93 -
23.94 -static GnomeVFSResult
23.95 -do_get_file_info_from_handle(GnomeVFSMethod * method,
23.96 - GnomeVFSMethodHandle * method_handle,
23.97 - GnomeVFSFileInfo * file_info,
23.98 - GnomeVFSFileInfoOptions options,
23.99 - GnomeVFSContext * context);
23.100 -
23.101 -
23.102 -static gboolean
23.103 -do_is_local(GnomeVFSMethod * method, const GnomeVFSURI * uri);
23.104 -
23.105 -
23.106 -static gmsHandle *
23.107 -gmsHandle_new(GnomeVFSURI * uri)
23.108 -{
23.109 - gmsHandle *handler = (gmsHandle *) g_malloc0(sizeof(gmsHandle));
23.110 -
23.111 - handler->hostname = (gchar *) gnome_vfs_uri_get_host_name(uri);
23.112 - handler->port = gnome_vfs_uri_get_host_port(uri);
23.113 - handler->stream = gmyth_stream_client_new();
23.114 -
23.115 - return handler;
23.116 -}
23.117 -
23.118 -static GnomeVFSMethod method = {
23.119 - sizeof(GnomeVFSMethod),
23.120 - do_open, /* open */
23.121 - NULL, /* create */
23.122 - do_close, /* close */
23.123 - do_read, /* read */
23.124 - NULL, /* write */
23.125 - NULL, /* seek */
23.126 - NULL, /* tell */
23.127 - NULL, /* truncate_handle */
23.128 - NULL, /* open_directory */
23.129 - NULL, /* close_directory */
23.130 - NULL, /* read_directory */
23.131 - do_get_file_info, /* get_file_info */
23.132 - do_get_file_info_from_handle, /* get_file_info_from_handle */
23.133 - do_is_local, /* is_local */
23.134 - NULL, /* make_directory */
23.135 - NULL, /* remove_directory */
23.136 - NULL, /* move */
23.137 - NULL, /* unlink */
23.138 - NULL, /* check_same_fs */
23.139 - NULL, /* set_file_info */
23.140 - NULL, /* truncate */
23.141 - NULL, /* find_directory */
23.142 - NULL, /* create_symbolic_link */
23.143 - NULL, /* monitor_add */
23.144 - NULL, /* monitor_cancel */
23.145 - NULL /* file_control */
23.146 -};
23.147 -
23.148 -GnomeVFSMethod *
23.149 -vfs_module_init(const char *method_name, const char *args)
23.150 -{
23.151 - return &method;
23.152 -}
23.153 -
23.154 -void
23.155 -vfs_module_shutdown(GnomeVFSMethod * method)
23.156 -{
23.157 - return;
23.158 -}
23.159 -
23.160 -char *
23.161 -_parse_opt(char *opt)
23.162 -{
23.163 - char **list = g_strsplit(opt, "opt=", 2);
23.164 - char **opts = g_strsplit(list[1], "+", 32);
23.165 - char *value = "";
23.166 - char *aux;
23.167 - gint i = 0;
23.168 -
23.169 - for (aux = opts[0]; aux != NULL; aux = opts[++i])
23.170 - value = g_strdup_printf("%s %s", value, aux);
23.171 -
23.172 - g_free(aux);
23.173 - g_strfreev(list);
23.174 - g_strfreev(opts);
23.175 - return value;
23.176 -}
23.177 -
23.178 -static UriArgs *
23.179 -_uri_parse_args(const GnomeVFSURI * uri)
23.180 -{
23.181 - gchar *file = gnome_vfs_unescape_string(uri->text, NULL);
23.182 -
23.183 - gchar **list = g_strsplit(file, "\'", 3);
23.184 - gchar **prefix = g_strsplit_set(list[0], "/=", 3);
23.185 - gchar **lst = g_strsplit(list[2], "?", 0);
23.186 -
23.187 - UriArgs *info = g_new0(UriArgs, 1);
23.188 - gint i = 1;
23.189 -
23.190 - gchar **prop = NULL;
23.191 - prop = g_strsplit_set(lst[0], "/=", 3);
23.192 -
23.193 - info->file_name = g_strdup_printf("%s://%s", prefix[1], list[1]);
23.194 -
23.195 - // g_debug("FILENAME: [%s]", info->file_name);
23.196 -
23.197 - g_strfreev(prop);
23.198 -
23.199 - gchar *walk;
23.200 - for (walk = lst[1]; walk != NULL; walk = lst[++i]) {
23.201 - prop = g_strsplit(walk, "=", 2);
23.202 -
23.203 - if (g_strv_length(prop) == 2) {
23.204 - if (strcmp(prop[0], "mux") == 0) {
23.205 - info->mux = g_strdup(prop[1]);
23.206 - } else if (strcmp(prop[0], "vcodec") == 0) {
23.207 - info->vcodec = g_strdup(prop[1]);
23.208 - } else if (strcmp(prop[0], "vbitrate") == 0) {
23.209 - info->vbitrate = atoi(prop[1]);
23.210 - } else if (strcmp(prop[0], "fps") == 0) {
23.211 - info->fps = g_strtod(prop[1], NULL);
23.212 - } else if (strcmp(prop[0], "acodec") == 0) {
23.213 - info->acodec = g_strdup(prop[1]);
23.214 - } else if (strcmp(prop[0], "abitrate") == 0) {
23.215 - info->abitrate = atoi(prop[1]);
23.216 - } else if (strcmp(prop[0], "width") == 0) {
23.217 - info->width = atoi(prop[1]);
23.218 - } else if (strcmp(prop[0], "height") == 0) {
23.219 - info->height = atoi(prop[1]);
23.220 - } else if (strcmp(prop[0], "opt") == 0) {
23.221 - info->opt = g_strdup(_parse_opt(walk));
23.222 - }
23.223 - }
23.224 - g_strfreev(prop);
23.225 - }
23.226 -
23.227 - g_free(file);
23.228 - g_strfreev(list);
23.229 - g_strfreev(prefix);
23.230 - g_strfreev(lst);
23.231 - return info;
23.232 -}
23.233 -
23.234 -static GnomeVFSResult
23.235 -do_open(GnomeVFSMethod * method,
23.236 - GnomeVFSMethodHandle ** method_handle,
23.237 - GnomeVFSURI * uri,
23.238 - GnomeVFSOpenMode mode, GnomeVFSContext * context)
23.239 -{
23.240 - gmsHandle *handle = gmsHandle_new(uri);
23.241 - UriArgs *args;
23.242 -
23.243 - if (!gmyth_stream_client_connect(handle->stream,
23.244 - gnome_vfs_uri_get_host_name(uri),
23.245 - gnome_vfs_uri_get_host_port(uri))) {
23.246 -
23.247 - return GNOME_VFS_ERROR_HOST_NOT_FOUND;
23.248 - }
23.249 -
23.250 - args = _uri_parse_args(uri);
23.251 -
23.252 - gint ret = gmyth_stream_client_open_stream(handle->stream,
23.253 - args->file_name,
23.254 - args->mux,
23.255 - args->vcodec,
23.256 - args->vbitrate,
23.257 - args->fps,
23.258 - args->acodec,
23.259 - args->abitrate,
23.260 - args->width,
23.261 - args->height,
23.262 - args->opt);
23.263 -
23.264 - g_free(args);
23.265 -
23.266 - if (ret == -1) {
23.267 - gmyth_stream_client_disconnect(handle->stream);
23.268 - return GNOME_VFS_ERROR_HOST_NOT_FOUND;
23.269 - }
23.270 -
23.271 - handle->fd = gmyth_stream_client_play_stream(handle->stream);
23.272 -
23.273 - if (handle->fd == -1) {
23.274 - gmyth_stream_client_disconnect(handle->stream);
23.275 - return GNOME_VFS_ERROR_HOST_NOT_FOUND;
23.276 - }
23.277 -
23.278 - *method_handle = (GnomeVFSMethodHandle *) handle;
23.279 - return GNOME_VFS_OK;
23.280 -}
23.281 -
23.282 -static GnomeVFSResult
23.283 -do_read(GnomeVFSMethod * method,
23.284 - GnomeVFSMethodHandle * method_handle,
23.285 - gpointer buffer,
23.286 - GnomeVFSFileSize bytes,
23.287 - GnomeVFSFileSize * bytes_read, GnomeVFSContext * context)
23.288 -{
23.289 -
23.290 - gint64 total_read = 0;
23.291 - gmsHandle *handle = (gmsHandle *) method_handle;
23.292 -
23.293 - // g_debug("waiting something");
23.294 -
23.295 - total_read = recv(handle->fd, buffer, BUFFER_SIZE, 0);
23.296 - // g_debug("COULD READ: %d bytes", total_read);
23.297 - *bytes_read = (GnomeVFSFileSize) total_read;
23.298 -
23.299 - // if (total_read < 0) g_debug("ERROR!!!!!!!!!!!!!!!!");
23.300 -
23.301 - if (total_read < 0)
23.302 - return GNOME_VFS_ERROR_INTERNAL;
23.303 - else
23.304 - return GNOME_VFS_OK;
23.305 -
23.306 -}
23.307 -
23.308 -static GnomeVFSResult
23.309 -do_close(GnomeVFSMethod * method,
23.310 - GnomeVFSMethodHandle * method_handle, GnomeVFSContext * context)
23.311 -{
23.312 - gmsHandle *handle = (gmsHandle *) method_handle;
23.313 -
23.314 - g_debug("close close close");
23.315 -
23.316 - gmyth_stream_client_close_stream(handle->stream);
23.317 - gmyth_stream_client_disconnect(handle->stream);
23.318 -
23.319 - g_free(handle);
23.320 - return GNOME_VFS_OK;
23.321 -}
23.322 -
23.323 -
23.324 -static GnomeVFSResult
23.325 -do_get_file_info(GnomeVFSMethod * method,
23.326 - GnomeVFSURI * uri,
23.327 - GnomeVFSFileInfo * file_info,
23.328 - GnomeVFSFileInfoOptions options,
23.329 - GnomeVFSContext * context)
23.330 -{
23.331 - file_info->valid_fields = GNOME_VFS_FILE_INFO_FIELDS_TYPE |
23.332 - GNOME_VFS_FILE_INFO_FIELDS_PERMISSIONS;
23.333 -
23.334 - file_info->type = GNOME_VFS_FILE_TYPE_SOCKET;
23.335 -
23.336 - file_info->permissions = GNOME_VFS_PERM_USER_READ |
23.337 - GNOME_VFS_PERM_OTHER_READ | GNOME_VFS_PERM_GROUP_READ;
23.338 -
23.339 - return GNOME_VFS_OK;
23.340 -}
23.341 -
23.342 -
23.343 -static GnomeVFSResult
23.344 -do_get_file_info_from_handle(GnomeVFSMethod * method,
23.345 - GnomeVFSMethodHandle * method_handle,
23.346 - GnomeVFSFileInfo * file_info,
23.347 - GnomeVFSFileInfoOptions options,
23.348 - GnomeVFSContext * context)
23.349 -{
23.350 - file_info->valid_fields = GNOME_VFS_FILE_INFO_FIELDS_TYPE |
23.351 - GNOME_VFS_FILE_INFO_FIELDS_PERMISSIONS;
23.352 -
23.353 - file_info->type = GNOME_VFS_FILE_TYPE_SOCKET;
23.354 -
23.355 - file_info->permissions = GNOME_VFS_PERM_USER_READ |
23.356 - GNOME_VFS_PERM_OTHER_READ | GNOME_VFS_PERM_GROUP_READ;
23.357 -
23.358 - return GNOME_VFS_OK;
23.359 -}
23.360 -
23.361 -
23.362 -static gboolean
23.363 -do_is_local(GnomeVFSMethod * method, const GnomeVFSURI * uri)
23.364 -{
23.365 - return FALSE;
23.366 -}
24.1 --- a/gmyth-stream/libgnomevfs2/modules/gmythstream-module.conf Wed Aug 29 10:00:25 2007 +0100
24.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
24.3 @@ -1,1 +0,0 @@
24.4 -gmyth: gmythstream
25.1 --- a/gmyth/src/gmyth_monitor_handler.c Wed Aug 29 10:00:25 2007 +0100
25.2 +++ b/gmyth/src/gmyth_monitor_handler.c Wed Aug 29 14:29:24 2007 +0100
25.3 @@ -70,7 +70,9 @@
25.4 #define GMYTHTV_ENABLE_DEBUG 1
25.5 #endif
25.6
25.7 -gpointer gmyth_monitor_handler_listener(gpointer data);
25.8 +static gboolean gmyth_monitor_handler_listener (GIOChannel *io_channel,
25.9 + GIOCondition condition,
25.10 + gpointer data);
25.11
25.12 static void gmyth_monitor_handler_default_listener(GMythMonitorHandler
25.13 * monitor,
25.14 @@ -92,51 +94,10 @@
25.15
25.16 void gmyth_monitor_handler_close(GMythMonitorHandler * monitor);
25.17
25.18 -G_DEFINE_TYPE(GMythMonitorHandler, gmyth_monitor_handler, G_TYPE_OBJECT)
25.19 - static void
25.20 +G_DEFINE_TYPE(GMythMonitorHandler, gmyth_monitor_handler, G_TYPE_OBJECT);
25.21
25.22 -
25.23 -
25.24 -
25.25 -
25.26 -
25.27 -
25.28 -
25.29 -
25.30 -
25.31 -
25.32 -
25.33 -
25.34 -
25.35 -
25.36 -
25.37 -
25.38 -
25.39 -
25.40 -
25.41 -
25.42 -
25.43 -
25.44 -
25.45 -
25.46 -
25.47 -
25.48 -
25.49 -
25.50 -
25.51 -
25.52 -
25.53 -
25.54 -
25.55 -
25.56 -
25.57 -
25.58 -
25.59 -
25.60 -
25.61 -
25.62 -
25.63 - gmyth_monitor_handler_class_init(GMythMonitorHandlerClass * klass)
25.64 +static void
25.65 +gmyth_monitor_handler_class_init(GMythMonitorHandlerClass * klass)
25.66 {
25.67 GObjectClass *gobject_class;
25.68 GMythMonitorHandlerClass *gmonitor_class;
25.69 @@ -169,23 +130,11 @@
25.70 monitor->hostname = NULL;
25.71 monitor->port = 0;
25.72 monitor->actual_index = 0;
25.73 -
25.74 monitor->allow_msgs_listener = FALSE;
25.75 -
25.76 - /*
25.77 - * monitor->backend_msgs = g_hash_table_new( g_int_hash, g_int_equal
25.78 - * );
25.79 - */
25.80 -
25.81 /*
25.82 * it is used for signalizing the event socket consumer thread
25.83 */
25.84 monitor->mutex = g_mutex_new();
25.85 -
25.86 - monitor->th = NULL;
25.87 -
25.88 - monitor->gmyth_monitor_handler_listener =
25.89 - gmyth_monitor_handler_listener;
25.90 }
25.91
25.92 static void
25.93 @@ -197,14 +146,9 @@
25.94
25.95 monitor->allow_msgs_listener = FALSE;
25.96
25.97 - if (monitor->th != NULL) {
25.98 - gboolean *ret = (gboolean *) g_thread_join(monitor->th);
25.99 -
25.100 - if (*ret == FALSE)
25.101 - gmyth_debug("Error closing GThread listener socket!");
25.102 - else
25.103 - gmyth_debug("Closed GThread listener socket.");
25.104 - // g_object_unref( monitor->th );
25.105 + if (monitor->io_source != 0) {
25.106 + g_source_remove (monitor->io_source);
25.107 + monitor->io_source = 0;
25.108 }
25.109
25.110 /*
25.111 @@ -226,6 +170,7 @@
25.112 monitor->hostname = NULL;
25.113 }
25.114
25.115 +
25.116 if (monitor->backend_msgs != NULL) {
25.117 g_hash_table_destroy(monitor->backend_msgs);
25.118 monitor->backend_msgs = NULL;
25.119 @@ -236,6 +181,7 @@
25.120 * io_watcher_cond = NULL; }
25.121 */
25.122
25.123 +
25.124 G_OBJECT_CLASS(gmyth_monitor_handler_parent_class)->dispose(object);
25.125 }
25.126
25.127 @@ -353,30 +299,22 @@
25.128 gmyth_debug("Monitor event socket --- hostname: %s, port %d\n",
25.129 monitor->hostname, monitor->port);
25.130
25.131 - if (NULL != monitor->event_sock) {
25.132 + if (monitor->event_sock != NULL) {
25.133 g_object_unref(monitor->event_sock);
25.134 monitor->event_sock = NULL;
25.135 }
25.136
25.137 /*
25.138 - * configure the event socket
25.139 + * configure the event socket
25.140 */
25.141 - if (NULL == monitor->event_sock) {
25.142 - if (!gmyth_connect_to_backend_monitor(monitor)) {
25.143 - gmyth_debug("Connection to backend failed (Event Socket)!");
25.144 - ret = FALSE;
25.145 - } else {
25.146 - gmyth_debug
25.147 - ("Remote monitor event socket had been succesfully created. (io_fd == %d)\n",
25.148 - g_io_channel_unix_get_fd(monitor->event_sock->sd_io_ch));
25.149 - }
25.150 + if (!gmyth_connect_to_backend_monitor(monitor)) {
25.151 + gmyth_debug("Connection to backend failed (Event Socket)!");
25.152 + ret = FALSE;
25.153 } else {
25.154 - gmyth_debug
25.155 - ("ASSERT ERROR: Remote monitor event socket is not NULL at the setup...\n");
25.156 + gmyth_debug ("Remote monitor event socket had been succesfully create");
25.157 }
25.158
25.159 return ret;
25.160 -
25.161 }
25.162
25.163 /**
25.164 @@ -493,122 +431,73 @@
25.165 * @return Pointer to a gboolean <code>true</code> value, if the data was
25.166 * successfully read.
25.167 */
25.168 -gpointer
25.169 -gmyth_monitor_handler_listener(gpointer data)
25.170 +static gboolean
25.171 +gmyth_monitor_handler_listener (GIOChannel *io_channel,
25.172 + GIOCondition io_cond,
25.173 + gpointer data)
25.174 {
25.175 - GMythMonitorHandler *monitor = (GMythMonitorHandler *) data;
25.176 + GMythMonitorHandler *monitor;
25.177 guint recv = 0;
25.178 - gboolean *ret = g_new0(gboolean, 1);
25.179 gsize len = 0;
25.180 - GIOChannel *io_channel = monitor->event_sock->sd_io_ch;
25.181 - GIOCondition io_cond =
25.182 - g_io_channel_get_buffer_condition(io_channel);
25.183 - static guint count = 0;
25.184 + GMythStringList *strlist = NULL;
25.185 + gint bytes_sent = 0;
25.186
25.187 - *ret = TRUE;
25.188 + monitor = (GMythMonitorHandler *) data;
25.189
25.190 gmyth_debug("Entering MONITOR handler listener...");
25.191
25.192 myth_control_acquire_context(monitor, TRUE);
25.193
25.194 - if ((io_cond & G_IO_HUP) != 0) {
25.195 - *ret = FALSE;
25.196 + if (((io_cond & G_IO_HUP) != 0) ||
25.197 + ((io_cond & G_IO_ERR) != 0)) {
25.198 goto clean_up;
25.199 }
25.200
25.201 - GMythStringList *strlist = NULL;
25.202
25.203 - if (NULL == io_channel) {
25.204 - gmyth_debug("Monitor socket is NULL! (GIOChannel)");
25.205 - *ret = FALSE;
25.206 - goto clean_up;
25.207 + gmyth_debug("Listening on Monitor socket...!\n");
25.208 + strlist = gmyth_string_list_new();
25.209 +
25.210 + len = gmyth_socket_read_stringlist(monitor->event_sock, strlist);
25.211 + if ((len > 0) && strlist != NULL && gmyth_string_list_length(strlist) > 0) {
25.212 + gchar *back_msg_action;
25.213 + gint msg_type;
25.214 +
25.215 + bytes_sent = gmyth_string_list_get_int(strlist, 0);
25.216 + // on backend error
25.217 + gmyth_debug ("received data buffer from IO event channel... %d strings gone!\n", len);
25.218 + recv += len;
25.219 +
25.220 + /*
25.221 + * debug purpose: prints out all the string list
25.222 + * elements
25.223 + */
25.224 + g_list_foreach(strlist->glist,
25.225 + (GFunc) gmyth_monitor_handler_print,
25.226 + NULL);
25.227 +
25.228 + back_msg_action = g_new0(gchar, 1);
25.229 + msg_type = gmyth_monitor_handler_is_backend_message(monitor,
25.230 + strlist,
25.231 + &back_msg_action);
25.232 +
25.233 + if (msg_type != GMYTH_BACKEND_NO_MESSAGE) {
25.234 + g_signal_emit(monitor,
25.235 + GMYTH_MONITOR_HANDLER_GET_CLASS(monitor)->backend_events_handler_signal_id,
25.236 + 0, msg_type, back_msg_action);
25.237 + }
25.238 +
25.239 + if (back_msg_action != NULL)
25.240 + g_free(back_msg_action);
25.241 +
25.242 + g_object_unref(strlist);
25.243 }
25.244
25.245 - while (monitor->allow_msgs_listener) {
25.246 - ++count;
25.247 -
25.248 - gmyth_debug("%d - Listening on Monitor socket...!\n", count);
25.249 -
25.250 - do {
25.251 -
25.252 - gint bytes_sent = 0;
25.253 -
25.254 - strlist = gmyth_string_list_new();
25.255 -
25.256 - if (monitor->event_sock != NULL) {
25.257 -
25.258 - len =
25.259 - gmyth_socket_read_stringlist(monitor->event_sock,
25.260 - strlist);
25.261 -
25.262 - if ((len > 0) && strlist != NULL
25.263 - && gmyth_string_list_length(strlist) > 0) {
25.264 - bytes_sent = gmyth_string_list_get_int(strlist, 0); // -1
25.265 - //
25.266 - //
25.267 - // on
25.268 - // backend
25.269 - // error
25.270 -
25.271 - gmyth_debug
25.272 - ("[%s] MONITOR: received data buffer from IO event channel... %d strings gone!\n",
25.273 - __FUNCTION__, len);
25.274 -
25.275 - recv += len;
25.276 -
25.277 - /*
25.278 - * debug purpose: prints out all the string list
25.279 - * elements
25.280 - */
25.281 - g_list_foreach(strlist->glist,
25.282 - (GFunc) gmyth_monitor_handler_print,
25.283 - NULL);
25.284 -
25.285 - gchar *back_msg_action = g_new0(gchar, 1);
25.286 - gint msg_type =
25.287 - gmyth_monitor_handler_is_backend_message(monitor,
25.288 - strlist,
25.289 - &back_msg_action);
25.290 -
25.291 - if (monitor != NULL
25.292 - && msg_type != GMYTH_BACKEND_NO_MESSAGE)
25.293 - g_signal_emit(monitor, GMYTH_MONITOR_HANDLER_GET_CLASS(monitor)->backend_events_handler_signal_id, 0, /* details
25.294 - */
25.295 - msg_type, back_msg_action);
25.296 -
25.297 - if (back_msg_action != NULL)
25.298 - g_free(back_msg_action);
25.299 -
25.300 - }
25.301 -
25.302 - }
25.303 -
25.304 - if (strlist != NULL) {
25.305 - g_object_unref(strlist);
25.306 - strlist = NULL;
25.307 - }
25.308 -
25.309 - io_cond = g_io_channel_get_buffer_condition(io_channel);
25.310 -
25.311 - g_usleep(500);
25.312 -
25.313 - }
25.314 - while (recv <= 0 && ((io_cond & G_IO_HUP) == 0));
25.315 -
25.316 - gmyth_debug("\tMONITOR EVENT: Read %d bytes\n", recv);
25.317 -
25.318 - } /* main GThread while */
25.319 -
25.320 - clean_up:
25.321 +clean_up:
25.322 myth_control_release_context(monitor);
25.323 -
25.324 - g_thread_exit(ret);
25.325 -
25.326 - return (gpointer) ret;
25.327 -
25.328 + return TRUE;
25.329 }
25.330
25.331 -/**
25.332 +/**
25.333 * Opens connection events' socket the the Monitor socket on
25.334 * MythTV backend server.
25.335 *
25.336 @@ -616,7 +505,7 @@
25.337 *
25.338 * @return <code>true</code>, if the socket was successfully opened.
25.339 */
25.340 -static gboolean
25.341 +static gboolean
25.342 gmyth_connect_to_backend_monitor(GMythMonitorHandler * monitor)
25.343 {
25.344 gboolean ret = TRUE;
25.345 @@ -625,7 +514,7 @@
25.346
25.347 /*
25.348 * Connects the socket, send Mythtv ANN Monitor and verify Mythtv
25.349 - * protocol version
25.350 + * protocol version
25.351 */
25.352 if (!gmyth_socket_connect_to_backend_events(monitor->event_sock,
25.353 monitor->hostname,
25.354 @@ -638,52 +527,38 @@
25.355 return ret;
25.356 }
25.357
25.358 -/**
25.359 +/**
25.360 * Opens connection the the Monitor socket on MythTV backend server,
25.361 * where all status messages are notified to the client.
25.362 - *
25.363 + *
25.364 * @param monitor The GMythMonitorHandler instance.
25.365 * @param channel The GIOChannel instance to the Monitor socket.
25.366 - *
25.367 + *
25.368 * @return Pointer to the boolean value, and it is <code>true</code> only if the
25.369 - * GMythMonitorHandler could be configured.
25.370 + * GMythMonitorHandler could be configured.
25.371 */
25.372 -static gboolean
25.373 +static gboolean
25.374 gmyth_monitor_handler_setup(GMythMonitorHandler * monitor,
25.375 GIOChannel * channel)
25.376 {
25.377 - gboolean ret = TRUE;
25.378 + gboolean ret = TRUE;
25.379
25.380 if (channel != NULL) {
25.381 monitor->allow_msgs_listener = TRUE;
25.382 -
25.383 - monitor->th =
25.384 - g_thread_create((GThreadFunc) gmyth_monitor_handler_listener,
25.385 - monitor, TRUE, NULL);
25.386 - gmyth_debug("MONITOR GThread created!");
25.387 + monitor->io_source = g_io_add_watch (channel, G_IO_IN | G_IO_ERR | G_IO_HUP,
25.388 + gmyth_monitor_handler_listener,
25.389 + monitor);
25.390 } else {
25.391 ret = FALSE;
25.392 - goto cleanup;
25.393 }
25.394 -
25.395 - if (NULL == monitor->th) {
25.396 - gmyth_debug
25.397 - ("[%s] Error adding GThread listener function to the IO control channel!\n",
25.398 - __FUNCTION__);
25.399 - ret = FALSE;
25.400 - goto cleanup;
25.401 - }
25.402 -
25.403 - cleanup:
25.404 -
25.405 return ret;
25.406 }
25.407
25.408 -/**
25.409 +/**
25.410 * Starts the MonitorHandler thread to the GIOWatcher.
25.411 - *
25.412 + *
25.413 * @param monitor The GMythMonitorHandler instance.
25.414 - *
25.415 + *
25.416 * @return <code>true</code>, if the MonitorHandler was started.
25.417 */
25.418 gboolean
26.1 --- a/gmyth/src/gmyth_monitor_handler.h Wed Aug 29 10:00:25 2007 +0100
26.2 +++ b/gmyth/src/gmyth_monitor_handler.h Wed Aug 29 14:29:24 2007 +0100
26.3 @@ -63,12 +63,12 @@
26.4 GObjectClass parent_class;
26.5
26.6 /*
26.7 - * callbacks
26.8 + * callbacks
26.9 */
26.10 guint backend_events_handler_signal_id;
26.11
26.12 /*
26.13 - * signal default handlers
26.14 + * signal default handlers
26.15 */
26.16 void (*backend_events_handler) (GMythMonitorHandler *
26.17 monitor, gint msg_code,
26.18 @@ -88,13 +88,7 @@
26.19 */
26.20 GMythSocket *event_sock;
26.21
26.22 -
26.23 -
26.24 -
26.25 -
26.26 -
26.27 -
26.28 - gpointer(*gmyth_monitor_handler_listener) (gpointer data);
26.29 + //gpointer(*gmyth_monitor_handler_listener) (gpointer data);
26.30
26.31 gchar *hostname;
26.32 gint port;
26.33 @@ -109,9 +103,7 @@
26.34 GHashTable *backend_msgs;
26.35
26.36 GMutex *mutex;
26.37 -
26.38 - GThread *th;
26.39 -
26.40 + guint io_source;
26.41 };
26.42
26.43 GType gmyth_monitor_handler_get_type(void);