delete junk

git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@342 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
Michael Jerris 2006-01-13 13:05:18 +00:00
parent 95fbd20408
commit bdbfb9875e
127 changed files with 0 additions and 70133 deletions

View File

@ -1,229 +0,0 @@
October 2, 2005
JRTPLIB ChangeLog
-----------
3.3.0 (October 2005)
* Now it is possible to use a user-defined transmission component.
* Added GStreamer transmission component written by Philippe Khalaf
(burger@speedy.org).
3.2.1 (September 2005)
* The library wouldn't compile when probation support was disabled.
Thanks to Herman Bastiaens (herman.bastiaens@student.luc.ac.be) for
bringing this to my attention.
* When parsed from an RTPRawPacket, the receive time is also stored
in the RTPPacket instance.
3.2.0 (September 2005)
* Modified the routine in the RTPSession class which creates the
CNAME. Aparently on some systems, the 'getlogin' call returns
null. As an alternative, the library uses getenv("LOGNAME").
Thanks to Mark Schiffmann (schima@neumann-elektronik.com) for
mentioning this to me.
* Added a OnBYEPacket method to the RTPSession class. Thanks to
Sigrid Thijs (sthijs@androme.be) for suggesting this.
* When probation support is enabled, a probation type can be selected
when the session is created. Supported types are "No probation",
"Use probation, but store packets" and "Use probation and discard
packets received in probation mode". Thanks to Chris Flerackers
(cflerackers@androme.be) for suggesting this feature.
* Added a parameter to WaitForIncomingData which indicates if
data is available when the function returns. Based on a suggestion
by Uwe Andersen (uandersen@mayah.com).
* Now using getifaddrs (if possible) to obtain our own IP addresses
(both in IPv4 version and IPv6 version).
* IPv6 code in Win32 version now works, but Visual Studio 2005 beta
has to be used. Thanks to Yi-Huan Chan (yhchan@csie.nctu.edu.tw)
for contributing some code.
* Added Win32 code for GetLocalIPList_Interfaces (both IPv4 and IPv6).
Thanks to Ivan Makushkin (camry@pisem.net) for pointing out how
this could be done.
* Added an option to use a SR packet when sending a BYE message.
Previously, a RR packet was always used, even if a session is
actually an active sender of data. Thanks to Uwe Andersen
(uandersen@mayah.com) for bringing this to my attention.
* Fixed bug in CNAME creation.
* Added WinCE support. Thanks to Maarten Daniels
(maarten.daniels@uhasselt.be) for supplying patches.
* Changed the CurrentTime implementation for the MS-Windows version.
Thanks to Maarten Daniels (maarten.daniels@uhasselt.be) and Chris
Flerackers (cflerackers@androme.be).
3.1.0 (October 2004)
* Added a callback OnPollThreadStep which is called at the end of
each loop of the poll thread
* Added the examples subdirectory to the package
* Fixed bug in rtpudpv4transmitter.cpp and rtpudpv6transmitter.cpp
which caused an infinite loop in LeaveAllMulticastGroups. Thanks
to Stijn Agten (stijn.agten@luc.ac.be) for pointing this out.
* Added a function GetTransmissionInfo to the RTPTransmitter class
(and subclasses). The function will return some additional
information about the transmitter, like local IP addresses and
socket descriptors.
3.0.2 (September 2004)
* Bugfix in rtpinternalsourcedata.cpp. The bug caused a crash when
duplicate packets were received. Thanks to Dominique Prunier
(dominique.prunier@micromedia-int.com) for informing me about
this.
3.0.1 (September 2004)
* Bugfix in rtpudpv4transmitter.cpp and rtpudpv6transmitter.cpp in
method SetReceiveMode
* Removed unused 'acceptownpackets' variable from
rtpudpv4transmitter.cpp and rtpudpv6transmitter.cpp
* Added a 'Dump' function (for debugging) in RTPUDPv4Transmitter
and RTPUDPv6Transmitter
* Now using JThread 1.1.0
3.0.0 (August 2004)
* Complete rewrite of the library to provide better extensibility
and compliance with RFC 3550
* Changes from the 2.x series:
- The 2.x series was created with the idea that the user
would only need to use the RTPSession class which meant
that the other classes were not very useful by themselves.
This version on the other hand, aims to provide many
useful components to aid the user in building RTP capable
applications.
- In this version, the code which is specific for the
underlying protocol by which RTP packets are transported,
is bundled in a class which inherits its interface from a
class called RTPTransmitter. This makes it easy for
different underlying protocols to be supported. Currently
there is support for UDP over IPv4 and UDP over IPv6.
2.9 (July 2004)
* Fixed bug in rtpsrclist.cpp. Thanks to Lukasz Bobowiec
(bobowiec@icslab.agh.edu.pl)
* Added function in RTPSourceData which returns the IP address
* Changed the random routines. Thanks to Jaap Keuter
(jaap.keuter@xs4all.nl)
* Made the shared library link against libstdc++ if possible.
Thanks to Anatoly Yakovenko (aeyakovenko@yahoo.com) for the
suggestion.
2.8 (January 2004)
* Added code to avoid a crash when receiving a malformed packet
* Fixed a memory leak (forgot to free memory when a malformed
packet was discarded)
* Changed debug routines for memory tracking
2.7b (November 2003)
* Only added --enable-fpic and --enable-fPIC to the configure script
2.7 (December 2002)
* Fixed important bug in rtpsources.cpp. This bug could cause
source information to get lost and could create a memory leak.
* Improved support for AIX in multicasting code (uses _AIX define).
Thanks to Klaus Matuschek (klaus.matuschek@infonova.com)
* Fixed possible buffer overrun in rtpcontributingsources.cpp
2.6 (January 2002)
* This release only contains some minor changes
* An 'install' target was added to the Makefile
* Some newlines were added add the end of certain files to avoid
compiler warnings
* Improved the jitter calculations somewhat
2.5 (December 2000)
* Added the possibility for the user to receive the raw RTCP packets.
* Fixed a bug in RTPContributingSources::CreateLocalCNAME(). In this
routine, the wrong length was passed to 'gethostname'. Thanks to
Sergey V.Shpital (sergey@page.net.ru) for bringing this to my
attention.
* Added a routine to set the Type of Service (ToS) field of the
outgoing packets (both RTP and RTCP). Thank to Philippe Cardon
(philippe.cardon@bt.com) for writing this code.
* Fixed a bug in the 'packets lost' calculation. Thank to Domingo
Cuevas Jr. (dcj@onebox.com) for helping me find this bug.
* Fixed a bug in the sequence number and jitter calculation: when
packets were received out of order, the sequence numbers and
jitter got messed up. Many thanks to Mohammad Tawsheeq Russool
(m.russool@eim.surrey.ac.uk) for helping me track down these
bugs.
* Added the possibility to set the timestamp unit for a particular
source. Previously, it was assumed that their timestamp unit
was the same as that of the local session.
2.4 (July 2000)
* Fixed a bug which caused all CSRS's except one to be incorrect.
* Added RTP header extension support (for both sending and receiving).
* Added some things (which should have been there already) to
RTPPacket.
* Adjusted the way in which the login name is retrieved on unix-like
systems. First I used a call to 'getlogin', but apparently this
function messes with timers through the use of 'alarm' calls (at
least on Linux). Now, I use a combination of 'geteuid' and
'getpwuid' to obtain the necessary information. This does not
have that problem and is a lot cleaner since it doesn't depend
on login info (utmp) like 'getlogin'. Thanks to Roberto Jung Drebes
(drebes@inf.ufrgs.br) for pointing out the timer-problem.
* Made a LaTeX version of the manual and tutorial. Looks a lot nicer.
* Made it possible for the user to specify the local IP address
instead of letting the library figure it out itself.
* Fixed a bug which caused the 'fraction lost' in a RR packet to be
zero all the time. Thanks to Domingo Cuevas Jr. (dcj@onebox.com) for
pointing this out.
* Rewrote the RTCP packet sending routines. Now, they are much cleaner
and much more understandable :)
* Added better support for RTCP 'APP' packets. You can now both send
and receive APP packets.
2.3 (April 2000)
* The routine which creates and sends RTCP packets is now a bit faster.
* Added a sample that demonstrates the round-trip time function.
* Added functions to RTPSourceData: now the time when the last RR or
SR report was received can be retrieved. Also, the round trip time
can be retrieved: this is calculated as suggested in RFC 1889.
* Fixed a bug: the LSR value was not calculated correctly, now it is
(or should be ;-) )
* Instead of specifying defines on the command line, they are now
defined in a config file. The unix version of this file is created
by the configure script.
* Added a member to RTPPacket which I had forgotten (the payload type,
which is obviously important :-) ).
* The library should now be able to work on a VxWorks platform. Thanks
to Dave Osborne (dosborne@argoneng.com) for his help.
* Added a tutorial and a small example application.
* Added some debugging routines (RTPDebug class) to check for memory
leaks. It turned out that there weren't any, so I'm pretty pleased ;)
* I've added a 'configure' script to make compilation a bit easier
across different platforms. Thanks to Qi Han (qh1c4@mizzou.edu) for
helping me to improve the support for the Solaris platform. Also
many thanks to Dario Maggiorini (dario@netdev.usr.dsi.unimi.it) for
helping me test the script on several platforms.
* Added multicasting support.
* A bug in rtpsourcedata.cpp was pointed out and fixed by Ramon Clout
(ramonc@win.tue.nl). Many thanks for this, Ramon.
2.2 (February 2000)
* Extra support for Sun and HP. Thanks to Henry Lau (hlau@nuera.com)
and Justin Matthews (jmatthews@nuera.com) for this information.
* The 'Poll' routine in rtpconnection.cpp has been altered. Now, the
routine should work even if there's that ioctl bug (previously, this
bug was only taken into consideration on a Windows platform).
Thanks to Justin Matthews (jmatthews@nuera.com) for his bugreport.
* Added some routines to RTPSession to get the local IP address and the
port number of the sending socket.
* 'install' rule added to the makefile.
* Added the define 'RTP_SOCKLENTYPE_UINT'. See README.TXT for more
information about this.
2.1 (December 1999)
* First release of jrtplib.
* Added member functions of RTPSession to retrieve the used sockets.
* Made the destination list faster by using a hash table.
2.0 (August 1999)
* First decent implementation of RTP. Entirely rewritten since 1.0.
1.0 (August 1999)
* First implementation of RTP. There were a lot of things that weren't
quite right and the organisation of the classes was quite nasty.
However, I learned a lot about RTP making this version, and so it
allowed me to make a good start on version 2.0.

