Codebase list farstream-0.2 / 855a8f8
Imported Upstream version 0.0.9 Sjoerd Simons 15 years ago
139 changed file(s) with 4247 addition(s) and 4458 deletion(s). Raw diff Collapse all Expand all
0 commit 4fe6016ec86e748342ee3fa35b607cbefc049109
1 Author: Olivier Crête <olivier.crete@collabora.co.uk>
2 Date: Mon Apr 6 20:29:37 2009 -0400
3
4 Version 0.0.9
5
6 commit 6025f3cedd2171d596513effe1d40fb00ae318df
7 Author: Olivier Crête <olivier.crete@collabora.co.uk>
8 Date: Thu Apr 2 19:10:11 2009 -0400
9
10 Make libnice non-optional
11
12 commit ac7dc4a43ac6098397ca8feaff5c4f75c00fec45
13 Author: Olivier Crête <olivier.crete@collabora.co.uk>
14 Date: Tue Nov 18 19:09:59 2008 -0500
15
16 Improve dtmf tests a bit
17
18 commit a020bf8c34656e8c5b1ebfde478847e6aebbfa51
19 Author: Olivier Crête <olivier.crete@collabora.co.uk>
20 Date: Tue Nov 18 15:16:13 2008 -0500
21
22 Add transmitter sink just in time
23
24 commit 5c91c2278e85a4465640ba398fc47fbdf73dc6a8
25 Author: Olivier Crête <olivier.crete@collabora.co.uk>
26 Date: Tue Nov 18 15:06:24 2008 -0500
27
28 Factor out the transmitter sink addition
29
30 commit f9fc5976df3cd689b2f2950e8e486bdaeaae64e8
31 Author: Olivier Crête <olivier.crete@collabora.co.uk>
32 Date: Tue Mar 31 13:40:34 2009 -0400
33
34 Check if both fields are not NULL before strcmping them
35
36 commit c3ceaf59765f90dcc438bf38ceae8d0669121b55
37 Author: Olivier Crête <olivier.crete@collabora.co.uk>
38 Date: Tue Mar 31 13:38:51 2009 -0400
39
40 Ignore stun binding responses with no mapped address
41
42 commit ec64b568b2c471f94eff579f86de944e63ce00c2
43 Author: Olivier Crête <olivier.crete@collabora.co.uk>
44 Date: Tue Mar 31 13:36:14 2009 -0400
45
46 Don't offerflow if nice candidate is inet6
47
48 commit d3083e1068ff1c3bbb7cf46ae1ae2af34458b895
49 Author: Olivier Crête <olivier.crete@collabora.co.uk>
50 Date: Tue Mar 31 12:35:37 2009 -0400
51
52 Remove unused variables
53
54 commit 6883c96812a322f5717b758488c160da6efbc77e
55 Author: Olivier Crête <olivier.crete@collabora.co.uk>
56 Date: Mon Mar 23 14:58:22 2009 -0400
57
58 Drop the buffers before decoding if the direction is not receiving or both
59
60 commit ded8205cc9d9c6e98961fb620a3dca3cd9ea8801
61 Author: Olivier Crête <olivier.crete@collabora.co.uk>
62 Date: Sun Mar 15 20:56:20 2009 -0400
63
64 Remove rtp/rtcp tee fakesinks
65
66 commit c2b1bf7104f9e367cb199bf906e05c34c4071390
67 Author: Olivier Crête <olivier.crete@collabora.co.uk>
68 Date: Tue Mar 17 18:00:12 2009 -0400
69
70 Disallow invalid relay-info parameters
71
72 commit 3338bab01a35a792bff24397d53e50fce3a0b2c3
73 Author: Olivier Crête <olivier.crete@collabora.co.uk>
74 Date: Tue Mar 17 18:12:54 2009 -0400
75
76 Test for invalid relay info argument correctly
77
78 commit 2cc6bb13aeb056c317b2eeacb091b6ebc05a917c
79 Author: Olivier Crête <olivier.crete@collabora.co.uk>
80 Date: Fri Mar 20 19:22:35 2009 +0200
81
82 Already always requires gst 0.10.12
83
84 commit 68d2c034c6e12e5e7219c0e7885179fc9cd6ebe2
85 Author: Olivier Crête <olivier.crete@collabora.co.uk>
86 Date: Wed Mar 18 04:44:51 2009 -0400
87
88 Update python requirements
89
90 commit 8615191479ed0842bb9082cedd17e2259c7edb9b
91 Author: Olivier Crête <olivier.crete@collabora.co.uk>
92 Date: Wed Mar 18 04:38:57 2009 -0400
93
94 Use AM_PYTHON_PATH instead of AS_PYTHON_PATH
95
96 commit aa8fc29ab49dae0e51e246837f55f88dd6907783
97 Author: Olivier Crête <olivier.crete@collabora.co.uk>
98 Date: Sun Mar 22 20:12:59 2009 -0400
99
100 fsvalve is now valve in -bad
101
102 commit 21a170180c69f8af4ead8efb66ce493b46c8ecb8
103 Author: Olivier Crête <olivier.crete@collabora.co.uk>
104 Date: Sun Mar 22 20:11:40 2009 -0400
105
106 Officially depend on new gst-plugins-bad
107
108 commit 9eddf78c30d18c5b68fb8c5b808dacb9764917cd
109 Author: Olivier Crête <olivier.crete@collabora.co.uk>
110 Date: Sun Mar 15 17:01:38 2009 -0400
111
112 Version 0.0.8.1
113
0114 commit c2f4b1c52f7d601678d8008ba5ed8fa5d82dcd4d
1115 Author: Olivier Crête <olivier.crete@collabora.co.uk>
2116 Date: Sun Mar 15 16:53:21 2009 -0400
4343 $(top_srcdir)/common/m4/as-auto-alt.m4 \
4444 $(top_srcdir)/common/m4/as-compiler-flag.m4 \
4545 $(top_srcdir)/common/m4/as-libtool.m4 \
46 $(top_srcdir)/common/m4/as-python.m4 \
4746 $(top_srcdir)/common/m4/as-scrub-include.m4 \
4847 $(top_srcdir)/common/m4/as-version.m4 \
4948 $(top_srcdir)/common/m4/gst-arch.m4 \
5554 $(top_srcdir)/common/m4/gst-plugindir.m4 \
5655 $(top_srcdir)/common/m4/gst.m4 \
5756 $(top_srcdir)/common/m4/gtk-doc.m4 \
58 $(top_srcdir)/common/m4/isc-posix.m4 \
5957 $(top_srcdir)/common/m4/pkg.m4 \
6058 $(top_srcdir)/m4/as-check-python-headers.m4 \
6159 $(top_srcdir)/configure.ac
211209 PKG_CONFIG = @PKG_CONFIG@
212210 PLUGINDIR = @PLUGINDIR@
213211 PROFILE_CFLAGS = @PROFILE_CFLAGS@
214 PYDOCSTUFF_CFLAGS = @PYDOCSTUFF_CFLAGS@
215 PYDOCSTUFF_LIBS = @PYDOCSTUFF_LIBS@
216212 PYFARSIGHT_CFLAGS = @PYFARSIGHT_CFLAGS@
217213 PYFARSIGHT_LIBS = @PYFARSIGHT_LIBS@
218214 PYTHON = @PYTHON@
1717 - gstreamer 0.10.22
1818 - gst-plugins-base 0.10.22
1919 - glib 2.16
20 - Python 2.4
21 - libnice 0.0.3
2022
2123 For UPnP support:
2224 - GUPnP-IGD
2325
24 For the ICE transmitter:
25 - libnice 0.0.3
2626
2727 Run time for the RTP plugin:
2828 All of the build time requirements (except gtk-doc) plus
2929 - gst-plugins-good 0.10.7
30 - gst-plugins-bad 0.10.10
31 - gst-plugins-farsight 0.12.10 (or lower) OR -bad 0.10.11
30 - gst-plugins-bad 0.10.11
3231
3332 For the python module and examples you also need:
34 - Python 2.1
3533 - PyGObject 2.12
3634 - PyGTK 2.10
3735 - gst-python 0.10.10
75897589 sys.exit(sys.hexversion < minverhex)"
75907590 AS_IF([AM_RUN_LOG([$1 -c "$prog"])], [$3], [$4])])
75917591
7592 # Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
7593 #
7594 # This file is free software; the Free Software Foundation
7595 # gives unlimited permission to copy and/or distribute it,
7596 # with or without modifications, as long as this notice is preserved.
7597
7598 # AM_RUN_LOG(COMMAND)
7599 # -------------------
7600 # Run COMMAND, save the exit status in ac_status, and log it.
7601 # (This has been adapted from Autoconf's _AC_RUN_LOG macro.)
7602 AC_DEFUN([AM_RUN_LOG],
7603 [{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD
7604 ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD
7605 ac_status=$?
7606 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
7607 (exit $ac_status); }])
7608
75927609 # Check to make sure that the build environment is sane. -*- Autoconf -*-
75937610
75947611 # Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005
77817798 m4_include([common/m4/as-auto-alt.m4])
77827799 m4_include([common/m4/as-compiler-flag.m4])
77837800 m4_include([common/m4/as-libtool.m4])
7784 m4_include([common/m4/as-python.m4])
77857801 m4_include([common/m4/as-scrub-include.m4])
77867802 m4_include([common/m4/as-version.m4])
77877803 m4_include([common/m4/gst-arch.m4])
77937809 m4_include([common/m4/gst-plugindir.m4])
77947810 m4_include([common/m4/gst.m4])
77957811 m4_include([common/m4/gtk-doc.m4])
7796 m4_include([common/m4/isc-posix.m4])
77977812 m4_include([common/m4/pkg.m4])
77987813 m4_include([m4/as-check-python-headers.m4])
00 SUBDIRS = m4
11
22 EXTRA_DIST = \
3 gtk-doc.mak \
3 ChangeLog \
4 gettext.patch \
5 glib-gen.mak gtk-doc.mak upload.mak upload-doc.mak \
6 release.mak win32.mak po.mak \
47 gst-autogen.sh \
5 gst.supp \
6 check.mak \
8 check-exports \
9 c-to-xml.py gst-xmlinspect.py mangle-tmpl.py scangobj-merge.py \
710 gtk-doc-plugins.mak \
8 plugins.xsl \
9 gstdoc-scangobj \
10 coverage/coverage-report.pl \
11 coverage/coverage-report.xsl \
12 coverage/coverage-report-entry.pl \
13 gst-xmlinspect.py mangle-tmpl.py scangobj-merge.py
11 plugins.xsl gstdoc-scangobj \
12 gst.supp check.mak \
13 coverage/lcov.mak \
14 coverage/coverage-report.pl \
15 coverage/coverage-report.xsl \
16 coverage/coverage-report-entry.pl \
17 download-translations
3737 $(top_srcdir)/common/m4/as-auto-alt.m4 \
3838 $(top_srcdir)/common/m4/as-compiler-flag.m4 \
3939 $(top_srcdir)/common/m4/as-libtool.m4 \
40 $(top_srcdir)/common/m4/as-python.m4 \
4140 $(top_srcdir)/common/m4/as-scrub-include.m4 \
4241 $(top_srcdir)/common/m4/as-version.m4 \
4342 $(top_srcdir)/common/m4/gst-arch.m4 \
4948 $(top_srcdir)/common/m4/gst-plugindir.m4 \
5049 $(top_srcdir)/common/m4/gst.m4 \
5150 $(top_srcdir)/common/m4/gtk-doc.m4 \
52 $(top_srcdir)/common/m4/isc-posix.m4 \
5351 $(top_srcdir)/common/m4/pkg.m4 \
5452 $(top_srcdir)/m4/as-check-python-headers.m4 \
5553 $(top_srcdir)/configure.ac
185183 PKG_CONFIG = @PKG_CONFIG@
186184 PLUGINDIR = @PLUGINDIR@
187185 PROFILE_CFLAGS = @PROFILE_CFLAGS@
188 PYDOCSTUFF_CFLAGS = @PYDOCSTUFF_CFLAGS@
189 PYDOCSTUFF_LIBS = @PYDOCSTUFF_LIBS@
190186 PYFARSIGHT_CFLAGS = @PYFARSIGHT_CFLAGS@
191187 PYFARSIGHT_LIBS = @PYFARSIGHT_LIBS@
192188 PYTHON = @PYTHON@
263259 top_srcdir = @top_srcdir@
264260 SUBDIRS = m4
265261 EXTRA_DIST = \
266 gtk-doc.mak \
262 ChangeLog \
263 gettext.patch \
264 glib-gen.mak gtk-doc.mak upload.mak upload-doc.mak \
265 release.mak win32.mak po.mak \
267266 gst-autogen.sh \
268 gst.supp \
269 check.mak \
267 check-exports \
268 c-to-xml.py gst-xmlinspect.py mangle-tmpl.py scangobj-merge.py \
270269 gtk-doc-plugins.mak \
271 plugins.xsl \
272 gstdoc-scangobj \
273 coverage/coverage-report.pl \
274 coverage/coverage-report.xsl \
275 coverage/coverage-report-entry.pl \
276 gst-xmlinspect.py mangle-tmpl.py scangobj-merge.py
270 plugins.xsl gstdoc-scangobj \
271 gst.supp check.mak \
272 coverage/lcov.mak \
273 coverage/coverage-report.pl \
274 coverage/coverage-report.xsl \
275 coverage/coverage-report-entry.pl \
276 download-translations
277277
278278 all: all-recursive
279279
0 # -*- Mode: Python -*-
1 # vi:si:et:sw=4:sts=4:ts=4
2
3 """
4 Convert a C program to valid XML to be included in docbook
5 """
6
7 import sys
8 import os
9 from xml.sax import saxutils
10
11 def main():
12 if len(sys.argv) == 1:
13 sys.stderr.write("Please specify a source file to convert")
14 sys.exit(1)
15 source = sys.argv[1]
16
17 if not os.path.exists(source):
18 sys.stderr.write("%s does not exist.\n" % source)
19 sys.exit(1)
20
21 content = open(source, "r").read()
22
23 # print header
24 print '<?xml version="1.0"?>'
25 print '<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">'
26 print
27 print '<programlisting>'
28
29 # print content
30 print saxutils.escape(content).encode('UTF-8')
31 print '</programlisting>'
32
33 main()
0 #!/bin/sh
1 # check-exports
2 #
3 # quick'n'dirty script that retrieves the list of exported symbols of a given
4 # library using 'nm', and compares that against the list of symbols-to-export
5 # of our win32/common/libfoo.def files.
6
7 if [ $# -ne 2 ]; then
8 echo "Usage: $0 library.def library.so"
9 exit 1
10 fi
11
12 def_path="$1"
13 def_name="$(basename $def_path)"
14 lib_path="$2"
15
16 lib_result="`mktemp /tmp/defname.XXXXXX`"
17
18 LC_ALL=C
19 export LC_ALL
20
21 # On Solaris, add -p to get the correct output format
22 NMARGS=
23 if nm -V 2>&1 |grep Solaris > /dev/null; then
24 NMARGS=-p
25 fi
26
27 # FIXME 0.11: in 0.11, we should change the export filter to only export
28 # _gst_foo, but not __gst_foo (we can't change this now, since we added
29 # __gst_debug_min and __gst_debug_enabled at some point and need to keep
30 # ABI compatibility). So below we special-case some symbols that shouldn't
31 # really be exported, either because we're too lazy to rename them to something
32 # that's not exported (like the _gst_parse_* stuff) or because we had them in
33 # public headers at some point although they shouldn't be and so we need to
34 # keep them exported now (like _gst_debug_init,
35 # __gst_element_factory_add_interface or
36 # __gst_element_factory_add_static_pad_template). We suppress them here to
37 # make sure they're at least not exported in the windows msvc build (they
38 # were never in the .def file, so they never got exported).
39 # _end is special cased because for some reason it is reported as an exported
40 # BSS symbol, unlike on linux where it's a local absolute symbol.
41 nm $NMARGS $lib_path | awk \
42 '{
43 if ($3 !~ /^_gst_parse_yy/ && \
44 $3 !~ /^_gst_[a-z]*_init/ && \
45 $3 !~ /^_gst_parse_launch/ && \
46 $3 !~ /^__gst_element_details_/ && \
47 $3 !~ /^__gst_element_factory_add_/ && \
48 $3 !~ /^gst_interfaces_marshal/ && \
49 $3 ~ /^[_]*(gst_|Gst|GST_).*/)
50 {
51 if ($2 ~ /^[BSDG]$/)
52 print "\t" $3 " DATA"
53 else if ($2 == "T")
54 print "\t" $3
55 }
56 }' | sort | awk '{ if (NR == 1) print "EXPORTS"; print $0; }' \
57 > $lib_result
58
59 diffoutput=`diff -u $def_path $lib_result`
60
61 rm $lib_result
62
63 if test "x$diffoutput" = "x"; then
64 exit 0;
65 else
66 echo -n "$diffoutput" >&2
67 echo >&2
68 exit 1;
69 fi
70
55 if HAVE_VALGRIND
66 # hangs spectacularly on some machines, so let's not do this by default yet
77 check-valgrind:
8 make valgrind
8 $(MAKE) valgrind
99 else
1010 check-valgrind:
1111 @true
7070
7171 # valgrind any given test until failure by running make test.valgrind-forever
7272 %.valgrind-forever: %
73 @while make $*.valgrind; do \
73 @while $(MAKE) $*.valgrind; do \
7474 true; done
7575
7676 # gdb any given test by running make test.gdb
8585 -rm test-registry.xml
8686 @echo "Torturing tests ..."
8787 for i in `seq 1 $(LOOPS)`; do \
88 make check || \
88 $(MAKE) check || \
8989 (echo "Failure after $$i runs"; exit 1) || \
9090 exit 1; \
9191 done
9898 -rm test-registry.xml
9999 @echo "Forever tests ..."
100100 while true; do \
101 make check || \
101 $(MAKE) check || \
102102 (echo "Failure"; exit 1) || \
103103 exit 1; \
104104 done
108108 @echo "Valgrinding tests ..."
109109 @failed=0; \
110110 for t in $(filter-out $(VALGRIND_TESTS_DISABLE),$(TESTS)); do \
111 make $$t.valgrind; \
111 $(MAKE) $$t.valgrind; \
112112 if test "$$?" -ne 0; then \
113113 echo "Valgrind error for test $$t"; \
114114 failed=`expr $$failed + 1`; \
131131 $(GST_INSPECT) $$e > /dev/null 2>&1; done
132132
133133 help:
134 @echo
134135 @echo "make check -- run all checks"
135136 @echo "make torture -- run all checks $(LOOPS) times"
136137 @echo "make (dir)/(test).check -- run the given check once"
145146 @echo "make (dir)/(test).valgrind.gen-suppressions -- generate suppressions"
146147 @echo " and save to suppressions.log"
147148 @echo "make inspect -- inspect all plugin features"
149 @echo
150 @echo
151 @echo "Additionally, you can use the GST_CHECKS environment variable to"
152 @echo "specify which test(s) should be run. This is useful if you are"
153 @echo "debugging a failure in one particular test, or want to reproduce"
154 @echo "a race condition in a single test."
155 @echo
156 @echo "Examples:"
157 @echo
158 @echo " GST_CHECKS=test_this,test_that make element/foobar.check"
159 @echo " GST_CHECKS=test_many_threads make element/foobar.forever"
160 @echo
148161
0 #!/bin/sh
1 # Shell script to download the latest translations for a given GStreamer
2 # package from translationproject.org
3
4
5 # DOMAINS based on http://translationproject.org/extra/matrix.html
6 # We need to check all domains, not only po/LINGUAS, since there might be
7 # new translations
8 DOMAINS=\
9 "af am ar az be bg pt_BR bs ca zh_CN cs cy da de el eo es et eu fa fi fr "\
10 "ga en_GB gl gu he hi zh_HK hr hu id is it ja ko ku ky lg lt lv mk mn ms "\
11 "mt nb ne nl nn or pa pl pt rm ro ru rw sk sl sq sr sv ta tq th tk "\
12 "tr zh_TW uk ven vi wa xh zu"
13
14 # for testing/debugging:
15 #DOMAINS="es fr hu sv pl xx"
16
17 # check for 'diff' program
18 diff --version 2>/dev/null >/dev/null
19 if [ ! $? ]; then
20 echo "==== You must have the 'diff' program installed for this script ===="
21 exit 1
22 fi
23
24 # check for 'wget' program
25 wget --version 2>/dev/null >/dev/null
26 if [ ! $? ]; then
27 echo "==== You must have the 'wget' program installed for this script ===="
28 exit 1
29 fi
30
31 # make sure we're in the top-level directory
32 if [ ! -d ./po ]; then
33 echo "==== No ./po directory in the current working directory ===="
34 exit 1
35 fi
36
37 # make sure a package argument was passed to us
38 if [ -z "$1" ]; then
39 echo "Usage: $0 PACKAGE, e.g. $0 gst-plugins-good"
40 exit 1
41 fi
42
43 if test "$1" != "gstreamer" -a \
44 "$1" != "gst-plugins-base" -a \
45 "$1" != "gst-plugins-good" -a \
46 "$1" != "gst-plugins-ugly" -a \
47 "$1" != "gst-plugins-bad"; then
48 echo "Unexpected package '$1' ?!"
49 exit 1
50 fi
51
52 PACKAGE="$1"
53
54 DOMAINS_TO_ADD=""
55 DOMAINS_UPDATED=""
56
57 echo "Downloading latest translation files for package $PACKAGE ..."
58 echo
59
60 for d in $DOMAINS
61 do
62 PACKAGE_PO_URL_BASE="http://translationproject.org/latest/$PACKAGE"
63 PO_URL="$PACKAGE_PO_URL_BASE/$d.po"
64 PO_FILENAME="$PACKAGE.$d.po"
65 if wget -q -nc -O $PO_FILENAME $PO_URL; then
66 if [ -f "po/$d.po" ]; then
67 # ./po/foo.po exists, so let's check if ours matches the latest from the
68 # translation project website
69 if diff $PO_FILENAME "po/$d.po" >/dev/null; then
70 echo "$d.po: up-to-date"
71 rm -f $PO_FILENAME
72 else
73 mv $PO_FILENAME "po/$d.po"
74 echo "$d.po: updated"
75 DOMAINS_UPDATED="$DOMAINS_UPDATED $d"
76 fi
77 else
78 # ./po/foo.po doesn't exist, but foo.po exists on the translation project
79 # website, so it's probably a new translation
80 echo "$d.po: new language"
81 mv $PO_FILENAME "po/$d.po"
82 DOMAINS_UPDATED="$DOMAINS_UPDATED $d"
83 DOMAINS_TO_ADD="$DOMAINS_TO_ADD $d"
84 fi
85 else
86 rm -f $PO_FILENAME
87 echo "$d.po: failure (does probably not exist)"
88 fi
89 done
90
91 if [ -n "$DOMAINS_UPDATED" ]; then
92 echo "===================================================================="
93 echo
94 echo "Language domains updated :$DOMAINS_UPDATED"
95 echo "Language domains to cvs add :$DOMAINS_TO_ADD"
96 echo
97 echo "Source: http://translationproject.org/latest/$PACKAGE/"
98 echo
99 if [ -n "$DOMAINS_TO_ADD" ]; then
100 CMD_STRING="cvs add"
101 for d in $DOMAINS_TO_ADD; do
102 CMD_STRING="$CMD_STRING po/$d.po"
103 done
104 echo "Please run"
105 echo
106 echo " $CMD_STRING"
107 echo
108 echo "now and add the following domains to the po/LINGUAS file:"
109 echo
110 echo " $DOMAINS_TO_ADD"
111 echo
112 echo
113 fi
114 echo "===================================================================="
115 fi
116
117
0 --- po/Makefile.in.in.orig 2006-01-07 12:03:45.000000000 +0100
1 +++ po/Makefile.in.in 2006-01-07 12:04:23.000000000 +0100
2 @@ -11,6 +11,9 @@
3 PACKAGE = @PACKAGE@
4 VERSION = @VERSION@
5
6 +# thomas: add GETTEXT_PACKAGE substitution as used in Makevars
7 +GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
8 +
9 SHELL = /bin/sh
10 @SET_MAKE@
11
0 # these are the variables your Makefile.am should set
1 # the example is based on the colorbalance interface
2
3 #glib_enum_headers=$(colorbalance_headers)
4 #glib_enum_define=GST_COLOR_BALANCE
5 #glib_enum_prefix=gst_color_balance
6
7 enum_headers=$(foreach h,$(glib_enum_headers),\n\#include \"$(h)\")
8
9 # these are all the rules generating the relevant files
10 %-marshal.h: %-marshal.list
11 glib-genmarshal --header --prefix=$(glib_enum_prefix)_marshal $^ > $*-marshal.h.tmp
12 mv $*-marshal.h.tmp $*-marshal.h
13
14 %-marshal.c: %-marshal.list
15 echo "#include \"$*-marshal.h\"" >> $*-marshal.c.tmp
16 glib-genmarshal --body --prefix=$(glib_enum_prefix)_marshal $^ >> $*-marshal.c.tmp
17 mv $*-marshal.c.tmp $*-marshal.c
18
19 %-enumtypes.h: $(glib_enum_headers)
20 glib-mkenums \
21 --fhead "#ifndef __$(glib_enum_define)_ENUM_TYPES_H__\n#define __$(glib_enum_define)_ENUM_TYPES_H__\n\n#include <glib-object.h>\n\nG_BEGIN_DECLS\n" \
22 --fprod "\n/* enumerations from \"@filename@\" */\n" \
23 --vhead "GType @enum_name@_get_type (void);\n#define GST_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n" \
24 --ftail "G_END_DECLS\n\n#endif /* __$(glib_enum_define)_ENUM_TYPES_H__ */" \
25 $^ > $@
26
27 %-enumtypes.c: $(glib_enum_headers)
28 @if test "x$(glib_enum_headers)" == "x"; then echo "ERROR: glib_enum_headers is empty, please fix Makefile"; exit 1; fi
29 glib-mkenums \
30 --fhead "#include \"$*-enumtypes.h\"\n$(enum_headers)" \
31 --fprod "\n/* enumerations from \"@filename@\" */" \
32 --vhead "GType\n@enum_name@_get_type (void)\n{\n static GType etype = 0;\n if (etype == 0) {\n static const G@Type@Value values[] = {" \
33 --vprod " { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \
34 --vtail " { 0, NULL, NULL }\n };\n etype = g_@type@_register_static (\"@EnumName@\", values);\n }\n return etype;\n}\n" \
35 $^ > $@
36
37 # a hack rule to make sure .Plo files exist because they get include'd
38 # from Makefile's
39 .deps/%-marshal.Plo:
40 touch $@
41
42 .deps/%-enumtypes.Plo:
43 touch $@
3232 {
3333 <conditional jump on wim's debian 2/2/06>
3434 Memcheck:Cond
35 obj:/lib/ld-2.3.*.so
35 obj:/lib/ld-2.*.so
3636 fun:dl_open_worker
37 obj:/lib/ld-2.3.*.so
37 obj:/lib/ld-2.*.so
3838 fun:_dl_open
3939 fun:dlopen_doit
40 obj:/lib/ld-2.3.*.so
40 obj:/lib/ld-2.*.so
4141 fun:_dlerror_run
42 fun:dlopen@@GLIBC_2.1
42 fun:dlopen
4343 fun:g_module_open
4444 fun:gst_plugin_load_file
45 }
46
47 {
48 <Conditional jump>
49 Memcheck:Cond
50 fun:strlen
51 fun:fillin_rpath
52 fun:_dl_init_paths
53 fun:dl_main
54 fun:_dl_sysdep_start
55 fun:_dl_start
56 obj:/lib64/ld-2.*.so
57 obj:*
58 obj:*
59 }
60
61 {
62 <Conditional jump>
63 Memcheck:Cond
64 fun:_dl_relocate_object
65 fun:dl_main
66 fun:_dl_sysdep_start
67 fun:_dl_start
68 obj:/lib64/ld-2.*.so
69 obj:*
70 obj:*
71 }
72
73 {
74 <insert a suppression name here>
75 Memcheck:Cond
76 fun:_dl_relocate_object
77 fun:dl_open_worker
78 fun:_dl_catch_error
79 fun:_dl_open
80 fun:dlopen_doit
81 fun:_dl_catch_error
82 fun:_dlerror_run
83 fun:dlopen@@GLIBC_2.2.5
84 fun:g_module_open
4585 }
4686
4787 # glibc does not deallocate thread-local storage
631671 fun:_Exit
632672 }
633673
674 # same as above, just so it works for tpm on gutsy/x86-64
675 {
676 <workaround glibc bug on gutsy x86-64>
677 Memcheck:Free
678 fun:free
679 fun:free_mem
680 fun:__libc_freeres
681 }
682
634683 # valgrind doesn't allow me to specify a suppression for Addr1, Addr2, Addr4
635684 # as Addr*, so 3 copies for that; and then 2 of each for that pesky memcpy
636685 {
16251674 fun:calloc
16261675 fun:g_malloc0
16271676 fun:ORBit_alloc_tcval
1628 obj:/usr/lib/libORBit-2.so.*
1677 obj:*
16291678 fun:PortableServer_POA_servant_to_reference
1630 obj:/usr/lib/libgconf-2.so.*
1631 obj:/usr/lib/libgconf-2.so.*
1632 obj:/usr/lib/libgconf-2.so.*
1679 fun:*
1680 fun:*
1681 fun:*
16331682 fun:gconf_engine_get_default
16341683 }
16351684 {
16551704 fun:calloc
16561705 fun:g_malloc0
16571706 fun:ORBit_alloc*
1658 obj:/usr/lib/libORBit-2.so.*
1707 fun:*
16591708 fun:ORBit_demarshal_IOR
16601709 fun:ORBit_demarshal_object
16611710 fun:ORBit_demarshal_value
1662 obj:/usr/lib/libORBit-2.so.*
1711 fun:*
16631712 fun:ORBit_small_invoke_stub
16641713 fun:ConfigServer_get_default_database
1665 obj:/usr/lib/libgconf-2.so.*
1714 fun:*
16661715 fun:gconf_engine_get_default
16671716 }
16681717 {
16711720 fun:calloc
16721721 fun:g_malloc0
16731722 fun:ORBit_alloc*
1674 obj:/usr/lib/libORBit-2.so.*
1723 fun:*
16751724 fun:IOP_generate_profiles
16761725 fun:ORBit_marshal_object
16771726 fun:ORBit_marshal_value
1678 obj:/usr/lib/libORBit-2.so.*
1727 fun:*
16791728 fun:ORBit_small_invoke_stub
16801729 fun:ConfigServer_add_client
1681 obj:/usr/lib/libgconf-2.so.*
1682 obj:/usr/lib/libgconf-2.so.*
1730 fun:*
1731 fun:*
16831732 fun:gconf_engine_get_default
16841733 }
16851734 {
16881737 fun:calloc
16891738 fun:g_malloc0
16901739 fun:ORBit_alloc_by_tc
1691 obj:/usr/lib/libORBit-2.so.*
1740 fun:*
16921741 fun:PortableServer_POA_servant_to_reference
1693 obj:/usr/lib/libgconf-2.so.*
1694 obj:/usr/lib/libgconf-2.so.*
1695 obj:/usr/lib/libgconf-2.so.*
1742 fun:*
1743 fun:*
1744 fun:*
16961745 fun:gconf_engine_get_default
16971746 }
16981747 {
17131762 fun:gconf_engine_get_default
17141763 }
17151764
1765 {
1766 <insert a suppression name here>
1767 Memcheck:Leak
1768 fun:calloc
1769 fun:g_malloc0
1770 fun:ORBit_alloc*
1771 fun:*
1772 fun:ORBit_demarshal_IOR
1773 fun:ORBit_demarshal_object
1774 fun:*
1775 fun:*
1776 fun:gconf_activate_server
1777 }
1778
17161779 # Some libORBit/bonobo initialisation stuff
17171780 {
17181781 <bonobo init>
17571820 fun:g_malloc0
17581821 fun:ORBit_alloc_tcval
17591822 fun:ORBit_adaptor_setup
1760 obj:/usr/lib/libORBit-2.so*
1823 fun:*
17611824 fun:ORBit_POA_setup_root
17621825 fun:ORBit_init_internals
17631826 fun:CORBA_ORB_init
19852048 fun:FcInitLoadConfigAndFonts
19862049 }
19872050
2051 # Issues with ubuntu Hardy, same crack as for previous ubuntus
2052 {
2053 <tls leak generic ubuntu hardy x86>
2054 Memcheck:Leak
2055 fun:calloc
2056 obj:*
2057 fun:_dl_allocate_tls
2058 fun:pthread_create@@*
2059 obj:/usr/lib/libgthread*
2060 fun:g_thread_*
2061 }
2062
2063 # I've made this version generic, so that it covers future modifications
2064 # of library names
2065 {
2066 <tls leak generic>
2067 Memcheck:Leak
2068 fun:calloc
2069 obj:*
2070 fun:_dl_allocate_tls
2071 fun:pthread_create@@*
2072 fun:g_thread_*
2073 }
2074
2075 # series of invalid read of size 4 in g_module_open for ubuntu
2076 # hardy x86/32bit
2077 {
2078 <invalid read of size 4 within <g_module_open>
2079 Memcheck:Addr4
2080 obj:/lib/ld-2.7.so
2081 obj:/lib/ld-2.7.so
2082 obj:/lib/ld-2.7.so
2083 obj:/lib/tls/i686/cmov/libdl-2.7.so
2084 obj:/lib/ld-2.7.so
2085 obj:/lib/tls/i686/cmov/libdl-2.7.so
2086 fun:dlopen
2087 fun:g_module_open
2088 fun:gst_plugin_load_*
2089 }
2090
2091 {
2092 <invalid read of size 4 within <g_module_open>
2093 Memcheck:Addr4
2094 obj:/lib/ld-2.7.so
2095 obj:/lib/ld-2.7.so
2096 obj:/lib/ld-2.7.so
2097 obj:/lib/ld-2.7.so
2098 obj:/lib/ld-2.7.so
2099 obj:/lib/tls/i686/cmov/libdl-2.7.so
2100 obj:/lib/ld-2.7.so
2101 obj:/lib/tls/i686/cmov/libdl-2.7.so
2102 fun:dlopen
2103 fun:g_module_open
2104 fun:gst_plugin_load_*
2105 }
2106
2107 {
2108 <invalid read of size 4 within <g_module_open>
2109 Memcheck:Addr4
2110 obj:/lib/ld-2.7.so
2111 obj:/lib/ld-2.7.so
2112 obj:/lib/ld-2.7.so
2113 obj:/lib/ld-2.7.so
2114 obj:/lib/ld-2.7.so
2115 obj:/lib/ld-2.7.so
2116 obj:/lib/tls/i686/cmov/libdl-2.7.so
2117 obj:/lib/ld-2.7.so
2118 obj:/lib/tls/i686/cmov/libdl-2.7.so
2119 fun:dlopen
2120 fun:g_module_open
2121 fun:gst_plugin_load_*
2122 }
2123
2124 {
2125 <invalid read of size 4 within <g_module_open>
2126 Memcheck:Addr4
2127 obj:/lib/ld-2.7.so
2128 obj:/lib/ld-2.7.so
2129 obj:/lib/ld-2.7.so
2130 obj:/lib/ld-2.7.so
2131 obj:/lib/ld-2.7.so
2132 obj:/lib/ld-2.7.so
2133 obj:/lib/ld-2.7.so
2134 obj:/lib/ld-2.7.so
2135 obj:/lib/ld-2.7.so
2136 obj:/lib/ld-2.7.so
2137 obj:/lib/tls/i686/cmov/libdl-2.7.so
2138 obj:/lib/ld-2.7.so
2139 obj:/lib/tls/i686/cmov/libdl-2.7.so
2140 fun:dlopen
2141 fun:g_module_open
2142 fun:gst_plugin_load_*
2143 }
2144
2145 {
2146 <invalid read of size 4 within <g_module_open>
2147 Memcheck:Addr4
2148 obj:/lib/ld-2.7.so
2149 obj:/lib/ld-2.7.so
2150 obj:/lib/ld-2.7.so
2151 obj:/lib/ld-2.7.so
2152 obj:/lib/ld-2.7.so
2153 obj:/lib/ld-2.7.so
2154 obj:/lib/ld-2.7.so
2155 obj:/lib/ld-2.7.so
2156 obj:/lib/ld-2.7.so
2157 obj:/lib/tls/i686/cmov/libdl-2.7.so
2158 obj:/lib/ld-2.7.so
2159 obj:/lib/tls/i686/cmov/libdl-2.7.so
2160 fun:dlopen
2161 fun:g_module_open
2162 fun:gst_plugin_load*
2163 }
2164
2165 {
2166 <invalid read of size 4 within <g_module_open>
2167 Memcheck:Addr4
2168 obj:/lib/ld-2.7.so
2169 obj:/lib/ld-2.7.so
2170 obj:/lib/ld-2.7.so
2171 obj:/lib/tls/i686/cmov/libc-2.7.so
2172 fun:_dl_sym
2173 obj:/lib/tls/i686/cmov/libdl-2.7.so
2174 obj:/lib/ld-2.7.so
2175 obj:/lib/tls/i686/cmov/libdl-2.7.so
2176 fun:dlsym
2177 fun:g_module_symbol
2178 fun:g_module_open
2179 fun:gst_plugin_load_*
2180 }
2181
2182 # series of invalid read of size 8 in g_module_open for ubuntu
2183 # hardy x86/64bit
2184 {
2185 <invalid read of size 8 within <g_module_open>
2186 Memcheck:Addr8
2187 obj:/lib/ld-2.7.so
2188 obj:/lib/ld-2.7.so
2189 obj:/lib/ld-2.7.so
2190 obj:/lib/ld-2.7.so
2191 obj:/lib/ld-2.7.so
2192 obj:/lib/ld-2.7.so
2193 obj:/lib/ld-2.7.so
2194 obj:/lib/libdl-2.7.so
2195 obj:/lib/ld-2.7.so
2196 obj:/lib/libdl-2.7.so
2197 fun:dlopen
2198 fun:g_module_open
2199 }
2200
2201 {
2202 <invalid read of size 8 within <g_module_open>
2203 Memcheck:Addr8
2204 obj:/lib/ld-2.7.so
2205 obj:/lib/ld-2.7.so
2206 obj:/lib/ld-2.7.so
2207 obj:/lib/ld-2.7.so
2208 obj:/lib/libdl-2.7.so
2209 obj:/lib/ld-2.7.so
2210 obj:/lib/libdl-2.7.so
2211 fun:dlopen
2212 fun:g_module_open
2213 }
2214
2215 {
2216 <invalid read of size 8 within <g_module_open>
2217 Memcheck:Addr8
2218 obj:/lib/ld-2.7.so
2219 obj:/lib/ld-2.7.so
2220 obj:/lib/ld-2.7.so
2221 obj:/lib/ld-2.7.so
2222 obj:/lib/ld-2.7.so
2223 obj:/lib/ld-2.7.so
2224 obj:/lib/libdl-2.7.so
2225 obj:/lib/ld-2.7.so
2226 obj:/lib/libdl-2.7.so
2227 fun:dlopen
2228 fun:g_module_open
2229 }
2230
2231 {
2232 <invalid read of size 8 within <g_module_open>
2233 Memcheck:Addr8
2234 obj:/lib/ld-2.7.so
2235 obj:/lib/ld-2.7.so
2236 obj:/lib/ld-2.7.so
2237 obj:/lib/ld-2.7.so
2238 obj:/lib/ld-2.7.so
2239 obj:/lib/ld-2.7.so
2240 obj:/lib/ld-2.7.so
2241 obj:/lib/ld-2.7.so
2242 obj:/lib/ld-2.7.so
2243 obj:/lib/ld-2.7.so
2244 obj:/lib/libdl-2.7.so
2245 obj:/lib/ld-2.7.so
2246 obj:/lib/libdl-2.7.so
2247 fun:dlopen
2248 fun:g_module_open
2249 }
2250
2251 {
2252 <invalid read of size 8 within <g_module_open>
2253 Memcheck:Addr8
2254 obj:/lib/ld-2.7.so
2255 obj:/lib/ld-2.7.so
2256 obj:/lib/ld-2.7.so
2257 obj:/lib/ld-2.7.so
2258 obj:/lib/ld-2.7.so
2259 obj:/lib/libdl-2.7.so
2260 obj:/lib/ld-2.7.so
2261 obj:/lib/libdl-2.7.so
2262 fun:dlopen
2263 fun:g_module_open
2264 }
2265
2266 {
2267 <invalid read of size 8 within <g_module_open>
2268 Memcheck:Addr8
2269 obj:/lib/ld-2.7.so
2270 obj:/lib/ld-2.7.so
2271 obj:/lib/libdl-2.7.so
2272 obj:/lib/ld-2.7.so
2273 obj:/lib/libdl-2.7.so
2274 fun:dlopen
2275 fun:g_module_open
2276 }
2277
2278 {
2279 <invalid read of size 8 within <g_module_open>
2280 Memcheck:Addr8
2281 obj:/lib/ld-2.7.so
2282 obj:/lib/ld-2.7.so
2283 obj:/lib/ld-2.7.so
2284 obj:/lib/ld-2.7.so
2285 obj:/lib/libc-2.7.so
2286 obj:/lib/libdl-2.7.so
2287 obj:/lib/ld-2.7.so
2288 obj:/lib/libdl-2.7.so
2289 fun:dlsym
2290 fun:g_module_symbol
2291 fun:g_module_open
2292 }
2293
2294 {
2295 <GLib caching>
2296 Memcheck:Addr4
2297 obj:/lib/ld-2.7.so
2298 obj:/lib/ld-2.7.so
2299 obj:/lib/ld-2.7.so
2300 obj:/lib/ld-2.7.so
2301 obj:/lib/ld-2.7.so
2302 obj:/lib/ld-2.7.so
2303 obj:/lib/tls/i686/cmov/libc-2.7.so
2304 obj:/lib/ld-2.7.so
2305 fun:__libc_dlopen_mode
2306 fun:__nss_lookup_function
2307 obj:/lib/tls/i686/cmov/libc-2.7.so
2308 fun:__nss_passwd_lookup
2309 fun:getpwnam_r
2310 }
2311
2312 {
2313 <GLib caching>
2314 Memcheck:Addr4
2315 obj:/lib/ld-2.7.so
2316 obj:/lib/ld-2.7.so
2317 obj:/lib/ld-2.7.so
2318 obj:/lib/ld-2.7.so
2319 obj:/lib/ld-2.7.so
2320 obj:/lib/ld-2.7.so
2321 obj:/lib/ld-2.7.so
2322 obj:/lib/ld-2.7.so
2323 obj:/lib/ld-2.7.so
2324 obj:/lib/tls/i686/cmov/libc-2.7.so
2325 obj:/lib/ld-2.7.so
2326 fun:__libc_dlopen_mode
2327 fun:__nss_lookup_function
2328 obj:/lib/tls/i686/cmov/libc-2.7.so
2329 fun:__nss_passwd_lookup
2330 fun:getpwnam_r
2331 }
2332
2333 {
2334 <GLib caching>
2335 Memcheck:Addr4
2336 obj:/lib/ld-2.7.so
2337 obj:/lib/ld-2.7.so
2338 obj:/lib/ld-2.7.so
2339 obj:/lib/ld-2.7.so
2340 obj:/lib/ld-2.7.so
2341 obj:/lib/ld-2.7.so
2342 obj:/lib/tls/i686/cmov/libc-2.7.so
2343 obj:/lib/ld-2.7.so
2344 fun:__libc_dlopen_mode
2345 fun:__nss_lookup_function
2346 obj:/lib/tls/i686/cmov/libnss_compat-2.7.so
2347 fun:_nss_compat_getpwnam_r
2348 fun:getpwnam_r
2349 }
2350
2351 {
2352 <GLib caching>
2353 Memcheck:Addr4
2354 obj:/lib/ld-2.7.so
2355 obj:/lib/ld-2.7.so
2356 obj:/lib/ld-2.7.so
2357 obj:/lib/ld-2.7.so
2358 obj:/lib/ld-2.7.so
2359 obj:/lib/ld-2.7.so
2360 obj:/lib/ld-2.7.so
2361 obj:/lib/ld-2.7.so
2362 obj:/lib/ld-2.7.so
2363 obj:/lib/tls/i686/cmov/libc-2.7.so
2364 obj:/lib/ld-2.7.so
2365 fun:__libc_dlopen_mode
2366 fun:__nss_lookup_function
2367 obj:/lib/tls/i686/cmov/libnss_compat-2.7.so
2368 fun:_nss_compat_getpwnam_r
2369 fun:getpwnam_r
2370 }
2371
2372 {
2373 <GLib caching>
2374 Memcheck:Addr8
2375 obj:/lib/ld-2.7.so
2376 obj:/lib/ld-2.7.so
2377 obj:/lib/ld-2.7.so
2378 obj:/lib/ld-2.7.so
2379 obj:/lib/ld-2.7.so
2380 obj:/lib/ld-2.7.so
2381 obj:/lib/ld-2.7.so
2382 obj:/lib/ld-2.7.so
2383 obj:/lib/ld-2.7.so
2384 obj:/lib/ld-2.7.so
2385 obj:/lib/libc-2.7.so
2386 obj:/lib/ld-2.7.so
2387 fun:__libc_dlopen_mode
2388 fun:__nss_lookup_function
2389 obj:/lib/libc-2.7.so
2390 fun:getpwnam_r
2391 }
2392
2393 ## Leaks in ALSA (variations of leak from snd_config_load1)
2394
2395 {
2396 <Alsa leak>
2397 Memcheck:Leak
2398 fun:calloc
2399 fun:_snd_config_make
2400 fun:_snd_config_make_add
2401 fun:*
2402 fun:*
2403 fun:*
2404 fun:*
2405 fun:snd_config_load1
2406 }
2407
2408 {
2409 <Alsa leak>
2410 Memcheck:Leak
2411 fun:calloc
2412 fun:_snd_config_make
2413 fun:_snd_config_make_add
2414 fun:*
2415 fun:*
2416 fun:snd_config_load1
2417 }
2418 {
2419 <Alsa leak>
2420 Memcheck:Leak
2421 fun:calloc
2422 fun:_snd_config_make
2423 fun:_snd_config_make_add
2424 fun:*
2425 fun:*
2426 fun:*
2427 fun:snd_config_load1
2428 }
2429 {
2430 <Alsa leak>
2431 Memcheck:Leak
2432 fun:calloc
2433 fun:_snd_config_make
2434 fun:_snd_config_make_add
2435 fun:*
2436 fun:*
2437 fun:*
2438 fun:*
2439 fun:*
2440 fun:snd_config_load1
2441 }
2442
2443 {
2444 <Alsa leak>
2445 Memcheck:Leak
2446 fun:calloc
2447 fun:_snd_config_make
2448 fun:_snd_config_make_add
2449 fun:*
2450 fun:*
2451 fun:*
2452 fun:*
2453 fun:*
2454 fun:*
2455 fun:snd_config_load1
2456 }
2457
2458 {
2459 <Alsa leak>
2460 Memcheck:Leak
2461 fun:calloc
2462 fun:_snd_config_make
2463 fun:_snd_config_make_add
2464 fun:*
2465 fun:*
2466 fun:*
2467 fun:*
2468 fun:*
2469 fun:*
2470 fun:*
2471 fun:snd_config_load1
2472 }
2473 {
2474 <Alsa leak>
2475 Memcheck:Leak
2476 fun:calloc
2477 fun:_snd_config_make
2478 fun:_snd_config_make_add
2479 fun:*
2480 fun:*
2481 fun:*
2482 fun:*
2483 fun:*
2484 fun:*
2485 fun:*
2486 fun:*
2487 fun:snd_config_load1
2488 }
2489
2490 {
2491 <Alsa leak>
2492 Memcheck:Leak
2493 fun:malloc
2494 fun:snd1_dlobj_cache_add
2495 fun:snd_ctl_open_noupdate
2496 }
2497
2498 # The following are leaks of caps that need to be created dynamically
2499 # in the type registration of the plugin (used for pad templates).
2500
2501 {
2502 <Leak in ogmparsers>
2503 Memcheck:Leak
2504 fun:malloc
2505 fun:g_malloc
2506 fun:g_slice_alloc
2507 fun:gst_caps_new_empty
2508 fun:gst_caps_new_simple
2509 fun:*
2510 fun:g_type_class_ref
2511 fun:gst_element_register
2512 }
2513
2514 {
2515 <Leak in ogmparsers>
2516 Memcheck:Leak
2517 fun:malloc
2518 fun:g_malloc
2519 fun:g_slice_alloc
2520 fun:gst_caps_new_empty
2521 fun:*
2522 fun:*
2523 fun:g_type_class_ref
2524 fun:gst_element_register
2525 fun:gst_ogm_parse_plugin_init
2526 fun:plugin_init
2527 }
2528
2529 {
2530 <Leak in videotestsrc>
2531 Memcheck:Leak
2532 fun:malloc
2533 fun:g_malloc
2534 fun:g_slice_alloc
2535 fun:gst_caps_new_empty
2536 fun:gst_caps_copy
2537 fun:gst_video_test_src_base_init
2538 fun:g_type_class_ref
2539 fun:gst_element_register
2540 }
2541
2542 {
2543 <Leak in ffmpegcolorspace>
2544 Memcheck:Leak
2545 fun:malloc
2546 fun:g_malloc
2547 fun:g_slice_alloc
2548 fun:gst_caps_new_empty
2549 fun:gst_ffmpegcsp_codectype_to_caps
2550 fun:gst_ffmpegcolorspace_register
2551 fun:plugin_init
2552 }
2553
2554 {
2555 <Leak in ffmpegocolorspace>
2556 Memcheck:Leak
2557 fun:malloc
2558 fun:g_malloc
2559 fun:g_slice_alloc
2560 fun:gst_caps_new_empty
2561 fun:gst_caps_copy
2562 fun:gst_ffmpegcolorspace_register
2563 fun:plugin_init
2564 }
2565
2566 {
2567 <Leak in gstffmpegdemux>
2568 Memcheck:Leak
2569 fun:malloc
2570 fun:g_malloc
2571 fun:g_slice_alloc
2572 fun:gst_caps_new_empty
2573 fun:gst_caps_new_any
2574 fun:gst_ffmpegdemux_register
2575 fun:plugin_init
2576 }
2577
2578 {
2579 <Leak in GstAudioFilter subclasses>
2580 Memcheck:Leak
2581 fun:malloc
2582 fun:g_malloc
2583 fun:g_slice_alloc
2584 fun:gst_caps_new_empty
2585 fun:gst_caps_copy
2586 fun:gst_audio_filter_class_add_pad_templates
2587 }
2588
2589 {
2590 <Leak in GstAudioFilter subclasses, variant>
2591 Memcheck:Leak
2592 fun:realloc
2593 fun:g_realloc
2594 fun:g_ptr_array_maybe_expand
2595 fun:g_ptr_array_add
2596 fun:gst_caps_append
2597 fun:gst_audio_filter_class_add_pad_templates
2598 }
2599
2600 {
2601 <Leak in GstAudioFilter subclasses, variant>
2602 Memcheck:Leak
2603 fun:malloc
2604 fun:realloc
2605 fun:g_realloc
2606 fun:g_ptr_array_maybe_expand
2607 fun:g_ptr_array_add
2608 fun:gst_caps_append
2609 fun:gst_audio_filter_class_add_pad_templates
2610 }
2611
2612 {
2613 <Leak in GstAudioFilter subclasses, variant>
2614 Memcheck:Leak
2615 fun:malloc
2616 fun:realloc
2617 fun:g_realloc
2618 fun:g_ptr_array_maybe_expand
2619 fun:g_ptr_array_add
2620 fun:gst_caps_copy
2621 fun:gst_audio_filter_class_add_pad_templates
2622 }
2623
2624 {
2625 <Leak in GstAudioFilter subclasses, variant2>
2626 Memcheck:Leak
2627 fun:malloc
2628 fun:g_malloc
2629 fun:g_slice_alloc
2630 fun:g_ptr_array_sized_new
2631 fun:gst_caps_new_empty
2632 fun:gst_caps_copy
2633 fun:gst_audio_filter_class_add_pad_templates
2634 }
2635
2636 {
2637 <Leak in riff-media>
2638 Memcheck:Leak
2639 fun:malloc
2640 fun:g_malloc
2641 fun:g_slice_alloc
2642 fun:gst_caps_new_empty
2643 fun:gst_riff_create_*_template_caps
2644 }
2645
2646 ## Leaks in pango (bilboed: gentoo unstable amd64)
2647
2648 {
2649 <insert a suppression name here>
2650 Memcheck:Leak
2651 fun:realloc
2652 fun:FcPatternObjectInsertElt
2653 fun:*
2654 fun:*
2655 fun:*
2656 fun:*
2657 fun:*
2658 fun:*
2659 fun:pango_layout_get_extents*
2660 fun:pango_layout_get_pixel_extents
2661 fun:gst_text_overlay_render_text
2662 }
2663 {
2664 <insert a suppression name here>
2665 Memcheck:Leak
2666 fun:calloc
2667 fun:g_malloc0
2668 fun:pango_language_from_string
2669 fun:pango_language_get_default
2670 fun:pango_context_init
2671 fun:g_type_create_instance
2672 fun:g_object_constructor
2673 fun:g_object_newv
2674 fun:g_object_new_valist
2675 fun:g_object_new
2676 fun:pango_font_map_create_context
2677 }
2678
2679 {
2680 <PangoLanguage can never be freed>
2681 Memcheck:Leak
2682 fun:calloc
2683 fun:g_malloc0
2684 fun:pango_language_from_string
2685 }
2686
2687 ## Leak of property_list in gstffmpegcfg.c
2688 ## This list is created in gst_ffmpegcsp_init(), called from
2689 ## gst_ffmpegenc_register.
2690 {
2691 <insert a suppression name here>
2692 Memcheck:Leak
2693 fun:malloc
2694 fun:g_malloc
2695 fun:g_slice_alloc
2696 fun:g_datalist_id_set_data_full
2697 fun:gst_ffmpeg_cfg_init
2698 fun:gst_ffmpegenc_register
2699 fun:plugin_init
2700 }
2701
2702 ## Leak of GIO module through gnomevfs
2703
2704 {
2705 <gio leak>
2706 Memcheck:Leak
2707 fun:malloc
2708 fun:g_malloc
2709 fun:*
2710 fun:*
2711 fun:g_type_create_instance
2712 fun:*
2713 fun:*
2714 fun:*
2715 fun:*
2716 fun:g_io_module_new
2717 fun:g_io_modules_load_all_in_directory
2718 fun:*
2719 fun:get_default_vfs
2720 }
2721
2722 ## Conditional jump in getaddrinfo (bilboed, gentoo ~amd64, Dec 13 2008)
2723 {
2724 <Leak of addrinfo in esd>
2725 Memcheck:Cond
2726 fun:gaih_inet
2727 fun:getaddrinfo
2728 }
2729
00 # This is an include file specifically tuned for building documentation
11 # for GStreamer plug-ins
2 # It has been further specialized to farsight2 plugins stuff
32
43 help:
54 @echo
2827 TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE)-@GST_MAJORMINOR@
2928
3029 EXTRA_DIST = \
30 scanobj-build.stamp \
3131 $(srcdir)/inspect/*.xml \
3232 inspect.stamp \
3333 inspect-build.stamp \
3939 $(DOC_OVERRIDES) \
4040 $(DOC_MODULE)-sections.txt
4141
42 MAINTAINER_DOC_STAMPS = \
43 scanobj-build.stamp \
44 inspect-build.stamp \
45 inspect.stamp
46
47 # we don't add inspect-build.stamp and scanobj-build.stamp here since they are
48 # built manually by docs maintainers and result is commited to CVS
4249 DOC_STAMPS = \
4350 scan-build.stamp \
4451 tmpl-build.stamp \
4754 scan.stamp \
4855 tmpl.stamp \
4956 sgml.stamp \
50 html.stamp \
51 scanobj-build.stamp \
52 scanobj-trans-build.stamp
57 html.stamp
5358
5459 # files generated/updated by gtkdoc-scangobj
5560 SCANOBJ_FILES = \
56 $(DOC_MODULE).signals \
57 $(DOC_MODULE).hierarchy \
58 $(DOC_MODULE).interfaces \
59 $(DOC_MODULE).prerequisites \
61 $(DOC_MODULE).signals \
62 $(DOC_MODULE).hierarchy \
63 $(DOC_MODULE).interfaces \
64 $(DOC_MODULE).prerequisites \
6065 $(DOC_MODULE).types \
61 $(DOC_MODULE).args
66 $(DOC_MODULE).args
6267
6368 SCANOBJ_FILES_O = \
6469 .libs/$(DOC_MODULE)-scan.o
121126 fi
122127 touch scanobj-build.stamp
123128
124 $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(SCANOBJ_FILES_O): scan-build.stamp scanobj-trans-build.stamp
129 $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(SCANOBJ_FILES_O): scan-build.stamp
125130 @true
126131
127132 ### inspect GStreamer plug-ins; done by documentation maintainer ###
133138 GST_PLUGIN_PATH=$(top_builddir)/gst:$(top_builddir)/sys:$(top_builddir)/ext:$(top_builddir)/plugins:$(top_builddir)/src:$(top_builddir)/gnl \
134139 GST_REGISTRY=$(INSPECT_REGISTRY)
135140
141 # update the element and plugin XML descriptions; store in inspect/
142 inspect:
143 mkdir inspect
144
136145 inspect-update: inspect
137146 -rm -f $(INSPECT_REGISTRY) inspect-build.stamp
138147 $(MAKE) inspect-build.stamp
139
140 if ENABLE_PLUGIN_DOCS
141148
142149 # FIXME: inspect.stamp should be written to by gst-xmlinspect.py
143150 # IF the output changed; see gtkdoc-mktmpl
144151 inspect-build.stamp:
145152 @echo '*** Rebuilding plugin inspection files ***'
146 if test -d inspect; then rm -rf inspect; fi
147 mkdir inspect
148153 if test x"$(srcdir)" != x. ; then \
149154 cp $(srcdir)/inspect.stamp . ; \
150155 cp $(srcdir)/inspect-build.stamp . ; \
155160 touch inspect-build.stamp; \
156161 fi
157162
158 else
159 inspect-build.stamp:
160 @true:
161 endif
162
163163 ### scan headers; done on every build ###
164 scan-build.stamp: $(HFILE_GLOB) $(EXTRA_HFILES) $(basefiles) scanobj-build.stamp inspect-build.stamp scanobj-trans-build.stamp
164 scan-build.stamp: $(HFILE_GLOB) $(EXTRA_HFILES) $(basefiles) scanobj-build.stamp inspect-build.stamp
165165 if test "x$(top_srcdir)" != "x$(top_builddir)" && \
166166 test -d "$(top_builddir)/gst"; \
167167 then \
200200 #### build xml; done on every build ####
201201
202202 ### FIXME: make this error out again when docs are fixed for 0.9
203 sgml-build.stamp: tmpl.stamp inspect.stamp $(CFILE_GLOB) $(top_srcdir)/common/plugins.xsl
203 sgml-build.stamp: tmpl.stamp inspect.stamp $(CFILE_GLOB) $(top_srcdir)/common/plugins.xsl $(expand_content_files)
204204 @echo '*** Building XML ***'
205205 @-mkdir -p xml
206206 @for a in $(srcdir)/inspect/*.xml; do \
211211 gtkdoc-mkdb \
212212 --module=$(DOC_MODULE) \
213213 --source-dir=$(DOC_SOURCE_DIR) \
214 --expand-content-files="$(expand_content_files)" \
214215 --main-sgml-file=$(srcdir)/$(DOC_MAIN_SGML_FILE) \
215216 --output-format=xml \
216217 --ignore-files="$(IGNORE_HFILES) $(IGNORE_CFILES)" \
248249 test "x$(HTML_IMAGES)" = "x" || for i in "" $(HTML_IMAGES) ; do \
249250 if test "$$i" != ""; then cp $(srcdir)/$$i html ; fi; done
250251 @echo '-- Fixing Crossreferences'
251 gtkdoc-fixxref --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS)
252 gtkdoc-fixxref --module=$(DOC_MODULE) --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS)
252253 touch html-build.stamp
253254
254255 clean-local-gtkdoc:
256257 # clean files copied for nonsrcdir templates build
257258 if test x"$(srcdir)" != x. ; then \
258259 rm -rf $(SCANOBJ_FILES) $(SCAN_FILES); \
259 rm -f *.stamp; \
260260 fi
261261 else
262262 all-local:
295295 $(INSTALL_DATA) $(srcdir)/html/$(DOC_MODULE).devhelp \
296296 $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE)-@GST_MAJORMINOR@.devhelp; \
297297 if test -e $(srcdir)/html/$(DOC_MODULE).devhelp2; then \
298 $(INSTALL_DATA) $(srcdir)/html/$(DOC_MODULE).devhelp2 \
298 $(INSTALL_DATA) $(srcdir)/html/$(DOC_MODULE).devhelp2 \
299299 $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE)-@GST_MAJORMINOR@.devhelp2; \
300300 fi; \
301301 (which gtkdoc-rebase >/dev/null && \
302302 gtkdoc-rebase --relative --dest-dir=$(DESTDIR) --html-dir=$(DESTDIR)$(TARGET_DIR)) || true ; \
303303 fi)
304304 uninstall-local:
305 (installfiles=`echo ./html/*.html`; \
306 if test "$$installfiles" = './html/*.html'; \
307 then echo '-- Nothing to uninstall' ; \
305 if test -d $(DESTDIR)$(TARGET_DIR); then \
306 rm -rf $(DESTDIR)$(TARGET_DIR)/*; \
307 rmdir -p $(DESTDIR)$(TARGET_DIR) 2>/dev/null || true; \
308308 else \
309 for i in $$installfiles; do \
310 rmfile=`basename $$i` ; \
311 echo '-- Uninstalling $(DESTDIR)$(TARGET_DIR)/'$$rmfile ; \
312 rm -f $(DESTDIR)$(TARGET_DIR)/$$rmfile; \
313 done; \
314 pngfiles=`echo ./html/*.png`; \
315 if test "$$pngfiles" != './html/*.png'; then \
316 for i in $$pngfiles; do \
317 rmfile=`basename $$i` ; \
318 echo '-- Uninstalling $(DESTDIR)$(TARGET_DIR)/'$$rmfile ; \
319 rm -f $(DESTDIR)$(TARGET_DIR)/$$rmfile; \
320 done; \
321 fi; \
322 echo '-- Uninstalling $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE).devhelp' ; \
323 rm -f $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE)-@GST_MAJORMINOR@.devhelp; \
324 if test -e $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE)-@GST_MAJORMINOR@.devhelp2; then \
325 rm -f $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE)-@GST_MAJORMINOR@.devhelp2; \
326 fi; \
327 echo '-- Uninstalling $(DESTDIR)$(TARGET_DIR)/index.sgml' ; \
328 rm -f $(DESTDIR)$(TARGET_DIR)/index.sgml; \
329 if test -e $(DESTDIR)$(TARGET_DIR)/style.css; then \
330 echo '-- Uninstalling $(DESTDIR)$(TARGET_DIR)/style.css' ; \
331 rm -f $(DESTDIR)$(TARGET_DIR)/style.css; \
332 fi; \
333 fi)
334 if test -d $(DESTDIR)$(TARGET_DIR); then rmdir -p --ignore-fail-on-non-empty $(DESTDIR)$(TARGET_DIR) 2>/dev/null; fi; true
309 echo '-- Nothing to uninstall' ; \
310 fi;
335311
336312 #
337313 # Checks
360336 done ; \
361337 exit $$fail
362338
363 scanobj-trans-update:
364 -rm scanobj-trans-build.stamp
365 $(MAKE) scanobj-trans-build.stamp
366
367 # We have a scanobj-build.stamp just to prevent both from running at the same
368 # time as they use temp files with the same name
369
370 scanobj-trans-build.stamp: $(SCANOBJ_DEPS) $(basefiles) scanobj-build.stamp
371 @echo '*** Scanning Transmitters ***'
372 if test x"$(srcdir)" = x. ; then \
373 GST_PLUGIN_PATH=$(top_builddir)/gst:$(top_builddir)/ext \
374 GST_REGISTRY=$(INSPECT_REGISTRY) \
375 FS_PLUGIN_PATH="$(FS_PLUGIN_PATH)" \
376 CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" \
377 CFLAGS="$(GTKDOC_CFLAGS) $(CFLAGS)" \
378 LDFLAGS="$(GTKDOC_LIBS) $(LDFLAGS)" \
379 $(srcdir)/gtkdoc-scangobj-transmitters \
380 --type-init-func="gst_init(NULL,NULL)" \
381 --types=farsight2-transmitters.types \
382 --module=$(DOC_MODULE) && \
383 $(PYTHON) \
384 $(top_srcdir)/common/scangobj-merge.py $(DOC_MODULE); \
385 fi
386 touch scanobj-trans-build.stamp
387
388339 #
389340 # Require gtk-doc when making dist
390341 #
3434 SCANOBJ_FILES = \
3535 $(DOC_MODULE).args \
3636 $(DOC_MODULE).hierarchy \
37 $(DOC_MODULE).interfaces \
37 $(DOC_MODULE).interfaces \
3838 $(DOC_MODULE).prerequisites \
39 .libs/$(DOC_MODULE)-scan.o \
40 $(DOC_MODULE).signals
39 $(DOC_MODULE).signals \
40 .libs/$(DOC_MODULE)-scan.o
4141
4242 REPORT_FILES = \
4343 $(DOC_MODULE)-undocumented.txt \
4444 $(DOC_MODULE)-undeclared.txt \
4545 $(DOC_MODULE)-unused.txt
4646
47 CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_STAMPS)
47 CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_STAMPS) doc-registry.xml
4848
4949 if ENABLE_GTK_DOC
5050 all-local: html-build.stamp
6363 fi ; \
6464 GST_PLUGIN_SYSTEM_PATH=`cd $(top_builddir) && pwd` \
6565 GST_PLUGIN_PATH= \
66 CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" \
67 CFLAGS="$(GTKDOC_CFLAGS)" LDFLAGS="$(GTKDOC_LIBS)" \
66 GST_REGISTRY=doc-registry.xml \
67 CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" \
68 CFLAGS="$(GTKDOC_CFLAGS) $(CFLAGS)" \
69 LDFLAGS="$(GTKDOC_LIBS) $(LDFLAGS)" \
6870 gtkdoc-scangobj --type-init-func="gst_init(NULL,NULL)" \
6971 --module=$(DOC_MODULE) ; \
7072 else \
108110 #### xml ####
109111
110112 ### FIXME: make this error out again when docs are complete
111 sgml-build.stamp: tmpl.stamp $(CFILE_GLOB)
113 sgml-build.stamp: tmpl.stamp $(CFILE_GLOB) $(expand_content_files)
112114 @echo '*** Building XML ***'
113 gtkdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --main-sgml-file=$(srcdir)/$(DOC_MAIN_SGML_FILE) --output-format=xml $(MKDB_OPTIONS) | tee sgml-build.log
115 gtkdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --expand-content-files="$(expand_content_files)" --main-sgml-file=$(srcdir)/$(DOC_MAIN_SGML_FILE) --output-format=xml $(MKDB_OPTIONS) | tee sgml-build.log
114116 @if grep "WARNING:" sgml-build.log > /dev/null; then true; fi # exit 1; fi
117 cp ../version.entities xml
115118 rm sgml-build.log
116119 touch sgml-build.stamp
117120
138141 test "x$(HTML_IMAGES)" = "x" || for i in "" $(HTML_IMAGES) ; do \
139142 if test "$$i" != ""; then cp $(srcdir)/$$i html ; fi; done
140143 @echo '-- Fixing Crossreferences'
141 gtkdoc-fixxref --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS)
144 gtkdoc-fixxref --module=$(DOC_MODULE) --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS)
142145 touch html-build.stamp
146
147 clean-local-gtkdoc:
148 rm -rf xml tmpl html
149 # clean files copied for nonsrcdir templates build
150 if test x"$(srcdir)" != x. ; then \
151 rm -rf $(DOC_MODULE).types; \
152 fi
143153 else
144154 all-local:
155 clean-local-gtkdoc:
145156 endif
146157
147 clean-local:
158 clean-local: clean-local-gtkdoc
148159 rm -f *~ *.bak
149 rm -rf xml html
150160 rm -rf .libs
151
152 maintainer-clean-local: clean
153 cd $(srcdir) && rm -rf xml html $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
154161
155162 # company: don't delete .sgml and -sections.txt as they're in CVS
156163 # FIXME : thomas added all sgml files and some other things to make
157164 # make distcheck work
158165 distclean-local: clean
159 rm -f $(DOC_MODULE)-decl-list.txt
160 rm -f $(DOC_MODULE)-decl.txt
161 rm -f $(REPORT_FILES)
166 rm -f $(REPORT_FILES) \
167 $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
162168 rm -rf tmpl/*.sgml.bak
163169 rm -f $(DOC_MODULE).hierarchy
164170 rm -f *.stamp || true
173179 fi
174180 rm -rf *.o
175181
182 maintainer-clean-local: clean
183 cd $(srcdir) && rm -rf html \
184 xml $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
185
176186 # thomas: make docs parallel installable; devhelp requires majorminor too
177187 install-data-local:
178 $(mkinstalldirs) $(DESTDIR)$(TARGET_DIR)
179 (installfiles=`echo ./html/*.html`; \
180 if test "$$installfiles" = './html/*.html'; \
188 (installfiles=`echo $(srcdir)/html/*.sgml $(srcdir)/html/*.html $(srcdir)/html/*.png $(srcdir)/html/*.css`; \
189 if test "$$installfiles" = '$(srcdir)/html/*.sgml $(srcdir)/html/*.html $(srcdir)/html/*.png $(srcdir)/html/*.css'; \
181190 then echo '-- Nothing to install' ; \
182191 else \
192 $(mkinstalldirs) $(DESTDIR)$(TARGET_DIR); \
183193 for i in $$installfiles; do \
184194 echo '-- Installing '$$i ; \
185195 $(INSTALL_DATA) $$i $(DESTDIR)$(TARGET_DIR); \
186196 done; \
187 pngfiles=`echo ./html/*.png`; \
188 if test "$$pngfiles" != './html/*.png'; then \
189 for i in $$pngfiles; do \
190 echo '-- Installing '$$i ; \
191 $(INSTALL_DATA) $$i $(DESTDIR)$(TARGET_DIR); \
192 done; \
193 fi; \
194197 echo '-- Installing $(srcdir)/html/$(DOC_MODULE).devhelp' ; \
195198 $(INSTALL_DATA) $(srcdir)/html/$(DOC_MODULE).devhelp \
196199 $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE)-@GST_MAJORMINOR@.devhelp; \
197200 if test -e $(srcdir)/html/$(DOC_MODULE).devhelp2; then \
198 $(INSTALL_DATA) $(srcdir)/html/$(DOC_MODULE).devhelp2 \
201 $(INSTALL_DATA) $(srcdir)/html/$(DOC_MODULE).devhelp2 \
199202 $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE)-@GST_MAJORMINOR@.devhelp2; \
200203 fi; \
201 echo '-- Installing $(srcdir)/html/index.sgml' ; \
202 $(INSTALL_DATA) $(srcdir)/html/index.sgml $(DESTDIR)$(TARGET_DIR); \
203 if test -e $(srcdir)/html/style.css; then \
204 echo '-- Installing $(srcdir)/html/style.css' ; \
205 $(INSTALL_DATA) $(srcdir)/html/style.css $(DESTDIR)$(TARGET_DIR); \
206 fi; \
204 (which gtkdoc-rebase >/dev/null && \
205 gtkdoc-rebase --relative --dest-dir=$(DESTDIR) --html-dir=$(DESTDIR)$(TARGET_DIR)) || true ; \
207206 fi)
208207 uninstall-local:
209 (installfiles=`echo ./html/*.html`; \
210 if test "$$installfiles" = './html/*.html'; \
211 then echo '-- Nothing to uninstall' ; \
208 if test -d $(DESTDIR)$(TARGET_DIR); then \
209 rm -rf $(DESTDIR)$(TARGET_DIR)/*; \
210 rmdir -p $(DESTDIR)$(TARGET_DIR) 2>/dev/null || true; \
212211 else \
213 for i in $$installfiles; do \
214 rmfile=`basename $$i` ; \
215 echo '-- Uninstalling $(DESTDIR)$(TARGET_DIR)/'$$rmfile ; \
216 rm -f $(DESTDIR)$(TARGET_DIR)/$$rmfile; \
217 done; \
218 pngfiles=`echo ./html/*.png`; \
219 if test "$$pngfiles" != './html/*.png'; then \
220 for i in $$pngfiles; do \
221 rmfile=`basename $$i` ; \
222 echo '-- Uninstalling $(DESTDIR)$(TARGET_DIR)/'$$rmfile ; \
223 rm -f $(DESTDIR)$(TARGET_DIR)/$$rmfile; \
224 done; \
225 fi; \
226 echo '-- Uninstalling $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE).devhelp' ; \
227 rm -f $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE)-@GST_MAJORMINOR@.devhelp; \
228 if test -e $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE)-@GST_MAJORMINOR@.devhelp2; then \
229 rm -f $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE)-@GST_MAJORMINOR@.devhelp2; \
230 fi; \
231 echo '-- Uninstalling $(DESTDIR)$(TARGET_DIR)/index.sgml' ; \
232 rm -f $(DESTDIR)$(TARGET_DIR)/index.sgml; \
233 if test -e $(DESTDIR)$(TARGET_DIR)/style.css; then \
234 echo '-- Uninstalling $(DESTDIR)$(TARGET_DIR)/style.css' ; \
235 rm -f $(DESTDIR)$(TARGET_DIR)/style.css; \
236 fi; \
237 fi)
238 if test -d $(DESTDIR)$(TARGET_DIR); then rmdir -p --ignore-fail-on-non-empty $(DESTDIR)$(TARGET_DIR) 2>/dev/null; fi; true
212 echo '-- Nothing to uninstall' ; \
213 fi;
214
239215
240216 #
241217 # Require gtk-doc when making dist
249225 endif
250226
251227 dist-hook: dist-check-gtkdoc dist-hook-local
252 mkdir $(distdir)/tmpl
253 mkdir $(distdir)/xml
254228 mkdir $(distdir)/html
255 -cp $(srcdir)/tmpl/*.sgml $(distdir)/tmpl
256 -cp $(srcdir)/sgml/*.xml $(distdir)/xml
257 -cp $(srcdir)/html/index.sgml $(distdir)/html
258 -cp $(srcdir)/html/*.html $(srcdir)/html/*.css $(distdir)/html
259 -cp $(srcdir)/html/$(DOC_MODULE).devhelp* $(distdir)/html
260
261 images=$(HTML_IMAGES) ; \
262 for i in "" $$images ; do \
263 if test "$$i" != ""; then cp $(srcdir)/$$i $(distdir)/html ; fi; \
264 done
265
266 .PHONY : dist-hook-local
229 cp $(srcdir)/html/* $(distdir)/html
230 -cp $(srcdir)/$(DOC_MODULE).types $(distdir)/
231 -cp $(srcdir)/$(DOC_MODULE)-sections.txt $(distdir)/
232 cd $(distdir) && rm -f $(DISTCLEANFILES)
233 -gtkdoc-rebase --online --relative --html-dir=$(distdir)/html
234
235 .PHONY : dist-hook-local docs
00 EXTRA_DIST = \
1 README \
12 as-ac-expand.m4 \
2 codeset.m4 \
3 as-auto-alt.m4 \
4 as-compiler-flag.m4 \
5 as-compiler.m4 \
6 as-docbook.m4 \
7 as-gcc-inline-assembly.m4 \
8 as-libtool.m4 \
9 as-libtool-tags.m4 \
10 as-objc.m4 \
11 as-python.m4 \
12 as-scrub-include.m4 \
13 as-version.m4 \
14 ax_create_stdint_h.m4 \
15 glib-gettext.m4 \
16 gst-arch.m4 \
17 gst-args.m4 \
18 gst-check.m4 \
19 gst-debuginfo.m4 \
320 gst-default.m4 \
21 gst-doc.m4 \
22 gst-dowhile.m4 \
23 gst-error.m4 \
24 gst-feature.m4 \
25 gst-function.m4 \
26 gst-gettext.m4 \
27 gst-glib2.m4 \
28 gst-libxml2.m4 \
29 gst-parser.m4 \
30 gst-plugindir.m4 \
31 gst-plugin-docs.m4 \
32 gst-valgrind.m4 \
33 gst-x11.m4 \
434 gst.m4 \
5 inttypes.m4 \
6 progtest.m4 \
7 as-auto-alt.m4 \
8 gettext.m4 \
9 gst-doc.m4 \
10 gst-plugindir.m4 \
11 inttypes-pri.m4 \
12 stdint_h.m4 \
13 as-compiler-flag.m4 \
14 glibc21.m4 \
15 gst-error.m4 \
16 gst-plugin-docs.m4 \
17 isc-posix.m4 \
18 uintmax_t.m4 \
19 as-libtool.m4\
20 gst-arch.m4\
21 gst-feature.m4 \
22 gst-valgrind.m4 \
23 lcmessage.m4 \
24 ulonglong.m4 \
25 as-python.m4 \
26 gst-args.m4 \
27 gst-function.m4 \
28 iconv.m4 \
29 lib-ld.m4 \
30 as-scrub-include.m4 \
31 gst-check.m4 \
32 gst-gettext.m4 \
33 intdiv0.m4 \
34 lib-link.m4 \
35 as-version.m4 \
36 gst-debuginfo.m4 \
37 gst-glib2.m4 \
38 inttypes_h.m4 \
39 lib-prefix.m4
35 gtk-doc.m4 \
36 pkg.m4 \
37 check.m4
3737 $(top_srcdir)/common/m4/as-auto-alt.m4 \
3838 $(top_srcdir)/common/m4/as-compiler-flag.m4 \
3939 $(top_srcdir)/common/m4/as-libtool.m4 \
40 $(top_srcdir)/common/m4/as-python.m4 \
4140 $(top_srcdir)/common/m4/as-scrub-include.m4 \
4241 $(top_srcdir)/common/m4/as-version.m4 \
4342 $(top_srcdir)/common/m4/gst-arch.m4 \
4948 $(top_srcdir)/common/m4/gst-plugindir.m4 \
5049 $(top_srcdir)/common/m4/gst.m4 \
5150 $(top_srcdir)/common/m4/gtk-doc.m4 \
52 $(top_srcdir)/common/m4/isc-posix.m4 \
5351 $(top_srcdir)/common/m4/pkg.m4 \
5452 $(top_srcdir)/m4/as-check-python-headers.m4 \
5553 $(top_srcdir)/configure.ac
173171 PKG_CONFIG = @PKG_CONFIG@
174172 PLUGINDIR = @PLUGINDIR@
175173 PROFILE_CFLAGS = @PROFILE_CFLAGS@
176 PYDOCSTUFF_CFLAGS = @PYDOCSTUFF_CFLAGS@
177 PYDOCSTUFF_LIBS = @PYDOCSTUFF_LIBS@
178174 PYFARSIGHT_CFLAGS = @PYFARSIGHT_CFLAGS@
179175 PYFARSIGHT_LIBS = @PYFARSIGHT_LIBS@
180176 PYTHON = @PYTHON@
250246 top_builddir = @top_builddir@
251247 top_srcdir = @top_srcdir@
252248 EXTRA_DIST = \
249 README \
253250 as-ac-expand.m4 \
254 codeset.m4 \
251 as-auto-alt.m4 \
252 as-compiler-flag.m4 \
253 as-compiler.m4 \
254 as-docbook.m4 \
255 as-gcc-inline-assembly.m4 \
256 as-libtool.m4 \
257 as-libtool-tags.m4 \
258 as-objc.m4 \
259 as-python.m4 \
260 as-scrub-include.m4 \
261 as-version.m4 \
262 ax_create_stdint_h.m4 \
263 glib-gettext.m4 \
264 gst-arch.m4 \
265 gst-args.m4 \
266 gst-check.m4 \
267 gst-debuginfo.m4 \
255268 gst-default.m4 \
269 gst-doc.m4 \
270 gst-dowhile.m4 \
271 gst-error.m4 \
272 gst-feature.m4 \
273 gst-function.m4 \
274 gst-gettext.m4 \
275 gst-glib2.m4 \
276 gst-libxml2.m4 \
277 gst-parser.m4 \
278 gst-plugindir.m4 \
279 gst-plugin-docs.m4 \
280 gst-valgrind.m4 \
281 gst-x11.m4 \
256282 gst.m4 \
257 inttypes.m4 \
258 progtest.m4 \
259 as-auto-alt.m4 \
260 gettext.m4 \
261 gst-doc.m4 \
262 gst-plugindir.m4 \
263 inttypes-pri.m4 \
264 stdint_h.m4 \
265 as-compiler-flag.m4 \
266 glibc21.m4 \
267 gst-error.m4 \
268 gst-plugin-docs.m4 \
269 isc-posix.m4 \
270 uintmax_t.m4 \
271 as-libtool.m4\
272 gst-arch.m4\
273 gst-feature.m4 \
274 gst-valgrind.m4 \
275 lcmessage.m4 \
276 ulonglong.m4 \
277 as-python.m4 \
278 gst-args.m4 \
279 gst-function.m4 \
280 iconv.m4 \
281 lib-ld.m4 \
282 as-scrub-include.m4 \
283 gst-check.m4 \
284 gst-gettext.m4 \
285 intdiv0.m4 \
286 lib-link.m4 \
287 as-version.m4 \
288 gst-debuginfo.m4 \
289 gst-glib2.m4 \
290 inttypes_h.m4 \
291 lib-prefix.m4
283 gtk-doc.m4 \
284 pkg.m4 \
285 check.m4
292286
293287 all: all-am
294288
0 dnl as-compiler.m4 0.1.0
1
2 dnl autostars m4 macro for detection of compiler flavor
3
4 dnl Thomas Vander Stichele <thomas at apestaart dot org>
5
6 dnl $Id: as-compiler.m4,v 1.4 2004/06/01 09:44:19 thomasvs Exp $
7
8 dnl AS_COMPILER(COMPILER)
9 dnl will set variable COMPILER to
10 dnl - gcc
11 dnl - forte
12 dnl - (empty) if no guess could be made
13
14 AC_DEFUN([AS_COMPILER],
15 [
16 as_compiler=
17 AC_MSG_CHECKING(for compiler flavour)
18
19 dnl is it gcc ?
20 if test "x$GCC" = "xyes"; then
21 as_compiler="gcc"
22 fi
23
24 dnl is it forte ?
25 AC_TRY_RUN([
26 int main
27 (int argc, char *argv[])
28 {
29 #ifdef __sun
30 return 0;
31 #else
32 return 1;
33 #endif
34 }
35 ], as_compiler="forte", ,)
36
37 if test "x$as_compiler" = "x"; then
38 AC_MSG_RESULT([unknown !])
39 else
40 AC_MSG_RESULT($as_compiler)
41 fi
42 [$1]=$as_compiler
43 ])
0 dnl AS_DOCBOOK([, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]])
1 dnl checks if xsltproc can build docbook documentation
2 dnl (which is possible if the catalog is set up properly
3 dnl I also tried checking for a specific version and type of docbook
4 dnl but xsltproc seemed to happily run anyway, so we can't check for that
5 dnl and version
6 dnl this macro takes inspiration from
7 dnl http://www.movement.uklinux.net/docs/docbook-autotools/configure.html
8 AC_DEFUN([AS_DOCBOOK],
9 [
10 XSLTPROC_FLAGS=--nonet
11 DOCBOOK_ROOT=
12 TYPE_LC=xml
13 TYPE_UC=XML
14 DOCBOOK_VERSION=4.1.2
15
16 if test ! -f /etc/xml/catalog; then
17 for i in /usr/share/sgml/docbook/stylesheet/xsl/nwalsh /usr/share/sgml/docbook/xsl-stylesheets/ /usr/local/share/xsl/docbook ;
18 do
19 if test -d "$i"; then
20 DOCBOOK_ROOT=$i
21 fi
22 done
23 else
24 XML_CATALOG=/etc/xml/catalog
25 CAT_ENTRY_START='<!--'
26 CAT_ENTRY_END='-->'
27 fi
28
29 dnl We need xsltproc to process the test
30 AC_CHECK_PROG(XSLTPROC,xsltproc,xsltproc,)
31 XSLTPROC_WORKS=no
32 if test -n "$XSLTPROC"; then
33 AC_MSG_CHECKING([whether xsltproc docbook processing works])
34
35 if test -n "$XML_CATALOG"; then
36 DB_FILE="http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl"
37 else
38 DB_FILE="$DOCBOOK_ROOT/xhtml/docbook.xsl"
39 fi
40 $XSLTPROC $XSLTPROC_FLAGS $DB_FILE >/dev/null 2>&1 << END
41 <?xml version="1.0" encoding='ISO-8859-1'?>
42 <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook $TYPE_UC V$DOCBOOK_VERSION//EN" "http://www.oasis-open.org/docbook/$TYPE_LC/$DOCBOOK_VERSION/docbookx.dtd">
43 <book id="test">
44 </book>
45 END
46 if test "$?" = 0; then
47 XSLTPROC_WORKS=yes
48 fi
49 AC_MSG_RESULT($XSLTPROC_WORKS)
50 fi
51
52 if test "x$XSLTPROC_WORKS" = "xyes"; then
53 dnl execute ACTION-IF-FOUND
54 ifelse([$1], , :, [$1])
55 else
56 dnl execute ACTION-IF-NOT-FOUND
57 ifelse([$2], , :, [$2])
58 fi
59
60 AC_SUBST(XML_CATALOG)
61 AC_SUBST(XSLTPROC_FLAGS)
62 AC_SUBST(DOCBOOK_ROOT)
63 AC_SUBST(CAT_ENTRY_START)
64 AC_SUBST(CAT_ENTRY_END)
65 ])
0 dnl as-gcc-inline-assembly.m4 0.1.0
1
2 dnl autostars m4 macro for detection of gcc inline assembly
3
4 dnl David Schleef <ds@schleef.org>
5
6 dnl $Id$
7
8 dnl AS_COMPILER_FLAG(ACTION-IF-ACCEPTED, [ACTION-IF-NOT-ACCEPTED])
9 dnl Tries to compile with the given CFLAGS.
10 dnl Runs ACTION-IF-ACCEPTED if the compiler can compile with the flags,
11 dnl and ACTION-IF-NOT-ACCEPTED otherwise.
12
13 AC_DEFUN([AS_GCC_INLINE_ASSEMBLY],
14 [
15 AC_MSG_CHECKING([if compiler supports gcc-style inline assembly])
16
17 AC_TRY_COMPILE([], [
18 #ifdef __GNUC_MINOR__
19 #if (__GNUC__ * 1000 + __GNUC_MINOR__) < 3004
20 #error GCC before 3.4 has critical bugs compiling inline assembly
21 #endif
22 #endif
23 __asm__ (""::) ], [flag_ok=yes], [flag_ok=no])
24
25 if test "X$flag_ok" = Xyes ; then
26 $1
27 true
28 else
29 $2
30 true
31 fi
32 AC_MSG_RESULT([$flag_ok])
33 ])
34
35
36 AC_DEFUN([AS_GCC_ASM_POWERPC_FPU],
37 [
38 AC_MSG_CHECKING([if compiler supports FPU instructions on PowerPC])
39
40 AC_TRY_COMPILE([], [__asm__ ("fadd 0,0,0"::) ], [flag_ok=yes], [flag_ok=no])
41
42 if test "X$flag_ok" = Xyes ; then
43 $1
44 true
45 else
46 $2
47 true
48 fi
49 AC_MSG_RESULT([$flag_ok])
50 ])
51
0 dnl as-libtool-tags.m4 0.1.4
1
2 dnl autostars m4 macro for selecting libtool "tags" (languages)
3
4 dnl Andy Wingo does not claim credit for this macro
5 dnl backported from libtool 1.6 by Paolo Bonzini
6 dnl see http://lists.gnu.org/archive/html/libtool/2003-12/msg00007.html
7
8 dnl $Id$
9
10 dnl AS_LIBTOOL_TAGS([tags...])
11
12 dnl example
13 dnl AS_LIBTOOL_TAGS([]) for only C (no fortran, etc)
14
15 dnl When AC_LIBTOOL_TAGS is used, I redefine _LT_AC_TAGCONFIG
16 dnl to be more similar to the libtool 1.6 implementation, which
17 dnl uses an m4 loop and m4 case instead of a shell loop. This
18 dnl way the CXX/GCJ/F77/RC tests are not always expanded.
19
20 dnl AS_LIBTOOL_TAGS
21 dnl ---------------
22 dnl tags to enable
23 AC_DEFUN([AS_LIBTOOL_TAGS],
24 [m4_define([_LT_TAGS],[$1])
25 m4_define([_LT_AC_TAGCONFIG], [
26 # redefined LT AC TAGCONFIG
27 if test -f "$ltmain"; then
28 if test ! -f "${ofile}"; then
29 AC_MSG_WARN([output file `$ofile' does not exist])
30 fi
31
32 if test -z "$LTCC"; then
33 eval "`$SHELL ${ofile} --config | grep '^LTCC='`"
34 if test -z "$LTCC"; then
35 AC_MSG_WARN([output file `$ofile' does not look like a libtool script])
36 else
37 AC_MSG_WARN([using `LTCC=$LTCC', extracted from `$ofile'])
38 fi
39 fi
40
41 AC_FOREACH([_LT_TAG], _LT_TAGS,
42 echo THOMAS: tag _LT_TAG
43 [m4_case(_LT_TAG,
44 [CXX], [
45 if test -n "$CXX" && test "X$CXX" != "Xno"; then
46 echo "THOMAS: YAY CXX"
47 AC_LIBTOOL_LANG_CXX_CONFIG
48 available_tags="$available_tags _LT_TAG"
49 fi],
50 [F77], [
51 if test -n "$F77" && test "X$F77" != "Xno"; then
52 AC_LIBTOOL_LANG_F77_CONFIG
53 available_tags="$available_tags _LT_TAG"
54 fi],
55 [GCJ], [
56 if test -n "$GCJ" && test "X$GCJ" != "Xno"; then
57 AC_LIBTOOL_LANG_GCJ_CONFIG
58 available_tags="$available_tags _LT_TAG"
59 fi],
60 [RC], [
61 if test -n "$RC" && test "X$RC" != "Xno"; then
62 AC_LIBTOOL_LANG_RC_CONFIG
63 available_tags="$available_tags _LT_TAG"
64 fi],
65 [m4_errprintn(m4_location[: error: invalid tag name: ]"_LT_TAG")
66 m4_exit(1)])
67 ])
68 echo THOMAS: available tags: $available_tags
69 fi
70 # Now substitute the updated list of available tags.
71 if eval "sed -e 's/^available_tags=.*\$/available_tags=\"$available_tags\"/' \"$ofile\" > \"${ofile}T\""; then
72 mv "${ofile}T" "$ofile"
73 chmod +x "$ofile"
74 AC_MSG_NOTICE([updated available libtool tags with $available_tags.])
75 else
76 rm -f "${ofile}T"
77 AC_MSG_ERROR([unable to update list of available tagged configurations.])
78
79 fi
80
81 ])dnl _LT_AC_TAG_CONFIG
82 ])
33
44 dnl Thomas Vander Stichele <thomas at apestaart dot org>
55
6 dnl $Id: as-libtool.m4,v 1.6 2004/06/01 10:04:44 thomasvs Exp $
6 dnl $Id: as-libtool.m4,v 1.10 2005/10/15 13:44:23 thomasvs Exp $
77
88 dnl AS_LIBTOOL(PREFIX, CURRENT, REVISION, AGE, [RELEASE])
99
0
1
2 # AC_PROG_OBJC([LIST-OF-COMPILERS])
3 #
4 AC_DEFUN([AS_PROG_OBJC],
5 [
6 AC_CHECK_TOOLS(OBJC,
7 [m4_default([$1], [objcc objc gcc cc CC])],
8 none)
9 AC_SUBST(OBJC)
10 OBJC_LDFLAGS="-lobjc"
11 AC_SUBST(OBJC_LDFLAGS)
12 if test "x$OBJC" != xnone ; then
13 _AM_DEPENDENCIES(OBJC)
14 AC_MSG_CHECKING([if Objective C compiler works])
15 cat >>conftest.m <<EOF
16 #include <objc/Object.h>
17 @interface Moo:Object
18 {
19 }
20 - moo;
21 int main();
22 @end
23
24 @implementation Moo
25 - moo
26 {
27 exit(0);
28 }
29
30 int main()
31 {
32 id moo;
33 moo = [[Moo new]];
34 [[moo moo]];
35 return 1;
36 }
37 @end
38 EOF
39 ${OBJC} conftest.m ${OBJC_LDFLAGS} >&5 2>&5
40 if test -f a.out -o -f a.exe ; then
41 result=yes
42 else
43 result=no
44 echo failed program is: >&5
45 cat conftest.m >&5
46 fi
47 rm -f conftest.m a.out a.exe
48 AC_MSG_RESULT([$result])
49 else
50 _AM_DEPENDENCIES(OBJC)
51 fi
52
53 ])
54
55
44
55 dnl Thomas Vander Stichele <thomas at apestaart dot org>
66
7 dnl $Id: as-scrub-include.m4,v 1.5 2004/06/12 08:19:09 thomasvs Exp $
7 dnl $Id: as-scrub-include.m4,v 1.7 2004/06/12 08:30:20 thomasvs Exp $
88
99 dnl This macro uses output of cpp -v and expects it to contain text that
1010 dnl looks a little bit like this:
33
44 dnl Thomas Vander Stichele <thomas at apestaart dot org>
55
6 dnl $Id: as-version.m4,v 1.4 2004/06/01 09:40:05 thomasvs Exp $
6 dnl $Id: as-version.m4,v 1.15 2006/04/01 09:40:24 thomasvs Exp $
77
88 dnl AS_VERSION
99
0 ##### http://autoconf-archive.cryp.to/ax_create_stdint_h.html
1 #
2 # SYNOPSIS
3 #
4 # AX_CREATE_STDINT_H [( HEADER-TO-GENERATE [, HEDERS-TO-CHECK])]
5 #
6 # DESCRIPTION
7 #
8 # the "ISO C9X: 7.18 Integer types <stdint.h>" section requires the
9 # existence of an include file <stdint.h> that defines a set of
10 # typedefs, especially uint8_t,int32_t,uintptr_t. Many older
11 # installations will not provide this file, but some will have the
12 # very same definitions in <inttypes.h>. In other enviroments we can
13 # use the inet-types in <sys/types.h> which would define the typedefs
14 # int8_t and u_int8_t respectivly.
15 #
16 # This macros will create a local "_stdint.h" or the headerfile given
17 # as an argument. In many cases that file will just "#include
18 # <stdint.h>" or "#include <inttypes.h>", while in other environments
19 # it will provide the set of basic 'stdint's definitions/typedefs:
20 #
21 # int8_t,uint8_t,int16_t,uint16_t,int32_t,uint32_t,intptr_t,uintptr_t
22 # int_least32_t.. int_fast32_t.. intmax_t
23 #
24 # which may or may not rely on the definitions of other files, or
25 # using the AC_CHECK_SIZEOF macro to determine the actual sizeof each
26 # type.
27 #
28 # if your header files require the stdint-types you will want to
29 # create an installable file mylib-int.h that all your other
30 # installable header may include. So if you have a library package
31 # named "mylib", just use
32 #
33 # AX_CREATE_STDINT_H(mylib-int.h)
34 #
35 # in configure.ac and go to install that very header file in
36 # Makefile.am along with the other headers (mylib.h) - and the
37 # mylib-specific headers can simply use "#include <mylib-int.h>" to
38 # obtain the stdint-types.
39 #
40 # Remember, if the system already had a valid <stdint.h>, the
41 # generated file will include it directly. No need for fuzzy
42 # HAVE_STDINT_H things... (oops, GCC 4.2.x has deliberatly disabled
43 # its stdint.h for non-c99 compilation and the c99-mode is not the
44 # default. Therefore this macro will not use the compiler's stdint.h
45 # - please complain to the GCC developers).
46 #
47 # LAST MODIFICATION
48 #
49 # 2007-06-27
50 #
51 # COPYLEFT
52 #
53 # Copyright (c) 2007 Guido U. Draheim <guidod@gmx.de>
54 #
55 # This program is free software; you can redistribute it and/or
56 # modify it under the terms of the GNU General Public License as
57 # published by the Free Software Foundation; either version 2 of the
58 # License, or (at your option) any later version.
59 #
60 # This program is distributed in the hope that it will be useful, but
61 # WITHOUT ANY WARRANTY; without even the implied warranty of
62 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
63 # General Public License for more details.
64 #
65 # You should have received a copy of the GNU General Public License
66 # along with this program; if not, write to the Free Software
67 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
68 # 02111-1307, USA.
69 #
70 # As a special exception, the respective Autoconf Macro's copyright
71 # owner gives unlimited permission to copy, distribute and modify the
72 # configure scripts that are the output of Autoconf when processing
73 # the Macro. You need not follow the terms of the GNU General Public
74 # License when using or distributing such scripts, even though
75 # portions of the text of the Macro appear in them. The GNU General
76 # Public License (GPL) does govern all other use of the material that
77 # constitutes the Autoconf Macro.
78 #
79 # This special exception to the GPL applies to versions of the
80 # Autoconf Macro released by the Autoconf Macro Archive. When you
81 # make and distribute a modified version of the Autoconf Macro, you
82 # may extend this special exception to the GPL to apply to your
83 # modified version as well.
84
85 AC_DEFUN([AX_CHECK_DATA_MODEL],[
86 AC_CHECK_SIZEOF(char)
87 AC_CHECK_SIZEOF(short)
88 AC_CHECK_SIZEOF(int)
89 AC_CHECK_SIZEOF(long)
90 AC_CHECK_SIZEOF(void*)
91 ac_cv_char_data_model=""
92 ac_cv_char_data_model="$ac_cv_char_data_model$ac_cv_sizeof_char"
93 ac_cv_char_data_model="$ac_cv_char_data_model$ac_cv_sizeof_short"
94 ac_cv_char_data_model="$ac_cv_char_data_model$ac_cv_sizeof_int"
95 ac_cv_long_data_model=""
96 ac_cv_long_data_model="$ac_cv_long_data_model$ac_cv_sizeof_int"
97 ac_cv_long_data_model="$ac_cv_long_data_model$ac_cv_sizeof_long"
98 ac_cv_long_data_model="$ac_cv_long_data_model$ac_cv_sizeof_voidp"
99 AC_MSG_CHECKING([data model])
100 case "$ac_cv_char_data_model/$ac_cv_long_data_model" in
101 122/242) ac_cv_data_model="IP16" ; n="standard 16bit machine" ;;
102 122/244) ac_cv_data_model="LP32" ; n="standard 32bit machine" ;;
103 122/*) ac_cv_data_model="i16" ; n="unusual int16 model" ;;
104 124/444) ac_cv_data_model="ILP32" ; n="standard 32bit unixish" ;;
105 124/488) ac_cv_data_model="LP64" ; n="standard 64bit unixish" ;;
106 124/448) ac_cv_data_model="LLP64" ; n="unusual 64bit unixish" ;;
107 124/*) ac_cv_data_model="i32" ; n="unusual int32 model" ;;
108 128/888) ac_cv_data_model="ILP64" ; n="unusual 64bit numeric" ;;
109 128/*) ac_cv_data_model="i64" ; n="unusual int64 model" ;;
110 222/*2) ac_cv_data_model="DSP16" ; n="strict 16bit dsptype" ;;
111 333/*3) ac_cv_data_model="DSP24" ; n="strict 24bit dsptype" ;;
112 444/*4) ac_cv_data_model="DSP32" ; n="strict 32bit dsptype" ;;
113 666/*6) ac_cv_data_model="DSP48" ; n="strict 48bit dsptype" ;;
114 888/*8) ac_cv_data_model="DSP64" ; n="strict 64bit dsptype" ;;
115 222/*|333/*|444/*|666/*|888/*) :
116 ac_cv_data_model="iDSP" ; n="unusual dsptype" ;;
117 *) ac_cv_data_model="none" ; n="very unusual model" ;;
118 esac
119 AC_MSG_RESULT([$ac_cv_data_model ($ac_cv_long_data_model, $n)])
120 ])
121
122 dnl AX_CHECK_HEADER_STDINT_X([HEADERLIST][,ACTION-IF])
123 AC_DEFUN([AX_CHECK_HEADER_STDINT_X],[
124 AC_CACHE_CHECK([for stdint uintptr_t], [ac_cv_header_stdint_x],[
125 ac_cv_header_stdint_x="" # the 1997 typedefs (inttypes.h)
126 AC_MSG_RESULT([(..)])
127 for i in m4_ifval([$1],[$1],[stdint.h inttypes.h sys/inttypes.h sys/types.h])
128 do
129 unset ac_cv_type_uintptr_t
130 unset ac_cv_type_uint64_t
131 AC_CHECK_TYPE(uintptr_t,[ac_cv_header_stdint_x=$i],continue,[#include <$i>])
132 AC_CHECK_TYPE(uint64_t,[and64="/uint64_t"],[and64=""],[#include<$i>])
133 m4_ifvaln([$2],[$2]) break
134 done
135 AC_MSG_CHECKING([for stdint uintptr_t])
136 ])
137 ])
138
139 AC_DEFUN([AX_CHECK_HEADER_STDINT_O],[
140 AC_CACHE_CHECK([for stdint uint32_t], [ac_cv_header_stdint_o],[
141 ac_cv_header_stdint_o="" # the 1995 typedefs (sys/inttypes.h)
142 AC_MSG_RESULT([(..)])
143 for i in m4_ifval([$1],[$1],[inttypes.h sys/inttypes.h sys/types.h stdint.h])
144 do
145 unset ac_cv_type_uint32_t
146 unset ac_cv_type_uint64_t
147 AC_CHECK_TYPE(uint32_t,[ac_cv_header_stdint_o=$i],continue,[#include <$i>])
148 AC_CHECK_TYPE(uint64_t,[and64="/uint64_t"],[and64=""],[#include<$i>])
149 m4_ifvaln([$2],[$2]) break
150 break;
151 done
152 AC_MSG_CHECKING([for stdint uint32_t])
153 ])
154 ])
155
156 AC_DEFUN([AX_CHECK_HEADER_STDINT_U],[
157 AC_CACHE_CHECK([for stdint u_int32_t], [ac_cv_header_stdint_u],[
158 ac_cv_header_stdint_u="" # the BSD typedefs (sys/types.h)
159 AC_MSG_RESULT([(..)])
160 for i in m4_ifval([$1],[$1],[sys/types.h inttypes.h sys/inttypes.h]) ; do
161 unset ac_cv_type_u_int32_t
162 unset ac_cv_type_u_int64_t
163 AC_CHECK_TYPE(u_int32_t,[ac_cv_header_stdint_u=$i],continue,[#include <$i>])
164 AC_CHECK_TYPE(u_int64_t,[and64="/u_int64_t"],[and64=""],[#include<$i>])
165 m4_ifvaln([$2],[$2]) break
166 break;
167 done
168 AC_MSG_CHECKING([for stdint u_int32_t])
169 ])
170 ])
171
172 AC_DEFUN([AX_CREATE_STDINT_H],
173 [# ------ AX CREATE STDINT H -------------------------------------
174 AC_MSG_CHECKING([for stdint types])
175 ac_stdint_h=`echo ifelse($1, , _stdint.h, $1)`
176 # try to shortcircuit - if the default include path of the compiler
177 # can find a "stdint.h" header then we assume that all compilers can.
178 AC_CACHE_VAL([ac_cv_header_stdint_t],[
179 old_CXXFLAGS="$CXXFLAGS" ; CXXFLAGS=""
180 old_CPPFLAGS="$CPPFLAGS" ; CPPFLAGS=""
181 old_CFLAGS="$CFLAGS" ; CFLAGS=""
182 AC_TRY_COMPILE([#include <stdint.h>],[int_least32_t v = 0;],
183 [ac_cv_stdint_result="(assuming C99 compatible system)"
184 ac_cv_header_stdint_t="stdint.h"; ],
185 [ac_cv_header_stdint_t=""])
186 if test "$GCC" = "yes" && test ".$ac_cv_header_stdint_t" = "."; then
187 CFLAGS="-std=c99"
188 AC_TRY_COMPILE([#include <stdint.h>],[int_least32_t v = 0;],
189 [AC_MSG_WARN(your GCC compiler has a defunct stdint.h for its default-mode)])
190 fi
191 CXXFLAGS="$old_CXXFLAGS"
192 CPPFLAGS="$old_CPPFLAGS"
193 CFLAGS="$old_CFLAGS" ])
194
195 v="... $ac_cv_header_stdint_h"
196 if test "$ac_stdint_h" = "stdint.h" ; then
197 AC_MSG_RESULT([(are you sure you want them in ./stdint.h?)])
198 elif test "$ac_stdint_h" = "inttypes.h" ; then
199 AC_MSG_RESULT([(are you sure you want them in ./inttypes.h?)])
200 elif test "_$ac_cv_header_stdint_t" = "_" ; then
201 AC_MSG_RESULT([(putting them into $ac_stdint_h)$v])
202 else
203 ac_cv_header_stdint="$ac_cv_header_stdint_t"
204 AC_MSG_RESULT([$ac_cv_header_stdint (shortcircuit)])
205 fi
206
207 if test "_$ac_cv_header_stdint_t" = "_" ; then # can not shortcircuit..
208
209 dnl .....intro message done, now do a few system checks.....
210 dnl btw, all old CHECK_TYPE macros do automatically "DEFINE" a type,
211 dnl therefore we use the autoconf implementation detail CHECK_TYPE_NEW
212 dnl instead that is triggered with 3 or more arguments (see types.m4)
213
214 inttype_headers=`echo $2 | sed -e 's/,/ /g'`
215
216 ac_cv_stdint_result="(no helpful system typedefs seen)"
217 AX_CHECK_HEADER_STDINT_X(dnl
218 stdint.h inttypes.h sys/inttypes.h $inttype_headers,
219 ac_cv_stdint_result="(seen uintptr_t$and64 in $i)")
220
221 if test "_$ac_cv_header_stdint_x" = "_" ; then
222 AX_CHECK_HEADER_STDINT_O(dnl,
223 inttypes.h sys/inttypes.h stdint.h $inttype_headers,
224 ac_cv_stdint_result="(seen uint32_t$and64 in $i)")
225 fi
226
227 if test "_$ac_cv_header_stdint_x" = "_" ; then
228 if test "_$ac_cv_header_stdint_o" = "_" ; then
229 AX_CHECK_HEADER_STDINT_U(dnl,
230 sys/types.h inttypes.h sys/inttypes.h $inttype_headers,
231 ac_cv_stdint_result="(seen u_int32_t$and64 in $i)")
232 fi fi
233
234 dnl if there was no good C99 header file, do some typedef checks...
235 if test "_$ac_cv_header_stdint_x" = "_" ; then
236 AC_MSG_CHECKING([for stdint datatype model])
237 AC_MSG_RESULT([(..)])
238 AX_CHECK_DATA_MODEL
239 fi
240
241 if test "_$ac_cv_header_stdint_x" != "_" ; then
242 ac_cv_header_stdint="$ac_cv_header_stdint_x"
243 elif test "_$ac_cv_header_stdint_o" != "_" ; then
244 ac_cv_header_stdint="$ac_cv_header_stdint_o"
245 elif test "_$ac_cv_header_stdint_u" != "_" ; then
246 ac_cv_header_stdint="$ac_cv_header_stdint_u"
247 else
248 ac_cv_header_stdint="stddef.h"
249 fi
250
251 AC_MSG_CHECKING([for extra inttypes in chosen header])
252 AC_MSG_RESULT([($ac_cv_header_stdint)])
253 dnl see if int_least and int_fast types are present in _this_ header.
254 unset ac_cv_type_int_least32_t
255 unset ac_cv_type_int_fast32_t
256 AC_CHECK_TYPE(int_least32_t,,,[#include <$ac_cv_header_stdint>])
257 AC_CHECK_TYPE(int_fast32_t,,,[#include<$ac_cv_header_stdint>])
258 AC_CHECK_TYPE(intmax_t,,,[#include <$ac_cv_header_stdint>])
259
260 fi # shortcircut to system "stdint.h"
261 # ------------------ PREPARE VARIABLES ------------------------------
262 if test "$GCC" = "yes" ; then
263 ac_cv_stdint_message="using gnu compiler "`$CC --version | head -1`
264 else
265 ac_cv_stdint_message="using $CC"
266 fi
267
268 AC_MSG_RESULT([make use of $ac_cv_header_stdint in $ac_stdint_h dnl
269 $ac_cv_stdint_result])
270
271 dnl -----------------------------------------------------------------
272 # ----------------- DONE inttypes.h checks START header -------------
273 AC_CONFIG_COMMANDS([$ac_stdint_h],[
274 AC_MSG_NOTICE(creating $ac_stdint_h : $_ac_stdint_h)
275 ac_stdint=$tmp/_stdint.h
276
277 echo "#ifndef" $_ac_stdint_h >$ac_stdint
278 echo "#define" $_ac_stdint_h "1" >>$ac_stdint
279 echo "#ifndef" _GENERATED_STDINT_H >>$ac_stdint
280 echo "#define" _GENERATED_STDINT_H '"'$PACKAGE $VERSION'"' >>$ac_stdint
281 echo "/* generated $ac_cv_stdint_message */" >>$ac_stdint
282 if test "_$ac_cv_header_stdint_t" != "_" ; then
283 echo "#define _STDINT_HAVE_STDINT_H" "1" >>$ac_stdint
284 echo "#include <stdint.h>" >>$ac_stdint
285 echo "#endif" >>$ac_stdint
286 echo "#endif" >>$ac_stdint
287 else
288
289 cat >>$ac_stdint <<STDINT_EOF
290
291 /* ................... shortcircuit part ........................... */
292
293 #if defined HAVE_STDINT_H || defined _STDINT_HAVE_STDINT_H
294 #include <stdint.h>
295 #else
296 #include <stddef.h>
297
298 /* .................... configured part ............................ */
299
300 STDINT_EOF
301
302 echo "/* whether we have a C99 compatible stdint header file */" >>$ac_stdint
303 if test "_$ac_cv_header_stdint_x" != "_" ; then
304 ac_header="$ac_cv_header_stdint_x"
305 echo "#define _STDINT_HEADER_INTPTR" '"'"$ac_header"'"' >>$ac_stdint
306 else
307 echo "/* #undef _STDINT_HEADER_INTPTR */" >>$ac_stdint
308 fi
309
310 echo "/* whether we have a C96 compatible inttypes header file */" >>$ac_stdint
311 if test "_$ac_cv_header_stdint_o" != "_" ; then
312 ac_header="$ac_cv_header_stdint_o"
313 echo "#define _STDINT_HEADER_UINT32" '"'"$ac_header"'"' >>$ac_stdint
314 else
315 echo "/* #undef _STDINT_HEADER_UINT32 */" >>$ac_stdint
316 fi
317
318 echo "/* whether we have a BSD compatible inet types header */" >>$ac_stdint
319 if test "_$ac_cv_header_stdint_u" != "_" ; then
320 ac_header="$ac_cv_header_stdint_u"
321 echo "#define _STDINT_HEADER_U_INT32" '"'"$ac_header"'"' >>$ac_stdint
322 else
323 echo "/* #undef _STDINT_HEADER_U_INT32 */" >>$ac_stdint
324 fi
325
326 echo "" >>$ac_stdint
327
328 if test "_$ac_header" != "_" ; then if test "$ac_header" != "stddef.h" ; then
329 echo "#include <$ac_header>" >>$ac_stdint
330 echo "" >>$ac_stdint
331 fi fi
332
333 echo "/* which 64bit typedef has been found */" >>$ac_stdint
334 if test "$ac_cv_type_uint64_t" = "yes" ; then
335 echo "#define _STDINT_HAVE_UINT64_T" "1" >>$ac_stdint
336 else
337 echo "/* #undef _STDINT_HAVE_UINT64_T */" >>$ac_stdint
338 fi
339 if test "$ac_cv_type_u_int64_t" = "yes" ; then
340 echo "#define _STDINT_HAVE_U_INT64_T" "1" >>$ac_stdint
341 else
342 echo "/* #undef _STDINT_HAVE_U_INT64_T */" >>$ac_stdint
343 fi
344 echo "" >>$ac_stdint
345
346 echo "/* which type model has been detected */" >>$ac_stdint
347 if test "_$ac_cv_char_data_model" != "_" ; then
348 echo "#define _STDINT_CHAR_MODEL" "$ac_cv_char_data_model" >>$ac_stdint
349 echo "#define _STDINT_LONG_MODEL" "$ac_cv_long_data_model" >>$ac_stdint
350 else
351 echo "/* #undef _STDINT_CHAR_MODEL // skipped */" >>$ac_stdint
352 echo "/* #undef _STDINT_LONG_MODEL // skipped */" >>$ac_stdint
353 fi
354 echo "" >>$ac_stdint
355
356 echo "/* whether int_least types were detected */" >>$ac_stdint
357 if test "$ac_cv_type_int_least32_t" = "yes"; then
358 echo "#define _STDINT_HAVE_INT_LEAST32_T" "1" >>$ac_stdint
359 else
360 echo "/* #undef _STDINT_HAVE_INT_LEAST32_T */" >>$ac_stdint
361 fi
362 echo "/* whether int_fast types were detected */" >>$ac_stdint
363 if test "$ac_cv_type_int_fast32_t" = "yes"; then
364 echo "#define _STDINT_HAVE_INT_FAST32_T" "1" >>$ac_stdint
365 else
366 echo "/* #undef _STDINT_HAVE_INT_FAST32_T */" >>$ac_stdint
367 fi
368 echo "/* whether intmax_t type was detected */" >>$ac_stdint
369 if test "$ac_cv_type_intmax_t" = "yes"; then
370 echo "#define _STDINT_HAVE_INTMAX_T" "1" >>$ac_stdint
371 else
372 echo "/* #undef _STDINT_HAVE_INTMAX_T */" >>$ac_stdint
373 fi
374 echo "" >>$ac_stdint
375
376 cat >>$ac_stdint <<STDINT_EOF
377 /* .................... detections part ............................ */
378
379 /* whether we need to define bitspecific types from compiler base types */
380 #ifndef _STDINT_HEADER_INTPTR
381 #ifndef _STDINT_HEADER_UINT32
382 #ifndef _STDINT_HEADER_U_INT32
383 #define _STDINT_NEED_INT_MODEL_T
384 #else
385 #define _STDINT_HAVE_U_INT_TYPES
386 #endif
387 #endif
388 #endif
389
390 #ifdef _STDINT_HAVE_U_INT_TYPES
391 #undef _STDINT_NEED_INT_MODEL_T
392 #endif
393
394 #ifdef _STDINT_CHAR_MODEL
395 #if _STDINT_CHAR_MODEL+0 == 122 || _STDINT_CHAR_MODEL+0 == 124
396 #ifndef _STDINT_BYTE_MODEL
397 #define _STDINT_BYTE_MODEL 12
398 #endif
399 #endif
400 #endif
401
402 #ifndef _STDINT_HAVE_INT_LEAST32_T
403 #define _STDINT_NEED_INT_LEAST_T
404 #endif
405
406 #ifndef _STDINT_HAVE_INT_FAST32_T
407 #define _STDINT_NEED_INT_FAST_T
408 #endif
409
410 #ifndef _STDINT_HEADER_INTPTR
411 #define _STDINT_NEED_INTPTR_T
412 #ifndef _STDINT_HAVE_INTMAX_T
413 #define _STDINT_NEED_INTMAX_T
414 #endif
415 #endif
416
417
418 /* .................... definition part ............................ */
419
420 /* some system headers have good uint64_t */
421 #ifndef _HAVE_UINT64_T
422 #if defined _STDINT_HAVE_UINT64_T || defined HAVE_UINT64_T
423 #define _HAVE_UINT64_T
424 #elif defined _STDINT_HAVE_U_INT64_T || defined HAVE_U_INT64_T
425 #define _HAVE_UINT64_T
426 typedef u_int64_t uint64_t;
427 #endif
428 #endif
429
430 #ifndef _HAVE_UINT64_T
431 /* .. here are some common heuristics using compiler runtime specifics */
432 #if defined __STDC_VERSION__ && defined __STDC_VERSION__ >= 199901L
433 #define _HAVE_UINT64_T
434 #define _HAVE_LONGLONG_UINT64_T
435 typedef long long int64_t;
436 typedef unsigned long long uint64_t;
437
438 #elif !defined __STRICT_ANSI__
439 #if defined _MSC_VER || defined __WATCOMC__ || defined __BORLANDC__
440 #define _HAVE_UINT64_T
441 typedef __int64 int64_t;
442 typedef unsigned __int64 uint64_t;
443
444 #elif defined __GNUC__ || defined __MWERKS__ || defined __ELF__
445 /* note: all ELF-systems seem to have loff-support which needs 64-bit */
446 #if !defined _NO_LONGLONG
447 #define _HAVE_UINT64_T
448 #define _HAVE_LONGLONG_UINT64_T
449 typedef long long int64_t;
450 typedef unsigned long long uint64_t;
451 #endif
452
453 #elif defined __alpha || (defined __mips && defined _ABIN32)
454 #if !defined _NO_LONGLONG
455 typedef long int64_t;
456 typedef unsigned long uint64_t;
457 #endif
458 /* compiler/cpu type to define int64_t */
459 #endif
460 #endif
461 #endif
462
463 #if defined _STDINT_HAVE_U_INT_TYPES
464 /* int8_t int16_t int32_t defined by inet code, redeclare the u_intXX types */
465 typedef u_int8_t uint8_t;
466 typedef u_int16_t uint16_t;
467 typedef u_int32_t uint32_t;
468
469 /* glibc compatibility */
470 #ifndef __int8_t_defined
471 #define __int8_t_defined
472 #endif
473 #endif
474
475 #ifdef _STDINT_NEED_INT_MODEL_T
476 /* we must guess all the basic types. Apart from byte-adressable system, */
477 /* there a few 32-bit-only dsp-systems that we guard with BYTE_MODEL 8-} */
478 /* (btw, those nibble-addressable systems are way off, or so we assume) */
479
480 dnl /* have a look at "64bit and data size neutrality" at */
481 dnl /* http://unix.org/version2/whatsnew/login_64bit.html */
482 dnl /* (the shorthand "ILP" types always have a "P" part) */
483
484 #if defined _STDINT_BYTE_MODEL
485 #if _STDINT_LONG_MODEL+0 == 242
486 /* 2:4:2 = IP16 = a normal 16-bit system */
487 typedef unsigned char uint8_t;
488 typedef unsigned short uint16_t;
489 typedef unsigned long uint32_t;
490 #ifndef __int8_t_defined
491 #define __int8_t_defined
492 typedef char int8_t;
493 typedef short int16_t;
494 typedef long int32_t;
495 #endif
496 #elif _STDINT_LONG_MODEL+0 == 244 || _STDINT_LONG_MODEL == 444
497 /* 2:4:4 = LP32 = a 32-bit system derived from a 16-bit */
498 /* 4:4:4 = ILP32 = a normal 32-bit system */
499 typedef unsigned char uint8_t;
500 typedef unsigned short uint16_t;
501 typedef unsigned int uint32_t;
502 #ifndef __int8_t_defined
503 #define __int8_t_defined
504 typedef char int8_t;
505 typedef short int16_t;
506 typedef int int32_t;
507 #endif
508 #elif _STDINT_LONG_MODEL+0 == 484 || _STDINT_LONG_MODEL+0 == 488
509 /* 4:8:4 = IP32 = a 32-bit system prepared for 64-bit */
510 /* 4:8:8 = LP64 = a normal 64-bit system */
511 typedef unsigned char uint8_t;
512 typedef unsigned short uint16_t;
513 typedef unsigned int uint32_t;
514 #ifndef __int8_t_defined
515 #define __int8_t_defined
516 typedef char int8_t;
517 typedef short int16_t;
518 typedef int int32_t;
519 #endif
520 /* this system has a "long" of 64bit */
521 #ifndef _HAVE_UINT64_T
522 #define _HAVE_UINT64_T
523 typedef unsigned long uint64_t;
524 typedef long int64_t;
525 #endif
526 #elif _STDINT_LONG_MODEL+0 == 448
527 /* LLP64 a 64-bit system derived from a 32-bit system */
528 typedef unsigned char uint8_t;
529 typedef unsigned short uint16_t;
530 typedef unsigned int uint32_t;
531 #ifndef __int8_t_defined
532 #define __int8_t_defined
533 typedef char int8_t;
534 typedef short int16_t;
535 typedef int int32_t;
536 #endif
537 /* assuming the system has a "long long" */
538 #ifndef _HAVE_UINT64_T
539 #define _HAVE_UINT64_T
540 #define _HAVE_LONGLONG_UINT64_T
541 typedef unsigned long long uint64_t;
542 typedef long long int64_t;
543 #endif
544 #else
545 #define _STDINT_NO_INT32_T
546 #endif
547 #else
548 #define _STDINT_NO_INT8_T
549 #define _STDINT_NO_INT32_T
550 #endif
551 #endif
552
553 /*
554 * quote from SunOS-5.8 sys/inttypes.h:
555 * Use at your own risk. As of February 1996, the committee is squarely
556 * behind the fixed sized types; the "least" and "fast" types are still being
557 * discussed. The probability that the "fast" types may be removed before
558 * the standard is finalized is high enough that they are not currently
559 * implemented.
560 */
561
562 #if defined _STDINT_NEED_INT_LEAST_T
563 typedef int8_t int_least8_t;
564 typedef int16_t int_least16_t;
565 typedef int32_t int_least32_t;
566 #ifdef _HAVE_UINT64_T
567 typedef int64_t int_least64_t;
568 #endif
569
570 typedef uint8_t uint_least8_t;
571 typedef uint16_t uint_least16_t;
572 typedef uint32_t uint_least32_t;
573 #ifdef _HAVE_UINT64_T
574 typedef uint64_t uint_least64_t;
575 #endif
576 /* least types */
577 #endif
578
579 #if defined _STDINT_NEED_INT_FAST_T
580 typedef int8_t int_fast8_t;
581 typedef int int_fast16_t;
582 typedef int32_t int_fast32_t;
583 #ifdef _HAVE_UINT64_T
584 typedef int64_t int_fast64_t;
585 #endif
586
587 typedef uint8_t uint_fast8_t;
588 typedef unsigned uint_fast16_t;
589 typedef uint32_t uint_fast32_t;
590 #ifdef _HAVE_UINT64_T
591 typedef uint64_t uint_fast64_t;
592 #endif
593 /* fast types */
594 #endif
595
596 #ifdef _STDINT_NEED_INTMAX_T
597 #ifdef _HAVE_UINT64_T
598 typedef int64_t intmax_t;
599 typedef uint64_t uintmax_t;
600 #else
601 typedef long intmax_t;
602 typedef unsigned long uintmax_t;
603 #endif
604 #endif
605
606 #ifdef _STDINT_NEED_INTPTR_T
607 #ifndef __intptr_t_defined
608 #define __intptr_t_defined
609 /* we encourage using "long" to store pointer values, never use "int" ! */
610 #if _STDINT_LONG_MODEL+0 == 242 || _STDINT_LONG_MODEL+0 == 484
611 typedef unsigned int uintptr_t;
612 typedef int intptr_t;
613 #elif _STDINT_LONG_MODEL+0 == 244 || _STDINT_LONG_MODEL+0 == 444
614 typedef unsigned long uintptr_t;
615 typedef long intptr_t;
616 #elif _STDINT_LONG_MODEL+0 == 448 && defined _HAVE_UINT64_T
617 typedef uint64_t uintptr_t;
618 typedef int64_t intptr_t;
619 #else /* matches typical system types ILP32 and LP64 - but not IP16 or LLP64 */
620 typedef unsigned long uintptr_t;
621 typedef long intptr_t;
622 #endif
623 #endif
624 #endif
625
626 /* The ISO C99 standard specifies that in C++ implementations these
627 should only be defined if explicitly requested. */
628 #if !defined __cplusplus || defined __STDC_CONSTANT_MACROS
629 #ifndef UINT32_C
630
631 /* Signed. */
632 # define INT8_C(c) c
633 # define INT16_C(c) c
634 # define INT32_C(c) c
635 # ifdef _HAVE_LONGLONG_UINT64_T
636 # define INT64_C(c) c ## L
637 # else
638 # define INT64_C(c) c ## LL
639 # endif
640
641 /* Unsigned. */
642 # define UINT8_C(c) c ## U
643 # define UINT16_C(c) c ## U
644 # define UINT32_C(c) c ## U
645 # ifdef _HAVE_LONGLONG_UINT64_T
646 # define UINT64_C(c) c ## UL
647 # else
648 # define UINT64_C(c) c ## ULL
649 # endif
650
651 /* Maximal type. */
652 # ifdef _HAVE_LONGLONG_UINT64_T
653 # define INTMAX_C(c) c ## L
654 # define UINTMAX_C(c) c ## UL
655 # else
656 # define INTMAX_C(c) c ## LL
657 # define UINTMAX_C(c) c ## ULL
658 # endif
659
660 /* literalnumbers */
661 #endif
662 #endif
663
664 /* These limits are merily those of a two complement byte-oriented system */
665
666 /* Minimum of signed integral types. */
667 # define INT8_MIN (-128)
668 # define INT16_MIN (-32767-1)
669 # define INT32_MIN (-2147483647-1)
670 # define INT64_MIN (-__INT64_C(9223372036854775807)-1)
671 /* Maximum of signed integral types. */
672 # define INT8_MAX (127)
673 # define INT16_MAX (32767)
674 # define INT32_MAX (2147483647)
675 # define INT64_MAX (__INT64_C(9223372036854775807))
676
677 /* Maximum of unsigned integral types. */
678 # define UINT8_MAX (255)
679 # define UINT16_MAX (65535)
680 # define UINT32_MAX (4294967295U)
681 # define UINT64_MAX (__UINT64_C(18446744073709551615))
682
683 /* Minimum of signed integral types having a minimum size. */
684 # define INT_LEAST8_MIN INT8_MIN
685 # define INT_LEAST16_MIN INT16_MIN
686 # define INT_LEAST32_MIN INT32_MIN
687 # define INT_LEAST64_MIN INT64_MIN
688 /* Maximum of signed integral types having a minimum size. */
689 # define INT_LEAST8_MAX INT8_MAX
690 # define INT_LEAST16_MAX INT16_MAX
691 # define INT_LEAST32_MAX INT32_MAX
692 # define INT_LEAST64_MAX INT64_MAX
693
694 /* Maximum of unsigned integral types having a minimum size. */
695 # define UINT_LEAST8_MAX UINT8_MAX
696 # define UINT_LEAST16_MAX UINT16_MAX
697 # define UINT_LEAST32_MAX UINT32_MAX
698 # define UINT_LEAST64_MAX UINT64_MAX
699
700 /* shortcircuit*/
701 #endif
702 /* once */
703 #endif
704 #endif
705 STDINT_EOF
706 fi
707 if cmp -s $ac_stdint_h $ac_stdint 2>/dev/null; then
708 AC_MSG_NOTICE([$ac_stdint_h is unchanged])
709 else
710 ac_dir=`AS_DIRNAME(["$ac_stdint_h"])`
711 AS_MKDIR_P(["$ac_dir"])
712 rm -f $ac_stdint_h
713 mv $ac_stdint $ac_stdint_h
714 fi
715 ],[# variables for create stdint.h replacement
716 PACKAGE="$PACKAGE"
717 VERSION="$VERSION"
718 ac_stdint_h="$ac_stdint_h"
719 _ac_stdint_h=AS_TR_CPP(_$PACKAGE-$ac_stdint_h)
720 ac_cv_stdint_message="$ac_cv_stdint_message"
721 ac_cv_header_stdint_t="$ac_cv_header_stdint_t"
722 ac_cv_header_stdint_x="$ac_cv_header_stdint_x"
723 ac_cv_header_stdint_o="$ac_cv_header_stdint_o"
724 ac_cv_header_stdint_u="$ac_cv_header_stdint_u"
725 ac_cv_type_uint64_t="$ac_cv_type_uint64_t"
726 ac_cv_type_u_int64_t="$ac_cv_type_u_int64_t"
727 ac_cv_char_data_model="$ac_cv_char_data_model"
728 ac_cv_long_data_model="$ac_cv_long_data_model"
729 ac_cv_type_int_least32_t="$ac_cv_type_int_least32_t"
730 ac_cv_type_int_fast32_t="$ac_cv_type_int_fast32_t"
731 ac_cv_type_intmax_t="$ac_cv_type_intmax_t"
732 ])
733 ])
0 dnl _AM_TRY_CHECK(MINIMUM-VERSION, EXTRA-CFLAGS, EXTRA-LIBS, CHECK-LIB-NAME
1 dnl [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]])
2 dnl Test for check, and define CHECK_CFLAGS and CHECK_LIBS
3 dnl Done this way because of the brokenness that is
4 dnl https://launchpad.net/distros/ubuntu/+source/check/+bug/5840
5 dnl
6
7 AC_DEFUN([_AM_TRY_CHECK],
8 [
9 min_check_version=$1
10 extra_cflags=$2
11 extra_libs=$3
12 check_lib_name=$4
13
14 CHECK_CFLAGS="$extra_cflags"
15 CHECK_LIBS="$extra_libs -l$check_lib_name"
16
17 ac_save_CFLAGS="$CFLAGS"
18 ac_save_LIBS="$LIBS"
19
20 CFLAGS="$CFLAGS $CHECK_CFLAGS"
21 LIBS="$CHECK_LIBS $LIBS"
22
23 AC_MSG_CHECKING(for check named $check_lib_name - version >= $min_check_version)
24
25 rm -f conf.check-test
26 dnl unset no_check, since in our second run it would have been set to yes
27 dnl before
28 no_check=
29 AC_TRY_RUN([
30 #include <stdio.h>
31 #include <stdlib.h>
32
33 #include <check.h>
34
35 int main ()
36 {
37 int major, minor, micro;
38 char *tmp_version;
39
40 system ("touch conf.check-test");
41
42 /* HP/UX 9 (%@#!) writes to sscanf strings */
43 tmp_version = strdup("$min_check_version");
44 if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, &micro) != 3) {
45 printf("%s, bad version string\n", "$min_check_version");
46 return 1;
47 }
48
49 if ((CHECK_MAJOR_VERSION != check_major_version) ||
50 (CHECK_MINOR_VERSION != check_minor_version) ||
51 (CHECK_MICRO_VERSION != check_micro_version))
52 {
53 printf("\n*** The check header file (version %d.%d.%d) does not match\n",
54 CHECK_MAJOR_VERSION, CHECK_MINOR_VERSION, CHECK_MICRO_VERSION);
55 printf("*** the check library (version %d.%d.%d).\n",
56 check_major_version, check_minor_version, check_micro_version);
57 return 1;
58 }
59
60 if ((check_major_version > major) ||
61 ((check_major_version == major) && (check_minor_version > minor)) ||
62 ((check_major_version == major) && (check_minor_version == minor) && (check_micro_version >= micro)))
63 {
64 return 0;
65 }
66 else
67 {
68 printf("\n*** An old version of check (%d.%d.%d) was found.\n",
69 check_major_version, check_minor_version, check_micro_version);
70 printf("*** You need a version of check being at least %d.%d.%d.\n", major, minor, micro);
71 printf("***\n");
72 printf("*** If you have already installed a sufficiently new version, this error\n");
73 printf("*** probably means that the wrong copy of the check library and header\n");
74 printf("*** file is being found. Rerun configure with the --with-check=PATH option\n");
75 printf("*** to specify the prefix where the correct version was installed.\n");
76 }
77
78 return 1;
79 }
80 ],, no_check=yes, [echo $ac_n "cross compiling; assumed OK... $ac_c"])
81
82 CFLAGS="$ac_save_CFLAGS"
83 LIBS="$ac_save_LIBS"
84
85 if test "x$no_check" = x ; then
86 AC_MSG_RESULT(yes)
87 ifelse([$5], , :, [$5])
88 else
89 AC_MSG_RESULT(no)
90 if test -f conf.check-test ; then
91 :
92 else
93 echo "*** Could not run check test program, checking why..."
94 CFLAGS="$CFLAGS $CHECK_CFLAGS"
95 LIBS="$CHECK_LIBS $LIBS"
96 AC_TRY_LINK([
97 #include <stdio.h>
98 #include <stdlib.h>
99
100 #include <check.h>
101 ], , [ echo "*** The test program compiled, but did not run. This usually means"
102 echo "*** that the run-time linker is not finding check. You'll need to set your"
103 echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point"
104 echo "*** to the installed location Also, make sure you have run ldconfig if that"
105 echo "*** is required on your system"
106 echo "***"
107 echo "*** If you have an old version installed, it is best to remove it, although"
108 echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH"],
109 [ echo "*** The test program failed to compile or link. See the file config.log for"
110 echo "*** the exact error that occured." ])
111
112 CFLAGS="$ac_save_CFLAGS"
113 LIBS="$ac_save_LIBS"
114 fi
115
116 CHECK_CFLAGS=""
117 CHECK_LIBS=""
118
119 rm -f conf.check-test
120 ifelse([$6], , AC_MSG_ERROR([check not found]), [$6])
121 fi
122 ])
123
124
125 dnl AM_PATH_CHECK([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
126 dnl Test for check, and define CHECK_CFLAGS and CHECK_LIBS
127 dnl
128
129 AC_DEFUN([AM_PATH_CHECK],
130 [
131 AC_ARG_WITH(check,
132 [ --with-check=PATH prefix where check is installed [default=auto]])
133
134 AC_ARG_WITH(checklibname,
135 AC_HELP_STRING([--with-check-lib-name=NAME],
136 [name of the PIC check library (default=check)]))
137
138 min_check_version=ifelse([$1], ,0.8.2,$1)
139
140 if test x$with_check = xno; then
141 AC_MSG_RESULT(disabled)
142 ifelse([$3], , AC_MSG_ERROR([disabling check is not supported]), [$3])
143 else
144 if test "x$with_check" != x; then
145 CHECK_EXTRA_CFLAGS="-I$with_check/include"
146 CHECK_EXTRA_LIBS="-L$with_check/lib"
147 else
148 CHECK_EXTRA_CFLAGS=""
149 CHECK_EXTRA_LIBS=""
150 fi
151
152 if test x$with_checklibname = x; then
153 _AM_TRY_CHECK($min_check_version, $CHECK_EXTRA_CFLAGS, $CHECK_EXTRA_LIBS,
154 check_pic, [have_check=true], [have_check=false])
155 if test x$have_check = xtrue; then
156 ifelse([$2], , :, [$2])
157 else
158 _AM_TRY_CHECK($min_check_version, $CHECK_EXTRA_CFLAGS, $CHECK_EXTRA_LIBS,
159 check, [have_check=true], [have_check=false])
160 if test x$have_check = xtrue; then
161 ifelse([$2], , :, [$2])
162 else
163 ifelse([$3], , AC_MSG_ERROR([check not found]), [$3])
164 fi
165 fi
166 else
167 _AM_TRY_CHECK($min_check_version, $CHECK_EXTRA_CFLAGS, $CHECK_EXTRA_LIBS,
168 $with_checklibname, [have_check=true], [have_check=false])
169 if test x$have_check = xtrue; then
170 ifelse([$2], , :, [$2])
171 else
172 ifelse([$3], , AC_MSG_ERROR([check not found]), [$3])
173 fi
174 fi
175
176 AC_SUBST(CHECK_CFLAGS)
177 AC_SUBST(CHECK_LIBS)
178 rm -f conf.check-test
179 fi
180 ])
+0
-23
common/m4/codeset.m4 less more
0 # codeset.m4 serial AM1 (gettext-0.10.40)
1 dnl Copyright (C) 2000-2002 Free Software Foundation, Inc.
2 dnl This file is free software, distributed under the terms of the GNU
3 dnl General Public License. As a special exception to the GNU General
4 dnl Public License, this file may be distributed as part of a program
5 dnl that contains a configuration script generated by Autoconf, under
6 dnl the same distribution terms as the rest of that program.
7
8 dnl From Bruno Haible.
9
10 AC_DEFUN([AM_LANGINFO_CODESET],
11 [
12 AC_CACHE_CHECK([for nl_langinfo and CODESET], am_cv_langinfo_codeset,
13 [AC_TRY_LINK([#include <langinfo.h>],
14 [char* cs = nl_langinfo(CODESET);],
15 am_cv_langinfo_codeset=yes,
16 am_cv_langinfo_codeset=no)
17 ])
18 if test $am_cv_langinfo_codeset = yes; then
19 AC_DEFINE(HAVE_LANGINFO_CODESET, 1,
20 [Define if you have <langinfo.h> and nl_langinfo(CODESET).])
21 fi
22 ])
+0
-587
common/m4/gettext.m4 less more
0 # gettext.m4 serial 17 (gettext-0.11.5)
1 dnl Copyright (C) 1995-2002 Free Software Foundation, Inc.
2 dnl This file is free software, distributed under the terms of the GNU
3 dnl General Public License. As a special exception to the GNU General
4 dnl Public License, this file may be distributed as part of a program
5 dnl that contains a configuration script generated by Autoconf, under
6 dnl the same distribution terms as the rest of that program.
7 dnl
8 dnl This file can can be used in projects which are not available under
9 dnl the GNU General Public License or the GNU Library General Public
10 dnl License but which still want to provide support for the GNU gettext
11 dnl functionality.
12 dnl Please note that the actual code of the GNU gettext library is covered
13 dnl by the GNU Library General Public License, and the rest of the GNU
14 dnl gettext package package is covered by the GNU General Public License.
15 dnl They are *not* in the public domain.
16
17 dnl Authors:
18 dnl Ulrich Drepper <drepper@cygnus.com>, 1995-2000.
19 dnl Bruno Haible <haible@clisp.cons.org>, 2000-2002.
20
21 dnl Macro to add for using GNU gettext.
22
23 dnl Usage: AM_GNU_GETTEXT([INTLSYMBOL], [NEEDSYMBOL], [INTLDIR]).
24 dnl INTLSYMBOL can be one of 'external', 'no-libtool', 'use-libtool'. The
25 dnl default (if it is not specified or empty) is 'no-libtool'.
26 dnl INTLSYMBOL should be 'external' for packages with no intl directory,
27 dnl and 'no-libtool' or 'use-libtool' for packages with an intl directory.
28 dnl If INTLSYMBOL is 'use-libtool', then a libtool library
29 dnl $(top_builddir)/intl/libintl.la will be created (shared and/or static,
30 dnl depending on --{enable,disable}-{shared,static} and on the presence of
31 dnl AM-DISABLE-SHARED). If INTLSYMBOL is 'no-libtool', a static library
32 dnl $(top_builddir)/intl/libintl.a will be created.
33 dnl If NEEDSYMBOL is specified and is 'need-ngettext', then GNU gettext
34 dnl implementations (in libc or libintl) without the ngettext() function
35 dnl will be ignored. If NEEDSYMBOL is specified and is
36 dnl 'need-formatstring-macros', then GNU gettext implementations that don't
37 dnl support the ISO C 99 <inttypes.h> formatstring macros will be ignored.
38 dnl INTLDIR is used to find the intl libraries. If empty,
39 dnl the value `$(top_builddir)/intl/' is used.
40 dnl
41 dnl The result of the configuration is one of three cases:
42 dnl 1) GNU gettext, as included in the intl subdirectory, will be compiled
43 dnl and used.
44 dnl Catalog format: GNU --> install in $(datadir)
45 dnl Catalog extension: .mo after installation, .gmo in source tree
46 dnl 2) GNU gettext has been found in the system's C library.
47 dnl Catalog format: GNU --> install in $(datadir)
48 dnl Catalog extension: .mo after installation, .gmo in source tree
49 dnl 3) No internationalization, always use English msgid.
50 dnl Catalog format: none
51 dnl Catalog extension: none
52 dnl If INTLSYMBOL is 'external', only cases 2 and 3 can occur.
53 dnl The use of .gmo is historical (it was needed to avoid overwriting the
54 dnl GNU format catalogs when building on a platform with an X/Open gettext),
55 dnl but we keep it in order not to force irrelevant filename changes on the
56 dnl maintainers.
57 dnl
58 AC_DEFUN([AM_GNU_GETTEXT],
59 [
60 dnl Argument checking.
61 ifelse([$1], [], , [ifelse([$1], [external], , [ifelse([$1], [no-libtool], , [ifelse([$1], [use-libtool], ,
62 [errprint([ERROR: invalid first argument to AM_GNU_GETTEXT
63 ])])])])])
64 ifelse([$2], [], , [ifelse([$2], [need-ngettext], , [ifelse([$2], [need-formatstring-macros], ,
65 [errprint([ERROR: invalid second argument to AM_GNU_GETTEXT
66 ])])])])
67 define(gt_included_intl, ifelse([$1], [external], [no], [yes]))
68 define(gt_libtool_suffix_prefix, ifelse([$1], [use-libtool], [l], []))
69
70 AC_REQUIRE([AM_PO_SUBDIRS])dnl
71 ifelse(gt_included_intl, yes, [
72 AC_REQUIRE([AM_INTL_SUBDIR])dnl
73 ])
74
75 dnl Prerequisites of AC_LIB_LINKFLAGS_BODY.
76 AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
77 AC_REQUIRE([AC_LIB_RPATH])
78
79 dnl Sometimes libintl requires libiconv, so first search for libiconv.
80 dnl Ideally we would do this search only after the
81 dnl if test "$USE_NLS" = "yes"; then
82 dnl if test "$gt_cv_func_gnugettext_libc" != "yes"; then
83 dnl tests. But if configure.in invokes AM_ICONV after AM_GNU_GETTEXT
84 dnl the configure script would need to contain the same shell code
85 dnl again, outside any 'if'. There are two solutions:
86 dnl - Invoke AM_ICONV_LINKFLAGS_BODY here, outside any 'if'.
87 dnl - Control the expansions in more detail using AC_PROVIDE_IFELSE.
88 dnl Since AC_PROVIDE_IFELSE is only in autoconf >= 2.52 and not
89 dnl documented, we avoid it.
90 ifelse(gt_included_intl, yes, , [
91 AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY])
92 ])
93
94 AC_MSG_CHECKING([whether NLS is requested])
95 dnl Default is enabled NLS
96 AC_ARG_ENABLE(nls,
97 [ --disable-nls do not use Native Language Support],
98 USE_NLS=$enableval, USE_NLS=yes)
99 AC_MSG_RESULT($USE_NLS)
100 AC_SUBST(USE_NLS)
101
102 ifelse(gt_included_intl, yes, [
103 BUILD_INCLUDED_LIBINTL=no
104 USE_INCLUDED_LIBINTL=no
105 ])
106 LIBINTL=
107 LTLIBINTL=
108 POSUB=
109
110 dnl If we use NLS figure out what method
111 if test "$USE_NLS" = "yes"; then
112 gt_use_preinstalled_gnugettext=no
113 ifelse(gt_included_intl, yes, [
114 AC_MSG_CHECKING([whether included gettext is requested])
115 AC_ARG_WITH(included-gettext,
116 [ --with-included-gettext use the GNU gettext library included here],
117 nls_cv_force_use_gnu_gettext=$withval,
118 nls_cv_force_use_gnu_gettext=no)
119 AC_MSG_RESULT($nls_cv_force_use_gnu_gettext)
120
121 nls_cv_use_gnu_gettext="$nls_cv_force_use_gnu_gettext"
122 if test "$nls_cv_force_use_gnu_gettext" != "yes"; then
123 ])
124 dnl User does not insist on using GNU NLS library. Figure out what
125 dnl to use. If GNU gettext is available we use this. Else we have
126 dnl to fall back to GNU NLS library.
127
128 dnl Add a version number to the cache macros.
129 define([gt_api_version], ifelse([$2], [need-formatstring-macros], 3, ifelse([$2], [need-ngettext], 2, 1)))
130 define([gt_cv_func_gnugettext_libc], [gt_cv_func_gnugettext]gt_api_version[_libc])
131 define([gt_cv_func_gnugettext_libintl], [gt_cv_func_gnugettext]gt_api_version[_libintl])
132
133 AC_CACHE_CHECK([for GNU gettext in libc], gt_cv_func_gnugettext_libc,
134 [AC_TRY_LINK([#include <libintl.h>
135 ]ifelse([$2], [need-formatstring-macros],
136 [#ifndef __GNU_GETTEXT_SUPPORTED_REVISION
137 #define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1)
138 #endif
139 changequote(,)dnl
140 typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1];
141 changequote([,])dnl
142 ], [])[extern int _nl_msg_cat_cntr;
143 extern int *_nl_domain_bindings;],
144 [bindtextdomain ("", "");
145 return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_domain_bindings],
146 gt_cv_func_gnugettext_libc=yes,
147 gt_cv_func_gnugettext_libc=no)])
148
149 if test "$gt_cv_func_gnugettext_libc" != "yes"; then
150 dnl Sometimes libintl requires libiconv, so first search for libiconv.
151 ifelse(gt_included_intl, yes, , [
152 AM_ICONV_LINK
153 ])
154 dnl Search for libintl and define LIBINTL, LTLIBINTL and INCINTL
155 dnl accordingly. Don't use AC_LIB_LINKFLAGS_BODY([intl],[iconv])
156 dnl because that would add "-liconv" to LIBINTL and LTLIBINTL
157 dnl even if libiconv doesn't exist.
158 AC_LIB_LINKFLAGS_BODY([intl])
159 AC_CACHE_CHECK([for GNU gettext in libintl],
160 gt_cv_func_gnugettext_libintl,
161 [gt_save_CPPFLAGS="$CPPFLAGS"
162 CPPFLAGS="$CPPFLAGS $INCINTL"
163 gt_save_LIBS="$LIBS"
164 LIBS="$LIBS $LIBINTL"
165 dnl Now see whether libintl exists and does not depend on libiconv.
166 AC_TRY_LINK([#include <libintl.h>
167 ]ifelse([$2], [need-formatstring-macros],
168 [#ifndef __GNU_GETTEXT_SUPPORTED_REVISION
169 #define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1)
170 #endif
171 changequote(,)dnl
172 typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1];
173 changequote([,])dnl
174 ], [])[extern int _nl_msg_cat_cntr;
175 extern
176 #ifdef __cplusplus
177 "C"
178 #endif
179 const char *_nl_expand_alias ();],
180 [bindtextdomain ("", "");
181 return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_expand_alias (0)],
182 gt_cv_func_gnugettext_libintl=yes,
183 gt_cv_func_gnugettext_libintl=no)
184 dnl Now see whether libintl exists and depends on libiconv.
185 if test "$gt_cv_func_gnugettext_libintl" != yes && test -n "$LIBICONV"; then
186 LIBS="$LIBS $LIBICONV"
187 AC_TRY_LINK([#include <libintl.h>
188 ]ifelse([$2], [need-formatstring-macros],
189 [#ifndef __GNU_GETTEXT_SUPPORTED_REVISION
190 #define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1)
191 #endif
192 changequote(,)dnl
193 typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1];
194 changequote([,])dnl
195 ], [])[extern int _nl_msg_cat_cntr;
196 extern
197 #ifdef __cplusplus
198 "C"
199 #endif
200 const char *_nl_expand_alias ();],
201 [bindtextdomain ("", "");
202 return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_expand_alias (0)],
203 [LIBINTL="$LIBINTL $LIBICONV"
204 LTLIBINTL="$LTLIBINTL $LTLIBICONV"
205 gt_cv_func_gnugettext_libintl=yes
206 ])
207 fi
208 CPPFLAGS="$gt_save_CPPFLAGS"
209 LIBS="$gt_save_LIBS"])
210 fi
211
212 dnl If an already present or preinstalled GNU gettext() is found,
213 dnl use it. But if this macro is used in GNU gettext, and GNU
214 dnl gettext is already preinstalled in libintl, we update this
215 dnl libintl. (Cf. the install rule in intl/Makefile.in.)
216 if test "$gt_cv_func_gnugettext_libc" = "yes" \
217 || { test "$gt_cv_func_gnugettext_libintl" = "yes" \
218 && test "$PACKAGE" != gettext; }; then
219 gt_use_preinstalled_gnugettext=yes
220 else
221 dnl Reset the values set by searching for libintl.
222 LIBINTL=
223 LTLIBINTL=
224 INCINTL=
225 fi
226
227 ifelse(gt_included_intl, yes, [
228 if test "$gt_use_preinstalled_gnugettext" != "yes"; then
229 dnl GNU gettext is not found in the C library.
230 dnl Fall back on included GNU gettext library.
231 nls_cv_use_gnu_gettext=yes
232 fi
233 fi
234
235 if test "$nls_cv_use_gnu_gettext" = "yes"; then
236 dnl Mark actions used to generate GNU NLS library.
237 INTLOBJS="\$(GETTOBJS)"
238 BUILD_INCLUDED_LIBINTL=yes
239 USE_INCLUDED_LIBINTL=yes
240 LIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.[]gt_libtool_suffix_prefix[]a $LIBICONV"
241 LTLIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.[]gt_libtool_suffix_prefix[]a $LTLIBICONV"
242 LIBS=`echo " $LIBS " | sed -e 's/ -lintl / /' -e 's/^ //' -e 's/ $//'`
243 fi
244
245 if test "$gt_use_preinstalled_gnugettext" = "yes" \
246 || test "$nls_cv_use_gnu_gettext" = "yes"; then
247 dnl Mark actions to use GNU gettext tools.
248 CATOBJEXT=.gmo
249 fi
250 ])
251
252 if test "$gt_use_preinstalled_gnugettext" = "yes" \
253 || test "$nls_cv_use_gnu_gettext" = "yes"; then
254 AC_DEFINE(ENABLE_NLS, 1,
255 [Define to 1 if translation of program messages to the user's native language
256 is requested.])
257 else
258 USE_NLS=no
259 fi
260 fi
261
262 if test "$USE_NLS" = "yes"; then
263
264 if test "$gt_use_preinstalled_gnugettext" = "yes"; then
265 if test "$gt_cv_func_gnugettext_libintl" = "yes"; then
266 AC_MSG_CHECKING([how to link with libintl])
267 AC_MSG_RESULT([$LIBINTL])
268 AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCINTL])
269 fi
270
271 dnl For backward compatibility. Some packages may be using this.
272 AC_DEFINE(HAVE_GETTEXT, 1,
273 [Define if the GNU gettext() function is already present or preinstalled.])
274 AC_DEFINE(HAVE_DCGETTEXT, 1,
275 [Define if the GNU dcgettext() function is already present or preinstalled.])
276 fi
277
278 dnl We need to process the po/ directory.
279 POSUB=po
280 fi
281
282 ifelse(gt_included_intl, yes, [
283 dnl If this is used in GNU gettext we have to set BUILD_INCLUDED_LIBINTL
284 dnl to 'yes' because some of the testsuite requires it.
285 if test "$PACKAGE" = gettext; then
286 BUILD_INCLUDED_LIBINTL=yes
287 fi
288
289 dnl Make all variables we use known to autoconf.
290 AC_SUBST(BUILD_INCLUDED_LIBINTL)
291 AC_SUBST(USE_INCLUDED_LIBINTL)
292 AC_SUBST(CATOBJEXT)
293 AC_SUBST(INTLOBJS)
294
295 dnl For backward compatibility. Some configure.ins may be using this.
296 nls_cv_header_intl=
297 nls_cv_header_libgt=
298
299 dnl For backward compatibility. Some Makefiles may be using this.
300 DATADIRNAME=share
301 AC_SUBST(DATADIRNAME)
302
303 dnl For backward compatibility. Some Makefiles may be using this.
304 INSTOBJEXT=.mo
305 AC_SUBST(INSTOBJEXT)
306
307 dnl For backward compatibility. Some Makefiles may be using this.
308 GENCAT=gencat
309 AC_SUBST(GENCAT)
310
311 dnl Enable libtool support if the surrounding package wishes it.
312 INTL_LIBTOOL_SUFFIX_PREFIX=gt_libtool_suffix_prefix
313 AC_SUBST(INTL_LIBTOOL_SUFFIX_PREFIX)
314 ])
315
316 dnl For backward compatibility. Some Makefiles may be using this.
317 INTLLIBS="$LIBINTL"
318 AC_SUBST(INTLLIBS)
319
320 dnl Make all documented variables known to autoconf.
321 AC_SUBST(LIBINTL)
322 AC_SUBST(LTLIBINTL)
323 AC_SUBST(POSUB)
324 ])
325
326
327 dnl Checks for all prerequisites of the po subdirectory,
328 dnl except for USE_NLS.
329 AC_DEFUN([AM_PO_SUBDIRS],
330 [
331 AC_REQUIRE([AC_PROG_MAKE_SET])dnl
332 AC_REQUIRE([AC_PROG_INSTALL])dnl
333 AC_REQUIRE([AM_MKINSTALLDIRS])dnl
334
335 dnl Perform the following tests also if --disable-nls has been given,
336 dnl because they are needed for "make dist" to work.
337
338 dnl Search for GNU msgfmt in the PATH.
339 dnl The first test excludes Solaris msgfmt and early GNU msgfmt versions.
340 dnl The second test excludes FreeBSD msgfmt.
341 AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt,
342 [$ac_dir/$ac_word --statistics /dev/null >/dev/null 2>&1 &&
343 (if $ac_dir/$ac_word --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi)],
344 :)
345 AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT)
346
347 dnl Search for GNU xgettext 0.11 or newer in the PATH.
348 dnl The first test excludes Solaris xgettext and early GNU xgettext versions.
349 dnl The second test excludes FreeBSD xgettext.
350 AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
351 [$ac_dir/$ac_word --omit-header --copyright-holder= /dev/null >/dev/null 2>&1 &&
352 (if $ac_dir/$ac_word --omit-header --copyright-holder= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi)],
353 :)
354 dnl Remove leftover from FreeBSD xgettext call.
355 rm -f messages.po
356
357 dnl Search for GNU msgmerge 0.11 or newer in the PATH.
358 AM_PATH_PROG_WITH_TEST(MSGMERGE, msgmerge,
359 [$ac_dir/$ac_word --update -q /dev/null /dev/null >/dev/null 2>&1], :)
360
361 dnl This could go away some day; the PATH_PROG_WITH_TEST already does it.
362 dnl Test whether we really found GNU msgfmt.
363 if test "$GMSGFMT" != ":"; then
364 dnl If it is no GNU msgfmt we define it as : so that the
365 dnl Makefiles still can work.
366 if $GMSGFMT --statistics /dev/null >/dev/null 2>&1 &&
367 (if $GMSGFMT --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then
368 : ;
369 else
370 GMSGFMT=`echo "$GMSGFMT" | sed -e 's,^.*/,,'`
371 AC_MSG_RESULT(
372 [found $GMSGFMT program is not GNU msgfmt; ignore it])
373 GMSGFMT=":"
374 fi
375 fi
376
377 dnl This could go away some day; the PATH_PROG_WITH_TEST already does it.
378 dnl Test whether we really found GNU xgettext.
379 if test "$XGETTEXT" != ":"; then
380 dnl If it is no GNU xgettext we define it as : so that the
381 dnl Makefiles still can work.
382 if $XGETTEXT --omit-header --copyright-holder= /dev/null >/dev/null 2>&1 &&
383 (if $XGETTEXT --omit-header --copyright-holder= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then
384 : ;
385 else
386 AC_MSG_RESULT(
387 [found xgettext program is not GNU xgettext; ignore it])
388 XGETTEXT=":"
389 fi
390 dnl Remove leftover from FreeBSD xgettext call.
391 rm -f messages.po
392 fi
393
394 AC_OUTPUT_COMMANDS([
395 for ac_file in $CONFIG_FILES; do
396 # Support "outfile[:infile[:infile...]]"
397 case "$ac_file" in
398 *:*) ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
399 esac
400 # PO directories have a Makefile.in generated from Makefile.in.in.
401 case "$ac_file" in */Makefile.in)
402 # Adjust a relative srcdir.
403 ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'`
404 ac_dir_suffix="/`echo "$ac_dir"|sed 's%^\./%%'`"
405 ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'`
406 # In autoconf-2.13 it is called $ac_given_srcdir.
407 # In autoconf-2.50 it is called $srcdir.
408 test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir"
409 case "$ac_given_srcdir" in
410 .) top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;;
411 /*) top_srcdir="$ac_given_srcdir" ;;
412 *) top_srcdir="$ac_dots$ac_given_srcdir" ;;
413 esac
414 if test -f "$ac_given_srcdir/$ac_dir/POTFILES.in"; then
415 rm -f "$ac_dir/POTFILES"
416 test -n "$as_me" && echo "$as_me: creating $ac_dir/POTFILES" || echo "creating $ac_dir/POTFILES"
417 cat "$ac_given_srcdir/$ac_dir/POTFILES.in" | sed -e "/^#/d" -e "/^[ ]*\$/d" -e "s,.*, $top_srcdir/& \\\\," | sed -e "\$s/\(.*\) \\\\/\1/" > "$ac_dir/POTFILES"
418 # ALL_LINGUAS, POFILES, GMOFILES, UPDATEPOFILES, DUMMYPOFILES depend
419 # on $ac_dir but don't depend on user-specified configuration
420 # parameters.
421 if test -f "$ac_given_srcdir/$ac_dir/LINGUAS"; then
422 # The LINGUAS file contains the set of available languages.
423 if test -n "$ALL_LINGUAS"; then
424 test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete"
425 fi
426 ALL_LINGUAS_=`sed -e "/^#/d" "$ac_given_srcdir/$ac_dir/LINGUAS"`
427 # Hide the ALL_LINGUAS assigment from automake.
428 eval 'ALL_LINGUAS''=$ALL_LINGUAS_'
429 fi
430 case "$ac_given_srcdir" in
431 .) srcdirpre= ;;
432 *) srcdirpre='$(srcdir)/' ;;
433 esac
434 POFILES=
435 GMOFILES=
436 UPDATEPOFILES=
437 DUMMYPOFILES=
438 for lang in $ALL_LINGUAS; do
439 POFILES="$POFILES $srcdirpre$lang.po"
440 GMOFILES="$GMOFILES $srcdirpre$lang.gmo"
441 UPDATEPOFILES="$UPDATEPOFILES $lang.po-update"
442 DUMMYPOFILES="$DUMMYPOFILES $lang.nop"
443 done
444 # CATALOGS depends on both $ac_dir and the user's LINGUAS
445 # environment variable.
446 INST_LINGUAS=
447 if test -n "$ALL_LINGUAS"; then
448 for presentlang in $ALL_LINGUAS; do
449 useit=no
450 if test "%UNSET%" != "$LINGUAS"; then
451 desiredlanguages="$LINGUAS"
452 else
453 desiredlanguages="$ALL_LINGUAS"
454 fi
455 for desiredlang in $desiredlanguages; do
456 # Use the presentlang catalog if desiredlang is
457 # a. equal to presentlang, or
458 # b. a variant of presentlang (because in this case,
459 # presentlang can be used as a fallback for messages
460 # which are not translated in the desiredlang catalog).
461 case "$desiredlang" in
462 "$presentlang"*) useit=yes;;
463 esac
464 done
465 if test $useit = yes; then
466 INST_LINGUAS="$INST_LINGUAS $presentlang"
467 fi
468 done
469 fi
470 CATALOGS=
471 if test -n "$INST_LINGUAS"; then
472 for lang in $INST_LINGUAS; do
473 CATALOGS="$CATALOGS $lang.gmo"
474 done
475 fi
476 test -n "$as_me" && echo "$as_me: creating $ac_dir/Makefile" || echo "creating $ac_dir/Makefile"
477 sed -e "/^POTFILES =/r $ac_dir/POTFILES" -e "/^# Makevars/r $ac_given_srcdir/$ac_dir/Makevars" -e "s|@POFILES@|$POFILES|g" -e "s|@GMOFILES@|$GMOFILES|g" -e "s|@UPDATEPOFILES@|$UPDATEPOFILES|g" -e "s|@DUMMYPOFILES@|$DUMMYPOFILES|g" -e "s|@CATALOGS@|$CATALOGS|g" "$ac_dir/Makefile.in" > "$ac_dir/Makefile"
478 for f in "$ac_given_srcdir/$ac_dir"/Rules-*; do
479 if test -f "$f"; then
480 case "$f" in
481 *.orig | *.bak | *~) ;;
482 *) cat "$f" >> "$ac_dir/Makefile" ;;
483 esac
484 fi
485 done
486 fi
487 ;;
488 esac
489 done],
490 [# Capture the value of obsolete ALL_LINGUAS because we need it to compute
491 # POFILES, GMOFILES, UPDATEPOFILES, DUMMYPOFILES, CATALOGS. But hide it
492 # from automake.
493 eval 'ALL_LINGUAS''="$ALL_LINGUAS"'
494 # Capture the value of LINGUAS because we need it to compute CATALOGS.
495 LINGUAS="${LINGUAS-%UNSET%}"
496 ])
497 ])
498
499
500 dnl Checks for all prerequisites of the intl subdirectory,
501 dnl except for INTL_LIBTOOL_SUFFIX_PREFIX (and possibly LIBTOOL), INTLOBJS,
502 dnl USE_INCLUDED_LIBINTL, BUILD_INCLUDED_LIBINTL.
503 AC_DEFUN([AM_INTL_SUBDIR],
504 [
505 AC_REQUIRE([AC_PROG_INSTALL])dnl
506 AC_REQUIRE([AM_MKINSTALLDIRS])dnl
507 AC_REQUIRE([AC_PROG_CC])dnl
508 AC_REQUIRE([AC_CANONICAL_HOST])dnl
509 AC_REQUIRE([AC_PROG_RANLIB])dnl
510 AC_REQUIRE([AC_ISC_POSIX])dnl
511 AC_REQUIRE([AC_HEADER_STDC])dnl
512 AC_REQUIRE([AC_C_CONST])dnl
513 AC_REQUIRE([AC_C_INLINE])dnl
514 AC_REQUIRE([AC_TYPE_OFF_T])dnl
515 AC_REQUIRE([AC_TYPE_SIZE_T])dnl
516 AC_REQUIRE([AC_FUNC_ALLOCA])dnl
517 AC_REQUIRE([AC_FUNC_MMAP])dnl
518 AC_REQUIRE([jm_GLIBC21])dnl
519 AC_REQUIRE([gt_INTDIV0])dnl
520 AC_REQUIRE([jm_AC_TYPE_UINTMAX_T])dnl
521 AC_REQUIRE([gt_HEADER_INTTYPES_H])dnl
522 AC_REQUIRE([gt_INTTYPES_PRI])dnl
523
524 AC_CHECK_HEADERS([argz.h limits.h locale.h nl_types.h malloc.h stddef.h \
525 stdlib.h string.h unistd.h sys/param.h])
526 AC_CHECK_FUNCS([feof_unlocked fgets_unlocked getc_unlocked getcwd getegid \
527 geteuid getgid getuid mempcpy munmap putenv setenv setlocale stpcpy \
528 strcasecmp strdup strtoul tsearch __argz_count __argz_stringify __argz_next])
529
530 AM_ICONV
531 AM_LANGINFO_CODESET
532 if test $ac_cv_header_locale_h = yes; then
533 AM_LC_MESSAGES
534 fi
535
536 dnl intl/plural.c is generated from intl/plural.y. It requires bison,
537 dnl because plural.y uses bison specific features. It requires at least
538 dnl bison-1.26 because earlier versions generate a plural.c that doesn't
539 dnl compile.
540 dnl bison is only needed for the maintainer (who touches plural.y). But in
541 dnl order to avoid separate Makefiles or --enable-maintainer-mode, we put
542 dnl the rule in general Makefile. Now, some people carelessly touch the
543 dnl files or have a broken "make" program, hence the plural.c rule will
544 dnl sometimes fire. To avoid an error, defines BISON to ":" if it is not
545 dnl present or too old.
546 AC_CHECK_PROGS([INTLBISON], [bison])
547 if test -z "$INTLBISON"; then
548 ac_verc_fail=yes
549 else
550 dnl Found it, now check the version.
551 AC_MSG_CHECKING([version of bison])
552 changequote(<<,>>)dnl
553 ac_prog_version=`$INTLBISON --version 2>&1 | sed -n 's/^.*GNU Bison.* \([0-9]*\.[0-9.]*\).*$/\1/p'`
554 case $ac_prog_version in
555 '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
556 1.2[6-9]* | 1.[3-9][0-9]* | [2-9].*)
557 changequote([,])dnl
558 ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
559 *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
560 esac
561 AC_MSG_RESULT([$ac_prog_version])
562 fi
563 if test $ac_verc_fail = yes; then
564 INTLBISON=:
565 fi
566 ])
567
568
569 AC_DEFUN([AM_MKINSTALLDIRS],
570 [
571 dnl If the AC_CONFIG_AUX_DIR macro for autoconf is used we possibly
572 dnl find the mkinstalldirs script in another subdir but $(top_srcdir).
573 dnl Try to locate is.
574 MKINSTALLDIRS=
575 if test -n "$ac_aux_dir"; then
576 MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs"
577 fi
578 if test -z "$MKINSTALLDIRS"; then
579 MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs"
580 fi
581 AC_SUBST(MKINSTALLDIRS)
582 ])
583
584
585 dnl Usage: AM_GNU_GETTEXT_VERSION([gettext-version])
586 AC_DEFUN([AM_GNU_GETTEXT_VERSION], [])
0 # Copyright (C) 1995-2002 Free Software Foundation, Inc.
1 # Copyright (C) 2001-2003,2004 Red Hat, Inc.
2 #
3 # This file is free software, distributed under the terms of the GNU
4 # General Public License. As a special exception to the GNU General
5 # Public License, this file may be distributed as part of a program
6 # that contains a configuration script generated by Autoconf, under
7 # the same distribution terms as the rest of that program.
8 #
9 # This file can be copied and used freely without restrictions. It can
10 # be used in projects which are not available under the GNU Public License
11 # but which still want to provide support for the GNU gettext functionality.
12 #
13 # Macro to add for using GNU gettext.
14 # Ulrich Drepper <drepper@cygnus.com>, 1995, 1996
15 #
16 # Modified to never use included libintl.
17 # Owen Taylor <otaylor@redhat.com>, 12/15/1998
18 #
19 # Major rework to remove unused code
20 # Owen Taylor <otaylor@redhat.com>, 12/11/2002
21 #
22 # Added better handling of ALL_LINGUAS from GNU gettext version
23 # written by Bruno Haible, Owen Taylor <otaylor.redhat.com> 5/30/3002
24 #
25 # Modified to require ngettext
26 # Matthias Clasen <mclasen@redhat.com> 08/06/2004
27 #
28 # We need this here as well, since someone might use autoconf-2.5x
29 # to configure GLib then an older version to configure a package
30 # using AM_GLIB_GNU_GETTEXT
31 AC_PREREQ(2.53)
32
33 dnl
34 dnl We go to great lengths to make sure that aclocal won't
35 dnl try to pull in the installed version of these macros
36 dnl when running aclocal in the glib directory.
37 dnl
38 m4_copy([AC_DEFUN],[glib_DEFUN])
39 m4_copy([AC_REQUIRE],[glib_REQUIRE])
40 dnl
41 dnl At the end, if we're not within glib, we'll define the public
42 dnl definitions in terms of our private definitions.
43 dnl
44
45 # GLIB_LC_MESSAGES
46 #--------------------
47 glib_DEFUN([GLIB_LC_MESSAGES],
48 [AC_CHECK_HEADERS([locale.h])
49 if test $ac_cv_header_locale_h = yes; then
50 AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES,
51 [AC_TRY_LINK([#include <locale.h>], [return LC_MESSAGES],
52 am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)])
53 if test $am_cv_val_LC_MESSAGES = yes; then
54 AC_DEFINE(HAVE_LC_MESSAGES, 1,
55 [Define if your <locale.h> file defines LC_MESSAGES.])
56 fi
57 fi])
58
59 # GLIB_PATH_PROG_WITH_TEST
60 #----------------------------
61 dnl GLIB_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR,
62 dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]])
63 glib_DEFUN([GLIB_PATH_PROG_WITH_TEST],
64 [# Extract the first word of "$2", so it can be a program name with args.
65 set dummy $2; ac_word=[$]2
66 AC_MSG_CHECKING([for $ac_word])
67 AC_CACHE_VAL(ac_cv_path_$1,
68 [case "[$]$1" in
69 /*)
70 ac_cv_path_$1="[$]$1" # Let the user override the test with a path.
71 ;;
72 *)
73 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
74 for ac_dir in ifelse([$5], , $PATH, [$5]); do
75 test -z "$ac_dir" && ac_dir=.
76 if test -f $ac_dir/$ac_word; then
77 if [$3]; then
78 ac_cv_path_$1="$ac_dir/$ac_word"
79 break
80 fi
81 fi
82 done
83 IFS="$ac_save_ifs"
84 dnl If no 4th arg is given, leave the cache variable unset,
85 dnl so AC_PATH_PROGS will keep looking.
86 ifelse([$4], , , [ test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4"
87 ])dnl
88 ;;
89 esac])dnl
90 $1="$ac_cv_path_$1"
91 if test ifelse([$4], , [-n "[$]$1"], ["[$]$1" != "$4"]); then
92 AC_MSG_RESULT([$]$1)
93 else
94 AC_MSG_RESULT(no)
95 fi
96 AC_SUBST($1)dnl
97 ])
98
99 # GLIB_WITH_NLS
100 #-----------------
101 glib_DEFUN([GLIB_WITH_NLS],
102 dnl NLS is obligatory
103 [USE_NLS=yes
104 AC_SUBST(USE_NLS)
105
106 gt_cv_have_gettext=no
107
108 CATOBJEXT=NONE
109 XGETTEXT=:
110 INTLLIBS=
111
112 AC_CHECK_HEADER(libintl.h,
113 [gt_cv_func_dgettext_libintl="no"
114 libintl_extra_libs=""
115
116 #
117 # First check in libc
118 #
119 AC_CACHE_CHECK([for ngettext in libc], gt_cv_func_ngettext_libc,
120 [AC_TRY_LINK([
121 #include <libintl.h>
122 ],
123 [return !ngettext ("","", 1)],
124 gt_cv_func_ngettext_libc=yes,
125 gt_cv_func_ngettext_libc=no)
126 ])
127
128 if test "$gt_cv_func_ngettext_libc" = "yes" ; then
129 AC_CACHE_CHECK([for dgettext in libc], gt_cv_func_dgettext_libc,
130 [AC_TRY_LINK([
131 #include <libintl.h>
132 ],
133 [return !dgettext ("","")],
134 gt_cv_func_dgettext_libc=yes,
135 gt_cv_func_dgettext_libc=no)
136 ])
137 fi
138
139 if test "$gt_cv_func_ngettext_libc" = "yes" ; then
140 AC_CHECK_FUNCS(bind_textdomain_codeset)
141 fi
142
143 #
144 # If we don't have everything we want, check in libintl
145 #
146 if test "$gt_cv_func_dgettext_libc" != "yes" \
147 || test "$gt_cv_func_ngettext_libc" != "yes" \
148 || test "$ac_cv_func_bind_textdomain_codeset" != "yes" ; then
149
150 AC_CHECK_LIB(intl, bindtextdomain,
151 [AC_CHECK_LIB(intl, ngettext,
152 [AC_CHECK_LIB(intl, dgettext,
153 gt_cv_func_dgettext_libintl=yes)])])
154
155 if test "$gt_cv_func_dgettext_libintl" != "yes" ; then
156 AC_MSG_CHECKING([if -liconv is needed to use gettext])
157 AC_MSG_RESULT([])
158 AC_CHECK_LIB(intl, ngettext,
159 [AC_CHECK_LIB(intl, dcgettext,
160 [gt_cv_func_dgettext_libintl=yes
161 libintl_extra_libs=-liconv],
162 :,-liconv)],
163 :,-liconv)
164 fi
165
166 #
167 # If we found libintl, then check in it for bind_textdomain_codeset();
168 # we'll prefer libc if neither have bind_textdomain_codeset(),
169 # and both have dgettext and ngettext
170 #
171 if test "$gt_cv_func_dgettext_libintl" = "yes" ; then
172 glib_save_LIBS="$LIBS"
173 LIBS="$LIBS -lintl $libintl_extra_libs"
174 unset ac_cv_func_bind_textdomain_codeset
175 AC_CHECK_FUNCS(bind_textdomain_codeset)
176 LIBS="$glib_save_LIBS"
177
178 if test "$ac_cv_func_bind_textdomain_codeset" = "yes" ; then
179 gt_cv_func_dgettext_libc=no
180 else
181 if test "$gt_cv_func_dgettext_libc" = "yes" \
182 && test "$gt_cv_func_ngettext_libc" = "yes"; then
183 gt_cv_func_dgettext_libintl=no
184 fi
185 fi
186 fi
187 fi
188
189 if test "$gt_cv_func_dgettext_libc" = "yes" \
190 || test "$gt_cv_func_dgettext_libintl" = "yes"; then
191 gt_cv_have_gettext=yes
192 fi
193
194 if test "$gt_cv_func_dgettext_libintl" = "yes"; then
195 INTLLIBS="-lintl $libintl_extra_libs"
196 fi
197
198 if test "$gt_cv_have_gettext" = "yes"; then
199 AC_DEFINE(HAVE_GETTEXT,1,
200 [Define if the GNU gettext() function is already present or preinstalled.])
201 GLIB_PATH_PROG_WITH_TEST(MSGFMT, msgfmt,
202 [test -z "`$ac_dir/$ac_word -h 2>&1 | grep 'dv '`"], no)dnl
203 if test "$MSGFMT" != "no"; then
204 glib_save_LIBS="$LIBS"
205 LIBS="$LIBS $INTLLIBS"
206 AC_CHECK_FUNCS(dcgettext)
207 MSGFMT_OPTS=
208 AC_MSG_CHECKING([if msgfmt accepts -c])
209 GLIB_RUN_PROG([$MSGFMT -c -o /dev/null],[
210 msgid ""
211 msgstr ""
212 "Content-Type: text/plain; charset=UTF-8\n"
213 "Project-Id-Version: test 1.0\n"
214 "PO-Revision-Date: 2007-02-15 12:01+0100\n"
215 "Last-Translator: test <foo@bar.xx>\n"
216 "Language-Team: C <LL@li.org>\n"
217 "MIME-Version: 1.0\n"
218 "Content-Transfer-Encoding: 8bit\n"
219 ], [MSGFMT_OPTS=-c; AC_MSG_RESULT([yes])], [AC_MSG_RESULT([no])])
220 AC_SUBST(MSGFMT_OPTS)
221 AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT)
222 GLIB_PATH_PROG_WITH_TEST(XGETTEXT, xgettext,
223 [test -z "`$ac_dir/$ac_word -h 2>&1 | grep '(HELP)'`"], :)
224 AC_TRY_LINK(, [extern int _nl_msg_cat_cntr;
225 return _nl_msg_cat_cntr],
226 [CATOBJEXT=.gmo
227 DATADIRNAME=share],
228 [case $host in
229 *-*-solaris*)
230 dnl On Solaris, if bind_textdomain_codeset is in libc,
231 dnl GNU format message catalog is always supported,
232 dnl since both are added to the libc all together.
233 dnl Hence, we'd like to go with DATADIRNAME=share and
234 dnl and CATOBJEXT=.gmo in this case.
235 AC_CHECK_FUNC(bind_textdomain_codeset,
236 [CATOBJEXT=.gmo
237 DATADIRNAME=share],
238 [CATOBJEXT=.mo
239 DATADIRNAME=lib])
240 ;;
241 *)
242 CATOBJEXT=.mo
243 DATADIRNAME=lib
244 ;;
245 esac])
246 LIBS="$glib_save_LIBS"
247 INSTOBJEXT=.mo
248 else
249 gt_cv_have_gettext=no
250 fi
251 fi
252 ])
253
254 if test "$gt_cv_have_gettext" = "yes" ; then
255 AC_DEFINE(ENABLE_NLS, 1,
256 [always defined to indicate that i18n is enabled])
257 fi
258
259 dnl Test whether we really found GNU xgettext.
260 if test "$XGETTEXT" != ":"; then
261 dnl If it is not GNU xgettext we define it as : so that the
262 dnl Makefiles still can work.
263 if $XGETTEXT --omit-header /dev/null 2> /dev/null; then
264 : ;
265 else
266 AC_MSG_RESULT(
267 [found xgettext program is not GNU xgettext; ignore it])
268 XGETTEXT=":"
269 fi
270 fi
271
272 # We need to process the po/ directory.
273 POSUB=po
274
275 AC_OUTPUT_COMMANDS(
276 [case "$CONFIG_FILES" in *po/Makefile.in*)
277 sed -e "/POTFILES =/r po/POTFILES" po/Makefile.in > po/Makefile
278 esac])
279
280 dnl These rules are solely for the distribution goal. While doing this
281 dnl we only have to keep exactly one list of the available catalogs
282 dnl in configure.in.
283 for lang in $ALL_LINGUAS; do
284 GMOFILES="$GMOFILES $lang.gmo"
285 POFILES="$POFILES $lang.po"
286 done
287
288 dnl Make all variables we use known to autoconf.
289 AC_SUBST(CATALOGS)
290 AC_SUBST(CATOBJEXT)
291 AC_SUBST(DATADIRNAME)
292 AC_SUBST(GMOFILES)
293 AC_SUBST(INSTOBJEXT)
294 AC_SUBST(INTLLIBS)
295 AC_SUBST(PO_IN_DATADIR_TRUE)
296 AC_SUBST(PO_IN_DATADIR_FALSE)
297 AC_SUBST(POFILES)
298 AC_SUBST(POSUB)
299 ])
300
301 # AM_GLIB_GNU_GETTEXT
302 # -------------------
303 # Do checks necessary for use of gettext. If a suitable implementation
304 # of gettext is found in either in libintl or in the C library,
305 # it will set INTLLIBS to the libraries needed for use of gettext
306 # and AC_DEFINE() HAVE_GETTEXT and ENABLE_NLS. (The shell variable
307 # gt_cv_have_gettext will be set to "yes".) It will also call AC_SUBST()
308 # on various variables needed by the Makefile.in.in installed by
309 # glib-gettextize.
310 dnl
311 glib_DEFUN([GLIB_GNU_GETTEXT],
312 [AC_REQUIRE([AC_PROG_CC])dnl
313 AC_REQUIRE([AC_HEADER_STDC])dnl
314
315 GLIB_LC_MESSAGES
316 GLIB_WITH_NLS
317
318 if test "$gt_cv_have_gettext" = "yes"; then
319 if test "x$ALL_LINGUAS" = "x"; then
320 LINGUAS=
321 else
322 AC_MSG_CHECKING(for catalogs to be installed)
323 NEW_LINGUAS=
324 for presentlang in $ALL_LINGUAS; do
325 useit=no
326 if test "%UNSET%" != "${LINGUAS-%UNSET%}"; then
327 desiredlanguages="$LINGUAS"
328 else
329 desiredlanguages="$ALL_LINGUAS"
330 fi
331 for desiredlang in $desiredlanguages; do
332 # Use the presentlang catalog if desiredlang is
333 # a. equal to presentlang, or
334 # b. a variant of presentlang (because in this case,
335 # presentlang can be used as a fallback for messages
336 # which are not translated in the desiredlang catalog).
337 case "$desiredlang" in
338 "$presentlang"*) useit=yes;;
339 esac
340 done
341 if test $useit = yes; then
342 NEW_LINGUAS="$NEW_LINGUAS $presentlang"
343 fi
344 done
345 LINGUAS=$NEW_LINGUAS
346 AC_MSG_RESULT($LINGUAS)
347 fi
348
349 dnl Construct list of names of catalog files to be constructed.
350 if test -n "$LINGUAS"; then
351 for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done
352 fi
353 fi
354
355 dnl If the AC_CONFIG_AUX_DIR macro for autoconf is used we possibly
356 dnl find the mkinstalldirs script in another subdir but ($top_srcdir).
357 dnl Try to locate is.
358 MKINSTALLDIRS=
359 if test -n "$ac_aux_dir"; then
360 MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs"
361 fi
362 if test -z "$MKINSTALLDIRS"; then
363 MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs"
364 fi
365 AC_SUBST(MKINSTALLDIRS)
366
367 dnl Generate list of files to be processed by xgettext which will
368 dnl be included in po/Makefile.
369 test -d po || mkdir po
370 if test "x$srcdir" != "x."; then
371 if test "x`echo $srcdir | sed 's@/.*@@'`" = "x"; then
372 posrcprefix="$srcdir/"
373 else
374 posrcprefix="../$srcdir/"
375 fi
376 else
377 posrcprefix="../"
378 fi
379 rm -f po/POTFILES
380 sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \
381 < $srcdir/po/POTFILES.in > po/POTFILES
382 ])
383
384 # AM_GLIB_DEFINE_LOCALEDIR(VARIABLE)
385 # -------------------------------
386 # Define VARIABLE to the location where catalog files will
387 # be installed by po/Makefile.
388 glib_DEFUN([GLIB_DEFINE_LOCALEDIR],
389 [glib_REQUIRE([GLIB_GNU_GETTEXT])dnl
390 glib_save_prefix="$prefix"
391 glib_save_exec_prefix="$exec_prefix"
392 glib_save_datarootdir="$datarootdir"
393 test "x$prefix" = xNONE && prefix=$ac_default_prefix
394 test "x$exec_prefix" = xNONE && exec_prefix=$prefix
395 datarootdir=`eval echo "${datarootdir}"`
396 if test "x$CATOBJEXT" = "x.mo" ; then
397 localedir=`eval echo "${libdir}/locale"`
398 else
399 localedir=`eval echo "${datadir}/locale"`
400 fi
401 prefix="$glib_save_prefix"
402 exec_prefix="$glib_save_exec_prefix"
403 datarootdir="$glib_save_datarootdir"
404 AC_DEFINE_UNQUOTED($1, "$localedir",
405 [Define the location where the catalogs will be installed])
406 ])
407
408 dnl
409 dnl Now the definitions that aclocal will find
410 dnl
411 ifdef(glib_configure_in,[],[
412 AC_DEFUN([AM_GLIB_GNU_GETTEXT],[GLIB_GNU_GETTEXT($@)])
413 AC_DEFUN([AM_GLIB_DEFINE_LOCALEDIR],[GLIB_DEFINE_LOCALEDIR($@)])
414 ])dnl
415
416 # GLIB_RUN_PROG(PROGRAM, TEST-FILE, [ACTION-IF-PASS], [ACTION-IF-FAIL])
417 #
418 # Create a temporary file with TEST-FILE as its contents and pass the
419 # file name to PROGRAM. Perform ACTION-IF-PASS if PROGRAM exits with
420 # 0 and perform ACTION-IF-FAIL for any other exit status.
421 AC_DEFUN([GLIB_RUN_PROG],
422 [cat >conftest.foo <<_ACEOF
423 $2
424 _ACEOF
425 if AC_RUN_LOG([$1 conftest.foo]); then
426 m4_ifval([$3], [$3], [:])
427 m4_ifvaln([$4], [else $4])dnl
428 echo "$as_me: failed input was:" >&AS_MESSAGE_LOG_FD
429 sed 's/^/| /' conftest.foo >&AS_MESSAGE_LOG_FD
430 fi])
431
+0
-32
common/m4/glibc21.m4 less more
0 # glibc21.m4 serial 2 (fileutils-4.1.3, gettext-0.10.40)
1 dnl Copyright (C) 2000-2002 Free Software Foundation, Inc.
2 dnl This file is free software, distributed under the terms of the GNU
3 dnl General Public License. As a special exception to the GNU General
4 dnl Public License, this file may be distributed as part of a program
5 dnl that contains a configuration script generated by Autoconf, under
6 dnl the same distribution terms as the rest of that program.
7
8 # Test for the GNU C Library, version 2.1 or newer.
9 # From Bruno Haible.
10
11 AC_DEFUN([jm_GLIBC21],
12 [
13 AC_CACHE_CHECK(whether we are using the GNU C Library 2.1 or newer,
14 ac_cv_gnu_library_2_1,
15 [AC_EGREP_CPP([Lucky GNU user],
16 [
17 #include <features.h>
18 #ifdef __GNU_LIBRARY__
19 #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) || (__GLIBC__ > 2)
20 Lucky GNU user
21 #endif
22 #endif
23 ],
24 ac_cv_gnu_library_2_1=yes,
25 ac_cv_gnu_library_2_1=no)
26 ]
27 )
28 AC_SUBST(GLIBC21)
29 GLIBC21="$ac_cv_gnu_library_2_1"
30 ]
31 )
112112 esac
113113 ],
114114 [
115 DEFAULT_AUDIOSINK="$DEFAULT_VISUALIZER"
115 DEFAULT_VISUALIZER="$DEFAULT_VISUALIZER"
116116 ] dnl Default value as determined above
117117 )
118118 AC_MSG_NOTICE(Using $DEFAULT_VISUALIZER as default visualizer)
0 dnl
1 dnl Check for working do while(0) macros. This is used by G_STMT_START
2 dnl and G_STMT_END in glib/gmacros.h. Without having this defined we
3 dnl get "ambigious if-else" compiler warnings when compling C++ code.
4 dnl
5 dnl Copied from GLib's configure.in
6 dnl
7 AC_DEFUN([AG_GST_CHECK_DOWHILE_MACROS],[
8
9 dnl *** check for working do while(0) macros ***
10 AC_CACHE_CHECK([for working do while(0) macros], g_support_dowhile_macros, [
11 AC_TRY_COMPILE([],[
12 #define STMT_START do
13 #define STMT_END while(0)
14 #define STMT_TEST STMT_START { i = 0; } STMT_END
15 int main(void) { int i = 1; STMT_TEST; return i; }],
16 [g_support_dowhile_macros=yes],
17 [g_support_dowhile_macros=no],
18 [g_support_dowhile_macros=yes])
19 ])
20 if test x$g_support_dowhile_macros = xyes; then
21 AC_DEFINE(HAVE_DOWHILE_MACROS, 1, [define for working do while(0) macros])
22 fi
23 ])
2727 AS_COMPILER_FLAG(-Wall,
2828 ERROR_CFLAGS="-Wall",
2929 ERROR_CFLAGS="")
30
30
31 dnl Warn if declarations after statements are used (C99 extension)
32 AS_COMPILER_FLAG(-Wdeclaration-after-statement,
33 ERROR_CFLAGS="$ERROR_CFLAGS -Wdeclaration-after-statement")
34
35 dnl Warn if variable length arrays are used (C99 extension)
36 AS_COMPILER_FLAG(-Wvla,
37 ERROR_CFLAGS="$ERROR_CFLAGS -Wvla")
38
3139 dnl if asked for, add -Werror if supported
3240 if test "x$1" != "xno"
3341 then
4856 for f in 'no%E_EMPTY_DECLARATION' \
4957 'no%E_STATEMENT_NOT_REACHED' \
5058 'no%E_ARGUEMENT_MISMATCH' \
51 'no%E_MACRO_REDEFINED'
59 'no%E_MACRO_REDEFINED' \
60 'no%E_LOOP_NOT_ENTERED_AT_TOP'
5261 do
5362 AS_COMPILER_FLAG([-errwarn=%all,$f], [
5463 ERROR_CFLAGS="$ERROR_CFLAGS,$f"
5564 ])
5665 done
5766 ])
67 else
68 AS_COMPILER_FLAG(-fno-strict-aliasing,
69 ERROR_CFLAGS="$ERROR_CFLAGS -fno-strict-aliasing")
5870 fi
5971 fi
6072
92104 ERROR_CXXFLAGS="$ERROR_CXXFLAGS -Werror"
93105
94106 dnl add exceptions
95 for f in '-Wno-non-virtual-dtor'
107 for f in '-Wno-non-virtual-dtor' '-fno-strict-aliasing'
96108 do
97109 AS_CXX_COMPILER_FLAG([$f], ERROR_CXXFLAGS="$ERROR_CXXFLAGS $f")
98110 done
113125 for f in 'no%E_EMPTY_DECLARATION' \
114126 'no%E_STATEMENT_NOT_REACHED' \
115127 'no%E_ARGUEMENT_MISMATCH' \
116 'no%E_MACRO_REDEFINED'
128 'no%E_MACRO_REDEFINED' \
129 'no%E_LOOP_NOT_ENTERED_AT_TOP'
117130 do
118131 AS_CXX_COMPILER_FLAG([-errwarn=%all,$f], [
119132 ERROR_CXXFLAGS="$ERROR_CXXFLAGS,$f"
242242 AG_GST_PARSE_SUBSYSTEM_DISABLE($1,TRACE)
243243 AG_GST_PARSE_SUBSYSTEM_DISABLE($1,ALLOC_TRACE)
244244 AG_GST_PARSE_SUBSYSTEM_DISABLE($1,REGISTRY)
245 AG_GST_PARSE_SUBSYSTEM_DISABLE($1,ENUMTYPES)
246 AG_GST_PARSE_SUBSYSTEM_DISABLE($1,INDEX)
247245 AG_GST_PARSE_SUBSYSTEM_DISABLE($1,PLUGIN)
248 AG_GST_PARSE_SUBSYSTEM_DISABLE($1,URI)
249246 AG_GST_PARSE_SUBSYSTEM_DISABLE($1,XML)
250247 ])
251248
261258
262259 printf "configure: *** Plug-ins without external dependencies that will NOT be built:\n"
263260 ( for i in $GST_PLUGINS_ALL; do
264 case $GST_PLUGINS_SELECTED in
265 *$i*)
261 case " $GST_PLUGINS_SELECTED " in
262 *\ $i\ *)
266263 ;;
267264 *)
268265 printf '\t'$i'\n'
44 AC_DEFUN([AG_GST_CHECK_FUNCTION],[
55 dnl #1: __PRETTY_FUNCTION__
66 AC_MSG_CHECKING(whether $CC implements __PRETTY_FUNCTION__)
7 AC_CACHE_VAL(have_pretty_function,[
7 AC_CACHE_VAL(gst_cv_have_pretty_function,[
88 AC_TRY_LINK([#include <stdio.h>],
99 [printf("%s", __PRETTY_FUNCTION__);],
10 have_pretty_function=yes,
11 have_pretty_function=no)
10 gst_cv_have_pretty_function=yes,
11 gst_cv_have_pretty_function=no)
1212 ])
13 AC_MSG_RESULT($have_pretty_function)
14 if test "$have_pretty_function" = yes; then
13 AC_MSG_RESULT($gst_cv_have_pretty_function)
14 if test "$gst_cv_have_pretty_function" = yes; then
1515 AC_DEFINE(HAVE_PRETTY_FUNCTION, 1,
1616 [defined if the compiler implements __PRETTY_FUNCTION__])
1717 fi
1818
1919 dnl #2: __FUNCTION__
2020 AC_MSG_CHECKING(whether $CC implements __FUNCTION__)
21 AC_CACHE_VAL(have_function,[
21 AC_CACHE_VAL(gst_cv_have_function,[
2222 AC_TRY_LINK([#include <stdio.h>],
2323 [printf("%s", __FUNCTION__);],
24 have_function=yes,
25 have_function=no)
24 gst_cv_have_function=yes,
25 gst_cv_have_function=no)
2626 ])
27 AC_MSG_RESULT($have_function)
28 if test "$have_function" = yes; then
27 AC_MSG_RESULT($gst_cv_have_function)
28 if test "$gst_cv_have_function" = yes; then
2929 AC_DEFINE(HAVE_FUNCTION, 1,
3030 [defined if the compiler implements __FUNCTION__])
3131 fi
3232
3333 dnl #3: __func__
3434 AC_MSG_CHECKING(whether $CC implements __func__)
35 AC_CACHE_VAL(have_func,[
35 AC_CACHE_VAL(gst_cv_have_func,[
3636 AC_TRY_LINK([#include <stdio.h>],
3737 [printf("%s", __func__);],
38 have_func=yes,
39 have_func=no)
38 gst_cv_have_func=yes,
39 gst_cv_have_func=no)
4040 ])
41 AC_MSG_RESULT($have_func)
42 if test "$have_func" = yes; then
41 AC_MSG_RESULT($gst_cv_have_func)
42 if test "$gst_cv_have_func" = yes; then
4343 AC_DEFINE(HAVE_FUNC, 1,
4444 [defined if the compiler implements __func__])
4545 fi
4646
4747 dnl now define FUNCTION to whatever works, and fallback to ""
48 if test "$have_pretty_function" = yes; then
48 if test "$gst_cv_have_pretty_function" = yes; then
4949 function=__PRETTY_FUNCTION__
5050 else
51 if test "$have_function" = yes; then
51 if test "$gst_cv_have_function" = yes; then
5252 function=__FUNCTION__
5353 else
54 if test "$have_func" = yes; then
54 if test "$gst_cv_have_func" = yes; then
5555 function=__func__
5656 else
5757 function=\"\"
0 dnl call this macro with the minimum required version as an argument
1 dnl this macro sets and AC_SUBSTs XML_CFLAGS and XML_LIBS
2 dnl it also sets LIBXML_PKG, used for the pkg-config file
3
4 AC_DEFUN([AG_GST_LIBXML2_CHECK],
5 [
6 dnl Minimum required version of libxml2
7 dnl default to 2.4.9 if not specified
8 LIBXML2_REQ=ifelse([$1],,2.4.9,[$1])
9 AC_SUBST(LIBXML2_REQ)
10
11 dnl check for libxml2
12 PKG_CHECK_MODULES(XML, libxml-2.0 >= $LIBXML2_REQ,
13 HAVE_LIBXML2=yes, [
14 AC_MSG_RESULT(no)
15 HAVE_LIBXML2=no
16 ])
17 if test "x$HAVE_LIBXML2" = "xyes"; then
18 AC_DEFINE(HAVE_LIBXML2, 1, [Define if libxml2 is available])
19 else
20 AC_MSG_ERROR([Need libxml2 for glib2 builds -- you should be able to do without it -- this needs fixing])
21 fi
22 dnl this is for the .pc file
23 LIBXML_PKG=', libxml-2.0'
24 AC_SUBST(LIBXML_PKG)
25 AC_SUBST(XML_LIBS)
26 AC_SUBST(XML_CFLAGS)
27
28 dnl XML_LIBS might pull in -lz without zlib actually being on the system, so
29 dnl try linking with these LIBS and CFLAGS
30 ac_save_CFLAGS=$CFLAGS
31 ac_save_LIBS=$LIBS
32 CFLAGS="$CFLAGS $XML_CFLAGS"
33 LIBS="$LIBS $XML_LIBS"
34 AC_TRY_LINK([
35 #include <libxml/tree.h>
36 #include <stdio.h>
37 ],[
38 /* function body */
39 ],
40 AC_MSG_NOTICE([Test xml2 program linked]),
41 AC_MSG_ERROR([Could not link libxml2 test program. Check if you have the necessary dependencies.])
42 )
43 CFLAGS="$ac_save_CFLAGS"
44 LIBS="$ac_save_LIBS"
45 ])
0 AC_DEFUN([AG_GST_BISON_CHECK],
1 [
2 dnl FIXME: check if AC_PROG_YACC is suitable here
3 dnl FIXME: make precious
4 AC_PATH_PROG(BISON_PATH, bison, no)
5 if test x$BISON_PATH = xno; then
6 AC_MSG_ERROR(Could not find bison)
7 fi
8
9 dnl check bison version
10 dnl we need version >= 1.875 for the reentrancy support
11 dnl in the parser.
12 dnl First lines observed: 'bison (GNU Bison) 2.3' or 'GNU Bison version 1.28'
13 bison_min_version=1.875
14 bison_version=`$BISON_PATH --version | head -n 1 | sed 's/^[[^0-9]]*//' | sed 's/[[^0-9]]*$//' | cut -d' ' -f1`
15 AC_MSG_CHECKING([bison version $bison_version >= $bison_min_version])
16
17 if perl -we "exit ((v$bison_version ge v$bison_min_version) ? 0 : 1)"; then
18 AC_MSG_RESULT([yes])
19 else
20 AC_MSG_ERROR([no])
21 fi
22 ])
23
24 AC_DEFUN([AG_GST_FLEX_CHECK],
25 [
26 dnl we require flex for building the parser
27 AC_PATH_PROG(FLEX_PATH, flex, no)
28 if test x$FLEX_PATH = xno; then
29 AC_MSG_ERROR(Could not find flex)
30 fi
31
32 dnl check flex version
33 dnl we need version >= 2.5.31 for the reentrancy support
34 dnl in the parser.
35 flex_min_version=2.5.31
36 flex_version=`$FLEX_PATH --version | head -n 1 | sed 's/^.* //' | sed 's/[[a-zA-Z]]*$//' | cut -d' ' -f1`
37 AC_MSG_CHECKING([flex version $flex_version >= $flex_min_version])
38 if perl -w <<EOF
39 (\$min_version_major, \$min_version_minor, \$min_version_micro ) = "$flex_min_version" =~ /(\d+)\.(\d+)\.(\d+)/;
40 (\$flex_version_major, \$flex_version_minor, \$flex_version_micro ) = "$flex_version" =~ /(\d+)\.(\d+)\.(\d+)/;
41 exit (((\$flex_version_major > \$min_version_major) ||
42 ((\$flex_version_major == \$min_version_major) &&
43 (\$flex_version_minor > \$min_version_minor)) ||
44 ((\$flex_version_major == \$min_version_major) &&
45 (\$flex_version_minor == \$min_version_minor) &&
46 (\$flex_version_micro >= \$min_version_micro)))
47 ? 0 : 1);
48 EOF
49 then
50 AC_MSG_RESULT(yes)
51 else
52 AC_MSG_ERROR([no])
53 fi
54 ])
88 AC_BEFORE([AS_PATH_PYTHON],[$1])dnl find python first
99
1010 build_plugin_docs=no
11 have_pygst=no
12 PKG_CHECK_MODULES(PYDOCSTUFF, [ gst-python-0.10 ], [have_pygst=yes],
13 [have_pygst=no])
1411 AC_MSG_CHECKING([whether to build plugin documentation])
15 if test x$enable_gtk_doc = xyes -a x$have_pygst = xyes; then
12 if test x$enable_gtk_doc = xyes; then
1613 build_plugin_docs=yes
1714 AC_MSG_RESULT([yes])
1815 else
19 AC_MSG_RESULT([no (gtk-doc/pygst disabled or not available)])
16 AC_MSG_RESULT([no (gtk-doc disabled or not available)])
2017 fi
2118
2219 AM_CONDITIONAL(ENABLE_PLUGIN_DOCS, test x$build_plugin_docs = xyes)
0 dnl macros for X-related detections
1 dnl AC_SUBST's HAVE_X, X_CFLAGS, X_LIBS
2 AC_DEFUN([AG_GST_CHECK_X],
3 [
4 AC_PATH_XTRA
5 ac_cflags_save="$CFLAGS"
6 ac_cppflags_save="$CPPFLAGS"
7 CFLAGS="$CFLAGS $X_CFLAGS"
8 CPPFLAGS="$CPPFLAGS $X_CFLAGS"
9
10 dnl now try to find the HEADER
11 AC_CHECK_HEADER(X11/Xlib.h, HAVE_X="yes", HAVE_X="no")
12
13 if test "x$HAVE_X" = "xno"
14 then
15 AC_MSG_NOTICE([cannot find X11 development files])
16 else
17 dnl this is much more than we want
18 X_LIBS="$X_LIBS $X_PRE_LIBS $X_EXTRA_LIBS"
19 dnl AC_PATH_XTRA only defines the path needed to find the X libs,
20 dnl it does not add the libs; therefore we add them here
21 X_LIBS="$X_LIBS -lX11"
22 AC_SUBST(X_CFLAGS)
23 AC_SUBST(X_LIBS)
24 fi
25 AC_SUBST(HAVE_X)
26
27 CFLAGS="$ac_cflags_save"
28 CPPFLAGS="$ac_cppflags_save"
29 ])
30
31 dnl *** XVideo ***
32 dnl Look for the PIC library first, Debian requires it.
33 dnl Check debian-devel archives for gory details.
34 dnl 20020110:
35 dnl At the moment XFree86 doesn't distribute shared libXv due
36 dnl to unstable API. On many platforms you CAN NOT link a shared
37 dnl lib to a static non-PIC lib. This is what the xvideo GStreamer
38 dnl plug-in wants to do. So Debian distributes a PIC compiled
39 dnl version of the static lib for plug-ins to link to when it is
40 dnl inappropriate to link the main application to libXv directly.
41 dnl FIXME: add check if this platform can support linking to a
42 dnl non-PIC libXv, if not then don not use Xv.
43 dnl FIXME: perhaps warn user if they have a shared libXv since
44 dnl this is an error until XFree86 starts shipping one
45 AC_DEFUN([AG_GST_CHECK_XV],
46 [
47 if test x$HAVE_X = xyes; then
48 AC_CHECK_LIB(Xv_pic, XvQueryExtension,
49 HAVE_XVIDEO="yes", HAVE_XVIDEO="no",
50 $X_LIBS -lXext)
51
52 if test x$HAVE_XVIDEO = xyes; then
53 XVIDEO_LIBS="-lXv_pic -lXext"
54 AC_SUBST(XVIDEO_LIBS)
55 else
56 dnl try again using something else if we didn't find it first
57 if test x$HAVE_XVIDEO = xno; then
58 AC_CHECK_LIB(Xv, XvQueryExtension,
59 HAVE_XVIDEO="yes", HAVE_XVIDEO="no",
60 $X_LIBS -lXext)
61
62 if test x$HAVE_XVIDEO = xyes; then
63 XVIDEO_LIBS="-lXv -lXext"
64 AC_SUBST(XVIDEO_LIBS)
65 fi
66 fi
67 fi
68 fi
69 ])
+0
-103
common/m4/iconv.m4 less more
0 # iconv.m4 serial AM4 (gettext-0.11.3)
1 dnl Copyright (C) 2000-2002 Free Software Foundation, Inc.
2 dnl This file is free software, distributed under the terms of the GNU
3 dnl General Public License. As a special exception to the GNU General
4 dnl Public License, this file may be distributed as part of a program
5 dnl that contains a configuration script generated by Autoconf, under
6 dnl the same distribution terms as the rest of that program.
7
8 dnl From Bruno Haible.
9
10 AC_DEFUN([AM_ICONV_LINKFLAGS_BODY],
11 [
12 dnl Prerequisites of AC_LIB_LINKFLAGS_BODY.
13 AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
14 AC_REQUIRE([AC_LIB_RPATH])
15
16 dnl Search for libiconv and define LIBICONV, LTLIBICONV and INCICONV
17 dnl accordingly.
18 AC_LIB_LINKFLAGS_BODY([iconv])
19 ])
20
21 AC_DEFUN([AM_ICONV_LINK],
22 [
23 dnl Some systems have iconv in libc, some have it in libiconv (OSF/1 and
24 dnl those with the standalone portable GNU libiconv installed).
25
26 dnl Search for libiconv and define LIBICONV, LTLIBICONV and INCICONV
27 dnl accordingly.
28 AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY])
29
30 dnl Add $INCICONV to CPPFLAGS before performing the following checks,
31 dnl because if the user has installed libiconv and not disabled its use
32 dnl via --without-libiconv-prefix, he wants to use it. The first
33 dnl AC_TRY_LINK will then fail, the second AC_TRY_LINK will succeed.
34 am_save_CPPFLAGS="$CPPFLAGS"
35 AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCICONV])
36
37 AC_CACHE_CHECK(for iconv, am_cv_func_iconv, [
38 am_cv_func_iconv="no, consider installing GNU libiconv"
39 am_cv_lib_iconv=no
40 AC_TRY_LINK([#include <stdlib.h>
41 #include <iconv.h>],
42 [iconv_t cd = iconv_open("","");
43 iconv(cd,NULL,NULL,NULL,NULL);
44 iconv_close(cd);],
45 am_cv_func_iconv=yes)
46 if test "$am_cv_func_iconv" != yes; then
47 am_save_LIBS="$LIBS"
48 LIBS="$LIBS $LIBICONV"
49 AC_TRY_LINK([#include <stdlib.h>
50 #include <iconv.h>],
51 [iconv_t cd = iconv_open("","");
52 iconv(cd,NULL,NULL,NULL,NULL);
53 iconv_close(cd);],
54 am_cv_lib_iconv=yes
55 am_cv_func_iconv=yes)
56 LIBS="$am_save_LIBS"
57 fi
58 ])
59 if test "$am_cv_func_iconv" = yes; then
60 AC_DEFINE(HAVE_ICONV, 1, [Define if you have the iconv() function.])
61 fi
62 if test "$am_cv_lib_iconv" = yes; then
63 AC_MSG_CHECKING([how to link with libiconv])
64 AC_MSG_RESULT([$LIBICONV])
65 else
66 dnl If $LIBICONV didn't lead to a usable library, we don't need $INCICONV
67 dnl either.
68 CPPFLAGS="$am_save_CPPFLAGS"
69 LIBICONV=
70 LTLIBICONV=
71 fi
72 AC_SUBST(LIBICONV)
73 AC_SUBST(LTLIBICONV)
74 ])
75
76 AC_DEFUN([AM_ICONV],
77 [
78 AM_ICONV_LINK
79 if test "$am_cv_func_iconv" = yes; then
80 AC_MSG_CHECKING([for iconv declaration])
81 AC_CACHE_VAL(am_cv_proto_iconv, [
82 AC_TRY_COMPILE([
83 #include <stdlib.h>
84 #include <iconv.h>
85 extern
86 #ifdef __cplusplus
87 "C"
88 #endif
89 #if defined(__STDC__) || defined(__cplusplus)
90 size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);
91 #else
92 size_t iconv();
93 #endif
94 ], [], am_cv_proto_iconv_arg1="", am_cv_proto_iconv_arg1="const")
95 am_cv_proto_iconv="extern size_t iconv (iconv_t cd, $am_cv_proto_iconv_arg1 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);"])
96 am_cv_proto_iconv=`echo "[$]am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'`
97 AC_MSG_RESULT([$]{ac_t:-
98 }[$]am_cv_proto_iconv)
99 AC_DEFINE_UNQUOTED(ICONV_CONST, $am_cv_proto_iconv_arg1,
100 [Define as const if the declaration of iconv() needs const.])
101 fi
102 ])
+0
-72
common/m4/intdiv0.m4 less more
0 # intdiv0.m4 serial 1 (gettext-0.11.3)
1 dnl Copyright (C) 2002 Free Software Foundation, Inc.
2 dnl This file is free software, distributed under the terms of the GNU
3 dnl General Public License. As a special exception to the GNU General
4 dnl Public License, this file may be distributed as part of a program
5 dnl that contains a configuration script generated by Autoconf, under
6 dnl the same distribution terms as the rest of that program.
7
8 dnl From Bruno Haible.
9
10 AC_DEFUN([gt_INTDIV0],
11 [
12 AC_REQUIRE([AC_PROG_CC])dnl
13 AC_REQUIRE([AC_CANONICAL_HOST])dnl
14
15 AC_CACHE_CHECK([whether integer division by zero raises SIGFPE],
16 gt_cv_int_divbyzero_sigfpe,
17 [
18 AC_TRY_RUN([
19 #include <stdlib.h>
20 #include <signal.h>
21
22 static void
23 #ifdef __cplusplus
24 sigfpe_handler (int sig)
25 #else
26 sigfpe_handler (sig) int sig;
27 #endif
28 {
29 /* Exit with code 0 if SIGFPE, with code 1 if any other signal. */
30 exit (sig != SIGFPE);
31 }
32
33 int x = 1;
34 int y = 0;
35 int z;
36 int nan;
37
38 int main ()
39 {
40 signal (SIGFPE, sigfpe_handler);
41 /* IRIX and AIX (when "xlc -qcheck" is used) yield signal SIGTRAP. */
42 #if (defined (__sgi) || defined (_AIX)) && defined (SIGTRAP)
43 signal (SIGTRAP, sigfpe_handler);
44 #endif
45 /* Linux/SPARC yields signal SIGILL. */
46 #if defined (__sparc__) && defined (__linux__)
47 signal (SIGILL, sigfpe_handler);
48 #endif
49
50 z = x / y;
51 nan = y / y;
52 exit (1);
53 }
54 ], gt_cv_int_divbyzero_sigfpe=yes, gt_cv_int_divbyzero_sigfpe=no,
55 [
56 # Guess based on the CPU.
57 case "$host_cpu" in
58 alpha* | i[34567]86 | m68k | s390*)
59 gt_cv_int_divbyzero_sigfpe="guessing yes";;
60 *)
61 gt_cv_int_divbyzero_sigfpe="guessing no";;
62 esac
63 ])
64 ])
65 case "$gt_cv_int_divbyzero_sigfpe" in
66 *yes) value=1;;
67 *) value=0;;
68 esac
69 AC_DEFINE_UNQUOTED(INTDIV0_RAISES_SIGFPE, $value,
70 [Define if integer division by zero raises signal SIGFPE.])
71 ])
+0
-32
common/m4/inttypes-pri.m4 less more
0 # inttypes-pri.m4 serial 1 (gettext-0.11.4)
1 dnl Copyright (C) 1997-2002 Free Software Foundation, Inc.
2 dnl This file is free software, distributed under the terms of the GNU
3 dnl General Public License. As a special exception to the GNU General
4 dnl Public License, this file may be distributed as part of a program
5 dnl that contains a configuration script generated by Autoconf, under
6 dnl the same distribution terms as the rest of that program.
7
8 dnl From Bruno Haible.
9
10 # Define PRI_MACROS_BROKEN if <inttypes.h> exists and defines the PRI*
11 # macros to non-string values. This is the case on AIX 4.3.3.
12
13 AC_DEFUN([gt_INTTYPES_PRI],
14 [
15 AC_REQUIRE([gt_HEADER_INTTYPES_H])
16 if test $gt_cv_header_inttypes_h = yes; then
17 AC_CACHE_CHECK([whether the inttypes.h PRIxNN macros are broken],
18 gt_cv_inttypes_pri_broken,
19 [
20 AC_TRY_COMPILE([#include <inttypes.h>
21 #ifdef PRId32
22 char *p = PRId32;
23 #endif
24 ], [], gt_cv_inttypes_pri_broken=no, gt_cv_inttypes_pri_broken=yes)
25 ])
26 fi
27 if test "$gt_cv_inttypes_pri_broken" = yes; then
28 AC_DEFINE_UNQUOTED(PRI_MACROS_BROKEN, 1,
29 [Define if <inttypes.h> exists and defines unusable PRI* macros.])
30 fi
31 ])
+0
-27
common/m4/inttypes.m4 less more
0 # inttypes.m4 serial 1 (gettext-0.11.4)
1 dnl Copyright (C) 1997-2002 Free Software Foundation, Inc.
2 dnl This file is free software, distributed under the terms of the GNU
3 dnl General Public License. As a special exception to the GNU General
4 dnl Public License, this file may be distributed as part of a program
5 dnl that contains a configuration script generated by Autoconf, under
6 dnl the same distribution terms as the rest of that program.
7
8 dnl From Paul Eggert.
9
10 # Define HAVE_INTTYPES_H if <inttypes.h> exists and doesn't clash with
11 # <sys/types.h>.
12
13 AC_DEFUN([gt_HEADER_INTTYPES_H],
14 [
15 AC_CACHE_CHECK([for inttypes.h], gt_cv_header_inttypes_h,
16 [
17 AC_TRY_COMPILE(
18 [#include <sys/types.h>
19 #include <inttypes.h>],
20 [], gt_cv_header_inttypes_h=yes, gt_cv_header_inttypes_h=no)
21 ])
22 if test $gt_cv_header_inttypes_h = yes; then
23 AC_DEFINE_UNQUOTED(HAVE_INTTYPES_H, 1,
24 [Define if <inttypes.h> exists and doesn't clash with <sys/types.h>.])
25 fi
26 ])
+0
-28
common/m4/inttypes_h.m4 less more
0 # inttypes_h.m4 serial 4 (gettext-0.11.4)
1 dnl Copyright (C) 1997-2002 Free Software Foundation, Inc.
2 dnl This file is free software, distributed under the terms of the GNU
3 dnl General Public License. As a special exception to the GNU General
4 dnl Public License, this file may be distributed as part of a program
5 dnl that contains a configuration script generated by Autoconf, under
6 dnl the same distribution terms as the rest of that program.
7
8 dnl From Paul Eggert.
9
10 # Define HAVE_INTTYPES_H_WITH_UINTMAX if <inttypes.h> exists,
11 # doesn't clash with <sys/types.h>, and declares uintmax_t.
12
13 AC_DEFUN([jm_AC_HEADER_INTTYPES_H],
14 [
15 AC_CACHE_CHECK([for inttypes.h], jm_ac_cv_header_inttypes_h,
16 [AC_TRY_COMPILE(
17 [#include <sys/types.h>
18 #include <inttypes.h>],
19 [uintmax_t i = (uintmax_t) -1;],
20 jm_ac_cv_header_inttypes_h=yes,
21 jm_ac_cv_header_inttypes_h=no)])
22 if test $jm_ac_cv_header_inttypes_h = yes; then
23 AC_DEFINE_UNQUOTED(HAVE_INTTYPES_H_WITH_UINTMAX, 1,
24 [Define if <inttypes.h> exists, doesn't clash with <sys/types.h>,
25 and declares uintmax_t. ])
26 fi
27 ])
+0
-26
common/m4/isc-posix.m4 less more
0 # isc-posix.m4 serial 2 (gettext-0.11.2)
1 dnl Copyright (C) 1995-2002 Free Software Foundation, Inc.
2 dnl This file is free software, distributed under the terms of the GNU
3 dnl General Public License. As a special exception to the GNU General
4 dnl Public License, this file may be distributed as part of a program
5 dnl that contains a configuration script generated by Autoconf, under
6 dnl the same distribution terms as the rest of that program.
7
8 # This file is not needed with autoconf-2.53 and newer. Remove it in 2005.
9
10 # This test replaces the one in autoconf.
11 # Currently this macro should have the same name as the autoconf macro
12 # because gettext's gettext.m4 (distributed in the automake package)
13 # still uses it. Otherwise, the use in gettext.m4 makes autoheader
14 # give these diagnostics:
15 # configure.in:556: AC_TRY_COMPILE was called before AC_ISC_POSIX
16 # configure.in:556: AC_TRY_RUN was called before AC_ISC_POSIX
17
18 undefine([AC_ISC_POSIX])
19
20 AC_DEFUN([AC_ISC_POSIX],
21 [
22 dnl This test replaces the obsolescent AC_ISC_POSIX kludge.
23 AC_CHECK_LIB(cposix, strerror, [LIBS="$LIBS -lcposix"])
24 ]
25 )
+0
-32
common/m4/lcmessage.m4 less more
0 # lcmessage.m4 serial 3 (gettext-0.11.3)
1 dnl Copyright (C) 1995-2002 Free Software Foundation, Inc.
2 dnl This file is free software, distributed under the terms of the GNU
3 dnl General Public License. As a special exception to the GNU General
4 dnl Public License, this file may be distributed as part of a program
5 dnl that contains a configuration script generated by Autoconf, under
6 dnl the same distribution terms as the rest of that program.
7 dnl
8 dnl This file can can be used in projects which are not available under
9 dnl the GNU General Public License or the GNU Library General Public
10 dnl License but which still want to provide support for the GNU gettext
11 dnl functionality.
12 dnl Please note that the actual code of the GNU gettext library is covered
13 dnl by the GNU Library General Public License, and the rest of the GNU
14 dnl gettext package package is covered by the GNU General Public License.
15 dnl They are *not* in the public domain.
16
17 dnl Authors:
18 dnl Ulrich Drepper <drepper@cygnus.com>, 1995.
19
20 # Check whether LC_MESSAGES is available in <locale.h>.
21
22 AC_DEFUN([AM_LC_MESSAGES],
23 [
24 AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES,
25 [AC_TRY_LINK([#include <locale.h>], [return LC_MESSAGES],
26 am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)])
27 if test $am_cv_val_LC_MESSAGES = yes; then
28 AC_DEFINE(HAVE_LC_MESSAGES, 1,
29 [Define if your <locale.h> file defines LC_MESSAGES.])
30 fi
31 ])
+0
-97
common/m4/lib-ld.m4 less more
0 # lib-ld.m4 serial 1 (gettext-0.11)
1 dnl Copyright (C) 1996-2002 Free Software Foundation, Inc.
2 dnl This file is free software, distributed under the terms of the GNU
3 dnl General Public License. As a special exception to the GNU General
4 dnl Public License, this file may be distributed as part of a program
5 dnl that contains a configuration script generated by Autoconf, under
6 dnl the same distribution terms as the rest of that program.
7
8 dnl Subroutines of libtool.m4,
9 dnl with replacements s/AC_/AC_LIB/ and s/lt_cv/acl_cv/ to avoid collision
10 dnl with libtool.m4.
11
12 dnl From libtool-1.4. Sets the variable with_gnu_ld to yes or no.
13 AC_DEFUN([AC_LIB_PROG_LD_GNU],
14 [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], acl_cv_prog_gnu_ld,
15 [# I'd rather use --version here, but apparently some GNU ld's only accept -v.
16 if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
17 acl_cv_prog_gnu_ld=yes
18 else
19 acl_cv_prog_gnu_ld=no
20 fi])
21 with_gnu_ld=$acl_cv_prog_gnu_ld
22 ])
23
24 dnl From libtool-1.4. Sets the variable LD.
25 AC_DEFUN([AC_LIB_PROG_LD],
26 [AC_ARG_WITH(gnu-ld,
27 [ --with-gnu-ld assume the C compiler uses GNU ld [default=no]],
28 test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
29 AC_REQUIRE([AC_PROG_CC])dnl
30 AC_REQUIRE([AC_CANONICAL_HOST])dnl
31 ac_prog=ld
32 if test "$GCC" = yes; then
33 # Check if gcc -print-prog-name=ld gives a path.
34 AC_MSG_CHECKING([for ld used by GCC])
35 case $host in
36 *-*-mingw*)
37 # gcc leaves a trailing carriage return which upsets mingw
38 ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
39 *)
40 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
41 esac
42 case $ac_prog in
43 # Accept absolute paths.
44 [[\\/]* | [A-Za-z]:[\\/]*)]
45 [re_direlt='/[^/][^/]*/\.\./']
46 # Canonicalize the path of ld
47 ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
48 while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
49 ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
50 done
51 test -z "$LD" && LD="$ac_prog"
52 ;;
53 "")
54 # If it fails, then pretend we aren't using GCC.
55 ac_prog=ld
56 ;;
57 *)
58 # If it is relative, then search for the first ld in PATH.
59 with_gnu_ld=unknown
60 ;;
61 esac
62 elif test "$with_gnu_ld" = yes; then
63 AC_MSG_CHECKING([for GNU ld])
64 else
65 AC_MSG_CHECKING([for non-GNU ld])
66 fi
67 AC_CACHE_VAL(acl_cv_path_LD,
68 [if test -z "$LD"; then
69 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}"
70 for ac_dir in $PATH; do
71 test -z "$ac_dir" && ac_dir=.
72 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
73 acl_cv_path_LD="$ac_dir/$ac_prog"
74 # Check to see if the program is GNU ld. I'd rather use --version,
75 # but apparently some GNU ld's only accept -v.
76 # Break only if it was the GNU/non-GNU ld that we prefer.
77 if "$acl_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
78 test "$with_gnu_ld" != no && break
79 else
80 test "$with_gnu_ld" != yes && break
81 fi
82 fi
83 done
84 IFS="$ac_save_ifs"
85 else
86 acl_cv_path_LD="$LD" # Let the user override the test with a path.
87 fi])
88 LD="$acl_cv_path_LD"
89 if test -n "$LD"; then
90 AC_MSG_RESULT($LD)
91 else
92 AC_MSG_RESULT(no)
93 fi
94 test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
95 AC_LIB_PROG_LD_GNU
96 ])
+0
-554
common/m4/lib-link.m4 less more
0 # lib-link.m4 serial 3 (gettext-0.11.3)
1 dnl Copyright (C) 2001-2002 Free Software Foundation, Inc.
2 dnl This file is free software, distributed under the terms of the GNU
3 dnl General Public License. As a special exception to the GNU General
4 dnl Public License, this file may be distributed as part of a program
5 dnl that contains a configuration script generated by Autoconf, under
6 dnl the same distribution terms as the rest of that program.
7
8 dnl From Bruno Haible.
9
10 dnl AC_LIB_LINKFLAGS(name [, dependencies]) searches for libname and
11 dnl the libraries corresponding to explicit and implicit dependencies.
12 dnl Sets and AC_SUBSTs the LIB${NAME} and LTLIB${NAME} variables and
13 dnl augments the CPPFLAGS variable.
14 AC_DEFUN([AC_LIB_LINKFLAGS],
15 [
16 AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
17 AC_REQUIRE([AC_LIB_RPATH])
18 define([Name],[translit([$1],[./-], [___])])
19 define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
20 [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
21 AC_CACHE_CHECK([how to link with lib[]$1], [ac_cv_lib[]Name[]_libs], [
22 AC_LIB_LINKFLAGS_BODY([$1], [$2])
23 ac_cv_lib[]Name[]_libs="$LIB[]NAME"
24 ac_cv_lib[]Name[]_ltlibs="$LTLIB[]NAME"
25 ac_cv_lib[]Name[]_cppflags="$INC[]NAME"
26 ])
27 LIB[]NAME="$ac_cv_lib[]Name[]_libs"
28 LTLIB[]NAME="$ac_cv_lib[]Name[]_ltlibs"
29 INC[]NAME="$ac_cv_lib[]Name[]_cppflags"
30 AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME)
31 AC_SUBST([LIB]NAME)
32 AC_SUBST([LTLIB]NAME)
33 dnl Also set HAVE_LIB[]NAME so that AC_LIB_HAVE_LINKFLAGS can reuse the
34 dnl results of this search when this library appears as a dependency.
35 HAVE_LIB[]NAME=yes
36 undefine([Name])
37 undefine([NAME])
38 ])
39
40 dnl AC_LIB_HAVE_LINKFLAGS(name, dependencies, includes, testcode)
41 dnl searches for libname and the libraries corresponding to explicit and
42 dnl implicit dependencies, together with the specified include files and
43 dnl the ability to compile and link the specified testcode. If found, it
44 dnl sets and AC_SUBSTs HAVE_LIB${NAME}=yes and the LIB${NAME} and
45 dnl LTLIB${NAME} variables and augments the CPPFLAGS variable, and
46 dnl #defines HAVE_LIB${NAME} to 1. Otherwise, it sets and AC_SUBSTs
47 dnl HAVE_LIB${NAME}=no and LIB${NAME} and LTLIB${NAME} to empty.
48 AC_DEFUN([AC_LIB_HAVE_LINKFLAGS],
49 [
50 AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
51 AC_REQUIRE([AC_LIB_RPATH])
52 define([Name],[translit([$1],[./-], [___])])
53 define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
54 [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
55
56 dnl Search for lib[]Name and define LIB[]NAME, LTLIB[]NAME and INC[]NAME
57 dnl accordingly.
58 AC_LIB_LINKFLAGS_BODY([$1], [$2])
59
60 dnl Add $INC[]NAME to CPPFLAGS before performing the following checks,
61 dnl because if the user has installed lib[]Name and not disabled its use
62 dnl via --without-lib[]Name-prefix, he wants to use it.
63 ac_save_CPPFLAGS="$CPPFLAGS"
64 AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME)
65
66 AC_CACHE_CHECK([for lib[]$1], [ac_cv_lib[]Name], [
67 ac_save_LIBS="$LIBS"
68 LIBS="$LIBS $LIB[]NAME"
69 AC_TRY_LINK([$3], [$4], [ac_cv_lib[]Name=yes], [ac_cv_lib[]Name=no])
70 LIBS="$ac_save_LIBS"
71 ])
72 if test "$ac_cv_lib[]Name" = yes; then
73 HAVE_LIB[]NAME=yes
74 AC_DEFINE([HAVE_LIB]NAME, 1, [Define if you have the $1 library.])
75 AC_MSG_CHECKING([how to link with lib[]$1])
76 AC_MSG_RESULT([$LIB[]NAME])
77 else
78 HAVE_LIB[]NAME=no
79 dnl If $LIB[]NAME didn't lead to a usable library, we don't need
80 dnl $INC[]NAME either.
81 CPPFLAGS="$ac_save_CPPFLAGS"
82 LIB[]NAME=
83 LTLIB[]NAME=
84 fi
85 AC_SUBST([HAVE_LIB]NAME)
86 AC_SUBST([LIB]NAME)
87 AC_SUBST([LTLIB]NAME)
88 undefine([Name])
89 undefine([NAME])
90 ])
91
92 dnl Determine the platform dependent parameters needed to use rpath:
93 dnl libext, shlibext, hardcode_libdir_flag_spec, hardcode_libdir_separator,
94 dnl hardcode_direct, hardcode_minus_L,
95 dnl sys_lib_search_path_spec, sys_lib_dlsearch_path_spec.
96 AC_DEFUN([AC_LIB_RPATH],
97 [
98 AC_REQUIRE([AC_PROG_CC]) dnl we use $CC, $GCC, $LDFLAGS
99 AC_REQUIRE([AC_LIB_PROG_LD]) dnl we use $LD, $with_gnu_ld
100 AC_REQUIRE([AC_CANONICAL_HOST]) dnl we use $host
101 AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT]) dnl we use $ac_aux_dir
102 AC_CACHE_CHECK([for shared library run path origin], acl_cv_rpath, [
103 CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \
104 ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh
105 . ./conftest.sh
106 rm -f ./conftest.sh
107 acl_cv_rpath=done
108 ])
109 wl="$acl_cv_wl"
110 libext="$acl_cv_libext"
111 shlibext="$acl_cv_shlibext"
112 hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec"
113 hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator"
114 hardcode_direct="$acl_cv_hardcode_direct"
115 hardcode_minus_L="$acl_cv_hardcode_minus_L"
116 sys_lib_search_path_spec="$acl_cv_sys_lib_search_path_spec"
117 sys_lib_dlsearch_path_spec="$acl_cv_sys_lib_dlsearch_path_spec"
118 dnl Determine whether the user wants rpath handling at all.
119 AC_ARG_ENABLE(rpath,
120 [ --disable-rpath do not hardcode runtime library paths],
121 :, enable_rpath=yes)
122 ])
123
124 dnl AC_LIB_LINKFLAGS_BODY(name [, dependencies]) searches for libname and
125 dnl the libraries corresponding to explicit and implicit dependencies.
126 dnl Sets the LIB${NAME}, LTLIB${NAME} and INC${NAME} variables.
127 AC_DEFUN([AC_LIB_LINKFLAGS_BODY],
128 [
129 define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-],
130 [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])])
131 dnl By default, look in $includedir and $libdir.
132 use_additional=yes
133 AC_LIB_WITH_FINAL_PREFIX([
134 eval additional_includedir=\"$includedir\"
135 eval additional_libdir=\"$libdir\"
136 ])
137 AC_ARG_WITH([lib$1-prefix],
138 [ --with-lib$1-prefix[=DIR] search for lib$1 in DIR/include and DIR/lib
139 --without-lib$1-prefix don't search for lib$1 in includedir and libdir],
140 [
141 if test "X$withval" = "Xno"; then
142 use_additional=no
143 else
144 if test "X$withval" = "X"; then
145 AC_LIB_WITH_FINAL_PREFIX([
146 eval additional_includedir=\"$includedir\"
147 eval additional_libdir=\"$libdir\"
148 ])
149 else
150 additional_includedir="$withval/include"
151 additional_libdir="$withval/lib"
152 fi
153 fi
154 ])
155 dnl Search the library and its dependencies in $additional_libdir and
156 dnl $LDFLAGS. Using breadth-first-seach.
157 LIB[]NAME=
158 LTLIB[]NAME=
159 INC[]NAME=
160 rpathdirs=
161 ltrpathdirs=
162 names_already_handled=
163 names_next_round='$1 $2'
164 while test -n "$names_next_round"; do
165 names_this_round="$names_next_round"
166 names_next_round=
167 for name in $names_this_round; do
168 already_handled=
169 for n in $names_already_handled; do
170 if test "$n" = "$name"; then
171 already_handled=yes
172 break
173 fi
174 done
175 if test -z "$already_handled"; then
176 names_already_handled="$names_already_handled $name"
177 dnl See if it was already located by an earlier AC_LIB_LINKFLAGS
178 dnl or AC_LIB_HAVE_LINKFLAGS call.
179 uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'`
180 eval value=\"\$HAVE_LIB$uppername\"
181 if test -n "$value"; then
182 if test "$value" = yes; then
183 eval value=\"\$LIB$uppername\"
184 test -z "$value" || LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$value"
185 eval value=\"\$LTLIB$uppername\"
186 test -z "$value" || LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$value"
187 else
188 dnl An earlier call to AC_LIB_HAVE_LINKFLAGS has determined
189 dnl that this library doesn't exist. So just drop it.
190 :
191 fi
192 else
193 dnl Search the library lib$name in $additional_libdir and $LDFLAGS
194 dnl and the already constructed $LIBNAME/$LTLIBNAME.
195 found_dir=
196 found_la=
197 found_so=
198 found_a=
199 if test $use_additional = yes; then
200 if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then
201 found_dir="$additional_libdir"
202 found_so="$additional_libdir/lib$name.$shlibext"
203 if test -f "$additional_libdir/lib$name.la"; then
204 found_la="$additional_libdir/lib$name.la"
205 fi
206 else
207 if test -f "$additional_libdir/lib$name.$libext"; then
208 found_dir="$additional_libdir"
209 found_a="$additional_libdir/lib$name.$libext"
210 if test -f "$additional_libdir/lib$name.la"; then
211 found_la="$additional_libdir/lib$name.la"
212 fi
213 fi
214 fi
215 fi
216 if test "X$found_dir" = "X"; then
217 for x in $LDFLAGS $LTLIB[]NAME; do
218 AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
219 case "$x" in
220 -L*)
221 dir=`echo "X$x" | sed -e 's/^X-L//'`
222 if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then
223 found_dir="$dir"
224 found_so="$dir/lib$name.$shlibext"
225 if test -f "$dir/lib$name.la"; then
226 found_la="$dir/lib$name.la"
227 fi
228 else
229 if test -f "$dir/lib$name.$libext"; then
230 found_dir="$dir"
231 found_a="$dir/lib$name.$libext"
232 if test -f "$dir/lib$name.la"; then
233 found_la="$dir/lib$name.la"
234 fi
235 fi
236 fi
237 ;;
238 esac
239 if test "X$found_dir" != "X"; then
240 break
241 fi
242 done
243 fi
244 if test "X$found_dir" != "X"; then
245 dnl Found the library.
246 LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$found_dir -l$name"
247 if test "X$found_so" != "X"; then
248 dnl Linking with a shared library. We attempt to hardcode its
249 dnl directory into the executable's runpath, unless it's the
250 dnl standard /usr/lib.
251 if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then
252 dnl No hardcoding is needed.
253 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
254 else
255 dnl Use an explicit option to hardcode DIR into the resulting
256 dnl binary.
257 dnl Potentially add DIR to ltrpathdirs.
258 dnl The ltrpathdirs will be appended to $LTLIBNAME at the end.
259 haveit=
260 for x in $ltrpathdirs; do
261 if test "X$x" = "X$found_dir"; then
262 haveit=yes
263 break
264 fi
265 done
266 if test -z "$haveit"; then
267 ltrpathdirs="$ltrpathdirs $found_dir"
268 fi
269 dnl The hardcoding into $LIBNAME is system dependent.
270 if test "$hardcode_direct" = yes; then
271 dnl Using DIR/libNAME.so during linking hardcodes DIR into the
272 dnl resulting binary.
273 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
274 else
275 if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then
276 dnl Use an explicit option to hardcode DIR into the resulting
277 dnl binary.
278 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
279 dnl Potentially add DIR to rpathdirs.
280 dnl The rpathdirs will be appended to $LIBNAME at the end.
281 haveit=
282 for x in $rpathdirs; do
283 if test "X$x" = "X$found_dir"; then
284 haveit=yes
285 break
286 fi
287 done
288 if test -z "$haveit"; then
289 rpathdirs="$rpathdirs $found_dir"
290 fi
291 else
292 dnl Rely on "-L$found_dir".
293 dnl But don't add it if it's already contained in the LDFLAGS
294 dnl or the already constructed $LIBNAME
295 haveit=
296 for x in $LDFLAGS $LIB[]NAME; do
297 AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
298 if test "X$x" = "X-L$found_dir"; then
299 haveit=yes
300 break
301 fi
302 done
303 if test -z "$haveit"; then
304 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir"
305 fi
306 if test "$hardcode_minus_L" != no; then
307 dnl FIXME: Not sure whether we should use
308 dnl "-L$found_dir -l$name" or "-L$found_dir $found_so"
309 dnl here.
310 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so"
311 else
312 dnl We cannot use $hardcode_runpath_var and LD_RUN_PATH
313 dnl here, because this doesn't fit in flags passed to the
314 dnl compiler. So give up. No hardcoding. This affects only
315 dnl very old systems.
316 dnl FIXME: Not sure whether we should use
317 dnl "-L$found_dir -l$name" or "-L$found_dir $found_so"
318 dnl here.
319 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name"
320 fi
321 fi
322 fi
323 fi
324 else
325 if test "X$found_a" != "X"; then
326 dnl Linking with a static library.
327 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_a"
328 else
329 dnl We shouldn't come here, but anyway it's good to have a
330 dnl fallback.
331 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir -l$name"
332 fi
333 fi
334 dnl Assume the include files are nearby.
335 additional_includedir=
336 case "$found_dir" in
337 */lib | */lib/)
338 basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'`
339 additional_includedir="$basedir/include"
340 ;;
341 esac
342 if test "X$additional_includedir" != "X"; then
343 dnl Potentially add $additional_includedir to $INCNAME.
344 dnl But don't add it
345 dnl 1. if it's the standard /usr/include,
346 dnl 2. if it's /usr/local/include and we are using GCC on Linux,
347 dnl 3. if it's already present in $CPPFLAGS or the already
348 dnl constructed $INCNAME,
349 dnl 4. if it doesn't exist as a directory.
350 if test "X$additional_includedir" != "X/usr/include"; then
351 haveit=
352 if test "X$additional_includedir" = "X/usr/local/include"; then
353 if test -n "$GCC"; then
354 case $host_os in
355 linux*) haveit=yes;;
356 esac
357 fi
358 fi
359 if test -z "$haveit"; then
360 for x in $CPPFLAGS $INC[]NAME; do
361 AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
362 if test "X$x" = "X-I$additional_includedir"; then
363 haveit=yes
364 break
365 fi
366 done
367 if test -z "$haveit"; then
368 if test -d "$additional_includedir"; then
369 dnl Really add $additional_includedir to $INCNAME.
370 INC[]NAME="${INC[]NAME}${INC[]NAME:+ }-I$additional_includedir"
371 fi
372 fi
373 fi
374 fi
375 fi
376 dnl Look for dependencies.
377 if test -n "$found_la"; then
378 dnl Read the .la file. It defines the variables
379 dnl dlname, library_names, old_library, dependency_libs, current,
380 dnl age, revision, installed, dlopen, dlpreopen, libdir.
381 save_libdir="$libdir"
382 case "$found_la" in
383 */* | *\\*) . "$found_la" ;;
384 *) . "./$found_la" ;;
385 esac
386 libdir="$save_libdir"
387 dnl We use only dependency_libs.
388 for dep in $dependency_libs; do
389 case "$dep" in
390 -L*)
391 additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'`
392 dnl Potentially add $additional_libdir to $LIBNAME and $LTLIBNAME.
393 dnl But don't add it
394 dnl 1. if it's the standard /usr/lib,
395 dnl 2. if it's /usr/local/lib and we are using GCC on Linux,
396 dnl 3. if it's already present in $LDFLAGS or the already
397 dnl constructed $LIBNAME,
398 dnl 4. if it doesn't exist as a directory.
399 if test "X$additional_libdir" != "X/usr/lib"; then
400 haveit=
401 if test "X$additional_libdir" = "X/usr/local/lib"; then
402 if test -n "$GCC"; then
403 case $host_os in
404 linux*) haveit=yes;;
405 esac
406 fi
407 fi
408 if test -z "$haveit"; then
409 haveit=
410 for x in $LDFLAGS $LIB[]NAME; do
411 AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
412 if test "X$x" = "X-L$additional_libdir"; then
413 haveit=yes
414 break
415 fi
416 done
417 if test -z "$haveit"; then
418 if test -d "$additional_libdir"; then
419 dnl Really add $additional_libdir to $LIBNAME.
420 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$additional_libdir"
421 fi
422 fi
423 haveit=
424 for x in $LDFLAGS $LTLIB[]NAME; do
425 AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
426 if test "X$x" = "X-L$additional_libdir"; then
427 haveit=yes
428 break
429 fi
430 done
431 if test -z "$haveit"; then
432 if test -d "$additional_libdir"; then
433 dnl Really add $additional_libdir to $LTLIBNAME.
434 LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$additional_libdir"
435 fi
436 fi
437 fi
438 fi
439 ;;
440 -R*)
441 dir=`echo "X$dep" | sed -e 's/^X-R//'`
442 if test "$enable_rpath" != no; then
443 dnl Potentially add DIR to rpathdirs.
444 dnl The rpathdirs will be appended to $LIBNAME at the end.
445 haveit=
446 for x in $rpathdirs; do
447 if test "X$x" = "X$dir"; then
448 haveit=yes
449 break
450 fi
451 done
452 if test -z "$haveit"; then
453 rpathdirs="$rpathdirs $dir"
454 fi
455 dnl Potentially add DIR to ltrpathdirs.
456 dnl The ltrpathdirs will be appended to $LTLIBNAME at the end.
457 haveit=
458 for x in $ltrpathdirs; do
459 if test "X$x" = "X$dir"; then
460 haveit=yes
461 break
462 fi
463 done
464 if test -z "$haveit"; then
465 ltrpathdirs="$ltrpathdirs $dir"
466 fi
467 fi
468 ;;
469 -l*)
470 dnl Handle this in the next round.
471 names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'`
472 ;;
473 *.la)
474 dnl Handle this in the next round. Throw away the .la's
475 dnl directory; it is already contained in a preceding -L
476 dnl option.
477 names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'`
478 ;;
479 *)
480 dnl Most likely an immediate library name.
481 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$dep"
482 LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$dep"
483 ;;
484 esac
485 done
486 fi
487 else
488 dnl Didn't find the library; assume it is in the system directories
489 dnl known to the linker and runtime loader. (All the system
490 dnl directories known to the linker should also be known to the
491 dnl runtime loader, otherwise the system is severely misconfigured.)
492 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name"
493 LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-l$name"
494 fi
495 fi
496 fi
497 done
498 done
499 if test "X$rpathdirs" != "X"; then
500 if test -n "$hardcode_libdir_separator"; then
501 dnl Weird platform: only the last -rpath option counts, the user must
502 dnl pass all path elements in one option. We can arrange that for a
503 dnl single library, but not when more than one $LIBNAMEs are used.
504 alldirs=
505 for found_dir in $rpathdirs; do
506 alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir"
507 done
508 dnl Note: hardcode_libdir_flag_spec uses $libdir and $wl.
509 acl_save_libdir="$libdir"
510 libdir="$alldirs"
511 eval flag=\"$hardcode_libdir_flag_spec\"
512 libdir="$acl_save_libdir"
513 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag"
514 else
515 dnl The -rpath options are cumulative.
516 for found_dir in $rpathdirs; do
517 acl_save_libdir="$libdir"
518 libdir="$found_dir"
519 eval flag=\"$hardcode_libdir_flag_spec\"
520 libdir="$acl_save_libdir"
521 LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag"
522 done
523 fi
524 fi
525 if test "X$ltrpathdirs" != "X"; then
526 dnl When using libtool, the option that works for both libraries and
527 dnl executables is -R. The -R options are cumulative.
528 for found_dir in $ltrpathdirs; do
529 LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-R$found_dir"
530 done
531 fi
532 ])
533
534 dnl AC_LIB_APPENDTOVAR(VAR, CONTENTS) appends the elements of CONTENTS to VAR,
535 dnl unless already present in VAR.
536 dnl Works only for CPPFLAGS, not for LIB* variables because that sometimes
537 dnl contains two or three consecutive elements that belong together.
538 AC_DEFUN([AC_LIB_APPENDTOVAR],
539 [
540 for element in [$2]; do
541 haveit=
542 for x in $[$1]; do
543 AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
544 if test "X$x" = "X$element"; then
545 haveit=yes
546 break
547 fi
548 done
549 if test -z "$haveit"; then
550 [$1]="${[$1]}${[$1]:+ }$element"
551 fi
552 done
553 ])
+0
-148
common/m4/lib-prefix.m4 less more
0 # lib-prefix.m4 serial 1 (gettext-0.11)
1 dnl Copyright (C) 2001-2002 Free Software Foundation, Inc.
2 dnl This file is free software, distributed under the terms of the GNU
3 dnl General Public License. As a special exception to the GNU General
4 dnl Public License, this file may be distributed as part of a program
5 dnl that contains a configuration script generated by Autoconf, under
6 dnl the same distribution terms as the rest of that program.
7
8 dnl From Bruno Haible.
9
10 dnl AC_LIB_PREFIX adds to the CPPFLAGS and LDFLAGS the flags that are needed
11 dnl to access previously installed libraries. The basic assumption is that
12 dnl a user will want packages to use other packages he previously installed
13 dnl with the same --prefix option.
14 dnl This macro is not needed if only AC_LIB_LINKFLAGS is used to locate
15 dnl libraries, but is otherwise very convenient.
16 AC_DEFUN([AC_LIB_PREFIX],
17 [
18 AC_BEFORE([$0], [AC_LIB_LINKFLAGS])
19 AC_REQUIRE([AC_PROG_CC])
20 AC_REQUIRE([AC_CANONICAL_HOST])
21 AC_REQUIRE([AC_LIB_PREPARE_PREFIX])
22 dnl By default, look in $includedir and $libdir.
23 use_additional=yes
24 AC_LIB_WITH_FINAL_PREFIX([
25 eval additional_includedir=\"$includedir\"
26 eval additional_libdir=\"$libdir\"
27 ])
28 AC_ARG_WITH([lib-prefix],
29 [ --with-lib-prefix[=DIR] search for libraries in DIR/include and DIR/lib
30 --without-lib-prefix don't search for libraries in includedir and libdir],
31 [
32 if test "X$withval" = "Xno"; then
33 use_additional=no
34 else
35 if test "X$withval" = "X"; then
36 AC_LIB_WITH_FINAL_PREFIX([
37 eval additional_includedir=\"$includedir\"
38 eval additional_libdir=\"$libdir\"
39 ])
40 else
41 additional_includedir="$withval/include"
42 additional_libdir="$withval/lib"
43 fi
44 fi
45 ])
46 if test $use_additional = yes; then
47 dnl Potentially add $additional_includedir to $CPPFLAGS.
48 dnl But don't add it
49 dnl 1. if it's the standard /usr/include,
50 dnl 2. if it's already present in $CPPFLAGS,
51 dnl 3. if it's /usr/local/include and we are using GCC on Linux,
52 dnl 4. if it doesn't exist as a directory.
53 if test "X$additional_includedir" != "X/usr/include"; then
54 haveit=
55 for x in $CPPFLAGS; do
56 AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
57 if test "X$x" = "X-I$additional_includedir"; then
58 haveit=yes
59 break
60 fi
61 done
62 if test -z "$haveit"; then
63 if test "X$additional_includedir" = "X/usr/local/include"; then
64 if test -n "$GCC"; then
65 case $host_os in
66 linux*) haveit=yes;;
67 esac
68 fi
69 fi
70 if test -z "$haveit"; then
71 if test -d "$additional_includedir"; then
72 dnl Really add $additional_includedir to $CPPFLAGS.
73 CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }-I$additional_includedir"
74 fi
75 fi
76 fi
77 fi
78 dnl Potentially add $additional_libdir to $LDFLAGS.
79 dnl But don't add it
80 dnl 1. if it's the standard /usr/lib,
81 dnl 2. if it's already present in $LDFLAGS,
82 dnl 3. if it's /usr/local/lib and we are using GCC on Linux,
83 dnl 4. if it doesn't exist as a directory.
84 if test "X$additional_libdir" != "X/usr/lib"; then
85 haveit=
86 for x in $LDFLAGS; do
87 AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"])
88 if test "X$x" = "X-L$additional_libdir"; then
89 haveit=yes
90 break
91 fi
92 done
93 if test -z "$haveit"; then
94 if test "X$additional_libdir" = "X/usr/local/lib"; then
95 if test -n "$GCC"; then
96 case $host_os in
97 linux*) haveit=yes;;
98 esac
99 fi
100 fi
101 if test -z "$haveit"; then
102 if test -d "$additional_libdir"; then
103 dnl Really add $additional_libdir to $LDFLAGS.
104 LDFLAGS="${LDFLAGS}${LDFLAGS:+ }-L$additional_libdir"
105 fi
106 fi
107 fi
108 fi
109 fi
110 ])
111
112 dnl AC_LIB_PREPARE_PREFIX creates variables acl_final_prefix,
113 dnl acl_final_exec_prefix, containing the values to which $prefix and
114 dnl $exec_prefix will expand at the end of the configure script.
115 AC_DEFUN([AC_LIB_PREPARE_PREFIX],
116 [
117 dnl Unfortunately, prefix and exec_prefix get only finally determined
118 dnl at the end of configure.
119 if test "X$prefix" = "XNONE"; then
120 acl_final_prefix="$ac_default_prefix"
121 else
122 acl_final_prefix="$prefix"
123 fi
124 if test "X$exec_prefix" = "XNONE"; then
125 acl_final_exec_prefix='${prefix}'
126 else
127 acl_final_exec_prefix="$exec_prefix"
128 fi
129 acl_save_prefix="$prefix"
130 prefix="$acl_final_prefix"
131 eval acl_final_exec_prefix=\"$acl_final_exec_prefix\"
132 prefix="$acl_save_prefix"
133 ])
134
135 dnl AC_LIB_WITH_FINAL_PREFIX([statement]) evaluates statement, with the
136 dnl variables prefix and exec_prefix bound to the values they will have
137 dnl at the end of the configure script.
138 AC_DEFUN([AC_LIB_WITH_FINAL_PREFIX],
139 [
140 acl_save_prefix="$prefix"
141 prefix="$acl_final_prefix"
142 acl_save_exec_prefix="$exec_prefix"
143 exec_prefix="$acl_final_exec_prefix"
144 $1
145 exec_prefix="$acl_save_exec_prefix"
146 prefix="$acl_save_prefix"
147 ])
+0
-59
common/m4/progtest.m4 less more
0 # progtest.m4 serial 2 (gettext-0.10.40)
1 dnl Copyright (C) 1996-2002 Free Software Foundation, Inc.
2 dnl This file is free software, distributed under the terms of the GNU
3 dnl General Public License. As a special exception to the GNU General
4 dnl Public License, this file may be distributed as part of a program
5 dnl that contains a configuration script generated by Autoconf, under
6 dnl the same distribution terms as the rest of that program.
7 dnl
8 dnl This file can can be used in projects which are not available under
9 dnl the GNU General Public License or the GNU Library General Public
10 dnl License but which still want to provide support for the GNU gettext
11 dnl functionality.
12 dnl Please note that the actual code of the GNU gettext library is covered
13 dnl by the GNU Library General Public License, and the rest of the GNU
14 dnl gettext package package is covered by the GNU General Public License.
15 dnl They are *not* in the public domain.
16
17 dnl Authors:
18 dnl Ulrich Drepper <drepper@cygnus.com>, 1996.
19
20 # Search path for a program which passes the given test.
21
22 dnl AM_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR,
23 dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]])
24 AC_DEFUN([AM_PATH_PROG_WITH_TEST],
25 [# Extract the first word of "$2", so it can be a program name with args.
26 set dummy $2; ac_word=[$]2
27 AC_MSG_CHECKING([for $ac_word])
28 AC_CACHE_VAL(ac_cv_path_$1,
29 [case "[$]$1" in
30 /*)
31 ac_cv_path_$1="[$]$1" # Let the user override the test with a path.
32 ;;
33 *)
34 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
35 for ac_dir in ifelse([$5], , $PATH, [$5]); do
36 test -z "$ac_dir" && ac_dir=.
37 if test -f $ac_dir/$ac_word; then
38 if [$3]; then
39 ac_cv_path_$1="$ac_dir/$ac_word"
40 break
41 fi
42 fi
43 done
44 IFS="$ac_save_ifs"
45 dnl If no 4th arg is given, leave the cache variable unset,
46 dnl so AC_PATH_PROGS will keep looking.
47 ifelse([$4], , , [ test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4"
48 ])dnl
49 ;;
50 esac])dnl
51 $1="$ac_cv_path_$1"
52 if test ifelse([$4], , [-n "[$]$1"], ["[$]$1" != "$4"]); then
53 AC_MSG_RESULT([$]$1)
54 else
55 AC_MSG_RESULT(no)
56 fi
57 AC_SUBST($1)dnl
58 ])
+0
-28
common/m4/stdint_h.m4 less more
0 # stdint_h.m4 serial 2 (gettext-0.11.4)
1 dnl Copyright (C) 1997-2002 Free Software Foundation, Inc.
2 dnl This file is free software, distributed under the terms of the GNU
3 dnl General Public License. As a special exception to the GNU General
4 dnl Public License, this file may be distributed as part of a program
5 dnl that contains a configuration script generated by Autoconf, under
6 dnl the same distribution terms as the rest of that program.
7
8 dnl From Paul Eggert.
9
10 # Define HAVE_STDINT_H_WITH_UINTMAX if <stdint.h> exists,
11 # doesn't clash with <sys/types.h>, and declares uintmax_t.
12
13 AC_DEFUN([jm_AC_HEADER_STDINT_H],
14 [
15 AC_CACHE_CHECK([for stdint.h], jm_ac_cv_header_stdint_h,
16 [AC_TRY_COMPILE(
17 [#include <sys/types.h>
18 #include <stdint.h>],
19 [uintmax_t i = (uintmax_t) -1;],
20 jm_ac_cv_header_stdint_h=yes,
21 jm_ac_cv_header_stdint_h=no)])
22 if test $jm_ac_cv_header_stdint_h = yes; then
23 AC_DEFINE_UNQUOTED(HAVE_STDINT_H_WITH_UINTMAX, 1,
24 [Define if <stdint.h> exists, doesn't clash with <sys/types.h>,
25 and declares uintmax_t. ])
26 fi
27 ])
+0
-29
common/m4/uintmax_t.m4 less more
0 # uintmax_t.m4 serial 6 (gettext-0.11)
1 dnl Copyright (C) 1997-2002 Free Software Foundation, Inc.
2 dnl This file is free software, distributed under the terms of the GNU
3 dnl General Public License. As a special exception to the GNU General
4 dnl Public License, this file may be distributed as part of a program
5 dnl that contains a configuration script generated by Autoconf, under
6 dnl the same distribution terms as the rest of that program.
7
8 dnl From Paul Eggert.
9
10 AC_PREREQ(2.13)
11
12 # Define uintmax_t to `unsigned long' or `unsigned long long'
13 # if <inttypes.h> does not exist.
14
15 AC_DEFUN([jm_AC_TYPE_UINTMAX_T],
16 [
17 AC_REQUIRE([jm_AC_HEADER_INTTYPES_H])
18 AC_REQUIRE([jm_AC_HEADER_STDINT_H])
19 if test $jm_ac_cv_header_inttypes_h = no && test $jm_ac_cv_header_stdint_h = no; then
20 AC_REQUIRE([jm_AC_TYPE_UNSIGNED_LONG_LONG])
21 test $ac_cv_type_unsigned_long_long = yes \
22 && ac_type='unsigned long long' \
23 || ac_type='unsigned long'
24 AC_DEFINE_UNQUOTED(uintmax_t, $ac_type,
25 [Define to unsigned long or unsigned long long
26 if <inttypes.h> and <stdint.h> don't define.])
27 fi
28 ])
+0
-23
common/m4/ulonglong.m4 less more
0 # ulonglong.m4 serial 2 (fileutils-4.0.32, gettext-0.10.40)
1 dnl Copyright (C) 1999-2002 Free Software Foundation, Inc.
2 dnl This file is free software, distributed under the terms of the GNU
3 dnl General Public License. As a special exception to the GNU General
4 dnl Public License, this file may be distributed as part of a program
5 dnl that contains a configuration script generated by Autoconf, under
6 dnl the same distribution terms as the rest of that program.
7
8 dnl From Paul Eggert.
9
10 AC_DEFUN([jm_AC_TYPE_UNSIGNED_LONG_LONG],
11 [
12 AC_CACHE_CHECK([for unsigned long long], ac_cv_type_unsigned_long_long,
13 [AC_TRY_LINK([unsigned long long ull = 1; int i = 63;],
14 [unsigned long long ullmax = (unsigned long long) -1;
15 return ull << i | ull >> i | ullmax / ull | ullmax % ull;],
16 ac_cv_type_unsigned_long_long=yes,
17 ac_cv_type_unsigned_long_long=no)])
18 if test $ac_cv_type_unsigned_long_long = yes; then
19 AC_DEFINE(HAVE_UNSIGNED_LONG_LONG, 1,
20 [Define if you have the unsigned long long type.])
21 fi
22 ])
0 # rule to download the latest .po files
1 download-po: $(top_srcdir)/common/download-translations
2 $(top_srcdir)/common/download-translations $(PACKAGE)
3
0 # include this snippet to add a common release: target by using
1 # include $(top_srcdir)/common/release.mak
2
3 # make bz2 as well
4 AUTOMAKE_OPTIONS = dist-bzip2
5
6 release: dist
7 $(MAKE) $(PACKAGE)-$(VERSION).tar.gz.md5
8 $(MAKE) $(PACKAGE)-$(VERSION).tar.bz2.md5
9
10 # generate md5 sum files
11 %.md5: %
12 md5sum $< > $@
13
14 # check that no marshal or enumtypes files are included
15 # this in turn ensures that distcheck fails for missing .list files which is currently
16 # shadowed when the corresponding .c and .h files are included.
17 distcheck-hook:
18 @test "x" = "x`find $(distdir) -name \*-enumtypes.[ch] | grep -v win32`" && \
19 test "x" = "x`find $(distdir) -name \*-marshal.[ch]`" || \
20 ( $(ECHO) "*** Leftover enumtypes or marshal files in the tarball." && \
21 $(ECHO) "*** Make sure the following files are not disted:" && \
22 find $(distdir) -name \*-enumtypes.[ch] | grep -v win32 && \
23 find $(distdir) -name \*-marshal.[ch] && \
24 false )
0 # this snippet is to be included by both our docbook manuals
1 # and gtk-doc API references
2
3 # it adds an upload target to each of these dir's Makefiles
4
5 # each Makefile.am should define the following variables:
6 # - DOC: the base name of the documentation
7 # (faq, manual, pwg, gstreamer, gstreamer-libs)
8 # - FORMATS: the formats in which DOC is output
9 # (html ps pdf)
10
11 # if you want to use it, make sure your ..sh/config file contains the
12 # correct User entry for the Host entry for the DOC_SERVER
13
14 # these variables define the location of the online docs
15 DOC_SERVER=gstreamer.freedesktop.org
16 DOC_BASE=/srv/gstreamer.freedesktop.org/www/data/doc
17 DOC_URL=$(DOC_SERVER):$(DOC_BASE)
18
19
20 upload: $(FORMATS)
21 @if test "x$(GST_VERSION_NANO)" = x0; then \
22 export DOCVERSION=$(VERSION); \
23 else export DOCVERSION=head; \
24 fi; \
25 export DIR=$(DOC_BASE)/gstreamer/$$DOCVERSION/$(DOC); \
26 ssh $(DOC_SERVER) mkdir -p $$DIR; \
27 if echo $(FORMATS) | grep html > /dev/null; then export SRC="$$SRC html"; fi; \
28 if echo $(FORMATS) | grep ps > /dev/null; then export SRC="$$SRC $(DOC).ps"; fi; \
29 if echo $(FORMATS) | grep pdf > /dev/null; then export SRC="$$SRC $(DOC).pdf"; fi; \
30 echo Uploading $$SRC to $(DOC_SERVER):$$DIR; \
31 rsync -rv -e ssh --delete $$SRC $(DOC_SERVER):$$DIR; \
32 ssh $(DOC_SERVER) chmod -R g+w $$DIR; \
33 echo Done
0 # this snippet is to be included by both our docbook manuals
1 # and gtk-doc API references
2
3 # it adds an upload target to each of these dir's Makefiles
4
5 # each Makefile.am should define the following variables:
6 # - DOC: the base name of the documentation
7 # (faq, manual, pwg, gstreamer, gstreamer-libs)
8 # - FORMATS: the formats in which DOC is output
9 # (html ps pdf)
10
11 # if you want to use it, make sure your $HOME/.ssh/config file contains the
12 # correct User entry for the Host entry for the DOC_SERVER
13
14 # these variables define the location of the online docs
15 DOC_SERVER = gstreamer.freedesktop.org
16 DOC_BASE = /srv/gstreamer.freedesktop.org/www/data/doc
17 DOC_URL = $(DOC_SERVER):$(DOC_BASE)
18
19 upload: $(FORMATS)
20 @if test "x$(PACKAGE_VERSION_NANO)" = x0; then \
21 export DOCVERSION=$(VERSION); \
22 else export DOCVERSION=head; \
23 fi; \
24 export DIR=$(DOC_BASE)/gstreamer/$$DOCVERSION/$(DOC); \
25 ssh $(DOC_SERVER) mkdir -p $$DIR; \
26 if echo $(FORMATS) | grep html > /dev/null; then export SRC="$$SRC html"; fi; \
27 if echo $(FORMATS) | grep ps > /dev/null; then export SRC="$$SRC $(DOC).ps"; fi; \
28 if echo $(FORMATS) | grep pdf > /dev/null; then export SRC="$$SRC $(DOC).pdf"; fi; \
29 echo Uploading $$SRC to $(DOC_SERVER):$$DIR; \
30 rsync -rv -e ssh --delete $$SRC $(DOC_SERVER):$$DIR; \
31 ssh $(DOC_SERVER) chmod -R g+w $$DIR; \
32 echo Done
0 # various tests to make sure we dist the win32 stuff (for MSVC builds) right
1
2 # the MANIFEST contains all win32 related files that should be disted
3 win32 = $(shell cat $(top_srcdir)/win32/MANIFEST)
4
5 # wildcard is apparently not portable to other makes, hence the use of find
6 # these are library .def files with the symbols to export
7 win32defs = $(shell find $(top_srcdir)/win32/common -name '*.def')
8
9 # wildcard is apparently not portable to other makes, hence the use of find
10 # these are files that need to be disted with CRLF line endings:
11 win32crlf = $(shell find $(top_srcdir)/win32 -name '*.dsw' -o -name '*.dsp')
12
13 win32-debug:
14 @echo; \
15 echo win32 = $(win32); \
16 echo; \
17 echo win32defs = $(win32defs); \
18 echo; \
19 echo win32crlf = $(win32crlf); \
20 echo
21
22 win32-check-crlf:
23 @echo Checking win32 files for CR LF line endings ...; \
24 fail=0 ; \
25 for each in $(win32crlf) ; do \
26 if ! (file $$each | grep CRLF >/dev/null) ; then \
27 echo $$each must be fixed to have CRLF line endings ; \
28 fail=1; \
29 fi ; \
30 done ; \
31 exit $$fail
32
33 # make sure all symbols we export on linux are defined in the win32 .def too
34 # (don't care about other unixes for now, it's enough if it works on one of
35 # the linux build bots; we assume .so )
36 check-exports:
37 fail=0 ; \
38 for l in $(win32defs); do \
39 libbase=`basename "$$l" ".def"`; \
40 libso=`find "$(top_builddir)" -name "$$libbase-@GST_MAJORMINOR@.so"`; \
41 libdef="$(top_srcdir)/win32/common/$$libbase.def"; \
42 if test "x$$libso" != "x"; then \
43 echo Checking symbols in $$libso; \
44 if ! ($(top_srcdir)/common/check-exports $$libdef $$libso) ; then \
45 fail=1; \
46 fi; \
47 fi; \
48 done
49
50
51 dist-hook: check-exports win32-check-crlf
52
53
3737 $(top_srcdir)/common/m4/as-auto-alt.m4 \
3838 $(top_srcdir)/common/m4/as-compiler-flag.m4 \
3939 $(top_srcdir)/common/m4/as-libtool.m4 \
40 $(top_srcdir)/common/m4/as-python.m4 \
4140 $(top_srcdir)/common/m4/as-scrub-include.m4 \
4241 $(top_srcdir)/common/m4/as-version.m4 \
4342 $(top_srcdir)/common/m4/gst-arch.m4 \
4948 $(top_srcdir)/common/m4/gst-plugindir.m4 \
5049 $(top_srcdir)/common/m4/gst.m4 \
5150 $(top_srcdir)/common/m4/gtk-doc.m4 \
52 $(top_srcdir)/common/m4/isc-posix.m4 \
5351 $(top_srcdir)/common/m4/pkg.m4 \
5452 $(top_srcdir)/m4/as-check-python-headers.m4 \
5553 $(top_srcdir)/configure.ac
173171 PKG_CONFIG = @PKG_CONFIG@
174172 PLUGINDIR = @PLUGINDIR@
175173 PROFILE_CFLAGS = @PROFILE_CFLAGS@
176 PYDOCSTUFF_CFLAGS = @PYDOCSTUFF_CFLAGS@
177 PYDOCSTUFF_LIBS = @PYDOCSTUFF_LIBS@
178174 PYFARSIGHT_CFLAGS = @PYFARSIGHT_CFLAGS@
179175 PYFARSIGHT_LIBS = @PYFARSIGHT_LIBS@
180176 PYTHON = @PYTHON@
00 #! /bin/sh
11 # Guess values for system-dependent variables and create Makefiles.
2 # Generated by GNU Autoconf 2.63 for Farsight2 0.0.8.
2 # Generated by GNU Autoconf 2.63 for Farsight2 0.0.9.
33 #
44 # Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=Farsight>.
55 #
749749 # Identity of this package.
750750 PACKAGE_NAME='Farsight2'
751751 PACKAGE_TARNAME='farsight2'
752 PACKAGE_VERSION='0.0.8'
753 PACKAGE_STRING='Farsight2 0.0.8'
752 PACKAGE_VERSION='0.0.9'
753 PACKAGE_STRING='Farsight2 0.0.9'
754754 PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=Farsight'
755755
756756 ac_unique_file="gst-libs/gst/farsight/fs-candidate.c"
833833 GLIB_REQ
834834 ENABLE_PLUGIN_DOCS_FALSE
835835 ENABLE_PLUGIN_DOCS_TRUE
836 PYDOCSTUFF_LIBS
837 PYDOCSTUFF_CFLAGS
838836 pkgpyexecdir
839837 pyexecdir
840838 pkgpythondir
883881 HAVE_CPU_I386_TRUE
884882 FS2_PLUGIN_PATH
885883 FS2_TRANSMITTER_PLUGINS_SELECTED
886 USE_NICE_FALSE
887 USE_NICE_TRUE
888884 NICE_LIBS
889885 NICE_CFLAGS
890886 FS2_TRANSMITTER_PLUGINS_ALL
10701066 VALGRIND_LIBS
10711067 NICE_CFLAGS
10721068 NICE_LIBS
1073 PYDOCSTUFF_CFLAGS
1074 PYDOCSTUFF_LIBS
10751069 GLIB_CFLAGS
10761070 GLIB_LIBS
10771071 GST_CFLAGS
16381632 # Omit some internal or obsolete options to make the list less imposing.
16391633 # This message is too long to be a string in the A/UX 3.1 sh.
16401634 cat <<_ACEOF
1641 \`configure' configures Farsight2 0.0.8 to adapt to many kinds of systems.
1635 \`configure' configures Farsight2 0.0.9 to adapt to many kinds of systems.
16421636
16431637 Usage: $0 [OPTION]... [VAR=VALUE]...
16441638
17081702
17091703 if test -n "$ac_init_help"; then
17101704 case $ac_init_help in
1711 short | recursive ) echo "Configuration of Farsight2 0.0.8:";;
1705 short | recursive ) echo "Configuration of Farsight2 0.0.9:";;
17121706 esac
17131707 cat <<\_ACEOF
17141708
17791773 linker flags for VALGRIND, overriding pkg-config
17801774 NICE_CFLAGS C compiler flags for NICE, overriding pkg-config
17811775 NICE_LIBS linker flags for NICE, overriding pkg-config
1782 PYDOCSTUFF_CFLAGS
1783 C compiler flags for PYDOCSTUFF, overriding pkg-config
1784 PYDOCSTUFF_LIBS
1785 linker flags for PYDOCSTUFF, overriding pkg-config
17861776 GLIB_CFLAGS C compiler flags for GLIB, overriding pkg-config
17871777 GLIB_LIBS linker flags for GLIB, overriding pkg-config
17881778 GST_CFLAGS C compiler flags for GST, overriding pkg-config
18731863 test -n "$ac_init_help" && exit $ac_status
18741864 if $ac_init_version; then
18751865 cat <<\_ACEOF
1876 Farsight2 configure 0.0.8
1866 Farsight2 configure 0.0.9
18771867 generated by GNU Autoconf 2.63
18781868
18791869 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
18871877 This file contains any messages produced by compilers while
18881878 running configure, to aid debugging if configure makes a mistake.
18891879
1890 It was created by Farsight2 $as_me 0.0.8, which was
1880 It was created by Farsight2 $as_me 0.0.9, which was
18911881 generated by GNU Autoconf 2.63. Invocation command line was
18921882
18931883 $ $0 $@
26082598
26092599 # Define the identity of the package.
26102600 PACKAGE='farsight2'
2611 VERSION='0.0.8'
2601 VERSION='0.0.9'
26122602
26132603
26142604 cat >>confdefs.h <<_ACEOF
27522742
27532743
27542744
2755 PACKAGE_VERSION_MAJOR=$(echo 0.0.8 | cut -d'.' -f1)
2756 PACKAGE_VERSION_MINOR=$(echo 0.0.8 | cut -d'.' -f2)
2757 PACKAGE_VERSION_MICRO=$(echo 0.0.8 | cut -d'.' -f3)
2745 PACKAGE_VERSION_MAJOR=$(echo 0.0.9 | cut -d'.' -f1)
2746 PACKAGE_VERSION_MINOR=$(echo 0.0.9 | cut -d'.' -f2)
2747 PACKAGE_VERSION_MICRO=$(echo 0.0.9 | cut -d'.' -f3)
27582748
27592749
27602750
27652755 { $as_echo "$as_me:$LINENO: checking nano version" >&5
27662756 $as_echo_n "checking nano version... " >&6; }
27672757
2768 NANO=$(echo 0.0.8 | cut -d'.' -f4)
2758 NANO=$(echo 0.0.9 | cut -d'.' -f4)
27692759
27702760 if test x"$NANO" = x || test "x$NANO" = "x0" ; then
27712761 { $as_echo "$as_me:$LINENO: result: 0 (release)" >&5
47074697 ;;
47084698 *-*-irix6*)
47094699 # Find out which ABI we are using.
4710 echo '#line 4711 "configure"' > conftest.$ac_ext
4700 echo '#line 4701 "configure"' > conftest.$ac_ext
47114701 if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
47124702 (eval $ac_compile) 2>&5
47134703 ac_status=$?
78537843 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
78547844 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
78557845 -e 's:$: $lt_compiler_flag:'`
7856 (eval echo "\"\$as_me:7857: $lt_compile\"" >&5)
7846 (eval echo "\"\$as_me:7847: $lt_compile\"" >&5)
78577847 (eval "$lt_compile" 2>conftest.err)
78587848 ac_status=$?
78597849 cat conftest.err >&5
7860 echo "$as_me:7861: \$? = $ac_status" >&5
7850 echo "$as_me:7851: \$? = $ac_status" >&5
78617851 if (exit $ac_status) && test -s "$ac_outfile"; then
78627852 # The compiler can only warn and ignore the option if not recognized
78637853 # So say no if there are warnings other than the usual output.
81438133 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
81448134 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
81458135 -e 's:$: $lt_compiler_flag:'`
8146 (eval echo "\"\$as_me:8147: $lt_compile\"" >&5)
8136 (eval echo "\"\$as_me:8137: $lt_compile\"" >&5)
81478137 (eval "$lt_compile" 2>conftest.err)
81488138 ac_status=$?
81498139 cat conftest.err >&5
8150 echo "$as_me:8151: \$? = $ac_status" >&5
8140 echo "$as_me:8141: \$? = $ac_status" >&5
81518141 if (exit $ac_status) && test -s "$ac_outfile"; then
81528142 # The compiler can only warn and ignore the option if not recognized
81538143 # So say no if there are warnings other than the usual output.
82478237 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
82488238 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
82498239 -e 's:$: $lt_compiler_flag:'`
8250 (eval echo "\"\$as_me:8251: $lt_compile\"" >&5)
8240 (eval echo "\"\$as_me:8241: $lt_compile\"" >&5)
82518241 (eval "$lt_compile" 2>out/conftest.err)
82528242 ac_status=$?
82538243 cat out/conftest.err >&5
8254 echo "$as_me:8255: \$? = $ac_status" >&5
8244 echo "$as_me:8245: \$? = $ac_status" >&5
82558245 if (exit $ac_status) && test -s out/conftest2.$ac_objext
82568246 then
82578247 # The compiler can only warn and ignore the option if not recognized
1066010650 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
1066110651 lt_status=$lt_dlunknown
1066210652 cat > conftest.$ac_ext <<EOF
10663 #line 10664 "configure"
10653 #line 10654 "configure"
1066410654 #include "confdefs.h"
1066510655
1066610656 #if HAVE_DLFCN_H
1076010750 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
1076110751 lt_status=$lt_dlunknown
1076210752 cat > conftest.$ac_ext <<EOF
10763 #line 10764 "configure"
10753 #line 10754 "configure"
1076410754 #include "confdefs.h"
1076510755
1076610756 #if HAVE_DLFCN_H
1316913159 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1317013160 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
1317113161 -e 's:$: $lt_compiler_flag:'`
13172 (eval echo "\"\$as_me:13173: $lt_compile\"" >&5)
13162 (eval echo "\"\$as_me:13163: $lt_compile\"" >&5)
1317313163 (eval "$lt_compile" 2>conftest.err)
1317413164 ac_status=$?
1317513165 cat conftest.err >&5
13176 echo "$as_me:13177: \$? = $ac_status" >&5
13166 echo "$as_me:13167: \$? = $ac_status" >&5
1317713167 if (exit $ac_status) && test -s "$ac_outfile"; then
1317813168 # The compiler can only warn and ignore the option if not recognized
1317913169 # So say no if there are warnings other than the usual output.
1327313263 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1327413264 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
1327513265 -e 's:$: $lt_compiler_flag:'`
13276 (eval echo "\"\$as_me:13277: $lt_compile\"" >&5)
13266 (eval echo "\"\$as_me:13267: $lt_compile\"" >&5)
1327713267 (eval "$lt_compile" 2>out/conftest.err)
1327813268 ac_status=$?
1327913269 cat out/conftest.err >&5
13280 echo "$as_me:13281: \$? = $ac_status" >&5
13270 echo "$as_me:13271: \$? = $ac_status" >&5
1328113271 if (exit $ac_status) && test -s out/conftest2.$ac_objext
1328213272 then
1328313273 # The compiler can only warn and ignore the option if not recognized
1486914859 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1487014860 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
1487114861 -e 's:$: $lt_compiler_flag:'`
14872 (eval echo "\"\$as_me:14873: $lt_compile\"" >&5)
14862 (eval echo "\"\$as_me:14863: $lt_compile\"" >&5)
1487314863 (eval "$lt_compile" 2>conftest.err)
1487414864 ac_status=$?
1487514865 cat conftest.err >&5
14876 echo "$as_me:14877: \$? = $ac_status" >&5
14866 echo "$as_me:14867: \$? = $ac_status" >&5
1487714867 if (exit $ac_status) && test -s "$ac_outfile"; then
1487814868 # The compiler can only warn and ignore the option if not recognized
1487914869 # So say no if there are warnings other than the usual output.
1497314963 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1497414964 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
1497514965 -e 's:$: $lt_compiler_flag:'`
14976 (eval echo "\"\$as_me:14977: $lt_compile\"" >&5)
14966 (eval echo "\"\$as_me:14967: $lt_compile\"" >&5)
1497714967 (eval "$lt_compile" 2>out/conftest.err)
1497814968 ac_status=$?
1497914969 cat out/conftest.err >&5
14980 echo "$as_me:14981: \$? = $ac_status" >&5
14970 echo "$as_me:14971: \$? = $ac_status" >&5
1498114971 if (exit $ac_status) && test -s out/conftest2.$ac_objext
1498214972 then
1498314973 # The compiler can only warn and ignore the option if not recognized
1720117191 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1720217192 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
1720317193 -e 's:$: $lt_compiler_flag:'`
17204 (eval echo "\"\$as_me:17205: $lt_compile\"" >&5)
17194 (eval echo "\"\$as_me:17195: $lt_compile\"" >&5)
1720517195 (eval "$lt_compile" 2>conftest.err)
1720617196 ac_status=$?
1720717197 cat conftest.err >&5
17208 echo "$as_me:17209: \$? = $ac_status" >&5
17198 echo "$as_me:17199: \$? = $ac_status" >&5
1720917199 if (exit $ac_status) && test -s "$ac_outfile"; then
1721017200 # The compiler can only warn and ignore the option if not recognized
1721117201 # So say no if there are warnings other than the usual output.
1749117481 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1749217482 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
1749317483 -e 's:$: $lt_compiler_flag:'`
17494 (eval echo "\"\$as_me:17495: $lt_compile\"" >&5)
17484 (eval echo "\"\$as_me:17485: $lt_compile\"" >&5)
1749517485 (eval "$lt_compile" 2>conftest.err)
1749617486 ac_status=$?
1749717487 cat conftest.err >&5
17498 echo "$as_me:17499: \$? = $ac_status" >&5
17488 echo "$as_me:17489: \$? = $ac_status" >&5
1749917489 if (exit $ac_status) && test -s "$ac_outfile"; then
1750017490 # The compiler can only warn and ignore the option if not recognized
1750117491 # So say no if there are warnings other than the usual output.
1759517585 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1759617586 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
1759717587 -e 's:$: $lt_compiler_flag:'`
17598 (eval echo "\"\$as_me:17599: $lt_compile\"" >&5)
17588 (eval echo "\"\$as_me:17589: $lt_compile\"" >&5)
1759917589 (eval "$lt_compile" 2>out/conftest.err)
1760017590 ac_status=$?
1760117591 cat out/conftest.err >&5
17602 echo "$as_me:17603: \$? = $ac_status" >&5
17592 echo "$as_me:17593: \$? = $ac_status" >&5
1760317593 if (exit $ac_status) && test -s out/conftest2.$ac_objext
1760417594 then
1760517595 # The compiler can only warn and ignore the option if not recognized
2098920979
2099020980
2099120981
20992 if echo $FS2_TRANSMITTER_PLUGINS_SELECTED | grep -qi nice; then
20993
20994 NICE_REQUIRED=0.0.3
20982 NICE_REQUIRED=0.0.3
2099520983
2099620984
2099720985 pkg_failed=no
2106221050
2106321051 { $as_echo "$as_me:$LINENO: result: no" >&5
2106421052 $as_echo "no" >&6; }
21065 HAVE_NICE=no
21053 { { $as_echo "$as_me:$LINENO: error: Need libnice >= $NICE_REQUIRED" >&5
21054 $as_echo "$as_me: error: Need libnice >= $NICE_REQUIRED" >&2;}
21055 { (exit 1); exit 1; }; }
2106621056 elif test $pkg_failed = untried; then
21067 HAVE_NICE=no
21057 { { $as_echo "$as_me:$LINENO: error: Need libnice >= $NICE_REQUIRED" >&5
21058 $as_echo "$as_me: error: Need libnice >= $NICE_REQUIRED" >&2;}
21059 { (exit 1); exit 1; }; }
2106821060 else
2106921061 NICE_CFLAGS=$pkg_cv_NICE_CFLAGS
2107021062 NICE_LIBS=$pkg_cv_NICE_LIBS
2107121063 { $as_echo "$as_me:$LINENO: result: yes" >&5
2107221064 $as_echo "yes" >&6; }
21073 HAVE_NICE=yes
21074 fi
21075
21076 if test "x$HAVE_NICE" = "xno"; then
21077 if test "x$TRANSMITTERS_DEFAULT" = "xyes"; then
21078 FS2_TRANSMITTER_PLUGINS_SELECTED="${FS2_TRANSMITTER_PLUGINS_SELECTED/nice/}"
21079 { $as_echo "$as_me:$LINENO: WARNING: Will not build libnice transmitter because libnice is not available" >&5
21080 $as_echo "$as_me: WARNING: Will not build libnice transmitter because libnice is not available" >&2;}
21081 else
21082 { { $as_echo "$as_me:$LINENO: error: Can not build requested libnice transmitter because libnice is not installed" >&5
21083 $as_echo "$as_me: error: Can not build requested libnice transmitter because libnice is not installed" >&2;}
21084 { (exit 1); exit 1; }; }
21085 fi
21086 else
21087 USE_NICE=yes
21088 fi
21089
21090
21091
21092 else
21093 { $as_echo "$as_me:$LINENO: nice transmitter disabled by user request" >&5
21094 $as_echo "$as_me: nice transmitter disabled by user request" >&6;}
21095 fi
21096
21097 if test "x$USE_NICE" == "xyes"; then
21098 USE_NICE_TRUE=
21099 USE_NICE_FALSE='#'
21100 else
21101 USE_NICE_TRUE='#'
21102 USE_NICE_FALSE=
21103 fi
21065 :
21066 fi
21067
2110421068
2110521069
2110621070
2280422768
2280522769
2280622770
22807 PYTHON_CANDIDATES="python python2.2 python2.1 python2.0 python2 \
22808 python1.6 python1.5"
22809
22810 { $as_echo "$as_me:$LINENO: Looking for Python version >= 2.4" >&5
22811 $as_echo "$as_me: Looking for Python version >= 2.4" >&6;}
22812 prog="
22813 import sys, string
22814 minver = '2.4'
22815 # split string by '.' and convert to numeric
22816 minver_info = map(string.atoi, string.split(minver, '.'))
22817 # we can now do comparisons on the two lists:
22818 if sys.version_info >= tuple(minver_info):
22819 sys.exit(0)
22820 else:
22821 sys.exit(1)"
22822
22823 python_good=false
22824 for python_candidate in $PYTHON_CANDIDATES; do
22825 unset PYTHON
22826 # Extract the first word of "$python_candidate", so it can be a program name with args.
22827 set dummy $python_candidate; ac_word=$2
22771
22772
22773 if test -n "$PYTHON"; then
22774 # If the user set $PYTHON, use it and don't search something else.
22775 { $as_echo "$as_me:$LINENO: checking whether $PYTHON version >= 2.4" >&5
22776 $as_echo_n "checking whether $PYTHON version >= 2.4... " >&6; }
22777 prog="import sys, string
22778 # split strings by '.' and convert to numeric. Append some zeros
22779 # because we need at least 4 digits for the hex conversion.
22780 minver = map(int, string.split('2.4', '.')) + [0, 0, 0]
22781 minverhex = 0
22782 for i in xrange(0, 4): minverhex = (minverhex << 8) + minver[i]
22783 sys.exit(sys.hexversion < minverhex)"
22784 if { echo "$as_me:$LINENO: $PYTHON -c "$prog"" >&5
22785 ($PYTHON -c "$prog") >&5 2>&5
22786 ac_status=$?
22787 echo "$as_me:$LINENO: \$? = $ac_status" >&5
22788 (exit $ac_status); }; then
22789 { $as_echo "$as_me:$LINENO: result: yes" >&5
22790 $as_echo "yes" >&6; }
22791 else
22792 { { $as_echo "$as_me:$LINENO: error: too old" >&5
22793 $as_echo "$as_me: error: too old" >&2;}
22794 { (exit 1); exit 1; }; }
22795 fi
22796
22797 am_display_PYTHON=$PYTHON
22798 else
22799 # Otherwise, try each interpreter until we find one that satisfies
22800 # VERSION.
22801 { $as_echo "$as_me:$LINENO: checking for a Python interpreter with version >= 2.4" >&5
22802 $as_echo_n "checking for a Python interpreter with version >= 2.4... " >&6; }
22803 if test "${am_cv_pathless_PYTHON+set}" = set; then
22804 $as_echo_n "(cached) " >&6
22805 else
22806
22807 for am_cv_pathless_PYTHON in python python2 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0 python1.6 python1.5 none; do
22808 test "$am_cv_pathless_PYTHON" = none && break
22809 prog="import sys, string
22810 # split strings by '.' and convert to numeric. Append some zeros
22811 # because we need at least 4 digits for the hex conversion.
22812 minver = map(int, string.split('2.4', '.')) + [0, 0, 0]
22813 minverhex = 0
22814 for i in xrange(0, 4): minverhex = (minverhex << 8) + minver[i]
22815 sys.exit(sys.hexversion < minverhex)"
22816 if { echo "$as_me:$LINENO: $am_cv_pathless_PYTHON -c "$prog"" >&5
22817 ($am_cv_pathless_PYTHON -c "$prog") >&5 2>&5
22818 ac_status=$?
22819 echo "$as_me:$LINENO: \$? = $ac_status" >&5
22820 (exit $ac_status); }; then
22821 break
22822 fi
22823
22824 done
22825 fi
22826 { $as_echo "$as_me:$LINENO: result: $am_cv_pathless_PYTHON" >&5
22827 $as_echo "$am_cv_pathless_PYTHON" >&6; }
22828 # Set $PYTHON to the absolute path of $am_cv_pathless_PYTHON.
22829 if test "$am_cv_pathless_PYTHON" = none; then
22830 PYTHON=:
22831 else
22832 # Extract the first word of "$am_cv_pathless_PYTHON", so it can be a program name with args.
22833 set dummy $am_cv_pathless_PYTHON; ac_word=$2
2282822834 { $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
2282922835 $as_echo_n "checking for $ac_word... " >&6; }
2283022836 if test "${ac_cv_path_PYTHON+set}" = set; then
2286222868 $as_echo "no" >&6; }
2286322869 fi
2286422870
22865 1> /dev/null 2> /dev/null
22866
22867 if test "x$PYTHON" = "x"; then continue; fi
22868
22869 if $PYTHON -c "$prog" 1>&5 2>&5; then
22870 { $as_echo "$as_me:$LINENO: checking \"$PYTHON\":" >&5
22871 $as_echo_n "checking \"$PYTHON\":... " >&6; }
22872 { $as_echo "$as_me:$LINENO: result: okay" >&5
22873 $as_echo "okay" >&6; }
22874 python_good=true
22875 break;
22876 else
22877 unset ac_cv_path_PYTHON
22871
2287822872 fi
22879 done
22880
22881
22882 if test "$python_good" != "true"; then
22883 { $as_echo "$as_me:$LINENO: WARNING: No suitable version of python found" >&5
22884 $as_echo "$as_me: WARNING: No suitable version of python found" >&2;}
22885 PYTHON=
22873 am_display_PYTHON=$am_cv_pathless_PYTHON
22874 fi
22875
22876
22877 if test "$PYTHON" = :; then
22878 { { $as_echo "$as_me:$LINENO: error: no suitable Python interpreter found" >&5
22879 $as_echo "$as_me: error: no suitable Python interpreter found" >&2;}
22880 { (exit 1); exit 1; }; }
2288622881 else
2288722882
22888 { $as_echo "$as_me:$LINENO: checking local Python configuration" >&5
22889 $as_echo_n "checking local Python configuration... " >&6; }
22890
22891
22892
22893 PYTHON_VERSION=`$PYTHON -c "import sys; print sys.version[:3]"`
22894
22883
22884 { $as_echo "$as_me:$LINENO: checking for $am_display_PYTHON version" >&5
22885 $as_echo_n "checking for $am_display_PYTHON version... " >&6; }
22886 if test "${am_cv_python_version+set}" = set; then
22887 $as_echo_n "(cached) " >&6
22888 else
22889 am_cv_python_version=`$PYTHON -c "import sys; print sys.version[:3]"`
22890 fi
22891 { $as_echo "$as_me:$LINENO: result: $am_cv_python_version" >&5
22892 $as_echo "$am_cv_python_version" >&6; }
22893 PYTHON_VERSION=$am_cv_python_version
2289522894
2289622895
2289722896
2289822897 PYTHON_PREFIX='${prefix}'
2289922898
22900
2290122899 PYTHON_EXEC_PREFIX='${exec_prefix}'
2290222900
2290322901
2290422902
22905 PYTHON_PLATFORM=`$PYTHON -c "import sys; print sys.platform"`
22906
22907
22908
22909
22910
22911 pythondir=$PYTHON_PREFIX"/lib/python"$PYTHON_VERSION/site-packages
22903 { $as_echo "$as_me:$LINENO: checking for $am_display_PYTHON platform" >&5
22904 $as_echo_n "checking for $am_display_PYTHON platform... " >&6; }
22905 if test "${am_cv_python_platform+set}" = set; then
22906 $as_echo_n "(cached) " >&6
22907 else
22908 am_cv_python_platform=`$PYTHON -c "import sys; print sys.platform"`
22909 fi
22910 { $as_echo "$as_me:$LINENO: result: $am_cv_python_platform" >&5
22911 $as_echo "$am_cv_python_platform" >&6; }
22912 PYTHON_PLATFORM=$am_cv_python_platform
22913
22914
22915
22916
22917 { $as_echo "$as_me:$LINENO: checking for $am_display_PYTHON script directory" >&5
22918 $as_echo_n "checking for $am_display_PYTHON script directory... " >&6; }
22919 if test "${am_cv_python_pythondir+set}" = set; then
22920 $as_echo_n "(cached) " >&6
22921 else
22922 am_cv_python_pythondir=`$PYTHON -c "from distutils import sysconfig; print sysconfig.get_python_lib(0,0,prefix='$PYTHON_PREFIX')" 2>/dev/null ||
22923 echo "$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages"`
22924 fi
22925 { $as_echo "$as_me:$LINENO: result: $am_cv_python_pythondir" >&5
22926 $as_echo "$am_cv_python_pythondir" >&6; }
22927 pythondir=$am_cv_python_pythondir
2291222928
2291322929
2291422930
2291522931 pkgpythondir=\${pythondir}/$PACKAGE
2291622932
2291722933
22918
22919 pyexecdir=$PYTHON_EXEC_PREFIX"/lib/python"$PYTHON_VERSION/site-packages
22934 { $as_echo "$as_me:$LINENO: checking for $am_display_PYTHON extension module directory" >&5
22935 $as_echo_n "checking for $am_display_PYTHON extension module directory... " >&6; }
22936 if test "${am_cv_python_pyexecdir+set}" = set; then
22937 $as_echo_n "(cached) " >&6
22938 else
22939 am_cv_python_pyexecdir=`$PYTHON -c "from distutils import sysconfig; print sysconfig.get_python_lib(1,0,prefix='$PYTHON_EXEC_PREFIX')" 2>/dev/null ||
22940 echo "${PYTHON_EXEC_PREFIX}/lib/python${PYTHON_VERSION}/site-packages"`
22941 fi
22942 { $as_echo "$as_me:$LINENO: result: $am_cv_python_pyexecdir" >&5
22943 $as_echo "$am_cv_python_pyexecdir" >&6; }
22944 pyexecdir=$am_cv_python_pyexecdir
2292022945
2292122946
2292222947
2292322948 pkgpyexecdir=\${pyexecdir}/$PACKAGE
2292422949
22925 { $as_echo "$as_me:$LINENO: result: looks good" >&5
22926 $as_echo "looks good" >&6; }
22950
2292722951
2292822952 fi
22953
2292922954
2293022955 { $as_echo "$as_me:$LINENO: checking for a sed that does not truncate output" >&5
2293122956 $as_echo_n "checking for a sed that does not truncate output... " >&6; }
2298923014
2299023015
2299123016 build_plugin_docs=no
22992 have_pygst=no
22993
22994 pkg_failed=no
22995 { $as_echo "$as_me:$LINENO: checking for PYDOCSTUFF" >&5
22996 $as_echo_n "checking for PYDOCSTUFF... " >&6; }
22997
22998 if test -n "$PKG_CONFIG"; then
22999 if test -n "$PYDOCSTUFF_CFLAGS"; then
23000 pkg_cv_PYDOCSTUFF_CFLAGS="$PYDOCSTUFF_CFLAGS"
23001 else
23002 if test -n "$PKG_CONFIG" && \
23003 { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \" gst-python-0.10 \"") >&5
23004 ($PKG_CONFIG --exists --print-errors " gst-python-0.10 ") 2>&5
23005 ac_status=$?
23006 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
23007 (exit $ac_status); }; then
23008 pkg_cv_PYDOCSTUFF_CFLAGS=`$PKG_CONFIG --cflags " gst-python-0.10 " 2>/dev/null`
23009 else
23010 pkg_failed=yes
23011 fi
23012 fi
23013 else
23014 pkg_failed=untried
23015 fi
23016 if test -n "$PKG_CONFIG"; then
23017 if test -n "$PYDOCSTUFF_LIBS"; then
23018 pkg_cv_PYDOCSTUFF_LIBS="$PYDOCSTUFF_LIBS"
23019 else
23020 if test -n "$PKG_CONFIG" && \
23021 { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \" gst-python-0.10 \"") >&5
23022 ($PKG_CONFIG --exists --print-errors " gst-python-0.10 ") 2>&5
23023 ac_status=$?
23024 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
23025 (exit $ac_status); }; then
23026 pkg_cv_PYDOCSTUFF_LIBS=`$PKG_CONFIG --libs " gst-python-0.10 " 2>/dev/null`
23027 else
23028 pkg_failed=yes
23029 fi
23030 fi
23031 else
23032 pkg_failed=untried
23033 fi
23034
23035
23036
23037 if test $pkg_failed = yes; then
23038
23039 if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
23040 _pkg_short_errors_supported=yes
23041 else
23042 _pkg_short_errors_supported=no
23043 fi
23044 if test $_pkg_short_errors_supported = yes; then
23045 PYDOCSTUFF_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors " gst-python-0.10 "`
23046 else
23047 PYDOCSTUFF_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors " gst-python-0.10 "`
23048 fi
23049 # Put the nasty error message in config.log where it belongs
23050 echo "$PYDOCSTUFF_PKG_ERRORS" >&5
23051
23052 { $as_echo "$as_me:$LINENO: result: no" >&5
23053 $as_echo "no" >&6; }
23054 have_pygst=no
23055 elif test $pkg_failed = untried; then
23056 have_pygst=no
23057 else
23058 PYDOCSTUFF_CFLAGS=$pkg_cv_PYDOCSTUFF_CFLAGS
23059 PYDOCSTUFF_LIBS=$pkg_cv_PYDOCSTUFF_LIBS
23060 { $as_echo "$as_me:$LINENO: result: yes" >&5
23061 $as_echo "yes" >&6; }
23062 have_pygst=yes
23063 fi
2306423017 { $as_echo "$as_me:$LINENO: checking whether to build plugin documentation" >&5
2306523018 $as_echo_n "checking whether to build plugin documentation... " >&6; }
23066 if test x$enable_gtk_doc = xyes -a x$have_pygst = xyes; then
23019 if test x$enable_gtk_doc = xyes; then
2306723020 build_plugin_docs=yes
2306823021 { $as_echo "$as_me:$LINENO: result: yes" >&5
2306923022 $as_echo "yes" >&6; }
2307023023 else
23071 { $as_echo "$as_me:$LINENO: result: no (gtk-doc/pygst disabled or not available)" >&5
23072 $as_echo "no (gtk-doc/pygst disabled or not available)" >&6; }
23024 { $as_echo "$as_me:$LINENO: result: no (gtk-doc disabled or not available)" >&5
23025 $as_echo "no (gtk-doc disabled or not available)" >&6; }
2307323026 fi
2307423027
2307523028 if test x$build_plugin_docs = xyes; then
2321723170
2321823171
2321923172
23220
23221 { $as_echo "$as_me:$LINENO: checking for strerror in -lcposix" >&5
23222 $as_echo_n "checking for strerror in -lcposix... " >&6; }
23223 if test "${ac_cv_lib_cposix_strerror+set}" = set; then
23173 { $as_echo "$as_me:$LINENO: checking for library containing strerror" >&5
23174 $as_echo_n "checking for library containing strerror... " >&6; }
23175 if test "${ac_cv_search_strerror+set}" = set; then
2322423176 $as_echo_n "(cached) " >&6
2322523177 else
23226 ac_check_lib_save_LIBS=$LIBS
23227 LIBS="-lcposix $LIBS"
23178 ac_func_search_save_LIBS=$LIBS
2322823179 cat >conftest.$ac_ext <<_ACEOF
2322923180 /* confdefs.h. */
2323023181 _ACEOF
2324723198 return 0;
2324823199 }
2324923200 _ACEOF
23250 rm -f conftest.$ac_objext conftest$ac_exeext
23201 for ac_lib in '' cposix; do
23202 if test -z "$ac_lib"; then
23203 ac_res="none required"
23204 else
23205 ac_res=-l$ac_lib
23206 LIBS="-l$ac_lib $ac_func_search_save_LIBS"
23207 fi
23208 rm -f conftest.$ac_objext conftest$ac_exeext
2325123209 if { (ac_try="$ac_link"
2325223210 case "(($ac_try" in
2325323211 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
2326823226 test "$cross_compiling" = yes ||
2326923227 $as_test_x conftest$ac_exeext
2327023228 }; then
23271 ac_cv_lib_cposix_strerror=yes
23229 ac_cv_search_strerror=$ac_res
2327223230 else
2327323231 $as_echo "$as_me: failed program was:" >&5
2327423232 sed 's/^/| /' conftest.$ac_ext >&5
2327523233
23276 ac_cv_lib_cposix_strerror=no
23234
2327723235 fi
2327823236
2327923237 rm -rf conftest.dSYM
2328023238 rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
23281 conftest$ac_exeext conftest.$ac_ext
23282 LIBS=$ac_check_lib_save_LIBS
23283 fi
23284 { $as_echo "$as_me:$LINENO: result: $ac_cv_lib_cposix_strerror" >&5
23285 $as_echo "$ac_cv_lib_cposix_strerror" >&6; }
23286 if test "x$ac_cv_lib_cposix_strerror" = x""yes; then
23287 LIBS="$LIBS -lcposix"
23288 fi
23289
23290
23239 conftest$ac_exeext
23240 if test "${ac_cv_search_strerror+set}" = set; then
23241 break
23242 fi
23243 done
23244 if test "${ac_cv_search_strerror+set}" = set; then
23245 :
23246 else
23247 ac_cv_search_strerror=no
23248 fi
23249 rm conftest.$ac_ext
23250 LIBS=$ac_func_search_save_LIBS
23251 fi
23252 { $as_echo "$as_me:$LINENO: result: $ac_cv_search_strerror" >&5
23253 $as_echo "$ac_cv_search_strerror" >&6; }
23254 ac_res=$ac_cv_search_strerror
23255 if test "$ac_res" != no; then
23256 test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
23257
23258 fi
2329123259
2329223260
2329323261
2447824446 $as_echo "$flag_ok" >&6; }
2447924447
2448024448
24481 if test "x$FS2_CVS" != "xno"
24482 then
24483
24484 { $as_echo "$as_me:$LINENO: checking to see if compiler understands -Werror" >&5
24485 $as_echo_n "checking to see if compiler understands -Werror... " >&6; }
24449
24450 { $as_echo "$as_me:$LINENO: checking to see if compiler understands -Wdeclaration-after-statement" >&5
24451 $as_echo_n "checking to see if compiler understands -Wdeclaration-after-statement... " >&6; }
2448624452
2448724453 save_CFLAGS="$CFLAGS"
24488 CFLAGS="$CFLAGS -Werror"
24454 CFLAGS="$CFLAGS -Wdeclaration-after-statement"
2448924455
2449024456 cat >conftest.$ac_ext <<_ACEOF
2449124457 /* confdefs.h. */
2453224498 CFLAGS="$save_CFLAGS"
2453324499
2453424500 if test "X$flag_ok" = Xyes ; then
24535 ERROR_CFLAGS="$ERROR_CFLAGS -Werror"
24501 ERROR_CFLAGS="$ERROR_CFLAGS -Wdeclaration-after-statement"
2453624502 true
2453724503 else
2453824504
2454224508 $as_echo "$flag_ok" >&6; }
2454324509
2454424510
24545 if test "x$ERROR_CFLAGS" == "x"
24546 then
24547
24548 { $as_echo "$as_me:$LINENO: checking to see if compiler understands -errwarn=%all" >&5
24549 $as_echo_n "checking to see if compiler understands -errwarn=%all... " >&6; }
24511
24512 { $as_echo "$as_me:$LINENO: checking to see if compiler understands -Wvla" >&5
24513 $as_echo_n "checking to see if compiler understands -Wvla... " >&6; }
2455024514
2455124515 save_CFLAGS="$CFLAGS"
24552 CFLAGS="$CFLAGS -errwarn=%all"
24516 CFLAGS="$CFLAGS -Wvla"
2455324517
2455424518 cat >conftest.$ac_ext <<_ACEOF
2455524519 /* confdefs.h. */
2459624560 CFLAGS="$save_CFLAGS"
2459724561
2459824562 if test "X$flag_ok" = Xyes ; then
24599
24600 ERROR_CFLAGS="-errwarn=%all"
24601 for f in 'no%E_EMPTY_DECLARATION' \
24602 'no%E_STATEMENT_NOT_REACHED' \
24603 'no%E_ARGUEMENT_MISMATCH' \
24604 'no%E_MACRO_REDEFINED'
24605 do
24606
24607 { $as_echo "$as_me:$LINENO: checking to see if compiler understands -errwarn=%all,$f" >&5
24608 $as_echo_n "checking to see if compiler understands -errwarn=%all,$f... " >&6; }
24563 ERROR_CFLAGS="$ERROR_CFLAGS -Wvla"
24564 true
24565 else
24566
24567 true
24568 fi
24569 { $as_echo "$as_me:$LINENO: result: $flag_ok" >&5
24570 $as_echo "$flag_ok" >&6; }
24571
24572
24573 if test "x$FS2_CVS" != "xno"
24574 then
24575
24576 { $as_echo "$as_me:$LINENO: checking to see if compiler understands -Werror" >&5
24577 $as_echo_n "checking to see if compiler understands -Werror... " >&6; }
2460924578
2461024579 save_CFLAGS="$CFLAGS"
24611 CFLAGS="$CFLAGS -errwarn=%all,$f"
24580 CFLAGS="$CFLAGS -Werror"
2461224581
2461324582 cat >conftest.$ac_ext <<_ACEOF
2461424583 /* confdefs.h. */
2465524624 CFLAGS="$save_CFLAGS"
2465624625
2465724626 if test "X$flag_ok" = Xyes ; then
24658
24659 ERROR_CFLAGS="$ERROR_CFLAGS,$f"
24660
24627 ERROR_CFLAGS="$ERROR_CFLAGS -Werror"
2466124628 true
2466224629 else
2466324630
2466624633 { $as_echo "$as_me:$LINENO: result: $flag_ok" >&5
2466724634 $as_echo "$flag_ok" >&6; }
2466824635
24636
24637 if test "x$ERROR_CFLAGS" == "x"
24638 then
24639
24640 { $as_echo "$as_me:$LINENO: checking to see if compiler understands -errwarn=%all" >&5
24641 $as_echo_n "checking to see if compiler understands -errwarn=%all... " >&6; }
24642
24643 save_CFLAGS="$CFLAGS"
24644 CFLAGS="$CFLAGS -errwarn=%all"
24645
24646 cat >conftest.$ac_ext <<_ACEOF
24647 /* confdefs.h. */
24648 _ACEOF
24649 cat confdefs.h >>conftest.$ac_ext
24650 cat >>conftest.$ac_ext <<_ACEOF
24651 /* end confdefs.h. */
24652
24653 int
24654 main ()
24655 {
24656
24657 ;
24658 return 0;
24659 }
24660 _ACEOF
24661 rm -f conftest.$ac_objext
24662 if { (ac_try="$ac_compile"
24663 case "(($ac_try" in
24664 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
24665 *) ac_try_echo=$ac_try;;
24666 esac
24667 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
24668 $as_echo "$ac_try_echo") >&5
24669 (eval "$ac_compile") 2>conftest.er1
24670 ac_status=$?
24671 grep -v '^ *+' conftest.er1 >conftest.err
24672 rm -f conftest.er1
24673 cat conftest.err >&5
24674 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
24675 (exit $ac_status); } && {
24676 test -z "$ac_c_werror_flag" ||
24677 test ! -s conftest.err
24678 } && test -s conftest.$ac_objext; then
24679 flag_ok=yes
24680 else
24681 $as_echo "$as_me: failed program was:" >&5
24682 sed 's/^/| /' conftest.$ac_ext >&5
24683
24684 flag_ok=no
24685 fi
24686
24687 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
24688 CFLAGS="$save_CFLAGS"
24689
24690 if test "X$flag_ok" = Xyes ; then
24691
24692 ERROR_CFLAGS="-errwarn=%all"
24693 for f in 'no%E_EMPTY_DECLARATION' \
24694 'no%E_STATEMENT_NOT_REACHED' \
24695 'no%E_ARGUEMENT_MISMATCH' \
24696 'no%E_MACRO_REDEFINED' \
24697 'no%E_LOOP_NOT_ENTERED_AT_TOP'
24698 do
24699
24700 { $as_echo "$as_me:$LINENO: checking to see if compiler understands -errwarn=%all,$f" >&5
24701 $as_echo_n "checking to see if compiler understands -errwarn=%all,$f... " >&6; }
24702
24703 save_CFLAGS="$CFLAGS"
24704 CFLAGS="$CFLAGS -errwarn=%all,$f"
24705
24706 cat >conftest.$ac_ext <<_ACEOF
24707 /* confdefs.h. */
24708 _ACEOF
24709 cat confdefs.h >>conftest.$ac_ext
24710 cat >>conftest.$ac_ext <<_ACEOF
24711 /* end confdefs.h. */
24712
24713 int
24714 main ()
24715 {
24716
24717 ;
24718 return 0;
24719 }
24720 _ACEOF
24721 rm -f conftest.$ac_objext
24722 if { (ac_try="$ac_compile"
24723 case "(($ac_try" in
24724 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
24725 *) ac_try_echo=$ac_try;;
24726 esac
24727 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
24728 $as_echo "$ac_try_echo") >&5
24729 (eval "$ac_compile") 2>conftest.er1
24730 ac_status=$?
24731 grep -v '^ *+' conftest.er1 >conftest.err
24732 rm -f conftest.er1
24733 cat conftest.err >&5
24734 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
24735 (exit $ac_status); } && {
24736 test -z "$ac_c_werror_flag" ||
24737 test ! -s conftest.err
24738 } && test -s conftest.$ac_objext; then
24739 flag_ok=yes
24740 else
24741 $as_echo "$as_me: failed program was:" >&5
24742 sed 's/^/| /' conftest.$ac_ext >&5
24743
24744 flag_ok=no
24745 fi
24746
24747 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
24748 CFLAGS="$save_CFLAGS"
24749
24750 if test "X$flag_ok" = Xyes ; then
24751
24752 ERROR_CFLAGS="$ERROR_CFLAGS,$f"
24753
24754 true
24755 else
24756
24757 true
24758 fi
24759 { $as_echo "$as_me:$LINENO: result: $flag_ok" >&5
24760 $as_echo "$flag_ok" >&6; }
24761
2466924762 done
2467024763
24764 true
24765 else
24766
24767 true
24768 fi
24769 { $as_echo "$as_me:$LINENO: result: $flag_ok" >&5
24770 $as_echo "$flag_ok" >&6; }
24771
24772 else
24773
24774 { $as_echo "$as_me:$LINENO: checking to see if compiler understands -fno-strict-aliasing" >&5
24775 $as_echo_n "checking to see if compiler understands -fno-strict-aliasing... " >&6; }
24776
24777 save_CFLAGS="$CFLAGS"
24778 CFLAGS="$CFLAGS -fno-strict-aliasing"
24779
24780 cat >conftest.$ac_ext <<_ACEOF
24781 /* confdefs.h. */
24782 _ACEOF
24783 cat confdefs.h >>conftest.$ac_ext
24784 cat >>conftest.$ac_ext <<_ACEOF
24785 /* end confdefs.h. */
24786
24787 int
24788 main ()
24789 {
24790
24791 ;
24792 return 0;
24793 }
24794 _ACEOF
24795 rm -f conftest.$ac_objext
24796 if { (ac_try="$ac_compile"
24797 case "(($ac_try" in
24798 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
24799 *) ac_try_echo=$ac_try;;
24800 esac
24801 eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
24802 $as_echo "$ac_try_echo") >&5
24803 (eval "$ac_compile") 2>conftest.er1
24804 ac_status=$?
24805 grep -v '^ *+' conftest.er1 >conftest.err
24806 rm -f conftest.er1
24807 cat conftest.err >&5
24808 $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
24809 (exit $ac_status); } && {
24810 test -z "$ac_c_werror_flag" ||
24811 test ! -s conftest.err
24812 } && test -s conftest.$ac_objext; then
24813 flag_ok=yes
24814 else
24815 $as_echo "$as_me: failed program was:" >&5
24816 sed 's/^/| /' conftest.$ac_ext >&5
24817
24818 flag_ok=no
24819 fi
24820
24821 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
24822 CFLAGS="$save_CFLAGS"
24823
24824 if test "X$flag_ok" = Xyes ; then
24825 ERROR_CFLAGS="$ERROR_CFLAGS -fno-strict-aliasing"
2467124826 true
2467224827 else
2467324828
2484925004
2485025005 if test "x$WANT_PYTHON" = "xyes"; then
2485125006
24852
24853
24854
24855 # Find any Python interpreter.
24856 if test -z "$PYTHON"; then
24857 for ac_prog in python python2 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0 python1.6 python1.5
24858 do
24859 # Extract the first word of "$ac_prog", so it can be a program name with args.
24860 set dummy $ac_prog; ac_word=$2
24861 { $as_echo "$as_me:$LINENO: checking for $ac_word" >&5
24862 $as_echo_n "checking for $ac_word... " >&6; }
24863 if test "${ac_cv_path_PYTHON+set}" = set; then
24864 $as_echo_n "(cached) " >&6
24865 else
24866 case $PYTHON in
24867 [\\/]* | ?:[\\/]*)
24868 ac_cv_path_PYTHON="$PYTHON" # Let the user override the test with a path.
24869 ;;
24870 *)
24871 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
24872 for as_dir in $PATH
24873 do
24874 IFS=$as_save_IFS
24875 test -z "$as_dir" && as_dir=.
24876 for ac_exec_ext in '' $ac_executable_extensions; do
24877 if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
24878 ac_cv_path_PYTHON="$as_dir/$ac_word$ac_exec_ext"
24879 $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
24880 break 2
24881 fi
24882 done
24883 done
24884 IFS=$as_save_IFS
24885
24886 ;;
24887 esac
24888 fi
24889 PYTHON=$ac_cv_path_PYTHON
24890 if test -n "$PYTHON"; then
24891 { $as_echo "$as_me:$LINENO: result: $PYTHON" >&5
24892 $as_echo "$PYTHON" >&6; }
24893 else
24894 { $as_echo "$as_me:$LINENO: result: no" >&5
24895 $as_echo "no" >&6; }
24896 fi
24897
24898
24899 test -n "$PYTHON" && break
24900 done
24901 test -n "$PYTHON" || PYTHON=":"
24902
24903 fi
24904 am_display_PYTHON=python
24905
24906
24907 if test "$PYTHON" = :; then
24908 { { $as_echo "$as_me:$LINENO: error: no suitable Python interpreter found" >&5
24909 $as_echo "$as_me: error: no suitable Python interpreter found" >&2;}
24910 { (exit 1); exit 1; }; }
24911 else
24912
24913
24914 { $as_echo "$as_me:$LINENO: checking for $am_display_PYTHON version" >&5
24915 $as_echo_n "checking for $am_display_PYTHON version... " >&6; }
24916 if test "${am_cv_python_version+set}" = set; then
24917 $as_echo_n "(cached) " >&6
24918 else
24919 am_cv_python_version=`$PYTHON -c "import sys; print sys.version[:3]"`
24920 fi
24921 { $as_echo "$as_me:$LINENO: result: $am_cv_python_version" >&5
24922 $as_echo "$am_cv_python_version" >&6; }
24923 PYTHON_VERSION=$am_cv_python_version
24924
24925
24926
24927 PYTHON_PREFIX='${prefix}'
24928
24929 PYTHON_EXEC_PREFIX='${exec_prefix}'
24930
24931
24932
24933 { $as_echo "$as_me:$LINENO: checking for $am_display_PYTHON platform" >&5
24934 $as_echo_n "checking for $am_display_PYTHON platform... " >&6; }
24935 if test "${am_cv_python_platform+set}" = set; then
24936 $as_echo_n "(cached) " >&6
24937 else
24938 am_cv_python_platform=`$PYTHON -c "import sys; print sys.platform"`
24939 fi
24940 { $as_echo "$as_me:$LINENO: result: $am_cv_python_platform" >&5
24941 $as_echo "$am_cv_python_platform" >&6; }
24942 PYTHON_PLATFORM=$am_cv_python_platform
24943
24944
24945
24946
24947 { $as_echo "$as_me:$LINENO: checking for $am_display_PYTHON script directory" >&5
24948 $as_echo_n "checking for $am_display_PYTHON script directory... " >&6; }
24949 if test "${am_cv_python_pythondir+set}" = set; then
24950 $as_echo_n "(cached) " >&6
24951 else
24952 am_cv_python_pythondir=`$PYTHON -c "from distutils import sysconfig; print sysconfig.get_python_lib(0,0,prefix='$PYTHON_PREFIX')" 2>/dev/null ||
24953 echo "$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages"`
24954 fi
24955 { $as_echo "$as_me:$LINENO: result: $am_cv_python_pythondir" >&5
24956 $as_echo "$am_cv_python_pythondir" >&6; }
24957 pythondir=$am_cv_python_pythondir
24958
24959
24960
24961 pkgpythondir=\${pythondir}/$PACKAGE
24962
24963
24964 { $as_echo "$as_me:$LINENO: checking for $am_display_PYTHON extension module directory" >&5
24965 $as_echo_n "checking for $am_display_PYTHON extension module directory... " >&6; }
24966 if test "${am_cv_python_pyexecdir+set}" = set; then
24967 $as_echo_n "(cached) " >&6
24968 else
24969 am_cv_python_pyexecdir=`$PYTHON -c "from distutils import sysconfig; print sysconfig.get_python_lib(1,0,prefix='$PYTHON_EXEC_PREFIX')" 2>/dev/null ||
24970 echo "${PYTHON_EXEC_PREFIX}/lib/python${PYTHON_VERSION}/site-packages"`
24971 fi
24972 { $as_echo "$as_me:$LINENO: result: $am_cv_python_pyexecdir" >&5
24973 $as_echo "$am_cv_python_pyexecdir" >&6; }
24974 pyexecdir=$am_cv_python_pyexecdir
24975
24976
24977
24978 pkgpyexecdir=\${pyexecdir}/$PACKAGE
24979
24980
24981
24982 fi
24983
24984
24985
2498625007 { $as_echo "$as_me:$LINENO: checking for headers required to compile python extensions" >&5
2498725008 $as_echo_n "checking for headers required to compile python extensions... " >&6; }
2498825009 py_prefix=`$PYTHON -c "import sys; print sys.prefix"`
2541425435 Usually this means the macro was only invoked conditionally." >&2;}
2541525436 { (exit 1); exit 1; }; }
2541625437 fi
25417 if test -z "${USE_NICE_TRUE}" && test -z "${USE_NICE_FALSE}"; then
25418 { { $as_echo "$as_me:$LINENO: error: conditional \"USE_NICE\" was never defined.
25419 Usually this means the macro was only invoked conditionally." >&5
25420 $as_echo "$as_me: error: conditional \"USE_NICE\" was never defined.
25421 Usually this means the macro was only invoked conditionally." >&2;}
25422 { (exit 1); exit 1; }; }
25423 fi
2542425438
2542525439 if test -z "${HAVE_CPU_I386_TRUE}" && test -z "${HAVE_CPU_I386_FALSE}"; then
2542625440 { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_CPU_I386\" was never defined.
2589125905 # report actual input values of CONFIG_FILES etc. instead of their
2589225906 # values after options handling.
2589325907 ac_log="
25894 This file was extended by Farsight2 $as_me 0.0.8, which was
25908 This file was extended by Farsight2 $as_me 0.0.9, which was
2589525909 generated by GNU Autoconf 2.63. Invocation command line was
2589625910
2589725911 CONFIG_FILES = $CONFIG_FILES
2595425968 _ACEOF
2595525969 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
2595625970 ac_cs_version="\\
25957 Farsight2 config.status 0.0.8
25971 Farsight2 config.status 0.0.9
2595825972 configured by $0, generated by GNU Autoconf 2.63,
2595925973 with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\"
2596025974
44 dnl initialize autoconf
55 dnl releases only do -Wall, cvs and prerelease does -Werror too
66 dnl use a three digit version number for releases, and four for cvs/prerelease
7 AC_INIT(Farsight2, 0.0.8,
7 AC_INIT(Farsight2, 0.0.9,
88 https://bugs.freedesktop.org/enter_bug.cgi?product=Farsight,
99 farsight2)
1010
153153 [FS2_TRANSMITTER_PLUGINS_SELECTED=$FS2_TRANSMITTER_PLUGINS_ALL])
154154
155155
156 dnl check for libnice
157 if echo $FS2_TRANSMITTER_PLUGINS_SELECTED | grep -qi nice; then
158
159 NICE_REQUIRED=0.0.3
160
161 PKG_CHECK_MODULES(NICE, \
162 nice >= $NICE_REQUIRED,
163 HAVE_NICE=yes,
164 HAVE_NICE=no)
165
166 if test "x$HAVE_NICE" = "xno"; then
167 if test "x$TRANSMITTERS_DEFAULT" = "xyes"; then
168 FS2_TRANSMITTER_PLUGINS_SELECTED="${FS2_TRANSMITTER_PLUGINS_SELECTED/nice/}"
169 AC_MSG_WARN([Will not build libnice transmitter because libnice is not available])
170 else
171 AC_MSG_ERROR([Can not build requested libnice transmitter because libnice is not installed])
172 fi
173 else
174 USE_NICE=yes
175 fi
176
177 AC_SUBST(NICE_CFLAGS)
178 AC_SUBST(NICE_LIBS)
179 else
180 AC_MSG_NOTICE(nice transmitter disabled by user request)
181 fi
182
183 AM_CONDITIONAL(USE_NICE, test "x$USE_NICE" == "xyes")
156 NICE_REQUIRED=0.0.3
157
158 PKG_CHECK_MODULES(NICE, \
159 nice >= $NICE_REQUIRED,, AC_MSG_ERROR([Need libnice >= $NICE_REQUIRED]))
160 AC_SUBST(NICE_CFLAGS)
161 AC_SUBST(NICE_LIBS)
184162
185163 AC_SUBST(FS2_TRANSMITTER_PLUGINS_SELECTED)
186164
206184
207185 dnl check for documentation tools
208186 GTK_DOC_CHECK([1.8])
209 AS_PATH_PYTHON([2.4])
187 AM_PATH_PYTHON([2.4])
210188 LT_AC_PROG_SED
211189 AG_GST_PLUGIN_DOCS([1.8],[2.1])
212190 AC_SUBST(SED)
354332 esac],
355333 WANT_PYTHON=yes)
356334 if test "x$WANT_PYTHON" = "xyes"; then
357 AM_PATH_PYTHON
358335 AM_CHECK_PYTHON_HEADERS(,[AC_MSG_ERROR(could not find Python headers)])
359336 PKG_CHECK_MODULES(PYFARSIGHT, [ pygobject-2.0 >= 2.12.0
360337 gst-python-0.10 >= 0.10.10
3838 $(top_srcdir)/common/m4/as-auto-alt.m4 \
3939 $(top_srcdir)/common/m4/as-compiler-flag.m4 \
4040 $(top_srcdir)/common/m4/as-libtool.m4 \
41 $(top_srcdir)/common/m4/as-python.m4 \
4241 $(top_srcdir)/common/m4/as-scrub-include.m4 \
4342 $(top_srcdir)/common/m4/as-version.m4 \
4443 $(top_srcdir)/common/m4/gst-arch.m4 \
5049 $(top_srcdir)/common/m4/gst-plugindir.m4 \
5150 $(top_srcdir)/common/m4/gst.m4 \
5251 $(top_srcdir)/common/m4/gtk-doc.m4 \
53 $(top_srcdir)/common/m4/isc-posix.m4 \
5452 $(top_srcdir)/common/m4/pkg.m4 \
5553 $(top_srcdir)/m4/as-check-python-headers.m4 \
5654 $(top_srcdir)/configure.ac
186184 PKG_CONFIG = @PKG_CONFIG@
187185 PLUGINDIR = @PLUGINDIR@
188186 PROFILE_CFLAGS = @PROFILE_CFLAGS@
189 PYDOCSTUFF_CFLAGS = @PYDOCSTUFF_CFLAGS@
190 PYDOCSTUFF_LIBS = @PYDOCSTUFF_LIBS@
191187 PYFARSIGHT_CFLAGS = @PYFARSIGHT_CFLAGS@
192188 PYFARSIGHT_LIBS = @PYFARSIGHT_LIBS@
193189 PYTHON = @PYTHON@
4646 $(top_srcdir)/common/m4/as-auto-alt.m4 \
4747 $(top_srcdir)/common/m4/as-compiler-flag.m4 \
4848 $(top_srcdir)/common/m4/as-libtool.m4 \
49 $(top_srcdir)/common/m4/as-python.m4 \
5049 $(top_srcdir)/common/m4/as-scrub-include.m4 \
5150 $(top_srcdir)/common/m4/as-version.m4 \
5251 $(top_srcdir)/common/m4/gst-arch.m4 \
5857 $(top_srcdir)/common/m4/gst-plugindir.m4 \
5958 $(top_srcdir)/common/m4/gst.m4 \
6059 $(top_srcdir)/common/m4/gtk-doc.m4 \
61 $(top_srcdir)/common/m4/isc-posix.m4 \
6260 $(top_srcdir)/common/m4/pkg.m4 \
6361 $(top_srcdir)/m4/as-check-python-headers.m4 \
6462 $(top_srcdir)/configure.ac
182180 PKG_CONFIG = @PKG_CONFIG@
183181 PLUGINDIR = @PLUGINDIR@
184182 PROFILE_CFLAGS = @PROFILE_CFLAGS@
185 PYDOCSTUFF_CFLAGS = @PYDOCSTUFF_CFLAGS@
186 PYDOCSTUFF_LIBS = @PYDOCSTUFF_LIBS@
187183 PYFARSIGHT_CFLAGS = @PYFARSIGHT_CFLAGS@
188184 PYFARSIGHT_LIBS = @PYFARSIGHT_LIBS@
189185 PYTHON = @PYTHON@
365361 SCANOBJ_FILES = \
366362 $(DOC_MODULE).args \
367363 $(DOC_MODULE).hierarchy \
368 $(DOC_MODULE).interfaces \
364 $(DOC_MODULE).interfaces \
369365 $(DOC_MODULE).prerequisites \
370 .libs/$(DOC_MODULE)-scan.o \
371 $(DOC_MODULE).signals
366 $(DOC_MODULE).signals \
367 .libs/$(DOC_MODULE)-scan.o
372368
373369 REPORT_FILES = \
374370 $(DOC_MODULE)-undocumented.txt \
375371 $(DOC_MODULE)-undeclared.txt \
376372 $(DOC_MODULE)-unused.txt
377373
378 CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_STAMPS)
374 CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_STAMPS) doc-registry.xml
379375 all: all-am
380376
381377 .SUFFIXES:
567563 @ENABLE_GTK_DOC_TRUE@ fi ; \
568564 @ENABLE_GTK_DOC_TRUE@ GST_PLUGIN_SYSTEM_PATH=`cd $(top_builddir) && pwd` \
569565 @ENABLE_GTK_DOC_TRUE@ GST_PLUGIN_PATH= \
570 @ENABLE_GTK_DOC_TRUE@ CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" \
571 @ENABLE_GTK_DOC_TRUE@ CFLAGS="$(GTKDOC_CFLAGS)" LDFLAGS="$(GTKDOC_LIBS)" \
566 @ENABLE_GTK_DOC_TRUE@ GST_REGISTRY=doc-registry.xml \
567 @ENABLE_GTK_DOC_TRUE@ CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" \
568 @ENABLE_GTK_DOC_TRUE@ CFLAGS="$(GTKDOC_CFLAGS) $(CFLAGS)" \
569 @ENABLE_GTK_DOC_TRUE@ LDFLAGS="$(GTKDOC_LIBS) $(LDFLAGS)" \
572570 @ENABLE_GTK_DOC_TRUE@ gtkdoc-scangobj --type-init-func="gst_init(NULL,NULL)" \
573571 @ENABLE_GTK_DOC_TRUE@ --module=$(DOC_MODULE) ; \
574572 @ENABLE_GTK_DOC_TRUE@ else \
612610 #### xml ####
613611
614612 ### FIXME: make this error out again when docs are complete
615 @ENABLE_GTK_DOC_TRUE@sgml-build.stamp: tmpl.stamp $(CFILE_GLOB)
613 @ENABLE_GTK_DOC_TRUE@sgml-build.stamp: tmpl.stamp $(CFILE_GLOB) $(expand_content_files)
616614 @ENABLE_GTK_DOC_TRUE@ @echo '*** Building XML ***'
617 @ENABLE_GTK_DOC_TRUE@ gtkdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --main-sgml-file=$(srcdir)/$(DOC_MAIN_SGML_FILE) --output-format=xml $(MKDB_OPTIONS) | tee sgml-build.log
615 @ENABLE_GTK_DOC_TRUE@ gtkdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --expand-content-files="$(expand_content_files)" --main-sgml-file=$(srcdir)/$(DOC_MAIN_SGML_FILE) --output-format=xml $(MKDB_OPTIONS) | tee sgml-build.log
618616 @ENABLE_GTK_DOC_TRUE@ @if grep "WARNING:" sgml-build.log > /dev/null; then true; fi # exit 1; fi
617 @ENABLE_GTK_DOC_TRUE@ cp ../version.entities xml
619618 @ENABLE_GTK_DOC_TRUE@ rm sgml-build.log
620619 @ENABLE_GTK_DOC_TRUE@ touch sgml-build.stamp
621620
642641 @ENABLE_GTK_DOC_TRUE@ test "x$(HTML_IMAGES)" = "x" || for i in "" $(HTML_IMAGES) ; do \
643642 @ENABLE_GTK_DOC_TRUE@ if test "$$i" != ""; then cp $(srcdir)/$$i html ; fi; done
644643 @ENABLE_GTK_DOC_TRUE@ @echo '-- Fixing Crossreferences'
645 @ENABLE_GTK_DOC_TRUE@ gtkdoc-fixxref --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS)
644 @ENABLE_GTK_DOC_TRUE@ gtkdoc-fixxref --module=$(DOC_MODULE) --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS)
646645 @ENABLE_GTK_DOC_TRUE@ touch html-build.stamp
646
647 @ENABLE_GTK_DOC_TRUE@clean-local-gtkdoc:
648 @ENABLE_GTK_DOC_TRUE@ rm -rf xml tmpl html
649 # clean files copied for nonsrcdir templates build
650 @ENABLE_GTK_DOC_TRUE@ if test x"$(srcdir)" != x. ; then \
651 @ENABLE_GTK_DOC_TRUE@ rm -rf $(DOC_MODULE).types; \
652 @ENABLE_GTK_DOC_TRUE@ fi
647653 @ENABLE_GTK_DOC_FALSE@all-local:
648
649 clean-local:
654 @ENABLE_GTK_DOC_FALSE@clean-local-gtkdoc:
655
656 clean-local: clean-local-gtkdoc
650657 rm -f *~ *.bak
651 rm -rf xml html
652658 rm -rf .libs
653
654 maintainer-clean-local: clean
655 cd $(srcdir) && rm -rf xml html $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
656659
657660 # company: don't delete .sgml and -sections.txt as they're in CVS
658661 # FIXME : thomas added all sgml files and some other things to make
659662 # make distcheck work
660663 distclean-local: clean
661 rm -f $(DOC_MODULE)-decl-list.txt
662 rm -f $(DOC_MODULE)-decl.txt
663 rm -f $(REPORT_FILES)
664 rm -f $(REPORT_FILES) \
665 $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
664666 rm -rf tmpl/*.sgml.bak
665667 rm -f $(DOC_MODULE).hierarchy
666668 rm -f *.stamp || true
675677 fi
676678 rm -rf *.o
677679
680 maintainer-clean-local: clean
681 cd $(srcdir) && rm -rf html \
682 xml $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
683
678684 # thomas: make docs parallel installable; devhelp requires majorminor too
679685 install-data-local:
680 $(mkinstalldirs) $(DESTDIR)$(TARGET_DIR)
681 (installfiles=`echo ./html/*.html`; \
682 if test "$$installfiles" = './html/*.html'; \
686 (installfiles=`echo $(srcdir)/html/*.sgml $(srcdir)/html/*.html $(srcdir)/html/*.png $(srcdir)/html/*.css`; \
687 if test "$$installfiles" = '$(srcdir)/html/*.sgml $(srcdir)/html/*.html $(srcdir)/html/*.png $(srcdir)/html/*.css'; \
683688 then echo '-- Nothing to install' ; \
684689 else \
690 $(mkinstalldirs) $(DESTDIR)$(TARGET_DIR); \
685691 for i in $$installfiles; do \
686692 echo '-- Installing '$$i ; \
687693 $(INSTALL_DATA) $$i $(DESTDIR)$(TARGET_DIR); \
688694 done; \
689 pngfiles=`echo ./html/*.png`; \
690 if test "$$pngfiles" != './html/*.png'; then \
691 for i in $$pngfiles; do \
692 echo '-- Installing '$$i ; \
693 $(INSTALL_DATA) $$i $(DESTDIR)$(TARGET_DIR); \
694 done; \
695 fi; \
696695 echo '-- Installing $(srcdir)/html/$(DOC_MODULE).devhelp' ; \
697696 $(INSTALL_DATA) $(srcdir)/html/$(DOC_MODULE).devhelp \
698697 $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE)-@GST_MAJORMINOR@.devhelp; \
699698 if test -e $(srcdir)/html/$(DOC_MODULE).devhelp2; then \
700 $(INSTALL_DATA) $(srcdir)/html/$(DOC_MODULE).devhelp2 \
699 $(INSTALL_DATA) $(srcdir)/html/$(DOC_MODULE).devhelp2 \
701700 $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE)-@GST_MAJORMINOR@.devhelp2; \
702701 fi; \
703 echo '-- Installing $(srcdir)/html/index.sgml' ; \
704 $(INSTALL_DATA) $(srcdir)/html/index.sgml $(DESTDIR)$(TARGET_DIR); \
705 if test -e $(srcdir)/html/style.css; then \
706 echo '-- Installing $(srcdir)/html/style.css' ; \
707 $(INSTALL_DATA) $(srcdir)/html/style.css $(DESTDIR)$(TARGET_DIR); \
708 fi; \
702 (which gtkdoc-rebase >/dev/null && \
703 gtkdoc-rebase --relative --dest-dir=$(DESTDIR) --html-dir=$(DESTDIR)$(TARGET_DIR)) || true ; \
709704 fi)
710705 uninstall-local:
711 (installfiles=`echo ./html/*.html`; \
712 if test "$$installfiles" = './html/*.html'; \
713 then echo '-- Nothing to uninstall' ; \
706 if test -d $(DESTDIR)$(TARGET_DIR); then \
707 rm -rf $(DESTDIR)$(TARGET_DIR)/*; \
708 rmdir -p $(DESTDIR)$(TARGET_DIR) 2>/dev/null || true; \
714709 else \
715 for i in $$installfiles; do \
716 rmfile=`basename $$i` ; \
717 echo '-- Uninstalling $(DESTDIR)$(TARGET_DIR)/'$$rmfile ; \
718 rm -f $(DESTDIR)$(TARGET_DIR)/$$rmfile; \
719 done; \
720 pngfiles=`echo ./html/*.png`; \
721 if test "$$pngfiles" != './html/*.png'; then \
722 for i in $$pngfiles; do \
723 rmfile=`basename $$i` ; \
724 echo '-- Uninstalling $(DESTDIR)$(TARGET_DIR)/'$$rmfile ; \
725 rm -f $(DESTDIR)$(TARGET_DIR)/$$rmfile; \
726 done; \
727 fi; \
728 echo '-- Uninstalling $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE).devhelp' ; \
729 rm -f $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE)-@GST_MAJORMINOR@.devhelp; \
730 if test -e $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE)-@GST_MAJORMINOR@.devhelp2; then \
731 rm -f $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE)-@GST_MAJORMINOR@.devhelp2; \
732 fi; \
733 echo '-- Uninstalling $(DESTDIR)$(TARGET_DIR)/index.sgml' ; \
734 rm -f $(DESTDIR)$(TARGET_DIR)/index.sgml; \
735 if test -e $(DESTDIR)$(TARGET_DIR)/style.css; then \
736 echo '-- Uninstalling $(DESTDIR)$(TARGET_DIR)/style.css' ; \
737 rm -f $(DESTDIR)$(TARGET_DIR)/style.css; \
738 fi; \
739 fi)
740 if test -d $(DESTDIR)$(TARGET_DIR); then rmdir -p --ignore-fail-on-non-empty $(DESTDIR)$(TARGET_DIR) 2>/dev/null; fi; true
710 echo '-- Nothing to uninstall' ; \
711 fi;
741712
742713 #
743714 # Require gtk-doc when making dist
748719 @ENABLE_GTK_DOC_FALSE@ @false
749720
750721 dist-hook: dist-check-gtkdoc dist-hook-local
751 mkdir $(distdir)/tmpl
752 mkdir $(distdir)/xml
753722 mkdir $(distdir)/html
754 -cp $(srcdir)/tmpl/*.sgml $(distdir)/tmpl
755 -cp $(srcdir)/sgml/*.xml $(distdir)/xml
756 -cp $(srcdir)/html/index.sgml $(distdir)/html
757 -cp $(srcdir)/html/*.html $(srcdir)/html/*.css $(distdir)/html
758 -cp $(srcdir)/html/$(DOC_MODULE).devhelp* $(distdir)/html
759
760 images=$(HTML_IMAGES) ; \
761 for i in "" $$images ; do \
762 if test "$$i" != ""; then cp $(srcdir)/$$i $(distdir)/html ; fi; \
763 done
764
765 .PHONY : dist-hook-local
723 cp $(srcdir)/html/* $(distdir)/html
724 -cp $(srcdir)/$(DOC_MODULE).types $(distdir)/
725 -cp $(srcdir)/$(DOC_MODULE)-sections.txt $(distdir)/
726 cd $(distdir) && rm -f $(DISTCLEANFILES)
727 -gtkdoc-rebase --online --relative --html-dir=$(distdir)/html
728
729 .PHONY : dist-hook-local docs
766730 # Tell versions [3.59,3.63) of GNU make to not export all variables.
767731 # Otherwise a system limit (for SysV at least) may be exceeded.
768732 .NOEXPORT:
114114 ><span class="type">GstBus</span></a>.
115115 </p>
116116 <div class="refsect2" lang="en">
117 <a name="id2603056"></a><h3>The "<code class="literal">farsight-error</code>" message</h3>
117 <a name="id2576999"></a><h3>The "<code class="literal">farsight-error</code>" message</h3>
118118 <div class="informalexample"><pre class="programlisting">
119119 "src-object" <a
120120 href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"
170170 ><span class="type">GstBus</span></a>.
171171 </p>
172172 <div class="refsect2" lang="en">
173 <a name="id2667034"></a><h3>The "<code class="literal">farsight-send-codec-changed</code>"
173 <a name="id2644079"></a><h3>The "<code class="literal">farsight-send-codec-changed</code>"
174174 message</h3>
175175 <div class="informalexample"><pre class="programlisting">
176176 "session" <a class="link" href="FsSession.html" title="FsSession">FsSession</a> The session that emits the message
183183 </div>
184184 <hr>
185185 <div class="refsect2" lang="en">
186 <a name="id2667078"></a><h3>The "<code class="literal">farsight-codecs-changed</code>"
186 <a name="id2644123"></a><h3>The "<code class="literal">farsight-codecs-changed</code>"
187187 message</h3>
188188 <div class="informalexample"><pre class="programlisting">
189189 "session" <a class="link" href="FsSession.html" title="FsSession">FsSession</a> The session that emits the message
146146 ><span class="type">GstBus</span></a>.
147147 </p>
148148 <div class="refsect2" lang="en">
149 <a name="id2653821"></a><h3>The "<code class="literal">farsight-new-local-candidate</code>" message</h3>
149 <a name="id2662807"></a><h3>The "<code class="literal">farsight-new-local-candidate</code>" message</h3>
150150 <div class="informalexample"><pre class="programlisting">
151151 "stream" <a class="link" href="FsStream.html" title="FsStream">FsStream</a> The stream that emits the message
152152 "candidate" <a class="link" href="farsight2-libs-FsCandidate.html#FsCandidate" title="FsCandidate">FsCandidate</a> The new candidate
157157 </div>
158158 <hr>
159159 <div class="refsect2" lang="en">
160 <a name="id2653858"></a><h3>The "<code class="literal">farsight-local-candidates-prepared</code>" message</h3>
160 <a name="id2662843"></a><h3>The "<code class="literal">farsight-local-candidates-prepared</code>" message</h3>
161161 <div class="informalexample"><pre class="programlisting">
162162 "stream" <a class="link" href="FsStream.html" title="FsStream">FsStream</a> The stream that emits the message
163163 </pre></div>
168168 </div>
169169 <hr>
170170 <div class="refsect2" lang="en">
171 <a name="id2653890"></a><h3>The "<code class="literal">farsight-new-active-candidate-pair</code>" message</h3>
171 <a name="id2662875"></a><h3>The "<code class="literal">farsight-new-active-candidate-pair</code>" message</h3>
172172 <div class="informalexample"><pre class="programlisting">
173173 "stream" <a class="link" href="FsStream.html" title="FsStream">FsStream</a> The stream that emits the message
174174 "local-candidate" <a class="link" href="farsight2-libs-FsCandidate.html#FsCandidate" title="FsCandidate">FsCandidate</a> Local candidate being used
184184 </div>
185185 <hr>
186186 <div class="refsect2" lang="en">
187 <a name="id2653939"></a><h3>The "<code class="literal">farsight-recv-codecs-changed</code>" message</h3>
187 <a name="id2662924"></a><h3>The "<code class="literal">farsight-recv-codecs-changed</code>" message</h3>
188188 <div class="informalexample"><pre class="programlisting">
189189 "stream" <a class="link" href="FsStream.html" title="FsStream">FsStream</a> The stream that emits the message
190190 "codecs" FsCodecGList A <a
202202 </div>
203203 <hr>
204204 <div class="refsect2" lang="en">
205 <a name="id2654007"></a><h3>The "<code class="literal">farsight-component-state-changed</code>" message</h3>
205 <a name="id2662992"></a><h3>The "<code class="literal">farsight-component-state-changed</code>" message</h3>
206206 <div class="informalexample"><pre class="programlisting">
207207 "stream" <a class="link" href="FsStream.html" title="FsStream">FsStream</a> The stream that emits the message
208208 "component" <a
2828 </tr></table>
2929 <div class="chapter" lang="en">
3030 <div class="titlepage"><div><div><h2 class="title">
31 <a name="id2637463"></a>Farsight GStreamer Interfaces</h2></div></div></div>
31 <a name="id2610903"></a>Farsight GStreamer Interfaces</h2></div></div></div>
3232 <div class="toc"><dl><dt>
3333 <span class="refentrytitle"><a href="FsConference.html">FsConference</a></span><span class="refpurpose"> — Interface for farsight conference elements</span>
3434 </dt></dl></div>
2828 </tr></table>
2929 <div class="chapter" lang="en">
3030 <div class="titlepage"><div><div><h2 class="title">
31 <a name="id2603642"></a>Farsight Core Library</h2></div></div></div>
31 <a name="id2572026"></a>Farsight Core Library</h2></div></div></div>
3232 <div class="toc"><dl>
3333 <dt>
3434 <span class="refentrytitle"><a href="FsParticipant.html">FsParticipant</a></span><span class="refpurpose"> — A participant in a conference</span>
2828 </tr></table>
2929 <div class="chapter" lang="en">
3030 <div class="titlepage"><div><div><h2 class="title">
31 <a name="id2603670"></a>Farsight Utility Functions and Objects</h2></div></div></div>
31 <a name="id2572054"></a>Farsight Utility Functions and Objects</h2></div></div></div>
3232 <div class="toc"><dl>
3333 <dt>
3434 <span class="refentrytitle"><a href="FsElementAddedNotifier.html">FsElementAddedNotifier</a></span><span class="refpurpose"> — Recursive element addition notifier</span>
2828 </tr></table>
2929 <div class="chapter" lang="en">
3030 <div class="titlepage"><div><div><h2 class="title">
31 <a name="id2603691"></a>Farsight Classes Base Implementations</h2></div></div></div>
31 <a name="id2610950"></a>Farsight Classes Base Implementations</h2></div></div></div>
3232 <div class="toc"><dl><dt>
3333 <span class="refentrytitle"><a href="FsBaseConference.html">FsBaseConference</a></span><span class="refpurpose"> — Base class for Farsight Conference Gstreamer Elements</span>
3434 </dt></dl></div>
2828 </tr></table>
2929 <div class="chapter" lang="en">
3030 <div class="titlepage"><div><div><h2 class="title">
31 <a name="id2637500"></a>Farsight Transmitter Classes</h2></div></div></div>
31 <a name="id2610961"></a>Farsight Transmitter Classes</h2></div></div></div>
3232 <div class="toc"><dl>
3333 <dt>
3434 <span class="refentrytitle"><a href="FsTransmitter.html">FsTransmitter</a></span><span class="refpurpose"> — A transmitter object linked to a session</span>
2828 </tr></table>
2929 <div class="chapter" lang="en">
3030 <div class="titlepage"><div><div><h2 class="title">
31 <a name="id2637515"></a>Farsight Plugins Infrastructure</h2></div></div></div>
31 <a name="id2610976"></a>Farsight Plugins Infrastructure</h2></div></div></div>
3232 <div class="toc"><dl><dt>
3333 <span class="refentrytitle"><a href="farsight2-libs-FsPlugin.html">FsPlugin</a></span><span class="refpurpose"> — A class for defining Farsight plugins</span>
3434 </dt></dl></div>
3131 </sub>
3232 </chapters>
3333 <functions>
34 <function name="The &quot;farsight-error&quot; message" link="FsConference.html#id2603056"/>
34 <function name="The &quot;farsight-error&quot; message" link="FsConference.html#id2576999"/>
3535 <function name="FsConference" link="FsConference.html#FsConference-struct"/>
3636 <function name="fs_conference_new_session ()" link="FsConference.html#fs-conference-new-session"/>
3737 <function name="fs_conference_new_participant ()" link="FsConference.html#fs-conference-new-participant"/>
4444 <function name="FS_PARTICIPANT_DATA_UNLOCK()" link="FsParticipant.html#FS-PARTICIPANT-DATA-UNLOCK:CAPS"/>
4545 <function name="The &quot;cname&quot; property" link="FsParticipant.html#FsParticipant--cname"/>
4646 <function name="The &quot;error&quot; signal" link="FsParticipant.html#FsParticipant-error"/>
47 <function name="The &quot;farsight-send-codec-changed&quot;&#10; message" link="FsSession.html#id2667034"/>
48 <function name="The &quot;farsight-codecs-changed&quot;&#10; message" link="FsSession.html#id2667078"/>
47 <function name="The &quot;farsight-send-codec-changed&quot;&#10; message" link="FsSession.html#id2644079"/>
48 <function name="The &quot;farsight-codecs-changed&quot;&#10; message" link="FsSession.html#id2644123"/>
4949 <function name="enum FsDTMFEvent" link="FsSession.html#FsDTMFEvent"/>
5050 <function name="enum FsDTMFMethod" link="FsSession.html#FsDTMFMethod"/>
5151 <function name="FsSession" link="FsSession.html#FsSession-struct"/>
6666 <function name="The &quot;media-type&quot; property" link="FsSession.html#FsSession--media-type"/>
6767 <function name="The &quot;sink-pad&quot; property" link="FsSession.html#FsSession--sink-pad"/>
6868 <function name="The &quot;error&quot; signal" link="FsSession.html#FsSession-error"/>
69 <function name="The &quot;farsight-new-local-candidate&quot; message" link="FsStream.html#id2653821"/>
70 <function name="The &quot;farsight-local-candidates-prepared&quot; message" link="FsStream.html#id2653858"/>
71 <function name="The &quot;farsight-new-active-candidate-pair&quot; message" link="FsStream.html#id2653890"/>
72 <function name="The &quot;farsight-recv-codecs-changed&quot; message" link="FsStream.html#id2653939"/>
73 <function name="The &quot;farsight-component-state-changed&quot; message" link="FsStream.html#id2654007"/>
69 <function name="The &quot;farsight-new-local-candidate&quot; message" link="FsStream.html#id2662807"/>
70 <function name="The &quot;farsight-local-candidates-prepared&quot; message" link="FsStream.html#id2662843"/>
71 <function name="The &quot;farsight-new-active-candidate-pair&quot; message" link="FsStream.html#id2662875"/>
72 <function name="The &quot;farsight-recv-codecs-changed&quot; message" link="FsStream.html#id2662924"/>
73 <function name="The &quot;farsight-component-state-changed&quot; message" link="FsStream.html#id2662992"/>
7474 <function name="FsStream" link="FsStream.html#FsStream-struct"/>
7575 <function name="FsStreamClass" link="FsStream.html#FsStreamClass"/>
7676 <function name="enum FsStreamDirection" link="FsStream.html#FsStreamDirection"/>
3131 </sub>
3232 </chapters>
3333 <functions>
34 <keyword type="" name="The &quot;farsight-error&quot; message" link="FsConference.html#id2603056"/>
34 <keyword type="" name="The &quot;farsight-error&quot; message" link="FsConference.html#id2576999"/>
3535 <keyword type="struct" name="FsConference" link="FsConference.html#FsConference-struct"/>
3636 <keyword type="function" name="fs_conference_new_session ()" link="FsConference.html#fs-conference-new-session"/>
3737 <keyword type="function" name="fs_conference_new_participant ()" link="FsConference.html#fs-conference-new-participant"/>
4444 <keyword type="macro" name="FS_PARTICIPANT_DATA_UNLOCK()" link="FsParticipant.html#FS-PARTICIPANT-DATA-UNLOCK:CAPS"/>
4545 <keyword type="" name="The &quot;cname&quot; property" link="FsParticipant.html#FsParticipant--cname"/>
4646 <keyword type="" name="The &quot;error&quot; signal" link="FsParticipant.html#FsParticipant-error"/>
47 <keyword type="" name="The &quot;farsight-send-codec-changed&quot;&#10; message" link="FsSession.html#id2667034"/>
48 <keyword type="" name="The &quot;farsight-codecs-changed&quot;&#10; message" link="FsSession.html#id2667078"/>
47 <keyword type="" name="The &quot;farsight-send-codec-changed&quot;&#10; message" link="FsSession.html#id2644079"/>
48 <keyword type="" name="The &quot;farsight-codecs-changed&quot;&#10; message" link="FsSession.html#id2644123"/>
4949 <keyword type="enum" name="enum FsDTMFEvent" link="FsSession.html#FsDTMFEvent"/>
5050 <keyword type="enum" name="enum FsDTMFMethod" link="FsSession.html#FsDTMFMethod"/>
5151 <keyword type="struct" name="FsSession" link="FsSession.html#FsSession-struct"/>
6666 <keyword type="" name="The &quot;media-type&quot; property" link="FsSession.html#FsSession--media-type"/>
6767 <keyword type="" name="The &quot;sink-pad&quot; property" link="FsSession.html#FsSession--sink-pad"/>
6868 <keyword type="" name="The &quot;error&quot; signal" link="FsSession.html#FsSession-error"/>
69 <keyword type="" name="The &quot;farsight-new-local-candidate&quot; message" link="FsStream.html#id2653821"/>
70 <keyword type="" name="The &quot;farsight-local-candidates-prepared&quot; message" link="FsStream.html#id2653858"/>
71 <keyword type="" name="The &quot;farsight-new-active-candidate-pair&quot; message" link="FsStream.html#id2653890"/>
72 <keyword type="" name="The &quot;farsight-recv-codecs-changed&quot; message" link="FsStream.html#id2653939"/>
73 <keyword type="" name="The &quot;farsight-component-state-changed&quot; message" link="FsStream.html#id2654007"/>
69 <keyword type="" name="The &quot;farsight-new-local-candidate&quot; message" link="FsStream.html#id2662807"/>
70 <keyword type="" name="The &quot;farsight-local-candidates-prepared&quot; message" link="FsStream.html#id2662843"/>
71 <keyword type="" name="The &quot;farsight-new-active-candidate-pair&quot; message" link="FsStream.html#id2662875"/>
72 <keyword type="" name="The &quot;farsight-recv-codecs-changed&quot; message" link="FsStream.html#id2662924"/>
73 <keyword type="" name="The &quot;farsight-component-state-changed&quot; message" link="FsStream.html#id2662992"/>
7474 <keyword type="struct" name="FsStream" link="FsStream.html#FsStream-struct"/>
7575 <keyword type="struct" name="FsStreamClass" link="FsStream.html#FsStreamClass"/>
7676 <keyword type="enum" name="enum FsStreamDirection" link="FsStream.html#FsStreamDirection"/>
Binary diff not shown
2222 <div>
2323 <div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">Farsight2 Reference Manual</p></th></tr></table></div>
2424 <div><p class="releaseinfo">
25 for version 0.0.7.1.
25 for version 0.0.8.1.
2626 The latest version of this documentation can be found on-line at
2727 <a class="ulink" href="http://farsight.freedesktop.org/apidoc/farsight2/" target="_top">http://farsight.freedesktop.org/apidoc/farsight2/</a>.
2828 </p></div>
Binary diff not shown
2828 </tr></table>
2929 <div class="part" lang="en">
3030 <div class="titlepage"><div><div><h1 class="title">
31 <a name="id2637476"></a>Part I. User-oriented classes, interfaces and functions</h1></div></div></div>
31 <a name="id2610916"></a>Part I. User-oriented classes, interfaces and functions</h1></div></div></div>
3232 <div class="toc">
3333 <p><b>Table of Contents</b></p>
3434 <dl>
2828 </tr></table>
2929 <div class="part" lang="en">
3030 <div class="titlepage"><div><div><h1 class="title">
31 <a name="id2603686"></a>Part II. Classes used to implement Farsight plugins</h1></div></div></div>
31 <a name="id2610945"></a>Part II. Classes used to implement Farsight plugins</h1></div></div></div>
3232 <div class="toc">
3333 <p><b>Table of Contents</b></p>
3434 <dl>
Binary diff not shown
Binary diff not shown
+0
-0
docs/libs/tmpl/farsight2-libs-unused.sgml less more
(Empty file)
+0
-34
docs/libs/tmpl/fs-base-conference.sgml less more
0 <!-- ##### SECTION Title ##### -->
1 FsBaseConference
2
3 <!-- ##### SECTION Short_Description ##### -->
4
5
6 <!-- ##### SECTION Long_Description ##### -->
7 <para>
8
9 </para>
10
11 <!-- ##### SECTION See_Also ##### -->
12 <para>
13
14 </para>
15
16 <!-- ##### SECTION Stability_Level ##### -->
17
18
19 <!-- ##### STRUCT FsBaseConference ##### -->
20 <para>
21
22 </para>
23
24
25 <!-- ##### STRUCT FsBaseConferenceClass ##### -->
26 <para>
27
28 </para>
29
30 @parent_class:
31 @new_session:
32 @new_participant:
33
+0
-113
docs/libs/tmpl/fs-candidate.sgml less more
0 <!-- ##### SECTION Title ##### -->
1 FsCandidate
2
3 <!-- ##### SECTION Short_Description ##### -->
4
5
6 <!-- ##### SECTION Long_Description ##### -->
7 <para>
8
9 </para>
10
11 <!-- ##### SECTION See_Also ##### -->
12 <para>
13
14 </para>
15
16 <!-- ##### SECTION Stability_Level ##### -->
17
18
19 <!-- ##### STRUCT FsCandidate ##### -->
20 <para>
21
22 </para>
23
24 @foundation:
25 @component_id:
26 @ip:
27 @port:
28 @base_ip:
29 @base_port:
30 @proto:
31 @priority:
32 @type:
33 @username:
34 @password:
35 @ttl:
36
37 <!-- ##### ENUM FsCandidateType ##### -->
38 <para>
39
40 </para>
41
42 @FS_CANDIDATE_TYPE_HOST:
43 @FS_CANDIDATE_TYPE_SRFLX:
44 @FS_CANDIDATE_TYPE_PRFLX:
45 @FS_CANDIDATE_TYPE_RELAY:
46 @FS_CANDIDATE_TYPE_MULTICAST:
47
48 <!-- ##### ENUM FsNetworkProtocol ##### -->
49 <para>
50
51 </para>
52
53 @FS_NETWORK_PROTOCOL_UDP:
54 @FS_NETWORK_PROTOCOL_TCP:
55
56 <!-- ##### ENUM FsComponentType ##### -->
57 <para>
58
59 </para>
60
61 @FS_COMPONENT_NONE:
62 @FS_COMPONENT_RTP:
63 @FS_COMPONENT_RTCP:
64
65 <!-- ##### FUNCTION fs_candidate_new ##### -->
66 <para>
67
68 </para>
69
70 @foundation:
71 @component_id:
72 @type:
73 @proto:
74 @ip:
75 @port:
76 @Returns:
77
78
79 <!-- ##### FUNCTION fs_candidate_destroy ##### -->
80 <para>
81
82 </para>
83
84 @cand:
85
86
87 <!-- ##### FUNCTION fs_candidate_copy ##### -->
88 <para>
89
90 </para>
91
92 @cand:
93 @Returns:
94
95
96 <!-- ##### FUNCTION fs_candidate_list_destroy ##### -->
97 <para>
98
99 </para>
100
101 @candidate_list:
102
103
104 <!-- ##### FUNCTION fs_candidate_list_copy ##### -->
105 <para>
106
107 </para>
108
109 @candidate_list:
110 @Returns:
111
112
+0
-201
docs/libs/tmpl/fs-codec.sgml less more
0 <!-- ##### SECTION Title ##### -->
1 FsCodec
2
3 <!-- ##### SECTION Short_Description ##### -->
4
5
6 <!-- ##### SECTION Long_Description ##### -->
7 <para>
8
9 </para>
10
11 <!-- ##### SECTION See_Also ##### -->
12 <para>
13
14 </para>
15
16 <!-- ##### SECTION Stability_Level ##### -->
17
18
19 <!-- ##### STRUCT FsCodec ##### -->
20 <para>
21
22 </para>
23
24 @id:
25 @encoding_name:
26 @media_type:
27 @clock_rate:
28 @channels:
29 @optional_params:
30
31 <!-- ##### ENUM FsMediaType ##### -->
32 <para>
33
34 </para>
35
36 @FS_MEDIA_TYPE_AUDIO:
37 @FS_MEDIA_TYPE_VIDEO:
38 @FS_MEDIA_TYPE_LAST:
39
40 <!-- ##### STRUCT FsCodecParameter ##### -->
41 <para>
42
43 </para>
44
45 @name:
46 @value:
47
48 <!-- ##### MACRO FS_CODEC_ID_ANY ##### -->
49 <para>
50
51 </para>
52
53
54
55 <!-- ##### MACRO FS_CODEC_ID_DISABLE ##### -->
56 <para>
57
58 </para>
59
60
61
62 <!-- ##### FUNCTION fs_codec_new ##### -->
63 <para>
64
65 </para>
66
67 @id:
68 @encoding_name:
69 @media_type:
70 @clock_rate:
71 @Returns:
72
73
74 <!-- ##### FUNCTION fs_codec_destroy ##### -->
75 <para>
76
77 </para>
78
79 @codec:
80
81
82 <!-- ##### FUNCTION fs_codec_copy ##### -->
83 <para>
84
85 </para>
86
87 @codec:
88 @Returns:
89
90
91 <!-- ##### FUNCTION fs_codec_are_equal ##### -->
92 <para>
93
94 </para>
95
96 @codec1:
97 @codec2:
98 @Returns:
99
100
101 <!-- ##### FUNCTION fs_codec_list_from_keyfile ##### -->
102 <para>
103
104 </para>
105
106 @filename:
107 @error:
108 @Returns:
109
110
111 <!-- ##### FUNCTION fs_codec_list_destroy ##### -->
112 <para>
113
114 </para>
115
116 @codec_list:
117
118
119 <!-- ##### FUNCTION fs_codec_list_copy ##### -->
120 <para>
121
122 </para>
123
124 @codec_list:
125 @Returns:
126
127
128 <!-- ##### FUNCTION fs_codec_list_are_equal ##### -->
129 <para>
130
131 </para>
132
133 @list1:
134 @list2:
135 @Returns:
136
137
138 <!-- ##### FUNCTION fs_codec_to_string ##### -->
139 <para>
140
141 </para>
142
143 @codec:
144 @Returns:
145
146
147 <!-- ##### FUNCTION fs_codec_add_optional_parameter ##### -->
148 <para>
149
150 </para>
151
152 @codec:
153 @name:
154 @value:
155
156
157 <!-- ##### FUNCTION fs_codec_remove_optional_parameter ##### -->
158 <para>
159
160 </para>
161
162 @codec:
163 @param:
164
165
166 <!-- ##### FUNCTION fs_codec_get_optional_parameter ##### -->
167 <para>
168
169 </para>
170
171 @codec:
172 @name:
173 @value:
174 @Returns:
175
176
177 <!-- ##### MACRO FS_CODEC_FORMAT ##### -->
178 <para>
179
180 </para>
181
182
183
184 <!-- ##### MACRO FS_CODEC_ARGS ##### -->
185 <para>
186
187 </para>
188
189 @codec:
190
191
192 <!-- ##### FUNCTION fs_media_type_to_string ##### -->
193 <para>
194
195 </para>
196
197 @media_type:
198 @Returns:
199
200
+0
-80
docs/libs/tmpl/fs-conference-iface.sgml less more
0 <!-- ##### SECTION Title ##### -->
1 FsConference
2
3 <!-- ##### SECTION Short_Description ##### -->
4
5
6 <!-- ##### SECTION Long_Description ##### -->
7 <para>
8
9 </para>
10
11 <!-- ##### SECTION See_Also ##### -->
12 <para>
13
14 </para>
15
16 <!-- ##### SECTION Stability_Level ##### -->
17
18
19 <!-- ##### STRUCT FsConference ##### -->
20 <para>
21
22 </para>
23
24
25 <!-- ##### FUNCTION fs_conference_new_session ##### -->
26 <para>
27
28 </para>
29
30 @conference:
31 @media_type:
32 @error:
33 @Returns:
34
35
36 <!-- ##### FUNCTION fs_conference_new_participant ##### -->
37 <para>
38
39 </para>
40
41 @conference:
42 @cname:
43 @error:
44 @Returns:
45
46
47 <!-- ##### MACRO FS_ERROR ##### -->
48 <para>
49
50 </para>
51
52
53
54 <!-- ##### ENUM FsError ##### -->
55 <para>
56
57 </para>
58
59 @FS_ERROR_CONSTRUCTION:
60 @FS_ERROR_INTERNAL:
61 @FS_ERROR_INVALID_ARGUMENTS:
62 @FS_ERROR_NETWORK:
63 @FS_ERROR_NOT_IMPLEMENTED:
64 @FS_ERROR_NEGOTIATION_FAILED:
65 @FS_ERROR_UNKNOWN_CODEC:
66 @FS_ERROR_UNKNOWN_CNAME:
67 @FS_ERROR_NO_CODECS:
68 @FS_ERROR_NO_CODECS_LEFT:
69 @FS_ERROR_CONNECTION_FAILED:
70 @FS_ERROR_DISPOSED:
71
72 <!-- ##### MACRO FS_ERROR_IS_FATAL ##### -->
73 <para>
74
75 </para>
76
77 @error:
78
79
+0
-70
docs/libs/tmpl/fs-element-added-notifier.sgml less more
0 <!-- ##### SECTION Title ##### -->
1 FsElementAddedNotifier
2
3 <!-- ##### SECTION Short_Description ##### -->
4
5
6 <!-- ##### SECTION Long_Description ##### -->
7 <para>
8
9 </para>
10
11 <!-- ##### SECTION See_Also ##### -->
12 <para>
13
14 </para>
15
16 <!-- ##### SECTION Stability_Level ##### -->
17
18
19 <!-- ##### STRUCT FsElementAddedNotifier ##### -->
20 <para>
21
22 </para>
23
24
25 <!-- ##### SIGNAL FsElementAddedNotifier::element-added ##### -->
26 <para>
27
28 </para>
29
30 @fselementaddednotifier: the object which received the signal.
31 @arg1:
32 @arg2:
33
34 <!-- ##### FUNCTION fs_element_added_notifier_new ##### -->
35 <para>
36
37 </para>
38
39 @Returns:
40
41
42 <!-- ##### FUNCTION fs_element_added_notifier_add ##### -->
43 <para>
44
45 </para>
46
47 @notifier:
48 @bin:
49
50
51 <!-- ##### FUNCTION fs_element_added_notifier_remove ##### -->
52 <para>
53
54 </para>
55
56 @notifier:
57 @bin:
58 @Returns:
59
60
61 <!-- ##### FUNCTION fs_element_added_notifier_set_properties_from_keyfile ##### -->
62 <para>
63
64 </para>
65
66 @notifier:
67 @keyfile:
68
69
+0
-45
docs/libs/tmpl/fs-interfaces.sgml less more
0 <!-- ##### SECTION Title ##### -->
1 Network interfaces discovery
2
3 <!-- ##### SECTION Short_Description ##### -->
4
5
6 <!-- ##### SECTION Long_Description ##### -->
7 <para>
8
9 </para>
10
11 <!-- ##### SECTION See_Also ##### -->
12 <para>
13
14 </para>
15
16 <!-- ##### SECTION Stability_Level ##### -->
17
18
19 <!-- ##### FUNCTION fs_interfaces_get_ip_for_interface ##### -->
20 <para>
21
22 </para>
23
24 @interface_name:
25 @Returns:
26
27
28 <!-- ##### FUNCTION fs_interfaces_get_local_interfaces ##### -->
29 <para>
30
31 </para>
32
33 @Returns:
34
35
36 <!-- ##### FUNCTION fs_interfaces_get_local_ips ##### -->
37 <para>
38
39 </para>
40
41 @include_loopback:
42 @Returns:
43
44
+0
-64
docs/libs/tmpl/fs-participant.sgml less more
0 <!-- ##### SECTION Title ##### -->
1 FsParticipant
2
3 <!-- ##### SECTION Short_Description ##### -->
4
5
6 <!-- ##### SECTION Long_Description ##### -->
7 <para>
8
9 </para>
10
11 <!-- ##### SECTION See_Also ##### -->
12 <para>
13
14 </para>
15
16 <!-- ##### SECTION Stability_Level ##### -->
17
18
19 <!-- ##### STRUCT FsParticipant ##### -->
20 <para>
21
22 </para>
23
24
25 <!-- ##### SIGNAL FsParticipant::error ##### -->
26 <para>
27
28 </para>
29
30 @fsparticipant: the object which received the signal.
31 @arg1:
32 @arg2:
33 @arg3:
34 @arg4:
35
36 <!-- ##### ARG FsParticipant:cname ##### -->
37 <para>
38
39 </para>
40
41 <!-- ##### STRUCT FsParticipantClass ##### -->
42 <para>
43
44 </para>
45
46 @parent_class:
47
48 <!-- ##### MACRO FS_PARTICIPANT_DATA_LOCK ##### -->
49 <para>
50
51 </para>
52
53 @participant:
54
55
56 <!-- ##### MACRO FS_PARTICIPANT_DATA_UNLOCK ##### -->
57 <para>
58
59 </para>
60
61 @participant:
62
63
+0
-69
docs/libs/tmpl/fs-plugin.sgml less more
0 <!-- ##### SECTION Title ##### -->
1 FsPlugin
2
3 <!-- ##### SECTION Short_Description ##### -->
4
5
6 <!-- ##### SECTION Long_Description ##### -->
7 <para>
8
9 </para>
10
11 <!-- ##### SECTION See_Also ##### -->
12 <para>
13
14 </para>
15
16 <!-- ##### SECTION Stability_Level ##### -->
17
18
19 <!-- ##### STRUCT FsPlugin ##### -->
20 <para>
21
22 </para>
23
24 @parent:
25
26 <!-- ##### FUNCTION fs_plugin_create_valist ##### -->
27 <para>
28
29 </para>
30
31 @name:
32 @type_suffix:
33 @error:
34 @first_property_name:
35 @var_args:
36 @Returns:
37
38
39 <!-- ##### FUNCTION fs_plugin_create ##### -->
40 <para>
41
42 </para>
43
44 @name:
45 @type_suffix:
46 @error:
47 @first_property_name:
48 @Varargs:
49 @Returns:
50
51
52 <!-- ##### MACRO FS_INIT_PLUGIN ##### -->
53 <para>
54
55 </para>
56
57 @type_register_func:
58
59
60 <!-- ##### FUNCTION fs_plugin_list_available ##### -->
61 <para>
62
63 </para>
64
65 @type_suffix:
66 @Returns:
67
68
+0
-199
docs/libs/tmpl/fs-session.sgml less more
0 <!-- ##### SECTION Title ##### -->
1 FsSession
2
3 <!-- ##### SECTION Short_Description ##### -->
4
5
6 <!-- ##### SECTION Long_Description ##### -->
7 <para>
8
9 </para>
10
11 <!-- ##### SECTION See_Also ##### -->
12 <para>
13
14 </para>
15
16 <!-- ##### SECTION Stability_Level ##### -->
17
18
19 <!-- ##### ENUM FsDTMFEvent ##### -->
20 <para>
21
22 </para>
23
24 @FS_DTMF_EVENT_0:
25 @FS_DTMF_EVENT_1:
26 @FS_DTMF_EVENT_2:
27 @FS_DTMF_EVENT_3:
28 @FS_DTMF_EVENT_4:
29 @FS_DTMF_EVENT_5:
30 @FS_DTMF_EVENT_6:
31 @FS_DTMF_EVENT_7:
32 @FS_DTMF_EVENT_8:
33 @FS_DTMF_EVENT_9:
34 @FS_DTMF_EVENT_STAR:
35 @FS_DTMF_EVENT_POUND:
36 @FS_DTMF_EVENT_A:
37 @FS_DTMF_EVENT_B:
38 @FS_DTMF_EVENT_C:
39 @FS_DTMF_EVENT_D:
40
41 <!-- ##### ENUM FsDTMFMethod ##### -->
42 <para>
43
44 </para>
45
46 @FS_DTMF_METHOD_AUTO:
47 @FS_DTMF_METHOD_RTP_RFC4733:
48 @FS_DTMF_METHOD_IN_BAND:
49
50 <!-- ##### STRUCT FsSession ##### -->
51 <para>
52
53 </para>
54
55
56 <!-- ##### SIGNAL FsSession::error ##### -->
57 <para>
58
59 </para>
60
61 @fssession: the object which received the signal.
62 @arg1:
63 @arg2:
64 @arg3:
65 @arg4:
66
67 <!-- ##### ARG FsSession:codec-preferences ##### -->
68 <para>
69
70 </para>
71
72 <!-- ##### ARG FsSession:codecs ##### -->
73 <para>
74
75 </para>
76
77 <!-- ##### ARG FsSession:codecs-ready ##### -->
78 <para>
79
80 </para>
81
82 <!-- ##### ARG FsSession:codecs-without-config ##### -->
83 <para>
84
85 </para>
86
87 <!-- ##### ARG FsSession:current-send-codec ##### -->
88 <para>
89
90 </para>
91
92 <!-- ##### ARG FsSession:id ##### -->
93 <para>
94
95 </para>
96
97 <!-- ##### ARG FsSession:media-type ##### -->
98 <para>
99
100 </para>
101
102 <!-- ##### ARG FsSession:sink-pad ##### -->
103 <para>
104
105 </para>
106
107 <!-- ##### STRUCT FsSessionClass ##### -->
108 <para>
109
110 </para>
111
112 @parent_class:
113 @new_stream:
114 @start_telephony_event:
115 @stop_telephony_event:
116 @set_send_codec:
117 @set_codec_preferences:
118 @list_transmitters:
119
120 <!-- ##### FUNCTION fs_session_new_stream ##### -->
121 <para>
122
123 </para>
124
125 @session:
126 @participant:
127 @direction:
128 @transmitter:
129 @stream_transmitter_n_parameters:
130 @stream_transmitter_parameters:
131 @error:
132 @Returns:
133
134
135 <!-- ##### FUNCTION fs_session_start_telephony_event ##### -->
136 <para>
137
138 </para>
139
140 @session:
141 @event:
142 @volume:
143 @method:
144 @Returns:
145
146
147 <!-- ##### FUNCTION fs_session_stop_telephony_event ##### -->
148 <para>
149
150 </para>
151
152 @session:
153 @method:
154 @Returns:
155
156
157 <!-- ##### FUNCTION fs_session_set_send_codec ##### -->
158 <para>
159
160 </para>
161
162 @session:
163 @send_codec:
164 @error:
165 @Returns:
166
167
168 <!-- ##### FUNCTION fs_session_set_codec_preferences ##### -->
169 <para>
170
171 </para>
172
173 @session:
174 @codec_preferences:
175 @error:
176 @Returns:
177
178
179 <!-- ##### FUNCTION fs_session_list_transmitters ##### -->
180 <para>
181
182 </para>
183
184 @session:
185 @Returns:
186
187
188 <!-- ##### FUNCTION fs_session_emit_error ##### -->
189 <para>
190
191 </para>
192
193 @session:
194 @error_no:
195 @error_msg:
196 @debug_msg:
197
198
+0
-154
docs/libs/tmpl/fs-stream-transmitter.sgml less more
0 <!-- ##### SECTION Title ##### -->
1 FsStreamTransmitter
2
3 <!-- ##### SECTION Short_Description ##### -->
4
5
6 <!-- ##### SECTION Long_Description ##### -->
7 <para>
8
9 </para>
10
11 <!-- ##### SECTION See_Also ##### -->
12 <para>
13
14 </para>
15
16 <!-- ##### SECTION Stability_Level ##### -->
17
18
19 <!-- ##### STRUCT FsStreamTransmitter ##### -->
20 <para>
21
22 </para>
23
24
25 <!-- ##### SIGNAL FsStreamTransmitter::error ##### -->
26 <para>
27
28 </para>
29
30 @fsstreamtransmitter: the object which received the signal.
31 @arg1:
32 @arg2:
33 @arg3:
34
35 <!-- ##### SIGNAL FsStreamTransmitter::known-source-packet-received ##### -->
36 <para>
37
38 </para>
39
40 @fsstreamtransmitter: the object which received the signal.
41 @arg1:
42 @arg2:
43
44 <!-- ##### SIGNAL FsStreamTransmitter::local-candidates-prepared ##### -->
45 <para>
46
47 </para>
48
49 @fsstreamtransmitter: the object which received the signal.
50
51 <!-- ##### SIGNAL FsStreamTransmitter::new-active-candidate-pair ##### -->
52 <para>
53
54 </para>
55
56 @fsstreamtransmitter: the object which received the signal.
57 @arg1:
58 @arg2:
59
60 <!-- ##### SIGNAL FsStreamTransmitter::new-local-candidate ##### -->
61 <para>
62
63 </para>
64
65 @fsstreamtransmitter: the object which received the signal.
66 @arg1:
67
68 <!-- ##### SIGNAL FsStreamTransmitter::state-changed ##### -->
69 <para>
70
71 </para>
72
73 @fsstreamtransmitter: the object which received the signal.
74 @arg1:
75 @arg2:
76
77 <!-- ##### ARG FsStreamTransmitter:associate-on-source ##### -->
78 <para>
79
80 </para>
81
82 <!-- ##### ARG FsStreamTransmitter:preferred-local-candidates ##### -->
83 <para>
84
85 </para>
86
87 <!-- ##### ARG FsStreamTransmitter:sending ##### -->
88 <para>
89
90 </para>
91
92 <!-- ##### STRUCT FsStreamTransmitterClass ##### -->
93 <para>
94
95 </para>
96
97 @parent_class:
98 @set_remote_candidates:
99 @force_remote_candidates:
100 @gather_local_candidates:
101 @stop:
102
103 <!-- ##### FUNCTION fs_stream_transmitter_set_remote_candidates ##### -->
104 <para>
105
106 </para>
107
108 @streamtransmitter:
109 @candidates:
110 @error:
111 @Returns:
112
113
114 <!-- ##### FUNCTION fs_stream_transmitter_gather_local_candidates ##### -->
115 <para>
116
117 </para>
118
119 @streamtransmitter:
120 @error:
121 @Returns:
122
123
124 <!-- ##### FUNCTION fs_stream_transmitter_force_remote_candidates ##### -->
125 <para>
126
127 </para>
128
129 @streamtransmitter:
130 @remote_candidates:
131 @error:
132 @Returns:
133
134
135 <!-- ##### FUNCTION fs_stream_transmitter_stop ##### -->
136 <para>
137
138 </para>
139
140 @streamtransmitter:
141
142
143 <!-- ##### FUNCTION fs_stream_transmitter_emit_error ##### -->
144 <para>
145
146 </para>
147
148 @streamtransmitter:
149 @error_no:
150 @error_msg:
151 @debug_msg:
152
153
+0
-165
docs/libs/tmpl/fs-stream.sgml less more
0 <!-- ##### SECTION Title ##### -->
1 FsStream
2
3 <!-- ##### SECTION Short_Description ##### -->
4
5
6 <!-- ##### SECTION Long_Description ##### -->
7 <para>
8
9 </para>
10
11 <!-- ##### SECTION See_Also ##### -->
12 <para>
13
14 </para>
15
16 <!-- ##### SECTION Stability_Level ##### -->
17
18
19 <!-- ##### STRUCT FsStream ##### -->
20 <para>
21
22 </para>
23
24
25 <!-- ##### SIGNAL FsStream::error ##### -->
26 <para>
27
28 </para>
29
30 @fsstream: the object which received the signal.
31 @arg1:
32 @arg2:
33 @arg3:
34
35 <!-- ##### SIGNAL FsStream::src-pad-added ##### -->
36 <para>
37
38 </para>
39
40 @fsstream: the object which received the signal.
41 @arg1:
42 @arg2:
43
44 <!-- ##### ARG FsStream:current-recv-codecs ##### -->
45 <para>
46
47 </para>
48
49 <!-- ##### ARG FsStream:direction ##### -->
50 <para>
51
52 </para>
53
54 <!-- ##### ARG FsStream:negotiated-codecs ##### -->
55 <para>
56
57 </para>
58
59 <!-- ##### ARG FsStream:participant ##### -->
60 <para>
61
62 </para>
63
64 <!-- ##### ARG FsStream:remote-codecs ##### -->
65 <para>
66
67 </para>
68
69 <!-- ##### ARG FsStream:session ##### -->
70 <para>
71
72 </para>
73
74 <!-- ##### ARG FsStream:stream-transmitter ##### -->
75 <para>
76
77 </para>
78
79 <!-- ##### STRUCT FsStreamClass ##### -->
80 <para>
81
82 </para>
83
84 @parent_class:
85 @set_remote_candidates:
86 @force_remote_candidates:
87 @set_remote_codecs:
88
89 <!-- ##### ENUM FsStreamDirection ##### -->
90 <para>
91
92 </para>
93
94 @FS_DIRECTION_NONE:
95 @FS_DIRECTION_SEND:
96 @FS_DIRECTION_RECV:
97 @FS_DIRECTION_BOTH:
98
99 <!-- ##### ENUM FsStreamState ##### -->
100 <para>
101
102 </para>
103
104 @FS_STREAM_STATE_FAILED:
105 @FS_STREAM_STATE_DISCONNECTED:
106 @FS_STREAM_STATE_GATHERING:
107 @FS_STREAM_STATE_CONNECTING:
108 @FS_STREAM_STATE_CONNECTED:
109 @FS_STREAM_STATE_READY:
110
111 <!-- ##### FUNCTION fs_stream_set_remote_candidates ##### -->
112 <para>
113
114 </para>
115
116 @stream:
117 @candidates:
118 @error:
119 @Returns:
120
121
122 <!-- ##### FUNCTION fs_stream_set_remote_codecs ##### -->
123 <para>
124
125 </para>
126
127 @stream:
128 @remote_codecs:
129 @error:
130 @Returns:
131
132
133 <!-- ##### FUNCTION fs_stream_force_remote_candidates ##### -->
134 <para>
135
136 </para>
137
138 @stream:
139 @remote_candidates:
140 @error:
141 @Returns:
142
143
144 <!-- ##### FUNCTION fs_stream_emit_error ##### -->
145 <para>
146
147 </para>
148
149 @stream:
150 @error_no:
151 @error_msg:
152 @debug_msg:
153
154
155 <!-- ##### FUNCTION fs_stream_emit_src_pad_added ##### -->
156 <para>
157
158 </para>
159
160 @stream:
161 @pad:
162 @codec:
163
164
+0
-130
docs/libs/tmpl/fs-transmitter.sgml less more
0 <!-- ##### SECTION Title ##### -->
1 FsTransmitter
2
3 <!-- ##### SECTION Short_Description ##### -->
4
5
6 <!-- ##### SECTION Long_Description ##### -->
7 <para>
8
9 </para>
10
11 <!-- ##### SECTION See_Also ##### -->
12 <para>
13
14 </para>
15
16 <!-- ##### SECTION Stability_Level ##### -->
17
18
19 <!-- ##### STRUCT FsTransmitter ##### -->
20 <para>
21
22 </para>
23
24
25 <!-- ##### SIGNAL FsTransmitter::error ##### -->
26 <para>
27
28 </para>
29
30 @fstransmitter: the object which received the signal.
31 @arg1:
32 @arg2:
33 @arg3:
34
35 <!-- ##### SIGNAL FsTransmitter::get-recvonly-filter ##### -->
36 <para>
37
38 </para>
39
40 @fstransmitter: the object which received the signal.
41 @arg1:
42 @Returns:
43
44 <!-- ##### ARG FsTransmitter:components ##### -->
45 <para>
46
47 </para>
48
49 <!-- ##### ARG FsTransmitter:gst-sink ##### -->
50 <para>
51
52 </para>
53
54 <!-- ##### ARG FsTransmitter:gst-src ##### -->
55 <para>
56
57 </para>
58
59 <!-- ##### STRUCT FsTransmitterClass ##### -->
60 <para>
61
62 </para>
63
64 @parent_class:
65 @new_stream_transmitter:
66 @get_stream_transmitter_type:
67
68 <!-- ##### FUNCTION fs_transmitter_new ##### -->
69 <para>
70
71 </para>
72
73 @type:
74 @components:
75 @error:
76 @Returns:
77
78
79 <!-- ##### FUNCTION fs_transmitter_new_stream_transmitter ##### -->
80 <para>
81
82 </para>
83
84 @transmitter:
85 @participant:
86 @n_parameters:
87 @parameters:
88 @error:
89 @Returns:
90
91
92 <!-- ##### FUNCTION fs_transmitter_get_stream_transmitter_type ##### -->
93 <para>
94
95 </para>
96
97 @transmitter:
98 @Returns:
99
100
101 <!-- ##### FUNCTION fs_transmitter_emit_error ##### -->
102 <para>
103
104 </para>
105
106 @transmitter:
107 @error_no:
108 @error_msg:
109 @debug_msg:
110
111
112 <!-- ##### FUNCTION fs_transmitter_get_recvonly_filter ##### -->
113 <para>
114
115 </para>
116
117 @transmitter:
118 @component:
119 @Returns:
120
121
122 <!-- ##### FUNCTION fs_transmitter_list_available ##### -->
123 <para>
124
125 </para>
126
127 @Returns:
128
129
5656 SCANOBJ_DEPS = \
5757 $(top_builddir)/transmitters/multicast/libmulticast-transmitter.la \
5858 $(top_builddir)/transmitters/rawudp/librawudp-transmitter.la \
59 $(top_builddir)/transmitters/nice/libnice-transmitter.la \
5960 $(top_builddir)/gst/fsrtpconference/libfsrtpconference_doc.la \
6061 $(top_builddir)/gst/funnel/libfsfunnel.la \
6162 $(top_builddir)/gst/videoanyrate/libfsvideoanyrate.la
62
63 if USE_NICE
64 SCANOBJ_DEPS += $(top_builddir)/transmitters/nice/libnice-transmitter.la
65 endif
6663
6764 # Header files to ignore when scanning.
6865 IGNORE_HFILES =
8683 $(top_srcdir)/transmitters/rawudp/fs-rawudp-transmitter.h \
8784 $(top_srcdir)/transmitters/rawudp/fs-rawudp-stream-transmitter.h \
8885 $(top_srcdir)/transmitters/multicast/fs-multicast-transmitter.h \
89 $(top_srcdir)/transmitters/multicast/fs-multicast-stream-transmitter.h
90
91 if USE_NICE
92 EXTRA_HFILES += \
86 $(top_srcdir)/transmitters/multicast/fs-multicast-stream-transmitter.h \
9387 $(top_srcdir)/transmitters/nice/fs-nice-transmitter.h \
9488 $(top_srcdir)/transmitters/nice/fs-nice-stream-transmitter.h
95
96 endif
97
9889
9990 # Images to copy into HTML directory.
10091 HTML_IMAGES =
3434 POST_UNINSTALL = :
3535 build_triplet = @build@
3636 host_triplet = @host@
37 @USE_NICE_TRUE@am__append_1 = $(top_builddir)/transmitters/nice/libnice-transmitter.la
38 @USE_NICE_TRUE@am__append_2 = \
39 @USE_NICE_TRUE@ $(top_srcdir)/transmitters/nice/fs-nice-transmitter.h \
40 @USE_NICE_TRUE@ $(top_srcdir)/transmitters/nice/fs-nice-stream-transmitter.h
41
4237 DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
4338 $(top_srcdir)/common-modified/gtk-doc-plugins.mak
4439 subdir = docs/plugins
4742 $(top_srcdir)/common/m4/as-auto-alt.m4 \
4843 $(top_srcdir)/common/m4/as-compiler-flag.m4 \
4944 $(top_srcdir)/common/m4/as-libtool.m4 \
50 $(top_srcdir)/common/m4/as-python.m4 \
5145 $(top_srcdir)/common/m4/as-scrub-include.m4 \
5246 $(top_srcdir)/common/m4/as-version.m4 \
5347 $(top_srcdir)/common/m4/gst-arch.m4 \
5953 $(top_srcdir)/common/m4/gst-plugindir.m4 \
6054 $(top_srcdir)/common/m4/gst.m4 \
6155 $(top_srcdir)/common/m4/gtk-doc.m4 \
62 $(top_srcdir)/common/m4/isc-posix.m4 \
6356 $(top_srcdir)/common/m4/pkg.m4 \
6457 $(top_srcdir)/m4/as-check-python-headers.m4 \
6558 $(top_srcdir)/configure.ac
183176 PKG_CONFIG = @PKG_CONFIG@
184177 PLUGINDIR = @PLUGINDIR@
185178 PROFILE_CFLAGS = @PROFILE_CFLAGS@
186 PYDOCSTUFF_CFLAGS = @PYDOCSTUFF_CFLAGS@
187 PYDOCSTUFF_LIBS = @PYDOCSTUFF_LIBS@
188179 PYFARSIGHT_CFLAGS = @PYFARSIGHT_CFLAGS@
189180 PYFARSIGHT_LIBS = @PYFARSIGHT_LIBS@
190181 PYTHON = @PYTHON@
312303 # this is a wingo addition
313304 # thomasvs: another nice wingo addition would be an explanation on why
314305 # this is useful ;)
315 SCANOBJ_DEPS = $(top_builddir)/transmitters/multicast/libmulticast-transmitter.la \
306 SCANOBJ_DEPS = \
307 $(top_builddir)/transmitters/multicast/libmulticast-transmitter.la \
316308 $(top_builddir)/transmitters/rawudp/librawudp-transmitter.la \
309 $(top_builddir)/transmitters/nice/libnice-transmitter.la \
317310 $(top_builddir)/gst/fsrtpconference/libfsrtpconference_doc.la \
318311 $(top_builddir)/gst/funnel/libfsfunnel.la \
319 $(top_builddir)/gst/videoanyrate/libfsvideoanyrate.la \
320 $(am__append_1)
312 $(top_builddir)/gst/videoanyrate/libfsvideoanyrate.la
313
321314
322315 # Header files to ignore when scanning.
323316 IGNORE_HFILES =
330323 # or not the plugin will actually build
331324 # but I'm not sure about that - it might be this Just Works given that
332325 # the registry won't have the element
333 EXTRA_HFILES = $(top_srcdir)/gst/funnel/fs-funnel.h \
326 EXTRA_HFILES = \
327 $(top_srcdir)/gst/funnel/fs-funnel.h \
334328 $(top_srcdir)/gst/videoanyrate/videoanyrate.h \
335329 $(top_srcdir)/gst/fsrtpconference/fs-rtp-conference.h \
336330 $(top_srcdir)/gst/fsrtpconference/fs-rtp-session.h \
340334 $(top_srcdir)/transmitters/rawudp/fs-rawudp-stream-transmitter.h \
341335 $(top_srcdir)/transmitters/multicast/fs-multicast-transmitter.h \
342336 $(top_srcdir)/transmitters/multicast/fs-multicast-stream-transmitter.h \
343 $(am__append_2)
337 $(top_srcdir)/transmitters/nice/fs-nice-transmitter.h \
338 $(top_srcdir)/transmitters/nice/fs-nice-stream-transmitter.h
339
344340
345341 # Images to copy into HTML directory.
346342 HTML_IMAGES =
2424 </tr></table>
2525 <div class="chapter" lang="en">
2626 <div class="titlepage"><div><div><h2 class="title">
27 <a name="id2695012"></a>Core interface classes</h2></div></div></div>
27 <a name="id2609265"></a>Core interface classes</h2></div></div></div>
2828 <div class="toc"><dl>
2929 <dt>
3030 <span class="refentrytitle"><a href="farsight2-plugins-FsRtpConference.html">FsRtpConference</a></span><span class="refpurpose"> — Farsight RTP Conference Gstreamer Elements</span>
2424 </tr></table>
2525 <div class="chapter" lang="en">
2626 <div class="titlepage"><div><div><h2 class="title">
27 <a name="id2661202"></a>Transmitters</h2></div></div></div>
27 <a name="id2570400"></a>Transmitters</h2></div></div></div>
2828 <div class="toc"><dl>
2929 <dt>
3030 <span class="refentrytitle"><a href="farsight2-plugins-FsRawUdpStreamTransmitter.html">FsRawUdpStreamTransmitter</a></span><span class="refpurpose"> — A stream transmitter object for UDP with STUN</span>
4949 <div class="refsynopsisdiv">
5050 <h2>Synopsis</h2>
5151 <div class="refsect2" lang="en">
52 <a name="id2707820"></a><h3>Element Information</h3>
52 <a name="id2662076"></a><h3>Element Information</h3>
5353 <div class="variablelist"><table border="0">
5454 <col align="left" valign="top">
5555 <tbody>
7272 </div>
7373 <hr>
7474 <div class="refsect2" lang="en">
75 <a name="id2728755"></a><h3>Element Pads</h3>
75 <a name="id2659709"></a><h3>Element Pads</h3>
7676 <div class="variablelist"><table border="0">
7777 <col align="left" valign="top">
7878 <tbody>
8585 <div class="refsynopsisdiv">
8686 <h2>Synopsis</h2>
8787 <div class="refsect2" lang="en">
88 <a name="id2730166"></a><h3>Element Information</h3>
88 <a name="id2643642"></a><h3>Element Information</h3>
8989 <div class="variablelist"><table border="0">
9090 <col align="left" valign="top">
9191 <tbody>
108108 </div>
109109 <hr>
110110 <div class="refsect2" lang="en">
111 <a name="id2660474"></a><h3>Element Pads</h3>
111 <a name="id2575466"></a><h3>Element Pads</h3>
112112 <div class="variablelist"><table border="0">
113113 <col align="left" valign="top">
114114 <tbody>
6464 SSRC (although if there is a SSRC collision, that SSRC may change).
6565 </p>
6666 <div class="refsect2" lang="en">
67 <a name="id2705161"></a><h3>Codec profiles</h3>
67 <a name="id2649667"></a><h3>Codec profiles</h3>
6868 <p>
6969 It is possible to define "codec profiles", that is non-autodetected
7070 encoding and decoding pipelines for codecs. It is even possible to declare
4949 <div class="refsynopsisdiv">
5050 <h2>Synopsis</h2>
5151 <div class="refsect2" lang="en">
52 <a name="id2714376"></a><h3>Element Information</h3>
52 <a name="id2621212"></a><h3>Element Information</h3>
5353 <div class="variablelist"><table border="0">
5454 <col align="left" valign="top">
5555 <tbody>
7272 </div>
7373 <hr>
7474 <div class="refsect2" lang="en">
75 <a name="id2741846"></a><h3>Element Pads</h3>
75 <a name="id2644845"></a><h3>Element Pads</h3>
7676 <div class="variablelist"><table border="0">
7777 <col align="left" valign="top">
7878 <tbody>
2020 </sub>
2121 </chapters>
2222 <functions>
23 <function name="Element Information" link="farsight2-plugins-FsRtpConference.html#id2730166"/>
24 <function name="Element Pads" link="farsight2-plugins-FsRtpConference.html#id2660474"/>
23 <function name="Element Information" link="farsight2-plugins-FsRtpConference.html#id2643642"/>
24 <function name="Element Pads" link="farsight2-plugins-FsRtpConference.html#id2575466"/>
2525 <function name="FsRtpConference" link="farsight2-plugins-FsRtpConference.html#FsRtpConference"/>
2626 <function name="The &quot;sdes-cname&quot; property" link="farsight2-plugins-FsRtpConference.html#FsRtpConference--sdes-cname"/>
2727 <function name="The &quot;sdes-email&quot; property" link="farsight2-plugins-FsRtpConference.html#FsRtpConference--sdes-email"/>
3131 <function name="The &quot;sdes-phone&quot; property" link="farsight2-plugins-FsRtpConference.html#FsRtpConference--sdes-phone"/>
3232 <function name="The &quot;sdes-tool&quot; property" link="farsight2-plugins-FsRtpConference.html#FsRtpConference--sdes-tool"/>
3333 <function name="FsRtpParticipant" link="farsight2-plugins-FsRtpParticipant.html#FsRtpParticipant"/>
34 <function name="Codec profiles" link="farsight2-plugins-FsRtpSession.html#id2705161"/>
34 <function name="Codec profiles" link="farsight2-plugins-FsRtpSession.html#id2649667"/>
3535 <function name="FsRtpSession" link="farsight2-plugins-FsRtpSession.html#FsRtpSession"/>
3636 <function name="The &quot;no-rtcp-timeout&quot; property" link="farsight2-plugins-FsRtpSession.html#FsRtpSession--no-rtcp-timeout"/>
3737 <function name="The &quot;conference&quot; property" link="farsight2-plugins-FsRtpSession.html#FsRtpSession--conference"/>
5454 <function name="The &quot;stream-id&quot; property" link="farsight2-plugins-FsNiceStreamTransmitter.html#FsNiceStreamTransmitter--stream-id"/>
5555 <function name="The &quot;stun-ip&quot; property" link="farsight2-plugins-FsNiceStreamTransmitter.html#FsNiceStreamTransmitter--stun-ip"/>
5656 <function name="The &quot;stun-port&quot; property" link="farsight2-plugins-FsNiceStreamTransmitter.html#FsNiceStreamTransmitter--stun-port"/>
57 <function name="Element Information" link="farsight2-plugins-FsFunnel.html#id2707820"/>
58 <function name="Element Pads" link="farsight2-plugins-FsFunnel.html#id2728755"/>
57 <function name="Element Information" link="farsight2-plugins-FsFunnel.html#id2662076"/>
58 <function name="Element Pads" link="farsight2-plugins-FsFunnel.html#id2659709"/>
5959 <function name="FsFunnel" link="farsight2-plugins-FsFunnel.html#FsFunnel"/>
60 <function name="Element Information" link="farsight2-plugins-GstVideoanyrate.html#id2714376"/>
61 <function name="Element Pads" link="farsight2-plugins-GstVideoanyrate.html#id2741846"/>
60 <function name="Element Information" link="farsight2-plugins-GstVideoanyrate.html#id2621212"/>
61 <function name="Element Pads" link="farsight2-plugins-GstVideoanyrate.html#id2644845"/>
6262 <function name="GstVideoanyrate" link="farsight2-plugins-GstVideoanyrate.html#GstVideoanyrate"/>
6363 </functions>
6464 </book>
2020 </sub>
2121 </chapters>
2222 <functions>
23 <keyword type="" name="Element Information" link="farsight2-plugins-FsRtpConference.html#id2730166"/>
24 <keyword type="" name="Element Pads" link="farsight2-plugins-FsRtpConference.html#id2660474"/>
23 <keyword type="" name="Element Information" link="farsight2-plugins-FsRtpConference.html#id2643642"/>
24 <keyword type="" name="Element Pads" link="farsight2-plugins-FsRtpConference.html#id2575466"/>
2525 <keyword type="struct" name="FsRtpConference" link="farsight2-plugins-FsRtpConference.html#FsRtpConference"/>
2626 <keyword type="" name="The &quot;sdes-cname&quot; property" link="farsight2-plugins-FsRtpConference.html#FsRtpConference--sdes-cname"/>
2727 <keyword type="" name="The &quot;sdes-email&quot; property" link="farsight2-plugins-FsRtpConference.html#FsRtpConference--sdes-email"/>
3131 <keyword type="" name="The &quot;sdes-phone&quot; property" link="farsight2-plugins-FsRtpConference.html#FsRtpConference--sdes-phone"/>
3232 <keyword type="" name="The &quot;sdes-tool&quot; property" link="farsight2-plugins-FsRtpConference.html#FsRtpConference--sdes-tool"/>
3333 <keyword type="struct" name="FsRtpParticipant" link="farsight2-plugins-FsRtpParticipant.html#FsRtpParticipant"/>
34 <keyword type="" name="Codec profiles" link="farsight2-plugins-FsRtpSession.html#id2705161"/>
34 <keyword type="" name="Codec profiles" link="farsight2-plugins-FsRtpSession.html#id2649667"/>
3535 <keyword type="struct" name="FsRtpSession" link="farsight2-plugins-FsRtpSession.html#FsRtpSession"/>
3636 <keyword type="" name="The &quot;no-rtcp-timeout&quot; property" link="farsight2-plugins-FsRtpSession.html#FsRtpSession--no-rtcp-timeout"/>
3737 <keyword type="" name="The &quot;conference&quot; property" link="farsight2-plugins-FsRtpSession.html#FsRtpSession--conference"/>
5454 <keyword type="" name="The &quot;stream-id&quot; property" link="farsight2-plugins-FsNiceStreamTransmitter.html#FsNiceStreamTransmitter--stream-id"/>
5555 <keyword type="" name="The &quot;stun-ip&quot; property" link="farsight2-plugins-FsNiceStreamTransmitter.html#FsNiceStreamTransmitter--stun-ip"/>
5656 <keyword type="" name="The &quot;stun-port&quot; property" link="farsight2-plugins-FsNiceStreamTransmitter.html#FsNiceStreamTransmitter--stun-port"/>
57 <keyword type="" name="Element Information" link="farsight2-plugins-FsFunnel.html#id2707820"/>
58 <keyword type="" name="Element Pads" link="farsight2-plugins-FsFunnel.html#id2728755"/>
57 <keyword type="" name="Element Information" link="farsight2-plugins-FsFunnel.html#id2662076"/>
58 <keyword type="" name="Element Pads" link="farsight2-plugins-FsFunnel.html#id2659709"/>
5959 <keyword type="struct" name="FsFunnel" link="farsight2-plugins-FsFunnel.html#FsFunnel"/>
60 <keyword type="" name="Element Information" link="farsight2-plugins-GstVideoanyrate.html#id2714376"/>
61 <keyword type="" name="Element Pads" link="farsight2-plugins-GstVideoanyrate.html#id2741846"/>
60 <keyword type="" name="Element Information" link="farsight2-plugins-GstVideoanyrate.html#id2621212"/>
61 <keyword type="" name="Element Pads" link="farsight2-plugins-GstVideoanyrate.html#id2644845"/>
6262 <keyword type="struct" name="GstVideoanyrate" link="farsight2-plugins-GstVideoanyrate.html#GstVideoanyrate"/>
6363 </functions>
6464 </book>
1818 <div>
1919 <div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">Farsight2 Plugins Manual</p></th></tr></table></div>
2020 <div><p class="releaseinfo">
21 for version 0.0.7.1.
21 for version 0.0.8.1.
2222 The latest version of this documentation can be found on-line at
2323 <a class="ulink" href="http://farsight.freedesktop.org/apidoc/farsight2-plugins/" target="_top">http://farsight.freedesktop.org/apidoc/farsight2-plugins/</a>.
2424 </p></div>
2424 </tr></table>
2525 <div class="part" lang="en">
2626 <div class="titlepage"><div><div><h1 class="title">
27 <a name="id2695025"></a>Part I. RTP Plugin</h1></div></div></div>
27 <a name="id2609278"></a>Part I. RTP Plugin</h1></div></div></div>
2828 <div class="toc">
2929 <p><b>Table of Contents</b></p>
3030 <dl>
2424 </tr></table>
2525 <div class="part" lang="en">
2626 <div class="titlepage"><div><div><h1 class="title">
27 <a name="id2661222"></a>Part II. Utility elements</h1></div></div></div>
27 <a name="id2609295"></a>Part II. Utility elements</h1></div></div></div>
2828 <div class="toc">
2929 <p><b>Table of Contents</b></p>
3030 <dl>
3737 $(top_srcdir)/common/m4/as-auto-alt.m4 \
3838 $(top_srcdir)/common/m4/as-compiler-flag.m4 \
3939 $(top_srcdir)/common/m4/as-libtool.m4 \
40 $(top_srcdir)/common/m4/as-python.m4 \
4140 $(top_srcdir)/common/m4/as-scrub-include.m4 \
4241 $(top_srcdir)/common/m4/as-version.m4 \
4342 $(top_srcdir)/common/m4/gst-arch.m4 \
4948 $(top_srcdir)/common/m4/gst-plugindir.m4 \
5049 $(top_srcdir)/common/m4/gst.m4 \
5150 $(top_srcdir)/common/m4/gtk-doc.m4 \
52 $(top_srcdir)/common/m4/isc-posix.m4 \
5351 $(top_srcdir)/common/m4/pkg.m4 \
5452 $(top_srcdir)/m4/as-check-python-headers.m4 \
5553 $(top_srcdir)/configure.ac
185183 PKG_CONFIG = @PKG_CONFIG@
186184 PLUGINDIR = @PLUGINDIR@
187185 PROFILE_CFLAGS = @PROFILE_CFLAGS@
188 PYDOCSTUFF_CFLAGS = @PYDOCSTUFF_CFLAGS@
189 PYDOCSTUFF_LIBS = @PYDOCSTUFF_LIBS@
190186 PYFARSIGHT_CFLAGS = @PYFARSIGHT_CFLAGS@
191187 PYFARSIGHT_LIBS = @PYFARSIGHT_LIBS@
192188 PYTHON = @PYTHON@
3939 $(top_srcdir)/common/m4/as-auto-alt.m4 \
4040 $(top_srcdir)/common/m4/as-compiler-flag.m4 \
4141 $(top_srcdir)/common/m4/as-libtool.m4 \
42 $(top_srcdir)/common/m4/as-python.m4 \
4342 $(top_srcdir)/common/m4/as-scrub-include.m4 \
4443 $(top_srcdir)/common/m4/as-version.m4 \
4544 $(top_srcdir)/common/m4/gst-arch.m4 \
5150 $(top_srcdir)/common/m4/gst-plugindir.m4 \
5251 $(top_srcdir)/common/m4/gst.m4 \
5352 $(top_srcdir)/common/m4/gtk-doc.m4 \
54 $(top_srcdir)/common/m4/isc-posix.m4 \
5553 $(top_srcdir)/common/m4/pkg.m4 \
5654 $(top_srcdir)/m4/as-check-python-headers.m4 \
5755 $(top_srcdir)/configure.ac
197195 PKG_CONFIG = @PKG_CONFIG@
198196 PLUGINDIR = @PLUGINDIR@
199197 PROFILE_CFLAGS = @PROFILE_CFLAGS@
200 PYDOCSTUFF_CFLAGS = @PYDOCSTUFF_CFLAGS@
201 PYDOCSTUFF_LIBS = @PYDOCSTUFF_LIBS@
202198 PYFARSIGHT_CFLAGS = @PYFARSIGHT_CFLAGS@
203199 PYFARSIGHT_LIBS = @PYFARSIGHT_LIBS@
204200 PYTHON = @PYTHON@
3737 $(top_srcdir)/common/m4/as-auto-alt.m4 \
3838 $(top_srcdir)/common/m4/as-compiler-flag.m4 \
3939 $(top_srcdir)/common/m4/as-libtool.m4 \
40 $(top_srcdir)/common/m4/as-python.m4 \
4140 $(top_srcdir)/common/m4/as-scrub-include.m4 \
4241 $(top_srcdir)/common/m4/as-version.m4 \
4342 $(top_srcdir)/common/m4/gst-arch.m4 \
4948 $(top_srcdir)/common/m4/gst-plugindir.m4 \
5049 $(top_srcdir)/common/m4/gst.m4 \
5150 $(top_srcdir)/common/m4/gtk-doc.m4 \
52 $(top_srcdir)/common/m4/isc-posix.m4 \
5351 $(top_srcdir)/common/m4/pkg.m4 \
5452 $(top_srcdir)/m4/as-check-python-headers.m4 \
5553 $(top_srcdir)/configure.ac
173171 PKG_CONFIG = @PKG_CONFIG@
174172 PLUGINDIR = @PLUGINDIR@
175173 PROFILE_CFLAGS = @PROFILE_CFLAGS@
176 PYDOCSTUFF_CFLAGS = @PYDOCSTUFF_CFLAGS@
177 PYDOCSTUFF_LIBS = @PYDOCSTUFF_LIBS@
178174 PYFARSIGHT_CFLAGS = @PYFARSIGHT_CFLAGS@
179175 PYFARSIGHT_LIBS = @PYFARSIGHT_LIBS@
180176 PYTHON = @PYTHON@
3737 $(top_srcdir)/common/m4/as-auto-alt.m4 \
3838 $(top_srcdir)/common/m4/as-compiler-flag.m4 \
3939 $(top_srcdir)/common/m4/as-libtool.m4 \
40 $(top_srcdir)/common/m4/as-python.m4 \
4140 $(top_srcdir)/common/m4/as-scrub-include.m4 \
4241 $(top_srcdir)/common/m4/as-version.m4 \
4342 $(top_srcdir)/common/m4/gst-arch.m4 \
4948 $(top_srcdir)/common/m4/gst-plugindir.m4 \
5049 $(top_srcdir)/common/m4/gst.m4 \
5150 $(top_srcdir)/common/m4/gtk-doc.m4 \
52 $(top_srcdir)/common/m4/isc-posix.m4 \
5351 $(top_srcdir)/common/m4/pkg.m4 \
5452 $(top_srcdir)/m4/as-check-python-headers.m4 \
5553 $(top_srcdir)/configure.ac
184182 PKG_CONFIG = @PKG_CONFIG@
185183 PLUGINDIR = @PLUGINDIR@
186184 PROFILE_CFLAGS = @PROFILE_CFLAGS@
187 PYDOCSTUFF_CFLAGS = @PYDOCSTUFF_CFLAGS@
188 PYDOCSTUFF_LIBS = @PYDOCSTUFF_LIBS@
189185 PYFARSIGHT_CFLAGS = @PYFARSIGHT_CFLAGS@
190186 PYFARSIGHT_LIBS = @PYFARSIGHT_LIBS@
191187 PYTHON = @PYTHON@
4949 $(top_srcdir)/common/m4/as-auto-alt.m4 \
5050 $(top_srcdir)/common/m4/as-compiler-flag.m4 \
5151 $(top_srcdir)/common/m4/as-libtool.m4 \
52 $(top_srcdir)/common/m4/as-python.m4 \
5352 $(top_srcdir)/common/m4/as-scrub-include.m4 \
5453 $(top_srcdir)/common/m4/as-version.m4 \
5554 $(top_srcdir)/common/m4/gst-arch.m4 \
6160 $(top_srcdir)/common/m4/gst-plugindir.m4 \
6261 $(top_srcdir)/common/m4/gst.m4 \
6362 $(top_srcdir)/common/m4/gtk-doc.m4 \
64 $(top_srcdir)/common/m4/isc-posix.m4 \
6563 $(top_srcdir)/common/m4/pkg.m4 \
6664 $(top_srcdir)/m4/as-check-python-headers.m4 \
6765 $(top_srcdir)/configure.ac
266264 PKG_CONFIG = @PKG_CONFIG@
267265 PLUGINDIR = @PLUGINDIR@
268266 PROFILE_CFLAGS = @PROFILE_CFLAGS@
269 PYDOCSTUFF_CFLAGS = @PYDOCSTUFF_CFLAGS@
270 PYDOCSTUFF_LIBS = @PYDOCSTUFF_LIBS@
271267 PYFARSIGHT_CFLAGS = @PYFARSIGHT_CFLAGS@
272268 PYFARSIGHT_LIBS = @PYFARSIGHT_LIBS@
273269 PYTHON = @PYTHON@
109109
110110 GHashTable *transmitters;
111111
112 GList *transmitters_add_sink;
113
112114 /* We keep references to these elements
113115 */
114116
119121 GstElement *transmitter_rtcp_tee;
120122 GstElement *transmitter_rtp_funnel;
121123 GstElement *transmitter_rtcp_funnel;
122 GstElement *transmitter_rtp_fakesink;
123 GstElement *transmitter_rtcp_fakesink;
124124
125125 GstElement *rtpmuxer;
126126
392392 FsRtpSession *self = FS_RTP_SESSION (user_data);
393393 FsTransmitter *transmitter = FS_TRANSMITTER (value);
394394 GstElement *src, *sink;
395 GstObject *parent;
395396
396397 g_object_get (transmitter, "gst-sink", &sink, "gst-src", &src, NULL);
397398
398399 gst_element_set_locked_state (src, TRUE);
399400 gst_element_set_state (src, GST_STATE_NULL);
400401 gst_bin_remove (GST_BIN (self->priv->conference), src);
401 gst_element_set_locked_state (src, FALSE);
402402
403403 gst_element_set_locked_state (sink, TRUE);
404404 gst_element_set_state (sink, GST_STATE_NULL);
405 gst_bin_remove (GST_BIN (self->priv->conference), sink);
406 gst_element_set_locked_state (sink, FALSE);
405 if ((parent = gst_object_get_parent (GST_OBJECT (sink))))
406 {
407 gst_object_unref (parent);
408 gst_bin_remove (GST_BIN (self->priv->conference), sink);
409 }
407410
408411 gst_object_unref (src);
409412 gst_object_unref (sink);
463466 g_hash_table_foreach (self->priv->transmitters, _stop_transmitter_elem,
464467 "gst-sink");
465468
466 stop_and_remove (conferencebin, &self->priv->transmitter_rtp_fakesink, TRUE);
467 stop_and_remove (conferencebin, &self->priv->transmitter_rtcp_fakesink, TRUE);
468469 stop_and_remove (conferencebin, &self->priv->transmitter_rtp_tee, TRUE);
469470 stop_and_remove (conferencebin, &self->priv->transmitter_rtcp_tee, TRUE);
470471
628629 g_hash_table_destroy (self->priv->transmitters);
629630 self->priv->transmitters = NULL;
630631 }
632
633 g_list_foreach (self->priv->transmitters_add_sink, (GFunc) g_object_unref,
634 NULL);
635 g_list_free (self->priv->transmitters_add_sink);
636 self->priv->transmitters_add_sink = NULL;
631637
632638 if (self->priv->free_substreams)
633639 {
844850 GstElement *tee = NULL;
845851 GstElement *funnel = NULL;
846852 GstElement *muxer = NULL;
847 GstElement *fakesink = NULL;
848853 GstPad *tee_sink_pad = NULL;
849854 GstPad *valve_sink_pad = NULL;
850855 GstPad *funnel_src_pad = NULL;
851856 GstPad *muxer_src_pad = NULL;
852857 GstPad *transmitter_rtcp_tee_sink_pad;
853 GstPad *pad1, *pad2;
858 GstPad *pad;
854859 GstPadLinkReturn ret;
855860 gchar *tmp;
856861
954959 }
955960
956961 tmp = g_strdup_printf ("valve_send_%u", self->id);
957 valve = gst_element_factory_make ("fsvalve", tmp);
962 valve = gst_element_factory_make ("valve", tmp);
958963 g_free (tmp);
959964
960965 if (!valve)
961966 {
962967 self->priv->construction_error = g_error_new (FS_ERROR,
963968 FS_ERROR_CONSTRUCTION,
964 "Could not create the fsvalve element");
969 "Could not create the valve element");
965970 return;
966971 }
967972
11951200 }
11961201 g_free (tmp);
11971202
1198 /* Now add a fakesink to the RTP tee */
1199
1200 tmp = g_strdup_printf ("sink_rtp_fakesink_%u", self->id);
1201 fakesink = gst_element_factory_make ("fakesink", tmp);
1202 g_free (tmp);
1203
1204 if (!fakesink)
1205 {
1206 self->priv->construction_error = g_error_new (FS_ERROR,
1207 FS_ERROR_CONSTRUCTION,
1208 "Could not create the rtp fakesink element");
1209 return;
1210 }
1211
1212 if (!gst_bin_add (GST_BIN (self->priv->conference), fakesink))
1213 {
1214 self->priv->construction_error = g_error_new (FS_ERROR,
1215 FS_ERROR_CONSTRUCTION,
1216 "Could not add the rtp fakesink element to the FsRtpConference");
1217 gst_object_unref (tee);
1218 return;
1219 }
1220
1221 g_object_set (fakesink, "sync", FALSE, "async", FALSE, NULL);
1222
1223 gst_element_set_state (fakesink, GST_STATE_PLAYING);
1224
1225 self->priv->transmitter_rtp_fakesink = gst_object_ref (fakesink);
1226
1227 pad1 = gst_element_get_request_pad (tee, "src%d");
1228 pad2 = gst_element_get_static_pad (fakesink, "sink");
1229
1230 ret = gst_pad_link (pad1, pad2);
1231
1232 gst_object_unref (pad2);
1233 gst_object_unref (pad1);
1234
1235 if (GST_PAD_LINK_FAILED (ret))
1236 {
1237 self->priv->construction_error = g_error_new (FS_ERROR,
1238 FS_ERROR_CONSTRUCTION,
1239 "Could not link the rtp tee to its fakesink");
1240 return;
1241 }
1242
12431203 /* Now create the transmitter RTCP tee */
12441204
12451205 tmp = g_strdup_printf ("send_rtcp_tee_%u", self->id);
12991259 return;
13001260 }
13011261
1302 /* Now add a fakesink to the RTCP tee */
1303
1304 tmp = g_strdup_printf ("sink_rtcp_fakesink_%u", self->id);
1305 fakesink = gst_element_factory_make ("fakesink", tmp);
1306 g_free (tmp);
1307
1308 if (!fakesink)
1309 {
1310 self->priv->construction_error = g_error_new (FS_ERROR,
1311 FS_ERROR_CONSTRUCTION,
1312 "Could not create the rtcp fakesink element");
1313 return;
1314 }
1315
1316 if (!gst_bin_add (GST_BIN (self->priv->conference), fakesink))
1317 {
1318 self->priv->construction_error = g_error_new (FS_ERROR,
1319 FS_ERROR_CONSTRUCTION,
1320 "Could not add the rtcp fakesink element to the FsRtcpConference");
1321 gst_object_unref (tee);
1322 return;
1323 }
1324
1325 g_object_set (fakesink, "sync", FALSE, "async", FALSE, NULL);
1326
1327 gst_element_set_state (fakesink, GST_STATE_PLAYING);
1328
1329 self->priv->transmitter_rtcp_fakesink = gst_object_ref (fakesink);
1330
1331 pad1 = gst_element_get_request_pad (tee, "src%d");
1332 pad2 = gst_element_get_static_pad (fakesink, "sink");
1333
1334 ret = gst_pad_link (pad1, pad2);
1335
1336 gst_object_unref (pad2);
1337 gst_object_unref (pad1);
1338
1339 if (GST_PAD_LINK_FAILED (ret))
1340 {
1341 self->priv->construction_error = g_error_new (FS_ERROR,
1342 FS_ERROR_CONSTRUCTION,
1343 "Could not link the rtcp tee to its fakesink");
1344 return;
1345 }
1346
13471262 /* Lets now do the send_capsfilter */
13481263
13491264 tmp = g_strdup_printf ("send_rtp_capsfilter_%u", self->id);
13671282 return;
13681283 }
13691284
1370 pad1 = gst_element_get_static_pad (capsfilter, "src");
1371 g_signal_connect (pad1, "notify::caps", G_CALLBACK (_send_caps_changed),
1285 pad = gst_element_get_static_pad (capsfilter, "src");
1286 g_signal_connect (pad, "notify::caps", G_CALLBACK (_send_caps_changed),
13721287 self);
1373 gst_object_unref (pad1);
1288 gst_object_unref (pad);
13741289
13751290 self->priv->send_capsfilter = gst_object_ref (capsfilter);
13761291
18131728 return TRUE;
18141729 }
18151730
1816
18171731 static void
18181732 _transmitter_error (
18191733 FsStreamTransmitter *stream_transmitter,
18371751 return NULL;
18381752 }
18391753
1754 static gboolean
1755 fs_rtp_session_add_transmitter_gst_sink (FsRtpSession *self,
1756 FsTransmitter *transmitter,
1757 GError **error)
1758 {
1759 GstElement *sink;
1760
1761 g_object_get (transmitter, "gst-sink", &sink, NULL);
1762
1763 if (!gst_bin_add (GST_BIN (self->priv->conference), sink))
1764 {
1765 g_set_error (error, FS_ERROR, FS_ERROR_CONSTRUCTION,
1766 "Could not add the transmitter sink for %s to the conference",
1767 G_OBJECT_TYPE_NAME(transmitter));
1768 goto error;
1769 }
1770
1771 if (!_get_request_pad_and_link (self->priv->transmitter_rtp_tee,
1772 "rtp tee", sink, "sink1", GST_PAD_SINK, error))
1773 goto error;
1774
1775 if (!_get_request_pad_and_link (self->priv->transmitter_rtcp_tee,
1776 "rtcp tee", sink, "sink2", GST_PAD_SINK, error))
1777 goto error;
1778
1779 gst_element_sync_state_with_parent (sink);
1780
1781 gst_object_unref (sink);
1782
1783 return TRUE;
1784
1785 error:
1786 if (sink)
1787 gst_object_unref (sink);
1788
1789 return FALSE;
1790 }
18401791
18411792 /**
18421793 * fs_rtp_session_get_new_stream_transmitter:
18581809 GParameter *parameters, GError **error)
18591810 {
18601811 FsTransmitter *transmitter;
1861 GstElement *src, *sink;
1812 GstElement *src;
1813 gboolean sink_add_later = FALSE;
18621814
18631815 FS_RTP_SESSION_LOCK (self);
18641816
18821834 if (!transmitter)
18831835 return NULL;
18841836
1885 g_object_get (transmitter, "gst-sink", &sink, "gst-src", &src, NULL);
1886
18871837 g_signal_connect (transmitter, "error", G_CALLBACK (_transmitter_error),
18881838 self);
18891839 g_signal_connect (transmitter, "get-recvonly-filter",
18901840 G_CALLBACK (_get_recvonly_filter), NULL);
18911841
1892 if (!gst_bin_add (GST_BIN (self->priv->conference), sink))
1893 {
1894 g_set_error (error, FS_ERROR, FS_ERROR_CONSTRUCTION,
1895 "Could not add the transmitter sink for %s to the conference",
1896 transmitter_name);
1897 goto error;
1898 }
1842 if (self->priv->send_codecbin)
1843 {
1844 if (!fs_rtp_session_add_transmitter_gst_sink (self, transmitter, error))
1845 goto error;
1846 }
1847 else
1848 {
1849 sink_add_later = TRUE;
1850 }
1851
1852 g_object_get (transmitter, "gst-src", &src, NULL);
18991853
19001854 if (!gst_bin_add (GST_BIN (self->priv->conference), src))
19011855 {
19051859 goto error;
19061860 }
19071861
1908 if (!_get_request_pad_and_link (self->priv->transmitter_rtp_tee,
1909 "rtp tee", sink, "sink1", GST_PAD_SINK, error))
1910 goto error;
1911
1912 if (!_get_request_pad_and_link (self->priv->transmitter_rtcp_tee,
1913 "rtcp tee", sink, "sink2", GST_PAD_SINK, error))
1914 goto error;
1915
19161862 if (!_get_request_pad_and_link (self->priv->transmitter_rtp_funnel,
19171863 "rtp funnel", src, "src1", GST_PAD_SRC, error))
19181864 goto error;
19221868 goto error;
19231869
19241870 gst_element_sync_state_with_parent (src);
1925 gst_element_sync_state_with_parent (sink);
19261871
19271872 FS_RTP_SESSION_LOCK (self);
19281873 /* Check if two were added at the same time */
19311876 FS_RTP_SESSION_UNLOCK (self);
19321877
19331878 gst_element_set_locked_state (src, TRUE);
1934 gst_element_set_locked_state (sink, TRUE);
19351879 gst_element_set_state (src, GST_STATE_NULL);
1936 gst_element_set_state (sink, GST_STATE_NULL);
19371880 goto error;
19381881 }
19391882
1883 if (sink_add_later)
1884 self->priv->transmitters_add_sink = g_list_prepend (
1885 self->priv->transmitters_add_sink, g_object_ref (transmitter));
19401886 g_hash_table_insert (self->priv->transmitters, g_strdup (transmitter_name),
1941 transmitter);
1887 transmitter);
19421888 FS_RTP_SESSION_UNLOCK (self);
19431889
19441890 gst_object_unref (src);
1945 gst_object_unref (sink);
19461891
19471892 return fs_transmitter_new_stream_transmitter (transmitter, participant,
19481893 n_parameters, parameters, error);
19561901 error:
19571902 if (src)
19581903 gst_object_unref (src);
1959 if (sink)
1960 gst_object_unref (sink);
19611904 if (transmitter)
19621905 g_object_unref (transmitter);
19631906
26822625 current_element = gst_element_factory_make ("autoconvert", NULL);
26832626
26842627 if (!current_element)
2685 current_element = gst_element_factory_make ("fsselector", NULL);
2686
2687 if (!current_element)
26882628 {
26892629 g_set_error (error, FS_ERROR, FS_ERROR_CONSTRUCTION,
2690 "Could not create autoconvert (ex-fsselector) element");
2630 "Could not create autoconvert element");
26912631 goto error;
26922632 }
26932633
33063246 GstIterator *iter;
33073247 GValue link_rv = {0};
33083248 struct link_data data;
3249 GList *item;
33093250
33103251 GST_DEBUG ("Trying to add send codecbin for " FS_CODEC_FORMAT,
33113252 FS_CODEC_ARGS (codec));
34103351 " of the conference", codec->id);
34113352 goto error;
34123353 }
3354
3355
3356 FS_RTP_SESSION_LOCK (session);
3357 while ((item = session->priv->transmitters_add_sink) != NULL)
3358 {
3359 FsTransmitter *transmitter = item->data;
3360
3361 session->priv->transmitters_add_sink = g_list_delete_link (
3362 session->priv->transmitters_add_sink, item);
3363
3364 FS_RTP_SESSION_UNLOCK (session);
3365
3366 if (!fs_rtp_session_add_transmitter_gst_sink (session, transmitter, error))
3367 {
3368 FS_RTP_SESSION_LOCK (session);
3369 g_object_unref (transmitter);
3370 g_list_foreach (session->priv->transmitters_add_sink,
3371 (GFunc) g_object_unref, NULL);
3372 g_list_free (session->priv->transmitters_add_sink);
3373 session->priv->transmitters_add_sink = NULL;
3374 goto error;
3375 }
3376
3377 g_object_unref (transmitter);
3378 FS_RTP_SESSION_LOCK (session);
3379 }
3380 FS_RTP_SESSION_UNLOCK (session);
34133381
34143382 g_object_set (session->priv->media_sink_valve, "drop", FALSE, NULL);
34153383
4040 *
4141 * This object controls a part of the receive pipeline, with the following shape
4242 *
43 * rtpbin_pad -> capsfilter -> codecbin -> valve -> output_ghostad
43 * rtpbin_pad -> input_valve -> capsfilter -> codecbin -> output_valve -> output_ghostad
4444 *
4545 */
4646
8383
8484 GstPad *rtpbin_pad;
8585
86 GstElement *valve;
86 GstElement *input_valve;
87 GstElement *output_valve;
8788
8889 GstElement *capsfilter;
8990
491492 fs_rtp_sub_stream_constructed (GObject *object)
492493 {
493494 FsRtpSubStream *self = FS_RTP_SUB_STREAM (object);
494 GstPad *capsfilter_sink_pad = NULL;
495 GstPad *valve_sink_pad = NULL;
495496 GstPadLinkReturn linkret;
496497 gchar *tmp;
497498
504505 return;
505506 }
506507
507 tmp = g_strdup_printf ("recv_valve_%d_%d_%d", self->priv->session->id,
508 tmp = g_strdup_printf ("output_recv_valve_%d_%d_%d", self->priv->session->id,
508509 self->ssrc, self->pt);
509 self->priv->valve = gst_element_factory_make ("fsvalve", tmp);
510 self->priv->output_valve = gst_element_factory_make ("valve", tmp);
510511 g_free (tmp);
511512
512 if (!self->priv->valve) {
513 if (!self->priv->output_valve) {
513514 self->priv->construction_error = g_error_new (FS_ERROR,
514 FS_ERROR_CONSTRUCTION, "Could not create a fsvalve element for"
515 FS_ERROR_CONSTRUCTION, "Could not create a valve element for"
515516 " session substream with ssrc: %u and pt:%d", self->ssrc,
516517 self->pt);
517518 return;
518519 }
519520
520 if (!gst_bin_add (GST_BIN (self->priv->conference), self->priv->valve)) {
521 if (!gst_bin_add (GST_BIN (self->priv->conference), self->priv->output_valve))
522 {
521523 self->priv->construction_error = g_error_new (FS_ERROR,
522 FS_ERROR_CONSTRUCTION, "Could not add the fsvalve element for session"
524 FS_ERROR_CONSTRUCTION, "Could not add the valve element for session"
523525 " substream with ssrc: %u and pt:%d to the conference bin",
524526 self->ssrc, self->pt);
525527 return;
526528 }
527529
528530 /* We set the valve to dropping, the stream will unblock it when its linked */
529 g_object_set (self->priv->valve,
530 "drop", TRUE,
531 NULL);
532
533 if (gst_element_set_state (self->priv->valve, GST_STATE_PLAYING) ==
531 g_object_set (self->priv->output_valve, "drop", TRUE, NULL);
532
533 if (gst_element_set_state (self->priv->output_valve, GST_STATE_PLAYING) ==
534534 GST_STATE_CHANGE_FAILURE) {
535535 self->priv->construction_error = g_error_new (FS_ERROR,
536 FS_ERROR_CONSTRUCTION, "Could not set the fsvalve element for session"
536 FS_ERROR_CONSTRUCTION, "Could not set the valve element for session"
537537 " substream with ssrc: %u and pt:%d to the playing state",
538538 self->ssrc, self->pt);
539539 return;
569569 return;
570570 }
571571
572 capsfilter_sink_pad = gst_element_get_static_pad (self->priv->capsfilter,
572 tmp = g_strdup_printf ("input_recv_valve_%d_%d_%d", self->priv->session->id,
573 self->ssrc, self->pt);
574 self->priv->input_valve = gst_element_factory_make ("valve", tmp);
575 g_free (tmp);
576
577 if (!self->priv->input_valve) {
578 self->priv->construction_error = g_error_new (FS_ERROR,
579 FS_ERROR_CONSTRUCTION, "Could not create a valve element for"
580 " session substream with ssrc: %u and pt:%d", self->ssrc,
581 self->pt);
582 return;
583 }
584
585 if (!gst_bin_add (GST_BIN (self->priv->conference), self->priv->input_valve))
586 {
587 self->priv->construction_error = g_error_new (FS_ERROR,
588 FS_ERROR_CONSTRUCTION, "Could not add the valve element for session"
589 " substream with ssrc: %u and pt:%d to the conference bin",
590 self->ssrc, self->pt);
591 return;
592 }
593
594 if (gst_element_set_state (self->priv->input_valve, GST_STATE_PLAYING) ==
595 GST_STATE_CHANGE_FAILURE) {
596 self->priv->construction_error = g_error_new (FS_ERROR,
597 FS_ERROR_CONSTRUCTION, "Could not set the valve element for session"
598 " substream with ssrc: %u and pt:%d to the playing state",
599 self->ssrc, self->pt);
600 return;
601 }
602
603 if (!gst_element_link (self->priv->input_valve, self->priv->capsfilter))
604 {
605 self->priv->construction_error = g_error_new (FS_ERROR,
606 FS_ERROR_CONSTRUCTION, "Could not link the input valve"
607 " and the capsfilter");
608 return;
609 }
610
611 valve_sink_pad = gst_element_get_static_pad (self->priv->input_valve,
573612 "sink");
574 if (!capsfilter_sink_pad)
613 if (!valve_sink_pad)
575614 {
576615 self->priv->construction_error = g_error_new (FS_ERROR,
577616 FS_ERROR_CONSTRUCTION,
578 "Could not get the capsfilter's sink pad");
579 return;
580 }
581
582 linkret = gst_pad_link (self->priv->rtpbin_pad, capsfilter_sink_pad);
583
584 gst_object_unref (capsfilter_sink_pad);
617 "Could not get the valve's sink pad");
618 return;
619 }
620
621 linkret = gst_pad_link (self->priv->rtpbin_pad, valve_sink_pad);
622
623 gst_object_unref (valve_sink_pad);
585624
586625 if (GST_PAD_LINK_FAILED (linkret))
587626 {
590629 "Could not link the rtpbin to the codec bin (%d)", linkret);
591630 return;
592631 }
593
594632
595633 if (self->no_rtcp_timeout > 0)
596634 if (!fs_rtp_sub_stream_start_no_rtcp_timeout_thread (self,
617655 self->priv->output_ghostpad = NULL;
618656 }
619657
620 if (self->priv->valve) {
621 gst_element_set_locked_state (self->priv->valve, TRUE);
622 gst_element_set_state (self->priv->valve, GST_STATE_NULL);
623 gst_bin_remove (GST_BIN (self->priv->conference), self->priv->valve);
624 self->priv->valve = NULL;
658 if (self->priv->output_valve) {
659 gst_element_set_locked_state (self->priv->output_valve, TRUE);
660 gst_element_set_state (self->priv->output_valve, GST_STATE_NULL);
661 gst_bin_remove (GST_BIN (self->priv->conference), self->priv->output_valve);
662 self->priv->output_valve = NULL;
625663 }
626664
627665 if (self->priv->codecbin) {
638676 self->priv->capsfilter = NULL;
639677 }
640678
679 if (self->priv->input_valve) {
680 gst_element_set_locked_state (self->priv->input_valve, TRUE);
681 gst_element_set_state (self->priv->input_valve, GST_STATE_NULL);
682 gst_bin_remove (GST_BIN (self->priv->conference), self->priv->input_valve);
683 self->priv->input_valve = NULL;
684 }
685
641686 if (self->priv->blocking_id)
642687 {
643688 gst_pad_remove_data_probe (self->priv->rtpbin_pad,
710755 break;
711756 case PROP_RECEIVING:
712757 self->priv->receiving = g_value_get_boolean (value);
713 if (self->priv->output_ghostpad && self->priv->valve)
714 g_object_set (G_OBJECT (self->priv->valve),
758 if (self->priv->input_valve)
759 g_object_set (G_OBJECT (self->priv->input_valve),
715760 "drop", !self->priv->receiving,
716761 NULL);
717762 break;
877922 }
878923
879924 if (!gst_element_link_pads (codecbin, "src",
880 substream->priv->valve, "sink"))
925 substream->priv->output_valve, "sink"))
881926 {
882927 g_set_error (error, FS_ERROR, FS_ERROR_CONSTRUCTION,
883 "Could not link the codec bin to the valve");
928 "Could not link the codec bin to the output_valve");
884929 goto error;
885930 }
886931
10081053 if (substream->priv->output_ghostpad)
10091054 gst_pad_set_active (substream->priv->output_ghostpad, FALSE);
10101055
1011 if (substream->priv->valve)
1012 {
1013 gst_element_set_locked_state (substream->priv->valve, TRUE);
1014 gst_element_set_state (substream->priv->valve, GST_STATE_NULL);
1056 if (substream->priv->output_valve)
1057 {
1058 gst_element_set_locked_state (substream->priv->output_valve, TRUE);
1059 gst_element_set_state (substream->priv->output_valve, GST_STATE_NULL);
10151060 }
10161061
10171062 if (substream->priv->codecbin)
10241069 {
10251070 gst_element_set_locked_state (substream->priv->capsfilter, TRUE);
10261071 gst_element_set_state (substream->priv->capsfilter, GST_STATE_NULL);
1072 }
1073
1074 if (substream->priv->input_valve)
1075 {
1076 gst_element_set_locked_state (substream->priv->input_valve, TRUE);
1077 gst_element_set_state (substream->priv->input_valve, GST_STATE_NULL);
10271078 }
10281079 }
10291080
10791130
10801131 FS_RTP_SESSION_UNLOCK (substream->priv->session);
10811132
1082 valve_srcpad = gst_element_get_static_pad (substream->priv->valve,
1133 valve_srcpad = gst_element_get_static_pad (substream->priv->output_valve,
10831134 "src");
10841135 g_assert (valve_srcpad);
10851136
11391190
11401191 fs_codec_destroy (codec);
11411192
1142 if (receiving)
1143 g_object_set (substream->priv->valve, "drop", FALSE, NULL);
1193 g_object_set (substream->priv->output_valve, "drop", FALSE, NULL);
11441194
11451195 fs_rtp_sub_stream_try_stop (substream);
11461196
4040 $(top_srcdir)/common/m4/as-auto-alt.m4 \
4141 $(top_srcdir)/common/m4/as-compiler-flag.m4 \
4242 $(top_srcdir)/common/m4/as-libtool.m4 \
43 $(top_srcdir)/common/m4/as-python.m4 \
4443 $(top_srcdir)/common/m4/as-scrub-include.m4 \
4544 $(top_srcdir)/common/m4/as-version.m4 \
4645 $(top_srcdir)/common/m4/gst-arch.m4 \
5251 $(top_srcdir)/common/m4/gst-plugindir.m4 \
5352 $(top_srcdir)/common/m4/gst.m4 \
5453 $(top_srcdir)/common/m4/gtk-doc.m4 \
55 $(top_srcdir)/common/m4/isc-posix.m4 \
5654 $(top_srcdir)/common/m4/pkg.m4 \
5755 $(top_srcdir)/m4/as-check-python-headers.m4 \
5856 $(top_srcdir)/configure.ac
208206 PKG_CONFIG = @PKG_CONFIG@
209207 PLUGINDIR = @PLUGINDIR@
210208 PROFILE_CFLAGS = @PROFILE_CFLAGS@
211 PYDOCSTUFF_CFLAGS = @PYDOCSTUFF_CFLAGS@
212 PYDOCSTUFF_LIBS = @PYDOCSTUFF_LIBS@
213209 PYFARSIGHT_CFLAGS = @PYFARSIGHT_CFLAGS@
214210 PYFARSIGHT_LIBS = @PYFARSIGHT_LIBS@
215211 PYTHON = @PYTHON@
4848 $(top_srcdir)/common/m4/as-auto-alt.m4 \
4949 $(top_srcdir)/common/m4/as-compiler-flag.m4 \
5050 $(top_srcdir)/common/m4/as-libtool.m4 \
51 $(top_srcdir)/common/m4/as-python.m4 \
5251 $(top_srcdir)/common/m4/as-scrub-include.m4 \
5352 $(top_srcdir)/common/m4/as-version.m4 \
5453 $(top_srcdir)/common/m4/gst-arch.m4 \
6059 $(top_srcdir)/common/m4/gst-plugindir.m4 \
6160 $(top_srcdir)/common/m4/gst.m4 \
6261 $(top_srcdir)/common/m4/gtk-doc.m4 \
63 $(top_srcdir)/common/m4/isc-posix.m4 \
6462 $(top_srcdir)/common/m4/pkg.m4 \
6563 $(top_srcdir)/m4/as-check-python-headers.m4 \
6664 $(top_srcdir)/configure.ac
217215 PKG_CONFIG = @PKG_CONFIG@
218216 PLUGINDIR = @PLUGINDIR@
219217 PROFILE_CFLAGS = @PROFILE_CFLAGS@
220 PYDOCSTUFF_CFLAGS = @PYDOCSTUFF_CFLAGS@
221 PYDOCSTUFF_LIBS = @PYDOCSTUFF_LIBS@
222218 PYFARSIGHT_CFLAGS = @PYFARSIGHT_CFLAGS@
223219 PYFARSIGHT_LIBS = @PYFARSIGHT_LIBS@
224220 PYTHON = @PYTHON@
4040 $(top_srcdir)/common/m4/as-auto-alt.m4 \
4141 $(top_srcdir)/common/m4/as-compiler-flag.m4 \
4242 $(top_srcdir)/common/m4/as-libtool.m4 \
43 $(top_srcdir)/common/m4/as-python.m4 \
4443 $(top_srcdir)/common/m4/as-scrub-include.m4 \
4544 $(top_srcdir)/common/m4/as-version.m4 \
4645 $(top_srcdir)/common/m4/gst-arch.m4 \
5251 $(top_srcdir)/common/m4/gst-plugindir.m4 \
5352 $(top_srcdir)/common/m4/gst.m4 \
5453 $(top_srcdir)/common/m4/gtk-doc.m4 \
55 $(top_srcdir)/common/m4/isc-posix.m4 \
5654 $(top_srcdir)/common/m4/pkg.m4 \
5755 $(top_srcdir)/m4/as-check-python-headers.m4 \
5856 $(top_srcdir)/configure.ac
210208 PKG_CONFIG = @PKG_CONFIG@
211209 PLUGINDIR = @PLUGINDIR@
212210 PROFILE_CFLAGS = @PROFILE_CFLAGS@
213 PYDOCSTUFF_CFLAGS = @PYDOCSTUFF_CFLAGS@
214 PYDOCSTUFF_LIBS = @PYDOCSTUFF_LIBS@
215211 PYFARSIGHT_CFLAGS = @PYFARSIGHT_CFLAGS@
216212 PYFARSIGHT_LIBS = @PYFARSIGHT_LIBS@
217213 PYTHON = @PYTHON@
3737 $(top_srcdir)/common/m4/as-auto-alt.m4 \
3838 $(top_srcdir)/common/m4/as-compiler-flag.m4 \
3939 $(top_srcdir)/common/m4/as-libtool.m4 \
40 $(top_srcdir)/common/m4/as-python.m4 \
4140 $(top_srcdir)/common/m4/as-scrub-include.m4 \
4241 $(top_srcdir)/common/m4/as-version.m4 \
4342 $(top_srcdir)/common/m4/gst-arch.m4 \
4948 $(top_srcdir)/common/m4/gst-plugindir.m4 \
5049 $(top_srcdir)/common/m4/gst.m4 \
5150 $(top_srcdir)/common/m4/gtk-doc.m4 \
52 $(top_srcdir)/common/m4/isc-posix.m4 \
5351 $(top_srcdir)/common/m4/pkg.m4 \
5452 $(top_srcdir)/m4/as-check-python-headers.m4 \
5553 $(top_srcdir)/configure.ac
185183 PKG_CONFIG = @PKG_CONFIG@
186184 PLUGINDIR = @PLUGINDIR@
187185 PROFILE_CFLAGS = @PROFILE_CFLAGS@
188 PYDOCSTUFF_CFLAGS = @PYDOCSTUFF_CFLAGS@
189 PYDOCSTUFF_LIBS = @PYDOCSTUFF_LIBS@
190186 PYFARSIGHT_CFLAGS = @PYFARSIGHT_CFLAGS@
191187 PYFARSIGHT_LIBS = @PYFARSIGHT_LIBS@
192188 PYTHON = @PYTHON@
3939 $(top_srcdir)/common/m4/as-auto-alt.m4 \
4040 $(top_srcdir)/common/m4/as-compiler-flag.m4 \
4141 $(top_srcdir)/common/m4/as-libtool.m4 \
42 $(top_srcdir)/common/m4/as-python.m4 \
4342 $(top_srcdir)/common/m4/as-scrub-include.m4 \
4443 $(top_srcdir)/common/m4/as-version.m4 \
4544 $(top_srcdir)/common/m4/gst-arch.m4 \
5150 $(top_srcdir)/common/m4/gst-plugindir.m4 \
5251 $(top_srcdir)/common/m4/gst.m4 \
5352 $(top_srcdir)/common/m4/gtk-doc.m4 \
54 $(top_srcdir)/common/m4/isc-posix.m4 \
5553 $(top_srcdir)/common/m4/pkg.m4 \
5654 $(top_srcdir)/m4/as-check-python-headers.m4 \
5755 $(top_srcdir)/configure.ac
188186 PKG_CONFIG = @PKG_CONFIG@
189187 PLUGINDIR = @PLUGINDIR@
190188 PROFILE_CFLAGS = @PROFILE_CFLAGS@
191 PYDOCSTUFF_CFLAGS = @PYDOCSTUFF_CFLAGS@
192 PYDOCSTUFF_LIBS = @PYDOCSTUFF_LIBS@
193189 PYFARSIGHT_CFLAGS = @PYFARSIGHT_CFLAGS@
194190 PYFARSIGHT_LIBS = @PYFARSIGHT_LIBS@
195191 PYTHON = @PYTHON@
4848 $(top_srcdir)/common/m4/as-auto-alt.m4 \
4949 $(top_srcdir)/common/m4/as-compiler-flag.m4 \
5050 $(top_srcdir)/common/m4/as-libtool.m4 \
51 $(top_srcdir)/common/m4/as-python.m4 \
5251 $(top_srcdir)/common/m4/as-scrub-include.m4 \
5352 $(top_srcdir)/common/m4/as-version.m4 \
5453 $(top_srcdir)/common/m4/gst-arch.m4 \
6059 $(top_srcdir)/common/m4/gst-plugindir.m4 \
6160 $(top_srcdir)/common/m4/gst.m4 \
6261 $(top_srcdir)/common/m4/gtk-doc.m4 \
63 $(top_srcdir)/common/m4/isc-posix.m4 \
6462 $(top_srcdir)/common/m4/pkg.m4 \
6563 $(top_srcdir)/m4/as-check-python-headers.m4 \
6664 $(top_srcdir)/configure.ac
240238 PKG_CONFIG = @PKG_CONFIG@
241239 PLUGINDIR = @PLUGINDIR@
242240 PROFILE_CFLAGS = @PROFILE_CFLAGS@
243 PYDOCSTUFF_CFLAGS = @PYDOCSTUFF_CFLAGS@
244 PYDOCSTUFF_LIBS = @PYDOCSTUFF_LIBS@
245241 PYFARSIGHT_CFLAGS = @PYFARSIGHT_CFLAGS@
246242 PYFARSIGHT_LIBS = @PYFARSIGHT_LIBS@
247243 PYTHON = @PYTHON@
9595 static void
9696 fs_base_conference_class_init (FsBaseConferenceClass * klass)
9797 {
98 GObjectClass *gobject_class;
99
100 gobject_class = G_OBJECT_CLASS (klass);
101
102 // g_type_class_add_private (klass, sizeof (FsBaseConferencePrivate));
103
10498 parent_class = g_type_class_peek_parent (klass);
10599 }
106100
322322 case G_TYPE_UINT64:
323323 case G_TYPE_INT64:
324324 case G_TYPE_DOUBLE:
325 /* FIXME it seems get_double is only in 2.12, so for now get a
326 * string and convert it to double */
327 #if GLIB_CHECK_VERSION(2,12,0)
328325 double_key_value = g_key_file_get_double (keyfile, name,
329326 keys[i], NULL);
330 #else
331 str_key_value = g_key_file_get_value (keyfile, name, keys[i],
332 NULL);
333 double_key_value = g_strtod (str_key_value, NULL);
334 #endif
335327 g_value_init (&key_value, G_TYPE_DOUBLE);
336328 g_value_set_double (&key_value, double_key_value);
337329 DEBUG ("%s is a uint64", keys[i]);
3737 $(top_srcdir)/common/m4/as-auto-alt.m4 \
3838 $(top_srcdir)/common/m4/as-compiler-flag.m4 \
3939 $(top_srcdir)/common/m4/as-libtool.m4 \
40 $(top_srcdir)/common/m4/as-python.m4 \
4140 $(top_srcdir)/common/m4/as-scrub-include.m4 \
4241 $(top_srcdir)/common/m4/as-version.m4 \
4342 $(top_srcdir)/common/m4/gst-arch.m4 \
4948 $(top_srcdir)/common/m4/gst-plugindir.m4 \
5049 $(top_srcdir)/common/m4/gst.m4 \
5150 $(top_srcdir)/common/m4/gtk-doc.m4 \
52 $(top_srcdir)/common/m4/isc-posix.m4 \
5351 $(top_srcdir)/common/m4/pkg.m4 \
5452 $(top_srcdir)/m4/as-check-python-headers.m4 \
5553 $(top_srcdir)/configure.ac
173171 PKG_CONFIG = @PKG_CONFIG@
174172 PLUGINDIR = @PLUGINDIR@
175173 PROFILE_CFLAGS = @PROFILE_CFLAGS@
176 PYDOCSTUFF_CFLAGS = @PYDOCSTUFF_CFLAGS@
177 PYDOCSTUFF_LIBS = @PYDOCSTUFF_LIBS@
178174 PYFARSIGHT_CFLAGS = @PYFARSIGHT_CFLAGS@
179175 PYFARSIGHT_LIBS = @PYFARSIGHT_LIBS@
180176 PYTHON = @PYTHON@
3838 $(top_srcdir)/common/m4/as-auto-alt.m4 \
3939 $(top_srcdir)/common/m4/as-compiler-flag.m4 \
4040 $(top_srcdir)/common/m4/as-libtool.m4 \
41 $(top_srcdir)/common/m4/as-python.m4 \
4241 $(top_srcdir)/common/m4/as-scrub-include.m4 \
4342 $(top_srcdir)/common/m4/as-version.m4 \
4443 $(top_srcdir)/common/m4/gst-arch.m4 \
5049 $(top_srcdir)/common/m4/gst-plugindir.m4 \
5150 $(top_srcdir)/common/m4/gst.m4 \
5251 $(top_srcdir)/common/m4/gtk-doc.m4 \
53 $(top_srcdir)/common/m4/isc-posix.m4 \
5452 $(top_srcdir)/common/m4/pkg.m4 \
5553 $(top_srcdir)/m4/as-check-python-headers.m4 \
5654 $(top_srcdir)/configure.ac
207205 PKG_CONFIG = @PKG_CONFIG@
208206 PLUGINDIR = @PLUGINDIR@
209207 PROFILE_CFLAGS = @PROFILE_CFLAGS@
210 PYDOCSTUFF_CFLAGS = @PYDOCSTUFF_CFLAGS@
211 PYDOCSTUFF_LIBS = @PYDOCSTUFF_LIBS@
212208 PYFARSIGHT_CFLAGS = @PYFARSIGHT_CFLAGS@
213209 PYFARSIGHT_LIBS = @PYFARSIGHT_LIBS@
214210 PYTHON = @PYTHON@
3838 $(top_srcdir)/common/m4/as-auto-alt.m4 \
3939 $(top_srcdir)/common/m4/as-compiler-flag.m4 \
4040 $(top_srcdir)/common/m4/as-libtool.m4 \
41 $(top_srcdir)/common/m4/as-python.m4 \
4241 $(top_srcdir)/common/m4/as-scrub-include.m4 \
4342 $(top_srcdir)/common/m4/as-version.m4 \
4443 $(top_srcdir)/common/m4/gst-arch.m4 \
5049 $(top_srcdir)/common/m4/gst-plugindir.m4 \
5150 $(top_srcdir)/common/m4/gst.m4 \
5251 $(top_srcdir)/common/m4/gtk-doc.m4 \
53 $(top_srcdir)/common/m4/isc-posix.m4 \
5452 $(top_srcdir)/common/m4/pkg.m4 \
5553 $(top_srcdir)/m4/as-check-python-headers.m4 \
5654 $(top_srcdir)/configure.ac
185183 PKG_CONFIG = @PKG_CONFIG@
186184 PLUGINDIR = @PLUGINDIR@
187185 PROFILE_CFLAGS = @PROFILE_CFLAGS@
188 PYDOCSTUFF_CFLAGS = @PYDOCSTUFF_CFLAGS@
189 PYDOCSTUFF_LIBS = @PYDOCSTUFF_LIBS@
190186 PYFARSIGHT_CFLAGS = @PYFARSIGHT_CFLAGS@
191187 PYFARSIGHT_LIBS = @PYFARSIGHT_LIBS@
192188 PYTHON = @PYTHON@
3535 upnp/WANIPConnection.xml \
3636 base/test1.conf
3737
38 if USE_NICE
39 NICE_TRANSMITTER = transmitter/nice
40 else
41 NICE_TRANSMITTER =
42 endif
43
4438 #######
4539 # From here.. Its a list of our tests and their sub stuff
4640 #
4943 base/fstransmitter \
5044 transmitter/rawudp \
5145 transmitter/multicast \
52 $(NICE_TRANSMITTER) \
46 transmitter/nice \
5347 rtp/codecs \
5448 rtp/sendcodecs \
5549 rtp/conference \
3434 $(top_srcdir)/common/check.mak
3535 check_PROGRAMS = base/fscodec$(EXEEXT) base/fstransmitter$(EXEEXT) \
3636 transmitter/rawudp$(EXEEXT) transmitter/multicast$(EXEEXT) \
37 $(am__EXEEXT_1) rtp/codecs$(EXEEXT) rtp/sendcodecs$(EXEEXT) \
38 rtp/conference$(EXEEXT) utils/binadded$(EXEEXT) \
39 elements/rtcpfilter$(EXEEXT)
37 transmitter/nice$(EXEEXT) rtp/codecs$(EXEEXT) \
38 rtp/sendcodecs$(EXEEXT) rtp/conference$(EXEEXT) \
39 utils/binadded$(EXEEXT) elements/rtcpfilter$(EXEEXT)
4040 subdir = tests/check
4141 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
4242 am__aclocal_m4_deps = $(top_srcdir)/common/m4/as-ac-expand.m4 \
4343 $(top_srcdir)/common/m4/as-auto-alt.m4 \
4444 $(top_srcdir)/common/m4/as-compiler-flag.m4 \
4545 $(top_srcdir)/common/m4/as-libtool.m4 \
46 $(top_srcdir)/common/m4/as-python.m4 \
4746 $(top_srcdir)/common/m4/as-scrub-include.m4 \
4847 $(top_srcdir)/common/m4/as-version.m4 \
4948 $(top_srcdir)/common/m4/gst-arch.m4 \
5554 $(top_srcdir)/common/m4/gst-plugindir.m4 \
5655 $(top_srcdir)/common/m4/gst.m4 \
5756 $(top_srcdir)/common/m4/gtk-doc.m4 \
58 $(top_srcdir)/common/m4/isc-posix.m4 \
5957 $(top_srcdir)/common/m4/pkg.m4 \
6058 $(top_srcdir)/m4/as-check-python-headers.m4 \
6159 $(top_srcdir)/configure.ac
6462 mkinstalldirs = $(install_sh) -d
6563 CONFIG_HEADER = $(top_builddir)/config.h
6664 CONFIG_CLEAN_FILES =
67 @USE_NICE_TRUE@am__EXEEXT_1 = transmitter/nice$(EXEEXT)
6865 base_fscodec_SOURCES = base/fscodec.c
6966 base_fscodec_OBJECTS = fscodec.$(OBJEXT)
7067 base_fscodec_LDADD = $(LDADD)
297294 PKG_CONFIG = @PKG_CONFIG@
298295 PLUGINDIR = @PLUGINDIR@
299296 PROFILE_CFLAGS = @PROFILE_CFLAGS@
300 PYDOCSTUFF_CFLAGS = @PYDOCSTUFF_CFLAGS@
301 PYDOCSTUFF_LIBS = @PYDOCSTUFF_LIBS@
302297 PYFARSIGHT_CFLAGS = @PYFARSIGHT_CFLAGS@
303298 PYFARSIGHT_LIBS = @PYFARSIGHT_LIBS@
304299 PYTHON = @PYTHON@
402397 upnp/WANIPConnection.xml \
403398 base/test1.conf
404399
405 @USE_NICE_FALSE@NICE_TRANSMITTER =
406 @USE_NICE_TRUE@NICE_TRANSMITTER = transmitter/nice
407400 AM_CFLAGS = \
408401 $(CFLAGS) \
409402 $(FS2_INTERNAL_CFLAGS) \
11601153
11611154 # hangs spectacularly on some machines, so let's not do this by default yet
11621155 @HAVE_VALGRIND_TRUE@check-valgrind:
1163 @HAVE_VALGRIND_TRUE@ make valgrind
1156 @HAVE_VALGRIND_TRUE@ $(MAKE) valgrind
11641157 @HAVE_VALGRIND_FALSE@check-valgrind:
11651158 @HAVE_VALGRIND_FALSE@ @true
11661159
12211214
12221215 # valgrind any given test until failure by running make test.valgrind-forever
12231216 %.valgrind-forever: %
1224 @while make $*.valgrind; do \
1217 @while $(MAKE) $*.valgrind; do \
12251218 true; done
12261219
12271220 # gdb any given test by running make test.gdb
12361229 -rm test-registry.xml
12371230 @echo "Torturing tests ..."
12381231 for i in `seq 1 $(LOOPS)`; do \
1239 make check || \
1232 $(MAKE) check || \
12401233 (echo "Failure after $$i runs"; exit 1) || \
12411234 exit 1; \
12421235 done
12491242 -rm test-registry.xml
12501243 @echo "Forever tests ..."
12511244 while true; do \
1252 make check || \
1245 $(MAKE) check || \
12531246 (echo "Failure"; exit 1) || \
12541247 exit 1; \
12551248 done
12591252 @echo "Valgrinding tests ..."
12601253 @failed=0; \
12611254 for t in $(filter-out $(VALGRIND_TESTS_DISABLE),$(TESTS)); do \
1262 make $$t.valgrind; \
1255 $(MAKE) $$t.valgrind; \
12631256 if test "$$?" -ne 0; then \
12641257 echo "Valgrind error for test $$t"; \
12651258 failed=`expr $$failed + 1`; \
12791272 $(GST_INSPECT) $$e > /dev/null 2>&1; done
12801273
12811274 help:
1275 @echo
12821276 @echo "make check -- run all checks"
12831277 @echo "make torture -- run all checks $(LOOPS) times"
12841278 @echo "make (dir)/(test).check -- run the given check once"
12931287 @echo "make (dir)/(test).valgrind.gen-suppressions -- generate suppressions"
12941288 @echo " and save to suppressions.log"
12951289 @echo "make inspect -- inspect all plugin features"
1290 @echo
1291 @echo
1292 @echo "Additionally, you can use the GST_CHECKS environment variable to"
1293 @echo "specify which test(s) should be run. This is useful if you are"
1294 @echo "debugging a failure in one particular test, or want to reproduce"
1295 @echo "a race condition in a single test."
1296 @echo
1297 @echo "Examples:"
1298 @echo
1299 @echo " GST_CHECKS=test_this,test_that make element/foobar.check"
1300 @echo " GST_CHECKS=test_many_threads make element/foobar.forever"
1301 @echo
12961302
12971303 clean-local: clean-local-check
12981304 rm -rf cache
297297 cleanup_simple_conference (dat);
298298 gst_object_unref (recv_pipeline);
299299
300 digit = 0;
301
302300 g_main_loop_unref (loop);
303301 }
304302
340338 ret = gst_element_get_state (dat->pipeline, &state, NULL, 0);
341339 ts_fail_if (ret == GST_STATE_CHANGE_FAILURE);
342340
343 if (state != GST_STATE_PLAYING)
341 if (ret != GST_STATE_CHANGE_SUCCESS || state != GST_STATE_PLAYING)
344342 return TRUE;
345343
346 if(!ready_to_send)
344 if (!ready_to_send)
347345 return TRUE;
348346
349347
721721
722722 /* no IP */
723723 va = g_value_array_new (1);
724 s = gst_structure_new ("aa", NULL);
724 s = gst_structure_new ("aa",
725 "port", G_TYPE_UINT, 7654,
726 "username", G_TYPE_STRING, "blah",
727 "password", G_TYPE_STRING, "blah2",
728 NULL);
725729 g_value_init (&val, GST_TYPE_STRUCTURE);
726730 g_value_take_boxed (&val, s);
727731 g_value_array_append (va, &val);
737741 va = g_value_array_new (1);
738742 s = gst_structure_new ("aa",
739743 "ip", G_TYPE_STRING, "127.0.0.1",
744 "username", G_TYPE_STRING, "blah",
745 "password", G_TYPE_STRING, "blah2",
746 NULL);
747 g_value_take_boxed (&val, s);
748 g_value_array_append (va, &val);
749 g_value_take_boxed (&params[0].value, va);
750 st = fs_transmitter_new_stream_transmitter (trans, p, 1, params, &error);
751 ts_fail_unless (st == NULL);
752 ts_fail_unless (error &&
753 error->domain == FS_ERROR &&
754 error->code == FS_ERROR_INVALID_ARGUMENTS);
755 g_clear_error (&error);
756
757
758 /* invalid port */
759 va = g_value_array_new (1);
760 s = gst_structure_new ("aa",
761 "ip", G_TYPE_STRING, "127.0.0.1",
762 "port", G_TYPE_UINT, 0,
763 "username", G_TYPE_STRING, "blah",
764 "password", G_TYPE_STRING, "blah2",
765 NULL);
766 g_value_take_boxed (&val, s);
767 g_value_array_append (va, &val);
768 g_value_take_boxed (&params[0].value, va);
769 st = fs_transmitter_new_stream_transmitter (trans, p, 1, params, &error);
770 ts_fail_unless (st == NULL);
771 ts_fail_unless (error &&
772 error->domain == FS_ERROR &&
773 error->code == FS_ERROR_INVALID_ARGUMENTS);
774 g_clear_error (&error);
775
776 /* no username */
777 va = g_value_array_new (1);
778 s = gst_structure_new ("aa",
779 "ip", G_TYPE_STRING, "127.0.0.1",
780 "port", G_TYPE_UINT, 7654,
781 "password", G_TYPE_STRING, "blah2",
782 NULL);
783 g_value_take_boxed (&val, s);
784 g_value_array_append (va, &val);
785 g_value_take_boxed (&params[0].value, va);
786 st = fs_transmitter_new_stream_transmitter (trans, p, 1, params, &error);
787 ts_fail_unless (st == NULL);
788 ts_fail_unless (error &&
789 error->domain == FS_ERROR &&
790 error->code == FS_ERROR_INVALID_ARGUMENTS);
791 g_clear_error (&error);
792
793 /* no password */
794 va = g_value_array_new (1);
795 s = gst_structure_new ("aa",
796 "ip", G_TYPE_STRING, "127.0.0.1",
797 "port", G_TYPE_UINT, 7654,
798 "username", G_TYPE_STRING, "blah",
740799 NULL);
741800 g_value_take_boxed (&val, s);
742801 g_value_array_append (va, &val);
753812 s = gst_structure_new ("aa",
754813 "ip", G_TYPE_STRING, "127.0.0.1",
755814 "port", G_TYPE_UINT, 7654,
815 "username", G_TYPE_STRING, "blah",
816 "password", G_TYPE_STRING, "blah2",
756817 NULL);
757818 g_value_take_boxed (&val, s);
758819 g_value_array_append (va, &val);
3939 $(top_srcdir)/common/m4/as-auto-alt.m4 \
4040 $(top_srcdir)/common/m4/as-compiler-flag.m4 \
4141 $(top_srcdir)/common/m4/as-libtool.m4 \
42 $(top_srcdir)/common/m4/as-python.m4 \
4342 $(top_srcdir)/common/m4/as-scrub-include.m4 \
4443 $(top_srcdir)/common/m4/as-version.m4 \
4544 $(top_srcdir)/common/m4/gst-arch.m4 \
5150 $(top_srcdir)/common/m4/gst-plugindir.m4 \
5251 $(top_srcdir)/common/m4/gst.m4 \
5352 $(top_srcdir)/common/m4/gtk-doc.m4 \
54 $(top_srcdir)/common/m4/isc-posix.m4 \
5553 $(top_srcdir)/common/m4/pkg.m4 \
5654 $(top_srcdir)/m4/as-check-python-headers.m4 \
5755 $(top_srcdir)/configure.ac
217215 PKG_CONFIG = @PKG_CONFIG@
218216 PLUGINDIR = @PLUGINDIR@
219217 PROFILE_CFLAGS = @PROFILE_CFLAGS@
220 PYDOCSTUFF_CFLAGS = @PYDOCSTUFF_CFLAGS@
221 PYDOCSTUFF_LIBS = @PYDOCSTUFF_LIBS@
222218 PYFARSIGHT_CFLAGS = @PYFARSIGHT_CFLAGS@
223219 PYFARSIGHT_LIBS = @PYFARSIGHT_LIBS@
224220 PYTHON = @PYTHON@
3737 $(top_srcdir)/common/m4/as-auto-alt.m4 \
3838 $(top_srcdir)/common/m4/as-compiler-flag.m4 \
3939 $(top_srcdir)/common/m4/as-libtool.m4 \
40 $(top_srcdir)/common/m4/as-python.m4 \
4140 $(top_srcdir)/common/m4/as-scrub-include.m4 \
4241 $(top_srcdir)/common/m4/as-version.m4 \
4342 $(top_srcdir)/common/m4/gst-arch.m4 \
4948 $(top_srcdir)/common/m4/gst-plugindir.m4 \
5049 $(top_srcdir)/common/m4/gst.m4 \
5150 $(top_srcdir)/common/m4/gtk-doc.m4 \
52 $(top_srcdir)/common/m4/isc-posix.m4 \
5351 $(top_srcdir)/common/m4/pkg.m4 \
5452 $(top_srcdir)/m4/as-check-python-headers.m4 \
5553 $(top_srcdir)/configure.ac
184182 PKG_CONFIG = @PKG_CONFIG@
185183 PLUGINDIR = @PLUGINDIR@
186184 PROFILE_CFLAGS = @PROFILE_CFLAGS@
187 PYDOCSTUFF_CFLAGS = @PYDOCSTUFF_CFLAGS@
188 PYDOCSTUFF_LIBS = @PYDOCSTUFF_LIBS@
189185 PYFARSIGHT_CFLAGS = @PYFARSIGHT_CFLAGS@
190186 PYFARSIGHT_LIBS = @PYFARSIGHT_LIBS@
191187 PYTHON = @PYTHON@
4040 $(top_srcdir)/common/m4/as-auto-alt.m4 \
4141 $(top_srcdir)/common/m4/as-compiler-flag.m4 \
4242 $(top_srcdir)/common/m4/as-libtool.m4 \
43 $(top_srcdir)/common/m4/as-python.m4 \
4443 $(top_srcdir)/common/m4/as-scrub-include.m4 \
4544 $(top_srcdir)/common/m4/as-version.m4 \
4645 $(top_srcdir)/common/m4/gst-arch.m4 \
5251 $(top_srcdir)/common/m4/gst-plugindir.m4 \
5352 $(top_srcdir)/common/m4/gst.m4 \
5453 $(top_srcdir)/common/m4/gtk-doc.m4 \
55 $(top_srcdir)/common/m4/isc-posix.m4 \
5654 $(top_srcdir)/common/m4/pkg.m4 \
5755 $(top_srcdir)/m4/as-check-python-headers.m4 \
5856 $(top_srcdir)/configure.ac
214212 PKG_CONFIG = @PKG_CONFIG@
215213 PLUGINDIR = @PLUGINDIR@
216214 PROFILE_CFLAGS = @PROFILE_CFLAGS@
217 PYDOCSTUFF_CFLAGS = @PYDOCSTUFF_CFLAGS@
218 PYDOCSTUFF_LIBS = @PYDOCSTUFF_LIBS@
219215 PYFARSIGHT_CFLAGS = @PYFARSIGHT_CFLAGS@
220216 PYFARSIGHT_LIBS = @PYFARSIGHT_LIBS@
221217 PYTHON = @PYTHON@
824824 if (port == udpsock->port &&
825825 !strcmp (multicast_ip, udpsock->multicast_ip) &&
826826 ((local_ip == NULL && udpsock->local_ip == NULL) ||
827 !strcmp (local_ip, udpsock->local_ip)))
827 (local_ip && udpsock->local_ip &&
828 !strcmp (local_ip, udpsock->local_ip))))
828829 {
829830 if (ttl > udpsock->current_ttl)
830831 {
4040 $(top_srcdir)/common/m4/as-auto-alt.m4 \
4141 $(top_srcdir)/common/m4/as-compiler-flag.m4 \
4242 $(top_srcdir)/common/m4/as-libtool.m4 \
43 $(top_srcdir)/common/m4/as-python.m4 \
4443 $(top_srcdir)/common/m4/as-scrub-include.m4 \
4544 $(top_srcdir)/common/m4/as-version.m4 \
4645 $(top_srcdir)/common/m4/gst-arch.m4 \
5251 $(top_srcdir)/common/m4/gst-plugindir.m4 \
5352 $(top_srcdir)/common/m4/gst.m4 \
5453 $(top_srcdir)/common/m4/gtk-doc.m4 \
55 $(top_srcdir)/common/m4/isc-posix.m4 \
5654 $(top_srcdir)/common/m4/pkg.m4 \
5755 $(top_srcdir)/m4/as-check-python-headers.m4 \
5856 $(top_srcdir)/configure.ac
214212 PKG_CONFIG = @PKG_CONFIG@
215213 PLUGINDIR = @PLUGINDIR@
216214 PROFILE_CFLAGS = @PROFILE_CFLAGS@
217 PYDOCSTUFF_CFLAGS = @PYDOCSTUFF_CFLAGS@
218 PYDOCSTUFF_LIBS = @PYDOCSTUFF_LIBS@
219215 PYFARSIGHT_CFLAGS = @PYFARSIGHT_CFLAGS@
220216 PYFARSIGHT_LIBS = @PYFARSIGHT_LIBS@
221217 PYTHON = @PYTHON@
973973 gboolean local)
974974 {
975975 FsCandidate *fscandidate;
976 gchar *ipaddr = g_malloc (INET_ADDRSTRLEN);
976 gchar *ipaddr = g_malloc (INET6_ADDRSTRLEN);
977977
978978 nice_address_to_string (&nicecandidate->addr, ipaddr);
979979
10571057 g_object_unref (participant);
10581058 }
10591059
1060 static void
1060 static gboolean
10611061 fs_nice_stream_transmitter_set_relay_info (FsNiceStreamTransmitter *self,
1062 const GstStructure *s, guint component_id)
1062 const GstStructure *s, guint component_id, GError **error)
10631063 {
10641064 const gchar *username, *password, *ip;
10651065 const gchar *relay_type_string;
10721072 password = gst_structure_get_string (s, "password");
10731073 relay_type_string = gst_structure_get_string (s, "relay-type");
10741074
1075 if (!ip || !port || !username || !password)
1076 {
1077 g_set_error (error, FS_ERROR, FS_ERROR_INVALID_ARGUMENTS,
1078 "Need to pass an ip, port, username and password for a relay");
1079 return FALSE;
1080 }
1081
10751082 if (relay_type_string)
10761083 {
10771084 if (!g_ascii_strcasecmp(relay_type_string, "tcp"))
10831090 nice_agent_set_relay_info(self->priv->agent->agent,
10841091 self->priv->stream_id, component_id, ip, port, username, password,
10851092 relay_type);
1093
1094 return TRUE;
10861095 }
10871096
10881097 static gboolean
13131322 if (gst_structure_get_uint (s, "component", &component_id) &&
13141323 component_id == c)
13151324 {
1316 fs_nice_stream_transmitter_set_relay_info (self, s, c);
1325 if (!fs_nice_stream_transmitter_set_relay_info (self, s, c, error))
1326 return FALSE;
13171327 relay_info_set = TRUE;
13181328 }
13191329 }
13261336 const GstStructure *s = gst_value_get_structure (val);
13271337
13281338 if (!gst_structure_has_field (s, "component"))
1329 fs_nice_stream_transmitter_set_relay_info (self, s, c);
1339 if (!fs_nice_stream_transmitter_set_relay_info (self, s, c, error))
1340 return FALSE;
13301341 }
13311342 }
13321343 }
4848 $(top_srcdir)/common/m4/as-auto-alt.m4 \
4949 $(top_srcdir)/common/m4/as-compiler-flag.m4 \
5050 $(top_srcdir)/common/m4/as-libtool.m4 \
51 $(top_srcdir)/common/m4/as-python.m4 \
5251 $(top_srcdir)/common/m4/as-scrub-include.m4 \
5352 $(top_srcdir)/common/m4/as-version.m4 \
5453 $(top_srcdir)/common/m4/gst-arch.m4 \
6059 $(top_srcdir)/common/m4/gst-plugindir.m4 \
6160 $(top_srcdir)/common/m4/gst.m4 \
6261 $(top_srcdir)/common/m4/gtk-doc.m4 \
63 $(top_srcdir)/common/m4/isc-posix.m4 \
6462 $(top_srcdir)/common/m4/pkg.m4 \
6563 $(top_srcdir)/m4/as-check-python-headers.m4 \
6664 $(top_srcdir)/configure.ac
228226 PKG_CONFIG = @PKG_CONFIG@
229227 PLUGINDIR = @PLUGINDIR@
230228 PROFILE_CFLAGS = @PROFILE_CFLAGS@
231 PYDOCSTUFF_CFLAGS = @PYDOCSTUFF_CFLAGS@
232 PYDOCSTUFF_LIBS = @PYDOCSTUFF_LIBS@
233229 PYFARSIGHT_CFLAGS = @PYFARSIGHT_CFLAGS@
234230 PYFARSIGHT_LIBS = @PYFARSIGHT_LIBS@
235231 PYTHON = @PYTHON@
14101410 }
14111411 }
14121412
1413 if (!candidate)
1414 {
1415 stun_message_free (msg);
1416 return TRUE;
1417 }
1418
14131419 FS_RAWUDP_COMPONENT_LOCK(self);
14141420 fs_rawudp_component_stop_stun_locked (self);
14151421 #ifdef HAVE_GUPNP
775775 udpport = udpport_e->data;
776776 if (requested_port == udpport->requested_port &&
777777 ((requested_ip == NULL && udpport->requested_ip == NULL) ||
778 !strcmp (requested_ip, udpport->requested_ip)))
778 (requested_ip && udpport->requested_ip &&
779 !strcmp (requested_ip, udpport->requested_ip))))
779780 {
780781 GST_LOG ("Got port refcount %d->%d", udpport->refcount,
781782 udpport->refcount+1);