[svn r39] Added mythtv gnomevfs module based on gmyth trunk
authormelunko
Mon Oct 23 14:41:30 2006 +0100 (2006-10-23)
branchtrunk
changeset 38d5f5855e7800
parent 37 324e04989738
child 39 9e534ac483e6
[svn r39] Added mythtv gnomevfs module based on gmyth
gmyth/src/Makefile.am
libgnomevfs2-mythtv/AUTHORS
libgnomevfs2-mythtv/COPYING
libgnomevfs2-mythtv/ChangeLog
libgnomevfs2-mythtv/INSTALL
libgnomevfs2-mythtv/Makefile.am
libgnomevfs2-mythtv/NEWS
libgnomevfs2-mythtv/README
libgnomevfs2-mythtv/autogen.sh
libgnomevfs2-mythtv/common/Makefile.am
libgnomevfs2-mythtv/common/autogen-helper.sh
libgnomevfs2-mythtv/configure.ac
libgnomevfs2-mythtv/debian/README.Debian
libgnomevfs2-mythtv/debian/changelog
libgnomevfs2-mythtv/debian/compat
libgnomevfs2-mythtv/debian/control
libgnomevfs2-mythtv/debian/copyright
libgnomevfs2-mythtv/debian/dirs
libgnomevfs2-mythtv/debian/rules
libgnomevfs2-mythtv/m4/Makefile.am
libgnomevfs2-mythtv/m4/as-compiler-flag.m4
libgnomevfs2-mythtv/m4/as-expand.m4
libgnomevfs2-mythtv/m4/as-version.m4
libgnomevfs2-mythtv/modules/Makefile.am
libgnomevfs2-mythtv/modules/mythtv-method.c
libgnomevfs2-mythtv/modules/mythtv-module.conf
     1.1 --- a/gmyth/src/Makefile.am	Mon Oct 23 14:36:26 2006 +0100
     1.2 +++ b/gmyth/src/Makefile.am	Mon Oct 23 14:41:30 2006 +0100
     1.3 @@ -14,7 +14,10 @@
     1.4  	gmyth_util.c				\
     1.5  	gmyth_query.c				\
     1.6  	gmyth_socket.c				\
     1.7 -	gmyth_stringlist.c				
     1.8 +	gmyth_stringlist.c			\
     1.9 +	myth_file_transfer.c			\
    1.10 +	myth_uri.c				\
    1.11 +	myth_livetv.c
    1.12  
    1.13  libgmyth_la_CFLAGS = 			\
    1.14  	-DDATADIR=\"$(pkgdatadir)\" \
    1.15 @@ -51,7 +54,10 @@
    1.16  	gmyth_query.h 				\
    1.17  	gmyth_socket.h 				\
    1.18  	gmyth_remote_util.h			\
    1.19 -	gmyth_stringlist.h 				
    1.20 +	gmyth_stringlist.h 			\
    1.21 +	myth_file_transfer.h			\
    1.22 +	myth_uri.h				\
    1.23 +	myth_livetv.h
    1.24  
    1.25  CLEANFILES = $(BUILT_SOURCES)
    1.26  
     2.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     2.2 +++ b/libgnomevfs2-mythtv/COPYING	Mon Oct 23 14:41:30 2006 +0100
     2.3 @@ -0,0 +1,504 @@
     2.4 +		  GNU LESSER GENERAL PUBLIC LICENSE
     2.5 +		       Version 2.1, February 1999
     2.6 +
     2.7 + Copyright (C) 1991, 1999 Free Software Foundation, Inc.
     2.8 +     51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
     2.9 + Everyone is permitted to copy and distribute verbatim copies
    2.10 + of this license document, but changing it is not allowed.
    2.11 +
    2.12 +[This is the first released version of the Lesser GPL.  It also counts
    2.13 + as the successor of the GNU Library Public License, version 2, hence
    2.14 + the version number 2.1.]
    2.15 +
    2.16 +			    Preamble
    2.17 +
    2.18 +  The licenses for most software are designed to take away your
    2.19 +freedom to share and change it.  By contrast, the GNU General Public
    2.20 +Licenses are intended to guarantee your freedom to share and change
    2.21 +free software--to make sure the software is free for all its users.
    2.22 +
    2.23 +  This license, the Lesser General Public License, applies to some
    2.24 +specially designated software packages--typically libraries--of the
    2.25 +Free Software Foundation and other authors who decide to use it.  You
    2.26 +can use it too, but we suggest you first think carefully about whether
    2.27 +this license or the ordinary General Public License is the better
    2.28 +strategy to use in any particular case, based on the explanations below.
    2.29 +
    2.30 +  When we speak of free software, we are referring to freedom of use,
    2.31 +not price.  Our General Public Licenses are designed to make sure that
    2.32 +you have the freedom to distribute copies of free software (and charge
    2.33 +for this service if you wish); that you receive source code or can get
    2.34 +it if you want it; that you can change the software and use pieces of
    2.35 +it in new free programs; and that you are informed that you can do
    2.36 +these things.
    2.37 +
    2.38 +  To protect your rights, we need to make restrictions that forbid
    2.39 +distributors to deny you these rights or to ask you to surrender these
    2.40 +rights.  These restrictions translate to certain responsibilities for
    2.41 +you if you distribute copies of the library or if you modify it.
    2.42 +
    2.43 +  For example, if you distribute copies of the library, whether gratis
    2.44 +or for a fee, you must give the recipients all the rights that we gave
    2.45 +you.  You must make sure that they, too, receive or can get the source
    2.46 +code.  If you link other code with the library, you must provide
    2.47 +complete object files to the recipients, so that they can relink them
    2.48 +with the library after making changes to the library and recompiling
    2.49 +it.  And you must show them these terms so they know their rights.
    2.50 +
    2.51 +  We protect your rights with a two-step method: (1) we copyright the
    2.52 +library, and (2) we offer you this license, which gives you legal
    2.53 +permission to copy, distribute and/or modify the library.
    2.54 +
    2.55 +  To protect each distributor, we want to make it very clear that
    2.56 +there is no warranty for the free library.  Also, if the library is
    2.57 +modified by someone else and passed on, the recipients should know
    2.58 +that what they have is not the original version, so that the original
    2.59 +author's reputation will not be affected by problems that might be
    2.60 +introduced by others.
    2.61 +
    2.62 +  Finally, software patents pose a constant threat to the existence of
    2.63 +any free program.  We wish to make sure that a company cannot
    2.64 +effectively restrict the users of a free program by obtaining a
    2.65 +restrictive license from a patent holder.  Therefore, we insist that
    2.66 +any patent license obtained for a version of the library must be
    2.67 +consistent with the full freedom of use specified in this license.
    2.68 +
    2.69 +  Most GNU software, including some libraries, is covered by the
    2.70 +ordinary GNU General Public License.  This license, the GNU Lesser
    2.71 +General Public License, applies to certain designated libraries, and
    2.72 +is quite different from the ordinary General Public License.  We use
    2.73 +this license for certain libraries in order to permit linking those
    2.74 +libraries into non-free programs.
    2.75 +
    2.76 +  When a program is linked with a library, whether statically or using
    2.77 +a shared library, the combination of the two is legally speaking a
    2.78 +combined work, a derivative of the original library.  The ordinary
    2.79 +General Public License therefore permits such linking only if the
    2.80 +entire combination fits its criteria of freedom.  The Lesser General
    2.81 +Public License permits more lax criteria for linking other code with
    2.82 +the library.
    2.83 +
    2.84 +  We call this license the "Lesser" General Public License because it
    2.85 +does Less to protect the user's freedom than the ordinary General
    2.86 +Public License.  It also provides other free software developers Less
    2.87 +of an advantage over competing non-free programs.  These disadvantages
    2.88 +are the reason we use the ordinary General Public License for many
    2.89 +libraries.  However, the Lesser license provides advantages in certain
    2.90 +special circumstances.
    2.91 +
    2.92 +  For example, on rare occasions, there may be a special need to
    2.93 +encourage the widest possible use of a certain library, so that it becomes
    2.94 +a de-facto standard.  To achieve this, non-free programs must be
    2.95 +allowed to use the library.  A more frequent case is that a free
    2.96 +library does the same job as widely used non-free libraries.  In this
    2.97 +case, there is little to gain by limiting the free library to free
    2.98 +software only, so we use the Lesser General Public License.
    2.99 +
   2.100 +  In other cases, permission to use a particular library in non-free
   2.101 +programs enables a greater number of people to use a large body of
   2.102 +free software.  For example, permission to use the GNU C Library in
   2.103 +non-free programs enables many more people to use the whole GNU
   2.104 +operating system, as well as its variant, the GNU/Linux operating
   2.105 +system.
   2.106 +
   2.107 +  Although the Lesser General Public License is Less protective of the
   2.108 +users' freedom, it does ensure that the user of a program that is
   2.109 +linked with the Library has the freedom and the wherewithal to run
   2.110 +that program using a modified version of the Library.
   2.111 +
   2.112 +  The precise terms and conditions for copying, distribution and
   2.113 +modification follow.  Pay close attention to the difference between a
   2.114 +"work based on the library" and a "work that uses the library".  The
   2.115 +former contains code derived from the library, whereas the latter must
   2.116 +be combined with the library in order to run.
   2.117 +
   2.118 +		  GNU LESSER GENERAL PUBLIC LICENSE
   2.119 +   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
   2.120 +
   2.121 +  0. This License Agreement applies to any software library or other
   2.122 +program which contains a notice placed by the copyright holder or
   2.123 +other authorized party saying it may be distributed under the terms of
   2.124 +this Lesser General Public License (also called "this License").
   2.125 +Each licensee is addressed as "you".
   2.126 +
   2.127 +  A "library" means a collection of software functions and/or data
   2.128 +prepared so as to be conveniently linked with application programs
   2.129 +(which use some of those functions and data) to form executables.
   2.130 +
   2.131 +  The "Library", below, refers to any such software library or work
   2.132 +which has been distributed under these terms.  A "work based on the
   2.133 +Library" means either the Library or any derivative work under
   2.134 +copyright law: that is to say, a work containing the Library or a
   2.135 +portion of it, either verbatim or with modifications and/or translated
   2.136 +straightforwardly into another language.  (Hereinafter, translation is
   2.137 +included without limitation in the term "modification".)
   2.138 +
   2.139 +  "Source code" for a work means the preferred form of the work for
   2.140 +making modifications to it.  For a library, complete source code means
   2.141 +all the source code for all modules it contains, plus any associated
   2.142 +interface definition files, plus the scripts used to control compilation
   2.143 +and installation of the library.
   2.144 +
   2.145 +  Activities other than copying, distribution and modification are not
   2.146 +covered by this License; they are outside its scope.  The act of
   2.147 +running a program using the Library is not restricted, and output from
   2.148 +such a program is covered only if its contents constitute a work based
   2.149 +on the Library (independent of the use of the Library in a tool for
   2.150 +writing it).  Whether that is true depends on what the Library does
   2.151 +and what the program that uses the Library does.
   2.152 +  
   2.153 +  1. You may copy and distribute verbatim copies of the Library's
   2.154 +complete source code as you receive it, in any medium, provided that
   2.155 +you conspicuously and appropriately publish on each copy an
   2.156 +appropriate copyright notice and disclaimer of warranty; keep intact
   2.157 +all the notices that refer to this License and to the absence of any
   2.158 +warranty; and distribute a copy of this License along with the
   2.159 +Library.
   2.160 +
   2.161 +  You may charge a fee for the physical act of transferring a copy,
   2.162 +and you may at your option offer warranty protection in exchange for a
   2.163 +fee.
   2.164 +
   2.165 +  2. You may modify your copy or copies of the Library or any portion
   2.166 +of it, thus forming a work based on the Library, and copy and
   2.167 +distribute such modifications or work under the terms of Section 1
   2.168 +above, provided that you also meet all of these conditions:
   2.169 +
   2.170 +    a) The modified work must itself be a software library.
   2.171 +
   2.172 +    b) You must cause the files modified to carry prominent notices
   2.173 +    stating that you changed the files and the date of any change.
   2.174 +
   2.175 +    c) You must cause the whole of the work to be licensed at no
   2.176 +    charge to all third parties under the terms of this License.
   2.177 +
   2.178 +    d) If a facility in the modified Library refers to a function or a
   2.179 +    table of data to be supplied by an application program that uses
   2.180 +    the facility, other than as an argument passed when the facility
   2.181 +    is invoked, then you must make a good faith effort to ensure that,
   2.182 +    in the event an application does not supply such function or
   2.183 +    table, the facility still operates, and performs whatever part of
   2.184 +    its purpose remains meaningful.
   2.185 +
   2.186 +    (For example, a function in a library to compute square roots has
   2.187 +    a purpose that is entirely well-defined independent of the
   2.188 +    application.  Therefore, Subsection 2d requires that any
   2.189 +    application-supplied function or table used by this function must
   2.190 +    be optional: if the application does not supply it, the square
   2.191 +    root function must still compute square roots.)
   2.192 +
   2.193 +These requirements apply to the modified work as a whole.  If
   2.194 +identifiable sections of that work are not derived from the Library,
   2.195 +and can be reasonably considered independent and separate works in
   2.196 +themselves, then this License, and its terms, do not apply to those
   2.197 +sections when you distribute them as separate works.  But when you
   2.198 +distribute the same sections as part of a whole which is a work based
   2.199 +on the Library, the distribution of the whole must be on the terms of
   2.200 +this License, whose permissions for other licensees extend to the
   2.201 +entire whole, and thus to each and every part regardless of who wrote
   2.202 +it.
   2.203 +
   2.204 +Thus, it is not the intent of this section to claim rights or contest
   2.205 +your rights to work written entirely by you; rather, the intent is to
   2.206 +exercise the right to control the distribution of derivative or
   2.207 +collective works based on the Library.
   2.208 +
   2.209 +In addition, mere aggregation of another work not based on the Library
   2.210 +with the Library (or with a work based on the Library) on a volume of
   2.211 +a storage or distribution medium does not bring the other work under
   2.212 +the scope of this License.
   2.213 +
   2.214 +  3. You may opt to apply the terms of the ordinary GNU General Public
   2.215 +License instead of this License to a given copy of the Library.  To do
   2.216 +this, you must alter all the notices that refer to this License, so
   2.217 +that they refer to the ordinary GNU General Public License, version 2,
   2.218 +instead of to this License.  (If a newer version than version 2 of the
   2.219 +ordinary GNU General Public License has appeared, then you can specify
   2.220 +that version instead if you wish.)  Do not make any other change in
   2.221 +these notices.
   2.222 +
   2.223 +  Once this change is made in a given copy, it is irreversible for
   2.224 +that copy, so the ordinary GNU General Public License applies to all
   2.225 +subsequent copies and derivative works made from that copy.
   2.226 +
   2.227 +  This option is useful when you wish to copy part of the code of
   2.228 +the Library into a program that is not a library.
   2.229 +
   2.230 +  4. You may copy and distribute the Library (or a portion or
   2.231 +derivative of it, under Section 2) in object code or executable form
   2.232 +under the terms of Sections 1 and 2 above provided that you accompany
   2.233 +it with the complete corresponding machine-readable source code, which
   2.234 +must be distributed under the terms of Sections 1 and 2 above on a
   2.235 +medium customarily used for software interchange.
   2.236 +
   2.237 +  If distribution of object code is made by offering access to copy
   2.238 +from a designated place, then offering equivalent access to copy the
   2.239 +source code from the same place satisfies the requirement to
   2.240 +distribute the source code, even though third parties are not
   2.241 +compelled to copy the source along with the object code.
   2.242 +
   2.243 +  5. A program that contains no derivative of any portion of the
   2.244 +Library, but is designed to work with the Library by being compiled or
   2.245 +linked with it, is called a "work that uses the Library".  Such a
   2.246 +work, in isolation, is not a derivative work of the Library, and
   2.247 +therefore falls outside the scope of this License.
   2.248 +
   2.249 +  However, linking a "work that uses the Library" with the Library
   2.250 +creates an executable that is a derivative of the Library (because it
   2.251 +contains portions of the Library), rather than a "work that uses the
   2.252 +library".  The executable is therefore covered by this License.
   2.253 +Section 6 states terms for distribution of such executables.
   2.254 +
   2.255 +  When a "work that uses the Library" uses material from a header file
   2.256 +that is part of the Library, the object code for the work may be a
   2.257 +derivative work of the Library even though the source code is not.
   2.258 +Whether this is true is especially significant if the work can be
   2.259 +linked without the Library, or if the work is itself a library.  The
   2.260 +threshold for this to be true is not precisely defined by law.
   2.261 +
   2.262 +  If such an object file uses only numerical parameters, data
   2.263 +structure layouts and accessors, and small macros and small inline
   2.264 +functions (ten lines or less in length), then the use of the object
   2.265 +file is unrestricted, regardless of whether it is legally a derivative
   2.266 +work.  (Executables containing this object code plus portions of the
   2.267 +Library will still fall under Section 6.)
   2.268 +
   2.269 +  Otherwise, if the work is a derivative of the Library, you may
   2.270 +distribute the object code for the work under the terms of Section 6.
   2.271 +Any executables containing that work also fall under Section 6,
   2.272 +whether or not they are linked directly with the Library itself.
   2.273 +
   2.274 +  6. As an exception to the Sections above, you may also combine or
   2.275 +link a "work that uses the Library" with the Library to produce a
   2.276 +work containing portions of the Library, and distribute that work
   2.277 +under terms of your choice, provided that the terms permit
   2.278 +modification of the work for the customer's own use and reverse
   2.279 +engineering for debugging such modifications.
   2.280 +
   2.281 +  You must give prominent notice with each copy of the work that the
   2.282 +Library is used in it and that the Library and its use are covered by
   2.283 +this License.  You must supply a copy of this License.  If the work
   2.284 +during execution displays copyright notices, you must include the
   2.285 +copyright notice for the Library among them, as well as a reference
   2.286 +directing the user to the copy of this License.  Also, you must do one
   2.287 +of these things:
   2.288 +
   2.289 +    a) Accompany the work with the complete corresponding
   2.290 +    machine-readable source code for the Library including whatever
   2.291 +    changes were used in the work (which must be distributed under
   2.292 +    Sections 1 and 2 above); and, if the work is an executable linked
   2.293 +    with the Library, with the complete machine-readable "work that
   2.294 +    uses the Library", as object code and/or source code, so that the
   2.295 +    user can modify the Library and then relink to produce a modified
   2.296 +    executable containing the modified Library.  (It is understood
   2.297 +    that the user who changes the contents of definitions files in the
   2.298 +    Library will not necessarily be able to recompile the application
   2.299 +    to use the modified definitions.)
   2.300 +
   2.301 +    b) Use a suitable shared library mechanism for linking with the
   2.302 +    Library.  A suitable mechanism is one that (1) uses at run time a
   2.303 +    copy of the library already present on the user's computer system,
   2.304 +    rather than copying library functions into the executable, and (2)
   2.305 +    will operate properly with a modified version of the library, if
   2.306 +    the user installs one, as long as the modified version is
   2.307 +    interface-compatible with the version that the work was made with.
   2.308 +
   2.309 +    c) Accompany the work with a written offer, valid for at
   2.310 +    least three years, to give the same user the materials
   2.311 +    specified in Subsection 6a, above, for a charge no more
   2.312 +    than the cost of performing this distribution.
   2.313 +
   2.314 +    d) If distribution of the work is made by offering access to copy
   2.315 +    from a designated place, offer equivalent access to copy the above
   2.316 +    specified materials from the same place.
   2.317 +
   2.318 +    e) Verify that the user has already received a copy of these
   2.319 +    materials or that you have already sent this user a copy.
   2.320 +
   2.321 +  For an executable, the required form of the "work that uses the
   2.322 +Library" must include any data and utility programs needed for
   2.323 +reproducing the executable from it.  However, as a special exception,
   2.324 +the materials to be distributed need not include anything that is
   2.325 +normally distributed (in either source or binary form) with the major
   2.326 +components (compiler, kernel, and so on) of the operating system on
   2.327 +which the executable runs, unless that component itself accompanies
   2.328 +the executable.
   2.329 +
   2.330 +  It may happen that this requirement contradicts the license
   2.331 +restrictions of other proprietary libraries that do not normally
   2.332 +accompany the operating system.  Such a contradiction means you cannot
   2.333 +use both them and the Library together in an executable that you
   2.334 +distribute.
   2.335 +
   2.336 +  7. You may place library facilities that are a work based on the
   2.337 +Library side-by-side in a single library together with other library
   2.338 +facilities not covered by this License, and distribute such a combined
   2.339 +library, provided that the separate distribution of the work based on
   2.340 +the Library and of the other library facilities is otherwise
   2.341 +permitted, and provided that you do these two things:
   2.342 +
   2.343 +    a) Accompany the combined library with a copy of the same work
   2.344 +    based on the Library, uncombined with any other library
   2.345 +    facilities.  This must be distributed under the terms of the
   2.346 +    Sections above.
   2.347 +
   2.348 +    b) Give prominent notice with the combined library of the fact
   2.349 +    that part of it is a work based on the Library, and explaining
   2.350 +    where to find the accompanying uncombined form of the same work.
   2.351 +
   2.352 +  8. You may not copy, modify, sublicense, link with, or distribute
   2.353 +the Library except as expressly provided under this License.  Any
   2.354 +attempt otherwise to copy, modify, sublicense, link with, or
   2.355 +distribute the Library is void, and will automatically terminate your
   2.356 +rights under this License.  However, parties who have received copies,
   2.357 +or rights, from you under this License will not have their licenses
   2.358 +terminated so long as such parties remain in full compliance.
   2.359 +
   2.360 +  9. You are not required to accept this License, since you have not
   2.361 +signed it.  However, nothing else grants you permission to modify or
   2.362 +distribute the Library or its derivative works.  These actions are
   2.363 +prohibited by law if you do not accept this License.  Therefore, by
   2.364 +modifying or distributing the Library (or any work based on the
   2.365 +Library), you indicate your acceptance of this License to do so, and
   2.366 +all its terms and conditions for copying, distributing or modifying
   2.367 +the Library or works based on it.
   2.368 +
   2.369 +  10. Each time you redistribute the Library (or any work based on the
   2.370 +Library), the recipient automatically receives a license from the
   2.371 +original licensor to copy, distribute, link with or modify the Library
   2.372 +subject to these terms and conditions.  You may not impose any further
   2.373 +restrictions on the recipients' exercise of the rights granted herein.
   2.374 +You are not responsible for enforcing compliance by third parties with
   2.375 +this License.
   2.376 +
   2.377 +  11. If, as a consequence of a court judgment or allegation of patent
   2.378 +infringement or for any other reason (not limited to patent issues),
   2.379 +conditions are imposed on you (whether by court order, agreement or
   2.380 +otherwise) that contradict the conditions of this License, they do not
   2.381 +excuse you from the conditions of this License.  If you cannot
   2.382 +distribute so as to satisfy simultaneously your obligations under this
   2.383 +License and any other pertinent obligations, then as a consequence you
   2.384 +may not distribute the Library at all.  For example, if a patent
   2.385 +license would not permit royalty-free redistribution of the Library by
   2.386 +all those who receive copies directly or indirectly through you, then
   2.387 +the only way you could satisfy both it and this License would be to
   2.388 +refrain entirely from distribution of the Library.
   2.389 +
   2.390 +If any portion of this section is held invalid or unenforceable under any
   2.391 +particular circumstance, the balance of the section is intended to apply,
   2.392 +and the section as a whole is intended to apply in other circumstances.
   2.393 +
   2.394 +It is not the purpose of this section to induce you to infringe any
   2.395 +patents or other property right claims or to contest validity of any
   2.396 +such claims; this section has the sole purpose of protecting the
   2.397 +integrity of the free software distribution system which is
   2.398 +implemented by public license practices.  Many people have made
   2.399 +generous contributions to the wide range of software distributed
   2.400 +through that system in reliance on consistent application of that
   2.401 +system; it is up to the author/donor to decide if he or she is willing
   2.402 +to distribute software through any other system and a licensee cannot
   2.403 +impose that choice.
   2.404 +
   2.405 +This section is intended to make thoroughly clear what is believed to
   2.406 +be a consequence of the rest of this License.
   2.407 +
   2.408 +  12. If the distribution and/or use of the Library is restricted in
   2.409 +certain countries either by patents or by copyrighted interfaces, the
   2.410 +original copyright holder who places the Library under this License may add
   2.411 +an explicit geographical distribution limitation excluding those countries,
   2.412 +so that distribution is permitted only in or among countries not thus
   2.413 +excluded.  In such case, this License incorporates the limitation as if
   2.414 +written in the body of this License.
   2.415 +
   2.416 +  13. The Free Software Foundation may publish revised and/or new
   2.417 +versions of the Lesser General Public License from time to time.
   2.418 +Such new versions will be similar in spirit to the present version,
   2.419 +but may differ in detail to address new problems or concerns.
   2.420 +
   2.421 +Each version is given a distinguishing version number.  If the Library
   2.422 +specifies a version number of this License which applies to it and
   2.423 +"any later version", you have the option of following the terms and
   2.424 +conditions either of that version or of any later version published by
   2.425 +the Free Software Foundation.  If the Library does not specify a
   2.426 +license version number, you may choose any version ever published by
   2.427 +the Free Software Foundation.
   2.428 +
   2.429 +  14. If you wish to incorporate parts of the Library into other free
   2.430 +programs whose distribution conditions are incompatible with these,
   2.431 +write to the author to ask for permission.  For software which is
   2.432 +copyrighted by the Free Software Foundation, write to the Free
   2.433 +Software Foundation; we sometimes make exceptions for this.  Our
   2.434 +decision will be guided by the two goals of preserving the free status
   2.435 +of all derivatives of our free software and of promoting the sharing
   2.436 +and reuse of software generally.
   2.437 +
   2.438 +			    NO WARRANTY
   2.439 +
   2.440 +  15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
   2.441 +WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
   2.442 +EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
   2.443 +OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
   2.444 +KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
   2.445 +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
   2.446 +PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
   2.447 +LIBRARY IS WITH YOU.  SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
   2.448 +THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
   2.449 +
   2.450 +  16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
   2.451 +WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
   2.452 +AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
   2.453 +FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
   2.454 +CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
   2.455 +LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
   2.456 +RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
   2.457 +FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
   2.458 +SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
   2.459 +DAMAGES.
   2.460 +
   2.461 +		     END OF TERMS AND CONDITIONS
   2.462 +
   2.463 +           How to Apply These Terms to Your New Libraries
   2.464 +
   2.465 +  If you develop a new library, and you want it to be of the greatest
   2.466 +possible use to the public, we recommend making it free software that
   2.467 +everyone can redistribute and change.  You can do so by permitting
   2.468 +redistribution under these terms (or, alternatively, under the terms of the
   2.469 +ordinary General Public License).
   2.470 +
   2.471 +  To apply these terms, attach the following notices to the library.  It is
   2.472 +safest to attach them to the start of each source file to most effectively
   2.473 +convey the exclusion of warranty; and each file should have at least the
   2.474 +"copyright" line and a pointer to where the full notice is found.
   2.475 +
   2.476 +    <one line to give the library's name and a brief idea of what it does.>
   2.477 +    Copyright (C) <year>  <name of author>
   2.478 +
   2.479 +    This library is free software; you can redistribute it and/or
   2.480 +    modify it under the terms of the GNU Lesser General Public
   2.481 +    License as published by the Free Software Foundation; either
   2.482 +    version 2.1 of the License, or (at your option) any later version.
   2.483 +
   2.484 +    This library is distributed in the hope that it will be useful,
   2.485 +    but WITHOUT ANY WARRANTY; without even the implied warranty of
   2.486 +    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   2.487 +    Lesser General Public License for more details.
   2.488 +
   2.489 +    You should have received a copy of the GNU Lesser General Public
   2.490 +    License along with this library; if not, write to the Free Software
   2.491 +    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
   2.492 +
   2.493 +Also add information on how to contact you by electronic and paper mail.
   2.494 +
   2.495 +You should also get your employer (if you work as a programmer) or your
   2.496 +school, if any, to sign a "copyright disclaimer" for the library, if
   2.497 +necessary.  Here is a sample; alter the names:
   2.498 +
   2.499 +  Yoyodyne, Inc., hereby disclaims all copyright interest in the
   2.500 +  library `Frob' (a library for tweaking knobs) written by James Random Hacker.
   2.501 +
   2.502 +  <signature of Ty Coon>, 1 April 1990
   2.503 +  Ty Coon, President of Vice
   2.504 +
   2.505 +That's all there is to it!
   2.506 +
   2.507 +
     3.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     3.2 +++ b/libgnomevfs2-mythtv/INSTALL	Mon Oct 23 14:41:30 2006 +0100
     3.3 @@ -0,0 +1,236 @@
     3.4 +Installation Instructions
     3.5 +*************************
     3.6 +
     3.7 +Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005 Free
     3.8 +Software Foundation, Inc.
     3.9 +
    3.10 +This file is free documentation; the Free Software Foundation gives
    3.11 +unlimited permission to copy, distribute and modify it.
    3.12 +
    3.13 +Basic Installation
    3.14 +==================
    3.15 +
    3.16 +These are generic installation instructions.
    3.17 +
    3.18 +   The `configure' shell script attempts to guess correct values for
    3.19 +various system-dependent variables used during compilation.  It uses
    3.20 +those values to create a `Makefile' in each directory of the package.
    3.21 +It may also create one or more `.h' files containing system-dependent
    3.22 +definitions.  Finally, it creates a shell script `config.status' that
    3.23 +you can run in the future to recreate the current configuration, and a
    3.24 +file `config.log' containing compiler output (useful mainly for
    3.25 +debugging `configure').
    3.26 +
    3.27 +   It can also use an optional file (typically called `config.cache'
    3.28 +and enabled with `--cache-file=config.cache' or simply `-C') that saves
    3.29 +the results of its tests to speed up reconfiguring.  (Caching is
    3.30 +disabled by default to prevent problems with accidental use of stale
    3.31 +cache files.)
    3.32 +
    3.33 +   If you need to do unusual things to compile the package, please try
    3.34 +to figure out how `configure' could check whether to do them, and mail
    3.35 +diffs or instructions to the address given in the `README' so they can
    3.36 +be considered for the next release.  If you are using the cache, and at
    3.37 +some point `config.cache' contains results you don't want to keep, you
    3.38 +may remove or edit it.
    3.39 +
    3.40 +   The file `configure.ac' (or `configure.in') is used to create
    3.41 +`configure' by a program called `autoconf'.  You only need
    3.42 +`configure.ac' if you want to change it or regenerate `configure' using
    3.43 +a newer version of `autoconf'.
    3.44 +
    3.45 +The simplest way to compile this package is:
    3.46 +
    3.47 +  1. `cd' to the directory containing the package's source code and type
    3.48 +     `./configure' to configure the package for your system.  If you're
    3.49 +     using `csh' on an old version of System V, you might need to type
    3.50 +     `sh ./configure' instead to prevent `csh' from trying to execute
    3.51 +     `configure' itself.
    3.52 +
    3.53 +     Running `configure' takes awhile.  While running, it prints some
    3.54 +     messages telling which features it is checking for.
    3.55 +
    3.56 +  2. Type `make' to compile the package.
    3.57 +
    3.58 +  3. Optionally, type `make check' to run any self-tests that come with
    3.59 +     the package.
    3.60 +
    3.61 +  4. Type `make install' to install the programs and any data files and
    3.62 +     documentation.
    3.63 +
    3.64 +  5. You can remove the program binaries and object files from the
    3.65 +     source code directory by typing `make clean'.  To also remove the
    3.66 +     files that `configure' created (so you can compile the package for
    3.67 +     a different kind of computer), type `make distclean'.  There is
    3.68 +     also a `make maintainer-clean' target, but that is intended mainly
    3.69 +     for the package's developers.  If you use it, you may have to get
    3.70 +     all sorts of other programs in order to regenerate files that came
    3.71 +     with the distribution.
    3.72 +
    3.73 +Compilers and Options
    3.74 +=====================
    3.75 +
    3.76 +Some systems require unusual options for compilation or linking that the
    3.77 +`configure' script does not know about.  Run `./configure --help' for
    3.78 +details on some of the pertinent environment variables.
    3.79 +
    3.80 +   You can give `configure' initial values for configuration parameters
    3.81 +by setting variables in the command line or in the environment.  Here
    3.82 +is an example:
    3.83 +
    3.84 +     ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix
    3.85 +
    3.86 +   *Note Defining Variables::, for more details.
    3.87 +
    3.88 +Compiling For Multiple Architectures
    3.89 +====================================
    3.90 +
    3.91 +You can compile the package for more than one kind of computer at the
    3.92 +same time, by placing the object files for each architecture in their
    3.93 +own directory.  To do this, you must use a version of `make' that
    3.94 +supports the `VPATH' variable, such as GNU `make'.  `cd' to the
    3.95 +directory where you want the object files and executables to go and run
    3.96 +the `configure' script.  `configure' automatically checks for the
    3.97 +source code in the directory that `configure' is in and in `..'.
    3.98 +
    3.99 +   If you have to use a `make' that does not support the `VPATH'
   3.100 +variable, you have to compile the package for one architecture at a
   3.101 +time in the source code directory.  After you have installed the
   3.102 +package for one architecture, use `make distclean' before reconfiguring
   3.103 +for another architecture.
   3.104 +
   3.105 +Installation Names
   3.106 +==================
   3.107 +
   3.108 +By default, `make install' installs the package's commands under
   3.109 +`/usr/local/bin', include files under `/usr/local/include', etc.  You
   3.110 +can specify an installation prefix other than `/usr/local' by giving
   3.111 +`configure' the option `--prefix=PREFIX'.
   3.112 +
   3.113 +   You can specify separate installation prefixes for
   3.114 +architecture-specific files and architecture-independent files.  If you
   3.115 +pass the option `--exec-prefix=PREFIX' to `configure', the package uses
   3.116 +PREFIX as the prefix for installing programs and libraries.
   3.117 +Documentation and other data files still use the regular prefix.
   3.118 +
   3.119 +   In addition, if you use an unusual directory layout you can give
   3.120 +options like `--bindir=DIR' to specify different values for particular
   3.121 +kinds of files.  Run `configure --help' for a list of the directories
   3.122 +you can set and what kinds of files go in them.
   3.123 +
   3.124 +   If the package supports it, you can cause programs to be installed
   3.125 +with an extra prefix or suffix on their names by giving `configure' the
   3.126 +option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
   3.127 +
   3.128 +Optional Features
   3.129 +=================
   3.130 +
   3.131 +Some packages pay attention to `--enable-FEATURE' options to
   3.132 +`configure', where FEATURE indicates an optional part of the package.
   3.133 +They may also pay attention to `--with-PACKAGE' options, where PACKAGE
   3.134 +is something like `gnu-as' or `x' (for the X Window System).  The
   3.135 +`README' should mention any `--enable-' and `--with-' options that the
   3.136 +package recognizes.
   3.137 +
   3.138 +   For packages that use the X Window System, `configure' can usually
   3.139 +find the X include and library files automatically, but if it doesn't,
   3.140 +you can use the `configure' options `--x-includes=DIR' and
   3.141 +`--x-libraries=DIR' to specify their locations.
   3.142 +
   3.143 +Specifying the System Type
   3.144 +==========================
   3.145 +
   3.146 +There may be some features `configure' cannot figure out automatically,
   3.147 +but needs to determine by the type of machine the package will run on.
   3.148 +Usually, assuming the package is built to be run on the _same_
   3.149 +architectures, `configure' can figure that out, but if it prints a
   3.150 +message saying it cannot guess the machine type, give it the
   3.151 +`--build=TYPE' option.  TYPE can either be a short name for the system
   3.152 +type, such as `sun4', or a canonical name which has the form:
   3.153 +
   3.154 +     CPU-COMPANY-SYSTEM
   3.155 +
   3.156 +where SYSTEM can have one of these forms:
   3.157 +
   3.158 +     OS KERNEL-OS
   3.159 +
   3.160 +   See the file `config.sub' for the possible values of each field.  If
   3.161 +`config.sub' isn't included in this package, then this package doesn't
   3.162 +need to know the machine type.
   3.163 +
   3.164 +   If you are _building_ compiler tools for cross-compiling, you should
   3.165 +use the option `--target=TYPE' to select the type of system they will
   3.166 +produce code for.
   3.167 +
   3.168 +   If you want to _use_ a cross compiler, that generates code for a
   3.169 +platform different from the build platform, you should specify the
   3.170 +"host" platform (i.e., that on which the generated programs will
   3.171 +eventually be run) with `--host=TYPE'.
   3.172 +
   3.173 +Sharing Defaults
   3.174 +================
   3.175 +
   3.176 +If you want to set default values for `configure' scripts to share, you
   3.177 +can create a site shell script called `config.site' that gives default
   3.178 +values for variables like `CC', `cache_file', and `prefix'.
   3.179 +`configure' looks for `PREFIX/share/config.site' if it exists, then
   3.180 +`PREFIX/etc/config.site' if it exists.  Or, you can set the
   3.181 +`CONFIG_SITE' environment variable to the location of the site script.
   3.182 +A warning: not all `configure' scripts look for a site script.
   3.183 +
   3.184 +Defining Variables
   3.185 +==================
   3.186 +
   3.187 +Variables not defined in a site shell script can be set in the
   3.188 +environment passed to `configure'.  However, some packages may run
   3.189 +configure again during the build, and the customized values of these
   3.190 +variables may be lost.  In order to avoid this problem, you should set
   3.191 +them in the `configure' command line, using `VAR=value'.  For example:
   3.192 +
   3.193 +     ./configure CC=/usr/local2/bin/gcc
   3.194 +
   3.195 +causes the specified `gcc' to be used as the C compiler (unless it is
   3.196 +overridden in the site shell script).  Here is a another example:
   3.197 +
   3.198 +     /bin/bash ./configure CONFIG_SHELL=/bin/bash
   3.199 +
   3.200 +Here the `CONFIG_SHELL=/bin/bash' operand causes subsequent
   3.201 +configuration-related scripts to be executed by `/bin/bash'.
   3.202 +
   3.203 +`configure' Invocation
   3.204 +======================
   3.205 +
   3.206 +`configure' recognizes the following options to control how it operates.
   3.207 +
   3.208 +`--help'
   3.209 +`-h'
   3.210 +     Print a summary of the options to `configure', and exit.
   3.211 +
   3.212 +`--version'
   3.213 +`-V'
   3.214 +     Print the version of Autoconf used to generate the `configure'
   3.215 +     script, and exit.
   3.216 +
   3.217 +`--cache-file=FILE'
   3.218 +     Enable the cache: use and save the results of the tests in FILE,
   3.219 +     traditionally `config.cache'.  FILE defaults to `/dev/null' to
   3.220 +     disable caching.
   3.221 +
   3.222 +`--config-cache'
   3.223 +`-C'
   3.224 +     Alias for `--cache-file=config.cache'.
   3.225 +
   3.226 +`--quiet'
   3.227 +`--silent'
   3.228 +`-q'
   3.229 +     Do not print messages saying which checks are being made.  To
   3.230 +     suppress all normal output, redirect it to `/dev/null' (any error
   3.231 +     messages will still be shown).
   3.232 +
   3.233 +`--srcdir=DIR'
   3.234 +     Look for the package's source code in directory DIR.  Usually
   3.235 +     `configure' can determine that directory automatically.
   3.236 +
   3.237 +`configure' also accepts some other, not widely useful, options.  Run
   3.238 +`configure --help' for more details.
   3.239 +
     4.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     4.2 +++ b/libgnomevfs2-mythtv/Makefile.am	Mon Oct 23 14:41:30 2006 +0100
     4.3 @@ -0,0 +1,5 @@
     4.4 +SUBDIRS = modules
     4.5 +DIST_SUBDIRS = common m4 modules
     4.6 +
     4.7 +EXTRA_DIST = \
     4.8 +	autogen.sh
     5.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     5.2 +++ b/libgnomevfs2-mythtv/README	Mon Oct 23 14:41:30 2006 +0100
     5.3 @@ -0,0 +1,3 @@
     5.4 +URI: myth://host:port/filename
     5.5 +
     5.6 +sample: gnomevfs-cat myth://127.0.0.1:7654/video.nuv
     6.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     6.2 +++ b/libgnomevfs2-mythtv/autogen.sh	Mon Oct 23 14:41:30 2006 +0100
     6.3 @@ -0,0 +1,99 @@
     6.4 +#!/bin/sh
     6.5 +# Run this to generate all the initial makefiles, etc.
     6.6 +
     6.7 +DIE=0
     6.8 +package=libgnomevfs2-mythtv
     6.9 +srcfile=configure.ac
    6.10 +
    6.11 +# a quick cvs co if necessary to alleviate the pain - may remove this
    6.12 +# when developers get a clue ;)
    6.13 +if test ! -d common; 
    6.14 +then 
    6.15 +  echo "+ getting common/ from cvs"
    6.16 +  cvs co common 
    6.17 +fi
    6.18 +
    6.19 +# source helper functions
    6.20 +if test ! -f common/autogen-helper.sh;
    6.21 +then
    6.22 +  echo There is something wrong with your source tree.
    6.23 +  echo You are missing common/autogen-helper.sh
    6.24 +  exit 1
    6.25 +fi
    6.26 +. common/autogen-helper.sh
    6.27 +
    6.28 +CONFIGURE_DEF_OPT='--enable-maintainer-mode'
    6.29 +
    6.30 +autogen_options $*
    6.31 +
    6.32 +echo -n "+ check for build tools"
    6.33 +if test ! -z "$NOCHECK"; then echo " skipped"; else  echo; fi
    6.34 +version_check "autoconf" "$AUTOCONF autoconf autoconf-2.54 autoconf-2.53" \
    6.35 +              "ftp://ftp.gnu.org/pub/gnu/autoconf/" 2 53 || DIE=1
    6.36 +version_check "automake" "$AUTOMAKE automake automake-1.9 automake-1.8 automake-1.7 automake-1.6" \
    6.37 +              "ftp://ftp.gnu.org/pub/gnu/automake/" 1 6 || DIE=1
    6.38 +version_check "libtoolize" "$LIBTOOLIZE libtoolize" \
    6.39 +              "ftp://ftp.gnu.org/pub/gnu/libtool/" 1 5 0 || DIE=1
    6.40 +version_check "pkg-config" "" \
    6.41 +              "http://www.freedesktop.org/software/pkgconfig" 0 8 0 || DIE=1
    6.42 +
    6.43 +die_check $DIE
    6.44 +
    6.45 +aclocal_check || DIE=1
    6.46 +autoheader_check || DIE=1
    6.47 +
    6.48 +die_check $DIE
    6.49 +
    6.50 +# if no arguments specified then this will be printed
    6.51 +if test -z "$*"; then
    6.52 +  echo "+ checking for autogen.sh options"
    6.53 +  echo "  This autogen script will automatically run ./configure as:"
    6.54 +  echo "  ./configure $CONFIGURE_DEF_OPT"
    6.55 +  echo "  To pass any additional options, please specify them on the $0"
    6.56 +  echo "  command line."
    6.57 +fi
    6.58 +
    6.59 +toplevel_check $srcfile
    6.60 +
    6.61 +tool_run "$aclocal" "-I m4 $ACLOCAL_FLAGS"
    6.62 +tool_run "$libtoolize" "--copy --force"
    6.63 +tool_run "$autoheader"
    6.64 +
    6.65 +# touch the stamp-h.in build stamp so we don't re-run autoheader in maintainer mode -- wingo
    6.66 +echo timestamp > stamp-h.in 2> /dev/null
    6.67 +
    6.68 +tool_run "$autoconf"
    6.69 +tool_run "$automake" "-a -c"
    6.70 +
    6.71 +# if enable exists, add an -enable option for each of the lines in that file
    6.72 +if test -f enable; then
    6.73 +  for a in `cat enable`; do
    6.74 +    CONFIGURE_FILE_OPT="--enable-$a"
    6.75 +  done
    6.76 +fi
    6.77 +
    6.78 +# if disable exists, add an -disable option for each of the lines in that file
    6.79 +if test -f disable; then
    6.80 +  for a in `cat disable`; do
    6.81 +    CONFIGURE_FILE_OPT="$CONFIGURE_FILE_OPT --disable-$a"
    6.82 +  done
    6.83 +fi
    6.84 +
    6.85 +test -n "$NOCONFIGURE" && {
    6.86 +  echo "+ skipping configure stage for package $package, as requested."
    6.87 +  echo "+ autogen.sh done."
    6.88 +  exit 0
    6.89 +}
    6.90 +
    6.91 +echo "+ running configure ... "
    6.92 +test ! -z "$CONFIGURE_DEF_OPT" && echo "  ./configure default flags: $CONFIGURE_DEF_OPT"
    6.93 +test ! -z "$CONFIGURE_EXT_OPT" && echo "  ./configure external flags: $CONFIGURE_EXT_OPT"
    6.94 +test ! -z "$CONFIGURE_FILE_OPT" && echo "  ./configure enable/disable flags: $CONFIGURE_FILE_OPT"
    6.95 +echo
    6.96 +
    6.97 +./configure $CONFIGURE_DEF_OPT $CONFIGURE_EXT_OPT $CONFIGURE_FILE_OPT || {
    6.98 +        echo "  configure failed"
    6.99 +        exit 1
   6.100 +}
   6.101 +
   6.102 +echo "Now type 'make' to compile $package."
     7.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     7.2 +++ b/libgnomevfs2-mythtv/common/Makefile.am	Mon Oct 23 14:41:30 2006 +0100
     7.3 @@ -0,0 +1,1 @@
     7.4 +EXTRA_DIST = autogen-helper.sh
     8.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     8.2 +++ b/libgnomevfs2-mythtv/common/autogen-helper.sh	Mon Oct 23 14:41:30 2006 +0100
     8.3 @@ -0,0 +1,302 @@
     8.4 +# a silly hack that generates autoregen.sh but it's handy
     8.5 +echo "#!/bin/sh" > autoregen.sh
     8.6 +echo "./autogen.sh $@ \$@" >> autoregen.sh
     8.7 +chmod +x autoregen.sh
     8.8 +
     8.9 +# helper functions for autogen.sh
    8.10 +
    8.11 +debug ()
    8.12 +# print out a debug message if DEBUG is a defined variable
    8.13 +{
    8.14 +  if test ! -z "$DEBUG"
    8.15 +  then
    8.16 +    echo "DEBUG: $1"
    8.17 +  fi
    8.18 +}
    8.19 +
    8.20 +version_check ()
    8.21 +# check the version of a package
    8.22 +# first argument : package name (executable)
    8.23 +# second argument : optional path where to look for it instead
    8.24 +# third argument : source download url
    8.25 +# rest of arguments : major, minor, micro version
    8.26 +# all consecutive ones : suggestions for binaries to use
    8.27 +# (if not specified in second argument)
    8.28 +{
    8.29 +  PACKAGE=$1
    8.30 +  PKG_PATH=$2
    8.31 +  URL=$3
    8.32 +  MAJOR=$4
    8.33 +  MINOR=$5
    8.34 +  MICRO=$6
    8.35 +
    8.36 +  # for backwards compatibility, we let PKG_PATH=PACKAGE when PKG_PATH null
    8.37 +  if test -z "$PKG_PATH"; then PKG_PATH=$PACKAGE; fi
    8.38 +  debug "major $MAJOR minor $MINOR micro $MICRO"
    8.39 +  VERSION=$MAJOR
    8.40 +  if test ! -z "$MINOR"; then VERSION=$VERSION.$MINOR; else MINOR=0; fi
    8.41 +  if test ! -z "$MICRO"; then VERSION=$VERSION.$MICRO; else MICRO=0; fi
    8.42 +
    8.43 +  debug "major $MAJOR minor $MINOR micro $MICRO"
    8.44 +  
    8.45 +  for SUGGESTION in $PKG_PATH; do 
    8.46 +    COMMAND="$SUGGESTION"
    8.47 +
    8.48 +    # don't check if asked not to
    8.49 +    test -z "$NOCHECK" && {
    8.50 +      echo -n "  checking for $COMMAND >= $VERSION ... "
    8.51 +    } || {
    8.52 +      # we set a var with the same name as the package, but stripped of
    8.53 +      # unwanted chars
    8.54 +      VAR=`echo $PACKAGE | sed 's/-//g'`
    8.55 +      debug "setting $VAR"
    8.56 +      eval $VAR="$COMMAND"
    8.57 +      return 0
    8.58 +    }
    8.59 +
    8.60 +    debug "checking version with $COMMAND"
    8.61 +    ($COMMAND --version) < /dev/null > /dev/null 2>&1 || 
    8.62 +    {
    8.63 +      echo "not found."
    8.64 +      continue
    8.65 +    }
    8.66 +    # strip everything that's not a digit, then use cut to get the first field
    8.67 +    pkg_version=`$COMMAND --version|head -n 1|sed 's/^[^0-9]*//'|cut -d' ' -f1`
    8.68 +    debug "pkg_version $pkg_version"
    8.69 +    # remove any non-digit characters from the version numbers to permit numeric
    8.70 +    # comparison
    8.71 +    pkg_major=`echo $pkg_version | cut -d. -f1 | sed s/[a-zA-Z\-].*//g`
    8.72 +    pkg_minor=`echo $pkg_version | cut -d. -f2 | sed s/[a-zA-Z\-].*//g`
    8.73 +    pkg_micro=`echo $pkg_version | cut -d. -f3 | sed s/[a-zA-Z\-].*//g`
    8.74 +    test -z "$pkg_major" && pkg_major=0
    8.75 +    test -z "$pkg_minor" && pkg_minor=0
    8.76 +    test -z "$pkg_micro" && pkg_micro=0
    8.77 +    debug "found major $pkg_major minor $pkg_minor micro $pkg_micro"
    8.78 +
    8.79 +    #start checking the version
    8.80 +    debug "version check"
    8.81 +
    8.82 +    # reset check
    8.83 +    WRONG=
    8.84 +
    8.85 +    if [ ! "$pkg_major" -gt "$MAJOR" ]; then
    8.86 +      debug "major: $pkg_major <= $MAJOR"
    8.87 +      if [ "$pkg_major" -lt "$MAJOR" ]; then
    8.88 +        debug "major: $pkg_major < $MAJOR"
    8.89 +        WRONG=1
    8.90 +      elif [ ! "$pkg_minor" -gt "$MINOR" ]; then
    8.91 +        debug "minor: $pkg_minor <= $MINOR"
    8.92 +        if [ "$pkg_minor" -lt "$MINOR" ]; then
    8.93 +          debug "minor: $pkg_minor < $MINOR"
    8.94 +          WRONG=1
    8.95 +        elif [ "$pkg_micro" -lt "$MICRO" ]; then
    8.96 +          debug "micro: $pkg_micro < $MICRO"
    8.97 +	  WRONG=1
    8.98 +        fi
    8.99 +      fi
   8.100 +    fi
   8.101 +
   8.102 +    if test ! -z "$WRONG"; then
   8.103 +      echo "found $pkg_version, not ok !"
   8.104 +      continue
   8.105 +    else
   8.106 +      echo "found $pkg_version, ok."
   8.107 +      # we set a var with the same name as the package, but stripped of
   8.108 +      # unwanted chars
   8.109 +      VAR=`echo $PACKAGE | sed 's/-//g'`
   8.110 +      debug "setting $VAR"
   8.111 +      eval $VAR="$COMMAND"
   8.112 +      return 0
   8.113 +    fi
   8.114 +  done
   8.115 +
   8.116 +  echo "not found !"
   8.117 +  echo "You must have $PACKAGE installed to compile $package."
   8.118 +  echo "Download the appropriate package for your distribution,"
   8.119 +  echo "or get the source tarball at $URL"
   8.120 +  return 1;
   8.121 +}
   8.122 +
   8.123 +aclocal_check ()
   8.124 +{
   8.125 +  # normally aclocal is part of automake
   8.126 +  # so we expect it to be in the same place as automake
   8.127 +  # so if a different automake is supplied, we need to adapt as well
   8.128 +  # so how's about replacing automake with aclocal in the set var,
   8.129 +  # and saving that in $aclocal ?
   8.130 +  # note, this will fail if the actual automake isn't called automake*
   8.131 +  # or if part of the path before it contains it
   8.132 +  if [ -z "$automake" ]; then
   8.133 +    echo "Error: no automake variable set !"
   8.134 +    return 1
   8.135 +  else
   8.136 +    aclocal=`echo $automake | sed s/automake/aclocal/`
   8.137 +    debug "aclocal: $aclocal"
   8.138 +    if [ "$aclocal" != "aclocal" ];
   8.139 +    then
   8.140 +      CONFIGURE_DEF_OPT="$CONFIGURE_DEF_OPT --with-aclocal=$aclocal"
   8.141 +    fi
   8.142 +    if [ ! -x `which $aclocal` ]; then
   8.143 +      echo "Error: cannot execute $aclocal !"
   8.144 +      return 1
   8.145 +    fi
   8.146 +  fi
   8.147 +}
   8.148 +
   8.149 +autoheader_check ()
   8.150 +{
   8.151 +  # same here - autoheader is part of autoconf
   8.152 +  # use the same voodoo
   8.153 +  if [ -z "$autoconf" ]; then
   8.154 +    echo "Error: no autoconf variable set !"
   8.155 +    return 1
   8.156 +  else
   8.157 +    autoheader=`echo $autoconf | sed s/autoconf/autoheader/`
   8.158 +    debug "autoheader: $autoheader"
   8.159 +    if [ "$autoheader" != "autoheader" ];
   8.160 +    then
   8.161 +      CONFIGURE_DEF_OPT="$CONFIGURE_DEF_OPT --with-autoheader=$autoheader"
   8.162 +    fi
   8.163 +    if [ ! -x `which $autoheader` ]; then
   8.164 +      echo "Error: cannot execute $autoheader !"
   8.165 +      return 1
   8.166 +    fi
   8.167 +  fi
   8.168 +
   8.169 +}
   8.170 +
   8.171 +autoconf_2_52d_check ()
   8.172 +{
   8.173 +  # autoconf 2.52d has a weird issue involving a yes:no error
   8.174 +  # so don't allow it's use
   8.175 +  test -z "$NOCHECK" && {
   8.176 +    ac_version=`$autoconf --version|head -n 1|sed 's/^[a-zA-Z\.\ ()]*//;s/ .*$//'`
   8.177 +    if test "$ac_version" = "2.52d"; then
   8.178 +      echo "autoconf 2.52d has an issue with our current build."
   8.179 +      echo "We don't know who's to blame however.  So until we do, get a"
   8.180 +      echo "regular version.  RPM's of a working version are on the gstreamer site."
   8.181 +      exit 1
   8.182 +    fi
   8.183 +  }
   8.184 +  return 0
   8.185 +}
   8.186 +
   8.187 +die_check ()
   8.188 +{
   8.189 +  # call with $DIE
   8.190 +  # if set to 1, we need to print something helpful then die
   8.191 +  DIE=$1
   8.192 +  if test "x$DIE" = "x1";
   8.193 +  then
   8.194 +    echo
   8.195 +    echo "- Please get the right tools before proceeding."
   8.196 +    echo "- Alternatively, if you're sure we're wrong, run with --nocheck."
   8.197 +    exit 1
   8.198 +  fi
   8.199 +}
   8.200 +
   8.201 +autogen_options ()
   8.202 +{
   8.203 +  if test "x$1" = "x"; then
   8.204 +    return 0
   8.205 +  fi
   8.206 +
   8.207 +  while test "x$1" != "x" ; do
   8.208 +    optarg=`expr "x$1" : 'x[^=]*=\(.*\)'`
   8.209 +    case "$1" in
   8.210 +      --noconfigure)
   8.211 +          NOCONFIGURE=defined
   8.212 +	  AUTOGEN_EXT_OPT="$AUTOGEN_EXT_OPT --noconfigure"
   8.213 +          echo "+ configure run disabled"
   8.214 +          shift
   8.215 +          ;;
   8.216 +      --nocheck)
   8.217 +	  AUTOGEN_EXT_OPT="$AUTOGEN_EXT_OPT --nocheck"
   8.218 +          NOCHECK=defined
   8.219 +          echo "+ autotools version check disabled"
   8.220 +          shift
   8.221 +          ;;
   8.222 +      --debug)
   8.223 +          DEBUG=defined
   8.224 +	  AUTOGEN_EXT_OPT="$AUTOGEN_EXT_OPT --debug"
   8.225 +          echo "+ debug output enabled"
   8.226 +          shift
   8.227 +          ;;
   8.228 +      --prefix=*)
   8.229 +	  CONFIGURE_EXT_OPT="$CONFIGURE_EXT_OPT --prefix=$optarg"
   8.230 +	  echo "+ passing --prefix=$optarg to configure"
   8.231 +          shift
   8.232 +          ;;
   8.233 +      --prefix)
   8.234 +	  shift
   8.235 +	  echo "DEBUG: $1"
   8.236 +	  CONFIGURE_EXT_OPT="$CONFIGURE_EXT_OPT --prefix=$1"
   8.237 +	  echo "+ passing --prefix=$1 to configure"
   8.238 +          shift
   8.239 +          ;;
   8.240 +      -h|--help)
   8.241 +          echo "autogen.sh (autogen options) -- (configure options)"
   8.242 +          echo "autogen.sh help options: "
   8.243 +          echo " --noconfigure            don't run the configure script"
   8.244 +          echo " --nocheck                don't do version checks"
   8.245 +          echo " --debug                  debug the autogen process"
   8.246 +	  echo " --prefix		  will be passed on to configure"
   8.247 +          echo
   8.248 +          echo " --with-autoconf PATH     use autoconf in PATH"
   8.249 +          echo " --with-automake PATH     use automake in PATH"
   8.250 +          echo
   8.251 +          echo "to pass options to configure, put them as arguments after -- "
   8.252 +	  exit 1
   8.253 +          ;;
   8.254 +      --with-automake=*)
   8.255 +          AUTOMAKE=$optarg
   8.256 +          echo "+ using alternate automake in $optarg"
   8.257 +	  CONFIGURE_DEF_OPT="$CONFIGURE_DEF_OPT --with-automake=$AUTOMAKE"
   8.258 +          shift
   8.259 +          ;;
   8.260 +      --with-autoconf=*)
   8.261 +          AUTOCONF=$optarg
   8.262 +          echo "+ using alternate autoconf in $optarg"
   8.263 +	  CONFIGURE_DEF_OPT="$CONFIGURE_DEF_OPT --with-autoconf=$AUTOCONF"
   8.264 +          shift
   8.265 +          ;;
   8.266 +      --disable*|--enable*|--with*)
   8.267 +          echo "+ passing option $1 to configure"
   8.268 +	  CONFIGURE_EXT_OPT="$CONFIGURE_EXT_OPT $1"
   8.269 +          shift
   8.270 +          ;;
   8.271 +       --) shift ; break ;;
   8.272 +      *) echo "- ignoring unknown autogen.sh argument $1"; shift ;;
   8.273 +    esac
   8.274 +  done
   8.275 +
   8.276 +  for arg do CONFIGURE_EXT_OPT="$CONFIGURE_EXT_OPT $arg"; done
   8.277 +  if test ! -z "$CONFIGURE_EXT_OPT"
   8.278 +  then
   8.279 +    echo "+ options passed to configure: $CONFIGURE_EXT_OPT"
   8.280 +  fi
   8.281 +}
   8.282 +
   8.283 +toplevel_check ()
   8.284 +{
   8.285 +  srcfile=$1
   8.286 +  test -f $srcfile || {
   8.287 +        echo "You must run this script in the top-level $package directory"
   8.288 +        exit 1
   8.289 +  }
   8.290 +}
   8.291 +
   8.292 +
   8.293 +tool_run ()
   8.294 +{
   8.295 +  tool=$1
   8.296 +  options=$2
   8.297 +  run_if_fail=$3
   8.298 +  echo "+ running $tool $options..."
   8.299 +  $tool $options || {
   8.300 +    echo
   8.301 +    echo $tool failed
   8.302 +    eval $run_if_fail
   8.303 +    exit 1
   8.304 +  }
   8.305 +}
     9.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     9.2 +++ b/libgnomevfs2-mythtv/configure.ac	Mon Oct 23 14:41:30 2006 +0100
     9.3 @@ -0,0 +1,115 @@
     9.4 +AC_INIT(libgnomevfs2-mythtv, 0.1)
     9.5 +
     9.6 +dnl when going to/from release please set the nano (fourth number) right !
     9.7 +dnl releases only do Wall, cvs and prerelease does Werror too
     9.8 +AS_VERSION(libgnomevfs2-mythtv, LIBGNOMEVFS2_MYTHTV, 0, 1, 0, 1, LIBGNOMEVFS2_MYTHTV_CVS="no", LIBGNOMEVFS2_MYTHTV_CVS="yes")
     9.9 +
    9.10 +AM_INIT_AUTOMAKE($PACKAGE, $VERSION)
    9.11 +
    9.12 +AM_CONFIG_HEADER(config.h)
    9.13 +
    9.14 +AM_DISABLE_STATIC
    9.15 +
    9.16 +dnl AM_MAINTAINER_MODE provides the option to enable maintainer mode
    9.17 +AM_MAINTAINER_MODE
    9.18 +dnl make aclocal work in maintainer mode
    9.19 +AC_SUBST(ACLOCAL_AMFLAGS, "-I m4")
    9.20 +
    9.21 +dnl check for tools
    9.22 +dnl Make sure CFLAGS is defined to stop AC_PROC_CC adding -g
    9.23 +CFLAGS="$CFLAGS "
    9.24 +AC_PROG_CC
    9.25 +AC_PROG_CPP
    9.26 +AM_PROG_CC_STDC
    9.27 +AC_HEADER_STDC
    9.28 +AC_PROG_LIBTOOL
    9.29 +
    9.30 +dnl Test if --enable-debug given
    9.31 +AC_ARG_ENABLE(debug, [AC_HELP_STRING([--enable-debug],[enable debugging mode])])
    9.32 +if test "x$enable_debug" = "xyes" ; then
    9.33 +      CFLAGS="$CFLAGS -g"
    9.34 +fi          
    9.35 +
    9.36 +dnl optimisation flag
    9.37 +CFLAGS="$CFLAGS -O2"
    9.38 +
    9.39 +dnl decide on error flags
    9.40 +AS_COMPILER_FLAG(-Wall, LIBGNOMEVFS2_MYTHTV_WALL="yes", LIBGNOMEVFS2_MYTHTV_WALL="no")
    9.41 +
    9.42 +if test "x$LIBGNOMEVFS2_MYTHTV_WALL" = "xyes"; then
    9.43 +    CFLAGS="$CFLAGS -Wall"
    9.44 +
    9.45 +    if test "x$LIBGNOMEVFS2_MYTHTV_CVS" = "xyes"; then
    9.46 +       AS_COMPILER_FLAG(-Werror,CFLAGS="$CFLAGS -Werror",)
    9.47 +    fi
    9.48 +fi
    9.49 +                  
    9.50 +dnl Now check required packages
    9.51 +
    9.52 +dnl Check for pkgconfig
    9.53 +AC_CHECK_PROG(HAVE_PKGCONFIG, pkg-config, yes, no)
    9.54 +dnl Give error and exit if we don't have pkgconfig
    9.55 +if test "x$HAVE_PKGCONFIG" = "xno"; then
    9.56 +  AC_MSG_ERROR(you need to have pkgconfig installed !)
    9.57 +fi
    9.58 +
    9.59 +dnl Check for Glib2.0
    9.60 +PKG_CHECK_MODULES(GLIB, glib-2.0, HAVE_GLIB=yes,HAVE_GLIB=no)
    9.61 +
    9.62 +dnl Give error and exit if we don't have glib
    9.63 +if test "x$HAVE_GLIB" = "xno"; then
    9.64 +  AC_MSG_ERROR(you need glib-2.0 installed)
    9.65 +fi
    9.66 +
    9.67 +dnl make GLIB_CFLAGS and GLIB_LIBS available
    9.68 +AC_SUBST(GLIB_CFLAGS)
    9.69 +AC_SUBST(GLIB_LIBS)
    9.70 +
    9.71 +AC_DEFINE(HAVE_GLIB,1,[Defined when glib-2.0 was found])
    9.72 +
    9.73 +dnl Check for GObject2.0
    9.74 +PKG_CHECK_MODULES(GOBJECT, 
    9.75 +  gobject-2.0, 
    9.76 +  HAVE_GOBJECT=yes, HAVE_GOBJECT=no)
    9.77 +
    9.78 +dnl Give error and exit if we don't have gobject
    9.79 +if test "x$HAVE_GOBJECT" = "xno"; then
    9.80 +  AC_MSG_ERROR(you need gobject-2.0 installed)
    9.81 +fi
    9.82 +
    9.83 +dnl make GOBJECT_CFLAGS and GOBJECT_LIBS available
    9.84 +AC_SUBST(GOBJECT_CFLAGS)
    9.85 +AC_SUBST(GOBJECT_LIBS)
    9.86 +
    9.87 +GNOME_VFS_REQS=2.7.4
    9.88 +PKG_CHECK_MODULES(GNOME_VFS, 
    9.89 +  gnome-vfs-2.0 >= $GNOME_VFS_REQS gnome-vfs-module-2.0 >= $GNOME_VFS_REQS,
    9.90 +  HAVE_GNOME_VFS=yes,
    9.91 +  HAVE_GNOME_VFS=no)
    9.92 +
    9.93 +if test x"$HAVE_GNOME_VFS" = xno; then
    9.94 +  AC_MSG_ERROR([You need gnome-vfs2 development packages to compile libgnomevfs2-mythtv])
    9.95 +fi
    9.96 +
    9.97 +AC_SUBST(GNOME_VFS_CFLAGS)
    9.98 +AC_SUBST(GNOME_VFS_LIBS)
    9.99 +
   9.100 +dnl Check for gmyth-0.1
   9.101 +PKG_CHECK_MODULES(LIBGMYTH,
   9.102 +  gmyth-0.1,
   9.103 +  have_libgmyth=yes,
   9.104 +  have_libgmyth=no)
   9.105 +
   9.106 +if test x"$have_libgmyth" = "xno"; then
   9.107 +  AC_MSG_ERROR(gmyth-0.1 not found)        
   9.108 +fi
   9.109 +
   9.110 +AC_SUBST(LIBGMYTH_CFLAGS)
   9.111 +AC_SUBST(LIBGMYTH_LIBS)
   9.112 +
   9.113 +AC_OUTPUT([
   9.114 +Makefile
   9.115 +modules/Makefile
   9.116 +common/Makefile
   9.117 +m4/Makefile
   9.118 +])
    10.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    10.2 +++ b/libgnomevfs2-mythtv/debian/README.Debian	Mon Oct 23 14:41:30 2006 +0100
    10.3 @@ -0,0 +1,6 @@
    10.4 +libgnomevfs2-mythtv for Debian
    10.5 +------------------
    10.6 +
    10.7 +This package provides the libgnomevfs2 mythtv modules.
    10.8 +
    10.9 + -- Hallyson Melo <hallyson.melo@indt.org.br>, Tue, 20 Oct 2006 10:53:12 -0300
    11.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    11.2 +++ b/libgnomevfs2-mythtv/debian/changelog	Mon Oct 23 14:41:30 2006 +0100
    11.3 @@ -0,0 +1,6 @@
    11.4 +libgnomevfs2-mythtv0.1 (0.1.0-1) unstable; urgency=low
    11.5 +
    11.6 +  * Initial release
    11.7 +
    11.8 + -- Hallyson Melo <hallyson.melo@indt.org.br>  Tue, 20 Oct 2006 10:53:12 -0300
    11.9 +
    12.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    12.2 +++ b/libgnomevfs2-mythtv/debian/compat	Mon Oct 23 14:41:30 2006 +0100
    12.3 @@ -0,0 +1,1 @@
    12.4 +4
    13.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    13.2 +++ b/libgnomevfs2-mythtv/debian/control	Mon Oct 23 14:41:30 2006 +0100
    13.3 @@ -0,0 +1,15 @@
    13.4 +Source: libgnomevfs2-mythtv0.1
    13.5 +Priority: optional
    13.6 +Maintainer: Hallyson Melo <hallyson.melo@indt.org.br>
    13.7 +Build-Depends: debhelper (>= 4.0.0), autotools-dev, cdbs (>= 0.4.0), libglib2.0-dev, gmyth
    13.8 +Standards-Version: 3.6.1
    13.9 +Section: libs
   13.10 +
   13.11 +Package: libgnomevfs2-mythtv-0
   13.12 +Section: libs
   13.13 +Architecture: any
   13.14 +Depends: libglib2.0-0, gmyth
   13.15 +Description: libgnomevfs2-mythtv
   13.16 + Contains the gnomevfs2 modules for Mythtv protocol. It allows access backend recorded program files and livetv. 
   13.17 + .
   13.18 + This package contains the libgnomevfs2 mythtv modules.
    14.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    14.2 +++ b/libgnomevfs2-mythtv/debian/copyright	Mon Oct 23 14:41:30 2006 +0100
    14.3 @@ -0,0 +1,23 @@
    14.4 +This package was debianized by Hallyson Melo <hallyson.melo@indt.org.br> on
    14.5 +Tue, 16 May 2006 10:53:12 -0300.
    14.6 +
    14.7 +Copyright Holder: 2006 INdT
    14.8 +
    14.9 +License:
   14.10 +
   14.11 +    This package is free software; you can redistribute it and/or
   14.12 +    modify it under the terms of the GNU Lesser General Public
   14.13 +    License as published by the Free Software Foundation; either
   14.14 +    version 2 of the License, or (at your option) any later version.
   14.15 +
   14.16 +    This package is distributed in the hope that it will be useful,
   14.17 +    but WITHOUT ANY WARRANTY; without even the implied warranty of
   14.18 +    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   14.19 +    Lesser General Public License for more details.
   14.20 +
   14.21 +    You should have received a copy of the GNU Lesser General Public
   14.22 +    License along with this package; if not, write to the Free Software
   14.23 +    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
   14.24 +
   14.25 +On Debian GNU/Linux systems, the complete text of the GNU Lesser General
   14.26 +Public License can be found in `/usr/share/common-licenses/LGPL'.
    15.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    15.2 +++ b/libgnomevfs2-mythtv/debian/dirs	Mon Oct 23 14:41:30 2006 +0100
    15.3 @@ -0,0 +1,2 @@
    15.4 +usr/lib/gnome-vfs-2.0/modules/
    15.5 +etc/gnome-vfs-2.0/modules/
    16.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    16.2 +++ b/libgnomevfs2-mythtv/debian/rules	Mon Oct 23 14:41:30 2006 +0100
    16.3 @@ -0,0 +1,21 @@
    16.4 +#!/usr/bin/make -f
    16.5 +
    16.6 +include /usr/share/cdbs/1/rules/debhelper.mk
    16.7 +include /usr/share/cdbs/1/class/autotools.mk
    16.8 +include /usr/share/cdbs/1/rules/simple-patchsys.mk
    16.9 +include /usr/share/cdbs/1/rules/utils.mk
   16.10 +
   16.11 +# debian package version
   16.12 +version=$(shell dpkg-parsechangelog | grep ^Version: | cut -d ' ' -f 2)
   16.13 +
   16.14 +maint: debian/control
   16.15 +
   16.16 +common_conf_flags = \
   16.17 +	--disable-debug
   16.18 +
   16.19 +# FIXME: should disable docs for arch only builds
   16.20 +DEB_CONFIGURE_EXTRA_FLAGS := $(common_conf_flags)
   16.21 +
   16.22 +DEB_INSTALL_DOCS_ALL += debian/README.Debian NEWS
   16.23 +
   16.24 +.PHONY: maint
    17.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    17.2 +++ b/libgnomevfs2-mythtv/m4/Makefile.am	Mon Oct 23 14:41:30 2006 +0100
    17.3 @@ -0,0 +1,4 @@
    17.4 +EXTRA_DIST = 			\
    17.5 +	as-compiler-flag.m4 \
    17.6 +	as-expand.m4 		\
    17.7 +	as-version.m4
    18.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    18.2 +++ b/libgnomevfs2-mythtv/m4/as-compiler-flag.m4	Mon Oct 23 14:41:30 2006 +0100
    18.3 @@ -0,0 +1,33 @@
    18.4 +dnl as-compiler-flag.m4 0.1.0
    18.5 +
    18.6 +dnl autostars m4 macro for detection of compiler flags
    18.7 +
    18.8 +dnl David Schleef <ds@schleef.org>
    18.9 +
   18.10 +dnl $Id: as-compiler-flag.m4,v 1.1.1.1 2005/08/26 00:42:44 andrunko Exp $
   18.11 +
   18.12 +dnl AS_COMPILER_FLAG(CFLAGS, ACTION-IF-ACCEPTED, [ACTION-IF-NOT-ACCEPTED])
   18.13 +dnl Tries to compile with the given CFLAGS.
   18.14 +dnl Runs ACTION-IF-ACCEPTED if the compiler can compile with the flags,
   18.15 +dnl and ACTION-IF-NOT-ACCEPTED otherwise.
   18.16 +
   18.17 +AC_DEFUN([AS_COMPILER_FLAG],
   18.18 +[
   18.19 +  AC_MSG_CHECKING([to see if compiler understands $1])
   18.20 +
   18.21 +  save_CFLAGS="$CFLAGS"
   18.22 +  CFLAGS="$CFLAGS $1"
   18.23 +
   18.24 +  AC_TRY_COMPILE([ ], [], [flag_ok=yes], [flag_ok=no])
   18.25 +  CFLAGS="$save_CFLAGS"
   18.26 +
   18.27 +  if test "X$flag_ok" = Xyes ; then
   18.28 +    $2
   18.29 +    true
   18.30 +  else
   18.31 +    $3
   18.32 +    true
   18.33 +  fi
   18.34 +  AC_MSG_RESULT([$flag_ok])
   18.35 +])
   18.36 +
    19.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    19.2 +++ b/libgnomevfs2-mythtv/m4/as-expand.m4	Mon Oct 23 14:41:30 2006 +0100
    19.3 @@ -0,0 +1,40 @@
    19.4 +dnl AS_AC_EXPAND(VAR, CONFIGURE_VAR)
    19.5 +dnl
    19.6 +dnl example
    19.7 +dnl AS_AC_EXPAND(SYSCONFDIR, $sysconfdir)
    19.8 +dnl will set SYSCONFDIR to /usr/local/etc if prefix=/usr/local
    19.9 +
   19.10 +AC_DEFUN([AS_AC_EXPAND],
   19.11 +[
   19.12 +  EXP_VAR=[$1]
   19.13 +  FROM_VAR=[$2]
   19.14 +
   19.15 +  dnl first expand prefix and exec_prefix if necessary
   19.16 +  prefix_save=$prefix
   19.17 +  exec_prefix_save=$exec_prefix
   19.18 +
   19.19 +  dnl if no prefix given, then use /usr/local, the default prefix
   19.20 +  if test "x$prefix" = "xNONE"; then
   19.21 +    prefix=$ac_default_prefix
   19.22 +  fi
   19.23 +  dnl if no exec_prefix given, then use prefix
   19.24 +  if test "x$exec_prefix" = "xNONE"; then
   19.25 +    exec_prefix=$prefix
   19.26 +  fi
   19.27 +
   19.28 +  full_var="$FROM_VAR"
   19.29 +  dnl loop until it doesn't change anymore
   19.30 +  while true; do
   19.31 +    new_full_var="`eval echo $full_var`"
   19.32 +    if test "x$new_full_var"="x$full_var"; then break; fi
   19.33 +    full_var=$new_full_var
   19.34 +  done
   19.35 +
   19.36 +  dnl clean up
   19.37 +  full_var=$new_full_var
   19.38 +  AC_SUBST([$1], "$full_var")
   19.39 +
   19.40 +  dnl restore prefix and exec_prefix
   19.41 +  prefix=$prefix_save
   19.42 +  exec_prefix=$exec_prefix_save
   19.43 +])
    20.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    20.2 +++ b/libgnomevfs2-mythtv/m4/as-version.m4	Mon Oct 23 14:41:30 2006 +0100
    20.3 @@ -0,0 +1,59 @@
    20.4 +dnl version.m4 0.0.5
    20.5 +dnl autostars m4 macro for versioning
    20.6 +dnl thomas@apestaart.org
    20.7 +dnl
    20.8 +dnl AS_VERSION(PACKAGE, PREFIX, MAJOR, MINOR, MICRO, NANO, ACTION_IF_NO_NANO, ACTION_IF_NANO)
    20.9 +dnl example
   20.10 +dnl AS_VERSION(gstreamer, GST_VERSION, 0, 3, 2,)
   20.11 +dnl for a 0.3.2 release version
   20.12 +dnl
   20.13 +dnl this macro
   20.14 +dnl - defines [$PREFIX]_MAJOR, MINOR and MICRO
   20.15 +dnl - if NANO is empty, then we're in release mode, else in cvs/dev mode
   20.16 +dnl - defines [$PREFIX], VERSION, and [$PREFIX]_RELEASE
   20.17 +dnl - executes the relevant action
   20.18 +dnl - AC_SUBST's PACKAGE, VERSION, [$PREFIX] and [$PREFIX]_RELEASE
   20.19 +dnl   as well as the little ones
   20.20 +dnl - doesn't call AM_INIT_AUTOMAKE anymore because it prevents
   20.21 +dnl   maintainer mode from running ok
   20.22 +dnl
   20.23 +dnl don't forget to put #undef [$2] and [$2]_RELEASE in acconfig.h
   20.24 +
   20.25 +AC_DEFUN([AS_VERSION],
   20.26 +[
   20.27 +  PACKAGE=[$1]
   20.28 +  [$2]_MAJOR_VERSION=[$3]
   20.29 +  [$2]_MINOR_VERSION=[$4]
   20.30 +  [$2]_MICRO_VERSION=[$5]
   20.31 +  NANO=[$6]
   20.32 +  [$2]_NANO_VERSION=$NANO
   20.33 +  if test "x$NANO" = "x" || test "x$NANO" = "x0";
   20.34 +  then
   20.35 +      AC_MSG_NOTICE(configuring [$1] for release)
   20.36 +      VERSION=[$3].[$4].[$5]
   20.37 +      [$2]_RELEASE=1
   20.38 +      dnl execute action
   20.39 +      ifelse([$7], , :, [$7])
   20.40 +  else
   20.41 +      AC_MSG_NOTICE(configuring [$1] for development with nano $NANO)
   20.42 +      VERSION=[$3].[$4].[$5].$NANO
   20.43 +      [$2]_RELEASE=`date +%Y%m%d_%H%M%S`
   20.44 +      dnl execute action
   20.45 +      ifelse([$8], , :, [$8])
   20.46 +  fi
   20.47 +
   20.48 +  [$2]_VERSION=$VERSION
   20.49 +  AC_DEFINE_UNQUOTED([$2]_VERSION, "$[$2]_VERSION", [Define the version])
   20.50 +  AC_SUBST([$2]_VERSION)
   20.51 +  
   20.52 +  AC_SUBST([$2]_RELEASE)
   20.53 +
   20.54 +  AC_SUBST([$2]_MAJOR_VERSION)
   20.55 +  AC_SUBST([$2]_MINOR_VERSION)
   20.56 +  AC_SUBST([$2]_MICRO_VERSION)
   20.57 +  AC_SUBST([$2]_NANO_VERSION)
   20.58 +  AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Define the package name])
   20.59 +  AC_SUBST(PACKAGE)
   20.60 +  AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Define the version])
   20.61 +  AC_SUBST(VERSION)
   20.62 +])
    21.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    21.2 +++ b/libgnomevfs2-mythtv/modules/Makefile.am	Mon Oct 23 14:41:30 2006 +0100
    21.3 @@ -0,0 +1,27 @@
    21.4 +INCLUDES = \
    21.5 +	-I$(top_srcdir) \
    21.6 +	-I$(top_builddir) \
    21.7 +	$(GNOME_VFS_CFLAGS) \
    21.8 +	$(LIBGMYTH_CFLAGS) \
    21.9 +	-D_FILE_OFFSET_BITS=64 \
   21.10 +	-D_BSD_SOURCE \
   21.11 +	-D_LARGEFILE64_SOURCE \
   21.12 +	-D_POSIX_PTHREAD_SEMANTICS \
   21.13 +	-D_REENTRANT \
   21.14 +	-DG_DISABLE_DEPRECATED \
   21.15 +	-DG_LOG_DOMAIN=\"gnome-vfs-modules\"
   21.16 +
   21.17 +EXTRA_DIST = \
   21.18 +	mythtv-module.conf 
   21.19 +
   21.20 +modulesconfdir = $(sysconfdir)/gnome-vfs-2.0/modules
   21.21 +modulesconf_DATA = \
   21.22 +	mythtv-module.conf
   21.23 +			
   21.24 +module_flags = -export_dynamic -avoid-version -module -no-undefined
   21.25 +modulesdir = $(libdir)/gnome-vfs-2.0/modules
   21.26 +modules_LTLIBRARIES = libmythtv.la 
   21.27 +
   21.28 +libmythtv_la_SOURCES = mythtv-method.c
   21.29 +libmythtv_la_LDFLAGS = $(module_flags)
   21.30 +libmythtv_la_LIBADD = $(GNOME_VFS_LIBS) $(LIBGMYTH_LIBS)
    22.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    22.2 +++ b/libgnomevfs2-mythtv/modules/mythtv-method.c	Mon Oct 23 14:41:30 2006 +0100
    22.3 @@ -0,0 +1,268 @@
    22.4 +/*
    22.5 + * @author Hallyson Melo <hallyson.melo@indt.org.br>
    22.6 + *
    22.7 + * This program is free software; you can redistribute it and/or modify
    22.8 + * it under the terms of the GNU Lesser General Public License as published by
    22.9 + * the Free Software Foundation; either version 2 of the License, or
   22.10 + * (at your option) any later version.
   22.11 + *
   22.12 + * This program is distributed in the hope that it will be useful,
   22.13 + * but WITHOUT ANY WARRANTY; without even the implied warranty of
   22.14 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   22.15 + * GNU General Public License for more details.
   22.16 + *
   22.17 + * You should have received a copy of the GNU Lesser General Public License
   22.18 + * along with this program; if not, write to the Free Software
   22.19 + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   22.20 + */
   22.21 +
   22.22 +#ifdef HAVE_CONFIG_H
   22.23 +#include <config.h>
   22.24 +#endif
   22.25 +
   22.26 +#include <string.h>
   22.27 +#include <glib.h>
   22.28 +#include <math.h>
   22.29 +
   22.30 +#include <libgnomevfs/gnome-vfs-module.h>
   22.31 +#include <libgnomevfs/gnome-vfs-utils.h>
   22.32 +
   22.33 +#include "myth_file_transfer.h"
   22.34 +
   22.35 +#define GST_MYTHTV_ID_NUM               1
   22.36 +#define MYTHTV_VERSION_DEFAULT          30
   22.37 +
   22.38 +static GnomeVFSResult do_read (GnomeVFSMethod *method,
   22.39 +                               GnomeVFSMethodHandle *method_handle,
   22.40 +                               gpointer buffer,
   22.41 +                               GnomeVFSFileSize num_bytes,
   22.42 +                               GnomeVFSFileSize *bytes_read,
   22.43 +                               GnomeVFSContext *context);
   22.44 +
   22.45 +typedef struct {
   22.46 +    MythFileTransfer *file_transfer;
   22.47 +    
   22.48 +    gint mythtv_version;
   22.49 +    guint64 content_size;
   22.50 +    guint64 bytes_read;
   22.51 +    guint64 read_offset;
   22.52 +    gboolean live_tv;
   22.53 +} MythtvHandle;
   22.54 +
   22.55 +
   22.56 +
   22.57 +static GnomeVFSResult
   22.58 +do_open (GnomeVFSMethod *method,
   22.59 +         GnomeVFSMethodHandle **method_handle,
   22.60 +         GnomeVFSURI *uri,
   22.61 +         GnomeVFSOpenMode mode,
   22.62 +         GnomeVFSContext *context)
   22.63 +{
   22.64 +    MythtvHandle *myth_handle = g_new0 (MythtvHandle, 1);
   22.65 +
   22.66 +    const gchar *user, *password, *host, *transfer_uri;
   22.67 +    guint port;
   22.68 +    gchar *path;
   22.69 +    gboolean ret;
   22.70 +
   22.71 +    _GNOME_VFS_METHOD_PARAM_CHECK (method_handle != NULL);
   22.72 +    _GNOME_VFS_METHOD_PARAM_CHECK (uri != NULL);
   22.73 +
   22.74 +    if (mode & GNOME_VFS_OPEN_WRITE) {
   22.75 +        return GNOME_VFS_ERROR_NOT_PERMITTED;
   22.76 +    }
   22.77 +
   22.78 +    if ((host = gnome_vfs_uri_get_host_name (uri)) == NULL) {
   22.79 +	return GNOME_VFS_ERROR_INVALID_HOST_NAME;
   22.80 +    }
   22.81 +
   22.82 +    /* Parse URI */
   22.83 +    path = gnome_vfs_unescape_string (uri->text, NULL);
   22.84 +    port = gnome_vfs_uri_get_host_port (uri);
   22.85 +    user = gnome_vfs_uri_get_user_name (uri);
   22.86 +    password = gnome_vfs_uri_get_password (uri);
   22.87 +
   22.88 +    transfer_uri = gnome_vfs_uri_to_string (uri, 
   22.89 +		    GNOME_VFS_URI_HIDE_USER_NAME | GNOME_VFS_URI_HIDE_PASSWORD);
   22.90 +   
   22.91 +    /* Initialize mythtv handler*/
   22.92 +    myth_handle->file_transfer = NULL;
   22.93 +    myth_handle->mythtv_version = MYTHTV_VERSION_DEFAULT;
   22.94 +    myth_handle->bytes_read = 0;
   22.95 +    myth_handle->content_size = -1;
   22.96 +    myth_handle->read_offset = 0;
   22.97 +    myth_handle->live_tv = FALSE;
   22.98 +
   22.99 +    /* Connect to the backend */
  22.100 +    myth_handle->file_transfer = myth_file_transfer_new ( GST_MYTHTV_ID_NUM /*mythtv->live_tv_id*/,
  22.101 +        g_string_new( transfer_uri ), -1, myth_handle->mythtv_version );
  22.102 +
  22.103 +    if ( myth_handle->file_transfer == NULL ) {
  22.104 +	return GNOME_VFS_ERROR_NOT_OPEN;
  22.105 +    }
  22.106 +
  22.107 +    /* sets the Playback monitor connection */
  22.108 +    ret = myth_file_transfer_playback_setup( &(myth_handle->file_transfer), myth_handle->live_tv );
  22.109 +    if (ret == FALSE) {
  22.110 +        g_printerr ("Mythtv FileTransfer playback setup error\n");
  22.111 +	return GNOME_VFS_ERROR_NOT_OPEN;
  22.112 +    }
  22.113 +      
  22.114 +    /* sets the FileTransfer instance connection (video/audio download) */
  22.115 +    ret = myth_file_transfer_setup( &(myth_handle->file_transfer), myth_handle->live_tv );
  22.116 +
  22.117 +    if ( ret == FALSE ) {
  22.118 +      g_printerr ("MythTV FileTransfer request failed when setting up socket connection!\n" );
  22.119 +      return GNOME_VFS_ERROR_NOT_OPEN;
  22.120 +    }
  22.121 +
  22.122 +    // TODO: Verify if file exists in the backend
  22.123 +
  22.124 +    myth_handle->content_size = myth_handle->file_transfer->filesize;
  22.125 +
  22.126 +    *method_handle = (GnomeVFSMethodHandle *) myth_handle;
  22.127 +
  22.128 +    return GNOME_VFS_OK;
  22.129 +}
  22.130 +
  22.131 +static GnomeVFSResult
  22.132 +do_read (GnomeVFSMethod *method,
  22.133 +         GnomeVFSMethodHandle *method_handle,
  22.134 +         gpointer buffer,
  22.135 +         GnomeVFSFileSize num_bytes,
  22.136 +         GnomeVFSFileSize *bytes_read,
  22.137 +         GnomeVFSContext *context)
  22.138 +{
  22.139 +    MythtvHandle *myth_handle = (MythtvHandle *) method_handle;
  22.140 +    guint len = 0, offset = 0;
  22.141 +    GnomeVFSFileSize bytes_to_read;
  22.142 +
  22.143 +    g_debug ("do_read(): file size: %llu, already read: %llu, requested: %llu", myth_handle->content_size,
  22.144 +		    myth_handle->bytes_read, num_bytes);
  22.145 +
  22.146 +    *bytes_read = 0;
  22.147 +
  22.148 +    if (myth_handle->bytes_read >= myth_handle->content_size)
  22.149 +        return GNOME_VFS_ERROR_EOF;
  22.150 +
  22.151 +    // fixme: change this to min math function
  22.152 +    if (num_bytes > myth_handle->content_size - myth_handle->bytes_read)
  22.153 +	    bytes_to_read = myth_handle->content_size - myth_handle->bytes_read;
  22.154 +    else
  22.155 +	    bytes_to_read = num_bytes;
  22.156 +
  22.157 +    /* Loop sending the Myth File Transfer request:
  22.158 +    * Retry whilst authentication fails and we supply it. */
  22.159 +
  22.160 +    // lock here ???
  22.161 +    while ( bytes_to_read > 0 ) {
  22.162 +  	len = myth_file_transfer_read( myth_handle->file_transfer,
  22.163 +			buffer + offset, bytes_to_read, TRUE );
  22.164 +
  22.165 +        if ( len > 0 ) {
  22.166 +            offset += len;      
  22.167 +            bytes_to_read -= len;
  22.168 +        } else {
  22.169 +	    break;
  22.170 +        }
  22.171 +    
  22.172 +        if ( offset == num_bytes )
  22.173 +          break;
  22.174 +    }
  22.175 +  
  22.176 +    if (( offset <= 0 ) && !myth_handle->live_tv )
  22.177 +        return GNOME_VFS_ERROR_EOF;
  22.178 +  
  22.179 +    myth_handle->read_offset += offset;
  22.180 +    myth_handle->bytes_read += offset;
  22.181 +    *bytes_read = offset;
  22.182 +  
  22.183 +    return GNOME_VFS_OK;
  22.184 +}
  22.185 +
  22.186 +static GnomeVFSResult
  22.187 +do_close (GnomeVFSMethod *method,
  22.188 +          GnomeVFSMethodHandle *method_handle,
  22.189 +          GnomeVFSContext *context)
  22.190 +{
  22.191 +    MythtvHandle *myth_handle = (MythtvHandle *) method_handle;
  22.192 +
  22.193 +    if (myth_handle->file_transfer)
  22.194 +        g_object_unref (myth_handle->file_transfer);
  22.195 +
  22.196 +    g_free (myth_handle);
  22.197 +
  22.198 +    return GNOME_VFS_OK;
  22.199 +}
  22.200 +
  22.201 +static GnomeVFSResult
  22.202 +do_get_file_info (GnomeVFSMethod *method,
  22.203 +                  GnomeVFSURI *uri,
  22.204 +                  GnomeVFSFileInfo *file_info,
  22.205 +                  GnomeVFSFileInfoOptions options,
  22.206 +                  GnomeVFSContext *context)
  22.207 +{
  22.208 +    GString *name = g_string_new ("hallyson");	
  22.209 +    file_info->name = g_string_free (name, FALSE);//"hallyson.txt";//get_base_from_uri (uri);
  22.210 +    file_info->valid_fields = file_info->valid_fields
  22.211 +        | GNOME_VFS_FILE_INFO_FIELDS_TYPE
  22.212 +        | GNOME_VFS_FILE_INFO_FIELDS_MIME_TYPE
  22.213 +        | GNOME_VFS_FILE_INFO_FIELDS_PERMISSIONS;
  22.214 +    file_info->type = GNOME_VFS_FILE_TYPE_REGULAR;
  22.215 +    file_info->mime_type = "video/x-nuv"; //g_strdup (gnome_vfs_mime_type_from_name (file_info->name));
  22.216 +    file_info->permissions =
  22.217 +        GNOME_VFS_PERM_USER_READ |
  22.218 +        GNOME_VFS_PERM_OTHER_READ |
  22.219 +        GNOME_VFS_PERM_GROUP_READ;
  22.220 +
  22.221 +    return GNOME_VFS_OK;
  22.222 +}
  22.223 +
  22.224 +static gboolean
  22.225 +do_is_local (GnomeVFSMethod *method,
  22.226 +             const GnomeVFSURI *uri)
  22.227 +{
  22.228 +	return FALSE;
  22.229 +}
  22.230 +
  22.231 +static GnomeVFSMethod method = {
  22.232 +	sizeof (GnomeVFSMethod),
  22.233 +	do_open,
  22.234 +	NULL,
  22.235 +	do_close,
  22.236 +	do_read,
  22.237 +	NULL,
  22.238 +	NULL,
  22.239 +	NULL,
  22.240 +	NULL,
  22.241 +	NULL,
  22.242 +	NULL,
  22.243 +	NULL,
  22.244 +	do_get_file_info,
  22.245 +	NULL,
  22.246 +	do_is_local,
  22.247 +	NULL,
  22.248 +	NULL,
  22.249 +	NULL,
  22.250 +	NULL,
  22.251 +	NULL,
  22.252 +	NULL,
  22.253 +	NULL,
  22.254 +	NULL,
  22.255 +	NULL,
  22.256 +	NULL,
  22.257 +	NULL,
  22.258 +	NULL,
  22.259 +};
  22.260 +
  22.261 +
  22.262 +GnomeVFSMethod *
  22.263 +vfs_module_init (const char *method_name, const char *args)
  22.264 +{
  22.265 +	return &method;
  22.266 +}
  22.267 +
  22.268 +void
  22.269 +vfs_module_shutdown (GnomeVFSMethod *method)
  22.270 +{
  22.271 +}
    23.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
    23.2 +++ b/libgnomevfs2-mythtv/modules/mythtv-module.conf	Mon Oct 23 14:41:30 2006 +0100
    23.3 @@ -0,0 +1,1 @@
    23.4 +myth: mythtv