View File

@ -1,236 +0,0 @@
Installation Instructions
*************************
Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005 Free
Software Foundation, Inc.
This file is free documentation; the Free Software Foundation gives
unlimited permission to copy, distribute and modify it.
Basic Installation
==================
These are generic installation instructions.
The `configure' shell script attempts to guess correct values for
various system-dependent variables used during compilation. It uses
those values to create a `Makefile' in each directory of the package.
It may also create one or more `.h' files containing system-dependent
definitions. Finally, it creates a shell script `config.status' that
you can run in the future to recreate the current configuration, and a
file `config.log' containing compiler output (useful mainly for
debugging `configure').
It can also use an optional file (typically called `config.cache'
and enabled with `--cache-file=config.cache' or simply `-C') that saves
the results of its tests to speed up reconfiguring. (Caching is
disabled by default to prevent problems with accidental use of stale
cache files.)
If you need to do unusual things to compile the package, please try
to figure out how `configure' could check whether to do them, and mail
diffs or instructions to the address given in the `README' so they can
be considered for the next release. If you are using the cache, and at
some point `config.cache' contains results you don't want to keep, you
may remove or edit it.
The file `configure.ac' (or `configure.in') is used to create
`configure' by a program called `autoconf'. You only need
`configure.ac' if you want to change it or regenerate `configure' using
a newer version of `autoconf'.
The simplest way to compile this package is:
1. `cd' to the directory containing the package's source code and type
`./configure' to configure the package for your system. If you're
using `csh' on an old version of System V, you might need to type
`sh ./configure' instead to prevent `csh' from trying to execute
`configure' itself.
Running `configure' takes awhile. While running, it prints some
messages telling which features it is checking for.
2. Type `make' to compile the package.
3. Optionally, type `make check' to run any self-tests that come with
the package.
4. Type `make install' to install the programs and any data files and
documentation.
5. You can remove the program binaries and object files from the
source code directory by typing `make clean'. To also remove the
files that `configure' created (so you can compile the package for
a different kind of computer), type `make distclean'. There is
also a `make maintainer-clean' target, but that is intended mainly
for the package's developers. If you use it, you may have to get
all sorts of other programs in order to regenerate files that came
with the distribution.
Compilers and Options
=====================
Some systems require unusual options for compilation or linking that the
`configure' script does not know about. Run `./configure --help' for
details on some of the pertinent environment variables.
You can give `configure' initial values for configuration parameters
by setting variables in the command line or in the environment. Here
is an example:
./configure CC=c89 CFLAGS=-O2 LIBS=-lposix
*Note Defining Variables::, for more details.
Compiling For Multiple Architectures
====================================
You can compile the package for more than one kind of computer at the
same time, by placing the object files for each architecture in their
own directory. To do this, you must use a version of `make' that
supports the `VPATH' variable, such as GNU `make'. `cd' to the
directory where you want the object files and executables to go and run
the `configure' script. `configure' automatically checks for the
source code in the directory that `configure' is in and in `..'.
If you have to use a `make' that does not support the `VPATH'
variable, you have to compile the package for one architecture at a
time in the source code directory. After you have installed the
package for one architecture, use `make distclean' before reconfiguring
for another architecture.
Installation Names
==================
By default, `make install' will install the package's files in
`/usr/local/bin', `/usr/local/man', etc. You can specify an
installation prefix other than `/usr/local' by giving `configure' the
option `--prefix=PREFIX'.
You can specify separate installation prefixes for
architecture-specific files and architecture-independent files. If you
give `configure' the option `--exec-prefix=PREFIX', the package will
use PREFIX as the prefix for installing programs and libraries.
Documentation and other data files will still use the regular prefix.
In addition, if you use an unusual directory layout you can give
options like `--bindir=DIR' to specify different values for particular
kinds of files. Run `configure --help' for a list of the directories
you can set and what kinds of files go in them.
If the package supports it, you can cause programs to be installed
with an extra prefix or suffix on their names by giving `configure' the
option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
Optional Features
=================
Some packages pay attention to `--enable-FEATURE' options to
`configure', where FEATURE indicates an optional part of the package.
They may also pay attention to `--with-PACKAGE' options, where PACKAGE
is something like `gnu-as' or `x' (for the X Window System). The
`README' should mention any `--enable-' and `--with-' options that the
package recognizes.
For packages that use the X Window System, `configure' can usually
find the X include and library files automatically, but if it doesn't,
you can use the `configure' options `--x-includes=DIR' and
`--x-libraries=DIR' to specify their locations.
Specifying the System Type
==========================
There may be some features `configure' cannot figure out automatically,
but needs to determine by the type of machine the package will run on.
Usually, assuming the package is built to be run on the _same_
architectures, `configure' can figure that out, but if it prints a
message saying it cannot guess the machine type, give it the
`--build=TYPE' option. TYPE can either be a short name for the system
type, such as `sun4', or a canonical name which has the form:
CPU-COMPANY-SYSTEM
where SYSTEM can have one of these forms:
OS KERNEL-OS
See the file `config.sub' for the possible values of each field. If
`config.sub' isn't included in this package, then this package doesn't
need to know the machine type.
If you are _building_ compiler tools for cross-compiling, you should
use the `--target=TYPE' option to select the type of system they will
produce code for.
If you want to _use_ a cross compiler, that generates code for a
platform different from the build platform, you should specify the
"host" platform (i.e., that on which the generated programs will
eventually be run) with `--host=TYPE'.
Sharing Defaults
================
If you want to set default values for `configure' scripts to share, you
can create a site shell script called `config.site' that gives default
values for variables like `CC', `cache_file', and `prefix'.
`configure' looks for `PREFIX/share/config.site' if it exists, then
`PREFIX/etc/config.site' if it exists. Or, you can set the
`CONFIG_SITE' environment variable to the location of the site script.
A warning: not all `configure' scripts look for a site script.
Defining Variables
==================
Variables not defined in a site shell script can be set in the
environment passed to `configure'. However, some packages may run
configure again during the build, and the customized values of these
variables may be lost. In order to avoid this problem, you should set
them in the `configure' command line, using `VAR=value'. For example:
./configure CC=/usr/local2/bin/gcc
causes the specified `gcc' to be used as the C compiler (unless it is
overridden in the site shell script). Here is a another example:
/bin/bash ./configure CONFIG_SHELL=/bin/bash
Here the `CONFIG_SHELL=/bin/bash' operand causes subsequent
configuration-related scripts to be executed by `/bin/bash'.
`configure' Invocation
======================
`configure' recognizes the following options to control how it operates.
`--help'
`-h'
Print a summary of the options to `configure', and exit.
`--version'
`-V'
Print the version of Autoconf used to generate the `configure'
script, and exit.
`--cache-file=FILE'
Enable the cache: use and save the results of the tests in FILE,
traditionally `config.cache'. FILE defaults to `/dev/null' to
disable caching.
`--config-cache'
`-C'
Alias for `--cache-file=config.cache'.
`--quiet'
`--silent'
`-q'
Do not print messages saying which checks are being made. To
suppress all normal output, redirect it to `/dev/null' (any error
messages will still be shown).
`--srcdir=DIR'
Look for the package's source code in directory DIR. Usually
`configure' can determine that directory automatically.
`configure' also accepts some other, not widely useful, options. Run
`configure --help' for more details.

View File

@ -1,19 +0,0 @@
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"),
to deal in the Software without restriction, including without limitation
the rights to use, copy, modify, merge, publish, distribute, sublicense,
and/or sell copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
IN THE SOFTWARE.

View File

@ -1,17 +0,0 @@
SUBDIRS = src tools doc examples pkgconfig
EXTRA_DIST = LICENSE.MIT ChangeLog README.TXT jrtplib.dsw jrtplib.dsp jrtplib.vcproj \
jrtplib.sln jrtplib_wce.vcproj jrtplib_wce.sln
dist-hook: distclean
rm -f $(distdir)/src/rtpconfig_unix.h
rm -f $(distdir)/src/rtptypes_unix.h
mv $(distdir)/jrtplib.dsw $(distdir)/jrtplib.dsw.tmp
mv $(distdir)/jrtplib.dsp $(distdir)/jrtplib.dsp.tmp
todos < $(distdir)/jrtplib.dsw.tmp > $(distdir)/jrtplib.dsw
todos < $(distdir)/jrtplib.dsp.tmp > $(distdir)/jrtplib.dsp
rm $(distdir)/jrtplib.dsw.tmp
rm $(distdir)/jrtplib.dsp.tmp
chmod a-x $(distdir)/jrtplib.vcproj
chmod a-x $(distdir)/jrtplib.sln
chmod a-x $(distdir)/jrtplib_wce.vcproj
chmod a-x $(distdir)/jrtplib_wce.sln

View File

@ -1,628 +0,0 @@
# Makefile.in generated by automake 1.9.6 from Makefile.am.
# @configure_input@
# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = .
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
INSTALL = @INSTALL@
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in $(top_srcdir)/configure AUTHORS COPYING \
ChangeLog INSTALL NEWS TODO config.guess config.sub depcomp \
install-sh ltmain.sh missing mkinstalldirs
subdir = .
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/configure.in
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
configure.lineno configure.status.lineno
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_CLEAN_FILES =
SOURCES =
DIST_SOURCES =
RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
html-recursive info-recursive install-data-recursive \
install-exec-recursive install-info-recursive \
install-recursive installcheck-recursive installdirs-recursive \
pdf-recursive ps-recursive uninstall-info-recursive \
uninstall-recursive
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = $(SUBDIRS)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir)
am__remove_distdir = \
{ test ! -d $(distdir) \
|| { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
&& rm -fr $(distdir); }; }
DIST_ARCHIVES = $(distdir).tar.gz
GZIP_ENV = --best
distuninstallcheck_listfiles = find . -type f -print
distcleancheck_listfiles = find . -type f -print
ACLOCAL = @ACLOCAL@
AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@
AMTAR = @AMTAR@
AR = @AR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
ECHO = @ECHO@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
F77 = @F77@
FFLAGS = @FFLAGS@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIBTOOL = @LIBTOOL@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
RANLIB = @RANLIB@
RTP_ENDIAN = @RTP_ENDIAN@
RTP_FILIO = @RTP_FILIO@
RTP_GSTINCLUDES = @RTP_GSTINCLUDES@
RTP_HAVE_SOCKADDR_LEN = @RTP_HAVE_SOCKADDR_LEN@
RTP_LINKLIBS = @RTP_LINKLIBS@
RTP_SOCKIO = @RTP_SOCKIO@
RTP_SOCKLENTYPE_UINT = @RTP_SOCKLENTYPE_UINT@
RTP_SUPPORT_GETLOGINR = @RTP_SUPPORT_GETLOGINR@
RTP_SUPPORT_GNUDRAND = @RTP_SUPPORT_GNUDRAND@
RTP_SUPPORT_GST = @RTP_SUPPORT_GST@
RTP_SUPPORT_IFADDRS = @RTP_SUPPORT_IFADDRS@
RTP_SUPPORT_INLINETEMPLATEPARAM = @RTP_SUPPORT_INLINETEMPLATEPARAM@
RTP_SUPPORT_IPV4MULTICAST = @RTP_SUPPORT_IPV4MULTICAST@
RTP_SUPPORT_IPV6 = @RTP_SUPPORT_IPV6@
RTP_SUPPORT_IPV6MULTICAST = @RTP_SUPPORT_IPV6MULTICAST@
RTP_SUPPORT_PROBATION = @RTP_SUPPORT_PROBATION@
RTP_SUPPORT_RANDR = @RTP_SUPPORT_RANDR@
RTP_SUPPORT_SDESPRIV = @RTP_SUPPORT_SDESPRIV@
RTP_SUPPORT_THREAD = @RTP_SUPPORT_THREAD@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
VERSION = @VERSION@
ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_F77 = @ac_ct_F77@
ac_ct_RANLIB = @ac_ct_RANLIB@
ac_ct_STRIP = @ac_ct_STRIP@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
datadir = @datadir@
exec_prefix = @exec_prefix@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
prefix = @prefix@
program_transform_name = @program_transform_name@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
SUBDIRS = src tools doc examples pkgconfig
EXTRA_DIST = LICENSE.MIT ChangeLog README.TXT jrtplib.dsw jrtplib.dsp jrtplib.vcproj \
jrtplib.sln jrtplib_wce.vcproj jrtplib_wce.sln
all: all-recursive
.SUFFIXES:
am--refresh:
@:
$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
echo ' cd $(srcdir) && $(AUTOMAKE) --gnu '; \
cd $(srcdir) && $(AUTOMAKE) --gnu \
&& exit 0; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \
cd $(top_srcdir) && \
$(AUTOMAKE) --gnu Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
echo ' $(SHELL) ./config.status'; \
$(SHELL) ./config.status;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
esac;
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
$(SHELL) ./config.status --recheck
$(top_srcdir)/configure: $(am__configure_deps)
cd $(srcdir) && $(AUTOCONF)
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
mostlyclean-libtool:
-rm -f *.lo
clean-libtool:
-rm -rf .libs _libs
distclean-libtool:
-rm -f libtool
uninstall-info-am:
# This directory's subdirectories are mostly independent; you can cd
# into them and run `make' without going through this Makefile.
# To change the values of `make' variables: instead of editing Makefiles,
# (1) if the variable is set in `config.status', edit `config.status'
# (which will cause the Makefiles to be regenerated when you run `make');
# (2) otherwise, pass the desired values on the `make' command line.
$(RECURSIVE_TARGETS):
@failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \
target=`echo $@ | sed s/-recursive//`; \
list='$(SUBDIRS)'; for subdir in $$list; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
dot_seen=yes; \
local_target="$$target-am"; \
else \
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done; \
if test "$$dot_seen" = "no"; then \
$(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
fi; test -z "$$fail"
mostlyclean-recursive clean-recursive distclean-recursive \
maintainer-clean-recursive:
@failcom='exit 1'; \
for f in x $$MAKEFLAGS; do \
case $$f in \
*=* | --[!k]*);; \
*k*) failcom='fail=yes';; \
esac; \
done; \
dot_seen=no; \
case "$@" in \
distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
*) list='$(SUBDIRS)' ;; \
esac; \
rev=''; for subdir in $$list; do \
if test "$$subdir" = "."; then :; else \
rev="$$subdir $$rev"; \
fi; \
done; \
rev="$$rev ."; \
target=`echo $@ | sed s/-recursive//`; \
for subdir in $$rev; do \
echo "Making $$target in $$subdir"; \
if test "$$subdir" = "."; then \
local_target="$$target-am"; \
else \
local_target="$$target"; \
fi; \
(cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
|| eval $$failcom; \
done && test -z "$$fail"
tags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
done
ctags-recursive:
list='$(SUBDIRS)'; for subdir in $$list; do \
test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
done
ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
mkid -fID $$unique
tags: TAGS
TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
tags=; \
here=`pwd`; \
if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
include_option=--etags-include; \
empty_fix=.; \
else \
include_option=--include; \
empty_fix=; \
fi; \
list='$(SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test ! -f $$subdir/TAGS || \
tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
fi; \
done; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$tags $$unique; \
fi
ctags: CTAGS
CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
$(TAGS_FILES) $(LISP)
tags=; \
here=`pwd`; \
list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | \
$(AWK) ' { files[$$0] = 1; } \
END { for (i in files) print i; }'`; \
test -z "$(CTAGS_ARGS)$$tags$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$tags $$unique
GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& cd $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) $$here
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES)
$(am__remove_distdir)
mkdir $(distdir)
$(mkdir_p) $(distdir)/pkgconfig $(distdir)/src
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
list='$(DISTFILES)'; for file in $$list; do \
case $$file in \
$(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
$(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \
esac; \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
dir="/$$dir"; \
$(mkdir_p) "$(distdir)$$dir"; \
else \
dir=''; \
fi; \
if test -d $$d/$$file; then \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
fi; \
cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
else \
test -f $(distdir)/$$file \
|| cp -p $$d/$$file $(distdir)/$$file \
|| exit 1; \
fi; \
done
list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
if test "$$subdir" = .; then :; else \
test -d "$(distdir)/$$subdir" \
|| $(mkdir_p) "$(distdir)/$$subdir" \
|| exit 1; \
distdir=`$(am__cd) $(distdir) && pwd`; \
top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
(cd $$subdir && \
$(MAKE) $(AM_MAKEFLAGS) \
top_distdir="$$top_distdir" \
distdir="$$distdir/$$subdir" \
distdir) \
|| exit 1; \
fi; \
done
$(MAKE) $(AM_MAKEFLAGS) \
top_distdir="$(top_distdir)" distdir="$(distdir)" \
dist-hook
-find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \
! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
! -type d ! -perm -400 -exec chmod a+r {} \; -o \
! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \
|| chmod -R a+r $(distdir)
dist-gzip: distdir
tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
$(am__remove_distdir)
dist-bzip2: distdir
tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
$(am__remove_distdir)
dist-tarZ: distdir
tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
$(am__remove_distdir)
dist-shar: distdir
shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
$(am__remove_distdir)
dist-zip: distdir
-rm -f $(distdir).zip
zip -rq $(distdir).zip $(distdir)
$(am__remove_distdir)
dist dist-all: distdir
tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
$(am__remove_distdir)
# This target untars the dist file and tries a VPATH configuration. Then
# it guarantees that the distribution is self-contained by making another
# tarfile.
distcheck: dist
case '$(DIST_ARCHIVES)' in \
*.tar.gz*) \
GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\
*.tar.bz2*) \
bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\
*.tar.Z*) \
uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
*.shar.gz*) \
GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\
*.zip*) \
unzip $(distdir).zip ;;\
esac
chmod -R a-w $(distdir); chmod a+w $(distdir)
mkdir $(distdir)/_build
mkdir $(distdir)/_inst
chmod a-w $(distdir)
dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
&& dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
&& cd $(distdir)/_build \
&& ../configure --srcdir=.. --prefix="$$dc_install_base" \
$(DISTCHECK_CONFIGURE_FLAGS) \
&& $(MAKE) $(AM_MAKEFLAGS) \
&& $(MAKE) $(AM_MAKEFLAGS) dvi \
&& $(MAKE) $(AM_MAKEFLAGS) check \
&& $(MAKE) $(AM_MAKEFLAGS) install \
&& $(MAKE) $(AM_MAKEFLAGS) installcheck \
&& $(MAKE) $(AM_MAKEFLAGS) uninstall \
&& $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
distuninstallcheck \
&& chmod -R a-w "$$dc_install_base" \
&& ({ \
(cd ../.. && umask 077 && mkdir "$$dc_destdir") \
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
&& $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
} || { rm -rf "$$dc_destdir"; exit 1; }) \
&& rm -rf "$$dc_destdir" \
&& $(MAKE) $(AM_MAKEFLAGS) dist \
&& rm -rf $(DIST_ARCHIVES) \
&& $(MAKE) $(AM_MAKEFLAGS) distcleancheck
$(am__remove_distdir)
@(echo "$(distdir) archives ready for distribution: "; \
list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
sed -e '1{h;s/./=/g;p;x;}' -e '$${p;x;}'
distuninstallcheck:
@cd $(distuninstallcheck_dir) \
&& test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
|| { echo "ERROR: files left after uninstall:" ; \
if test -n "$(DESTDIR)"; then \
echo " (check DESTDIR support)"; \
fi ; \
$(distuninstallcheck_listfiles) ; \
exit 1; } >&2
distcleancheck: distclean
@if test '$(srcdir)' = . ; then \
echo "ERROR: distcleancheck can only run from a VPATH build" ; \
exit 1 ; \
fi
@test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
|| { echo "ERROR: files left in build directory after distclean:" ; \
$(distcleancheck_listfiles) ; \
exit 1; } >&2
check-am: all-am
check: check-recursive
all-am: Makefile
installdirs: installdirs-recursive
installdirs-am:
install: install-recursive
install-exec: install-exec-recursive
install-data: install-data-recursive
uninstall: uninstall-recursive
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-recursive
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-recursive
clean-am: clean-generic clean-libtool mostlyclean-am
distclean: distclean-recursive
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
-rm -f Makefile
distclean-am: clean-am distclean-generic distclean-libtool \
distclean-tags
dvi: dvi-recursive
dvi-am:
html: html-recursive
info: info-recursive
info-am:
install-data-am:
install-exec-am:
install-info: install-info-recursive
install-man:
installcheck-am:
maintainer-clean: maintainer-clean-recursive
-rm -f $(am__CONFIG_DISTCLEAN_FILES)
-rm -rf $(top_srcdir)/autom4te.cache
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-recursive
mostlyclean-am: mostlyclean-generic mostlyclean-libtool
pdf: pdf-recursive
pdf-am:
ps: ps-recursive
ps-am:
uninstall-am: uninstall-info-am
uninstall-info: uninstall-info-recursive
.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am am--refresh check \
check-am clean clean-generic clean-libtool clean-recursive \
ctags ctags-recursive dist dist-all dist-bzip2 dist-gzip \
dist-hook dist-shar dist-tarZ dist-zip distcheck distclean \
distclean-generic distclean-libtool distclean-recursive \
distclean-tags distcleancheck distdir distuninstallcheck dvi \
dvi-am html html-am info info-am install install-am \
install-data install-data-am install-exec install-exec-am \
install-info install-info-am install-man install-strip \
installcheck installcheck-am installdirs installdirs-am \
maintainer-clean maintainer-clean-generic \
maintainer-clean-recursive mostlyclean mostlyclean-generic \
mostlyclean-libtool mostlyclean-recursive pdf pdf-am ps ps-am \
tags tags-recursive uninstall uninstall-am uninstall-info-am
dist-hook: distclean
rm -f $(distdir)/src/rtpconfig_unix.h
rm -f $(distdir)/src/rtptypes_unix.h
mv $(distdir)/jrtplib.dsw $(distdir)/jrtplib.dsw.tmp
mv $(distdir)/jrtplib.dsp $(distdir)/jrtplib.dsp.tmp
todos < $(distdir)/jrtplib.dsw.tmp > $(distdir)/jrtplib.dsw
todos < $(distdir)/jrtplib.dsp.tmp > $(distdir)/jrtplib.dsp
rm $(distdir)/jrtplib.dsw.tmp
rm $(distdir)/jrtplib.dsp.tmp
chmod a-x $(distdir)/jrtplib.vcproj
chmod a-x $(distdir)/jrtplib.sln
chmod a-x $(distdir)/jrtplib_wce.vcproj
chmod a-x $(distdir)/jrtplib_wce.sln
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

View File

@ -1,130 +0,0 @@
------------------------------------------------------------------------------
October 2, 2005
JRTPLIB (v3.3.0)
Developed at the The Expertise Centre for
Digital Media (EDM), a research institute
of the Hasselt University
http://www.edm.uhasselt.be/
http://www.uhasselt.be/
LIBRARY LOCATION AND CONTACT
============================
Normally, you should be able to download the latest version of the library
from this url:
http://research.edm.uhasselt.be/jori/jrtplib/jrtplib.html
If you have questions about the library, you can mail me at:
jori@lumumba.uhasselt.be
There is also a mailing list for the library. To subscribe to the list,
send an e-mail with the text 'subscribe jrtplib' as the message body (not
the subject) to majordomo@edm.uhasselt.be and you'll receive further
instructions.
ACKNOWLEDGMENT
==============
I would like thank the people at the Expertise Centre for Digital Media
for giving me the opportunity to create this rewrite of the library.
DISCLAIMER & COPYRIGHT
======================
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"),
to deal in the Software without restriction, including without limitation
the rights to use, copy, modify, merge, publish, distribute, sublicense,
and/or sell copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
IN THE SOFTWARE.
INSTALLATION NOTES
==================
* To compile the library on a unix-like platform, just start the configure
script. This should generate a makefile which you can use to start
building the library using 'make'.
* To compile the library on an MS-Windows platfrom: Visual Studio
workspace files are included. The project will search
for JThread files in ..\jthread-1.1.2
To compile the library without using JThread, comment the line
with RTP_SUPPORT_THREAD in rtpconfig_win.h
Note that for Visual Studio 6, you must have service pack 6 for
installed to be able to compile the library. (NOTE: In this copy
of the lib, jthread has been included and does not need to be included
seperately)
* For a manual about the library, please refer to doc/ subdirectory.
Using 'make doc', a PDF version of the documentation will be built.
Note that you'll need to have the pdflatex LaTeX compiler installed.
Alternatively, you can download the documentation from the homepage:
http://research.edm.uhasselt.be/jori/jrtplib/jrtplib.pdf
* For systems with low memory or for applications which will involve only
a few participants at a time:
You can set the HASHSIZE defines in rtpsources.h, rtpudpv4transmitter.h
and rtpudpv6transmitter.h to a lower value to avoid memory being wasted.
Note that the library will have to be recompiled.
* Used defines:
- WIN32:
For compilation on an Win32 platform.
- _WIN32_WCE:
Define needed for compilation on a WinCE platform
- RTP_HAVE_SYS_FILIO:
Set if <sys/filio.h> exists.
- RTP_HAVE_SYS_SOCKIO:
Set if <sys/sockio.h> exists.
- RTP_BIG_ENDIAN:
If set, assume big-endian byte ordering.
- RTP_SOCKLENTYPE_UINT:
Indicates that getsockname used an unsigned int as its
third parameter.
- RTP_HAVE_SOCKADDR_LEN:
Indicates that struct sockaddr has an sa_len field.
- RTP_SUPPORT_IPV4MULTICAST:
Enables support for IPv4 multicasting.
- RTP_SUPPORT_THREAD:
Enables support for JThread.
- RTP_SUPPORT_SDESPRIV:
Enables support for RTCP SDES private items.
- RTP_SUPPORT_INLINETEMPLATEPARAM:
If set, the compiler should be able to handle an inline
function as a template parameter.
- RTP_SUPPORT_PROBATION:
If set, a few consecutive RTP packets are needed to validate
a member.
- RTP_SUPPORT_GNUDRAND:
If set, the RTPRandom class will use drand48_r and srand48_r
- RTP_SUPPORT_RANDR:
If set and RTP_SUPPORT_GNUDRAND is not set, the RTPRandom
class will use rand_r.
- RTP_SUPPORT_GETLOGINR:
If set, the library will use getlogin_r instead of getlogin.
- RTP_SUPPORT_IPV6:
If set, IPv6 support is enabled.
- RTP_SUPPORT_IPV6MULTICAST:
If set, IPv6 multicasting support is enabled.
- RTP_SUPPORT_GST:
If set, GStreamer support is enabled.
- RTPDEBUG:
Enables some memory tracking functions and some debug routines.
------------------------------------------------------------------------------

View File

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,443 +0,0 @@
AC_INIT(configure.in)
AM_INIT_AUTOMAKE(jrtplib,3.3.0)
RTP_FILIO="// Don't have <sys/filio.h>"
RTP_SOCKIO="// Don't have <sys/sockio.h>"
RTP_ENDIAN="// Little endian system"
RTP_SOCKLENTYPE_UINT="// socklen_t is int'"
RTP_HAVE_SOCKADDR_LEN="// No sa_len member in struct sockaddr"
RTP_SUPPORT_IPV4MULTICAST="// No IPv4 multicasting support"
RTP_SUPPORT_IPV6MULTICAST="// No IPv6 multicasting support"
RTP_SUPPORT_THREAD="// No support for jthread"
RTP_SUPPORT_SDESPRIV="// No support for SDES PRIV items"
RTP_SUPPORT_INLINETEMPLATEPARAM="// Compiler doesn't support inline functions as template parameter"
RTP_SUPPORT_PROBATION="// Do not wait for a number of consecutive packets to validate source"
RTP_SUPPORT_GNUDRAND="// Not using drand48_r and srand48_r"
RTP_SUPPORT_RANDR="// Not using rand_r"
RTP_SUPPORT_GETLOGINR="// Not using getlogin_r"
RTP_SUPPORT_IPV6="// No IPv6 support"
RTP_SUPPORT_IFADDRS="// No ifaddrs support"
RTP_SUPPORT_GST="// No GStreamer support"
RTP_LINKLIBS=""
if test "BLA$CXXFLAGS" = "BLA" ; then
dnl CXXFLAGS="-g -Werror -Wall"
CXXFLAGS="-O2 "
fi
dnl ---------------------------------------------------------------------------
dnl Set language to C++ and do libtool stuff
dnl ---------------------------------------------------------------------------
AC_LANG(C++)
AM_PROG_LIBTOOL
dnl ---------------------------------------------------------------------------
dnl Check for the SDES PRIV support
dnl ---------------------------------------------------------------------------
AC_ARG_ENABLE(sdespriv,[ --disable-sdespriv Disable support for SDES PRIV items],[
if test "$enableval" = yes ; then
privsupport="yes"
else
privsupport="no"
fi],[
privsupport="yes"
])
if test "$privsupport" = "yes" ; then
RTP_SUPPORT_SDESPRIV="#define RTP_SUPPORT_SDESPRIV"
fi
dnl ---------------------------------------------------------------------------
dnl Check for the probation support
dnl ---------------------------------------------------------------------------
AC_ARG_ENABLE(probation,[ --disable-probation Disable support for probation of a new source],[
if test "$enableval" = yes ; then
probsupport="yes"
else
probsupport="no"
fi],[
probsupport="yes"
])
if test "$probsupport" = "yes" ; then
RTP_SUPPORT_PROBATION="#define RTP_SUPPORT_PROBATION"
fi
dnl ---------------------------------------------------------------------------
dnl Check for the jthread headers
dnl ---------------------------------------------------------------------------
RTP_SUPPORT_THREAD="#define RTP_SUPPORT_THREAD"
RTP_LINKLIBS="$RTP_LINKLIBS -lpthread"
dnl ---------------------------------------------------------------------------
dnl Check if sys/filio.h exists (used on solaris)
dnl ---------------------------------------------------------------------------
AC_CHECK_HEADER(sys/filio.h,[RTP_FILIO="#define RTP_HAVE_SYS_FILIO"])
dnl ---------------------------------------------------------------------------
dnl Check if sys/sockio.h exists (used on solaris)
dnl ---------------------------------------------------------------------------
AC_CHECK_HEADER(sys/sockio.h,[RTP_SOCKIO="#define RTP_HAVE_SYS_SOCKIO"])
dnl ---------------------------------------------------------------------------
dnl Check if it's a big endian or little endian system
dnl Note that we must be careful when a cross-compiler is being used...
dnl ---------------------------------------------------------------------------
if test "$cross_compiling" = yes ; then
cat << EOF
ASSUMING TARGET IS BIG ENDIAN:
The script detected a cross-compiler on your system. This can mean that
there really is a cross-compiler installed, or that for some other reason,
a simple program could not be run. You should check the config.log file
to verify this.
Since we are assuming a cross-compiler, we won't be able to actually test
any program. More important, we cannot test if the system is big or little
endian.
For now, big endian is assumed. If this assumption should be wrong, you will
have to comment the appropriate line in 'rtpconfig_unix.h'
EOF
RTP_ENDIAN="#define RTP_BIG_ENDIAN // comment this if the target is a little endian system"
else
AC_C_BIGENDIAN
if test "$ac_cv_c_bigendian" = yes; then
RTP_ENDIAN="#define RTP_BIG_ENDIAN"
fi
fi
dnl ---------------------------------------------------------------------------
dnl Check if compiler supports -Werror -Wall
dnl ---------------------------------------------------------------------------
oldcxxflags="$CXXFLAGS"
CXXFLAGS="$CXXFLAGS -Werror -Wall"
AC_MSG_CHECKING(if compiler supports -Werror -Wall)
AC_TRY_COMPILE([
#include <stdio.h>],[
printf("Hello world\n");],
AC_MSG_RESULT(yes),[
AC_MSG_RESULT(no)
CXXFLAGS="$oldcxxflags"])
dnl ---------------------------------------------------------------------------
dnl Check what the last argument for getsockname is
dnl ---------------------------------------------------------------------------
AC_MSG_CHECKING(last argument of getsockname)
AC_TRY_COMPILE([#include <sys/types.h>
#include <sys/socket.h>],
[int param;
int sock = 0;
struct sockaddr addr;
getsockname(sock,&addr,&param);],
AC_MSG_RESULT(int),
[
AC_MSG_RESULT(unsigned int)
RTP_SOCKLENTYPE_UINT="#define RTP_SOCKLENTYPE_UINT"
])
CXXFLAGS="$oldcxxflags"
dnl ---------------------------------------------------------------------------
dnl Check if multicast options are known
dnl ---------------------------------------------------------------------------
AC_MSG_CHECKING(if necessary options for IPv4 multicasting are available)
AC_TRY_COMPILE([
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>],[
int testval;
struct ip_mreq mreq,mreq2;
mreq = mreq2; // avoid 'unused variable'
testval = IP_MULTICAST_TTL;
testval = IP_ADD_MEMBERSHIP;
testval = IP_DROP_MEMBERSHIP;],[
AC_MSG_RESULT(yes)
RTP_SUPPORT_IPV4MULTICAST="#define RTP_SUPPORT_IPV4MULTICAST"],
AC_MSG_RESULT(no))
dnl ---------------------------------------------------------------------------
dnl Check if sockaddr has a length field (sa_len)
dnl ---------------------------------------------------------------------------
AC_MSG_CHECKING(if struct sockaddr has sa_len member)
AC_TRY_COMPILE([
#include <sys/types.h>
#include <sys/socket.h>],[
struct sockaddr sa;
sa.sa_len = 0;],[
AC_MSG_RESULT(yes)
RTP_HAVE_SOCKADDR_LEN="#define RTP_HAVE_SOCKADDR_LEN"],
AC_MSG_RESULT(no))
dnl ---------------------------------------------------------------------------
dnl Check if compiler needs -LANG:std (needed on Irix)
dnl ---------------------------------------------------------------------------
AC_MSG_CHECKING(if compiler can compile programs with STL)
AC_TRY_COMPILE([
#include <iostream>],[
std::cout << "Bla" << std::endl; ],
AC_MSG_RESULT(yes),
[AC_MSG_RESULT(no)
AC_MSG_CHECKING(if compiler can compile STL programs with option -LANG:std)
CXXFLAGS="$CXXFLAGS -LANG:std"
AC_TRY_COMPILE([
#include <iostream>],[
std::cout << "Bla" << std::endl; ],
AC_MSG_RESULT(yes),[
AC_MSG_RESULT(no)
AC_MSG_ERROR(Unable to compile a trivial STL program)]
)
])
dnl ---------------------------------------------------------------------------
dnl Check if compiler can handle inline function in template argument
dnl ---------------------------------------------------------------------------
AC_MSG_CHECKING(if compiler supports an inline function as a template argument)
AC_TRY_COMPILE([
#include "src/rtphashtable.h"
inline int GetIndex(const int &elem) { return elem%10; }],[
RTPHashTable<int,GetIndex,10> table; ],
[AC_MSG_RESULT(yes)
RTP_SUPPORT_INLINETEMPLATEPARAM="#define RTP_SUPPORT_INLINETEMPLATEPARAM"],
AC_MSG_RESULT(no)
)
dnl ---------------------------------------------------------------------------
dnl Check for u_int32_t etc
dnl ---------------------------------------------------------------------------
AC_MSG_CHECKING(if types like u_int32_t exist)
AC_TRY_COMPILE([
#include <sys/types.h>],[
u_int32_t x;
x = 0;],
[AC_MSG_RESULT(yes)
echo "#include <sys/types.h>" >src/rtptypes_unix.h
],[
AC_MSG_RESULT(no)
echo "Generating src/rtptypes.h ..."
if ! ( $CXX $CFLAGS -o tools/gettypes tools/gettypes.cpp >/dev/null 2>/dev/null ) ; then
AC_MSG_ERROR(Unable to create src/rtptypes_unix.h)
fi
if ! ( tools/gettypes >src/rtptypes_unix.h ) ; then
AC_MSG_ERROR(Unable to create src/rtptypes_unix.h)
fi
])
dnl ---------------------------------------------------------------------------
dnl Check random functions
dnl ---------------------------------------------------------------------------
AC_MSG_CHECKING(for drand48_r and srand48_r)
AC_COMPILE_IFELSE([
#include <stdlib.h>
int main(void)
{
struct drand48_data drandbuffer;
double x;
srand48_r(12345,&drandbuffer);
drand48_r(&drandbuffer,&x);
return 0;
}
],
[AC_MSG_RESULT(yes)
RTP_SUPPORT_GNUDRAND="#define RTP_SUPPORT_GNUDRAND"],
[
AC_MSG_RESULT(no)
AC_MSG_CHECKING(for rand_r)
AC_COMPILE_IFELSE([
#include <stdlib.h>
int main(void)
{
unsigned int x;
x = 12345;
rand_r(&x);
return 0;
}
],
[ AC_MSG_RESULT(yes)
RTP_SUPPORT_RANDR="#define RTP_SUPPORT_RANDR"],
[ AC_MSG_RESULT(no)])
])
dnl ---------------------------------------------------------------------------
dnl Check getlogin_r functions
dnl ---------------------------------------------------------------------------
AC_MSG_CHECKING(for getlogin_r)
AC_COMPILE_IFELSE([
#include <unistd.h>
int main(void)
{
char buf[[256]];
getlogin_r(buf,256);
return 0;
}
],
[AC_MSG_RESULT(yes)
RTP_SUPPORT_GETLOGINR="#define RTP_SUPPORT_GETLOGINR"],
[
AC_MSG_RESULT(no)
])
dnl ---------------------------------------------------------------------------
dnl Check IPv6 support
dnl ---------------------------------------------------------------------------
AC_ARG_ENABLE(IPv6,[ --disable-IPv6 Disable support for IPv6],[
if test "$enableval" = yes ; then
ipv6support="yes"
else
ipv6support="no"
fi],[
ipv6support="yes"
])
if test "$ipv6support" = "yes" ; then
if test "$cross_compiling" = yes ; then
cat << EOF
ABOUT IPv6 SUPPORT:
Can't check if IPv6 support is possible when cross-compiling. For now, lets
assume that you want IPv6 support enabled. To disable it, comment the two
appropriate lines in src/rtpconfig_unix.h before running make.
EOF
else
AC_MSG_CHECKING(IPv6 support)
AC_RUN_IFELSE([
#include <sys/types.h>
#include <sys/socket.h>
int main(void)
{
int s;
s = socket(PF_INET6,SOCK_DGRAM,0);
if (s < 0)
return -1;
return 0;
}
],
[AC_MSG_RESULT(enabled)
RTP_SUPPORT_IPV6="#define RTP_SUPPORT_IPV6"
dnl ---------------------------------------------------------------------------
dnl Check if multicast options are known
dnl ---------------------------------------------------------------------------
AC_MSG_CHECKING(if necessary options for IPv6 multicasting are available)
AC_COMPILE_IFELSE([
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
int main(void)
{
int testval;
struct ipv6_mreq mreq,mreq2;
mreq = mreq2; // avoid 'unused variable'
testval = IPV6_MULTICAST_HOPS;
testval = IPV6_JOIN_GROUP;
testval = IPV6_LEAVE_GROUP;
return 0;
}
],[
AC_MSG_RESULT(yes)
RTP_SUPPORT_IPV6MULTICAST="#define RTP_SUPPORT_IPV6MULTICAST"],
AC_MSG_RESULT(no))],
[
AC_MSG_RESULT(disabled)
])
fi
fi
dnl ---------------------------------------------------------------------------
dnl Check if ifaddrs.h exists so we can use getifaddrs
dnl ---------------------------------------------------------------------------
AC_CHECK_HEADER(ifaddrs.h,[RTP_SUPPORT_IFADDRS="#define RTP_SUPPORT_IFADDRS"])
dnl ---------------------------------------------------------------------------
dnl Check gstreamer support
dnl ---------------------------------------------------------------------------