FIX: quvi_http_metainfo_get: doxy ref
[libquvi.git] / README
blob507887610eeb47d897fdc8266cd105903c34af52
1 General
2 =======
4 libquvi is a cross-platform library with C API for parsing
5 ad0be flash media properties.
7 gitweb: <http://repo.or.cz/w/libquvi.git>
8 Home  : <http://quvi.sourceforge.net/>
11 Installation
12 ============
14 Notes
15 -----
17   * This document does not cover how to use GNU Autotools for building
18 and installing software, instead, refer to the GNU Autotools documentation,
19 the INSTALL file and the "configure --help" output for more information.
21   * If you're not familiar with GNU Autotools and/or installing software
22 from the source code, you may prefer to install libquvi using a binary
23 package, instead. You can find libquvi packaged for many distros already.
25   * If you have previously installed libquvi from the source code to your
26 system, the recommended practice is to uninstall the previous installation
27 first, before you continue with the new one. You would, typically, run
28 "make uninstall" (as root if necessary) from the same directory you ran
29 "make install" from.
31   * If you are building libquvi from the git repository code, run the
32 `autogen.sh' first. This generates the configuration files. See also
33 the -h output for any additional info.
36 Simple install procedure
37 ------------------------
39   % ./configure && make
41   [ Become root if necessary ]
42   % make install
44 The configure script supports also the following options which are
45 relevant to the installation:
47   --with-scriptsdir=DIR (default:no)
49     Look in DIR for libquvi-scripts. This negates the default check for
50     the libquvi-scripts package.  DIR is presumed to contain similar
51     directory structure to the $prefix/share/libquvi-scripts/ directory
52     which is normally created by a typical libquvi-scripts installation.
54   --with(out)-manual (default:yes)
56     Install the manual page for libquvi.
59 Requirements
60 ------------
62 * libquvi-scripts 0.9
63   http://quvi.sf.net/
65 * libcurl 7.21.0
66   http://curl.haxx.se/
68 * GLib 2.24.2
69   http://library.gnome.org/devel/glib/
71 * liblua 5.1
72   http://lua.org/
74 * libproxy 0.3.1
75   http://code.google.com/p/libproxy/
77 * pkg-config for tracking the compilation flags needed for libraries
78   http://www.freedesktop.org/software/pkgconfig/
80 * GNU gettext is recommended
81   http://www.gnu.org/software/gettext/
83 * GNU make is recommended
84   http://www.gnu.org/software/make/
87 Installation directories
88 ------------------------
90 The location of the installed files is determined by the --prefix
91 and the --exec-prefix options given to the configure script.
93 The .pc file for libquvi is installed in $exec_prefix/lib/pkgconfig to provide
94 information when compiling packages that depend on libquvi.
96 If you set PKG_CONFIG_PATH so that it points to this directory, then you
97 can get the correct include and library flags for compiling a libquvi
98 application with:
100   % pkg-config --cflags libquvi-0.9
101   % pkg-config --libs libquvi-0.9
104 Tests
105 =====
107 The tests use the GLib framework for testing. These tests require
108 the libquvi-scripts. The tests reside in the tests/ directory.
110 When building with GNU Autotools,
112   'make check'  will run the test programs listed in the TEST_PROGS
113   variable in the tests/Makefile.am . 'make check' will fail if any
114   of the tests fail. This is identical to running 'make test'.
116   'make distcheck'  will fail if any of the tests fail.
118     NOTE: Define either
119       DISTCHECK_CONFIGURE_FLAGS=--with--scriptsdir=DIR
120     or
121       PKG_CONFIG_PATH=DIR
123     See also the --with-scriptsdir description above (under "Simple install
124     procedure").
126   'make test-mem'   requires the valgrind(1) program. These tests will
127   not automatically.
129   'make doc'  builds the C API reference documentation from the doxygen
130   comments.
132   'make distdoc'  like above but produces a tarball from the documentation.
134 The tests use the gtester(1) and gtester-report(1) commands to produce
135 the logs. These programs are part of GLib. The test programs will produce:
136   $(top_builddir)/tests/$test_program.html  # gtester-report
137   $(top_builddir)/tests/$test_program.xml   # gtester
139 The 'test-mem' target will, additionally, produce:
140   $(top_builddir)/tests/$test_program.vgdump  # valgrind
143 Tests: Environment variables
144 ----------------------------
146 The testsuite supports the following environment variables:
148   TEST_INTERNET  will enable the tests that require an Internet connection.
150   TEST_VERBOSE  will enable verbose libcurl(3) output.
152   TEST_SKIP  will disable the specified tests. This list is a comma-separated
153   list of test names. The comma-separated values are treated as regular
154   expression patterns.
156 Example:
157   % env TEST_VERBOSE=1 TEST_SKIP=test_quvi,test_resolve_  make test
160 Tests: Scripts
161 --------------
163 The tests/ directory contains:
165   'find_tests.sh'   will dump a list of available tests.
167   'run_tests.sh'  is a convenience script that wraps many of the
168   testsuite features making them available via GUI. Note that
169   this script requires zenity(1).
171 For more info, run these scripts with the '-h' switch.
174 Tests: Notes
175 ------------
177   * The test 'test/supports' uses the HTTP proxy address
178     "http://localhost:12345" to simulate a network access error.
180     If you have something listening to that port, you may want to edit
181     test/supports.c to use some other port.
183   * Apart from the above, the testsuite does not force any specific
184     proxy address with the Internet requiring tests.
186     If you need to use a proxy, refer to the curl(1) manual page for
187     a complete list of the supported environment variables (e.g. http_proxy).
189       libquvi uses libcurl to connect to the internet.
192 How to report bugs
193 ==================
195 Please see: http://quvi.sourceforge.net/#bugs
198 Patches
199 =======
201 Please see: http://quvi.sourceforge.net/#contrib
204 License
205 =======
207 libquvi is Free Software, licensed under the LGPLv2.1+.