Commit b1ab109c authored by Monty's avatar Monty
Browse files

Merging the postbeta2 branch onto the mainline.

Monty

svn path=/trunk/vorbis/; revision=729
parent 93163cb1
aclocal.m4
config.h.in
Makefile.in
Makefile
config.status
libtool
config.cache
config.log
configure
*.gz
.libs
.deps
*.ogg
This diff is collapsed.
## Process this file with automake to produce Makefile.in
AUTOMAKE_OPTIONS = foreign dist-zip
SUBDIRS = lib include doc examples
EXTRA_DIST = README COPYING todo.txt libvorbis.spec
debug:
$(MAKE) all CFLAGS="@DEBUG@"
profile:
$(MAKE) all CFLAGS="@PROFILE@"
# vorbis makefile configured for use with gcc on any platform
# $Id: Makefile.in,v 1.11 2000/08/24 01:10:02 kcarnold Exp $
###############################################################################
# #
# To build a production vorbis (preferrably using gmake), just type 'make'. #
# To build with debugging or profiling information, use 'make debug' or #
# 'make profile' respectively. 'make clean' is a good idea between builds #
# with different target names, or before a final build. #
# #
###############################################################################
# DO NOT EDIT BELOW! ##########################################################
# (unless, of course, you know what you are doing :) ##########################
@SET_MAKE@
SUBDIRS = lib examples # vorbis-tools cmdline xmms vq huff kmpg
# configure changes items in these, so get distclean to remove them.
DCLEAN_DIRS = vorbis-tools cmdline xmms vq huff kmpg
all debug profile selftest target clean:
echo $(MAKECMDGOALS)
@for dir in $(SUBDIRS); do (cd $$dir && $(MAKE) $(MFLAGS) $(MAKECMDGOALS)) || exit 1; done
-rm -f *~
distclean:
@for dir in $(SUBDIRS) $(DCLEAN_DIRS); do (cd $$dir && $(MAKE) $(MFLAGS) $(MAKECMDGOALS)) || exit 1; done
-rm -f Makefile config.*
......@@ -2,8 +2,8 @@
* *
* THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE. *
* USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
* THE GNU PUBLIC LICENSE 2, WHICH IS INCLUDED WITH THIS SOURCE. *
* PLEASE READ THESE TERMS DISTRIBUTING. *
* THE GNU LESSER/LIBRARY PUBLIC LICENSE 2, WHICH IS INCLUDED WITH *
* THIS SOURCE. PLEASE READ THESE TERMS DISTRIBUTING. *
* *
* THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-2000 *
* by Monty <monty@xiph.org> and The XIPHOPHORUS Company *
......@@ -11,9 +11,24 @@
* *
********************************************************************
NEW AND IMPORTANT:
If you're used to the source distribution from the first two beta
relaeases, things are now rearranged a bit. Specifically, the
'vorbis' CVS module contains only the libvorbis and libvorbisfile
libraries. Because Ogg bitstreams are to be used by other Ogg codecs,
Ogg framing and streaming functionality is now in libogg (the 'ogg'
CVS module). Vorbis utilities are in 'vorbis-tools' and various
player plugins are in 'vorbis-plugins'. For now, you'll need to check
out these other modules seperately.
Secondly, the Ogg/Vorbis build systems now use automake. Instead of
'./configure;make', the proper build sequence (in each module) is
'./autogen.sh;make'.
WHAT'S HERE:
This source distribution includes libvorbis, a full-featured example
This source distribution includes libvorbis and an example
encoder/player to demonstrate use of libvorbis and documentation on
the Ogg Vorbis audio coding format.
......@@ -23,11 +38,20 @@ Directory:
the public domain OggSquish Vorbis audio encoding
format.
./cmdline A full-featured command line encoder/decoder/player
utility ('vorbis') that demonstrates programmatic use
of libvorbis.
./include Library API headers and codebooks
./debian Rules/spec files for building Debian .deb packages
./doc Vorbis specification documents
./examples Example code illustrating programmatic use of libogg,
libvorbis, libvorbisfile and libvorbisenc
./docs Vorbis specification documents
./mac Codewarrior project files and build tweaks for MacOS.
./vq Internal utilities for training/building new LSP/residue
and auxiliary codebooks.
WHAT IS VORBIS:
......@@ -40,11 +64,21 @@ All the technical details are published and documented, and any
software entity may make full use of the format without royalty or
patent concerns.
This package contains libvorbis, an LGPLed software implementation of
This package contains:
.) libvorbis, an LGPLed software implementation of
the Vorbis specification by the Xiphophorus company
(http://www.xiph.org/), vorbisfile, an LGPLed convenience library
(http://www.xiph.org/)
.) libvorbisfile, an LGPLed convenience library
built on Vorbis designed to simplify common uses and a number of GPL
example programs, utilities and player plugins.
example programs
.) libvorbisenc, an LGPL library that provides a simple, programmatic
encoding setup interface
.) example code making use of libogg, libvorbis, libvorbisfile and
libvorbisenc
CONTACT:
......@@ -57,17 +91,17 @@ BUILD:
A standard build should consist of nothing more than:
./configure
./autogen.sh
make
and as root if desired :
make install
This will install the ogg vorbis commandline encoder/player ('ogg')
into /usr/local/bin, the ogg player and libvorbis manpages into
/usr/local/man/ and libvorbis.a into /usr/local/lib.
This will install the vorbis libraries (static and shared) into
/usr/local/lib, includes into /usr/local/include and API manpages
(once we write some) into /usr/local/man.
Monty <monty@xiph.org>, <xiphmont@mit.edu>
Monty <monty@xiph.org>
$Id: README,v 1.4 2000/05/12 21:42:04 xiphmont Exp $
$Id: README,v 1.5 2000/10/12 03:12:36 xiphmont Exp $
#!/bin/sh
# Run this to generate all the initial makefiles, etc.
# (basically ripped directly from enlightenment's autogen.sh)
srcdir=`dirname $0`
test -z "$srcdir" && srcdir=.
cd "$srcdir"
DIE=0
(autoconf --version) < /dev/null > /dev/null 2>&1 || {
echo
echo "You must have autoconf installed to compile libvorbis."
echo "Download the appropriate package for your distribution,"
echo "or get the source tarball at ftp://ftp.gnu.org/pub/gnu/"
DIE=1
}
(automake --version) < /dev/null > /dev/null 2>&1 || {
echo
echo "You must have automake installed to compile libvorbis."
echo "Get ftp://ftp.gnu.org/pub/gnu/automake-1.3.tar.gz"
echo "(or a newer version if it is available)"
DIE=1
}
if test "$DIE" -eq 1; then
exit 1
fi
if test -z "$*"; then
echo "I am going to run ./configure with no arguments - if you wish "
echo "to pass any to it, please specify them on the $0 command line."
fi
echo "Generating configuration files for libvorbis, please wait...."
echo " aclocal $ACLOCAL_FLAGS"
aclocal $ACLOCAL_FLAGS
echo " autoheader"
autoheader
echo " automake --add-missing"
automake --add-missing
echo " autoconf"
autoconf
$srcdir/configure "$@" && echo
This diff is collapsed.
This diff is collapsed.
# $Id: configure.in,v 1.23 2000/08/31 03:28:43 xiphmont Exp $
dnl Process this file with autoconf to produce a configure script
AC_INIT(lib/mdct.c)
#AC_CONFIG_HEADER(config.h)
cp configure.guess config.guess
cp configure.sub config.sub
AC_CANONICAL_HOST
dnl If we're on IRIX, we wanna use cc even if gcc is there (unless the user
dnl has overriden us)...
case $host in
*-*-irix*)
if test -z "$CC"; then
CC=cc
fi
AC_CHECK_LIB(audio, ALwritesamps)
;;
# BeOS does not use -lm
# *-*-beos)
# LIBS=""
# ;;
# added better check below
esac
dnl ------------------------------------------------
dnl Initialization and Versioning
dnl ------------------------------------------------
AC_INIT(lib/mdct.c)
AM_INIT_AUTOMAKE(libvorbis,1.0.0)
dnl Library versioning
V_LIB_CURRENT=0
V_LIB_REVISION=0
V_LIB_AGE=0
VF_LIB_CURRENT=0
VF_LIB_REVISION=0
VF_LIB_AGE=0
AC_SUBST(V_LIB_CURRENT)
AC_SUBST(V_LIB_REVISION)
AC_SUBST(V_LIB_AGE)
AC_SUBST(VF_LIB_CURRENT)
AC_SUBST(VF_LIB_REVISION)
AC_SUBST(VF_LIB_AGE)
dnl --------------------------------------------------
dnl Check for programs
dnl --------------------------------------------------
dnl save $CFLAGS since AC_PROG_CC likes to insert "-g -O2"
dnl if $CFLAGS is blank
cflags_save="$CFLAGS"
AC_PROG_CC
# because AC_PROG_CC likes to set -g
CFLAGS="$cflags_save"
AC_PROG_CPP
AC_PROG_RANLIB
AC_CHECK_PROG(AR,ar,ar)
AC_CHECK_PROG(INSTALL,install,install)
AM_PROG_LIBTOOL
#not everyone uses libm (eg, BeOS)
#AC_CHECK_LIB(m, cos, LIBS="-lm"; AC_DEFINE(HAVE_LIBM), LIBS="")
# We no longer use config.h
AC_CHECK_LIB(m, cos, LIBS="-lm", LIBS="")
dnl --------------------------------------------------
dnl Additional arguments
dnl --------------------------------------------------
AC_ARG_WITH(ogg, [ --with-ogg=DIR Set where the Ogg library is located])
dnl --------------------------------------------------
dnl Set build flags based on environment
dnl --------------------------------------------------
AC_CANONICAL_HOST
dnl Set some target options
if test -z "$GCC"; then
case $host in
*-*-irix*)
dnl If we're on IRIX, we wanna use cc even if gcc
dnl is there (unless the user has overriden us)...
if test -z "$CC"; then
CC=cc
fi
DEBUG="-g -signed"
OPT="-O2 -w -signed"
CFLAGS="-O2 -w -signed"
PROFILE="-p -g3 -O2 -signed" ;;
sparc-sun-solaris*)
DEBUG="-v -g"
OPT="-xO4 -fast -w -fsimple -native -xcg92"
CFLAGS="-xO4 -fast -w -fsimple -native -xcg92"
PROFILE="-v -xpg -g -xO4 -fast -native -fsimple -xcg92 -Dsuncc" ;;
*)
DEBUG="-g"
OPT="-O"
CFLAGS="-O"
PROFILE="-g -p" ;;
esac
else
......@@ -61,9 +72,10 @@ else
case $host in
*86-*-linux*)
DEBUG="-g -Wall -D_REENTRANT -D__NO_MATH_INLINES -fsigned-char"
OPT="-O20 -ffast-math -D_REENTRANT -fsigned-char"
PROFILE="-pg -g -O20 -ffast-math -D_REENTRANT -fsigned-char"
CFLAGS="-O20 -ffast-math -mno-ieee-fp -D_REENTRANT -fsigned-char"
# PROFILE="-Wall -W -pg -O20 -ffast-math -D_REENTRANT -fsigned-char -fno-inline -static"
PROFILE="-Wall -W -pg -O20 -ffast-math -mno-ieee-fp -D_REENTRANT -fsigned-char -fno-inline -static"
# glibc < 2.1.3 has a serious FP bug in the math inline header
# that will cripple Vorbis. Look to see if the magic FP stack
# clobber is missing in the mathinline header, thus indicating
......@@ -100,20 +112,20 @@ else
AC_MSG_WARN([********************************************************])
AC_MSG_WARN([ ])
OPT=${OPT}" -D__NO_MATH_INLINES"
CFLAGS=${OPT}" -D__NO_MATH_INLINES"
PROFILE=${PROFILE}" -D__NO_MATH_INLINES"
fi;;
*-*-linux*)
DEBUG="-g -Wall -D_REENTRANT -D__NO_MATH_INLINES -fsigned-char"
OPT="-O20 -ffast-math -D_REENTRANT -fsigned-char"
CFLAGS="-O20 -ffast-math -D_REENTRANT -fsigned-char"
PROFILE="-pg -g -O20 -ffast-math -D_REENTRANT -fsigned-char";;
sparc-sun-*)
DEBUG="-g -Wall -D__NO_MATH_INLINES -fsigned-char -mv8"
OPT="-O20 -ffast-math -D__NO_MATH_INLINES -fsigned-char -mv8"
CFLAGS="-O20 -ffast-math -D__NO_MATH_INLINES -fsigned-char -mv8"
PROFILE="-pg -g -O20 -D__NO_MATH_INLINES -fsigned-char -mv8" ;;
*)
DEBUG="-g -Wall -D__NO_MATH_INLINES -fsigned-char"
OPT="-O20 -D__NO_MATH_INLINES -fsigned-char"
CFLAGS="-O20 -D__NO_MATH_INLINES -fsigned-char"
PROFILE="-O20 -g -pg -D__NO_MATH_INLINES -fsigned-char" ;;
esac
fi
......@@ -274,85 +286,46 @@ else
esac
fi
if test x$has_int32_t = "xyes" ; then
SIZE32="int32_t"
else
case 4 in
$ac_cv_sizeof_short) SIZE32="short";;
$ac_cv_sizeof_int) SIZE32="int";;
$ac_cv_sizeof_long) SIZE32="long";;
esac
fi
dnl --------------------------------------------------
dnl Check for headers
dnl --------------------------------------------------
if test x$has_uint32_t = "xyes" ; then
USIZE32="uint32_t"
else
if test x$has_u_int32_t = "xyes" ; then
USIZE32="u_int32_t"
else
case 4 in
$ac_cv_sizeof_short) USIZE32="unsigned short";;
$ac_cv_sizeof_int) USIZE32="unsigned int";;
$ac_cv_sizeof_long) USIZE32="unsigned long";;
esac
fi
fi
AC_CHECK_HEADER(memory.h,CFLAGS="$CFLAGS -DUSE_MEMORY_H",:)
if test x$has_int64_t = "xyes" ; then
SIZE64="int64_t"
else
case 8 in
$ac_cv_sizeof_int) SIZE64="int";;
$ac_cv_sizeof_long) SIZE64="long";;
$ac_cv_sizeof_long_long) SIZE64="long long";;
esac
fi
dnl --------------------------------------------------
dnl Check for typedefs, structures, etc
dnl --------------------------------------------------
if test -z "$SIZE16"; then
AC_MSG_ERROR(No 16 bit type found on this platform!)
fi
if test -z "$SIZE32"; then
AC_MSG_ERROR(No 32 bit type found on this platform!)
fi
if test -z "$USIZE32"; then
AC_MSG_ERROR(No unsigned 32 bit type found on this platform!)
fi
if test -z "$SIZE64"; then
AC_MSG_WARN(No 64 bit type found on this platform!)
fi
#AC_CHECK_HEADER(alloca.h,AC_DEFINE(USE_ALLOCA_H),:)
#AC_CHECK_HEADER(memory.h,AC_DEFINE(USE_MEMORY_H),:)
# We no longer use config.h
AC_CHECK_HEADER(alloca.h,CFLAGS="$CFLAGS -DUSE_ALLOCA_H",:)
AC_CHECK_HEADER(memory.h,CFLAGS="$CFLAGS -DUSE_MEMORY_H",:)
dnl none
dnl --------------------------------------------------
dnl Check for libraries
dnl --------------------------------------------------
AC_CHECK_LIB(m, cos, LIBS="-lm", LIBS="")
AC_CHECK_LIB(pthread, pthread_create, pthread_lib="-lpthread", :)
AC_C_CONST
AC_HEADER_TIME
AC_STRUCT_TM
dnl Check for libogg
if test -n $with_ogg; then
CFLAGS="$CFLAGS -I$with_ogg/include -L$with_ogg/lib"
fi
AC_CHECK_LIB(ogg, oggpack_read, LIBS="$LIBS -logg", AC_MSG_ERROR([You must have libogg to compile vorbis!!!]))
AC_PROG_MAKE_SET
dnl --------------------------------------------------
dnl Check for library functions
dnl --------------------------------------------------
AC_FUNC_ALLOCA
AC_FUNC_MEMCMP
AC_TYPE_SIGNAL
AC_CHECK_FUNCS(gettimeofday select strcspn strerror strspn sigaction)
AC_SUBST(SIZE16)
AC_SUBST(SIZE32)
AC_SUBST(USIZE32)
AC_SUBST(SIZE64)
AC_SUBST(OPT)
dnl --------------------------------------------------
dnl Do substitutions
dnl --------------------------------------------------
AC_SUBST(LIBS)
AC_SUBST(DEBUG)
AC_SUBST(PROFILE)
AC_SUBST(CC)
AC_SUBST(RANLIB)
#AC_SUBST(XOGG)
#AC_SUBST(LIBGTKDIR)
AC_SUBST(pthread_lib)
AC_CONFIG_SUBDIRS(vorbis-tools/libao)
AC_OUTPUT(Makefile lib/Makefile examples/Makefile include/vorbis/os_types.h\
vorbis-tools/Makefile\
vq/Makefile huff/Makefile cmdline/Makefile xmms/Makefile kmpg/Makefile)
AC_OUTPUT(Makefile lib/Makefile doc/Makefile include/Makefile include/vorbis/Makefile include/vorbis/book/Makefile examples/Makefile)
This diff is collapsed.
## Process this with automake to create Makefile.in
AUTOMAKE_OPTIONS = foreign
docdir = $(prefix)/doc/$(PACKAGE)-$(VERSION)
doc_DATA = v-comment.html vorbisword2.png white-ogg.png programming.html\
vorbis.html wait.png white-xifish.png
EXTRA_DIST = $(doc_DATA)
Makefile
Makefile.in
.libs
.deps
encoder_example
decoder_example
chaining_example
vorbisfile_example
## Process this file with automake to produce Makefile.in
AUTOMAKE_OPTIONS = foreign
INCLUDES = -I$(top_srcdir)/include
noinst_PROGRAMS = decoder_example encoder_example chaining_example\
vorbisfile_example
LDADD = $(top_srcdir)/lib/.libs/libvorbis.a
decoder_example_SOURCES = decoder_example.c
encoder_example_SOURCES = encoder_example.c
chaining_example_SOURCES = chaining_example.c
chaining_example_LDADD = $(top_srcdir)/lib/.libs/libvorbisfile.a $(top_srcdir)/lib/.libs/libvorbis.a
vorbisfile_example_SOURCES = vorbisfile_example.c
vorbisfile_example_LDADD = $(top_srcdir)/lib/.libs/libvorbisfile.a $(top_srcdir)/lib/.libs/libvorbis.a
debug:
$(MAKE) all CFLAGS="@DEBUG@"
profile:
$(MAKE) all CFLAGS="@PROFILE@"
# vorbis makefile configured for use with gcc on any platform
# $Id: Makefile.in,v 1.13 2000/08/15 11:53:18 xiphmont Exp $
###############################################################################
# #
# To build a production vorbis (preferrably using gmake), just type 'make'. #
# To build with debugging or profiling information, use 'make debug' or #
# 'make profile' respectively. 'make clean' is a good idea between builds #
# with different target names, or before a final build. #
# #
###############################################################################
# DO NOT EDIT BELOW! ##########################################################
# (unless, of course, you know what you are doing :) ##########################
@SET_MAKE@
FLAGS=-I. -I../include @CFLAGS@
OPT=@OPT@ $(FLAGS)
DEBUG=@DEBUG@ $(FLAGS)
PROFILE=@PROFILE@ $(FLAGS)
CC=@CC@
LD=@CC@
LDFLAGS=@LDFLAGS@ $(FLAGS)
AR=@AR@
RANLIB=@RANLIB@
LIBS=@LIBS@
HFILES = ../include/vorbis/codec.h ../include/vorbis/vorbisfile.h \
../include/vorbis/internal.h ../include/vorbis/backends.h \
../include/vorbis/codebook.h
OFILES = encoder_example.o decoder_example.o chaining_example.o \
vorbisfile_example.o seeking_test.o
BINFILES = encoder_example decoder_example chaining_example \
vorbisfile_example seeking_test
all:
$(MAKE) target CFLAGS="$(OPT)"
debug:
$(MAKE) target CFLAGS="$(DEBUG)"
profile:
$(MAKE) target CFLAGS="$(PROFILE)"
target: $(BINFILES)
encoder_example.o: ../include/vorbis/modes.h
encoder_example: $(OFILES) ../lib/libvorbis.a
$(CC) $(CFLAGS) $(LDFLAGS) encoder_example.o ../lib/libvorbis.a -o \
encoder_example $(LIBS)
decoder_example: $(OFILES) ../lib/libvorbis.a
$(CC) $(CFLAGS) $(LDFLAGS) decoder_example.o ../lib/libvorbis.a -o \
decoder_example $(LIBS)
chaining_example: $(OFILES) ../lib/libvorbis.a ../lib/vorbisfile.a
$(CC) $(CFLAGS) $(LDFLAGS) chaining_example.o \
../lib/vorbisfile.a ../lib/libvorbis.a \
-o chaining_example $(LIBS)
vorbisfile_example: $(OFILES) ../lib/libvorbis.a ../lib/vorbisfile.a
$(CC) $(CFLAGS) $(LDFLAGS) vorbisfile_example.o \
../lib/vorbisfile.a ../lib/libvorbis.a \
-o vorbisfile_example $(LIBS)
seeking_test: $(OFILES) ../lib/libvorbis.a ../lib/vorbisfile.a
$(CC) $(CFLAGS) $(LDFLAGS) seeking_test.o \
../lib/vorbisfile.a ../lib/libvorbis.a \
-o seeking_test $(LIBS)
selftest:
$(OFILES): $(HFILES)
.c.o:
$(CC) $(CFLAGS) -c $<
clean:
-rm -f *.o *.a test* *~ *.out ogg config.* \
encoder_example decoder_example chaining_example \
vorbisfile_example seeking_test
distclean: clean
-rm -f Makefile