Commit c0b3a6f1 authored by Rafaël Carré's avatar Rafaël Carré

Remove extras/contrib

parent 33c9aab4
Changes between 2.0.0 and 2.1.0-git:
--------------------------------
3rd party libraries (contrib):
* /extras/contrib has been replaced by a better system in /contrib
Audio output:
* OpenBSD sndio audio output support
......
# Ignore install path
build
hosts
translations
demos
examples
mkspecs
phrasebooks
*.xml
*.tar.bz2
*.bak
toolchain.cmake
build-src/
distro.mak
config.mak
This is the contrib build system for VLC Media Player. It has been
primarily developed for Mac, it has been adapted for Win32.
It would be not too difficult to extend it to other sytem.
To use it, first in the contrib directory, type :
./bootstrap
You can specify an argument to cross compile, for example:
./bootstrap i586-mingw32msvc
This will look for a i586-mingw32msvc-gcc cross compiler. Default is to
build natively.
Bootstrap generates your default contrib configuration and puts it in a file
named 'distro.mak'. Edit this file to fine-tune your preferences for 3rd-party
libraries that will be build in the contrib system.
Customize config.mak if you need to, then you need to choose between
building from source (can take a long time but is easily customizable)
and fetching a pre-compiled binary package. Either type 'make src'
or 'make bin' (also from the contrib directory).
Once the contribs are built, you can start building VLC.
See: http://developers.videolan.org/vlc/osx-compile.html
or INSTALL.win32 for more details on that.
Happy hacking.
--Meuuh 2003-11-15
#!/bin/sh
# ***************************************************************************
# bootstrap : Set up config.mak
# ***************************************************************************
# Copyright (C) 2003-2009 the VideoLAN team
# $Id$
#
# Authors: Christophe Massiot <massiot@via.ecp.fr>
# Derk-Jan Hartman <hartman at videolan dot org>
# Felix Paul Kühne <fkuehne at videolan dot org>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
# ***************************************************************************
cat >&2 << EOF
WARNING: This method of building third party libraries has been deprecated,
and is not supported anymore.
Building from the /contrib folder is recommended instead of /extras/contrib.
EOF
LANG=C
export LANG
set -e
set +x
usage()
{
cat << EOF
usage: $0 [-t target] [-d distro] [-b buildir] [-i installdir]
OPTIONS:
-t target Force target to "target"
-d distro Force distro to "distro"
-b buildir Set build dir to "builddir"
-i installdir Install to "installdir"
-h Show some help
EOF
}
add_makefile_cfg()
{
echo $1 >> "${config_mak}"
}
add_enabled_makefile_cfg()
{
echo "$1=1" >> "${config_mak}"
}
error()
{
echo "[contrib] ERROR: $1"
}
info()
{
echo "[contrib] $1"
}
DISTRO=
hint_distro()
{
# Give a hint about the auto detected distro
if test -z "${DISTRO}"; then DISTRO="$1"; fi
}
BUILDDIR=.
while getopts "ht:d:b:i:" OPTION
do
case $OPTION in
h)
usage
exit 1
;;
t)
TARGET=$OPTARG
;;
d)
DISTRO=$OPTARG
;;
b)
BUILDDIR=$OPTARG
;;
i)
PREFIX=$OPTARG
;;
?)
usage
exit 1
;;
esac
done
shift $(($OPTIND - 1))
if [ "x$1" != "x" ]; then
error "Fallback to old command line switch, use the -t option now"
TARGET="$1"
fi
if [ "x$2" != "x" ]; then
usage
exit 1
fi
BUILD=`gcc -dumpmachine`
if test "x$TARGET" = "x"; then
TARGET="$BUILD"
info "No target specified, using '$TARGET'"
fi
if test "x$PREFIX" = "x"; then
PREFIX="`pwd`/hosts/$TARGET"
info "No install dir specified, using '$PREFIX'"
fi
# Make sure prefix is absolute and existing
mkdir -p "${PREFIX}"
PREFIX=`cd "${PREFIX}" && pwd`
mkdir -p "${PREFIX}/share/aclocal" # aclocal needs this dir to exist
#
# Set up build dir
#
mkdir -p "${BUILDDIR}"
# Install build dir makefile
ln -sf "`pwd`/contrib.mak" "${BUILDDIR}/Makefile"
# Create the 'build-src' folder to build from source
mkdir -p "${BUILDDIR}/build-src"
ln -sf "`pwd`/src/contrib-src.mak" "${BUILDDIR}/build-src/Makefile"
ln -sf "`pwd`/src/packages.mak" "${BUILDDIR}/build-src/"
ln -sf "`pwd`/src/Patches" "${BUILDDIR}/build-src/"
# Create config.mak
config_mak="${BUILDDIR}/config.mak"
rm -f "${config_mak}"
{
echo "# Automatically generated by bootstrap."
echo "# Make changes if you know what you're doing."
} > "${config_mak}"
if test "$TARGET" != "$BUILD"; then
test -z "$CC" && CC="${TARGET}-gcc"
test -z "$CXX" && CXX="${TARGET}-g++"
test -z "$LD" && LD="${TARGET}-ld"
test -z "$RANLIB"&& RANLIB="${TARGET}-ranlib"
test -z "$AR" && AR="${TARGET}-ar"
test -z "$STRIP" && STRIP="${TARGET}-strip"
fi
case $TARGET in
*powerpc*|*ppc*)
ARCH="ppc"
;;
*86_64*)
ARCH="x86_64"
;;
*86*)
ARCH="i386"
;;
arm*eabi)
ARCH="armel"
;;
arm*)
ARCH="arm"
;;
esac
add_makefile_cfg "ARCH = $ARCH"
# Check the HAVE_{OS}
case $TARGET in
*darwin*)
add_enabled_makefile_cfg "HAVE_DARWIN_OS"
add_enabled_makefile_cfg "HAVE_BSD"
;;
*linux*)
add_enabled_makefile_cfg "HAVE_LINUX"
;;
*bsd*)
add_enabled_makefile_cfg "HAVE_BSD"
;;
*wince*)
add_enabled_makefile_cfg "HAVE_WINCE"
;;
*symbian*)
add_enabled_makefile_cfg "HAVE_SYMBIAN"
;;
esac
# Figure out the correct distro to use
case $TARGET in
ppc-darwin|*-apple-darwin8)
error "Your version of Mac OS X is too old!"
error "Compiling and running VLC requires 10.5.x or later"
exit 1
;;
powerpc-apple-darwin9)
hint_distro macosx32
HAVE_DARWIN_32=1
CFLAGS_TUNING=" -arch ppc -mtune=G4"
EXTRA_LDFLAGS=" -arch ppc"
;;
i686-apple-darwin*)
hint_distro macosx32
HAVE_DARWIN_32=1
CFLAGS_TUNING=" -march=prescott -mtune=generic -arch i386 -m32"
EXTRA_LDFLAGS=" -arch i386"
;;
x86_64-apple-darwin*)
hint_distro macosx64
HAVE_DARWIN_64=1
CFLAGS_TUNING=" -march=core2 -mtune=core2 -m64 -arch x86_64"
EXTRA_LDFLAGS=" -arch x86_64"
;;
*mingw32ce)
EXTRA_CPPFLAGS=" -D_WIN32_WCE=0x0500"
hint_distro wince
;;
*64-*mingw*)
add_enabled_makefile_cfg "HAVE_WIN32"
EXTRA_CFLAGS="-O3"
hint_distro win64
;;
*mingw32*)
EXTRA_CFLAGS=" -O3 -march=i686 -mtune=generic"
hint_distro win32
;;
i686-pc-cygwin)
add_enabled_makefile_cfg "HAVE_CYGWIN"
CC="gcc -mno-cygwin -isystem /usr/include/mingw"
CXX="g++ -mno-cygwin -isystem /usr/include/mingw"
TARGET=`$CC -dumpmachine`
EXTRA_CFLAGS=" -mno-cygwin -isystem /usr/include/mingw"
EXTRA_CPPFLAGS=" -mno-cygwin -isystem /usr/include/mingw"
EXTRA_LDFLAGS=" -mno-cygwin"
hint_distro win32
;;
arm-wince-pe)
EXTRA_CPPFLAGS=" -D_WIN32_WCE"
hint_distro wince
;;
armeb-linux-uclibc)
add_enabled_makefile_cfg "HAVE_UCLIBC"
add_enabled_makefile_cfg "HAVE_BIGENDIAN"
EXTRA_CFLAGS="-Os -march=armv5 -msoft-float"
;;
arm-none-linux-gnueabi)
if test -f /etc/maemo_version; then
hint_distro maemo5
EXTRA_CFLAGS=" -mcpu=cortex-a8 -mtune=cortex-a8 -march=armv7-a"
EXTRA_CFLAGS="$EXTRA_CFLAGS -mfpu=neon -mfloat-abi=softfp"
EXTRA_CFLAGS="$EXTRA_CFLAGS -O3 -fno-tree-vectorize"
fi
;;
*86_64*linux*)
EXTRA_CFLAGS=" -fPIC"
EXTRA_CPPFLAGS=" -fPIC"
EXTRA_LDFLAGS=" -L/usr/lib64"
add_makefile_cfg "LIBRARY_PATH = /usr/lib64"
add_makefile_cfg "PKG_CONFIG_PATH = /usr/lib64/pkgconfig"
add_makefile_cfg "PKG_CONFIG_LIBDIR = /usr/lib64/pkgconfig"
;;
esac
#
# Fix up the Distro
#
if test -z "${DISTRO}" -a "$TARGET" = "$BUILD"; then
if test -d "/usr/lib/pkgconfig"; then
if test -z "$PKG_CONFIG_PATH"; then
add_makefile_cfg "PKG_CONFIG_PATH = /usr/lib/pkgconfig"
fi
if test -z "$PKG_CONFIG_LIBDIR"; then
add_makefile_cfg "PKG_CONFIG_LIBDIR = /usr/lib/pkgconfig"
fi
fi
# Try to match distribution
if test -f /etc/maemo_version; then
hint_distro maemo5
fi
fi
# Default Unix-like systems
hint_distro unix
distro_mak="${BUILDDIR}/distro.mak"
distro_file="`pwd`/src/Distributions/${DISTRO}.mak"
ln -sf "${distro_file}" "${distro_mak}"
#
# Distro specific settings
#
case "$DISTRO" in
ios)
if test -z "$IOS_SDK_ROOT"; then
error "The bootstrap script requires the IOS_SDK_ROOT environment "
error "variable to be set when building for iOS"
exit 1
fi
add_makefile_cfg "IOS_SDK_ROOT = ${IOS_SDK_ROOT}"
;;
macosx*)
SDK_TARGET=10.6
HAVE_MACOSX_DARWIN_9=1
EXTRA_LDFLAGS="${EXTRA_LDFLAGS} -isysroot \${MACOSX_SDK} -Wl,-syslibroot,\${MACOSX_SDK} -mmacosx-version-min=\${SDK_TARGET}"
EXTRA_CFLAGS="${EXTRA_CFLAGS} -D\${ENVP} -isysroot \${MACOSX_SDK} -mmacosx-version-min=\${SDK_TARGET}"
CC="/usr/bin/clang"
CXX="/usr/bin/clang++"
LD="ld"
RANLIB="ranlib"
AR=
STRIP="strip"
add_makefile_cfg "PATH = /bin:/usr/bin:/usr/local/bin"
add_makefile_cfg "SDK_TARGET = ${SDK_TARGET}"
add_makefile_cfg "ENVP = MACOSX_DEPLOYMENT_TARGET=${SDK_TARGET}"
add_makefile_cfg "MACOSX_SDK = /Developer/SDKs/MacOSX${SDK_TARGET}.sdk"
add_enabled_makefile_cfg "HAVE_MACOSX"
case $TARGET in
x86_64*|i686*) add_enabled_makefile_cfg "HAVE_MACOSX_ON_INTEL" ;;
esac
case $TARGET in
*darwin10) add_enabled_makefile_cfg "HAVE_MACOSX_DARWIN_10" ;;
*darwin9) add_enabled_makefile_cfg "HAVE_MACOSX_DARWIN_9" ;;
esac
if ! test -e /Developer/SDKs; then
error "Your Developer Tools' SDKs were not found.\nYou need to add extra symbolic links to /Developer to achieve correctly\nbuilt contribs.\nHave a look at the OSX-Compile-HOWTO for details." >&2
exit 1
fi
;;
win*)
add_makefile_cfg "PKG_CONFIG_PATH = \$(PREFIX)/lib/pkgconfig"
;;
android)
if test -z "$ANDROID_NDK"; then
error "The bootstrap script requires the ANDROID_NDK environment variable "
error "to be set when building for Android"
exit 1
fi
# The given host (arm-eabi) is not the real one (arm-linux-androideabi)
ln -sfn $TARGET hosts/arm-linux-androideabi
CC="arm-linux-androideabi-gcc --sysroot=$ANDROID_NDK/platforms/android-9/arch-arm"
CXX="arm-linux-androideabi-g++ --sysroot=$ANDROID_NDK/platforms/android-9/arch-arm"
NM=arm-linux-androideabi-nm
AR=arm-linux-androideabi-ar
LD=arm-linux-androideabi-ld
RANLIB=arm-linux-androideabi-ranlib
STRIP=arm-linux-androideabi-strip
# Add the PATH to the NDK
add_makefile_cfg "ANDROID_NDK = ${ANDROID_NDK}"
add_makefile_cfg "PATH = ${ANDROID_NDK}/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/:${PATH}"
add_enabled_makefile_cfg "HAVE_LINUX"
if test -z "$NO_NEON"; then
add_enabled_makefile_cfg "HAVE_NEON"
ARM_EABI=armeabi-v7a
else
ARM_EABI=armeabi
fi
# make sure android toolchain can build C++
EXTRA_CPPFLAGS="$EXTRA_CPPFLAGS -D__STDC_VERSION__=199901L"
EXTRA_CPPFLAGS="$EXTRA_CPPFLAGS -I${ANDROID_NDK}/sources/cxx-stl/gnu-libstdc++/include"
EXTRA_CPPFLAGS="$EXTRA_CPPFLAGS -I${ANDROID_NDK}/sources/cxx-stl/gnu-libstdc++/libs/$ARM_EABI/include"
esac
# Save passed flags
EXTRA_CFLAGS="$EXTRA_CFLAGS $CFLAGS"
EXTRA_LDFLAGS="$EXTRA_LDFLAGS $LDFLAGS"
EXTRA_CPPFLAGS="$EXTRA_CPPFLAGS $CPPFLAGS"
EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS $CXXFLAGS"
uppercase_distro=`echo "$DISTRO" | tr '[:lower:]' '[:upper:]'`
add_enabled_makefile_cfg "HAVE_${uppercase_distro}"
add_makefile_cfg "BUILD = $BUILD"
add_makefile_cfg "HOST = $TARGET"
add_makefile_cfg "SRCDIR = `pwd`"
add_makefile_cfg "PREFIX = ${PREFIX}"
add_makefile_cfg "VLCROOTDIR = `pwd`/../.."
ln -sfn hosts/$TARGET build
add_makefile_cfg "CC = ${CC}"
add_makefile_cfg "CXX = ${CXX}"
add_makefile_cfg "LD = ${LD}"
add_makefile_cfg "RANLIB = ${RANLIB}"
add_makefile_cfg "AR = ${AR}"
add_makefile_cfg "STRIP = ${STRIP}"
add_makefile_cfg "EXTRA_CFLAGS = ${CFLAGS_TUNING} ${EXTRA_CFLAGS}"
add_makefile_cfg "EXTRA_CPPFLAGS = ${EXTRA_CPPFLAGS} -isystem \$(PREFIX)/include"
add_makefile_cfg "EXTRA_LDFLAGS = ${EXTRA_LDFLAGS}"
add_makefile_cfg "EXTRA_PATH = ${EXTRA_PATH}"
#CMAKE
toolchain_cmake="${BUILDDIR}/toolchain.cmake"
rm -f ${BUILDDIR}/toolchain.cmake
if test ${DISTRO} = "win32"; then
echo "SET(CMAKE_SYSTEM_NAME Windows)" >> "${toolchain_cmake}"
echo "SET(CMAKE_RC_COMPILER ${TARGET}-windres)" >> "${toolchain_cmake}"
fi
case "$DISTRO" in macosx*)
echo "SET(CMAKE_SYSTEM_NAME Darwin)" >> "${toolchain_cmake}"
echo "set(CMAKE_C_FLAGS ${CFLAGS_TUNING} ${EXTRA_CFLAGS})" >> "${toolchain_cmake}"
echo "set(CMAKE_CXX_FLAGS ${CFLAGS_TUNING} ${EXTRA_CFLAGS})" >> "${toolchain_cmake}"
echo "set(CMAKE_LD_FLAGS ${EXTRA_LDFLAGS})" >> "${toolchain_cmake}"
esac
echo "SET(CMAKE_C_COMPILER ${CC})" >> "${toolchain_cmake}"
echo "SET(CMAKE_CXX_COMPILER ${CXX})" >> "${toolchain_cmake}"
echo "SET(CMAKE_FIND_ROOT_PATH `pwd` )" >> "${toolchain_cmake}"
echo "set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)" >> "${toolchain_cmake}"
echo "set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)" >> "${toolchain_cmake}"
echo "set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)" >> "${toolchain_cmake}"
if wget --version >/dev/null 2>&1; then
add_makefile_cfg "WGET = \"`which wget`\" -c --passive"
elif test -z `curl --version >/dev/null 2>&1`; then
add_makefile_cfg "WGET = \"`which curl`\" -L -O"
else
error "You need at least wget or curl to fetch the packages."
exit 1
fi
if svn --version >/dev/null 2>&1; then
add_makefile_cfg "SVN = \"`which svn`\""
else
error "You do not have a subversion client in your PATH."
fi
if git --version>/dev/null 2>&1; then
add_makefile_cfg "GIT = \"`which git`\""
else
error "You do not have a Git client in your PATH."
fi
if test -z "$CONTRIBS_RELEASE"; then
add_makefile_cfg "EXTRA_CFLAGS += -DNDEBUG"
info "*****************************************************************"
info "* If you need contribs with all debug information, run this *"
info "* line and compile the libraries on your own. *"
info "* CONTRIBS_RELEASE=no ./bootstrap *"
info "*****************************************************************"
fi
if test $HAVE_MACOSX_DARWIN_9; then
add_enabled_makefile_cfg "HAVE_MACOSX_DARWIN_9"
if ! /usr/bin/gcc --version>/dev/null 2>&1; then
error "You do not have GCC installed in /usr/bin, compilation WILL FAIL."
fi
fi
if test "$DISTRO" = "macosx32"; then
info "*****************************************************************"
info "* VLC will be compiled in 32bit mode using the 10.5 & later SDK.*"
info "* *"
info "* Re-run with the -t x86_64-apple-darwin* argument to turn on *"
info "* 64bit compilation for Intel-based Macs, whereas * is either *"
info "* 9 or 10 depending on your Darwin version. *"
info "* There is no PPC64 support. *"
info "*****************************************************************"
fi
if test "$DISTRO" = "macosx64"; then
info
info "*****************************************************************"
info "* VLC will be compiled in 64bit mode using the 10.5 & later SDK.*"
info "*****************************************************************"
fi
case `uname` in
Linux)
CPUS=`grep -c ^processor /proc/cpuinfo`
;;
# Darwin)
# CPUS=`sysctl hw.ncpu|cut -d: -f2`
# ;;
*)
CPUS=1 # default
;;
esac
add_makefile_cfg "MAKEFLAGS += -j$CPUS"
info "Using $CPUS processor(s)"
#!/bin/sh
# ***************************************************************************
# change_prefix.sh : allow to transfer a contrib dir
# ***************************************************************************
# Copyright (C) 2003 the VideoLAN team
# $Id$
#
# Authors: Christophe Massiot <massiot@via.ecp.fr>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
# ***************************************************************************
usage="Usage: $0 <directory> <prefix> <new_prefix>"
LANG=C
export LANG
if test .$1 = .-h -o .$1 = .--help -o $# != 3; then
echo $usage
exit 1
fi
top_dir=`cd $1; pwd`
prefix=$2
new_prefix2=$3
new_prefix=/$new_prefix2
if test -z $prefix -o -z $new_prefix; then
echo $usage
exit 1
fi
cd $top_dir
pwd
files=`find . -type f`
for file in $files; do
if test ".`file $file | grep Mach-O`" != "." ; then
echo "Changing prefixes of '$file'"
islib=n
if test ".`file $file | grep 'dynamically linked shared library'`" != "." ; then
islib=y
fi
libs=`otool -L $file 2>/dev/null | grep $prefix | cut -d\ -f 1`
first=y
for i in "" $libs; do
if ! test -z $i; then
if test $islib = y -a $first = y; then
install_name_tool -id `echo $i | sed -e "s,$prefix,$new_prefix,"` $file
first=n
else
install_name_tool -change $i `echo $i | sed -e "s,$prefix,$new_prefix,"` $file
fi
fi
done
elif test ".`file $file | grep \"text\|shell\"`" != "." -o ".`echo $file | grep pc$`" != "."; then
echo "Fixing up shell/text/pc file "$file""
cp $file $file.tmp
sed -e "s,$prefix,$new_prefix,g" < $file > $file.tmp
mv -f $file.tmp $file
else
echo "Not doing anything with $file"
fi
done
files=`find . -name *.la`
for file in $files; do
echo "Fixing up .la $file"
cp $file $file.tmp
sed -e "s,$prefix,$new_prefix,g" < $file > $file.tmp
mv -f $file.tmp $file
done
# ***************************************************************************
# Makefile : Build vlc-contrib files
# ***************************************************************************
# Copyright (C) 2003-2011 the VideoLAN team
# $Id$
#
# Authors: Christophe Massiot <massiot@via.ecp.fr>
# Derk-Jan Hartman <hartman at videolan dot org>
# Christophe Mutricy <xtophe at videolan dot org>
# Felix Paul Kühne <fkuehne at videolan dot org>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
# ***************************************************************************
include ./config.mak
BUILDDIRS = hosts build
ifdef HAVE_MACOSX
TARGETALL=using-bin
else
TARGETALL=using-src
endif
all: $(TARGETALL)
using-src:
$(MAKE) -C build-src tools
$(MAKE) -C build-src
ifdef HAVE_MACOSX_DARWIN_10
(cd $(PREFIX)/lib && sed -e 's%/usr/lib/libiconv.la%$(PREFIX)/lib/libiconv.la%g' -i.orig *.la && rm -f *.la.orig)
endif
# shortcut
src: using-src
ifdef HAVE_DARWIN_OS
CONTRIBREV=50
contrib-macosx-$(ARCH)-$(CONTRIBREV).tar.bz2:
$(WGET) http://downloads.videolan.org/pub/videolan/testing/contrib/macosx/$@
.$(CONTRIBREV): contrib-macosx-$(ARCH)-$(CONTRIBREV).tar.bz2
@if test -d tmp; then \
echo "Move away ./tmp, it's in the way" ; \
exit 1 ; \
fi
mkdir tmp
mkdir -p $(PREFIX)
(cd tmp && tar jxvf ../$<)
$(SRCDIR)/change_prefix.sh tmp @@CONTRIB_PREFIX@@ $(PREFIX)
(cd tmp && find . -type d) | while read dir; do mkdir -p -- "$(PREFIX)/$$dir"; done
(cd tmp && find . -not -type d) | while read i; do mv -f -- tmp/"$$i" "$(PREFIX)/$$i"; done
rm -rf tmp
# install the gecko-sdk, which isn't part of the package for size and speed reasons
(cd build-src && rm -rf *gecko* && $(MAKE) .gecko)
# libiconv.la is no longer present on Snow Leopard, so fix possible references to it, which would
# result in linking issues
ifdef HAVE_MACOSX_DARWIN_10
(cd $(PREFIX)/lib && sed -e 's%/usr/lib/libiconv.la%$(PREFIX)/lib/libiconv.la%g' -i.orig *.la && rm -f *.la.orig)
(cd build-src && rm -f .iconv && $(MAKE) .iconv-from-os)
endif
touch .$(CONTRIBREV)
using-bin: .$(CONTRIBREV)
endif
clean:
rm -rf $(BUILDDIRS)
$(MAKE) -C build-src clean
clean-bin:
rm -rf $(BUILDDIRS)
$(MAKE) -C build-src clean-dots
distclean:
rm -rf $(BUILDDIRS) config.mak distro.mak build-src toolchain.cmake Makefile
bin: using-bin
package-macosx:
@if test -d tmp; then \
echo "Move away ./tmp, it's in the way" ; \
exit 1 ; \
fi
mkdir tmp
(cd $(PREFIX); tar cf - Sparkle Growl BGHUDAppKit bin sbin include lib share/aclocal* share/autoconf* \
share/automake* share/gettext* share/libtool*) | (cd tmp; tar xf -)
./change_prefix.sh tmp $(PREFIX) @@CONTRIB_PREFIX@@
(cd tmp; tar cf - .) | bzip2 -c > contrib-macosx.tar.bz2
rm -rf tmp
rm -f contrib-macosx-$(ARCH)-$(CONTRIBREV).tar.bz2
mv contrib-macosx.tar.bz2 contrib-macosx-$(ARCH)-$(CONTRIBREV).tar.bz2
DISTDIR = usr/win$*
package-win%:
@if test -d tmp; then \
echo "Move away ./tmp, it's in the way" ; \
exit 1 ; \
fi
mkdir -p tmp/$(DISTDIR)
(cd $(PREFIX); tar cf - --dereference bin sbin include lib share/aclocal*\
share/autoconf* share/qt4* \
share/automake* share/gettext* gecko-sdk)\
| (cd tmp/$(DISTDIR); tar xpf -)
#kludge for live.com
mkdir -p tmp/$(DISTDIR)/live.com
for i in groupsock liveMedia UsageEnvironment BasicUsageEnvironment; do \
mkdir -p tmp/$(DISTDIR)/live.com/$$i/include; \
cp -r build-src/live/$$i/include tmp/$(DISTDIR)/live.com/$$i; \
cp build-src/live/$$i/lib$${i}.a tmp/$(DISTDIR)/live.com/$$i; \
done;
# Change Prefix.
./change_prefix.sh tmp $(PREFIX) $(DISTDIR)
# Remove unused and potentially harmful files (but skip qt4 executables)
(cd tmp/$(DISTDIR)/bin && rm -fv `find . -name 'uic.exe' -o -name 'rcc.exe' -o -name 'moc.exe' -o -name '*.exe' -printf '%p '` && chmod a+x * || true)
# Tar it.
(cd tmp; tar cf - $(DISTDIR)) | bzip2 -c > contrib-`date +%Y%m%d`-win$*-bin-gcc-`$(CC) --version|head -n 1|cut -f 3 -d ' '`-runtime-`/bin/echo -e "#include <_mingw.h>\n#define CONCAT2(a,b) a##b\n#define CONCAT(a,b) CONCAT2(a,b)\n#ifdef __MINGW64_VERSION_MAJOR\nCONCAT(CONCAT(__MINGW64_VERSION_MAJOR,.),__MINGW64_VERSION_MINOR)\n#else\n__MINGW32_VERSION\n#endif"|$(CC) -E -|tail -1`-only.tar.bz2
rm -rf tmp
.PHONY: all clean-src clean-bin clean package-macosx
# android rules
# Not compiling: .shout .live .mod .x264 .caca .mpcdec .dirac .schroedinger .libass
all: .zlib \
.a52 .mpeg2 .mad .ogg .vorbis .vorbisenc .theora \
.flac .speex .faad .lame .ffmpeg \
.twolame \
.png .dvbpsi \
.dca .kate .ebml .matroska .tag
ANDROID_INCLUDE=$(ANDROID_NDK)/platforms/android-9/arch-arm/usr/include
ANDROID_LIB=$(ANDROID_NDK)/platforms/android-9/arch-arm/usr/lib
EXTRA_CPPFLAGS+=-I$(ANDROID_INCLUDE)
EXTRA_LDFLAGS+=-Wl,-rpath-link=$(ANDROID_LIB),-Bdynamic,-dynamic-linker=/system/bin/linker -Wl,--no-undefined -L$(ANDROID_LIB)
# Contrib configuration for TI Davinci based SoC
all: \
.a52 .mad .ogg \
.flac .faad .ffmpeg \
.live .png .dvbpsi .tremor
FFMPEGCONF += --arch=arm --cpu=arm926ej-s --disable-armvfp
# iOS rules
all: .ffmpeg .live .dvbpsi .faad
# Darwin rules
TOOLS = .autoconf .automake .libtool .intl .pkgcfg .yasm
all: .freetype \
.fribidi .a52 .mpeg2 .mad .ogg .vorbis .vorbisenc .theora \
.flac .speex .shout .faad .lame .twolame .ebml .matroska .ffmpeg \
.dvdcss .libdvdread .dvdnav .dvbpsi .live .caca .mod .fontconfig \
.png .gpg-error .gcrypt .gnutls .cddb .cdio .vcdimager \
.SDL_image .gecko .mpcdec \
.dca .tag .x264 .goom2k4 .lua .zvbi .fluid .fontconfig .ncurses \
.schroedinger .libass .libupnp .kate .sqlite3 .BGHUDAppKit .Growl .Sparkle
# .expat don't work with SDK yet
# .glib .IDL .gecko are required to build the mozilla plugin
# .mozilla-macosx will build an entire mozilla. it can be used if we need to create a new .gecko package
# Darwin rules
TOOLS = .autoconf .automake .libtool .intl .pkgcfg .yasm
all: .freetype \
.fribidi .a52 .mpeg2 .mad .ogg .vorbis .vorbisenc .fluid .theora \
.flac .speex .shout .faad .lame .twolame .ebml .matroska .ffmpeg \
.dvdcss .libdvdread .dvdnav .dvbpsi .live .caca .mod .fontconfig \
.png .jpeg .tiff .gpg-error .gcrypt .gnutls .cddb .cdio .vcdimager \
.gecko .mpcdec \
.dca .tag .x264 .lua .zvbi .fontconfig .ncurses \
.schroedinger .libass .libupnp .kate .sqlite3 .BGHUDAppKit .Growl .Sparkle
# .expat don't work with SDK yet
# .glib .IDL .gecko are required to build the mozilla plugin
# .mozilla-macosx will build an entire mozilla. it can be used if we need to create a new .gecko package
# Maemo 5
all: \
.mad .mpcdec .lame .mpeg2 \
.tag .libass \
.ogg .tremor .vorbisenc .flac .speex .theora .kate .tiger \
.twolame .dirac .x264 \
.ebml .matroska .ffmpeg .mod .fluid \
.live .dvbpsi .zvbi \
.lua .xcb .xcb-util
#.faad -> way slower than libavcodec
#.gpg-error .gcrypt .gnutls -> OpenSSL
#.dvdcss .dvdnav -> no DVD
#
# Fine tune ffmpeg's capabiities for this system
#
FFMPEGCONF += --enable-encoders --disable-muxers --disable-demuxers --disable-demuxer=dv1394 --enable-demuxer=avi --enable-demuxer=avisynth --enable-demuxer=gif --enable-demuxer=h261 --enable-demuxer=h263 --enable-demuxer=h264 --enable-demuxer=m4v --enable-demuxer=mjpg --enable-demuxer=mov --enable-demuxer=mpegps --enable-demuxer=mpegvideo --enable-demuxer=yuv4mpegpipe --disable-parsers --enable-parser=mpeg4video --enable-parser=vc1 --enable-parser=mjpeg --enable-parser=mpegaudio --enable-parser=mpegvideo --enable-parser=pnm --enable-parser=h264 --enable-parser=h263 --enable-parser=h264 --disable-decoders --enable-decoder=h261 --enable-decoder=h263 --enable-decoder=h263i --enable-decoder=h264 --enable-decoder=huffyuv --enable-decoder=idcin --enable-decoder=jpegls --enable-decoder=mjpeg --enable-decoder=mjpegb --enable-decoder=mmvideo --enable-decoder=mpeg1video --enable-decoder=mpeg2video --enable-decoder=mpeg4 --enable-decoder=mpeg4aac --enable-decoder=mpegvideo --enable-decoder=msmpeg4v1 --enable-decoder=msmpeg4v2 --enable-decoder=msmpeg4v3 --enable-decoder=msvideo1 --enable-decoder=png --enable-decoder=bmp --enable-decoder=rv10 --enable-decoder=rv20 --enable-decoder=vc1 --enable-decoder=wmav1 --enable-decoder=wmav2 --enable-decoder=wmv1 --enable-decoder=wmv2 --enable-decoder=wmv3 --enable-decoder=zlib --enable-decoder=gif --enable-decoder=tiff --disable-protocols --enable-encoder=bmp --enable-encoder=gif --enable-encoder=jpegls --enable-encoder=mjpeg --enable-encoder=png --enable-encoder=huffyuv --enable-muxer=mjpeg --enable-encoder=zlib
#
# NetBOX Linux rules
#
all: .iconv .intl .freetype .zlib \
.ffmpeg .live .xml \
.dvbpsi
#Compiled but not linked libtool broken .faad .mpeg2 .ogg .dvbpsi
all: .a52 .mad \
.lame .ffmpeg
LDFLAGS=-L$(EPOCROOT)/../cls-gcc/arm-none-symbianelf/lib -L$(EPOCROOT)/epoc32/release/armv5/lib -nostdlib -shared -Wl,--no-undefined $(EPOCROOT)/epoc32/release/armv5/lib/libm.dso $(EPOCROOT)/epoc32/release/armv5/lib/libc.dso $(EPOCROOT)/epoc32/release/armv5/lib/libz.dso
EXTRA_CPPFLAGS=-D_UNICODE -D__GCCE__ -D__SYMBIAN32__ -D__S60_3X__ -D__FreeBSD_cc_version -include $(SYMBIAN_INCLUDE)/gcce/gcce.h -I$(SYMBIAN_INCLUDE)/stdapis -I$(SYMBIAN_INCLUDE)/stdapis/sys -I$(SYMBIAN_INCLUDE)/variant -I$(SYMBIAN_INCLUDE)
# Standard Linux or other UNIX-like systems
all: .iconv .intl .freetype .fribidi .zlib \
.a52 .mpeg2 .mad .ogg .vorbis .vorbisenc .theora \
.flac .speex .faad .lame .ebml .matroska .ffmpeg .dvdcss \
.live .goom2k4 .caca .mod .x264 .xml .twolame \
.png .gpg-error .gcrypt .gnutls .mpcdec \
.dvdnav .dvbpsi .dirac \
.dca .raw1394 .dc1394 .lua .zvbi \
.kate .tiger
# .png .gpg-error .gcrypt .gnutls .mpcdec \
# .SDL_image .daap .cddb .cdio .vcdimager
# WIN32 rules
all: .iconv .intl .freetype .fribidi .zlib \
.gpg-error .gcrypt .gnutls .pthreads .xml .fontconfig \
.a52 .mpeg2 .mad .ogg .vorbis .shout .vorbisenc .theora \
.flac .speex .faad .lame .ebml .matroska .ffmpeg \
.live .goom2k4 .caca .mod .x264 .twolame \
.png .mpcdec .schroedinger .dvbpsi \
.dca .kate .libass .zvbi .fluid .SDL_image .gme \
.libbluray .dvdcss .libupnp .dvdnav .qt4_win32 \
.dx_headers .dshow_headers .portaudio .gecko \
.lua .tag .peflags .cddb .sqlite3 .libprojectM
# .daap .cdio .vcdimager
# WIN64 rules
all: .iconv .intl .freetype .fribidi .zlib \
.gpg-error .gcrypt .gnutls .xml .fontconfig \
.a52 .mpeg2 .mad .ogg .vorbis .shout .vorbisenc .theora \
.flac .speex .faad .lame .ebml .matroska .ffmpeg \
.goom2k4 .caca .mod .x264 .twolame \
.png .schroedinger .dvbpsi \
.dca .kate .libass .SDL_image \
.libbluray .dvdcss .libupnp .dvdnav .qt4_win32 \
.dx_headers .dshow_headers .portaudio .gecko \
.lua .peflags .sqlite3 .tag
# .live ## XXX: disabled temporarily
# .libprojectM
# .pthreads
#.zvbi \
# .fluid
# .daap .cddb .cdio .vcdimager
# WinCE rules
all: .errno .iconv .zlib \
.a52 .mpeg2 .ogg .tremor .theora .vorbis .ffmpeg \
.live .dvbpsi
# .faad .lame
prefix=/Library/Frameworks/QtCore.framework/Versions/4/
exec_prefix=${prefix}
libdir=${prefix}/lib
includedir=${prefix}/Headers
Name: Qtcore
Description: Qtcore Library
Version: 4.6.1
Libs: -F/Library/Frameworks -L/Library/Frameworks -framework QtGui -framework QtCore
Cflags: -I/usr/local/Qt4.6/mkspecs/macx-g++ -I. -I${includedir} -DQT_CORE_LIB -DQT_SHARED
prefix=/Library/Frameworks/QtGui.framework/Versions/4/
exec_prefix=${prefix}
libdir=${prefix}/lib
includedir=${prefix}/Headers
Name: Qtgui
Description: Qtgui Library
Version: 4.6.1
Libs: -F/Library/Frameworks -L/Library/Frameworks -framework QtGui -framework QtCore
Cflags: -I/usr/local/Qt4.6/mkspecs/macx-g++ -I. -I${includedir} -DQT_GUI_LIB -DQT_SHARED
diff -ruN SDL_image/Makefile.am SDL_image_new/Makefile.am
--- SDL_image/Makefile.am 2007-07-21 07:26:34.000000000 +0200
+++ SDL_image_new/Makefile.am 2007-08-04 12:08:51.000000000 +0200
@@ -44,7 +44,6 @@
else
libSDL_image_la_LDFLAGS = \
-no-undefined \
- -release $(LT_RELEASE) \
-version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE)
libSDL_image_la_LIBADD = $(IMG_LIBS)
endif
diff -ruN SDL_image/Makefile.in SDL_image_new/Makefile.in
--- SDL_image/Makefile.in 2007-07-21 07:27:57.000000000 +0200
+++ SDL_image_new/Makefile.in 2007-08-04 12:12:00.000000000 +0200
@@ -260,12 +260,10 @@
@USE_VERSION_RC_FALSE@libSDL_image_la_LDFLAGS = \
@USE_VERSION_RC_FALSE@ -no-undefined \
-@USE_VERSION_RC_FALSE@ -release $(LT_RELEASE) \
@USE_VERSION_RC_FALSE@ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE)
@USE_VERSION_RC_TRUE@libSDL_image_la_LDFLAGS = \
@USE_VERSION_RC_TRUE@ -no-undefined \
-@USE_VERSION_RC_TRUE@ -release $(LT_RELEASE) \
@USE_VERSION_RC_TRUE@ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) -Wl,version.o
@USE_VERSION_RC_FALSE@libSDL_image_la_LIBADD = $(IMG_LIBS)
--- libopendaap-orig/http_client.c 2005-05-12 07:52:03.000000000 +0200
+++ libopendaap/http_client.c 2005-08-04 14:06:24.000000000 +0200
@@ -35,6 +35,8 @@
# include <tcpd.h>
#endif
+# include <netinet/in.h>
+
#ifdef SYSTEM_POSIX
# include <unistd.h>
# include <sys/types.h>
--- dirac/Makefile.am.orig 2010-11-01 01:31:21.638194470 +0100
+++ dirac/Makefile.am 2010-11-01 01:31:25.174196742 +0100
@@ -1,6 +1,8 @@
# $Id: Makefile.am,v 1.22 2008/10/01 05:33:56 asuraparaju Exp $
#
+ACLOCAL_AMFLAGS= -I m4
+
SUBDIRS = libdirac_byteio libdirac_common libdirac_motionest libdirac_encoder \
libdirac_decoder encoder decoder $(CPPUNITTESTS_DIR) \
tests $(DOC_DIR) win32
--- dirac/configure.ac.orig 2010-11-01 01:26:21.058194985 +0100
+++ dirac/configure.ac 2010-11-01 01:32:22.062185299 +0100
@@ -57,8 +57,6 @@
AM_PROG_LIBTOOL
AC_SYS_LARGEFILE
-ACLOCAL_AMFLAGS="-I m4 $ACLOCAL_AMFLAGS"
-AC_SUBST(ACLOCAL_AMFLAGS)
dnl -------------------------------------------------------------------------
--- dirac/configure.ac 2007-09-30 14:45:51.156250000 +1000
+++ dirac/configure.ac 2007-09-30 14:44:27.625000000 +1000
@@ -225,8 +225,6 @@
AC_TRY_CXXFLAGS([],[], [$TRY_CFLAGS $CXXFLAGS],[OPT_CFLAGS="$TRY_CFLAGS"])
TRY_CFLAGS="$OPT_CFLAGS -Wall"
AC_TRY_CXXFLAGS([],[], [$TRY_CFLAGS $CXXFLAGS],[OPT_CFLAGS="$TRY_CFLAGS"])
- TRY_CFLAGS="$OPT_CFLAGS -Werror"
- AC_TRY_CXXFLAGS([],[], [$TRY_CFLAGS $CXXFLAGS],[OPT_CFLAGS="$TRY_CFLAGS"])
TRY_CFLAGS="$OPT_CFLAGS -W"
AC_TRY_CXXFLAGS([],[], [$TRY_CFLAGS $CXXFLAGS],[OPT_CFLAGS="$TRY_CFLAGS"])
TRY_CFLAGS="$OPT_CFLAGS -Woverloaded-virtual"
--- dirac/Makefile.am 2008-10-01 07:33:56.000000000 +0200
+++ dirac.new/Makefile.am 2010-01-09 02:05:45.000000000 +0100
@@ -2,7 +2,7 @@
#
SUBDIRS = libdirac_byteio libdirac_common libdirac_motionest libdirac_encoder \
- libdirac_decoder encoder decoder util $(CPPUNITTESTS_DIR) \
+ libdirac_decoder encoder decoder $(CPPUNITTESTS_DIR) \
tests $(DOC_DIR) win32
.PHONY: valgrind-check
diff -ru faad2-2.7/libfaad/common.h faad2/libfaad/common.h
--- faad2-2.7/libfaad/common.h 2009-02-05 02:51:03.000000000 +0200
+++ faad2/libfaad/common.h 2009-09-01 20:41:20.000000000 +0300
@@ -79,6 +79,10 @@
#define FIXED_POINT
#endif
+#ifdef __arm__
+#define FIXED_POINT
+#endif
+
#define ERROR_RESILIENCE
--- ffmpeg/libavutil/internal.h.orig 2007-05-14 16:24:22.000000000 +0200
+++ ffmpeg/libavutil/internal.h 2007-05-14 16:24:35.000000000 +0200
@@ -46,6 +46,10 @@
#define M_PI 3.14159265358979323846
#endif
+#ifndef M_E
+#define M_E 2.718281828
+#endif
+
#ifndef INT16_MIN
#define INT16_MIN (-0x7fff-1)
#endif
--- ffmpeg/libavformat/utils.c.org 2007-11-23 10:08:01.000000000 +0100
+++ ffmpeg/libavformat/utils.c 2007-11-23 10:08:40.000000000 +0100
@@ -24,6 +24,7 @@
#include "riff.h"
#include <sys/time.h>
#include <time.h>
+#include <strings.h>
#undef NDEBUG
#include <assert.h>
--- ffmpeg/configure.orig 2007-05-14 15:08:15.000000000 +0200
+++ ffmpeg/configure 2007-05-14 15:08:55.000000000 +0200
@@ -1028,6 +1028,10 @@
arm|armv[4567]*l)
arch="armv4l"
;;
+ armeb)
+ arch="armv4"
+ bigendian="yes"
+ ;;
alpha)
arch="alpha"
enable fast_64bit
diff -ruN flac/include/share/alloc.h flac.new/include/share/alloc.h
--- flac/include/share/alloc.h 2007-09-12 07:32:21.000000000 +0200
+++ flac.new/include/share/alloc.h 2009-08-23 12:33:30.000000000 +0200
@@ -28,7 +28,7 @@
*/
#include <limits.h> /* for SIZE_MAX */
-#if !defined _MSC_VER && !defined __MINGW32__ && !defined __EMX__
+#if !defined _MSC_VER && !defined __EMX__
#include <stdint.h> /* for SIZE_MAX in case limits.h didn't get it */
#endif
#include <stdlib.h> /* for size_t, malloc(), etc */
diff -ruN flac/src/flac/analyze.c flac.new/src/flac/analyze.c
--- flac/src/flac/analyze.c 2007-05-25 21:34:48.000000000 +0200
+++ flac.new/src/flac/analyze.c 2009-08-23 12:33:09.000000000 +0200
@@ -66,7 +66,7 @@
unsigned i, channel, partitions;
/* do the human-readable part first */
-#ifdef _MSC_VER
+#ifdef __MSVCRT__
fprintf(fout, "frame=%u\toffset=%I64u\tbits=%u\tblocksize=%u\tsample_rate=%u\tchannels=%u\tchannel_assignment=%s\n", frame_number, frame_offset, frame_bytes*8, frame->header.blocksize, frame->header.sample_rate, channels, FLAC__ChannelAssignmentString[frame->header.channel_assignment]);
#else
fprintf(fout, "frame=%u\toffset=%llu\tbits=%u\tblocksize=%u\tsample_rate=%u\tchannels=%u\tchannel_assignment=%s\n", frame_number, (unsigned long long)frame_offset, frame_bytes*8, frame->header.blocksize, frame->header.sample_rate, channels, FLAC__ChannelAssignmentString[frame->header.channel_assignment]);
diff -ruN flac/src/libFLAC/lpc.c flac.new/src/libFLAC/lpc.c
--- flac/src/libFLAC/lpc.c 2007-09-04 20:15:03.000000000 +0200
+++ flac.new/src/libFLAC/lpc.c 2009-08-23 12:33:09.000000000 +0200
@@ -285,7 +285,7 @@
for(j = 0; j < order; j++) {
sum += qlp_coeff[j] * (*(--history));
sumo += (FLAC__int64)qlp_coeff[j] * (FLAC__int64)(*history);
-#if defined _MSC_VER
+#if defined __MSVCRT__
if(sumo > 2147483647I64 || sumo < -2147483648I64)
fprintf(stderr,"FLAC__lpc_compute_residual_from_qlp_coefficients: OVERFLOW, i=%u, j=%u, c=%d, d=%d, sumo=%I64d\n",i,j,qlp_coeff[j],*history,sumo);
#else
@@ -549,7 +549,7 @@
for(j = 0; j < order; j++)
sum += (FLAC__int64)qlp_coeff[j] * (FLAC__int64)(*(--history));
if(FLAC__bitmath_silog2_wide(sum >> lp_quantization) > 32) {
-#if defined _MSC_VER
+#if defined __MSVCRT__
fprintf(stderr,"FLAC__lpc_compute_residual_from_qlp_coefficients_wide: OVERFLOW, i=%u, sum=%I64d\n", i, sum >> lp_quantization);
#else
fprintf(stderr,"FLAC__lpc_compute_residual_from_qlp_coefficients_wide: OVERFLOW, i=%u, sum=%lld\n", i, (long long)(sum >> lp_quantization));
@@ -557,7 +557,7 @@
break;
}
if(FLAC__bitmath_silog2_wide((FLAC__int64)(*data) - (sum >> lp_quantization)) > 32) {
-#if defined _MSC_VER
+#if defined __MSVCRT__
fprintf(stderr,"FLAC__lpc_compute_residual_from_qlp_coefficients_wide: OVERFLOW, i=%u, data=%d, sum=%I64d, residual=%I64d\n", i, *data, sum >> lp_quantization, (FLAC__int64)(*data) - (sum >> lp_quantization));
#else
fprintf(stderr,"FLAC__lpc_compute_residual_from_qlp_coefficients_wide: OVERFLOW, i=%u, data=%d, sum=%lld, residual=%lld\n", i, *data, (long long)(sum >> lp_quantization), (long long)((FLAC__int64)(*data) - (sum >> lp_quantization)));
@@ -815,7 +815,7 @@
for(j = 0; j < order; j++) {
sum += qlp_coeff[j] * (*(--history));
sumo += (FLAC__int64)qlp_coeff[j] * (FLAC__int64)(*history);
-#if defined _MSC_VER
+#if defined __MSVCRT__
if(sumo > 2147483647I64 || sumo < -2147483648I64)
fprintf(stderr,"FLAC__lpc_restore_signal: OVERFLOW, i=%u, j=%u, c=%d, d=%d, sumo=%I64d\n",i,j,qlp_coeff[j],*history,sumo);
#else
@@ -1079,7 +1079,7 @@
for(j = 0; j < order; j++)
sum += (FLAC__int64)qlp_coeff[j] * (FLAC__int64)(*(--history));
if(FLAC__bitmath_silog2_wide(sum >> lp_quantization) > 32) {
-#ifdef _MSC_VER
+#ifdef __MSVCRT__
fprintf(stderr,"FLAC__lpc_restore_signal_wide: OVERFLOW, i=%u, sum=%I64d\n", i, sum >> lp_quantization);
#else
fprintf(stderr,"FLAC__lpc_restore_signal_wide: OVERFLOW, i=%u, sum=%lld\n", i, (long long)(sum >> lp_quantization));
@@ -1087,7 +1087,7 @@
break;
}
if(FLAC__bitmath_silog2_wide((FLAC__int64)(*r) + (sum >> lp_quantization)) > 32) {
-#ifdef _MSC_VER
+#ifdef __MSVCRT__
fprintf(stderr,"FLAC__lpc_restore_signal_wide: OVERFLOW, i=%u, residual=%d, sum=%I64d, data=%I64d\n", i, *r, sum >> lp_quantization, (FLAC__int64)(*r) + (sum >> lp_quantization));
#else
fprintf(stderr,"FLAC__lpc_restore_signal_wide: OVERFLOW, i=%u, residual=%d, sum=%lld, data=%lld\n", i, *r, (long long)(sum >> lp_quantization), (long long)((FLAC__int64)(*r) + (sum >> lp_quantization)));
diff -ruN flac/src/metaflac/operations.c flac.new/src/metaflac/operations.c
--- flac/src/metaflac/operations.c 2007-09-11 06:23:29.000000000 +0200
+++ flac.new/src/metaflac/operations.c 2009-08-23 12:33:09.000000000 +0200
@@ -565,7 +565,7 @@
PPR; printf(" sample_rate: %u Hz\n", block->data.stream_info.sample_rate);
PPR; printf(" channels: %u\n", block->data.stream_info.channels);
PPR; printf(" bits-per-sample: %u\n", block->data.stream_info.bits_per_sample);
-#ifdef _MSC_VER
+#ifdef __MSVCRT__
PPR; printf(" total samples: %I64u\n", block->data.stream_info.total_samples);
#else
PPR; printf(" total samples: %llu\n", (unsigned long long)block->data.stream_info.total_samples);
@@ -596,7 +596,7 @@
PPR; printf(" seek points: %u\n", block->data.seek_table.num_points);
for(i = 0; i < block->data.seek_table.num_points; i++) {
if(block->data.seek_table.points[i].sample_number != FLAC__STREAM_METADATA_SEEKPOINT_PLACEHOLDER) {
-#ifdef _MSC_VER
+#ifdef __MSVCRT__
PPR; printf(" point %u: sample_number=%I64u, stream_offset=%I64u, frame_samples=%u\n", i, block->data.seek_table.points[i].sample_number, block->data.seek_table.points[i].stream_offset, block->data.seek_table.points[i].frame_samples);
#else
PPR; printf(" point %u: sample_number=%llu, stream_offset=%llu, frame_samples=%u\n", i, (unsigned long long)block->data.seek_table.points[i].sample_number, (unsigned long long)block->data.seek_table.points[i].stream_offset, block->data.seek_table.points[i].frame_samples);
@@ -618,7 +618,7 @@
break;
case FLAC__METADATA_TYPE_CUESHEET:
PPR; printf(" media catalog number: %s\n", block->data.cue_sheet.media_catalog_number);
-#ifdef _MSC_VER
+#ifdef __MSVCRT__
PPR; printf(" lead-in: %I64u\n", block->data.cue_sheet.lead_in);
#else
PPR; printf(" lead-in: %llu\n", (unsigned long long)block->data.cue_sheet.lead_in);
@@ -630,7 +630,7 @@
const FLAC__bool is_last = (i == block->data.cue_sheet.num_tracks-1);
const FLAC__bool is_leadout = is_last && track->num_indices == 0;
PPR; printf(" track[%u]\n", i);
-#ifdef _MSC_VER
+#ifdef __MSVCRT__
PPR; printf(" offset: %I64u\n", track->offset);
#else
PPR; printf(" offset: %llu\n", (unsigned long long)track->offset);
@@ -649,7 +649,7 @@
for(j = 0; j < track->num_indices; j++) {
const FLAC__StreamMetadata_CueSheet_Index *index = track->indices+j;
PPR; printf(" index[%u]\n", j);
-#ifdef _MSC_VER
+#ifdef __MSVCRT__
PPR; printf(" offset: %I64u\n", index->offset);
#else
PPR; printf(" offset: %llu\n", (unsigned long long)index->offset);
diff -ruN flac/src/metaflac/operations_shorthand_cuesheet.c flac.new/src/metaflac/operations_shorthand_cuesheet.c
--- flac/src/metaflac/operations_shorthand_cuesheet.c 2007-07-25 04:36:59.000000000 +0200
+++ flac.new/src/metaflac/operations_shorthand_cuesheet.c 2009-08-23 12:33:09.000000000 +0200
@@ -160,7 +160,7 @@
for(track = 0; track < cs->num_tracks; track++) {
const FLAC__StreamMetadata_CueSheet_Track *tr = cs->tracks+track;
for(index = 0; index < tr->num_indices; index++) {
-#ifdef _MSC_VER
+#ifdef __MSVCRT__
sprintf(spec, "%I64u;", tr->offset + tr->indices[index].offset);
#else
sprintf(spec, "%llu;", (unsigned long long)(tr->offset + tr->indices[index].offset));
@@ -200,7 +200,7 @@
return false;
}
-#if defined _MSC_VER || defined __MINGW32__
+#if defined __MSVCRT__
_snprintf(ref, reflen, "\"%s\" FLAC", filename);
#else
snprintf(ref, reflen, "\"%s\" FLAC", filename);
diff -ruN flac/src/metaflac/operations_shorthand_streaminfo.c flac.new/src/metaflac/operations_shorthand_streaminfo.c
--- flac/src/metaflac/operations_shorthand_streaminfo.c 2007-07-25 04:36:59.000000000 +0200
+++ flac.new/src/metaflac/operations_shorthand_streaminfo.c 2009-08-23 12:33:09.000000000 +0200
@@ -75,7 +75,7 @@
printf("%u\n", block->data.stream_info.bits_per_sample);
break;
case OP__SHOW_TOTAL_SAMPLES:
-#ifdef _MSC_VER
+#ifdef __MSVCRT__
printf("%I64u\n", block->data.stream_info.total_samples);
#else
printf("%llu\n", (unsigned long long)block->data.stream_info.total_samples);
diff -ruN flac/src/share/grabbag/cuesheet.c flac.new/src/share/grabbag/cuesheet.c
--- flac/src/share/grabbag/cuesheet.c 2007-07-31 00:29:24.000000000 +0200
+++ flac.new/src/share/grabbag/cuesheet.c 2009-08-23 12:33:09.000000000 +0200
@@ -200,7 +200,7 @@
static FLAC__bool local__cuesheet_parse_(FILE *file, const char **error_message, unsigned *last_line_read, FLAC__StreamMetadata *cuesheet, FLAC__bool is_cdda, FLAC__uint64 lead_out_offset)
{
-#if defined _MSC_VER || defined __MINGW32__ || defined __EMX__
+#if defined __MSVCRT__ || defined __EMX__
#define FLAC__STRCASECMP stricmp
#else
#define FLAC__STRCASECMP strcasecmp
@@ -593,7 +593,7 @@
fprintf(file, "%02u:%02u:%02u\n", m, s, f);
}
else
-#ifdef _MSC_VER
+#ifdef __MSVCRT__
fprintf(file, "%I64u\n", track->offset + index->offset);
#else
fprintf(file, "%llu\n", (unsigned long long)(track->offset + index->offset));
@@ -601,7 +601,7 @@
}
}
-#ifdef _MSC_VER
+#ifdef __MSVCRT__
fprintf(file, "REM FLAC__lead-in %I64u\n", cs->lead_in);
fprintf(file, "REM FLAC__lead-out %u %I64u\n", (unsigned)cs->tracks[track_num].number, cs->tracks[track_num].offset);
#else
diff -ruN flac/src/test_libFLAC/encoders.c flac.new/src/test_libFLAC/encoders.c
--- flac/src/test_libFLAC/encoders.c 2007-08-01 00:39:39.000000000 +0200
+++ flac.new/src/test_libFLAC/encoders.c 2009-08-23 12:33:09.000000000 +0200
@@ -449,7 +449,7 @@
printf("testing FLAC__stream_encoder_get_total_samples_estimate()... ");
if(FLAC__stream_encoder_get_total_samples_estimate(encoder) != streaminfo_.data.stream_info.total_samples) {
-#ifdef _MSC_VER
+#ifdef __MSVCRT__
printf("FAILED, expected %I64u, got %I64u\n", streaminfo_.data.stream_info.total_samples, FLAC__stream_encoder_get_total_samples_estimate(encoder));
#else
printf("FAILED, expected %llu, got %llu\n", (unsigned long long)streaminfo_.data.stream_info.total_samples, (unsigned long long)FLAC__stream_encoder_get_total_samples_estimate(encoder));
diff -ruN flac/src/test_libFLAC/metadata_object.c flac.new/src/test_libFLAC/metadata_object.c
--- flac/src/test_libFLAC/metadata_object.c 2007-09-11 06:48:59.000000000 +0200
+++ flac.new/src/test_libFLAC/metadata_object.c 2009-08-23 12:33:09.000000000 +0200
@@ -47,7 +47,7 @@
unsigned i;
if(from->offset != to->offset) {
-#ifdef _MSC_VER
+#ifdef __MSVCRT__
printf("FAILED, track offset mismatch, expected %I64u, got %I64u\n", to->offset, from->offset);
#else
printf("FAILED, track offset mismatch, expected %llu, got %llu\n", (unsigned long long)to->offset, (unsigned long long)from->offset);
@@ -83,7 +83,7 @@
else {
for(i = 0; i < to->num_indices; i++) {
if(from->indices[i].offset != to->indices[i].offset) {
-#ifdef _MSC_VER
+#ifdef __MSVCRT__
printf("FAILED, track indices[%u].offset mismatch, expected %I64u, got %I64u\n", i, to->indices[i].offset, from->indices[i].offset);
#else
printf("FAILED, track indices[%u].offset mismatch, expected %llu, got %llu\n", i, (unsigned long long)to->indices[i].offset, (unsigned long long)from->indices[i].offset);
@@ -109,7 +109,7 @@
for(i = 0; i < n; i++) {
if(from[i].sample_number != to[i].sample_number) {
-#ifdef _MSC_VER
+#ifdef __MSVCRT__
printf("FAILED, point[%u].sample_number mismatch, expected %I64u, got %I64u\n", i, to[i].sample_number, from[i].sample_number);
#else
printf("FAILED, point[%u].sample_number mismatch, expected %llu, got %llu\n", i, (unsigned long long)to[i].sample_number, (unsigned long long)from[i].sample_number);
@@ -117,7 +117,7 @@
return false;
}
if(from[i].stream_offset != to[i].stream_offset) {
-#ifdef _MSC_VER
+#ifdef __MSVCRT__
printf("FAILED, point[%u].stream_offset mismatch, expected %I64u, got %I64u\n", i, to[i].stream_offset, from[i].stream_offset);
#else
printf("FAILED, point[%u].stream_offset mismatch, expected %llu, got %llu\n", i, (unsigned long long)to[i].stream_offset, (unsigned long long)from[i].stream_offset);
diff -ruN flac/src/test_libFLAC++/encoders.cpp flac.new/src/test_libFLAC++/encoders.cpp
--- flac/src/test_libFLAC++/encoders.cpp 2007-08-01 00:41:55.000000000 +0200
+++ flac.new/src/test_libFLAC++/encoders.cpp 2009-08-23 12:33:09.000000000 +0200
@@ -478,7 +478,7 @@
printf("testing get_total_samples_estimate()... ");
if(encoder->get_total_samples_estimate() != streaminfo_.data.stream_info.total_samples) {
-#ifdef _MSC_VER
+#ifdef __MSVCRT__
printf("FAILED, expected %I64u, got %I64u\n", streaminfo_.data.stream_info.total_samples, encoder->get_total_samples_estimate());
#else
printf("FAILED, expected %llu, got %llu\n", (unsigned long long)streaminfo_.data.stream_info.total_samples, (unsigned long long)encoder->get_total_samples_estimate());
diff -ruN flac/src/test_libs_common/metadata_utils.c flac.new/src/test_libs_common/metadata_utils.c
--- flac/src/test_libs_common/metadata_utils.c 2007-02-02 07:27:17.000000000 +0100
+++ flac.new/src/test_libs_common/metadata_utils.c 2009-08-23 12:33:09.000000000 +0200
@@ -61,7 +61,7 @@
return false;
}
if(blockcopy->total_samples != block->total_samples) {
-#ifdef _MSC_VER
+#ifdef __MSVCRT__
printf("FAILED, total_samples mismatch, expected %I64u, got %I64u\n", block->total_samples, blockcopy->total_samples);
#else
printf("FAILED, total_samples mismatch, expected %llu, got %llu\n", (unsigned long long)block->total_samples, (unsigned long long)blockcopy->total_samples);
@@ -166,7 +166,7 @@
}
for(i = 0; i < block->num_points; i++) {
if(blockcopy->points[i].sample_number != block->points[i].sample_number) {
-#ifdef _MSC_VER
+#ifdef __MSVCRT__
printf("FAILED, points[%u].sample_number mismatch, expected %I64u, got %I64u\n", i, block->points[i].sample_number, blockcopy->points[i].sample_number);
#else
printf("FAILED, points[%u].sample_number mismatch, expected %llu, got %llu\n", i, (unsigned long long)block->points[i].sample_number, (unsigned long long)blockcopy->points[i].sample_number);
@@ -174,7 +174,7 @@
return false;
}
if(blockcopy->points[i].stream_offset != block->points[i].stream_offset) {
-#ifdef _MSC_VER
+#ifdef __MSVCRT__
printf("FAILED, points[%u].stream_offset mismatch, expected %I64u, got %I64u\n", i, block->points[i].stream_offset, blockcopy->points[i].stream_offset);
#else
printf("FAILED, points[%u].stream_offset mismatch, expected %llu, got %llu\n", i, (unsigned long long)block->points[i].stream_offset, (unsigned long long)blockcopy->points[i].stream_offset);
@@ -240,7 +240,7 @@
return false;
}
if(blockcopy->lead_in != block->lead_in) {
-#ifdef _MSC_VER
+#ifdef __MSVCRT__
printf("FAILED, lead_in mismatch, expected %I64u, got %I64u\n", block->lead_in, blockcopy->lead_in);
#else
printf("FAILED, lead_in mismatch, expected %llu, got %llu\n", (unsigned long long)block->lead_in, (unsigned long long)blockcopy->lead_in);
@@ -257,7 +257,7 @@
}
for(i = 0; i < block->num_tracks; i++) {
if(blockcopy->tracks[i].offset != block->tracks[i].offset) {
-#ifdef _MSC_VER
+#ifdef __MSVCRT__
printf("FAILED, tracks[%u].offset mismatch, expected %I64u, got %I64u\n", i, block->tracks[i].offset, blockcopy->tracks[i].offset);
#else
printf("FAILED, tracks[%u].offset mismatch, expected %llu, got %llu\n", i, (unsigned long long)block->tracks[i].offset, (unsigned long long)blockcopy->tracks[i].offset);
@@ -295,7 +295,7 @@
else {
for(j = 0; j < block->tracks[i].num_indices; j++) {
if(blockcopy->tracks[i].indices[j].offset != block->tracks[i].indices[j].offset) {
-#ifdef _MSC_VER
+#ifdef __MSVCRT__
printf("FAILED, tracks[%u].indices[%u].offset mismatch, expected %I64u, got %I64u\n", i, j, block->tracks[i].indices[j].offset, blockcopy->tracks[i].indices[j].offset);
#else
printf("FAILED, tracks[%u].indices[%u].offset mismatch, expected %llu, got %llu\n", i, j, (unsigned long long)block->tracks[i].indices[j].offset, (unsigned long long)blockcopy->tracks[i].indices[j].offset);
diff -ruN flac/src/test_seeking/main.c flac.new/src/test_seeking/main.c
--- flac/src/test_seeking/main.c 2007-09-11 09:32:03.000000000 +0200
+++ flac.new/src/test_seeking/main.c 2009-08-23 12:33:09.000000000 +0200
@@ -24,7 +24,7 @@
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
-#if defined _MSC_VER || defined __MINGW32__
+#if defined __MSVCRT__
#include <time.h>
#else
#include <sys/time.h>
@@ -200,7 +200,7 @@
FLAC__ASSERT(frame->header.number_type == FLAC__FRAME_NUMBER_TYPE_SAMPLE_NUMBER); /* decoder guarantees this */
if (!dcd->quiet)
-#ifdef _MSC_VER
+#ifdef __MSVCRT__
printf("frame@%I64u(%u)... ", frame->header.number.sample_number, frame->header.blocksize);
#else
printf("frame@%llu(%u)... ", (unsigned long long)frame->header.number.sample_number, frame->header.blocksize);
@@ -309,7 +309,7 @@
return die_s_("expected FLAC__STREAM_DECODER_END_OF_STREAM", decoder);
}
-#ifdef _MSC_VER
+#ifdef __MSVCRT__
printf("file's total_samples is %I64u\n", decoder_client_data.total_samples);
#else
printf("file's total_samples is %llu\n", (unsigned long long)decoder_client_data.total_samples);
@@ -347,7 +347,7 @@
pos = (FLAC__uint64)(local_rand_() % n);
}
-#ifdef _MSC_VER
+#ifdef __MSVCRT__
printf("#%u:seek(%I64u)... ", i, pos);
#else
printf("#%u:seek(%llu)... ", i, (unsigned long long)pos);
--- fluidsynth/src/Makefile.am 2007-11-11 21:06:28.000000000 +0100
+++ fluidsynth.old/src/Makefile.am 2009-07-08 17:48:53.000000000 +0200
@@ -39,7 +39,7 @@
config_win32.h fluid_jack.c
lib_LTLIBRARIES = libfluidsynth.la
-bin_PROGRAMS = fluidsynth
+bin_PROGRAMS =
libfluidsynth_la_SOURCES = \
$(fluid_alsa) \
--- fluidsynth/fluidsynth.pc.in 2007-08-18 23:55:32.000000000 +0200
+++ fluidsynth.new/fluidsynth.pc.in 2009-07-28 23:41:05.000000000 +0200
@@ -6,5 +6,5 @@
Name: FluidSynth
Description: Software SoundFont synth
Version: @VERSION@
-Libs: -L${libdir} -lfluidsynth
+Libs: -L${libdir} -lfluidsynth -ldsound -lwinmm
Cflags: -I${includedir}
diff -urNp fontconfig.orig/fc-arch/Makefile.am fontconfig/fc-arch/Makefile.am
--- fontconfig.orig/fc-arch/Makefile.am 2009-03-18 22:02:20.000000000 +0100
+++ fontconfig/fc-arch/Makefile.am 2010-01-11 17:58:51.000000000 +0100
@@ -22,6 +22,8 @@
# PERFORMANCE OF THIS SOFTWARE.
#
+CPPFLAGS =
+CFLAGS =
CC = @CC_FOR_BUILD@
EXEEXT = @EXEEXT_FOR_BUILD@
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
diff -urNp fontconfig.orig/fc-case/Makefile.am fontconfig/fc-case/Makefile.am
--- fontconfig.orig/fc-case/Makefile.am 2009-03-18 22:02:20.000000000 +0100
+++ fontconfig/fc-case/Makefile.am 2010-01-11 17:56:39.000000000 +0100
@@ -22,6 +22,8 @@
# PERFORMANCE OF THIS SOFTWARE.
#
+CPPFLAGS =
+CFLAGS =
CC = @CC_FOR_BUILD@
EXEEXT = @EXEEXT_FOR_BUILD@
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
diff -urNp fontconfig.orig/fc-glyphname/Makefile.am fontconfig/fc-glyphname/Makefile.am
--- fontconfig.orig/fc-glyphname/Makefile.am 2009-03-18 22:02:20.000000000 +0100
+++ fontconfig/fc-glyphname/Makefile.am 2010-01-11 17:57:29.000000000 +0100
@@ -22,6 +22,8 @@
# PERFORMANCE OF THIS SOFTWARE.
#
+CPPFLAGS =
+CFLAGS =
CC = @CC_FOR_BUILD@
EXEEXT = @EXEEXT_FOR_BUILD@
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
diff -urNp fontconfig.orig/fc-lang/Makefile.am fontconfig/fc-lang/Makefile.am
--- fontconfig.orig/fc-lang/Makefile.am 2009-06-24 19:52:10.000000000 +0200
+++ fontconfig/fc-lang/Makefile.am 2010-01-11 17:56:56.000000000 +0100
@@ -22,6 +22,8 @@
# PERFORMANCE OF THIS SOFTWARE.
#
+CPPFLAGS =
+CFLAGS =
CC = @CC_FOR_BUILD@
EXEEXT = @EXEEXT_FOR_BUILD@
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
--- fontconfig.orig/configure.in 2006-12-03 00:24:39.000000000 +0100
+++ fontconfig/configure.in 2007-11-20 21:17:09.000000000 +0100
@@ -501,7 +501,7 @@
# Let people not build/install docs if they don't have docbook
#
-AC_CHECK_PROG(HASDOCBOOK, docbook2html, yes, no)
+AC_CHECK_PROG(HASDOCBOOK, docbook2html, no, no)
AM_CONDITIONAL(USEDOCBOOK, test "x$HASDOCBOOK" = xyes)
--- fontconfig/src/fcxml.c 2009-08-13 16:07:13.000000000 +0200
+++ fontconfig.new/src/fcxml.c 2009-08-13 16:05:41.000000000 +0200
@@ -23,6 +23,8 @@
*/
#include "fcint.h"
+
+#if 0
#include <fcntl.h>
#include <stdarg.h>
#include <dirent.h>
@@ -58,6 +60,8 @@
#undef STRICT
#endif
+#endif
+
static void
FcExprDestroy (FcExpr *e);
@@ -71,6 +75,7 @@
free (test);
}
+#if 0
static FcExpr *
FcExprCreateInteger (FcConfig *config, int i)
{
@@ -179,7 +184,7 @@
}
return e;
}
-
+#endif
static void
FcExprDestroy (FcExpr *e)
{
@@ -255,6 +260,7 @@
free (e);
}
+#if 0
typedef enum _FcElement {
FcElementNone,
FcElementFontconfig,
@@ -2373,6 +2379,7 @@
const FcChar8 *bs = *((FcChar8 **) b);
return FcStrCmp (as, bs);
}
+#endif
static FcBool
FcConfigParseAndLoadDir (FcConfig *config,
@@ -2380,6 +2387,9 @@
const FcChar8 *dir,
FcBool complain)
{
+ return FcFalse;
+}
+#if 0
DIR *d;
struct dirent *e;
FcBool ret = FcTrue;
@@ -2589,3 +2599,4 @@
#define __fcxml__
#include "fcaliastail.h"
#undef __fcxml__
+#endif
diff -ruN fontconfig/src/fcxml.c fontconfig.new/src/fcxml.c
--- fontconfig/src/fcxml.c 2009-08-13 16:08:49.000000000 +0200
+++ fontconfig.new/src/fcxml.c 2009-08-19 00:03:35.000000000 +0200
@@ -2466,13 +2466,18 @@
bail0:
return ret || !complain;
}
+#endif
+
FcBool
FcConfigParseAndLoad (FcConfig *config,
const FcChar8 *name,
FcBool complain)
{
+ return FcFalse;
+}
+#if 0
XML_Parser p;
FcChar8 *filename;
int fd;
--- fontconfig/src/fcinit.c 2010-04-27 15:31:41.000000000 +0200
+++ fontconfig.new/src/fcinit.c 2010-04-27 15:35:42.000000000 +0200
@@ -34,11 +34,16 @@
config = FcConfigCreate ();
if (!config)
goto bail0;
- if (!FcConfigAddDir (config, (FcChar8 *) FC_DEFAULT_FONTS))
+ char *path = malloc( MAX_PATH + 1 );
+ GetWindowsDirectory( path, MAX_PATH + 1 );
+ strcat( path, "\\fonts" );
+// printf( "Fonts dir: %s\n", path );
+ if (!FcConfigAddDir (config, (FcChar8 *) path))
goto bail1;
char dir[MAX_PATH+5];
SHGetFolderPath( NULL, CSIDL_APPDATA, NULL, 0, dir );
strncat( dir, "\\vlc", 4 );
+// printf( "Cache dir: %s\n", dir );
if (!FcConfigAddCacheDir (config, (FcChar8 *)dir))
goto bail1;
return config;
diff -ruN fontconfig/src/fcint.h fontconfig.good/src/fcint.h
--- fontconfig/src/Makefile.in 2009-06-24 21:05:27.000000000 +0200
+++ fontconfig.good/src/Makefile.in 2009-07-03 00:13:38.000000000 +0200
@@ -664,7 +664,6 @@
# gcc import library install/uninstall
@OS_WIN32_TRUE@install-libtool-import-lib:
-@OS_WIN32_TRUE@ $(INSTALL) .libs/libfontconfig.dll.a $(DESTDIR)$(libdir)
@OS_WIN32_TRUE@ $(INSTALL) fontconfig.def $(DESTDIR)$(libdir)/fontconfig.def
@OS_WIN32_TRUE@uninstall-libtool-import-lib:
--- fontconfig/src/Makefile.am 2009-03-18 22:02:22.000000000 +0100
+++ fontconfig.good/src/Makefile.am 2009-07-03 00:12:50.000000000 +0200
@@ -30,7 +30,6 @@
# gcc import library install/uninstall
install-libtool-import-lib:
- $(INSTALL) .libs/libfontconfig.dll.a $(DESTDIR)$(libdir)
$(INSTALL) fontconfig.def $(DESTDIR)$(libdir)/fontconfig.def
uninstall-libtool-import-lib:
--- fontconfig/src/fcinit.c 2009-06-06 00:59:27.000000000 +0200
+++ fontconfig.good/src/fcinit.c 2009-07-13 14:58:37.000000000 +0200
@@ -24,6 +24,7 @@
#include "fcint.h"
#include <stdlib.h>
+# include <shlobj.h>
static FcConfig *
FcInitFallbackConfig (void)
@@ -35,7 +36,10 @@
goto bail0;
if (!FcConfigAddDir (config, (FcChar8 *) FC_DEFAULT_FONTS))
goto bail1;
- if (!FcConfigAddCacheDir (config, (FcChar8 *) FC_CACHEDIR))
+ char dir[MAX_PATH+5];
+ SHGetFolderPath( NULL, CSIDL_APPDATA, NULL, 0, dir );
+ strncat( dir, "\\vlc", 4 );
+ if (!FcConfigAddCacheDir (config, (FcChar8 *)dir))
goto bail1;
return config;
diff -u fribidi.orig/Makefile.am fribidi/Makefile.am
--- fribidi.orig/Makefile.am 2005-08-25 20:35:34.000000000 +0200
+++ fribidi/Makefile.am 2008-01-28 14:31:19.000000000 +0100
@@ -9,7 +9,7 @@
##############################################################################
## The order of subdirs is important, don't change without a reason.
-SUBDIRS = gen.tab charset lib bin doc test
+SUBDIRS = gen.tab charset lib #bin doc test
EXTRA_DIST = bootstrap ChangeLog.old
diff -u fribidi.orig/configure.ac fribidi/configure.ac
--- fribidi.orig/configure.ac 2008-01-16 00:15:46.000000000 +0100
+++ fribidi/configure.ac 2008-01-28 14:32:38.000000000 +0100
@@ -165,38 +165,38 @@
AM_CONDITIONAL(FRIBIDI_CHARSETS, test x$FRIBIDI_CHARSETS = x1)
# --with[out]-glib
-AC_ARG_WITH(glib,
- AC_HELP_STRING([--with-glib=@<:@no/auto/yes@:>@],
- [use Glib @<:@default=auto@:>@]))
-GLIB_PACKAGE=glib-2.0
-GLIB_MINVERSION=2.4
+#AC_ARG_WITH(glib,
+# AC_HELP_STRING([--with-glib=@<:@no/auto/yes@:>@],
+# [use Glib @<:@default=auto@:>@]))
+#GLIB_PACKAGE=glib-2.0
+#GLIB_MINVERSION=2.4
GLIB_LIBS=
GLIB_CFLAGS=
-if test x$with_glib = xyes; then
- PKG_CHECK_MODULES(GLIB,$GLIB_PACKAGE >= $GLIB_MINVERSION)
- FRIBIDI_USE_GLIB=1
-else
-if test x$with_glib = xno; then
+#if test x$with_glib = xyes; then
+# PKG_CHECK_MODULES(GLIB,$GLIB_PACKAGE >= $GLIB_MINVERSION)
+# FRIBIDI_USE_GLIB=1
+#else
+#if test x$with_glib = xno; then
FRIBIDI_USE_GLIB=0
-else
- PKG_CHECK_MODULES(GLIB,$GLIB_PACKAGE >= $GLIB_MINVERSION,
- FRIBIDI_USE_GLIB=1,
- FRIBIDI_USE_GLIB=0)
-fi
-fi
-if test x$FRIBIDI_USE_GLIB = x0; then
+#else
+# PKG_CHECK_MODULES(GLIB,$GLIB_PACKAGE >= $GLIB_MINVERSION,
+# FRIBIDI_USE_GLIB=1,
+# FRIBIDI_USE_GLIB=0)
+#fi
+#fi
+#if test x$FRIBIDI_USE_GLIB = x0; then
GLIB_PACKAGE=
-fi
+#fi
AC_SUBST(FRIBIDI_USE_GLIB)
AM_CONDITIONAL(FRIBIDI_USE_GLIB, test x$FRIBIDI_USE_GLIB = x1)
-MISC_CFLAGS="$GLIB_CFLAGS"
-MISC_LIBS="$GLIB_LIBS"
-MISC_PACKAGES="$GLIB_PACKAGE"
-AC_SUBST(MISC_CFLAGS)
-AC_SUBST(MISC_LIBS)
-AC_SUBST(MISC_PACKAGES)
+#MISC_CFLAGS="$GLIB_CFLAGS"
+#MISC_LIBS="$GLIB_LIBS"
+#MISC_PACKAGES="$GLIB_PACKAGE"
+#AC_SUBST(MISC_CFLAGS)
+#AC_SUBST(MISC_LIBS)
+#AC_SUBST(MISC_PACKAGES)
# Generate output
AC_CONFIG_FILES([fribidi.pc
--- fribidi.orig/fribidi.pc.in 2008-02-02 23:06:05.000000000 +0000
+++ fribidi/fribidi.pc.in 2008-02-02 23:06:39.000000000 +0000
@@ -7,7 +7,6 @@
Name: @PACKAGE_NAME@
Description: Unicode Bidirectional Algorithm Library
-Requires: @MISC_PACKAGES@
Version: @VERSION@
Libs: -L${libdir} -lfribidi
Cflags: -I${includedir}/@PACKAGE@
--- fribidi.orig/lib/fribidi-common.h 2008-02-04 21:30:46.000000000 +0000
+++ fribidi/lib/fribidi-common.h 2008-02-04 21:32:25.000000000 +0000
@@ -53,11 +53,7 @@
/* FRIBIDI_ENTRY is a macro used to declare library entry points. */
#ifndef FRIBIDI_ENTRY
-# if (defined(WIN32)) || (defined(_WIN32_WCE))
-# define FRIBIDI_ENTRY __declspec(dllimport)
-# else /* !WIN32 */
# define FRIBIDI_ENTRY /* empty */
-# endif /* !WIN32 */
#endif /* !FRIBIDI_ENTRY */
#if FRIBIDI_USE_GLIB+0
--- libgcrypt/Makefile.am.orig 2008-08-19 17:20:08.000000000 +0200
+++ libgcrypt/Makefile.am 2008-10-21 09:57:33.000000000 +0200
@@ -23,7 +23,7 @@
--enable-ciphers=arcfour:blowfish:cast5:des:aes:twofish:serpent:rfc2268:seed:camellia
DIST_SUBDIRS = m4 mpi cipher random src doc tests
-SUBDIRS = mpi cipher random src doc tests
+SUBDIRS = mpi cipher random src
EXTRA_DIST = autogen.sh README.SVN
DISTCLEANFILES =
diff -ur libgcrypt.orig//Makefile.in libgcrypt/Makefile.in
--- libgcrypt.orig//Makefile.in 2011-09-23 01:27:00.000000000 +0200
+++ libgcrypt/Makefile.in 2011-09-23 01:28:03.000000000 +0200
@@ -240,7 +240,7 @@
--enable-ciphers=arcfour:blowfish:cast5:des:aes:twofish:serpent:rfc2268:seed:camellia
DIST_SUBDIRS = m4 mpi cipher random src doc tests
-SUBDIRS = mpi cipher random src doc tests
+SUBDIRS = mpi cipher random src
EXTRA_DIST = autogen.sh README.SVN
DISTCLEANFILES =
all: config.h
--- gettext/gettext-tools/src/msgmerge.c.orig 2007-10-21 03:25:52.000000000 +0200
+++ gettext/gettext-tools/src/msgmerge.c 2008-03-23 19:54:36.000000000 +0100
@@ -96,7 +96,7 @@
/* Update mode. */
static bool update_mode = false;
-static const char *version_control_string;
+static const char *version_control_string = "none";
static const char *backup_suffix_string;
/* Long options. */
--- glew/Makefile 2008-11-03 07:25:21.000000000 +0100
+++ glew.new/Makefile 2009-12-03 22:30:47.000000000 +0100
@@ -31,7 +31,7 @@
include config/version
SHELL = /bin/sh
-SYSTEM = $(shell config/config.guess | cut -d - -f 3 | sed -e 's/[0-9\.]//g;')
+SYSTEM = mingw
SYSTEM.SUPPORTED = $(shell test -f config/Makefile.$(SYSTEM) && echo 1)
ifeq ($(SYSTEM.SUPPORTED), 1)
@@ -48,9 +48,7 @@
TARDIR = ../glew-$(GLEW_VERSION)
TARBALL = ../glew_$(GLEW_VERSION).tar.gz
-AR = ar
INSTALL = install
-STRIP = strip
RM = rm -f
LN = ln -sf
ifeq ($(MAKECMDGOALS), debug)
@@ -75,7 +73,7 @@
VISUALINFO.BIN.OBJS = $(VISUALINFO_BIN.SRCS:.c=.o)
BIN.LIBS = -Llib $(LDFLAGS.DYNAMIC) -l$(NAME) $(LDFLAGS.EXTRA) $(LDFLAGS.GL)
-all debug: lib/$(LIB.SHARED) lib/$(LIB.STATIC) bin/$(GLEWINFO.BIN) bin/$(VISUALINFO.BIN)
+all debug: lib/$(LIB.SHARED) lib/$(LIB.STATIC)
lib:
mkdir lib
@@ -112,27 +110,17 @@
$(INSTALL) -d -m 0755 $(INCDIR)
$(INSTALL) -d -m 0755 $(LIBDIR)
# runtime
-ifeq ($(patsubst mingw%,mingw,$(SYSTEM)), mingw)
- $(STRIP) -x lib/$(LIB.SHARED)
- $(INSTALL) -m 0644 lib/$(LIB.SHARED) $(BINDIR)/
-else
$(STRIP) -x lib/$(LIB.SHARED)
$(INSTALL) -m 0644 lib/$(LIB.SHARED) $(LIBDIR)/
$(LN) $(LIB.SHARED) $(LIBDIR)/$(LIB.SONAME)
-endif
# development files
$(INSTALL) -m 0644 include/GL/wglew.h $(INCDIR)/
$(INSTALL) -m 0644 include/GL/glew.h $(INCDIR)/
$(INSTALL) -m 0644 include/GL/glxew.h $(INCDIR)/
-ifeq ($(patsubst mingw%,mingw,$(SYSTEM)), mingw)
- $(INSTALL) -m 0644 lib/$(LIB.DEVLNK) $(LIBDIR)/
-else
- strip -x lib/$(LIB.STATIC)
+ $(STRIP) -x lib/$(LIB.STATIC)
$(INSTALL) -m 0644 lib/$(LIB.STATIC) $(LIBDIR)/
$(LN) $(LIB.SHARED) $(LIBDIR)/$(LIB.DEVLNK)
-endif
# utilities
- $(INSTALL) -s -m 0755 bin/$(GLEWINFO.BIN) bin/$(VISUALINFO.BIN) $(BINDIR)/
uninstall:
$(RM) $(INCDIR)/wglew.h
--- glew/config/Makefile.mingw 2008-11-03 07:25:20.000000000 +0100
+++ glew.new/config/Makefile.mingw 2009-12-03 22:18:32.000000000 +0100
@@ -1,13 +1,11 @@
NAME = glew32
-CC = gcc
# use gcc for linking, with ld it does not work
-LD = gcc
ifneq (undefined, $(origin GLEW_MX))
CFLAGS.EXTRA = -DGLEW_MX
endif
-CFLAGS.SO = -DGLEW_BUILD
+CFLAGS.SO = -DGLEW_BUILD -DSTATIC
#LDFLAGS.SO = -shared -soname $(LIB.SONAME) --out-implib lib/$(LIB.DEVLNK)
-LDFLAGS.SO = -shared -Wl,-soname,$(LIB.SONAME) -Wl,--out-implib,lib/$(LIB.DEVLNK)
+#LDFLAGS.SO = -shared -Wl,-soname,$(LIB.SONAME) -Wl,--out-implib,lib/$(LIB.DEVLNK)
LDFLAGS.GL = -lglu32 -lopengl32 -lgdi32 -luser32 -lkernel32
LDFLAGS.EXTRA = -L/mingw/lib
WARN = -Wall -W
diff -ur glew.orig//include/GL/glew.h glew/include/GL/glew.h
--- glew.orig//include/GL/glew.h 2011-09-23 01:38:28.524786958 -0400
+++ glew/include/GL/glew.h 2011-09-23 01:45:16.405385194 -0400
@@ -150,7 +150,7 @@
#endif
#if !defined(_PTRDIFF_T_DEFINED) && !defined(_PTRDIFF_T_)
# ifdef _WIN64
-typedef __int64 ptrdiff_t;
+#include <stdint.h>
# else
typedef _W64 int ptrdiff_t;
# endif
--- game-music-emu-0.5.5/gme/CMakeLists.txt 2009-07-13 06:53:08.000000000 +0200
+++ game-music-emu-0.5.5.new/gme/CMakeLists.txt 2010-11-01 14:39:13.570651361 +0100
@@ -148,7 +148,7 @@
include_directories(${CMAKE_CURRENT_BINARY_DIR})
# Add library to be compiled.
-add_library(gme SHARED ${libgme_SRCS})
+add_library(gme STATIC ${libgme_SRCS})
# The version is the release. The "soversion" is the API version. As long
# as only build fixes are performed (i.e. no changes/additions to API) the
@@ -158,6 +158,6 @@
SOVERSION 0)
# TODO: Libsuffix for 64-bit?
-install(TARGETS gme LIBRARY DESTINATION lib)
+install(TARGETS gme ARCHIVE DESTINATION lib)
install(FILES ${EXPORTED_HEADERS} DESTINATION include/gme)
--- gnutls-2.2.5/gl/gai_strerror.c 2008-02-21 08:58:18.000000000 +0100
+++ gnutls/gl/gai_strerror.c 2008-05-22 08:20:56.000000000 +0200
@@ -62,7 +62,7 @@
{ EAI_IDN_ENCODE, N_("Parameter string not correctly encoded") }
#endif
};
-
+#ifndef _WIN32
const char *
gai_strerror (int code)
{
@@ -73,6 +73,7 @@
return _("Unknown error");
}
+#endif
#ifdef _LIBC
libc_hidden_def (gai_strerror)
#endif
diff -Naur goom-origin/src/convolve_fx.c goom/src/convolve_fx.c
--- goom-origin/src/convolve_fx.c 2005-02-07 14:46:42.000000000 +0100
+++ goom/src/convolve_fx.c 2009-03-23 11:16:13.000000000 +0100
@@ -107,7 +107,9 @@
}
static void convolve_free(VisualFX *_this) {
- free (_this->fx_data);
+ ConvData *data = _this->fx_data;
+ free (data->params.params);
+ free (data);
}
static void create_output_with_brightness(VisualFX *_this, Pixel *src, Pixel *dest,
diff -Naur goom-origin/src/filters.c goom/src/filters.c
--- goom-origin/src/filters.c 2005-02-07 14:46:41.000000000 +0100
+++ goom/src/filters.c 2009-03-23 10:46:34.000000000 +0100
@@ -731,6 +731,12 @@
static void zoomFilterVisualFXWrapper_free (struct _VISUAL_FX *_this)
{
+ ZoomFilterFXWrapperData *data = (ZoomFilterFXWrapperData*)_this->fx_data;
+ if (data->brutS) free (data->freebrutS);
+ if (data->brutD) free (data->freebrutD);
+ if (data->brutT) free (data->freebrutT);
+ free (data->firedec);
+ free (data->params.params);
free(_this->fx_data);
}
diff -Naur goom-origin/src/flying_stars_fx.c goom/src/flying_stars_fx.c
--- goom-origin/src/flying_stars_fx.c 2005-02-07 14:46:41.000000000 +0100
+++ goom/src/flying_stars_fx.c 2009-03-23 11:18:57.000000000 +0100
@@ -129,7 +129,10 @@
}
static void fs_free(VisualFX *_this) {
- free (_this->fx_data);
+ FSData *data = (FSData*)_this->fx_data;
+ free (data->stars);
+ free (data->params.params);
+ free (data);
}
diff -Naur goom-origin/src/gfontlib.c goom/src/gfontlib.c
--- goom-origin/src/gfontlib.c 2005-02-07 14:46:41.000000000 +0100
+++ goom/src/gfontlib.c 2009-03-23 09:06:27.000000000 +0100
@@ -126,6 +126,8 @@
small_font_width [32] = font_width [32]/2;
font_chars [32] = 0;
small_font_chars [32] = 0;
+ free( gfont );
+ free( font_pos );
}
void goom_draw_text (Pixel * buf,int resolx,int resoly,
diff -Naur goom-origin/src/goom_core.c goom/src/goom_core.c
--- goom-origin/src/goom_core.c 2005-02-07 14:46:41.000000000 +0100
+++ goom/src/goom_core.c 2009-03-23 11:21:11.000000000 +0100
@@ -765,6 +765,15 @@
goomInfo->star_fx.free(&goomInfo->star_fx);
goomInfo->tentacles_fx.free(&goomInfo->tentacles_fx);
goomInfo->zoomFilter_fx.free(&goomInfo->zoomFilter_fx);
+
+ // Release info visual
+ free (goomInfo->params);
+ free (goomInfo->sound.params.params);
+
+ // Release PluginInfo
+ free (goomInfo->visuals);
+ gsl_free (goomInfo->scanner);
+ gsl_free (goomInfo->main_scanner);
free(goomInfo);
}
diff -Naur goom-origin/src/goomsl.c goom/src/goomsl.c
--- goom-origin/src/goomsl.c 2005-02-07 14:46:41.000000000 +0100
+++ goom/src/goomsl.c 2009-03-23 11:07:25.000000000 +0100
@@ -90,6 +90,7 @@
void iflow_free(InstructionFlow *_this)
{ /* {{{ */
+ free(_this->instr);
goom_hash_free(_this->labels);
free(_this); /*TODO: finir cette fonction */
} /* }}} */
@@ -1422,8 +1423,12 @@
void gsl_free(GoomSL *gss)
{ /* {{{ */
iflow_free(gss->iflow);
- free(gss->vars);
- free(gss->functions);
+ goom_hash_free(gss->vars);
+ goom_hash_free(gss->functions);
+ goom_hash_free(gss->structIDS);
+ free(gss->gsl_struct);
+ goom_heap_delete(gss->data_heap);
+ free(gss->ptrArray);
free(gss);
} /* }}} */
diff -Naur goom-origin/src/lines.c goom/src/lines.c
--- goom-origin/src/lines.c 2005-02-07 14:46:41.000000000 +0100
+++ goom/src/lines.c 2009-03-23 10:28:26.000000000 +0100
@@ -199,6 +199,7 @@
goom_lines_free (GMLine ** l)
{
free ((*l)->points);
+ free ((*l)->points2);
free (*l);
l = NULL;
}
diff -Naur goom-origin/src/tentacle3d.c goom/src/tentacle3d.c
--- goom-origin/src/tentacle3d.c 2005-02-07 14:46:41.000000000 +0100
+++ goom/src/tentacle3d.c 2009-03-23 11:13:38.000000000 +0100
@@ -90,7 +90,9 @@
}
static void tentacle_fx_free(VisualFX *_this) {
- tentacle_free((TentacleFXData*)_this->fx_data);
+ TentacleFXData *data = (TentacleFXData*)_this->fx_data;
+ free(data->params.params);
+ tentacle_free(data);
free(_this->fx_data);
}
@@ -106,6 +108,13 @@
static void tentacle_free (TentacleFXData *data) {
/* TODO : un vrai FREE GRID!! */
+ int tmp;
+ for (tmp=0;tmp<nbgrid;tmp++){
+ grid3d *g = data->grille[tmp];
+ free (g->surf.vertex);
+ free (g->surf.svertex);
+ free (g);
+ }
free (data->vals);
}
diff -ruN goom.orig/src/xmmx.c goom/src/xmmx.c
--- goom.orig/src/xmmx.c 2006-10-01 22:10:15.000000000 +0200
+++ goom/src/xmmx.c 2006-10-01 23:45:59.000000000 +0200
@@ -69,8 +69,8 @@
*/
asm volatile
- ("#1 \n\t movq %[brutS], %%mm0"
- "#1 \n\t movq %[brutD], %%mm1"
+ ("#1 \n\t movq (%[brutS]), %%mm0"
+ "#1 \n\t movq (%[brutD]), %%mm1"
"#1 \n\t psubd %%mm0, %%mm1" /* mm1 = D - S */
"#1 \n\t movq %%mm1, %%mm2" /* mm2 = D - S */
"#1 \n\t pslld $16, %%mm1"
diff -Naur goom-orig/configure.in goom/configure.in
--- goom-orig/configure.in 2005-02-07 14:46:41.000000000 +0100
+++ goom/configure.in 2005-08-26 16:37:03.000000000 +0200
@@ -1,6 +1,5 @@
AC_INIT(README)
-AM_DISABLE_STATIC
AM_INIT_AUTOMAKE(SDL_Goom, 2k4)
ACLOCAL="$ACLOCAL -I m4"
@@ -76,24 +75,7 @@
AM_CONDITIONAL(MACTARGET,test "x$MACTARGET" = "xyes")
-AC_CHECK_HEADER(pthread.h,,AC_MSG_ERROR([*** POSIX thread support not installed - please install first ***]))
-
-PTHREAD_LIBS=error
-AC_CHECK_LIB(pthread, pthread_attr_init, PTHREAD_LIBS="-lpthread")
-
-if test "x$PTHREAD_LIBS" = xerror; then
- AC_CHECK_LIB(pthreads, pthread_attr_init, PTHREAD_LIBS="-lpthreads")
-fi
-
-if test "x$PTHREAD_LIBS" = xerror; then
- AC_CHECK_LIB(c_r, pthread_attr_init, PTHREAD_LIBS="-lc_r")
-fi
-
-if test "x$PTHREAD_LIBS" = xerror; then
- AC_CHECK_FUNC(pthread_attr_init, PTHREAD_LIBS="")
-fi
-
-AC_SUBST(PTHREAD_LIBS)
+dnl AC_SUBST(PTHREAD_LIBS)
dnl rm -f mmx_zoom.s
dnl echo -n checking for nasm...
diff -Naur goom-orig/src/filters.c goom/src/filters.c
--- goom-orig/src/filters.c 2005-02-07 14:46:41.000000000 +0100
+++ goom/src/filters.c 2005-08-26 16:31:17.000000000 +0200
@@ -201,8 +201,8 @@
/* Noise */
if (data->noisify)
{
- vx += (((float)random()) / ((float)RAND_MAX) - 0.5f) / 50.0f;
- vy += (((float)random()) / ((float)RAND_MAX) - 0.5f) / 50.0f;
+ vx += (((float)rand()) / ((float)RAND_MAX) - 0.5f) / 50.0f;
+ vy += (((float)rand()) / ((float)RAND_MAX) - 0.5f) / 50.0f;
}
/* Hypercos */
diff -Naur goom-orig/src/goom_core.c goom/src/goom_core.c
--- goom-orig/src/goom_core.c 2005-02-07 14:46:41.000000000 +0100
+++ goom/src/goom_core.c 2005-08-26 16:33:01.000000000 +0200
@@ -40,11 +40,11 @@
static void init_buffers(PluginInfo *goomInfo, int buffsize)
{
goomInfo->pixel = (guint32 *) malloc (buffsize * sizeof (guint32) + 128);
- bzero (goomInfo->pixel, buffsize * sizeof (guint32) + 128);
+ memset (goomInfo->pixel, 0, buffsize * sizeof (guint32) + 128);
goomInfo->back = (guint32 *) malloc (buffsize * sizeof (guint32) + 128);
- bzero (goomInfo->back, buffsize * sizeof (guint32) + 128);
+ memset (goomInfo->back, 0, buffsize * sizeof (guint32) + 128);
goomInfo->conv = (Pixel *) malloc (buffsize * sizeof (guint32) + 128);
- bzero (goomInfo->conv, buffsize * sizeof (guint32) + 128);
+ memset (goomInfo->conv, 0, buffsize * sizeof (guint32) + 128);
goomInfo->outputBuf = goomInfo->conv;
--- goom/src/Makefile.am 2005-02-07 14:46:41.000000000 +0100
+++ goom.new/src/Makefile.am 2009-08-19 09:21:57.000000000 +0200
@@ -16,7 +16,7 @@
goom2_libdir = $(libdir)
goom2_library_includedir=$(includedir)/goom
-goom2_library_include_HEADERS = goom.h goom_plugin_info.h goom_typedefs.h goom_graphic.h goom_config_param.h goom_visual_fx.h goom_filters.h goom_tools.h goomsl.h goomsl_hash.h goomsl_heap.h goom_tools.h goom_config.h
+goom2_library_include_HEADERS = goom.h goom_plugin_info.h goom_typedefs.h goom_graphic.h goom_config_param.h goom_visual_fx.h goom_filters.h goom_tools.h goomsl.h goomsl_hash.h goomsl_heap.h goom_config.h
libgoom2_la_LDFLAGS = -export-dynamic -export-symbols-regex "goom.*"
libgoom2_la_SOURCES = \
goomsl_yacc.y goomsl_lex.l goomsl.c goomsl_hash.c goomsl_heap.c \
--- goom/Makefile.am.orig 2010-10-31 21:43:45.514184001 +0100
+++ goom/Makefile.am 2010-10-31 21:44:01.382194251 +0100
@@ -1,3 +1,4 @@
+ACLOCAL_AMFLAGS = -I m4
SUBDIRS = src xmms-goom sdl-goom @MACFOLDER@
#.pc file
--- goom/src/plugin_info.c 2005-02-07 14:46:41.000000000 +0100
+++ goom.new/src/plugin_info.c 2011-01-23 15:37:37.524184437 +0100
@@ -31,6 +31,7 @@
/* p->methods.create_output_with_brightness = create_output_with_brightness;*/
#ifdef CPU_X86
+#if 0
if (cpuFlavour & CPU_OPTION_XMMX) {
#ifdef VERBOSE
printf ("Extented MMX detected. Using the fastest methods !\n");
@@ -38,7 +39,8 @@
p->methods.draw_line = draw_line_mmx;
p->methods.zoom_filter = zoom_filter_xmmx;
}
- else if (cpuFlavour & CPU_OPTION_MMX) {
+#endif
+ if (cpuFlavour & CPU_OPTION_MMX) {
#ifdef VERBOSE
printf ("MMX detected. Using fast methods !\n");
#endif
--- goom/configure.in.orig 2010-11-01 00:05:11.000000000 +0100
+++ goom/configure.in 2010-11-01 00:05:16.000000000 +0100
@@ -43,8 +43,6 @@
dnl HOST
case "$host" in
*-apple-darwin*)
- MACTARGET="yes"
- MACFOLDER="mac"
AC_SUBST(MACFOLDER)
CCAS='$(CC)'
AC_SUBST(CCAS)
--- goom/xmms-goom/Makefile.am 2005-02-07 22:46:42.000000000 +0900
+++ goom.new/xmms-goom/Makefile.am 2011-04-16 02:03:15.420291009 +0900
@@ -2,7 +2,7 @@
if HAVE_XMMS
xmms_lib_LTLIBRARIES = libxmmsgoom2.la
-xmms_libdir = $(XMMS_VISUALIZATION_PLUGIN_DIR)
+xmms_libdir = $(libdir)
libxmmsgoom2_la_LIBADD = $(top_builddir)/src/libgoom2.la $(XMMS_LIBS)
libxmmsgoom2_la_SOURCES = xmms_goom.c
INCLUDES=-DDATADIR=\"@XMMS_DATA_DIR@\" @XMMS_CFLAGS@ -Wall -I../src/
diff -ruN gsm/Makefile gsm.new/Makefile
--- gsm/Makefile 2006-04-26 21:14:26.000000000 +0200
+++ gsm.new/Makefile 2009-03-29 20:12:39.000000000 +0200
@@ -43,10 +43,8 @@
# CC = /usr/lang/acc
# CCFLAGS = -c -O
-CC = gcc -ansi -pedantic
CCFLAGS = -c -O2 -DNeedFunctionPrototypes=1
-LD = $(CC)
# LD = gcc
# LDFLAGS =
@@ -98,14 +96,11 @@
SHELL = /bin/sh
LN = ln
BASENAME = basename
-AR = ar
ARFLAGS = cr
RMFLAGS =
FIND = find
COMPRESS = compress
COMPRESSFLAGS =
-# RANLIB = true
-RANLIB = ranlib
#
# You shouldn't have to configure below this line if you're porting.
@@ -279,7 +274,7 @@
# Target rules
-all: $(LIBGSM) $(TOAST) $(TCAT) $(UNTOAST)
+all: $(LIBGSM)
@-echo $(ROOT): Done.
tst: $(TST)/lin2cod $(TST)/cod2lin $(TOAST) $(TST)/test-result
--- lame/libmp3lame/vbrquantize.c.orig 2011-11-03 10:26:28.414360800 -0400
+++ lame/libmp3lame/vbrquantize.c 2011-11-03 10:26:30.478371043 -0400
@@ -81,6 +81,11 @@
#define FORCEINLINE
#endif
+#ifdef WIN64
+#undef FORCEINLINE
+#define FORCEINLINE __inline__ __attribute__((always_inline))
+#endif
+
typedef VOLATILE union {
float f;
int i;
--- flac/src/libFLAC/flac.pc.in 2007-02-07 02:07:32.000000000 +0100
+++ flac.new/src/libFLAC/flac.pc.in 2011-06-10 17:53:44.337825845 +0200
@@ -6,5 +6,6 @@
Name: FLAC
Description: Free Lossless Audio Codec Library
Version: @VERSION@
-Libs: -L${libdir} -lFLAC -lm
+Libs: -L${libdir} -lFLAC -logg -lm
Cflags: -I${includedir}/FLAC
+Requires.private: ogg
diff -ruN liba52.orig/a52_internal.h liba52/a52_internal.h
--- liba52.orig/a52_internal.h 2002-07-28 03:52:06.000000000 +0200
+++ liba52/a52_internal.h 2008-07-23 14:03:02.000000000 +0200
@@ -1,6 +1,6 @@
/*
* a52_internal.h
- * Copyright (C) 2000-2002 Michel Lespinasse <walken@zoy.org>
+ * Copyright (C) 2000-2003 Michel Lespinasse <walken@zoy.org>
* Copyright (C) 1999-2000 Aaron Holtzman <aholtzma@ess.engr.uvic.ca>
*
* This file is part of a52dec, a free ATSC A-52 stream decoder.
@@ -37,24 +37,24 @@
uint8_t halfrate; /* halfrate factor */
uint8_t acmod; /* coded channels */
uint8_t lfeon; /* coded lfe channel */
- sample_t clev; /* centre channel mix level */
- sample_t slev; /* surround channels mix level */
+ level_t clev; /* centre channel mix level */
+ level_t slev; /* surround channels mix level */
int output; /* type of output */
- sample_t level; /* output level */
+ level_t level; /* output level */
sample_t bias; /* output bias */
int dynrnge; /* apply dynamic range */
- sample_t dynrng; /* dynamic range */
+ level_t dynrng; /* dynamic range */
void * dynrngdata; /* dynamic range callback funtion and data */
- sample_t (* dynrngcall) (sample_t range, void * dynrngdata);
+ level_t (* dynrngcall) (level_t range, void * dynrngdata);
uint8_t chincpl; /* channel coupled */
uint8_t phsflginu; /* phase flags in use (stereo only) */
uint8_t cplstrtmant; /* coupling channel start mantissa */
uint8_t cplendmant; /* coupling channel end mantissa */
uint32_t cplbndstrc; /* coupling band structure */
- sample_t cplco[5][18]; /* coupling coordinates */
+ level_t cplco[5][18]; /* coupling coordinates */
/* derived information */
uint8_t cplstrtbnd; /* coupling start band (for bit allocation) */
@@ -107,14 +107,79 @@
int start, int end, int fastleak, int slowleak,
expbap_t * expbap);
-int a52_downmix_init (int input, int flags, sample_t * level,
- sample_t clev, sample_t slev);
-int a52_downmix_coeff (sample_t * coeff, int acmod, int output, sample_t level,
- sample_t clev, sample_t slev);
+int a52_downmix_init (int input, int flags, level_t * level,
+ level_t clev, level_t slev);
+int a52_downmix_coeff (level_t * coeff, int acmod, int output, level_t level,
+ level_t clev, level_t slev);
void a52_downmix (sample_t * samples, int acmod, int output, sample_t bias,
- sample_t clev, sample_t slev);
+ level_t clev, level_t slev);
void a52_upmix (sample_t * samples, int acmod, int output);
void a52_imdct_init (uint32_t mm_accel);
void a52_imdct_256 (sample_t * data, sample_t * delay, sample_t bias);
void a52_imdct_512 (sample_t * data, sample_t * delay, sample_t bias);
+
+#define ROUND(x) ((int)((x) + ((x) > 0 ? 0.5 : -0.5)))
+
+#ifndef LIBA52_FIXED
+
+typedef sample_t quantizer_t;
+#define SAMPLE(x) (x)
+#define LEVEL(x) (x)
+#define MUL(a,b) ((a) * (b))
+#define MUL_L(a,b) ((a) * (b))
+#define MUL_C(a,b) ((a) * (b))
+#define DIV(a,b) ((a) / (b))
+#define BIAS(x) ((x) + bias)
+
+#else /* LIBA52_FIXED */
+
+typedef int16_t quantizer_t;
+#define SAMPLE(x) (sample_t)((x) * (1 << 30))
+#define LEVEL(x) (level_t)((x) * (1 << 26))
+
+#if 0
+#define MUL(a,b) ((int)(((int64_t)(a) * (b) + (1 << 29)) >> 30))
+#define MUL_L(a,b) ((int)(((int64_t)(a) * (b) + (1 << 25)) >> 26))
+#elif defined(CPU_COLDFIRE)
+/* loses 1 bit of accuracy */
+#define MUL(a, b) \
+({ \
+ int32_t t; \
+ asm volatile ( \
+ "mac.l %[A], %[B], %%acc0\n\t" \
+ "movclr.l %%acc0, %[t]\n\t" \
+ "asl.l #1, %[t]" \
+ : [t] "=d" (t) \
+ : [A] "r" ((a)), [B] "r" ((b))); \
+ t; \
+})
+/* loses 5 bits of accuracy */
+#define MUL_L(a, b) \
+({ \
+ int32_t t; \
+ asm volatile ( \
+ "mac.l %[A], %[B], %%acc0\n\t" \
+ "movclr.l %%acc0, %[t]\n\t" \
+ "asl.l #5, %[t]" \
+ : [t] "=d" (t) \
+ : [A] "r" ((a)), [B] "r" ((b))); \
+ t; \
+})
+#elif 1
+#define MUL(a,b) \
+({ int32_t _ta=(a), _tb=(b), _tc; \
+ _tc=(_ta & 0xffff)*(_tb >> 16)+(_ta >> 16)*(_tb & 0xffff); (int32_t)(((_tc >> 14))+ (((_ta >> 16)*(_tb >> 16)) << 2 )); })
+#define MUL_L(a,b) \
+({ int32_t _ta=(a), _tb=(b), _tc; \
+ _tc=(_ta & 0xffff)*(_tb >> 16)+(_ta >> 16)*(_tb & 0xffff); (int32_t)((_tc >> 10) + (((_ta >> 16)*(_tb >> 16)) << 6)); })
+#else
+#define MUL(a,b) (((a) >> 15) * ((b) >> 15))
+#define MUL_L(a,b) (((a) >> 13) * ((b) >> 13))
+#endif
+
+#define MUL_C(a,b) MUL_L (a, LEVEL (b))
+#define DIV(a,b) ((((int64_t)LEVEL (a)) << 26) / (b))
+#define BIAS(x) ((x) + (bias*0))
+
+#endif
diff -ruN liba52.orig/bit_allocate.c liba52/bit_allocate.c
--- liba52.orig/bit_allocate.c 2002-02-19 07:20:20.000000000 +0100
+++ liba52/bit_allocate.c 2008-07-23 14:03:01.000000000 +0200
@@ -1,6 +1,6 @@
/*
* bit_allocate.c
- * Copyright (C) 2000-2002 Michel Lespinasse <walken@zoy.org>
+ * Copyright (C) 2000-2003 Michel Lespinasse <walken@zoy.org>
* Copyright (C) 1999-2000 Aaron Holtzman <aholtzma@ess.engr.uvic.ca>
*
* This file is part of a52dec, a free ATSC A-52 stream decoder.
@@ -21,14 +21,14 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
-#include "config.h"
+#include "config-a52.h"
#include <inttypes.h>
#include "a52.h"
#include "a52_internal.h"
-static int hthtab[3][50] = {
+static int hthtab[3][50] IDATA_ATTR = {
{0x730, 0x730, 0x7c0, 0x800, 0x820, 0x840, 0x850, 0x850, 0x860, 0x860,
0x860, 0x860, 0x860, 0x870, 0x870, 0x870, 0x880, 0x880, 0x890, 0x890,
0x8a0, 0x8a0, 0x8b0, 0x8b0, 0x8c0, 0x8c0, 0x8d0, 0x8e0, 0x8f0, 0x900,
@@ -46,7 +46,7 @@
0x8d0, 0x8b0, 0x840, 0x7f0, 0x790, 0x760, 0x7a0, 0x7c0, 0x7b0, 0x720}
};
-static int8_t baptab[305] = {
+static int8_t baptab[305] IDATA_ATTR = {
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
@@ -71,11 +71,11 @@
0, 0, 0, 0 /* 148 padding elems */
};
-static int bndtab[30] = {21, 22, 23, 24, 25, 26, 27, 28, 31, 34,
+static int bndtab[30] IDATA_ATTR = {21, 22, 23, 24, 25, 26, 27, 28, 31, 34,
37, 40, 43, 46, 49, 55, 61, 67, 73, 79,
85, 97, 109, 121, 133, 157, 181, 205, 229, 253};
-static int8_t latab[256] = {
+static int8_t latab[256] IDATA_ATTR = {
-64, -63, -62, -61, -60, -59, -58, -57, -56, -55, -54, -53,
-52, -52, -51, -50, -49, -48, -47, -47, -46, -45, -44, -44,
-43, -42, -41, -41, -40, -39, -38, -38, -37, -36, -36, -35,
@@ -231,7 +231,7 @@
int startband, endband;
startband = j;
- endband = ((bndtab-20)[i] < end) ? (bndtab-20)[i] : end;
+ endband = (bndtab[i-20] < end) ? bndtab[i-20] : end;
psd = 128 * exp[j++];
while (j < endband) {
int next, delta;
diff -ruN liba52.orig/bitstream.c liba52/bitstream.c
--- liba52.orig/bitstream.c 2002-07-28 03:52:06.000000000 +0200
+++ liba52/bitstream.c 2008-07-23 14:03:01.000000000 +0200
@@ -1,6 +1,6 @@
/*
* bitstream.c
- * Copyright (C) 2000-2002 Michel Lespinasse <walken@zoy.org>
+ * Copyright (C) 2000-2003 Michel Lespinasse <walken@zoy.org>
* Copyright (C) 1999-2000 Aaron Holtzman <aholtzma@ess.engr.uvic.ca>
*
* This file is part of a52dec, a free ATSC A-52 stream decoder.
@@ -21,7 +21,7 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
-#include "config.h"
+#include "config-a52.h"
#include <inttypes.h>
@@ -38,7 +38,9 @@
align = (long)buf & 3;
state->buffer_start = (uint32_t *) (buf - align);
state->bits_left = 0;
+ state->current_word = 0;
bitstream_get (state, align * 8);
+ bitstream_get_2 (state, 0); /* pretend function is used - keep gcc happy */
}
static inline void bitstream_fill_current (a52_state_t * state)
diff -ruN liba52.orig/bitstream.h liba52/bitstream.h
--- liba52.orig/bitstream.h 2002-07-28 03:52:07.000000000 +0200
+++ liba52/bitstream.h 2008-07-23 14:03:02.000000000 +0200
@@ -1,6 +1,6 @@
/*
* bitstream.h
- * Copyright (C) 2000-2002 Michel Lespinasse <walken@zoy.org>
+ * Copyright (C) 2000-2003 Michel Lespinasse <walken@zoy.org>
* Copyright (C) 1999-2000 Aaron Holtzman <aholtzma@ess.engr.uvic.ca>
*
* This file is part of a52dec, a free ATSC A-52 stream decoder.
@@ -21,29 +21,29 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
-/* (stolen from the kernel) */
+//#define swab32(x) (betoh32(x))
#ifdef WORDS_BIGENDIAN
-# define swab32(x) (x)
+# define swab32(x) (x)
#else
-# if 0 && defined (__i386__)
+# if defined (__i386__)
-# define swab32(x) __i386_swab32(x)
- static inline const uint32_t __i386_swab32(uint32_t x)
- {
- __asm__("bswap %0" : "=r" (x) : "0" (x));
- return x;
- }
+# define swab32(x) __i386_swab32(x)
+ static inline const uint32_t __i386_swab32(uint32_t x)
+ {
+ __asm__("bswap %0" : "=r" (x) : "0" (x));
+ return x;
+ }
-# else
+# else
-# define swab32(x)\
+# define swab32(x)\
((((uint8_t*)&x)[0] << 24) | (((uint8_t*)&x)[1] << 16) | \
(((uint8_t*)&x)[2] << 8) | (((uint8_t*)&x)[3]))
-# endif
+# endif
#endif
void a52_bitstream_set_ptr (a52_state_t * state, uint8_t * buf);
diff -ruN liba52.orig/config-a52.h liba52/config-a52.h
--- liba52.orig/config-a52.h 1970-01-01 01:00:00.000000000 +0100
+++ liba52/config-a52.h 2008-07-23 14:03:01.000000000 +0200
@@ -0,0 +1,26 @@
+#define IDATA_ATTR
+#define IBSS_ATTR
+/* a52dec profiling */
+/* #undef A52DEC_GPROF */
+
+/* Define to 1 if you have the `memalign' function. */
+/* #undef HAVE_MEMALIGN 1 */
+
+/* liba52 djbfft support */
+/* #undef LIBA52_DJBFFT */
+
+/* a52 sample precision */
+/* #undef LIBA52_DOUBLE */
+
+/* use fixed-point arithmetic */
+#define LIBA52_FIXED
+
+/* Define to 1 if your processor stores words with the most significant byte
+ first (like Motorola and SPARC, unlike Intel and VAX). */
+
+/* Used in bitstream.h */
+
+#ifdef ROCKBOX_BIG_ENDIAN
+#define WORDS_BIGENDIAN 1
+#endif
+
diff -ruN liba52.orig/downmix.c liba52/downmix.c
--- liba52.orig/downmix.c 2002-01-28 06:37:54.000000000 +0100
+++ liba52/downmix.c 2008-07-23 14:03:02.000000000 +0200
@@ -1,6 +1,6 @@
/*
* downmix.c
- * Copyright (C) 2000-2002 Michel Lespinasse <walken@zoy.org>
+ * Copyright (C) 2000-2003 Michel Lespinasse <walken@zoy.org>
* Copyright (C) 1999-2000 Aaron Holtzman <aholtzma@ess.engr.uvic.ca>
*
* This file is part of a52dec, a free ATSC A-52 stream decoder.
@@ -21,7 +21,7 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
-#include "config.h"
+#include "config-a52.h"
#include <string.h>
#include <inttypes.h>
@@ -31,8 +31,8 @@
#define CONVERT(acmod,output) (((output) << 3) + (acmod))
-int a52_downmix_init (int input, int flags, sample_t * level,
- sample_t clev, sample_t slev)
+int a52_downmix_init (int input, int flags, level_t * level,
+ level_t clev, level_t slev)
{
static uint8_t table[11][8] = {
{A52_CHANNEL, A52_DOLBY, A52_STEREO, A52_STEREO,
@@ -66,94 +66,106 @@
output = table[output][input & 7];
- if ((output == A52_STEREO) &&
- ((input == A52_DOLBY) || ((input == A52_3F) && (clev == LEVEL_3DB))))
+ if (output == A52_STEREO &&
+ (input == A52_DOLBY || (input == A52_3F && clev == LEVEL (LEVEL_3DB))))
output = A52_DOLBY;
- if (flags & A52_ADJUST_LEVEL)
+ if (flags & A52_ADJUST_LEVEL) {
+ level_t adjust;
+
switch (CONVERT (input & 7, output)) {
case CONVERT (A52_3F, A52_MONO):
- *level *= LEVEL_3DB / (1 + clev);
+ adjust = DIV (LEVEL_3DB, LEVEL (1) + clev);
break;
case CONVERT (A52_STEREO, A52_MONO):
case CONVERT (A52_2F2R, A52_2F1R):
case CONVERT (A52_3F2R, A52_3F1R):
level_3db:
- *level *= LEVEL_3DB;
+ adjust = LEVEL (LEVEL_3DB);
break;
case CONVERT (A52_3F2R, A52_2F1R):
- if (clev < LEVEL_PLUS3DB - 1)
+ if (clev < LEVEL (LEVEL_PLUS3DB - 1))
goto level_3db;
/* break thru */
case CONVERT (A52_3F, A52_STEREO):
case CONVERT (A52_3F1R, A52_2F1R):
case CONVERT (A52_3F1R, A52_2F2R):
case CONVERT (A52_3F2R, A52_2F2R):
- *level /= 1 + clev;
+ adjust = DIV (1, LEVEL (1) + clev);
break;
case CONVERT (A52_2F1R, A52_MONO):
- *level *= LEVEL_PLUS3DB / (2 + slev);
+ adjust = DIV (LEVEL_PLUS3DB, LEVEL (2) + slev);
break;
case CONVERT (A52_2F1R, A52_STEREO):
case CONVERT (A52_3F1R, A52_3F):
- *level /= 1 + slev * LEVEL_3DB;
+ adjust = DIV (1, LEVEL (1) + MUL_C (slev, LEVEL_3DB));
break;
case CONVERT (A52_3F1R, A52_MONO):
- *level *= LEVEL_3DB / (1 + clev + 0.5 * slev);
+ adjust = DIV (LEVEL_3DB, LEVEL (1) + clev + MUL_C (slev, 0.5));
break;
case CONVERT (A52_3F1R, A52_STEREO):
- *level /= 1 + clev + slev * LEVEL_3DB;
+ adjust = DIV (1, LEVEL (1) + clev + MUL_C (slev, LEVEL_3DB));
break;
case CONVERT (A52_2F2R, A52_MONO):
- *level *= LEVEL_3DB / (1 + slev);
+ adjust = DIV (LEVEL_3DB, LEVEL (1) + slev);
break;
case CONVERT (A52_2F2R, A52_STEREO):
case CONVERT (A52_3F2R, A52_3F):
- *level /= 1 + slev;
+ adjust = DIV (1, LEVEL (1) + slev);
break;
case CONVERT (A52_3F2R, A52_MONO):
- *level *= LEVEL_3DB / (1 + clev + slev);
+ adjust = DIV (LEVEL_3DB, LEVEL (1) + clev + slev);
break;
case CONVERT (A52_3F2R, A52_STEREO):
- *level /= 1 + clev + slev;
+ adjust = DIV (1, LEVEL (1) + clev + slev);
break;
case CONVERT (A52_MONO, A52_DOLBY):
- *level *= LEVEL_PLUS3DB;
+ adjust = LEVEL (LEVEL_PLUS3DB);
break;
case CONVERT (A52_3F, A52_DOLBY):
case CONVERT (A52_2F1R, A52_DOLBY):
- *level *= 1 / (1 + LEVEL_3DB);
+ adjust = LEVEL (1 / (1 + LEVEL_3DB));
break;
case CONVERT (A52_3F1R, A52_DOLBY):
case CONVERT (A52_2F2R, A52_DOLBY):
- *level *= 1 / (1 + 2 * LEVEL_3DB);
+ adjust = LEVEL (1 / (1 + 2 * LEVEL_3DB));
break;
case CONVERT (A52_3F2R, A52_DOLBY):
- *level *= 1 / (1 + 3 * LEVEL_3DB);
+ adjust = LEVEL (1 / (1 + 3 * LEVEL_3DB));
break;
+
+ default:
+ return output;
}
+ *level = MUL_L (*level, adjust);
+ }
+
return output;
}
-int a52_downmix_coeff (sample_t * coeff, int acmod, int output, sample_t level,
- sample_t clev, sample_t slev)
+int a52_downmix_coeff (level_t * coeff, int acmod, int output, level_t level,
+ level_t clev, level_t slev)
{
+ level_t level_3db;
+
+ level_3db = MUL_C (level, LEVEL_3DB);
+
switch (CONVERT (acmod, output & A52_CHANNEL_MASK)) {
case CONVERT (A52_CHANNEL, A52_CHANNEL):
@@ -169,120 +181,138 @@
return 0;
case CONVERT (A52_CHANNEL, A52_MONO):
- coeff[0] = coeff[1] = level * LEVEL_6DB;
+ coeff[0] = coeff[1] = MUL_C (level, LEVEL_6DB);
return 3;
case CONVERT (A52_STEREO, A52_MONO):
- coeff[0] = coeff[1] = level * LEVEL_3DB;
+ coeff[0] = coeff[1] = level_3db;
return 3;
case CONVERT (A52_3F, A52_MONO):
- coeff[0] = coeff[2] = level * LEVEL_3DB;
- coeff[1] = level * clev * LEVEL_PLUS3DB;
+ coeff[0] = coeff[2] = level_3db;
+ coeff[1] = MUL_C (MUL_L (level_3db, clev), LEVEL_PLUS6DB);
return 7;
case CONVERT (A52_2F1R, A52_MONO):
- coeff[0] = coeff[1] = level * LEVEL_3DB;
- coeff[2] = level * slev * LEVEL_3DB;
+ coeff[0] = coeff[1] = level_3db;
+ coeff[2] = MUL_L (level_3db, slev);
return 7;
case CONVERT (A52_2F2R, A52_MONO):
- coeff[0] = coeff[1] = level * LEVEL_3DB;
- coeff[2] = coeff[3] = level * slev * LEVEL_3DB;
+ coeff[0] = coeff[1] = level_3db;
+ coeff[2] = coeff[3] = MUL_L (level_3db, slev);
return 15;
case CONVERT (A52_3F1R, A52_MONO):
- coeff[0] = coeff[2] = level * LEVEL_3DB;
- coeff[1] = level * clev * LEVEL_PLUS3DB;
- coeff[3] = level * slev * LEVEL_3DB;
+ coeff[0] = coeff[2] = level_3db;
+ coeff[1] = MUL_C (MUL_L (level_3db, clev), LEVEL_PLUS6DB);
+ coeff[3] = MUL_L (level_3db, slev);
return 15;
case CONVERT (A52_3F2R, A52_MONO):
- coeff[0] = coeff[2] = level * LEVEL_3DB;
- coeff[1] = level * clev * LEVEL_PLUS3DB;
- coeff[3] = coeff[4] = level * slev * LEVEL_3DB;
+ coeff[0] = coeff[2] = level_3db;
+ coeff[1] = MUL_C (MUL_L (level_3db, clev), LEVEL_PLUS6DB);
+ coeff[3] = coeff[4] = MUL_L (level_3db, slev);
return 31;
case CONVERT (A52_MONO, A52_DOLBY):
- coeff[0] = level * LEVEL_3DB;
+ coeff[0] = level_3db;
return 0;
case CONVERT (A52_3F, A52_DOLBY):
- clev = LEVEL_3DB;
+ coeff[0] = coeff[2] = coeff[3] = coeff[4] = level;
+ coeff[1] = level_3db;
+ return 7;
+
case CONVERT (A52_3F, A52_STEREO):
case CONVERT (A52_3F1R, A52_2F1R):
case CONVERT (A52_3F2R, A52_2F2R):
coeff[0] = coeff[2] = coeff[3] = coeff[4] = level;
- coeff[1] = level * clev;
+ coeff[1] = MUL_L (level, clev);
return 7;
case CONVERT (A52_2F1R, A52_DOLBY):
- slev = 1;
+ coeff[0] = coeff[1] = level;
+ coeff[2] = level_3db;
+ return 7;
+
case CONVERT (A52_2F1R, A52_STEREO):
coeff[0] = coeff[1] = level;
- coeff[2] = level * slev * LEVEL_3DB;
+ coeff[2] = MUL_L (level_3db, slev);
return 7;
case CONVERT (A52_3F1R, A52_DOLBY):
- clev = LEVEL_3DB;
- slev = 1;
+ coeff[0] = coeff[2] = level;
+ coeff[1] = coeff[3] = level_3db;
+ return 15;
+
case CONVERT (A52_3F1R, A52_STEREO):
coeff[0] = coeff[2] = level;
- coeff[1] = level * clev;
- coeff[3] = level * slev * LEVEL_3DB;
+ coeff[1] = MUL_L (level, clev);
+ coeff[3] = MUL_L (level_3db, slev);
return 15;
case CONVERT (A52_2F2R, A52_DOLBY):
- slev = LEVEL_3DB;
+ coeff[0] = coeff[1] = level;
+ coeff[2] = coeff[3] = level_3db;
+ return 15;
+
case CONVERT (A52_2F2R, A52_STEREO):
coeff[0] = coeff[1] = level;
- coeff[2] = coeff[3] = level * slev;
+ coeff[2] = coeff[3] = MUL_L (level, slev);
return 15;
case CONVERT (A52_3F2R, A52_DOLBY):
- clev = LEVEL_3DB;
+ coeff[0] = coeff[2] = level;
+ coeff[1] = coeff[3] = coeff[4] = level_3db;
+ return 31;
+
case CONVERT (A52_3F2R, A52_2F1R):
- slev = LEVEL_3DB;
+ coeff[0] = coeff[2] = level;
+ coeff[1] = MUL_L (level, clev);
+ coeff[3] = coeff[4] = level_3db;
+ return 31;
+
case CONVERT (A52_3F2R, A52_STEREO):
coeff[0] = coeff[2] = level;
- coeff[1] = level * clev;
- coeff[3] = coeff[4] = level * slev;
+ coeff[1] = MUL_L (level, clev);
+ coeff[3] = coeff[4] = MUL_L (level, slev);
return 31;
case CONVERT (A52_3F1R, A52_3F):
coeff[0] = coeff[1] = coeff[2] = level;
- coeff[3] = level * slev * LEVEL_3DB;
+ coeff[3] = MUL_L (level_3db, slev);
return 13;
case CONVERT (A52_3F2R, A52_3F):
coeff[0] = coeff[1] = coeff[2] = level;
- coeff[3] = coeff[4] = level * slev;
+ coeff[3] = coeff[4] = MUL_L (level, slev);
return 29;
case CONVERT (A52_2F2R, A52_2F1R):
coeff[0] = coeff[1] = level;
- coeff[2] = coeff[3] = level * LEVEL_3DB;
+ coeff[2] = coeff[3] = level_3db;
return 12;
case CONVERT (A52_3F2R, A52_3F1R):
coeff[0] = coeff[1] = coeff[2] = level;
- coeff[3] = coeff[4] = level * LEVEL_3DB;
+ coeff[3] = coeff[4] = level_3db;
return 24;
case CONVERT (A52_2F1R, A52_2F2R):
coeff[0] = coeff[1] = level;
- coeff[2] = level * LEVEL_3DB;
+ coeff[2] = level_3db;
return 0;
case CONVERT (A52_3F1R, A52_2F2R):
coeff[0] = coeff[2] = level;
- coeff[1] = level * clev;
- coeff[3] = level * LEVEL_3DB;
+ coeff[1] = MUL_L (level, clev);
+ coeff[3] = level_3db;
return 7;
case CONVERT (A52_3F1R, A52_3F2R):
coeff[0] = coeff[1] = coeff[2] = level;
- coeff[3] = level * LEVEL_3DB;
+ coeff[3] = level_3db;
return 0;
case CONVERT (A52_CHANNEL, A52_CHANNEL1):
@@ -304,7 +334,7 @@
int i;
for (i = 0; i < 256; i++)
- dest[i] += src[i] + bias;
+ dest[i] += BIAS (src[i]);
}
static void mix3to1 (sample_t * samples, sample_t bias)
@@ -312,7 +342,7 @@
int i;
for (i = 0; i < 256; i++)
- samples[i] += samples[i + 256] + samples[i + 512] + bias;
+ samples[i] += BIAS (samples[i + 256] + samples[i + 512]);
}
static void mix4to1 (sample_t * samples, sample_t bias)
@@ -320,8 +350,8 @@
int i;
for (i = 0; i < 256; i++)
- samples[i] += (samples[i + 256] + samples[i + 512] +
- samples[i + 768] + bias);
+ samples[i] += BIAS (samples[i + 256] + samples[i + 512] +
+ samples[i + 768]);
}
static void mix5to1 (sample_t * samples, sample_t bias)
@@ -329,8 +359,8 @@
int i;
for (i = 0; i < 256; i++)
- samples[i] += (samples[i + 256] + samples[i + 512] +
- samples[i + 768] + samples[i + 1024] + bias);
+ samples[i] += BIAS (samples[i + 256] + samples[i + 512] +
+ samples[i + 768] + samples[i + 1024]);
}
static void mix3to2 (sample_t * samples, sample_t bias)
@@ -339,7 +369,7 @@
sample_t common;
for (i = 0; i < 256; i++) {
- common = samples[i + 256] + bias;
+ common = BIAS (samples[i + 256]);
samples[i] += common;
samples[i + 256] = samples[i + 512] + common;
}
@@ -351,7 +381,7 @@
sample_t common;
for (i = 0; i < 256; i++) {
- common = right[i + 256] + bias;
+ common = BIAS (right[i + 256]);
left[i] += common;
right[i] += common;
}
@@ -364,8 +394,8 @@
for (i = 0; i < 256; i++) {
surround = samples[i + 512];
- samples[i] += bias - surround;
- samples[i + 256] += bias + surround;
+ samples[i] += BIAS (-surround);
+ samples[i + 256] += BIAS (surround);
}
}
@@ -375,7 +405,7 @@
sample_t common;
for (i = 0; i < 256; i++) {
- common = samples[i + 256] + samples[i + 768] + bias;
+ common = BIAS (samples[i + 256] + samples[i + 768]);
samples[i] += common;
samples[i + 256] = samples[i + 512] + common;
}
@@ -387,7 +417,7 @@
sample_t common, surround;
for (i = 0; i < 256; i++) {
- common = samples[i + 256] + bias;
+ common = BIAS (samples[i + 256]);
surround = samples[i + 768];
samples[i] += common - surround;
samples[i + 256] = samples[i + 512] + common + surround;
@@ -401,8 +431,8 @@
for (i = 0; i < 256; i++) {
surround = samples[i + 512] + samples[i + 768];
- samples[i] += bias - surround;
- samples[i + 256] += bias + surround;
+ samples[i] += BIAS (-surround);
+ samples[i + 256] += BIAS (surround);
}
}
@@ -412,7 +442,7 @@
sample_t common;
for (i = 0; i < 256; i++) {
- common = samples[i + 256] + bias;
+ common = BIAS (samples[i + 256]);
samples[i] += common + samples[i + 768];
samples[i + 256] = common + samples[i + 512] + samples[i + 1024];
}
@@ -424,7 +454,7 @@
sample_t common, surround;
for (i = 0; i < 256; i++) {
- common = samples[i + 256] + bias;
+ common = BIAS (samples[i + 256]);
surround = samples[i + 768] + samples[i + 1024];
samples[i] += common - surround;
samples[i + 256] = samples[i + 512] + common + surround;
@@ -436,7 +466,7 @@
int i;
for (i = 0; i < 256; i++)
- dest[i] = src[i] + src[i + 256] + bias;
+ dest[i] = BIAS (src[i] + src[i + 256]);
}
static void zero (sample_t * samples)
@@ -448,8 +478,11 @@
}
void a52_downmix (sample_t * samples, int acmod, int output, sample_t bias,
- sample_t clev, sample_t slev)
+ level_t clev, level_t slev)
{
+ /* avoid compiler warning */
+ (void)clev;
+
switch (CONVERT (acmod, output & A52_CHANNEL_MASK)) {
case CONVERT (A52_CHANNEL, A52_CHANNEL2):
@@ -583,7 +616,7 @@
break;
case CONVERT (A52_3F1R, A52_3F2R):
- memcpy (samples + 1027, samples + 768, 256 * sizeof (sample_t));
+ memcpy (samples + 1024, samples + 768, 256 * sizeof (sample_t));
break;
}
}
diff -ruN liba52.orig/imdct.c liba52/imdct.c
--- liba52.orig/imdct.c 2002-07-28 03:52:07.000000000 +0200
+++ liba52/imdct.c 2008-07-23 14:03:01.000000000 +0200
@@ -1,6 +1,6 @@
/*
* imdct.c
- * Copyright (C) 2000-2002 Michel Lespinasse <walken@zoy.org>
+ * Copyright (C) 2000-2003 Michel Lespinasse <walken@zoy.org>
* Copyright (C) 1999-2000 Aaron Holtzman <aholtzma@ess.engr.uvic.ca>
*
* The ifft algorithms in this file have been largely inspired by Dan
@@ -24,12 +24,13 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
-#include "config.h"
+#include "config-a52.h"
#include <math.h>
#include <stdio.h>
#ifdef LIBA52_DJBFFT
#include <fftc4.h>
+#include <fftc8.h>
#endif
#ifndef M_PI
#define M_PI 3.1415926535897932384626433832795029
@@ -57,25 +58,26 @@
};
/* Root values for IFFT */
-static sample_t roots16[3];
-static sample_t roots32[7];
-static sample_t roots64[15];
-static sample_t roots128[31];
+//static sample_t roots16[3];
+//static sample_t roots32[7];
+//static sample_t roots64[15];
+//static sample_t roots128[31];
/* Twiddle factors for IMDCT */
-static complex_t pre1[128];
-static complex_t post1[64];
-static complex_t pre2[64];
-static complex_t post2[32];
+//static complex_t pre1[128];
+//static complex_t post1[64];
+//static complex_t pre2[64];
+//static complex_t post2[32];
-static sample_t a52_imdct_window[256];
+//static sample_t a52_imdct_window[256];
+#include "imdct_lookups.h"
static void (* ifft128) (complex_t * buf);
static void (* ifft64) (complex_t * buf);
static inline void ifft2 (complex_t * buf)
{
- double r, i;
+ sample_t r, i;
r = buf[0].real;
i = buf[0].imag;
@@ -87,7 +89,7 @@
static inline void ifft4 (complex_t * buf)
{
- double tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7, tmp8;
+ sample_t tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7, tmp8;
tmp1 = buf[0].real + buf[1].real;
tmp2 = buf[3].real + buf[2].real;
@@ -108,25 +110,37 @@
buf[3].imag = tmp6 - tmp8;
}
+/* basic radix-2 ifft butterfly */
+
+#define BUTTERFLY_0(t0,t1,W0,W1,d0,d1) do { \
+ t0 = MUL (W1, d1) + MUL (W0, d0); \
+ t1 = MUL (W0, d1) - MUL (W1, d0); \
+} while (0)
+
+/* radix-2 ifft butterfly with bias */
+
+#define BUTTERFLY_B(t0,t1,W0,W1,d0,d1) do { \
+ t0 = BIAS (MUL (d1, W1) + MUL (d0, W0)); \
+ t1 = BIAS (MUL (d1, W0) - MUL (d0, W1)); \
+} while (0)
+
/* the basic split-radix ifft butterfly */
-#define BUTTERFLY(a0,a1,a2,a3,wr,wi) do { \
- tmp5 = a2.real * wr + a2.imag * wi; \
- tmp6 = a2.imag * wr - a2.real * wi; \
- tmp7 = a3.real * wr - a3.imag * wi; \
- tmp8 = a3.imag * wr + a3.real * wi; \
- tmp1 = tmp5 + tmp7; \
- tmp2 = tmp6 + tmp8; \
- tmp3 = tmp6 - tmp8; \
- tmp4 = tmp7 - tmp5; \
- a2.real = a0.real - tmp1; \
- a2.imag = a0.imag - tmp2; \
- a3.real = a1.real - tmp3; \
- a3.imag = a1.imag - tmp4; \
- a0.real += tmp1; \
- a0.imag += tmp2; \
- a1.real += tmp3; \
- a1.imag += tmp4; \
+#define BUTTERFLY(a0,a1,a2,a3,wr,wi) do { \
+ BUTTERFLY_0 (tmp5, tmp6, wr, wi, a2.real, a2.imag); \
+ BUTTERFLY_0 (tmp8, tmp7, wr, wi, a3.imag, a3.real); \
+ tmp1 = tmp5 + tmp7; \
+ tmp2 = tmp6 + tmp8; \
+ tmp3 = tmp6 - tmp8; \
+ tmp4 = tmp7 - tmp5; \
+ a2.real = a0.real - tmp1; \
+ a2.imag = a0.imag - tmp2; \
+ a3.real = a1.real - tmp3; \
+ a3.imag = a1.imag - tmp4; \
+ a0.real += tmp1; \
+ a0.imag += tmp2; \
+ a1.real += tmp3; \
+ a1.imag += tmp4; \
} while (0)
/* split-radix ifft butterfly, specialized for wr=1 wi=0 */
@@ -149,10 +163,10 @@
/* split-radix ifft butterfly, specialized for wr=wi */
#define BUTTERFLY_HALF(a0,a1,a2,a3,w) do { \
- tmp5 = (a2.real + a2.imag) * w; \
- tmp6 = (a2.imag - a2.real) * w; \
- tmp7 = (a3.real - a3.imag) * w; \
- tmp8 = (a3.imag + a3.real) * w; \
+ tmp5 = MUL (a2.real + a2.imag, w); \
+ tmp6 = MUL (a2.imag - a2.real, w); \
+ tmp7 = MUL (a3.real - a3.imag, w); \
+ tmp8 = MUL (a3.imag + a3.real, w); \
tmp1 = tmp5 + tmp7; \
tmp2 = tmp6 + tmp8; \
tmp3 = tmp6 - tmp8; \
@@ -169,7 +183,7 @@
static inline void ifft8 (complex_t * buf)
{
- double tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7, tmp8;
+ sample_t tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7, tmp8;
ifft4 (buf);
ifft2 (buf + 4);
@@ -183,7 +197,7 @@
complex_t * buf1;
complex_t * buf2;
complex_t * buf3;
- double tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7, tmp8;
+ sample_t tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7, tmp8;
int i;
buf++;
@@ -196,7 +210,8 @@
i = n - 1;
do {
- BUTTERFLY (buf[0], buf1[0], buf2[0], buf3[0], weight[n], weight[2*i]);
+ BUTTERFLY (buf[0], buf1[0], buf2[0], buf3[0],
+ weight[0], weight[2*i-n]);
buf++;
buf1++;
buf2++;
@@ -210,7 +225,7 @@
ifft8 (buf);
ifft4 (buf + 8);
ifft4 (buf + 12);
- ifft_pass (buf, roots16 - 4, 4);
+ ifft_pass (buf, roots16, 4);
}
static void ifft32 (complex_t * buf)
@@ -218,7 +233,7 @@
ifft16 (buf);
ifft8 (buf + 16);
ifft8 (buf + 24);
- ifft_pass (buf, roots32 - 8, 8);
+ ifft_pass (buf, roots32, 8);
}
static void ifft64_c (complex_t * buf)
@@ -226,7 +241,7 @@
ifft32 (buf);
ifft16 (buf + 32);
ifft16 (buf + 48);
- ifft_pass (buf, roots64 - 16, 16);
+ ifft_pass (buf, roots64, 16);
}
static void ifft128_c (complex_t * buf)
@@ -234,11 +249,11 @@
ifft32 (buf);
ifft16 (buf + 32);
ifft16 (buf + 48);
- ifft_pass (buf, roots64 - 16, 16);
+ ifft_pass (buf, roots64, 16);
ifft32 (buf + 64);
ifft32 (buf + 96);
- ifft_pass (buf, roots128 - 32, 32);
+ ifft_pass (buf, roots128, 32);
}
void a52_imdct_512 (sample_t * data, sample_t * delay, sample_t bias)
@@ -252,9 +267,7 @@
k = fftorder[i];
t_r = pre1[i].real;
t_i = pre1[i].imag;
-
- buf[i].real = t_i * data[255-k] + t_r * data[k];
- buf[i].imag = t_r * data[255-k] - t_i * data[k];
+ BUTTERFLY_0 (buf[i].real, buf[i].imag, t_r, t_i, data[k], data[255-k]);
}
ifft128 (buf);
@@ -265,27 +278,22 @@
/* y[n] = z[n] * (xcos1[n] + j * xsin1[n]) ; */
t_r = post1[i].real;
t_i = post1[i].imag;
-
- a_r = t_r * buf[i].real + t_i * buf[i].imag;
- a_i = t_i * buf[i].real - t_r * buf[i].imag;
- b_r = t_i * buf[127-i].real + t_r * buf[127-i].imag;
- b_i = t_r * buf[127-i].real - t_i * buf[127-i].imag;
+ BUTTERFLY_0 (a_r, a_i, t_i, t_r, buf[i].imag, buf[i].real);
+ BUTTERFLY_0 (b_r, b_i, t_r, t_i, buf[127-i].imag, buf[127-i].real);
w_1 = window[2*i];
w_2 = window[255-2*i];
- data[2*i] = delay[2*i] * w_2 - a_r * w_1 + bias;
- data[255-2*i] = delay[2*i] * w_1 + a_r * w_2 + bias;
+ BUTTERFLY_B (data[255-2*i], data[2*i], w_2, w_1, a_r, delay[2*i]);
delay[2*i] = a_i;
w_1 = window[2*i+1];
w_2 = window[254-2*i];
- data[2*i+1] = delay[2*i+1] * w_2 + b_r * w_1 + bias;
- data[254-2*i] = delay[2*i+1] * w_1 - b_r * w_2 + bias;
+ BUTTERFLY_B (data[2*i+1], data[254-2*i], w_1, w_2, b_r, delay[2*i+1]);
delay[2*i+1] = b_i;
}
}
-void a52_imdct_256(sample_t * data, sample_t * delay, sample_t bias)
+void a52_imdct_256 (sample_t * data, sample_t * delay, sample_t bias)
{
int i, k;
sample_t t_r, t_i, a_r, a_i, b_r, b_i, c_r, c_i, d_r, d_i, w_1, w_2;
@@ -297,12 +305,8 @@
k = fftorder[i];
t_r = pre2[i].real;
t_i = pre2[i].imag;
-
- buf1[i].real = t_i * data[254-k] + t_r * data[k];
- buf1[i].imag = t_r * data[254-k] - t_i * data[k];
-
- buf2[i].real = t_i * data[255-k] + t_r * data[k+1];
- buf2[i].imag = t_r * data[255-k] - t_i * data[k+1];
+ BUTTERFLY_0 (buf1[i].real, buf1[i].imag, t_r, t_i, data[k], data[254-k]);
+ BUTTERFLY_0 (buf2[i].real, buf2[i].imag, t_r, t_i, data[k+1], data[255-k]);
}
ifft64 (buf1);
@@ -314,43 +318,34 @@
/* y1[n] = z1[n] * (xcos2[n] + j * xs in2[n]) ; */
t_r = post2[i].real;
t_i = post2[i].imag;
-
- a_r = t_r * buf1[i].real + t_i * buf1[i].imag;
- a_i = t_i * buf1[i].real - t_r * buf1[i].imag;
- b_r = t_i * buf1[63-i].real + t_r * buf1[63-i].imag;
- b_i = t_r * buf1[63-i].real - t_i * buf1[63-i].imag;
-
- c_r = t_r * buf2[i].real + t_i * buf2[i].imag;
- c_i = t_i * buf2[i].real - t_r * buf2[i].imag;
- d_r = t_i * buf2[63-i].real + t_r * buf2[63-i].imag;
- d_i = t_r * buf2[63-i].real - t_i * buf2[63-i].imag;
+ BUTTERFLY_0 (a_r, a_i, t_i, t_r, buf1[i].imag, buf1[i].real);
+ BUTTERFLY_0 (b_r, b_i, t_r, t_i, buf1[63-i].imag, buf1[63-i].real);
+ BUTTERFLY_0 (c_r, c_i, t_i, t_r, buf2[i].imag, buf2[i].real);
+ BUTTERFLY_0 (d_r, d_i, t_r, t_i, buf2[63-i].imag, buf2[63-i].real);
w_1 = window[2*i];
w_2 = window[255-2*i];
- data[2*i] = delay[2*i] * w_2 - a_r * w_1 + bias;
- data[255-2*i] = delay[2*i] * w_1 + a_r * w_2 + bias;
+ BUTTERFLY_B (data[255-2*i], data[2*i], w_2, w_1, a_r, delay[2*i]);
delay[2*i] = c_i;
w_1 = window[128+2*i];
w_2 = window[127-2*i];
- data[128+2*i] = delay[127-2*i] * w_2 + a_i * w_1 + bias;
- data[127-2*i] = delay[127-2*i] * w_1 - a_i * w_2 + bias;
+ BUTTERFLY_B (data[128+2*i], data[127-2*i], w_1, w_2, a_i, delay[127-2*i]);
delay[127-2*i] = c_r;
w_1 = window[2*i+1];
w_2 = window[254-2*i];
- data[2*i+1] = delay[2*i+1] * w_2 - b_i * w_1 + bias;
- data[254-2*i] = delay[2*i+1] * w_1 + b_i * w_2 + bias;
+ BUTTERFLY_B (data[254-2*i], data[2*i+1], w_2, w_1, b_i, delay[2*i+1]);
delay[2*i+1] = d_r;
w_1 = window[129+2*i];
w_2 = window[126-2*i];
- data[129+2*i] = delay[126-2*i] * w_2 + b_r * w_1 + bias;
- data[126-2*i] = delay[126-2*i] * w_1 - b_r * w_2 + bias;
+ BUTTERFLY_B (data[129+2*i], data[126-2*i], w_1, w_2, b_r, delay[126-2*i]);
delay[126-2*i] = d_i;
}
}
+/*
static double besselI0 (double x)
{
double bessel = 1;
@@ -361,71 +356,121 @@
while (--i);
return bessel;
}
+*/
void a52_imdct_init (uint32_t mm_accel)
{
- int i, k;
+ (void)mm_accel;
+/* int i, k;
double sum;
+ double local_imdct_window[256];*/
/* compute imdct window - kaiser-bessel derived window, alpha = 5.0 */
- sum = 0;
+ /* sum = 0;
for (i = 0; i < 256; i++) {
sum += besselI0 (i * (256 - i) * (5 * M_PI / 256) * (5 * M_PI / 256));
- a52_imdct_window[i] = sum;
+ local_imdct_window[i] = sum;
}
sum++;
- for (i = 0; i < 256; i++)
- a52_imdct_window[i] = sqrt (a52_imdct_window[i] / sum);
+ */
+ /* for (i = 0; i < 256; i++)
+ a52_imdct_window[i] = SAMPLE (sqrt (local_imdct_window[i] / sum));
+
+ printf("static sample_t a52_imdct_window[256]={");
+ for (i=0;i<256;i++) {
+ if ((i % 16)==0) { printf("\n"); }
+ printf("%d,",a52_imdct_window[i]);
+ }
+ printf("\n}\n");
+ */
+
+ /* for (i = 0; i < 3; i++)
+ roots16[i] = SAMPLE (cos ((M_PI / 8) * (i + 1)));
- for (i = 0; i < 3; i++)
- roots16[i] = cos ((M_PI / 8) * (i + 1));
+ printf("static sample_t roots16[3]={%d,%d,%d};\n\n",roots16[0],roots16[1],roots16[2]);
for (i = 0; i < 7; i++)
- roots32[i] = cos ((M_PI / 16) * (i + 1));
+ roots32[i] = SAMPLE (cos ((M_PI / 16) * (i + 1)));
+
+ printf("static sample_t roots32[7]={");
+ for (i=0;i<7;i++) { printf("%d%s",roots32[i],(i < 6 ? "," : "")); }
+ printf("};\n");
for (i = 0; i < 15; i++)
- roots64[i] = cos ((M_PI / 32) * (i + 1));
+ roots64[i] = SAMPLE (cos ((M_PI / 32) * (i + 1)));
+
+ printf("static sample_t roots64[15]={");
+ for (i=0;i<15;i++) { printf("%d%s",roots64[i],(i < 14 ? "," : "")); }
+ printf("};\n");
for (i = 0; i < 31; i++)
- roots128[i] = cos ((M_PI / 64) * (i + 1));
+ roots128[i] = SAMPLE (cos ((M_PI / 64) * (i + 1)));
+ printf("static sample_t roots128[31]={");
+ for (i=0;i<31;i++) { printf("%d%s",roots128[i],(i < 30 ? "," : "")); }
+ printf("};\n");
+ */
+ /*
for (i = 0; i < 64; i++) {
k = fftorder[i] / 2 + 64;
- pre1[i].real = cos ((M_PI / 256) * (k - 0.25));
- pre1[i].imag = sin ((M_PI / 256) * (k - 0.25));
+ pre1[i].real = SAMPLE (cos ((M_PI / 256) * (k - 0.25)));
+ pre1[i].imag = SAMPLE (sin ((M_PI / 256) * (k - 0.25)));
}
for (i = 64; i < 128; i++) {
k = fftorder[i] / 2 + 64;
- pre1[i].real = -cos ((M_PI / 256) * (k - 0.25));
- pre1[i].imag = -sin ((M_PI / 256) * (k - 0.25));
+ pre1[i].real = SAMPLE (-cos ((M_PI / 256) * (k - 0.25)));
+ pre1[i].imag = SAMPLE (-sin ((M_PI / 256) * (k - 0.25)));
}
+ printf("static complex_t pre1[128]={");
+ for (i=0;i<128;i++) { printf("{%d,%d}%s",pre1[i].real,pre1[i].imag,(i < 127 ? "," : "")); }
+ printf("};\n");
+ */
+ /*
for (i = 0; i < 64; i++) {
- post1[i].real = cos ((M_PI / 256) * (i + 0.5));
- post1[i].imag = sin ((M_PI / 256) * (i + 0.5));
+ post1[i].real = SAMPLE (cos ((M_PI / 256) * (i + 0.5)));
+ post1[i].imag = SAMPLE (sin ((M_PI / 256) * (i + 0.5)));
}
+ printf("static complex_t post1[64]={");
+ for (i=0;i<64;i++) { printf("{%d,%d}%s",post1[i].real,post1[i].imag,(i < 63 ? "," : "")); }
+ printf("};\n");
+ */
+
+ /*
for (i = 0; i < 64; i++) {
k = fftorder[i] / 4;
- pre2[i].real = cos ((M_PI / 128) * (k - 0.25));
- pre2[i].imag = sin ((M_PI / 128) * (k - 0.25));
+ pre2[i].real = SAMPLE (cos ((M_PI / 128) * (k - 0.25)));
+ pre2[i].imag = SAMPLE (sin ((M_PI / 128) * (k - 0.25)));
}
+ printf("static complex_t pre2[64]={");
+ for (i=0;i<64;i++) { printf("{%d,%d}%s",pre2[i].real,pre2[i].imag,(i < 63 ? "," : "")); }
+ printf("};\n");
+
for (i = 0; i < 32; i++) {
- post2[i].real = cos ((M_PI / 128) * (i + 0.5));
- post2[i].imag = sin ((M_PI / 128) * (i + 0.5));
+ post2[i].real = SAMPLE (cos ((M_PI / 128) * (i + 0.5)));
+ post2[i].imag = SAMPLE (sin ((M_PI / 128) * (i + 0.5)));
}
+ printf("static complex_t post2[32]={");
+ for (i=0;i<32;i++) { printf("{%d,%d}%s",post2[i].real,post2[i].imag,(i < 31 ? "," : "")); }
+ printf("};\n");
+ */
+
#ifdef LIBA52_DJBFFT
if (mm_accel & MM_ACCEL_DJBFFT) {
- fprintf (stderr, "Using djbfft for IMDCT transform\n");
+#ifndef LIBA52_DOUBLE
ifft128 = (void (*) (complex_t *)) fftc4_un128;
ifft64 = (void (*) (complex_t *)) fftc4_un64;
+#else
+ ifft128 = (void (*) (complex_t *)) fftc8_un128;
+ ifft64 = (void (*) (complex_t *)) fftc8_un64;
+#endif
} else
#endif
{
- fprintf (stderr, "No accelerated IMDCT transform found\n");
ifft128 = ifft128_c;
ifft64 = ifft64_c;
}
diff -ruN liba52.orig/imdct_lookups.h liba52/imdct_lookups.h
--- liba52.orig/imdct_lookups.h 1970-01-01 01:00:00.000000000 +0100
+++ liba52/imdct_lookups.h 2008-07-23 14:03:02.000000000 +0200
@@ -0,0 +1,15 @@
+static sample_t a52_imdct_window[256]IDATA_ATTR={
+ 146020,261886,393529,545197,719447,918478,1144416,1399394,1685589,2005234,2360623,2754115,3188134,3665170,4187773,4758556, 5380193,6055411,6786995,7577779,8430645,9348521,10334375,11391212,12522071,13730020,15018150,16389576,17847424,19394833,21034947,22770912, 24605865,26542938,28585242,30735872,32997891,35374332,37868188,40482408,43219889,46083473,49075937,52199993,55458273,58853331,62387636,66063559, 69883377,73849259,77963266,82227341,86643307,91212859,95937560,100818835,105857968,111056092,116414194,121933098,127613474,133455822,139460477,145627601, 151957182,158449029,165102772,171917855,178893540,186028900,193322822,200774000,208380940,216141958,224055176,232118527,240329753,248686407,257185854,265825270, 274601649,283511802,292552357,301719768,311010314,320420105,329945084,339581031,349323572,359168178,369110174,379144743,389266934,399471665,409753732,420107815, 430528483,441010205,451547355,462134219,472765003,483433845,494134818,504861939,515609181,526370480,537139740,547910849,558677680,569434108,580174011,590891284, 601579849,612233658,622846709,633413050,643926788,654382103,664773249,675094567,685340494,695505569,705584441,715571877,725462772,735252152,744935184,754507184, 763963620,773300119,782512477,791596659,800548807,809365245,818042484,826577226,834966364,843206992,851296404,859232096,867011771,874633340,882094922,889394844, 896531647,903504079,910311101,916951881,923425798,929732436,935871584,941843233,947647575,953284997,958756080,964061593,969202490,974179906,978995149,983649698, 988145195,992483442,996666390,1000696136,1004574919,1008305104,1011889185,1015329772,1018629583,1021791439,1024818257,1027713038,1030478862,1033118881,1035636308,1038034411, 1040316504,1042485942,1044546109,1046500412,1048352275,1050105129,1051762405,1053327531,1054803917,1056194958,1057504020,1058734435,1059889501,1060972468,1061986539,1062934861, 1063820523,1064646551,1065415903,1066131467,1066796055,1067412403,1067983168,1068510924,1068998160,1069447282,1069860607,1070240366,1070588702,1070907668,1071199230,1071465266, 1071707567,1071927836,1072127692,1072308670,1072472221,1072619716,1072752449,1072871635,1072978415,1073073858,1073158963,1073234663,1073301826,1073361257,1073413702,1073459852, 1073500344,1073535763,1073566646,1073593486,1073616731,1073636791,1073654036,1073668804,1073681398,1073692090,1073701126,1073708726,1073715084,1073720373,1073724748,1073728344, 1073731279,1073733657,1073735568,1073737090,1073738291,1073739229,1073739951,1073740500,1073740912,1073741214,1073741431,1073741582,1073741685,1073741751,1073741792,1073741814
+};
+
+static sample_t roots16[3]IDATA_ATTR={992008094,759250124,410903206};
+static sample_t roots32[7]IDATA_ATTR={1053110175,992008094,892783698,759250124,596538995,410903206,209476638};
+static sample_t roots64[15]IDATA_ATTR={1068571463,1053110175,1027506861,992008094,946955747,892783698,830013654,759250124,681174602,596538995,506158392,410903206,311690798,209476638,105245103};
+static sample_t roots128[31]IDATA_ATTR={1072448454,1068571463,1062120190,1053110175,1041563127,1027506861,1010975241,992008094,970651112,946955747,920979082,892783698,862437519,830013654,795590212,759250124,721080937,681174602,639627257,596538995,552013618,506158392,459083785,410903206,361732725,311690798,260897981,209476638,157550647,105245103,52686014};
+
+static complex_t pre1[128]IDATA_ATTR={{761575898,756917205},{3294193,1073736770},{413944710,990742792},{-407857834,993264059},{599275209,890949340},{-206244755,1053747885},{-593797166,894609652},{212706548,1052462554},{683717842,827919933},{-101966276,1068889322},{314841678,1026545772},{-503250790,948504162},{-678624950,832099562},{108522938,1068243547},{509061229,945398418},{-308536985,1028458279},{723518379,793374223},{-49395540,1072605046},{364832651,1009860703},{-456103709,972054993},{554836544,919281193},{-257701283,1042358649},{-636978326,864395809},{160808444,1061631832},{-718636707,797798713},{55975991,1072281769},{462059540,969238095},{-358629394,1012080264},{642270168,860471112},{-154291366,1062598550},{-549185496,922668301},{264092224,1040757801},{742770847,775379244},{-23057618,1073494224},{389505993,1000603111},{-432110916,982955574},{577229727,905387953},{-232042906,1048369016},{-615573145,879767700},{186813761,1057365652},{663193747,844449855},{-128167423,1066065014},{289554159,1033963197},{-526376678,935868098},{-698841306,815194659},{82274244,1070585098},{485706670,957606670},{-333683689,1020576650},{-737999227,779922204},{29644020,1073332537},{438134083,980285687},{-383359075,1002974238},{620959710,875974053},{-180322371,1058492015},{-571663505,908912724},{238471209,1046925492},{703830091,810891303},{-75703709,1071069770},{339939548,1018509994},{-479821763,960568883},{-657999815,848503239},{134706262,1065258526},{532109148,932620694},{-283204430,1035720404},{-752230014,-766205918},{9882456,-1073696345},{-401755603,-995747929},{420016001,-988184225},{-588296766,-898236282},{219160333,-1051137599},{604730690,-887255485},{-199775197,-1054993542},{-673506508,-836247862},{115075515,-1067557553},{-302220675,-1030332066},{514852501,-942257080},{688784992,-823709134},{-95405775,-1069494853},{-497421404,-951574195},{321134518,-1024594615},{-713727978,-802193167},{62554335,-1071918121},{-352412636,-1014261720},{467997975,-966384705},{-543513771,-926020671},{270473222,-1039117770},{647537829,-856514018},{-147768480,-1063525261},{728372812,-788919863},{-42813229,-1072887940},{-450130706,-974835294},{371022172,-1007603122},{-631662502,-868287963},{167319467,-1060625145},{560466703,-915859475},{-251300639,-1043920252},{747514502,-770807091},{-16470347,-1073615495},{-426071479,-985588453},{395638246,-998194311},{-610163404,-883528225},{193298118,-1056199480},{582774217,-901829094},{-225605866,-1049773069},{-693826210,-819467323},{88841682,-1070060119},{-327415267,-1022604883},{491573291,-954608403},{668362709,-840364678},{-121623758,-1066831367},{-520624390,-939080267},{295892987,-1032167062},{-733199822,-784435800},{36229307,-1073130440},{-377197724,-1005307605},{444140755,-977578893},{-566075760,-912403275},{244890534,-1045442552},{626322896,-872147426},{-173824191,-1059578527},{708792377,-806557418},{-69130323,-1071514117},{-473918791,-963494932},{346182609,-1016404991},{-652781111,-852524677},{141240030,-1064411930},{537821584,-929338177},{-276844037,-1037438616}};
+
+static complex_t post1[64]IDATA_ATTR={{1073721611,6588355},{1073559912,19764075},{1073236539,32936819},{1072751541,46104602},{1072104991,59265442},{1071296985,72417357},{1070327646,85558366},{1069197119,98686490},{1067905576,111799753},{1066453209,124896178},{1064840239,137973795},{1063066908,151030634},{1061133483,164064728},{1059040255,177074114},{1056787539,190056834},{1054375675,203010932},{1051805026,215934457},{1049075979,228825463},{1046188946,241682009},{1043144359,254502159},{1039942680,267283981},{1036584388,280025551},{1033069991,292724951},{1029400017,305380267},{1025575020,317989594},{1021595574,330551034},{1017462280,343062693},{1013175760,355522688},{1008736660,367929143},{1004145647,380280189},{999403414,392573967},{994510674,404808624},{989468165,416982318},{984276645,429093217},{978936897,441139495},{973449725,453119340},{967815955,465030947},{962036435,476872521},{956112036,488642280},{950043650,500338452},{943832191,511959274},{937478594,523502998},{930983817,534967883},{924348836,546352205},{917574653,557654248},{910662286,568872310},{903612776,580004702},{896427186,591049747},{889106597,602005783},{881652112,612871159},{874064853,623644238},{866345963,634323399},{858496605,644907034},{850517961,655393547},{842411231,665781361},{834177638,676068911},{825818420,686254647},{817334837,696337035},{808728167,706314558},{799999705,716185713},{791150766,725949012},{782182683,735602987},{773096806,745146182},{763894503,754577161}};
+
+static complex_t pre2[64]IDATA_ATTR={{1073721611,-6588355},{763894503,754577161},{994510674,404808624},{416982318,989468165},{1054375675,203010932},{602005783,889106597},{215934457,1051805026},{896427186,591049747},{1069197119,98686490},{686254647,825818420},{950043650,500338452},{317989594,1025575020},{111799753,1067905576},{834177638,676068911},{1029400017,305380267},{511959274,943832191},{1072751541,46104602},{725949012,791150766},{973449725,453119340},{367929143,1008736660},{1043144359,254502159},{557654248,917574653},{164064728,1061133483},{866345963,634323399},{59265442,1072104991},{799999705,716185713},{1013175760,355522688},{465030947,967815955},{1063066908,151030634},{644907034,858496605},{267283981,1039942680},{924348836,546352205},{1073559912,19764075},{745146182,773096806},{984276645,429093217},{392573967,999403414},{1049075979,228825463},{580004702,903612776},{190056834,1056787539},{881652112,612871159},{1066453209,124896178},{665781361,842411231},{937478594,523502998},{292724951,1033069991},{85558366,1070327646},{817334837,696337035},{1021595574,330551034},{488642280,956112036},{32936819,1073236539},{782182683,735602987},{1004145647,380280189},{441139495,978936897},{1059040255,177074114},{623644238,874064853},{241682009,1046188946},{910662286,568872310},{1071296985,72417357},{706314558,808728167},{962036435,476872521},{343062693,1017462280},{137973795,1064840239},{850517961,655393547},{1036584388,280025551},{534967883,930983817}};
+static complex_t post2[32]IDATA_ATTR={{1073660973,13176463},{1073014239,39521454},{1071721163,65842639},{1069782521,92124162},{1067199482,118350193},{1063973603,144504935},{1060106825,170572632},{1055601479,196537583},{1050460278,222384146},{1044686318,248096754},{1038283079,273659918},{1031254417,299058239},{1023604566,324276418},{1015338134,349299266},{1006460100,374111709},{996975812,398698801},{986890983,423045731},{976211688,447137835},{964944359,470960600},{953095785,494499675},{940673100,517740882},{927683790,540670222},{914135677,563273882},{900036924,585538247},{885396022,607449906},{870221790,628995659},{854523369,650162530},{838310215,670937766},{821592095,691308855},{804379078,711263525},{786681534,730789756},{768510121,749875787}};
diff -ruN liba52.orig/parse.c liba52/parse.c
--- liba52.orig/parse.c 2002-07-28 03:52:07.000000000 +0200
+++ liba52/parse.c 2008-07-23 14:03:02.000000000 +0200
@@ -1,6 +1,6 @@
/*
* parse.c
- * Copyright (C) 2000-2002 Michel Lespinasse <walken@zoy.org>
+ * Copyright (C) 2000-2003 Michel Lespinasse <walken@zoy.org>
* Copyright (C) 1999-2000 Aaron Holtzman <aholtzma@ess.engr.uvic.ca>
*
* This file is part of a52dec, a free ATSC A-52 stream decoder.
@@ -21,9 +21,8 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
-#include "config.h"
+#include "config-a52.h"
-#include <stdlib.h>
#include <string.h>
#include <inttypes.h>
@@ -32,7 +31,7 @@
#include "bitstream.h"
#include "tables.h"
-#ifdef HAVE_MEMALIGN
+#if defined(HAVE_MEMALIGN) && !defined(__cplusplus)
/* some systems have memalign() but no declaration for it */
void * memalign (size_t align, size_t size);
#else
@@ -41,13 +40,16 @@
#endif
typedef struct {
- sample_t q1[2];
- sample_t q2[2];
- sample_t q4;
+ quantizer_t q1[2];
+ quantizer_t q2[2];
+ quantizer_t q4;
int q1_ptr;
int q2_ptr;
int q4_ptr;
-} quantizer_t;
+} quantizer_set_t;
+
+static a52_state_t istate IBSS_ATTR;
+static sample_t isamples[256*12] IBSS_ATTR;
static uint8_t halfrate[12] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 3};
@@ -56,16 +58,25 @@
a52_state_t * state;
int i;
- state = malloc (sizeof (a52_state_t));
+ #if defined(CPU_COLDFIRE)
+ coldfire_set_macsr(EMAC_FRACTIONAL | EMAC_ROUND | EMAC_SATURATE);
+ #endif
+ /*
+ this needs to come back if we ever want two decoder instances
+ simultenously. NOTE, you also need to remove comments in a52_free.
+ state = (a52_state_t *) malloc (sizeof (a52_state_t));
if (state == NULL)
return NULL;
- state->samples = memalign (16, 256 * 12 * sizeof (sample_t));
+ state->samples = (sample_t *) memalign (16, 256 * 12 * sizeof (sample_t));
if (state->samples == NULL) {
free (state);
return NULL;
}
+ */
+ state = &istate;
+ state->samples = isamples;
for (i = 0; i < 256 * 12; i++)
state->samples[i] = 0;
@@ -129,10 +140,12 @@
}
int a52_frame (a52_state_t * state, uint8_t * buf, int * flags,
- sample_t * level, sample_t bias)
+ level_t * level, sample_t bias)
{
- static sample_t clev[4] = {LEVEL_3DB, LEVEL_45DB, LEVEL_6DB, LEVEL_45DB};
- static sample_t slev[4] = {LEVEL_3DB, LEVEL_6DB, 0, LEVEL_6DB};
+ static level_t clev[4] = { LEVEL (LEVEL_3DB), LEVEL (LEVEL_45DB),
+ LEVEL (LEVEL_6DB), LEVEL (LEVEL_45DB) };
+ static level_t slev[4] = { LEVEL (LEVEL_3DB), LEVEL (LEVEL_6DB),
+ 0, LEVEL (LEVEL_6DB) };
int chaninfo;
int acmod;
@@ -146,6 +159,8 @@
if ((acmod == 2) && (bitstream_get (state, 2) == 2)) /* dsurmod */
acmod = A52_DOLBY;
+ state->clev = state->slev = 0;
+
if ((acmod & 1) && (acmod != 1))
state->clev = clev[bitstream_get (state, 2)]; /* cmixlev */
@@ -162,7 +177,7 @@
state->output |= A52_LFE;
*flags = state->output;
/* the 2* compensates for differences in imdct */
- state->dynrng = state->level = 2 * *level;
+ state->dynrng = state->level = MUL_C (*level, 2);
state->bias = bias;
state->dynrnge = 1;
state->dynrngcall = NULL;
@@ -201,7 +216,7 @@
}
void a52_dynrng (a52_state_t * state,
- sample_t (* call) (sample_t, void *), void * data)
+ level_t (* call) (level_t, void *), void * data)
{
state->dynrnge = 0;
if (call) {
@@ -311,20 +326,38 @@
state->lfsr_state = (uint16_t) nstate;
- return nstate;
+ return (3 * nstate) >> 2;
}
+#ifndef LIBA52_FIXED
+#define COEFF(c,t,l,s,e) (c) = (t) * (s)[e]
+#else
+#define COEFF(c,_t,_l,s,e) do { \
+ quantizer_t t = (_t); \
+ level_t l = (_l); \
+ int shift = e - 5; \
+ sample_t tmp = t * (l >> 16) + ((t * (l & 0xffff)) >> 16); \
+ if (shift >= 0) \
+ (c) = tmp >> shift; \
+ else \
+ (c) = tmp << -shift; \
+} while (0)
+#endif
+
static void coeff_get (a52_state_t * state, sample_t * coeff,
- expbap_t * expbap, quantizer_t * quantizer,
- sample_t level, int dither, int end)
+ expbap_t * expbap, quantizer_set_t * quant,
+ level_t level, int dither, int end)
{
int i;
uint8_t * exp;
int8_t * bap;
+
+#ifndef LIBA52_FIXED
sample_t factor[25];
for (i = 0; i <= 24; i++)
factor[i] = scale_factor[i] * level;
+#endif
exp = expbap->exp;
bap = expbap->bap;
@@ -336,7 +369,7 @@
switch (bapi) {
case 0:
if (dither) {
- coeff[i] = dither_gen (state) * LEVEL_3DB * factor[exp[i]];
+ COEFF (coeff[i], dither_gen (state), level, factor, exp[i]);
continue;
} else {
coeff[i] = 0;
@@ -344,76 +377,80 @@
}
case -1:
- if (quantizer->q1_ptr >= 0) {
- coeff[i] = quantizer->q1[quantizer->q1_ptr--] * factor[exp[i]];
+ if (quant->q1_ptr >= 0) {
+ COEFF (coeff[i], quant->q1[quant->q1_ptr--], level,
+ factor, exp[i]);
continue;
} else {
int code;
code = bitstream_get (state, 5);
- quantizer->q1_ptr = 1;
- quantizer->q1[0] = q_1_2[code];
- quantizer->q1[1] = q_1_1[code];
- coeff[i] = q_1_0[code] * factor[exp[i]];
+ quant->q1_ptr = 1;
+ quant->q1[0] = q_1_2[code];
+ quant->q1[1] = q_1_1[code];
+ COEFF (coeff[i], q_1_0[code], level, factor, exp[i]);
continue;
}
case -2:
- if (quantizer->q2_ptr >= 0) {
- coeff[i] = quantizer->q2[quantizer->q2_ptr--] * factor[exp[i]];
+ if (quant->q2_ptr >= 0) {
+ COEFF (coeff[i], quant->q2[quant->q2_ptr--], level,
+ factor, exp[i]);
continue;
} else {
int code;
code = bitstream_get (state, 7);
- quantizer->q2_ptr = 1;
- quantizer->q2[0] = q_2_2[code];
- quantizer->q2[1] = q_2_1[code];
- coeff[i] = q_2_0[code] * factor[exp[i]];
+ quant->q2_ptr = 1;
+ quant->q2[0] = q_2_2[code];
+ quant->q2[1] = q_2_1[code];
+ COEFF (coeff[i], q_2_0[code], level, factor, exp[i]);
continue;
}
case 3:
- coeff[i] = q_3[bitstream_get (state, 3)] * factor[exp[i]];
+ COEFF (coeff[i], q_3[bitstream_get (state, 3)], level,
+ factor, exp[i]);
continue;
case -3:
- if (quantizer->q4_ptr == 0) {
- quantizer->q4_ptr = -1;
- coeff[i] = quantizer->q4 * factor[exp[i]];
+ if (quant->q4_ptr == 0) {
+ quant->q4_ptr = -1;
+ COEFF (coeff[i], quant->q4, level, factor, exp[i]);
continue;
} else {
int code;
code = bitstream_get (state, 7);
- quantizer->q4_ptr = 0;
- quantizer->q4 = q_4_1[code];
- coeff[i] = q_4_0[code] * factor[exp[i]];
+ quant->q4_ptr = 0;
+ quant->q4 = q_4_1[code];
+ COEFF (coeff[i], q_4_0[code], level, factor, exp[i]);
continue;
}
case 4:
- coeff[i] = q_5[bitstream_get (state, 4)] * factor[exp[i]];
+ COEFF (coeff[i], q_5[bitstream_get (state, 4)], level,
+ factor, exp[i]);
continue;
default:
- coeff[i] = ((bitstream_get_2 (state, bapi) << (16 - bapi)) *
- factor[exp[i]]);
+ COEFF (coeff[i], bitstream_get_2 (state, bapi) << (16 - bapi),
+ level, factor, exp[i]);
}
}
}
static void coeff_get_coupling (a52_state_t * state, int nfchans,
- sample_t * coeff, sample_t (* samples)[256],
- quantizer_t * quantizer, uint8_t dithflag[5])
+ level_t * coeff, sample_t (* samples)[256],
+ quantizer_set_t * quant, uint8_t dithflag[5])
{
int cplbndstrc, bnd, i, i_end, ch;
uint8_t * exp;
int8_t * bap;
- sample_t cplco[5];
+ level_t cplco[5];
exp = state->cpl_expbap.exp;
bap = state->cpl_expbap.bap;
@@ -428,22 +465,26 @@
}
cplbndstrc >>= 1;
for (ch = 0; ch < nfchans; ch++)
- cplco[ch] = state->cplco[ch][bnd] * coeff[ch];
+ cplco[ch] = MUL_L (state->cplco[ch][bnd], coeff[ch]);
bnd++;
while (i < i_end) {
- sample_t cplcoeff;
+ quantizer_t cplcoeff;
int bapi;
bapi = bap[i];
switch (bapi) {
case 0:
- cplcoeff = LEVEL_3DB * scale_factor[exp[i]];
for (ch = 0; ch < nfchans; ch++)
if ((state->chincpl >> ch) & 1) {
if (dithflag[ch])
- samples[ch][i] = (cplcoeff * cplco[ch] *
- dither_gen (state));
+#ifndef LIBA52_FIXED
+ samples[ch][i] = (scale_factor[exp[i]] *
+ cplco[ch] * dither_gen (state));
+#else
+ COEFF (samples[ch][i], dither_gen (state),
+ cplco[ch], scale_factor, exp[i]);
+#endif
else
samples[ch][i] = 0;
}
@@ -451,33 +492,33 @@
continue;
case -1:
- if (quantizer->q1_ptr >= 0) {
- cplcoeff = quantizer->q1[quantizer->q1_ptr--];
+ if (quant->q1_ptr >= 0) {
+ cplcoeff = quant->q1[quant->q1_ptr--];
break;
} else {
int code;
code = bitstream_get (state, 5);
- quantizer->q1_ptr = 1;
- quantizer->q1[0] = q_1_2[code];
- quantizer->q1[1] = q_1_1[code];
+ quant->q1_ptr = 1;
+ quant->q1[0] = q_1_2[code];
+ quant->q1[1] = q_1_1[code];
cplcoeff = q_1_0[code];
break;
}
case -2:
- if (quantizer->q2_ptr >= 0) {
- cplcoeff = quantizer->q2[quantizer->q2_ptr--];
+ if (quant->q2_ptr >= 0) {
+ cplcoeff = quant->q2[quant->q2_ptr--];
break;
} else {
int code;
code = bitstream_get (state, 7);
- quantizer->q2_ptr = 1;
- quantizer->q2[0] = q_2_2[code];
- quantizer->q2[1] = q_2_1[code];
+ quant->q2_ptr = 1;
+ quant->q2[0] = q_2_2[code];
+ quant->q2[1] = q_2_1[code];
cplcoeff = q_2_0[code];
break;
}
@@ -487,17 +528,17 @@
break;
case -3:
- if (quantizer->q4_ptr == 0) {
- quantizer->q4_ptr = -1;
- cplcoeff = quantizer->q4;
+ if (quant->q4_ptr == 0) {
+ quant->q4_ptr = -1;
+ cplcoeff = quant->q4;
break;
} else {
int code;
code = bitstream_get (state, 7);
- quantizer->q4_ptr = 0;
- quantizer->q4 = q_4_1[code];
+ quant->q4_ptr = 0;
+ quant->q4 = q_4_1[code];
cplcoeff = q_4_0[code];
break;
}
@@ -509,11 +550,17 @@
default:
cplcoeff = bitstream_get_2 (state, bapi) << (16 - bapi);
}
-
+#ifndef LIBA52_FIXED
cplcoeff *= scale_factor[exp[i]];
+#endif
for (ch = 0; ch < nfchans; ch++)
- if ((state->chincpl >> ch) & 1)
+ if ((state->chincpl >> ch) & 1)
+#ifndef LIBA52_FIXED
samples[ch][i] = cplcoeff * cplco[ch];
+#else
+ COEFF (samples[ch][i], cplcoeff, cplco[ch],
+ scale_factor, exp[i]);
+#endif
i++;
}
}
@@ -526,9 +573,9 @@
int i, nfchans, chaninfo;
uint8_t cplexpstr, chexpstr[5], lfeexpstr, do_bit_alloc, done_cpl;
uint8_t blksw[5], dithflag[5];
- sample_t coeff[5];
+ level_t coeff[5];
int chanbias;
- quantizer_t quantizer;
+ quantizer_set_t quant;
sample_t * samples;
nfchans = nfchans_tbl[state->acmod];
@@ -546,13 +593,17 @@
dynrng = bitstream_get_2 (state, 8);
if (state->dynrnge) {
- sample_t range;
+ level_t range;
+#if !defined(LIBA52_FIXED)
range = ((((dynrng & 0x1f) | 0x20) << 13) *
scale_factor[3 - (dynrng >> 5)]);
+#else
+ range = ((dynrng & 0x1f) | 0x20) << (21 + (dynrng >> 5));
+#endif
if (state->dynrngcall)
range = state->dynrngcall (range, state->dynrngdata);
- state->dynrng = state->level * range;
+ state->dynrng = MUL_L (state->level, range);
}
}
} while (chaninfo--);
@@ -611,8 +662,13 @@
cplcomant <<= 14;
else
cplcomant = (cplcomant | 0x10) << 13;
+#ifndef LIBA52_FIXED
state->cplco[i][j] =
cplcomant * scale_factor[cplcoexp + mstrcplco];
+#else
+ state->cplco[i][j] = (cplcomant << 11) >> (cplcoexp + mstrcplco);
+#endif
+
}
}
if ((state->acmod == 2) && state->phsflginu && cplcoe)
@@ -691,11 +747,11 @@
}
if (bitstream_get (state, 1)) { /* baie */
- do_bit_alloc = -1;
+ do_bit_alloc = 127;
state->bai = bitstream_get (state, 11);
}
if (bitstream_get (state, 1)) { /* snroffste */
- do_bit_alloc = -1;
+ do_bit_alloc = 127;
state->csnroffst = bitstream_get (state, 6);
if (state->chincpl) /* cplinu */
state->cplba.bai = bitstream_get (state, 7);
@@ -711,7 +767,7 @@
}
if (bitstream_get (state, 1)) { /* deltbaie */
- do_bit_alloc = -1;
+ do_bit_alloc = 127;
if (state->chincpl) /* cplinu */
state->cplba.deltbae = bitstream_get (state, 2);
for (i = 0; i < nfchans; i++)
@@ -765,20 +821,20 @@
chanbias = a52_downmix_coeff (coeff, state->acmod, state->output,
state->dynrng, state->clev, state->slev);
- quantizer.q1_ptr = quantizer.q2_ptr = quantizer.q4_ptr = -1;
+ quant.q1_ptr = quant.q2_ptr = quant.q4_ptr = -1;
done_cpl = 0;
for (i = 0; i < nfchans; i++) {
int j;
- coeff_get (state, samples + 256 * i, state->fbw_expbap +i, &quantizer,
+ coeff_get (state, samples + 256 * i, state->fbw_expbap +i, &quant,
coeff[i], dithflag[i], state->endmant[i]);
if ((state->chincpl >> i) & 1) {
if (!done_cpl) {
done_cpl = 1;
coeff_get_coupling (state, nfchans, coeff,
- (sample_t (*)[256])samples, &quantizer,
+ (sample_t (*)[256])samples, &quant,
dithflag);
}
j = state->cplendmant;
@@ -821,14 +877,14 @@
if (state->lfeon) {
if (state->output & A52_LFE) {
- coeff_get (state, samples - 256, &state->lfe_expbap, &quantizer,
+ coeff_get (state, samples - 256, &state->lfe_expbap, &quant,
state->dynrng, 0, 7);
for (i = 7; i < 256; i++)
(samples-256)[i] = 0;
a52_imdct_512 (samples - 256, samples + 1536 - 256, state->bias);
} else {
/* just skip the LFE coefficients */
- coeff_get (state, samples + 1280, &state->lfe_expbap, &quantizer,
+ coeff_get (state, samples + 1280, &state->lfe_expbap, &quant,
0, 0, 7);
}
}
@@ -896,6 +952,9 @@
void a52_free (a52_state_t * state)
{
+ (void)state;
+ /*
free (state->samples);
free (state);
+ */
}
diff -ruN liba52.orig/tables.h liba52/tables.h
--- liba52.orig/tables.h 2002-03-05 09:10:43.000000000 +0100
+++ liba52/tables.h 2008-07-23 14:03:01.000000000 +0200
@@ -1,6 +1,6 @@
/*
* tables.h
- * Copyright (C) 2000-2002 Michel Lespinasse <walken@zoy.org>
+ * Copyright (C) 2000-2003 Michel Lespinasse <walken@zoy.org>
* Copyright (C) 1999-2000 Aaron Holtzman <aholtzma@ess.engr.uvic.ca>
*
* This file is part of a52dec, a free ATSC A-52 stream decoder.
@@ -46,42 +46,44 @@
25,25,25
};
-#define Q0 ((-2 << 15) / 3.0)
-#define Q1 (0)
-#define Q2 ((2 << 15) / 3.0)
-
-static const sample_t q_1_0[32] = {
- Q0,Q0,Q0,Q0,Q0,Q0,Q0,Q0,Q0,
- Q1,Q1,Q1,Q1,Q1,Q1,Q1,Q1,Q1,
- Q2,Q2,Q2,Q2,Q2,Q2,Q2,Q2,Q2,
- 0,0,0,0,0
-};
-
-static const sample_t q_1_1[32] = {
- Q0,Q0,Q0,Q1,Q1,Q1,Q2,Q2,Q2,
- Q0,Q0,Q0,Q1,Q1,Q1,Q2,Q2,Q2,
- Q0,Q0,Q0,Q1,Q1,Q1,Q2,Q2,Q2,
- 0,0,0,0,0
-};
-
-static const sample_t q_1_2[32] = {
- Q0,Q1,Q2,Q0,Q1,Q2,Q0,Q1,Q2,
- Q0,Q1,Q2,Q0,Q1,Q2,Q0,Q1,Q2,
- Q0,Q1,Q2,Q0,Q1,Q2,Q0,Q1,Q2,
- 0,0,0,0,0
+#define Q(x) ROUND (32768.0 * x)
+
+#define Q0 Q (-2/3)
+#define Q1 Q (0)
+#define Q2 Q (2/3)
+
+static const quantizer_t q_1_0[32] = {
+ Q0, Q0, Q0, Q0, Q0, Q0, Q0, Q0, Q0,
+ Q1, Q1, Q1, Q1, Q1, Q1, Q1, Q1, Q1,
+ Q2, Q2, Q2, Q2, Q2, Q2, Q2, Q2, Q2,
+ 0, 0, 0, 0, 0
+};
+
+static const quantizer_t q_1_1[32] = {
+ Q0, Q0, Q0, Q1, Q1, Q1, Q2, Q2, Q2,
+ Q0, Q0, Q0, Q1, Q1, Q1, Q2, Q2, Q2,
+ Q0, Q0, Q0, Q1, Q1, Q1, Q2, Q2, Q2,
+ 0, 0, 0, 0, 0
+};
+
+static const quantizer_t q_1_2[32] = {
+ Q0, Q1, Q2, Q0, Q1, Q2, Q0, Q1, Q2,
+ Q0, Q1, Q2, Q0, Q1, Q2, Q0, Q1, Q2,
+ Q0, Q1, Q2, Q0, Q1, Q2, Q0, Q1, Q2,
+ 0, 0, 0, 0, 0
};
#undef Q0
#undef Q1
#undef Q2
-#define Q0 ((-4 << 15) / 5.0)
-#define Q1 ((-2 << 15) / 5.0)
-#define Q2 (0)
-#define Q3 ((2 << 15) / 5.0)
-#define Q4 ((4 << 15) / 5.0)
+#define Q0 Q (-4/5)
+#define Q1 Q (-2/5)
+#define Q2 Q (0)
+#define Q3 Q (2/5)
+#define Q4 Q (4/5)
-static const sample_t q_2_0[128] = {
+static const quantizer_t q_2_0[128] = {
Q0,Q0,Q0,Q0,Q0,Q0,Q0,Q0,Q0,Q0,Q0,Q0,Q0,Q0,Q0,Q0,Q0,Q0,Q0,Q0,Q0,Q0,Q0,Q0,Q0,
Q1,Q1,Q1,Q1,Q1,Q1,Q1,Q1,Q1,Q1,Q1,Q1,Q1,Q1,Q1,Q1,Q1,Q1,Q1,Q1,Q1,Q1,Q1,Q1,Q1,
Q2,Q2,Q2,Q2,Q2,Q2,Q2,Q2,Q2,Q2,Q2,Q2,Q2,Q2,Q2,Q2,Q2,Q2,Q2,Q2,Q2,Q2,Q2,Q2,Q2,
@@ -90,7 +92,7 @@
0,0,0
};
-static const sample_t q_2_1[128] = {
+static const quantizer_t q_2_1[128] = {
Q0,Q0,Q0,Q0,Q0,Q1,Q1,Q1,Q1,Q1,Q2,Q2,Q2,Q2,Q2,Q3,Q3,Q3,Q3,Q3,Q4,Q4,Q4,Q4,Q4,
Q0,Q0,Q0,Q0,Q0,Q1,Q1,Q1,Q1,Q1,Q2,Q2,Q2,Q2,Q2,Q3,Q3,Q3,Q3,Q3,Q4,Q4,Q4,Q4,Q4,
Q0,Q0,Q0,Q0,Q0,Q1,Q1,Q1,Q1,Q1,Q2,Q2,Q2,Q2,Q2,Q3,Q3,Q3,Q3,Q3,Q4,Q4,Q4,Q4,Q4,
@@ -99,7 +101,7 @@
0,0,0
};
-static const sample_t q_2_2[128] = {
+static const quantizer_t q_2_2[128] = {
Q0,Q1,Q2,Q3,Q4,Q0,Q1,Q2,Q3,Q4,Q0,Q1,Q2,Q3,Q4,Q0,Q1,Q2,Q3,Q4,Q0,Q1,Q2,Q3,Q4,
Q0,Q1,Q2,Q3,Q4,Q0,Q1,Q2,Q3,Q4,Q0,Q1,Q2,Q3,Q4,Q0,Q1,Q2,Q3,Q4,Q0,Q1,Q2,Q3,Q4,
Q0,Q1,Q2,Q3,Q4,Q0,Q1,Q2,Q3,Q4,Q0,Q1,Q2,Q3,Q4,Q0,Q1,Q2,Q3,Q4,Q0,Q1,Q2,Q3,Q4,
@@ -114,24 +116,23 @@
#undef Q3
#undef Q4
-static const sample_t q_3[8] = {
- (-6 << 15)/7.0, (-4 << 15)/7.0, (-2 << 15)/7.0, 0,
- ( 2 << 15)/7.0, ( 4 << 15)/7.0, ( 6 << 15)/7.0, 0
-};
-
-#define Q0 ((-10 << 15) / 11.0)
-#define Q1 ((-8 << 15) / 11.0)
-#define Q2 ((-6 << 15) / 11.0)
-#define Q3 ((-4 << 15) / 11.0)
-#define Q4 ((-2 << 15) / 11.0)
-#define Q5 (0)
-#define Q6 ((2 << 15) / 11.0)
-#define Q7 ((4 << 15) / 11.0)
-#define Q8 ((6 << 15) / 11.0)
-#define Q9 ((8 << 15) / 11.0)
-#define QA ((10 << 15) / 11.0)
+static const quantizer_t q_3[8] = {
+ Q (-6/7), Q (-4/7), Q (-2/7), Q (0), Q (2/7), Q (4/7), Q (6/7), 0
+};
+
+#define Q0 Q (-10/11)
+#define Q1 Q (-8/11)
+#define Q2 Q (-6/11)
+#define Q3 Q (-4/11)
+#define Q4 Q (-2/11)
+#define Q5 Q (0)
+#define Q6 Q (2/11)
+#define Q7 Q (4/11)
+#define Q8 Q (6/11)
+#define Q9 Q (8/11)
+#define QA Q (10/11)
-static const sample_t q_4_0[128] = {
+static const quantizer_t q_4_0[128] = {
Q0, Q0, Q0, Q0, Q0, Q0, Q0, Q0, Q0, Q0, Q0,
Q1, Q1, Q1, Q1, Q1, Q1, Q1, Q1, Q1, Q1, Q1,
Q2, Q2, Q2, Q2, Q2, Q2, Q2, Q2, Q2, Q2, Q2,
@@ -146,7 +147,7 @@
0, 0, 0, 0, 0, 0, 0
};
-static const sample_t q_4_1[128] = {
+static const quantizer_t q_4_1[128] = {
Q0, Q1, Q2, Q3, Q4, Q5, Q6, Q7, Q8, Q9, QA,
Q0, Q1, Q2, Q3, Q4, Q5, Q6, Q7, Q8, Q9, QA,
Q0, Q1, Q2, Q3, Q4, Q5, Q6, Q7, Q8, Q9, QA,
@@ -173,15 +174,13 @@
#undef Q9
#undef QA
-static const sample_t q_5[16] = {
- (-14 << 15)/15.0,(-12 << 15)/15.0,(-10 << 15)/15.0,
- ( -8 << 15)/15.0,( -6 << 15)/15.0,( -4 << 15)/15.0,
- ( -2 << 15)/15.0, 0 ,( 2 << 15)/15.0,
- ( 4 << 15)/15.0,( 6 << 15)/15.0,( 8 << 15)/15.0,
- ( 10 << 15)/15.0,( 12 << 15)/15.0,( 14 << 15)/15.0,
- 0
+static const quantizer_t q_5[16] = {
+ Q (-14/15), Q (-12/15), Q (-10/15), Q (-8/15), Q (-6/15),
+ Q (-4/15), Q (-2/15), Q (0), Q (2/15), Q (4/15),
+ Q (6/15), Q (8/15), Q (10/15), Q (12/15), Q (14/15), 0
};
+#ifndef LIBA52_FIXED
static const sample_t scale_factor[25] = {
0.000030517578125,
0.0000152587890625,
@@ -209,6 +208,7 @@
0.00000000000363797880709171295166015625,
0.000000000001818989403545856475830078125
};
+#endif
static const uint16_t dither_lut[256] = {
0x0000, 0xa011, 0xe033, 0x4022, 0x6077, 0xc066, 0x8044, 0x2055,
diff -ruN include.orig/a52.h include/a52.h
--- include.orig/a52.h 2008-07-23 14:10:23.000000000 +0200
+++ include/a52.h 2008-07-23 14:10:36.000000000 +0200
@@ -1,6 +1,6 @@
/*
* a52.h
- * Copyright (C) 2000-2002 Michel Lespinasse <walken@zoy.org>
+ * Copyright (C) 2000-2003 Michel Lespinasse <walken@zoy.org>
* Copyright (C) 1999-2000 Aaron Holtzman <aholtzma@ess.engr.uvic.ca>
*
* This file is part of a52dec, a free ATSC A-52 stream decoder.
@@ -24,10 +24,15 @@
#ifndef A52_H
#define A52_H
-#ifndef LIBA52_DOUBLE
-typedef float sample_t;
-#else
+#if defined(LIBA52_FIXED)
+typedef int32_t sample_t;
+typedef int32_t level_t;
+#elif defined(LIBA52_DOUBLE)
typedef double sample_t;
+typedef double level_t;
+#else
+typedef float sample_t;
+typedef float level_t;
#endif
typedef struct a52_state_s a52_state_t;
@@ -53,9 +58,9 @@
int a52_syncinfo (uint8_t * buf, int * flags,
int * sample_rate, int * bit_rate);
int a52_frame (a52_state_t * state, uint8_t * buf, int * flags,
- sample_t * level, sample_t bias);
+ level_t * level, sample_t bias);
void a52_dynrng (a52_state_t * state,
- sample_t (* call) (sample_t, void *), void * data);
+ level_t (* call) (level_t, void *), void * data);
int a52_block (a52_state_t * state);
void a52_free (a52_state_t * state);
diff -ruN include.orig/attributes.h include/attributes.h
--- include.orig/attributes.h 2008-07-23 14:10:23.000000000 +0200
+++ include/attributes.h 2008-07-23 14:10:36.000000000 +0200
@@ -1,6 +1,6 @@
/*
* attributes.h
- * Copyright (C) 2000-2002 Michel Lespinasse <walken@zoy.org>
+ * Copyright (C) 2000-2003 Michel Lespinasse <walken@zoy.org>
* Copyright (C) 1999-2000 Aaron Holtzman <aholtzma@ess.engr.uvic.ca>
*
* This file is part of a52dec, a free ATSC A-52 stream decoder.
@@ -27,3 +27,11 @@
#else
#define ATTR_ALIGN(align)
#endif
+
+#ifdef HAVE_BUILTIN_EXPECT
+#define likely(x) __builtin_expect ((x) != 0, 1)
+#define unlikely(x) __builtin_expect ((x) != 0, 0)
+#else
+#define likely(x) (x)
+#define unlikely(x) (x)
+#endif
diff -ruN include.orig/mm_accel.h include/mm_accel.h
--- include.orig/mm_accel.h 2008-07-23 14:10:23.000000000 +0200
+++ include/mm_accel.h 2008-07-23 14:10:36.000000000 +0200
@@ -1,6 +1,6 @@
/*
* mm_accel.h
- * Copyright (C) 2000-2002 Michel Lespinasse <walken@zoy.org>
+ * Copyright (C) 2000-2003 Michel Lespinasse <walken@zoy.org>
* Copyright (C) 1999-2000 Aaron Holtzman <aholtzma@ess.engr.uvic.ca>
*
* This file is part of a52dec, a free ATSC A-52 stream decoder.
diff -ruN include.orig/tendra.h include/tendra.h
--- include.orig/tendra.h 2008-07-23 14:10:23.000000000 +0200
+++ include/tendra.h 2008-07-23 14:10:36.000000000 +0200
@@ -1,6 +1,6 @@
/*
* tendra.h
- * Copyright (C) 2000-2002 Michel Lespinasse <walken@zoy.org>
+ * Copyright (C) 2000-2003 Michel Lespinasse <walken@zoy.org>
* Copyright (C) 1999-2000 Aaron Holtzman <aholtzma@ess.engr.uvic.ca>
*
* This file is part of a52dec, a free ATSC A-52 stream decoder.
--- libcaca/configure.orig 2010-02-08 14:46:58.000000000 +0100
+++ libcaca/configure 2010-08-09 17:46:59.000000000 +0200
@@ -16785,33 +16785,9 @@
done
if test "${ac_cv_my_have_cocoa}" = "yes"; then
- case x${target} in
- xpowerpc*darwin*)
- # 10.3 needed to link with X11
- MACOSX_SDK="${MACOSX_SDK:-/Developer/SDKs/MacOSX10.3.9.sdk}"
- GCC_VERSION="${GCC_VERSION:-3.3}"
- ARCH="${ARCH:--arch ppc}"
- MACOSX_SDK_CFLAGS="${MACOSX_SDK_CFLAGS:--nostdinc -isystem ${MACOSX_SDK}/usr/include/gcc/darwin/${GCC_VERSION} -isystem ${MACOSX_SDK}/usr/include}"
- MACOSX_SDK_CXXFLAGS="${MACOSX_SDK_CXXFLAGS:--nostdinc++ -I${MACOSX_SDK}/usr/include/gcc/darwin/${GCC_VERSION}/c++ -I${MACOSX_SDK}/usr/include/gcc/darwin/${GCC_VERSION}/c++/ppc-darwin -I${MACOSX_SDK}/usr/include/gcc/darwin/${GCC_VERSION}/c++/backward}"
- MACOSX_SDK_LDFLAGS="${MACOSX_SDK_LDFLAGS:--L${MACOSX_SDK}/usr/lib/gcc/darwin -L${MACOSX_SDK}/usr/lib/gcc/darwin/${GCC_VERSION} -L${MACOSX_SDK}/usr/lib}"
- ;;
- x*86_64*darwin*)
- MACOSX_SDK="${MACOSX_SDK:-/Developer/SDKs/MacOSX10.5.sdk}"
- GCC_VERSION="${GCC_VERSION:-4.0}"
- ARCH="${ARCH:--arch i386}"
- MACOSX_SDK_CFLAGS="${MACOSX_SDK_CFLAGS:--isysroot ${MACOSX_SDK}}"
- MACOSX_SDK_CXXFLAGS="${MACOSX_SDK_CXXFLAGS:-${MACOSX_SDK_CFLAGS}}"
- ;;
- x*86*darwin*)
- MACOSX_SDK="${MACOSX_SDK:-/Developer/SDKs/MacOSX10.6.sdk}"
- GCC_VERSION="${GCC_VERSION:-4.0}"
- ARCH="${ARCH:--arch i386}"
- MACOSX_SDK_CFLAGS="${MACOSX_SDK_CFLAGS:--isysroot ${MACOSX_SDK}}"
- MACOSX_SDK_CXXFLAGS="${MACOSX_SDK_CXXFLAGS:-${MACOSX_SDK_CFLAGS}}"
- ;;
- esac
- CC="${CC:-gcc-${GCC_VERSION}}"
- CXX="${CXX:-g++-${GCC_VERSION}}"
+ MACOSX_SDK=/Developer/SDKs/MacOSX10.5.sdk
+ MACOSX_SDK_CFLAGS="-isysroot ${MACOSX_SDK}"
+ MACOSX_SDK_CXXFLAGS="${MACOSX_SDK_CFLAGS}"
MACOSX_SDK_FRAMEWORKS="${MACOSX_SDK_FRAMEWORKS:--F${MACOSX_SDK}/System/Library/Frameworks}"
CPPFLAGS="${CPPFLAGS} ${ARCH} ${MACOSX_SDK_FRAMEWORKS}"
CFLAGS="${CFLAGS} ${MACOSX_SDK_CFLAGS}"
--- libcaca/caca/caca.h 2010-02-08 13:34:28.000000000 +0100
+++ libcaca.new/caca/caca.h 2010-08-24 19:27:39.000000000 +0200
@@ -31,7 +31,7 @@
#if defined _DOXYGEN_SKIP_ME
#elif defined _WIN32 && defined __LIBCACA__ && defined DLL_EXPORT
# define __extern extern __declspec(dllexport)
-#elif defined _WIN32 && !defined __LIBCACA__
+#elif defined _WIN32 && !defined __LIBCACA__ && defined __NULL
# define __extern extern __declspec(dllimport)
#else
# define __extern extern
--- Makefile.am.orig 2009-10-24 17:24:43.000000000 +0200
+++ Makefile.am 2009-10-24 17:26:58.000000000 +0200
@@ -1,5 +1,5 @@
-SUBDIRS = include lib examples tests
+SUBDIRS = include lib
EXTRA_DIST = doc/doxygen.conf misc/$(PACKAGE).ebuild
dist-hook:
--- configure.ac.orig 2009-10-25 01:51:35.000000000 +0200
+++ configure.ac 2009-10-25 01:51:44.000000000 +0200
@@ -107,8 +107,6 @@
AC_TYPE_SIZE_T
dnl Checks for library functions.
-AC_FUNC_MALLOC
-AC_FUNC_REALLOC
AC_FUNC_STAT
AC_FUNC_VPRINTF
AC_FUNC_SELECT_ARGTYPES
--- include/cddb/cddb_ni.h.orig 2009-10-25 21:58:20.000000000 +0100
+++ include/cddb/cddb_ni.h 2009-10-25 21:58:46.000000000 +0100
@@ -35,6 +35,7 @@
# include <iconv.h>
#else
typedef void *iconv_t; /* for code uniformity */
+ #define ICONV_CONST const
#endif
#ifdef HAVE_WINDOWS_H
--- include/cddb/cddb_ni.h.orig 2009-10-25 21:58:20.000000000 +0100
+++ include/cddb/cddb_ni.h 2009-10-25 21:58:46.000000000 +0100
@@ -35,6 +35,7 @@
# include <iconv.h>
#else
typedef void *iconv_t; /* for code uniformity */
+ #define ICONV_CONST const
#endif
#ifdef HAVE_WINDOWS_H
--- libcddb/lib/cddb_conn.c 2006-10-15 13:53:11.000000000 +0200
+++ libcddb.new/lib/cddb_conn.c 2010-11-28 21:03:39.012749230 +0100
@@ -100,9 +100,17 @@
c->use_cache = CACHE_ON;
/* construct cache dir '$HOME/[DEFAULT_CACHE]' */
s = getenv("HOME");
- c->cache_dir = (char*)malloc(strlen(s) + 1 + sizeof(DEFAULT_CACHE) + 1);
- sprintf(c->cache_dir, "%s/%s", s, DEFAULT_CACHE);
- c->cache_read = FALSE;
+ if( s )
+ {
+ c->cache_dir = (char*)malloc(strlen(s) + 1 + sizeof(DEFAULT_CACHE) + 1);
+ sprintf(c->cache_dir, "%s/%s", s, DEFAULT_CACHE);
+ c->cache_read = FALSE;
+ }
+ else
+ {
+ c->cache_dir = NULL;
+ c->use_cache = CACHE_OFF;
+ }
/* use anonymous@localhost */
c->user = strdup(DEFAULT_USER);
--- libcddb.pc.in.orig 2009-10-25 21:36:57.000000000 +0100
+++ libcddb.pc.in 2009-10-25 21:36:11.000000000 +0100
@@ -6,5 +6,5 @@
Name: libcddb
Description: CDDB server access library
Version: @VERSION@
-Libs: -L${libdir} -lcddb @LIBICONV@
+Libs: -L${libdir} -lcddb -lregex ${libdir}/libregex.a @LIBICONV@ -lws2_32
Cflags: -I${includedir}
--- libcdio/Makefile.am 2008-03-15 19:21:28.000000000 +0300
+++ libcdio.patched/Makefile.am 2008-04-04 03:29:17.000000000 +0400
@@ -48,8 +48,8 @@
libcdio++.pc \
libiso9660.pc \
libiso9660++.pc \
- libudf.pc
- $(paranoiapcs)
+ libudf.pc \
+ $(paranoiapcs)
$(pkgconfig_DATA): config.status
--- libcdio-orig/lib/driver/osx.c 2007-08-12 14:38:25.000000000 +0200
+++ libcdio/lib/driver/osx.c 2008-12-27 00:38:21.000000000 +0100
@@ -58,7 +58,7 @@
#include <mach/mach.h>
#include <Carbon/Carbon.h>
-#include <IOKit/scsi-commands/SCSITaskLib.h>
+#include <IOKit/scsi/SCSITaskLib.h>
#include <IOKit/IOCFPlugIn.h>
#include <mach/mach_error.h>
@@ -77,7 +77,7 @@
#include <CoreFoundation/CoreFoundation.h>
#include <IOKit/IOKitLib.h>
#include <IOKit/IOBSD.h>
-#include <IOKit/scsi-commands/IOSCSIMultimediaCommandsDevice.h>
+#include <IOKit/scsi/IOSCSIMultimediaCommandsDevice.h>
#include <IOKit/storage/IOCDTypes.h>
#include <IOKit/storage/IODVDTypes.h>
#include <IOKit/storage/IOMedia.h>
--- libdc1394-1.2.1/Makefile 2006-11-22 21:49:05.000000000 +0100
+++ libdc1394/Makefile 2006-11-22 21:48:12.000000000 +0100
@@ -177,7 +177,7 @@ sbindir = ${exec_prefix}/sbin
sharedstatedir = ${prefix}/com
sysconfdir = ${prefix}/etc
target_alias =
-SUBDIRS = libdc1394 examples
+SUBDIRS = libdc1394
MAINTAINERCLEANFILES = Makefile.in aclocal.m4 configure config.h.in \
stamp-h.in
Index: libdca/parse.c
===================================================================
--- libdca/parse.c (revision 90)
+++ libdca/parse.c (working copy)
@@ -1193,11 +1193,14 @@
for (k=0;k<16;k++)
{
B[k] = 0.0;
- for (i=0;i<16;i++)
+
+ B[k]+=(raXin[0])*state->cos_mod[j++];
+
+ for (i=1;i<16;i++)
{
- if(i>0) B[k]+=(raXin[2*i]+raXin[2*i-1])*state->cos_mod[j++];
- else B[k]+=(raXin[2*i])*state->cos_mod[j++];
+ B[k]+=(raXin[2*i]+raXin[2*i-1])*state->cos_mod[j++];
}
+
SUM[k]=A[k]+B[k];
DIFF[k]=A[k]-B[k];
}
--- libdvbpsi/examples/decode_mpeg.c 2010-02-12 11:17:47.000000000 +0100
+++ libdvbpsi.new/examples/decode_mpeg.c 2011-04-29 02:21:40.758841339 +0200
@@ -529,8 +529,8 @@
int i_fd = -1;
int i_mtu = 1316; /* (7 * 188) = 1316 < 1500 network MTU */
-#ifdef HAVE_SYS_SOCKET_H
int i_report = REPORT_UDP; /* REPORT_PCR REPORT_UDP */
+#ifdef HAVE_SYS_SOCKET_H
int i_port = 0;
char *ipaddress = NULL;
#endif
diff -ruN libdvdnav/Makefile.am libdvdnav.new/Makefile.am
--- libdvdnav/Makefile.am 2008-06-18 17:06:33.000000000 +0200
+++ libdvdnav.new/Makefile.am 2011-10-11 01:02:18.768524699 +0200
@@ -1,7 +1,7 @@
include $(top_srcdir)/misc/Makefile.common
-SUBDIRS = src examples doc misc m4
+SUBDIRS = src misc m4
EXTRA_DIST = autogen.sh \
AUTHORS \
diff -ruN libdvdnav/src/vm/vm.c libdvdnav.new/src/vm/vm.c
--- libdvdnav/src/vm/vm.c 2010-11-22 00:59:43.000000000 +0100
+++ libdvdnav.new/src/vm/vm.c 2011-10-11 01:02:07.852470536 +0200
@@ -174,12 +174,11 @@
fd = open(device, O_RDONLY);
if (fd > 0) {
off = lseek( fd, 32 * (off_t) DVD_VIDEO_LB_LEN, SEEK_SET );
- if( off == ( 32 * (off_t) DVD_VIDEO_LB_LEN ) ) {
+ if (off == 16) {
off = read( fd, data, DVD_VIDEO_LB_LEN );
- close(fd);
if (off == ( (off_t) DVD_VIDEO_LB_LEN )) {
fprintf(MSG_OUT, "libdvdnav: DVD Title: ");
- for(i=25; i < 73; i++ ) {
+ for(i=40; i < 73; i++ ) {
if((data[i] == 0)) break;
if((data[i] > 32) && (data[i] < 127)) {
fprintf(MSG_OUT, "%c", data[i]);
@@ -187,10 +186,12 @@
fprintf(MSG_OUT, " ");
}
}
- strncpy(name, (char*) &data[25], 48);
- name[48] = 0;
+ strncpy(name, (char*) &data[40], 32);
+ i=31;
+ while( (i>=0) && (name[i] <= ' ')) --i;
+ name[i+1] = '\0';
fprintf(MSG_OUT, "\nlibdvdnav: DVD Serial Number: ");
- for(i=73; i < 89; i++ ) {
+ for(i=813; i < 829; i++ ) {
if((data[i] == 0)) break;
if((data[i] > 32) && (data[i] < 127)) {
fprintf(MSG_OUT, "%c", data[i]);
Index: configure.ac
===================================================================
--- configure.ac (revision 1162)
+++ configure.ac (working copy)
@@ -137,27 +137,59 @@
dnl ---------------------------------------------
dnl dynamic linker
dnl ---------------------------------------------
-case $host in
- *mingw32*)
- CFLAGS="-idirafter \$(top_srcdir)/msvc/include $CFLAGS"
- LDFLAGS="-no-undefined $LDFLAGS"
- ;;
- *cygwin*)
- LDFLAGS="-no-undefined $LDFLAGS"
- ;;
- *os2*)
- LDFLAGS="-no-undefined -Zbin-files $LDFLAGS"
- ;;
- *)
- AC_CHECK_LIB(c, dlopen,
- DYNAMIC_LD_LIBS="",
- AC_CHECK_LIB(dl, dlopen,
- DYNAMIC_LD_LIBS="-ldl",
- AC_MSG_ERROR(dynamic linker needed)))
- AC_SUBST(DYNAMIC_LD_LIBS)
- ;;
-esac
+AC_ARG_WITH( [libdvdcss],
+ [ --with-libdvdcss[=PATH] force linking against libdvdcss],
+ [if test x"$withval" != xno; then
+ link_dvdcss=yes
+ fi
+ if test x"$withval" != xyes; then
+ dvdcss_path=$withval
+ fi])
+if test x"$link_dvdcss" != xyes; then
+dnl dlopen libdvdcss
+ AC_CHECK_FUNC( dlopen,
+ [DL_LIBS="" ],
+ AC_CHECK_LIB( dl, dlopen,
+ [DL_LIBS=-ld ],
+ AC_MSG_ERROR(You need libdl (dlopen))
+ )
+ )
+else
+dnl link with libdvdcss
+ if test -z "$dvdcss_path"; then
+ AC_CHECK_LIB(dvdcss, dvdcss_interface_2,
+ [ CSS_LIBS=-ldvdcss ],
+ AC_MSG_ERROR(You need libdvdcss.so.2 or later)
+ )
+ AC_CHECK_HEADERS(dvdcss/dvdcss.h,
+ [ ],
+ AC_MSG_ERROR(You need libdvdcss (dvdcss.h))
+ )
+ else
+ saved_CFLAGS=$CFLAGS
+ CFLAGS="$CFLAGS -L$dvdcss_path/lib"
+ AC_CHECK_LIB(dvdcss, dvdcss_interface_2,
+ [ CSS_LIBS="-L$dvdcss_path/lib -R$dvdcss_path/lib -ldvdcss"
+ CSS_CFLAGS=-I$dvdcss_path/include ],
+ AC_MSG_ERROR(You need libdvdcss.so.2 or later)
+ )
+ CFLAGS=$saved_CFLAGS
+ dnl -w added to shutup GCC3.1's cpp warning about -I/usr/local
+ saved_CPPFLAGS=$CPPFLAGS
+ CPPFLAGS="-w $CPPFLAGS -I$dvdcss_path/include"
+ AC_CHECK_HEADERS(dvdcss/dvdcss.h,
+ [ ],
+ AC_MSG_ERROR(You need libdvdcss (dvdcss.h))
+ )
+ CPPFLAGS=$saved_CPPFLAGS
+ fi
+fi
+
+AC_SUBST(DL_LIBS)
+AC_SUBST(CSS_LIBS)
+AC_SUBST(CSS_CFLAGS)
+
dnl ---------------------------------------------
dnl cflags
dnl ---------------------------------------------
Index: src/dvd_reader.c
===================================================================
--- src/dvd_reader.c (revision 1157)
+++ src/dvd_reader.c (working copy)
@@ -34,6 +34,7 @@
#include <limits.h>
#include <dirent.h>
+#if 0
/* misc win32 helpers */
#ifdef WIN32
#ifndef HAVE_GETTIMEOFDAY
@@ -52,6 +53,7 @@
#include <io.h> /* read() */
#define lseek64 _lseeki64
#endif
+#endif
#if defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__) || defined(__bsdi__) || defined(__DARWIN__)
#define SYS_BSD 1
Index: src/dvdread/ifo_types.h
===================================================================
--- src/dvdread/ifo_types.h (révision 1188)
+++ src/dvdread/ifo_types.h (copie de travail)
@@ -32,7 +32,7 @@
#if defined(__GNUC__)
#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95)
-#define ATTRIBUTE_PACKED __attribute__ ((packed))
+#define ATTRIBUTE_PACKED __attribute__ ((packed,gcc_struct))
#define PRAGMA_PACK 0
#endif
#endif
--- libgpg-error/src/Makefile.am 2010-04-14 11:16:44.000000000 +0200
+++ libgpg-error.new/src/Makefile.am 2010-08-09 11:21:56.000000000 +0200
@@ -60,7 +60,7 @@
arch_sources = w32-gettext.c
RCCOMPILE = $(RC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
- -DLOCALEDIR=\"$(localedir)\" $(AM_CPPFLAGS) $(CPPFLAGS)
+ -DLOCALEDIR=\"$(localedir)\" $(AM_CPPFLAGS)
LTRCCOMPILE = $(LIBTOOL) --mode=compile --tag=RC $(RCCOMPILE)
SUFFIXES = .rc .lo
diff -ruN libiconv/lib/aliases.h libiconv.new/lib/aliases.h
--- libiconv/lib/aliases.h 2009-06-30 22:51:58.000000000 +0200
+++ libiconv.new/lib/aliases.h 2009-09-02 23:20:33.000000000 +0200
@@ -808,852 +808,852 @@
{
{-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
#line 308 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str7, ei_sjis},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str7, ei_sjis},
{-1},
#line 288 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str9, ei_iso646_cn},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str9, ei_iso646_cn},
{-1},
#line 209 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str11, ei_cp1131},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str11, ei_cp1131},
#line 353 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str12, ei_johab},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str12, ei_johab},
#line 207 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str13, ei_cp866},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str13, ei_cp866},
{-1},
#line 244 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str15, ei_cp1133},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str15, ei_cp1133},
{-1}, {-1},
#line 174 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str18, ei_cp1251},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str18, ei_cp1251},
#line 205 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str19, ei_cp866},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str19, ei_cp866},
#line 189 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str20, ei_cp1256},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str20, ei_cp1256},
#line 203 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str21, ei_cp862},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str21, ei_cp862},
#line 180 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str22, ei_cp1253},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str22, ei_cp1253},
{-1},
#line 323 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str24, ei_cp936},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str24, ei_cp936},
{-1},
#line 186 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str26, ei_cp1255},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str26, ei_cp1255},
#line 201 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str27, ei_cp862},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str27, ei_cp862},
#line 177 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str28, ei_cp1252},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str28, ei_cp1252},
{-1},
#line 51 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str30, ei_c99},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str30, ei_c99},
{-1},
#line 311 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str32, ei_cp932},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str32, ei_cp932},
{-1},
#line 195 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str34, ei_cp1258},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str34, ei_cp1258},
{-1}, {-1}, {-1}, {-1}, {-1},
#line 57 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str40, ei_iso8859_1},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str40, ei_iso8859_1},
#line 60 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str41, ei_iso8859_1},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str41, ei_iso8859_1},
#line 134 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str42, ei_iso8859_10},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str42, ei_iso8859_10},
#line 76 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str43, ei_iso8859_3},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str43, ei_iso8859_3},
{-1},
#line 126 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str45, ei_iso8859_9},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str45, ei_iso8859_9},
#line 68 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str46, ei_iso8859_2},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str46, ei_iso8859_2},
{-1}, {-1},
#line 151 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str49, ei_iso8859_14},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str49, ei_iso8859_14},
{-1}, {-1}, {-1},
#line 318 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str53, ei_euc_cn},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str53, ei_euc_cn},
{-1}, {-1}, {-1},
#line 62 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str57, ei_iso8859_1},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str57, ei_iso8859_1},
#line 139 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str58, ei_iso8859_11},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str58, ei_iso8859_11},
#line 102 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str59, ei_iso8859_6},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str59, ei_iso8859_6},
#line 166 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str60, ei_iso8859_16},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str60, ei_iso8859_16},
#line 78 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str61, ei_iso8859_3},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str61, ei_iso8859_3},
#line 145 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str62, ei_iso8859_13},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str62, ei_iso8859_13},
{-1}, {-1},
#line 93 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str65, ei_iso8859_5},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str65, ei_iso8859_5},
#line 159 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str66, ei_iso8859_15},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str66, ei_iso8859_15},
#line 70 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str67, ei_iso8859_2},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str67, ei_iso8859_2},
{-1}, {-1},
#line 317 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str70, ei_euc_cn},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str70, ei_euc_cn},
{-1}, {-1},
#line 120 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str73, ei_iso8859_8},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str73, ei_iso8859_8},
#line 53 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str74, ei_iso8859_1},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str74, ei_iso8859_1},
#line 137 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str75, ei_iso8859_11},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str75, ei_iso8859_11},
#line 94 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str76, ei_iso8859_6},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str76, ei_iso8859_6},
#line 160 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str77, ei_iso8859_16},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str77, ei_iso8859_16},
#line 71 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str78, ei_iso8859_3},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str78, ei_iso8859_3},
#line 140 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str79, ei_iso8859_13},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str79, ei_iso8859_13},
{-1},
#line 128 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str81, ei_iso8859_9},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str81, ei_iso8859_9},
#line 87 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str82, ei_iso8859_5},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str82, ei_iso8859_5},
#line 154 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str83, ei_iso8859_15},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str83, ei_iso8859_15},
#line 63 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str84, ei_iso8859_2},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str84, ei_iso8859_2},
#line 286 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str85, ei_iso646_cn},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str85, ei_iso646_cn},
#line 227 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str86, ei_hp_roman8},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str86, ei_hp_roman8},
{-1},
#line 84 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str88, ei_iso8859_4},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str88, ei_iso8859_4},
{-1},
#line 114 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str90, ei_iso8859_8},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str90, ei_iso8859_8},
#line 350 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str91, ei_cp949},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str91, ei_cp949},
#line 54 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str92, ei_iso8859_1},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str92, ei_iso8859_1},
#line 138 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str93, ei_iso8859_11},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str93, ei_iso8859_11},
#line 95 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str94, ei_iso8859_6},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str94, ei_iso8859_6},
#line 161 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str95, ei_iso8859_16},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str95, ei_iso8859_16},
#line 72 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str96, ei_iso8859_3},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str96, ei_iso8859_3},
#line 141 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str97, ei_iso8859_13},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str97, ei_iso8859_13},
#line 121 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str98, ei_iso8859_9},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str98, ei_iso8859_9},
#line 162 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str99, ei_iso8859_16},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str99, ei_iso8859_16},
#line 88 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str100, ei_iso8859_5},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str100, ei_iso8859_5},
#line 155 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str101, ei_iso8859_15},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str101, ei_iso8859_15},
#line 64 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str102, ei_iso8859_2},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str102, ei_iso8859_2},
#line 59 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str103, ei_iso8859_1},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str103, ei_iso8859_1},
{-1},
#line 133 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str105, ei_iso8859_10},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str105, ei_iso8859_10},
#line 236 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str106, ei_pt154},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str106, ei_pt154},
#line 75 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str107, ei_iso8859_3},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str107, ei_iso8859_3},
#line 115 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str108, ei_iso8859_8},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str108, ei_iso8859_8},
{-1},
#line 156 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str110, ei_iso8859_15},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str110, ei_iso8859_15},
#line 125 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str111, ei_iso8859_9},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str111, ei_iso8859_9},
#line 183 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str112, ei_cp1254},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str112, ei_cp1254},
#line 67 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str113, ei_iso8859_2},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str113, ei_iso8859_2},
#line 328 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str114, ei_iso2022_cn},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str114, ei_iso2022_cn},
{-1},
#line 122 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str116, ei_iso8859_9},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str116, ei_iso8859_9},
#line 293 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str117, ei_gb2312},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str117, ei_gb2312},
#line 16 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str118, ei_ascii},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str118, ei_ascii},
#line 150 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str119, ei_iso8859_14},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str119, ei_iso8859_14},
#line 13 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str120, ei_ascii},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str120, ei_ascii},
#line 252 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str121, ei_tis620},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str121, ei_tis620},
#line 282 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str122, ei_jisx0212},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str122, ei_jisx0212},
{-1},
#line 255 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str124, ei_viscii},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str124, ei_viscii},
#line 107 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str125, ei_iso8859_7},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str125, ei_iso8859_7},
#line 22 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str126, ei_ascii},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str126, ei_ascii},
#line 294 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str127, ei_isoir165},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str127, ei_isoir165},
{-1},
#line 257 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str129, ei_viscii},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str129, ei_viscii},
#line 163 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str130, ei_iso8859_16},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str130, ei_iso8859_16},
#line 212 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str131, ei_mac_roman},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str131, ei_mac_roman},
{-1}, {-1}, {-1}, {-1},
#line 117 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str136, ei_iso8859_8},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str136, ei_iso8859_8},
#line 291 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str137, ei_gb2312},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str137, ei_gb2312},
{-1},
#line 206 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str139, ei_cp866},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str139, ei_cp866},
{-1}, {-1},
#line 327 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str142, ei_iso2022_cn},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str142, ei_iso2022_cn},
#line 324 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str143, ei_cp936},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str143, ei_cp936},
#line 158 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str144, ei_iso8859_15},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str144, ei_iso8859_15},
{-1},
#line 283 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str146, ei_jisx0212},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str146, ei_jisx0212},
#line 202 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str147, ei_cp862},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str147, ei_cp862},
{-1}, {-1},
#line 21 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str150, ei_ascii},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str150, ei_ascii},
#line 86 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str151, ei_iso8859_4},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str151, ei_iso8859_4},
#line 153 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str152, ei_iso8859_14},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str152, ei_iso8859_14},
#line 148 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str153, ei_iso8859_14},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str153, ei_iso8859_14},
#line 149 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str154, ei_iso8859_14},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str154, ei_iso8859_14},
{-1},
#line 351 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str156, ei_cp949},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str156, ei_cp949},
#line 199 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str157, ei_cp850},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str157, ei_cp850},
{-1},
#line 330 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str159, ei_hz},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str159, ei_hz},
#line 58 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str160, ei_iso8859_1},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str160, ei_iso8859_1},
{-1},
#line 152 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str162, ei_iso8859_14},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str162, ei_iso8859_14},
#line 109 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str163, ei_iso8859_7},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str163, ei_iso8859_7},
#line 171 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str164, ei_cp1250},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str164, ei_cp1250},
#line 319 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str165, ei_euc_cn},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str165, ei_euc_cn},
#line 197 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str166, ei_cp850},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str166, ei_cp850},
{-1},
#line 79 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str168, ei_iso8859_4},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str168, ei_iso8859_4},
#line 146 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str169, ei_iso8859_14},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str169, ei_iso8859_14},
#line 341 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str170, ei_cp950},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str170, ei_cp950},
#line 91 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str171, ei_iso8859_5},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str171, ei_iso8859_5},
{-1}, {-1}, {-1}, {-1},
#line 131 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str176, ei_iso8859_10},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str176, ei_iso8859_10},
{-1}, {-1},
#line 24 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str179, ei_ucs2},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str179, ei_ucs2},
#line 258 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str180, ei_tcvn},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str180, ei_tcvn},
#line 124 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str181, ei_iso8859_9},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str181, ei_iso8859_9},
{-1}, {-1}, {-1},
#line 269 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str185, ei_jisx0201},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str185, ei_jisx0201},
#line 80 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str186, ei_iso8859_4},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str186, ei_iso8859_4},
#line 147 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str187, ei_iso8859_14},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str187, ei_iso8859_14},
#line 165 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str188, ei_iso8859_16},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str188, ei_iso8859_16},
#line 299 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str189, ei_ksc5601},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str189, ei_ksc5601},
{-1},
#line 66 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str191, ei_iso8859_2},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str191, ei_iso8859_2},
{-1}, {-1}, {-1}, {-1},
#line 329 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str196, ei_iso2022_cn_ext},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str196, ei_iso2022_cn_ext},
#line 83 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str197, ei_iso8859_4},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str197, ei_iso8859_4},
{-1}, {-1},
#line 157 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str200, ei_iso8859_15},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str200, ei_iso8859_15},
#line 275 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str201, ei_jisx0208},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str201, ei_jisx0208},
#line 296 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str202, ei_ksc5601},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str202, ei_ksc5601},
{-1},
#line 136 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str204, ei_iso8859_10},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str204, ei_iso8859_10},
{-1}, {-1},
#line 256 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str207, ei_viscii},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str207, ei_viscii},
{-1},
#line 144 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str209, ei_iso8859_13},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str209, ei_iso8859_13},
{-1},
#line 264 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str211, ei_iso646_jp},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str211, ei_iso646_jp},
#line 234 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str212, ei_pt154},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str212, ei_pt154},
#line 247 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str213, ei_tis620},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str213, ei_tis620},
{-1},
#line 74 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str215, ei_iso8859_3},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str215, ei_iso8859_3},
#line 30 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str216, ei_ucs2be},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str216, ei_ucs2be},
#line 233 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str217, ei_koi8_t},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str217, ei_koi8_t},
#line 239 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str218, ei_rk1048},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str218, ei_rk1048},
{-1}, {-1},
#line 129 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str221, ei_iso8859_10},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str221, ei_iso8859_10},
#line 251 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str222, ei_tis620},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str222, ei_tis620},
#line 14 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str223, ei_ascii},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str223, ei_ascii},
#line 61 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str224, ei_iso8859_1},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str224, ei_iso8859_1},
{-1},
#line 135 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str226, ei_iso8859_10},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str226, ei_iso8859_10},
{-1},
#line 77 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str228, ei_iso8859_3},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str228, ei_iso8859_3},
{-1},
#line 246 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str230, ei_tis620},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str230, ei_tis620},
{-1},
#line 127 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str232, ei_iso8859_9},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str232, ei_iso8859_9},
{-1},
#line 69 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str234, ei_iso8859_2},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str234, ei_iso8859_2},
#line 249 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str235, ei_tis620},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str235, ei_tis620},
#line 242 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str236, ei_rk1048},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str236, ei_rk1048},
#line 92 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str237, ei_iso8859_5},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str237, ei_iso8859_5},
#line 241 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str238, ei_rk1048},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str238, ei_rk1048},
#line 130 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str239, ei_iso8859_10},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str239, ei_iso8859_10},
{-1},
#line 29 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str241, ei_ucs2be},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str241, ei_ucs2be},
#line 38 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str242, ei_utf16},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str242, ei_utf16},
{-1}, {-1},
#line 173 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str245, ei_cp1250},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str245, ei_cp1250},
{-1}, {-1},
#line 26 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str248, ei_ucs2},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str248, ei_ucs2},
#line 168 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str249, ei_koi8_r},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str249, ei_koi8_r},
#line 164 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str250, ei_iso8859_16},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str250, ei_iso8859_16},
{-1},
#line 41 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str252, ei_utf32},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str252, ei_utf32},
{-1},
#line 35 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str254, ei_ucs4},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str254, ei_ucs4},
#line 23 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str255, ei_utf8},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str255, ei_utf8},
{-1}, {-1}, {-1},
#line 90 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str259, ei_iso8859_5},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str259, ei_iso8859_5},
{-1},
#line 167 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str261, ei_koi8_r},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str261, ei_koi8_r},
#line 179 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str262, ei_cp1252},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str262, ei_cp1252},
#line 33 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str263, ei_ucs4},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str263, ei_ucs4},
#line 82 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str264, ei_iso8859_4},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str264, ei_iso8859_4},
{-1},
#line 245 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str266, ei_cp1133},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str266, ei_cp1133},
#line 208 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str267, ei_cp866},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str267, ei_cp866},
{-1}, {-1},
#line 298 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str270, ei_ksc5601},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str270, ei_ksc5601},
#line 356 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str271, ei_local_char},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str271, ei_local_char},
{-1},
#line 348 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str273, ei_euc_kr},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str273, ei_euc_kr},
{-1}, {-1}, {-1},
#line 335 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str277, ei_ces_big5},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str277, ei_ces_big5},
#line 253 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str278, ei_cp874},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str278, ei_cp874},
#line 230 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str279, ei_armscii_8},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str279, ei_armscii_8},
{-1}, {-1},
#line 340 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str282, ei_ces_big5},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str282, ei_ces_big5},
#line 31 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str283, ei_ucs2le},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str283, ei_ucs2le},
{-1}, {-1},
#line 198 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str286, ei_cp850},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str286, ei_cp850},
#line 12 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str287, ei_ascii},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str287, ei_ascii},
{-1}, {-1},
#line 347 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str290, ei_euc_kr},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str290, ei_euc_kr},
{-1}, {-1},
#line 321 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str293, ei_euc_cn},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str293, ei_euc_cn},
#line 336 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str294, ei_ces_big5},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str294, ei_ces_big5},
#line 250 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str295, ei_tis620},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str295, ei_tis620},
{-1}, {-1}, {-1},
#line 339 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str299, ei_ces_big5},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str299, ei_ces_big5},
{-1}, {-1},
#line 218 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str302, ei_mac_cyrillic},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str302, ei_mac_cyrillic},
#line 322 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str303, ei_ces_gbk},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str303, ei_ces_gbk},
#line 248 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str304, ei_tis620},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str304, ei_tis620},
#line 176 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str305, ei_cp1251},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str305, ei_cp1251},
{-1},
#line 237 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str307, ei_pt154},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str307, ei_pt154},
#line 108 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str308, ei_iso8859_7},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str308, ei_iso8859_7},
{-1},
#line 142 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str310, ei_iso8859_13},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str310, ei_iso8859_13},
#line 110 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str311, ei_iso8859_7},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str311, ei_iso8859_7},
{-1}, {-1}, {-1},
#line 301 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str315, ei_ksc5601},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str315, ei_ksc5601},
{-1}, {-1},
#line 85 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str318, ei_iso8859_4},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str318, ei_iso8859_4},
{-1}, {-1},
#line 25 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str321, ei_ucs2},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str321, ei_ucs2},
{-1}, {-1}, {-1},
#line 37 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str325, ei_ucs4le},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str325, ei_ucs4le},
#line 235 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str326, ei_pt154},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str326, ei_pt154},
{-1}, {-1}, {-1},
#line 266 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str330, ei_iso646_jp},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str330, ei_iso646_jp},
{-1}, {-1}, {-1},
#line 355 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str334, ei_iso2022_kr},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str334, ei_iso2022_kr},
{-1},
#line 226 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str336, ei_hp_roman8},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str336, ei_hp_roman8},
#line 56 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str337, ei_iso8859_1},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str337, ei_iso8859_1},
{-1}, {-1},
#line 277 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str340, ei_jisx0208},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str340, ei_jisx0208},
{-1}, {-1}, {-1},
#line 101 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str344, ei_iso8859_6},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str344, ei_iso8859_6},
{-1}, {-1},
#line 19 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str347, ei_ascii},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str347, ei_ascii},
{-1}, {-1},
#line 40 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str350, ei_utf16le},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str350, ei_utf16le},
#line 15 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str351, ei_ascii},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str351, ei_ascii},
{-1}, {-1},
#line 192 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str354, ei_cp1257},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str354, ei_cp1257},
#line 215 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str355, ei_mac_iceland},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str355, ei_mac_iceland},
#line 43 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str356, ei_utf32le},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str356, ei_utf32le},
#line 300 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str357, ei_ksc5601},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str357, ei_ksc5601},
{-1},
#line 100 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str359, ei_iso8859_6},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str359, ei_iso8859_6},
{-1}, {-1},
#line 354 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str362, ei_iso2022_kr},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str362, ei_iso2022_kr},
#line 34 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str363, ei_ucs4},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str363, ei_ucs4},
{-1}, {-1}, {-1},
#line 27 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str367, ei_ucs2be},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str367, ei_ucs2be},
#line 290 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str368, ei_gb2312},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str368, ei_gb2312},
#line 265 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str369, ei_iso646_jp},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str369, ei_iso646_jp},
{-1},
#line 243 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str371, ei_mulelao},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str371, ei_mulelao},
#line 284 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str372, ei_jisx0212},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str372, ei_jisx0212},
#line 111 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str373, ei_iso8859_7},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str373, ei_iso8859_7},
{-1},
#line 260 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str375, ei_tcvn},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str375, ei_tcvn},
#line 292 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str376, ei_gb2312},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str376, ei_gb2312},
{-1},
#line 326 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str378, ei_gb18030},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str378, ei_gb18030},
#line 259 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str379, ei_tcvn},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str379, ei_tcvn},
{-1}, {-1}, {-1}, {-1},
#line 285 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str384, ei_iso646_cn},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str384, ei_iso646_cn},
#line 238 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str385, ei_pt154},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str385, ei_pt154},
#line 98 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str386, ei_iso8859_6},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str386, ei_iso8859_6},
{-1},
#line 46 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str388, ei_utf7},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str388, ei_utf7},
{-1}, {-1},
#line 18 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str391, ei_ascii},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str391, ei_ascii},
#line 32 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str392, ei_ucs2le},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str392, ei_ucs2le},
#line 113 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str393, ei_iso8859_7},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str393, ei_iso8859_7},
{-1},
#line 295 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str395, ei_isoir165},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str395, ei_isoir165},
#line 240 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str396, ei_rk1048},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str396, ei_rk1048},
{-1},
#line 17 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str398, ei_ascii},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str398, ei_ascii},
{-1}, {-1}, {-1}, {-1},
#line 169 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str403, ei_koi8_u},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str403, ei_koi8_u},
{-1}, {-1},
#line 47 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str406, ei_ucs2internal},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str406, ei_ucs2internal},
{-1}, {-1},
#line 36 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str409, ei_ucs4be},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str409, ei_ucs4be},
#line 103 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str410, ei_iso8859_7},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str410, ei_iso8859_7},
#line 307 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str411, ei_sjis},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str411, ei_sjis},
#line 320 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str412, ei_euc_cn},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str412, ei_euc_cn},
#line 262 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str413, ei_iso646_jp},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str413, ei_iso646_jp},
{-1},
#line 45 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str415, ei_utf7},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str415, ei_utf7},
#line 175 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str416, ei_cp1251},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str416, ei_cp1251},
#line 190 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str417, ei_cp1256},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str417, ei_cp1256},
#line 181 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str418, ei_cp1253},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str418, ei_cp1253},
{-1},
#line 187 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str420, ei_cp1255},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str420, ei_cp1255},
#line 178 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str421, ei_cp1252},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str421, ei_cp1252},
#line 325 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str422, ei_cp936},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str422, ei_cp936},
{-1},
#line 196 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str424, ei_cp1258},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str424, ei_cp1258},
#line 349 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str425, ei_euc_kr},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str425, ei_euc_kr},
#line 297 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str426, ei_ksc5601},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str426, ei_ksc5601},
{-1},
#line 104 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str428, ei_iso8859_7},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str428, ei_iso8859_7},
#line 306 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str429, ei_sjis},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str429, ei_sjis},
{-1}, {-1}, {-1},
#line 274 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str433, ei_jisx0208},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str433, ei_jisx0208},
#line 39 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str434, ei_utf16be},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str434, ei_utf16be},
{-1}, {-1}, {-1}, {-1},
#line 143 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str439, ei_iso8859_13},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str439, ei_iso8859_13},
#line 42 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str440, ei_utf32be},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str440, ei_utf32be},
{-1}, {-1}, {-1}, {-1},
#line 224 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str445, ei_mac_thai},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str445, ei_mac_thai},
{-1}, {-1},
#line 49 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str448, ei_ucs4internal},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str448, ei_ucs4internal},
#line 112 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str449, ei_iso8859_7},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str449, ei_iso8859_7},
{-1},
#line 210 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str451, ei_mac_roman},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str451, ei_mac_roman},
#line 304 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str452, ei_euc_jp},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str452, ei_euc_jp},
{-1}, {-1}, {-1},
#line 333 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str456, ei_euc_tw},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str456, ei_euc_tw},
#line 287 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str457, ei_iso646_cn},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str457, ei_iso646_cn},
#line 132 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str458, ei_iso8859_10},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str458, ei_iso8859_10},
#line 97 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str459, ei_iso8859_6},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str459, ei_iso8859_6},
{-1},
#line 276 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str461, ei_jisx0208},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str461, ei_jisx0208},
{-1},
#line 184 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str463, ei_cp1254},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str463, ei_cp1254},
#line 73 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str464, ei_iso8859_3},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str464, ei_iso8859_3},
{-1},
#line 89 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str466, ei_iso8859_5},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str466, ei_iso8859_5},
#line 20 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str467, ei_ascii},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str467, ei_ascii},
{-1}, {-1},
#line 116 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str470, ei_iso8859_8},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str470, ei_iso8859_8},
#line 331 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str471, ei_hz},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str471, ei_hz},
{-1},
#line 332 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str473, ei_euc_tw},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str473, ei_euc_tw},
#line 289 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str474, ei_iso646_cn},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str474, ei_iso646_cn},
#line 229 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str475, ei_nextstep},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str475, ei_nextstep},
#line 316 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str476, ei_iso2022_jp2},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str476, ei_iso2022_jp2},
{-1},
#line 123 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str478, ei_iso8859_9},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str478, ei_iso8859_9},
{-1},
#line 170 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str480, ei_koi8_ru},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str480, ei_koi8_ru},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1},
#line 211 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str487, ei_mac_roman},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str487, ei_mac_roman},
{-1},
#line 172 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str489, ei_cp1250},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str489, ei_cp1250},
{-1}, {-1},
#line 279 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str492, ei_jisx0212},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str492, ei_jisx0212},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
#line 314 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str500, ei_iso2022_jp1},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str500, ei_iso2022_jp1},
#line 216 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str501, ei_mac_croatian},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str501, ei_mac_croatian},
#line 225 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str502, ei_hp_roman8},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str502, ei_hp_roman8},
{-1}, {-1},
#line 315 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str505, ei_iso2022_jp2},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str505, ei_iso2022_jp2},
{-1}, {-1}, {-1},
#line 81 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str509, ei_iso8859_4},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str509, ei_iso8859_4},
#line 345 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str510, ei_big5hkscs2004},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str510, ei_big5hkscs2004},
{-1}, {-1}, {-1}, {-1},
#line 99 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str515, ei_iso8859_6},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str515, ei_iso8859_6},
{-1}, {-1},
#line 303 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str518, ei_euc_jp},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str518, ei_euc_jp},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1},
#line 338 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str525, ei_ces_big5},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str525, ei_ces_big5},
{-1},
#line 344 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str527, ei_big5hkscs2004},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str527, ei_big5hkscs2004},
{-1}, {-1}, {-1},
#line 214 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str531, ei_mac_centraleurope},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str531, ei_mac_centraleurope},
#line 204 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str532, ei_cp862},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str532, ei_cp862},
{-1}, {-1},
#line 302 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str535, ei_euc_jp},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str535, ei_euc_jp},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1},
#line 337 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str542, ei_ces_big5},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str542, ei_ces_big5},
{-1}, {-1}, {-1},
#line 310 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str546, ei_sjis},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str546, ei_sjis},
{-1}, {-1}, {-1},
#line 263 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str550, ei_iso646_jp},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str550, ei_iso646_jp},
{-1}, {-1}, {-1},
#line 268 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str554, ei_jisx0201},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str554, ei_jisx0201},
#line 267 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str555, ei_jisx0201},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str555, ei_jisx0201},
#line 119 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str556, ei_iso8859_8},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str556, ei_iso8859_8},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1},
#line 223 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str563, ei_mac_arabic},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str563, ei_mac_arabic},
#line 278 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str564, ei_jisx0208},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str564, ei_jisx0208},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1},
#line 271 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str571, ei_jisx0208},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str571, ei_jisx0208},
{-1}, {-1}, {-1},
#line 44 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str575, ei_utf7},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str575, ei_utf7},
{-1},
#line 220 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str577, ei_mac_greek},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str577, ei_mac_greek},
{-1},
#line 313 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str579, ei_iso2022_jp},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str579, ei_iso2022_jp},
#line 185 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str580, ei_cp1254},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str580, ei_cp1254},
#line 281 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str581, ei_jisx0212},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str581, ei_jisx0212},
{-1}, {-1},
#line 193 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str584, ei_cp1257},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str584, ei_cp1257},
{-1},
#line 272 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str586, ei_jisx0208},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str586, ei_jisx0208},
{-1}, {-1}, {-1},
#line 182 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str590, ei_cp1253},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str590, ei_cp1253},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
#line 228 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str599, ei_hp_roman8},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str599, ei_hp_roman8},
#line 52 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str600, ei_java},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str600, ei_java},
#line 188 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str601, ei_cp1255},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str601, ei_cp1255},
{-1}, {-1},
#line 213 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str604, ei_mac_roman},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str604, ei_mac_roman},
{-1}, {-1},
#line 312 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str607, ei_iso2022_jp},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str607, ei_iso2022_jp},
#line 334 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str608, ei_euc_tw},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str608, ei_euc_tw},
{-1}, {-1}, {-1}, {-1}, {-1},
#line 232 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str614, ei_georgian_ps},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str614, ei_georgian_ps},
#line 28 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str615, ei_ucs2be},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str615, ei_ucs2be},
{-1},
#line 309 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str617, ei_sjis},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str617, ei_sjis},
{-1}, {-1},
#line 200 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str620, ei_cp850},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str620, ei_cp850},
#line 219 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str621, ei_mac_ukraine},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str621, ei_mac_ukraine},
#line 55 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str622, ei_iso8859_1},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str622, ei_iso8859_1},
#line 96 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str623, ei_iso8859_6},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str623, ei_iso8859_6},
#line 106 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str624, ei_iso8859_7},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str624, ei_iso8859_7},
{-1},
#line 231 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str626, ei_georgian_academy},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str626, ei_georgian_academy},
#line 65 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str627, ei_iso8859_2},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str627, ei_iso8859_2},
{-1},
#line 280 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str629, ei_jisx0212},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str629, ei_jisx0212},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
#line 273 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str657, ei_jisx0208},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str657, ei_jisx0208},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1},
#line 357 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str664, ei_local_wchar_t},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str664, ei_local_wchar_t},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
#line 217 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str673, ei_mac_romania},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str673, ei_mac_romania},
{-1}, {-1},
#line 254 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str676, ei_cp874},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str676, ei_cp874},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
{-1}, {-1}, {-1},
#line 305 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str689, ei_euc_jp},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str689, ei_euc_jp},
{-1},
#line 191 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str691, ei_cp1256},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str691, ei_cp1256},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
{-1}, {-1}, {-1}, {-1},
#line 48 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str723, ei_ucs2swapped},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str723, ei_ucs2swapped},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1},
#line 261 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str739, ei_tcvn},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str739, ei_tcvn},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1},
#line 118 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str746, ei_iso8859_8},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str746, ei_iso8859_8},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
#line 50 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str765, ei_ucs4swapped},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str765, ei_ucs4swapped},
{-1}, {-1},
#line 352 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str768, ei_johab},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str768, ei_johab},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
#line 221 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str786, ei_mac_turkish},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str786, ei_mac_turkish},
{-1}, {-1}, {-1},
#line 105 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str790, ei_iso8859_7},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str790, ei_iso8859_7},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
@@ -1661,28 +1661,28 @@
{-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1},
#line 194 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str842, ei_cp1257},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str842, ei_cp1257},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
#line 343 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str888, ei_big5hkscs2001},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str888, ei_big5hkscs2001},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
#line 270 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str898, ei_jisx0201},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str898, ei_jisx0201},
{-1},
#line 342 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str900, ei_big5hkscs1999},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str900, ei_big5hkscs1999},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
#line 222 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str908, ei_mac_hebrew},
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str908, ei_mac_hebrew},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
{-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
#line 346 "lib/aliases.gperf"
- {(int)(long)&((struct stringpool_t *)0)->stringpool_str935, ei_big5hkscs2004}
+ {(int)(intptr_t)&((struct stringpool_t *)0)->stringpool_str935, ei_big5hkscs2004}
};
#ifdef __GNUC__
diff -ruN libiconv/lib/iconv.c libiconv.new/lib/iconv.c
--- libiconv/lib/iconv.c 2009-06-21 13:17:33.000000000 +0200
+++ libiconv.new/lib/iconv.c 2009-09-02 23:24:06.000000000 +0200
@@ -21,6 +21,7 @@
#include <iconv.h>
#include <stdlib.h>
+#include <stdint.h>
#include <string.h>
#include "config.h"
#include "localcharset.h"
@@ -168,7 +169,7 @@
};
#define stringpool2 ((const char *) &stringpool2_contents)
static const struct alias sysdep_aliases[] = {
-#define S(tag,name,encoding_index) { (int)(long)&((struct stringpool2_t *)0)->stringpool_##tag, encoding_index },
+#define S(tag,name,encoding_index) { (int)(intptr_t)&((struct stringpool2_t *)0)->stringpool_##tag, encoding_index },
#include "aliases2.h"
#undef S
};
--- libiconv/srclib/malloca.c 2009-06-21 13:31:08.000000000 +0200
+++ libiconv.new/srclib/malloca.c 2009-09-03 00:02:20.000000000 +0200
@@ -75,7 +75,7 @@
if (p != NULL)
{
- size_t slot;
+ uintptr_t slot;
p += HEADER_SIZE;
@@ -83,7 +83,7 @@
((int *) p)[-1] = MAGIC_NUMBER;
/* Enter p into the hash table. */
- slot = (unsigned long) p % HASH_TABLE_SIZE;
+ slot = (uintptr_t) p % HASH_TABLE_SIZE;
((struct header *) (p - HEADER_SIZE))->next = mmalloca_results[slot];
mmalloca_results[slot] = p;
@@ -116,7 +116,7 @@
{
/* Looks like a mmalloca() result. To see whether it really is one,
perform a lookup in the hash table. */
- size_t slot = (unsigned long) p % HASH_TABLE_SIZE;
+ uintptr_t slot = (uintptr_t) p % HASH_TABLE_SIZE;
void **chain = &mmalloca_results[slot];
for (; *chain != NULL;)
{
diff -urNp libiconv.orig/configure libiconv/configure
--- libiconv.orig/configure 2009-06-30 22:51:53.000000000 +0200
+++ libiconv/configure 2009-11-12 04:41:02.000000000 +0100
@@ -20344,6 +20344,7 @@ rm -f conftest*
fi
+gl_cv_header_signal_h_SIGPIPE=yes
{ $as_echo "$as_me:$LINENO: result: $gl_cv_header_signal_h_SIGPIPE" >&5
$as_echo "$gl_cv_header_signal_h_SIGPIPE" >&6; }
@@ -23459,7 +23460,6 @@ _ACEOF
cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
-#include <signal.h>
/* Mingw defines sigset_t not in <signal.h>, but in <sys/types.h>. */
#include <sys/types.h>
diff -urNp libiconv.orig/signal.h libiconv/signal.h
--- libiconv.orig/signal.h 1970-01-01 01:00:00.000000000 +0100
+++ libiconv/signal.h 2009-11-12 04:39:24.000000000 +0100
@@ -0,0 +1,11 @@
+#ifndef _SIGNAL_H_
+#define _SIGNAL_H_
+
+#define SIGABRT 22 /* Abnormal termination (abort) */
+
+typedef void (*__p_sig_fn_t)(int);
+#define SIG_DFL ((__p_sig_fn_t) 0)
+#define SIG_IGN ((__p_sig_fn_t) 1)
+#define SIG_ERR ((__p_sig_fn_t) -1)
+
+#endif /* Not _SIGNAL_H_ */
diff -urNp libiconv.orig/src/iconv.c libiconv/src/iconv.c
--- libiconv.orig/src/iconv.c 2009-06-21 13:17:33.000000000 +0200
+++ libiconv/src/iconv.c 2009-11-11 05:35:58.000000000 +0100
@@ -26,7 +26,9 @@
#include <string.h>
#include <iconv.h>
#include <errno.h>
-#include <locale.h>
+#ifdef HAVE_SETLOCALE
+# include <locale.h>
+#endif
#include <fcntl.h>
/* Ensure that iconv_no_i18n does not depend on libintl. */
Index: CMakeLists.txt
===================================================================
--- CMakeLists.txt (révision 468)
+++ CMakeLists.txt (copie de travail)
@@ -23,11 +23,9 @@
add_subdirectory(libmpcpsy)
add_subdirectory(libmpcenc)
add_subdirectory(libwavformat)
-add_subdirectory(mpcgain)
add_subdirectory(mpcdec)
add_subdirectory(mpcenc)
add_subdirectory(mpc2sv8)
add_subdirectory(mpccut)
-add_subdirectory(mpcchap)
add_subdirectory(wavcmp)
add_subdirectory(include)
diff -urNp libmpeg2.orig/libmpeg2/motion_comp_arm_s.S libmpeg2/libmpeg2/motion_comp_arm_s.S
--- libmpeg2.orig/libmpeg2/motion_comp_arm_s.S 2008-07-09 21:16:05.000000000 +0200
+++ libmpeg2/libmpeg2/motion_comp_arm_s.S 2009-11-20 19:55:22.000000000 +0100
@@ -19,6 +19,16 @@
@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+@ Data preload is supported only by ARM V5TE and above
+
+#if (defined (__ARM_ARCH_2__) || defined (__ARM_ARCH_3__) \
+ || defined (__ARM_ARCH_3M__) || defined (__ARM_ARCH_4__) \
+ || defined (__ARM_ARCH_4T__) || defined (__ARM_ARCH_5__) \
+ || defined (__ARM_ARCH_5T__))
+.macro pld reg
+.endm
+#endif
+
.text
@ ----------------------------------------------------------------
Index: include/mpeg2.h
===================================================================
--- include/mpeg2.h (révision 1193)
+++ include/mpeg2.h (copie de travail)
@@ -164,6 +164,7 @@
#define MPEG2_ACCEL_SPARC_VIS 1
#define MPEG2_ACCEL_SPARC_VIS2 2
#define MPEG2_ACCEL_ARM 1
+#define MPEG2_ACCEL_ARM_NEON 2
#define MPEG2_ACCEL_DETECT 0x80000000
uint32_t mpeg2_accel (uint32_t accel);
Index: libmpeg2/motion_comp_neon.c
===================================================================
--- libmpeg2/motion_comp_neon.c (révision 0)
+++ libmpeg2/motion_comp_neon.c (révision 0)
@@ -0,0 +1,302 @@
+/*
+ * motion_comp_neon.c
+ * Copyright (C) 2009 Rémi Denis-Courmont
+ *
+ * This file is part of mpeg2dec, a free MPEG-2 video stream decoder.
+ * See http://libmpeg2.sourceforge.net/ for updates.
+ *
+ * mpeg2dec is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * mpeg2dec is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with mpeg2dec; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ */
+
+#include "config.h"
+
+#if defined(ARCH_ARM_NEON)
+
+#include <stdint.h>
+#include <string.h>
+
+#include "mpeg2.h"
+#include "attributes.h"
+#include "mpeg2_internal.h"
+
+/* dest = ref */
+static void MC_put_o_16_neon (uint8_t * dest, const uint8_t * ref,
+ const int stride, int height)
+{
+ do {
+ memcpy (dest, ref, 16);
+ ref += stride;
+ dest += stride;
+ } while (--height);
+}
+
+static void MC_put_o_8_neon (uint8_t * dest, const uint8_t * ref,
+ const int stride, int height)
+{
+ do {
+ memcpy (dest, ref, 8);
+ ref += stride;
+ dest += stride;
+ } while (--height);
+}
+
+/* dest = (src1 + src2 + 1) / 2 */
+static void MC_avg_1_16_neon (uint8_t * dest, const uint8_t * src1,
+ const uint8_t * src2,
+ const int stride, unsigned height)
+{
+ do {
+ asm volatile (
+ "vld1.u8 {q0}, [%[src1]]\n"
+ "vld1.u8 {q1}, [%[src2]]\n"
+ "vrhadd.u8 q0, q0, q1\n"
+ /* XXX: three cycles stall */
+ "vst1.u8 {q0}, [%[dest]]\n"
+ :
+ : [dest]"r"(dest), [src1]"r"(src1), [src2]"r"(src2)
+ : "memory", "q0", "q1");
+ src1 += stride;
+ src2 += stride;
+ dest += stride;
+ } while (--height);
+}
+
+static void MC_avg_1_8_neon (uint8_t * dest, const uint8_t * src1,
+ const uint8_t * src2,
+ const int stride, unsigned height)
+{
+ do {
+ asm volatile (
+ "vld1.u8 {d0}, [%[src1]]\n"
+ "vld1.u8 {d1}, [%[src2]]\n"
+ "vrhadd.u8 d0, d0, d1\n"
+ "vst1.u8 {d0}, [%[dest]]\n"
+ :
+ : [dest]"r"(dest), [src1]"r"(src1), [src2]"r"(src2)
+ : "memory", "q0");
+
+ src1 += stride;
+ src2 += stride;
+ dest += stride;
+ } while (--height);
+}
+
+/* dest = (dest + ((src1 + src2 + 1) / 2) + 1) / 2 */
+static void MC_avg_2_16_neon (uint8_t * dest, const uint8_t * src1,
+ const uint8_t * src2,
+ const int stride, unsigned height)
+{
+ do {
+ asm volatile (
+ "vld1.u8 {q0}, [%[src1]]\n"
+ "vld1.u8 {q1}, [%[src2]]\n"
+ "vrhadd.u8 q0, q0, q1\n"
+ "vld1.u8 {q2}, [%[dest]]\n"
+ /* XXX: one cycle stall */
+ "vrhadd.u8 q0, q0, q2\n"
+ /* XXX: three cycles stall */
+ "vst1.u8 {q0}, [%[dest]]\n"
+ :
+ : [dest]"r"(dest), [src1]"r"(src1), [src2]"r"(src2)
+ : "memory", "q0", "q1", "q2");
+ src1 += stride;
+ src2 += stride;
+ dest += stride;
+ } while (--height);
+}
+
+static void MC_avg_2_8_neon (uint8_t * dest, const uint8_t * src1,
+ const uint8_t * src2,
+ const int stride, unsigned height)
+{
+ do {
+ asm volatile (
+ "vld1.u8 {d0}, [%[src1]]\n"
+ "vld1.u8 {d1}, [%[src2]]\n"
+ "vrhadd.u8 d0, d0, d1\n"
+ "vld1.u8 {d2}, [%[dest]]\n"
+ "vrhadd.u8 d0, d0, d2\n"
+ "vst1.u8 {d0}, [%[dest]]\n"
+ :
+ : [dest]"r"(dest), [src1]"r"(src1), [src2]"r"(src2)
+ : "memory", "q0", "d2");
+ src1 += stride;
+ src2 += stride;
+ dest += stride;
+ } while (--height);
+}
+
+static void MC_avg_o_16_neon (uint8_t * dest, const uint8_t * ref,
+ const int stride, int height)
+{
+ MC_avg_1_16_neon (dest, dest, ref, stride, height);
+}
+
+static void MC_avg_o_8_neon (uint8_t * dest, const uint8_t * ref,
+ const int stride, int height)
+{
+ MC_avg_1_8_neon (dest, dest, ref, stride, height);
+}
+
+static void MC_put_x_16_neon (uint8_t * dest, const uint8_t * ref,
+ const int stride, int height)
+{
+ MC_avg_1_16_neon (dest, ref, ref + 1, stride, height);
+}
+
+static void MC_put_x_8_neon (uint8_t * dest, const uint8_t * ref,
+ const int stride, int height)
+{
+ MC_avg_1_8_neon (dest, ref, ref + 1, stride, height);
+}
+
+static void MC_avg_x_16_neon (uint8_t * dest, const uint8_t * ref,
+ const int stride, int height)
+{
+ MC_avg_2_16_neon (dest, ref, ref + 1, stride, height);
+}
+
+static void MC_avg_x_8_neon (uint8_t * dest, const uint8_t * ref,
+ const int stride, int height)
+{
+ MC_avg_2_8_neon (dest, ref, ref + 1, stride, height);
+}
+
+static void MC_put_y_16_neon (uint8_t * dest, const uint8_t * ref,
+ const int stride, int height)
+{
+ MC_avg_1_16_neon (dest, ref, ref + stride, stride, height);
+}
+static void MC_put_y_8_neon (uint8_t * dest, const uint8_t * ref,
+ const int stride, int height)
+{
+ MC_avg_1_8_neon (dest, ref, ref + stride, stride, height);
+}
+
+static void MC_avg_y_16_neon (uint8_t * dest, const uint8_t * ref,
+ const int stride, int height)
+{
+ MC_avg_2_16_neon (dest, ref, ref + stride, stride, height);
+}
+
+static void MC_avg_y_8_neon (uint8_t * dest, const uint8_t * ref,
+ const int stride, int height)
+{
+ MC_avg_2_8_neon (dest, ref, ref + stride, stride, height);
+}
+
+static void MC_put_xy_16_neon (uint8_t * dest, const uint8_t * ref,
+ const int stride, int height)
+{
+ do {
+ asm volatile (
+ "vld1.u8 {q0}, [%[ref]]\n"
+ "vld1.u8 {q1}, [%[refx]]\n"
+ "vrhadd.u8 q0, q0, q1\n"
+ "vld1.u8 {q2}, [%[refy]]\n"
+ "vld1.u8 {q3}, [%[refxy]]\n"
+ "vrhadd.u8 q2, q2, q3\n"
+ /* XXX: three cycles stall */
+ "vrhadd.u8 q0, q0, q2\n"
+ /* XXX: three cycles stall */
+ "vst1.u8 {q0}, [%[dest]]\n"
+ :
+ : [dest]"r"(dest), [ref]"r"(ref), [refx]"r"(ref + 1),
+ [refy]"r"(ref + stride), [refxy]"r"(ref + stride + 1)
+ : "memory", "q0", "q1", "q2", "q3");
+ ref += stride;
+ dest += stride;
+ } while (--height);
+}
+
+static void MC_put_xy_8_neon (uint8_t * dest, const uint8_t * ref,
+ const int stride, int height)
+{
+ do {
+ asm volatile (
+ "vld1.u8 {d0}, [%[ref]]\n"
+ "vld1.u8 {d1}, [%[refx]]\n"
+ "vrhadd.u8 d0, d0, d1\n"
+ "vld1.u8 {d2}, [%[refy]]\n"
+ "vld1.u8 {d3}, [%[refxy]]\n"
+ "vrhadd.u8 d2, d2, d3\n"
+ /* XXX: three cycles stall */
+ "vrhadd.u8 d0, d0, d2\n"
+ /* XXX: three cycles stall */
+ "vst1.u8 {d0}, [%[dest]]\n"
+ :
+ : [dest]"r"(dest), [ref]"r"(ref), [refx]"r"(ref + 1),
+ [refy]"r"(ref + stride), [refxy]"r"(ref + stride + 1)
+ : "memory", "q0", "q1");
+ ref += stride;
+ dest += stride;
+ } while (--height);
+}
+
+static void MC_avg_xy_16_neon (uint8_t * dest, const uint8_t * ref,
+ const int stride, int height)
+{
+ do {
+ asm volatile (
+ "vld1.u8 {q0}, [%[ref]]\n"
+ "vld1.u8 {q1}, [%[refx]]\n"
+ "vrhadd.u8 q0, q0, q1\n"
+ "vld1.u8 {q2}, [%[refy]]\n"
+ "vld1.u8 {q3}, [%[refxy]]\n"
+ "vrhadd.u8 q2, q2, q3\n"
+ "vld1.u8 {q4}, [%[dest]]\n"
+ /* XXX: one cycle stall */
+ "vrhadd.u8 q0, q0, q2\n"
+ /* XXX: three cycles stall */
+ "vrhadd.u8 q0, q4, q0\n"
+ "vst1.u8 {q0}, [%[dest]]\n"
+ :
+ : [dest]"r"(dest), [ref]"r"(ref), [refx]"r"(ref + 1),
+ [refy]"r"(ref + stride), [refxy]"r"(ref + stride + 1)
+ : "memory", "q0", "q1", "q2", "q3", "q4");
+ ref += stride;
+ dest += stride;
+ } while (--height);
+}
+
+static void MC_avg_xy_8_neon (uint8_t * dest, const uint8_t * ref,
+ const int stride, int height)
+{
+ do {
+ asm volatile (
+ "vld1.u8 {d0}, [%[ref]]\n"
+ "vld1.u8 {d1}, [%[refx]]\n"
+ "vrhadd.u8 d0, d0, d1\n"
+ "vld1.u8 {d2}, [%[refy]]\n"
+ "vld1.u8 {d3}, [%[refxy]]\n"
+ "vrhadd.u8 d2, d2, d3\n"
+ "vld1.u8 {d4}, [%[dest]]\n"
+ /* XXX: one cycle stall */
+ "vrhadd.u8 d0, d0, d2\n"
+ /* XXX: three cycles stall */
+ "vrhadd.u8 d0, d4, d0\n"
+ "vst1.u8 {d0}, [%[dest]]\n"
+ :
+ : [dest]"r"(dest), [ref]"r"(ref), [refx]"r"(ref + 1),
+ [refy]"r"(ref + stride), [refxy]"r"(ref + stride + 1)
+ : "memory", "q0", "q1", "d4");
+ ref += stride;
+ dest += stride;
+ } while (--height);
+}
+
+MPEG2_MC_EXTERN (neon)
+
+#endif /* ARCH_ARM_NEON */
Modification de propriétés sur libmpeg2/motion_comp_neon.c
___________________________________________________________________
Ajouté : svn:eol-style
+ native
Index: libmpeg2/mpeg2_internal.h
===================================================================
--- libmpeg2/mpeg2_internal.h (révision 1193)
+++ libmpeg2/mpeg2_internal.h (copie de travail)
@@ -313,5 +313,6 @@
extern mpeg2_mc_t mpeg2_mc_alpha;
extern mpeg2_mc_t mpeg2_mc_vis;
extern mpeg2_mc_t mpeg2_mc_arm;
+extern mpeg2_mc_t mpeg2_mc_neon;
#endif /* LIBMPEG2_MPEG2_INTERNAL_H */
Index: libmpeg2/motion_comp.c
===================================================================
--- libmpeg2/motion_comp.c (révision 1193)
+++ libmpeg2/motion_comp.c (copie de travail)
@@ -58,6 +58,11 @@
else
#endif
#ifdef ARCH_ARM
+#ifdef ARCH_ARM_NEON
+ if (accel & MPEG2_ACCEL_ARM_NEON)
+ mpeg2_mc = mpeg2_mc_neon;
+ else
+#endif
if (accel & MPEG2_ACCEL_ARM) {
mpeg2_mc = mpeg2_mc_arm;
} else
Index: libmpeg2/Makefile.am
===================================================================
--- libmpeg2/Makefile.am (révision 1193)
+++ libmpeg2/Makefile.am (copie de travail)
@@ -14,7 +14,7 @@
motion_comp_vis.c motion_comp_arm.c \
cpu_accel.c cpu_state.c
if ARCH_ARM
-libmpeg2arch_la_SOURCES += motion_comp_arm_s.S
+libmpeg2arch_la_SOURCES += motion_comp_arm_s.S motion_comp_neon.c
endif
libmpeg2arch_la_CFLAGS = $(OPT_CFLAGS) $(ARCH_OPT_CFLAGS) $(LIBMPEG2_CFLAGS)
Index: configure.ac
===================================================================
--- configure.ac (révision 1193)
+++ configure.ac (copie de travail)
@@ -103,7 +103,14 @@
AC_DEFINE([ARCH_ALPHA],,[alpha architecture]);;
arm*)
arm_conditional=:
- AC_DEFINE([ARCH_ARM],,[ARM architecture]);;
+ AC_DEFINE([ARCH_ARM],,[ARM architecture])
+ AC_MSG_CHECKING([if inline ARM Advanced SIMD assembly is supported])
+ AC_TRY_COMPILE([],
+ [asm ("vqmovun.s64 d0, q1":::"d0");],
+ [AC_DEFINE([ARCH_ARM_NEON],, [ARM Advanced SIMD assembly])
+ AC_MSG_RESULT(yes)],
+ [AC_MSG_RESULT(no)])
+ ;;
esac
elif test x"$CC" = x"tendracc"; then
dnl TenDRA portability checking compiler
--- libogg/configure.in 2010-11-01 21:13:42.000000000 +0100
+++ libogg.new/configure.in 2010-11-03 23:59:54.267733114 +0100
@@ -28,17 +28,17 @@
case $host in
*-*-irix*)
DEBUG="-g -signed"
- CFLAGS="-O2 -w -signed"
+ EXTRA_CFLAGS="-O2 -w -signed"
PROFILE="-p -g3 -O2 -signed"
;;
sparc-sun-solaris*)
DEBUG="-v -g"
- CFLAGS="-xO4 -fast -w -fsimple -native -xcg92"
+ EXTRA_CFLAGS="-xO4 -fast -w -fsimple -native -xcg92"
PROFILE="-v -xpg -g -xO4 -fast -native -fsimple -xcg92 -Dsuncc"
;;
*)
DEBUG="-g"
- CFLAGS="-O"
+ EXTRA_CFLAGS="-O"
PROFILE="-g -p"
;;
esac
@@ -46,27 +46,27 @@
case $host in
*-*-linux*)
DEBUG="-g -Wall -fsigned-char"
- CFLAGS="-O20 -Wall -ffast-math -fsigned-char"
+ EXTRA_CFLAGS="-O20 -Wall -ffast-math -fsigned-char"
PROFILE="-Wall -W -pg -g -O20 -ffast-math -fsigned-char"
;;
sparc-sun-*)
DEBUG="-g -Wall -fsigned-char"
- CFLAGS="-O20 -ffast-math -fsigned-char"
+ EXTRA_CFLAGS="-O20 -ffast-math -fsigned-char"
PROFILE="-pg -g -O20 -fsigned-char"
;;
*-*-darwin*)
DEBUG="-fno-common -g -Wall -fsigned-char"
- CFLAGS="-fno-common -O4 -Wall -fsigned-char -ffast-math"
+ EXTRA_CFLAGS="-fno-common -O4 -Wall -fsigned-char -ffast-math"
PROFILE="-fno-common -O4 -Wall -pg -g -fsigned-char -ffast-math"
;;
*)
DEBUG="-g -Wall -fsigned-char"
- CFLAGS="-O20 -fsigned-char"
+ EXTRA_CFLAGS="-O20 -fsigned-char"
PROFILE="-O20 -g -pg -fsigned-char"
;;
esac
fi
-CFLAGS="$CFLAGS $cflags_save"
+CFLAGS="$EXTRA_CFLAGS $cflags_save"
DEBUG="$DEBUG $cflags_save"
PROFILE="$PROFILE $cflags_save"
https://trac.xiph.org/changeset/17608/trunk/ogg/include/ogg/os_types.h?format=diff&new=17608
Index: trunk/ogg/include/ogg/os_types.h
===================================================================
--- trunk/ogg/include/ogg/os_types.h (revision 17566)
+++ trunk/ogg/include/ogg/os_types.h (revision 17608)
@@ -71,7 +71,7 @@
# include <inttypes.h>
typedef int16_t ogg_int16_t;
- typedef u_int16_t ogg_uint16_t;
+ typedef uint16_t ogg_uint16_t;
typedef int32_t ogg_int32_t;
- typedef u_int32_t ogg_uint32_t;
+ typedef uint32_t ogg_uint32_t;
typedef int64_t ogg_int64_t;
--- libogg/include/ogg/os_types.h 2005-11-22 23:01:12.000000000 +0000
+++ libogg/include/ogg/os_types.h 2005-11-22 23:05:11.000000000 +0000
@@ -55,6 +55,10 @@
typedef unsigned __int16 ogg_uint16_t;
# endif
+# if defined(UNDER_CE)
+# define exit(a)
+# endif
+
#elif defined(__MACOS__)
# include <sys/types.h>
--- libpng-1.2.8/scripts/makefile.linux 2004-12-03 01:14:31.000000000 +0100
+++ libpng/scripts/makefile.linux 2006-07-14 10:12:00.000000000 +0200
@@ -13,7 +13,7 @@
# where "make install" puts libpng12.a, libpng12.so*,
# libpng12/png.h and libpng12/pngconf.h
# Prefix must be a full pathname.
-prefix=/usr/local
+prefix=$(PREFIX)
exec_prefix=$(prefix)
# Where the zlib library and include files are located.
@@ -53,7 +53,7 @@
# If you're going to install into a temporary location
# via DESTDIR, $(DESTDIR)$(prefix) must already exist before
# you execute make install.
-DESTDIR=
+#DESTDIR=
DB=$(DESTDIR)$(BINPATH)
DI=$(DESTDIR)$(INCPATH)
diff -urN libpng-1.2.41/scripts/makefile.darwin libpng/scripts/makefile.darwin
--- libpng-1.2.41/scripts/makefile.darwin 2009-12-03 04:46:02 +0300
+++ libpng/scripts/makefile.darwin 2009-12-04 14:37:52 +0300
@@ -76,7 +76,7 @@
.c.pic.o:
$(CC) -c $(CFLAGS) -fno-common -o $@ $*.c
-all: libpng.a $(LIBSO) pngtest libpng.pc libpng-config
+all: libpng.a $(LIBSO) libpng.pc libpng-config
libpng.a: $(OBJS)
$(AR_RC) $@ $(OBJS)
@@ -185,7 +185,7 @@
chmod 755 $(DB)/$(LIBNAME)-config
(cd $(DB); $(LN_SF) $(LIBNAME)-config libpng-config)
-install: install-static install-shared install-man install-config
+install: install-static install-man install-config
# If you installed in $(DESTDIR), test-installed won't work until you
# move the library to its final location. Use test-dd to test it
--- scripts/makefile.cygwin 2006-06-27 22:22:40.000000000 +0200
+++ scripts/makefile.cygwin 2006-07-12 13:18:15.000000000 +0200
@@ -35,7 +35,6 @@
# $CFLAGS, and include pnggccrd.o in $OBJS, below, and in the dependency
# list at the bottom of this makefile.
-CC=gcc
ifdef MINGW
MINGW_CCFLAGS=-mno-cygwin -I/usr/include/mingw
MINGW_LDFLAGS=-mno-cygwin -L/usr/lib/mingw
@@ -43,14 +42,13 @@
# Where "make install" puts libpng*.a, *png*.dll, png.h, and pngconf.h
ifndef prefix
-prefix=/usr
-$(warning You haven't specified a 'prefix=' location. Defaulting to "/usr")
+prefix=??PREFIX??
endif
exec_prefix=$(prefix)
# Where the zlib library and include files are located
-ZLIBLIB= /usr/lib
-ZLIBINC=
+ZLIBLIB= ??PREFIX??/lib
+ZLIBINC= ??PREFIX??/include
#ZLIBLIB=../zlib
#ZLIBINC=../zlib
@@ -95,7 +93,9 @@
LDEXTRA=-Wl,--out-implib=$(IMPLIB) $(addprefix -L,$(ZLIBLIB)) -lz
MKDIR_P=/bin/mkdir -pv
+ifndef RANLIB
RANLIB=ranlib
+endif
#RANLIB=echo
INCPATH=$(prefix)/include
@@ -174,7 +174,7 @@
$(CC) -c $(CFLAGS) -DPNG_BUILD_DLL -o $@ $<
$(STATLIB): $(OBJS)
- ar rc $@ $(OBJS)
+ $(AR) rc $@ $(OBJS)
$(RANLIB) $@
$(SHAREDDEF): scripts/pngw32.def
diff -ruN libprojectM/Renderer/TextureManager.cpp libprojectM.new/Renderer/TextureManager.cpp
--- libprojectM/Renderer/TextureManager.cpp 2009-12-01 07:38:42.000000000 +0100
+++ libprojectM.new/Renderer/TextureManager.cpp 2009-12-03 23:28:44.000000000 +0100
@@ -59,7 +59,7 @@
ilLoadL(IL_TYPE_UNKNOWN,(ILvoid*) M_data, M_bytes);
GLuint tex = ilutGLBindTexImage();
#else
- uint tex = SOIL_load_OGL_texture_from_memory(
+ unsigned int tex = SOIL_load_OGL_texture_from_memory(
M_data,
M_bytes,
SOIL_LOAD_AUTO,
@@ -173,7 +173,7 @@
#else
int width, height;
- uint tex = SOIL_load_OGL_texture_size(
+ unsigned int tex = SOIL_load_OGL_texture_size(
imageURL.c_str(),
SOIL_LOAD_AUTO,
SOIL_CREATE_NEW_ID,
diff -ruN libprojectM/win32-dirent.h libprojectM.new/win32-dirent.h
--- libprojectM/win32-dirent.h 2009-12-01 07:38:42.000000000 +0100
+++ libprojectM.new/win32-dirent.h 2009-12-03 23:29:13.000000000 +0100
@@ -19,7 +19,7 @@
typedef struct DIR DIR;
-static int errno;
+//static int errno;
struct dirent
{
diff -ruN libprojectM/PresetLoader.hpp libprojectM.new2/PresetLoader.hpp
--- libprojectM/PresetLoader.hpp 2009-12-01 07:38:42.000000000 +0100
+++ libprojectM.new2/PresetLoader.hpp 2009-12-04 00:29:20.000000000 +0100
@@ -6,7 +6,7 @@
#include <sys/types.h>
#ifdef WIN32
-#include "win32-dirent.h"
+#include <dirent.h>
#endif
#ifdef LINUX
diff -ruN libprojectM/projectM.cpp libprojectM.new2/projectM.cpp
--- libprojectM/projectM.cpp 2009-12-01 07:38:42.000000000 +0100
+++ libprojectM.new2/projectM.cpp 2009-12-04 00:28:29.000000000 +0100
@@ -24,9 +24,6 @@
#include "fatal.h"
#include "Common.hpp"
-#ifdef WIN32
-#include "win32-dirent.h"
-#endif
#include "timer.h"
#include <iostream>
diff -ruN libprojectM/projectM.hpp libprojectM.new2/projectM.hpp
--- libprojectM/projectM.hpp 2009-12-01 07:38:42.000000000 +0100
+++ libprojectM.new2/projectM.hpp 2009-12-04 00:28:22.000000000 +0100
@@ -29,11 +29,7 @@
#ifndef _PROJECTM_HPP
#define _PROJECTM_HPP
-#ifdef WIN32
-#include "win32-dirent.h"
-#else
#include <dirent.h>
-#endif /** WIN32 */
#include <cmath>
#include <cstdio>
#include <string>
--- libprojectM/CMakeLists.txt 2009-12-01 07:38:42.000000000 +0100
+++ libprojectM.new/CMakeLists.txt 2009-12-04 00:34:12.000000000 +0100
@@ -121,15 +121,13 @@
SET_TARGET_PROPERTIES(projectM PROPERTIES VERSION 2.00 SOVERSION 2)
-ADD_DEFINITIONS(-DUSE_THREADS)
-
if (APPLE)
ADD_DEFINITIONS(-DMACOS -DSTBI_NO_DDS -DUSE_THREADS)
set(RESOURCE_PREFIX "Resources")
else (APPLE)
if (WIN32)
set (RESOURCE_PREFIX "Resources")
-ADD_DEFINITIONS(-DWIN32 -DSTBI_NO_DDS -DUSE_THREADS)
+ADD_DEFINITIONS(-DWIN32 -DSTBI_NO_DDS )
else(WIN32)
set (RESOURCE_PREFIX "share/projectM")
ADD_DEFINITIONS(-DLINUX -DSTBI_NO_DDS -DUSE_THREADS)
--- libprojectM.new/CMakeLists.txt 2009-12-04 00:34:12.000000000 +0100
+++ libprojectM/CMakeLists.txt 2009-12-04 09:04:54.000000000 +0100
@@ -62,6 +62,8 @@
SET(PRESET_FACTORY_SOURCES ${PRESET_FACTORY_SOURCES} ${NativePresetFactory_SOURCE_DIR})
SET(PRESET_FACTORY_BINARY_DIR ${PRESET_FACTORY_BINARY_DIR} ${NativePresetFactory_BINARY_DIR})
SET(PRESET_FACTORY_LINK_TARGETS ${PRESET_FACTORY_LINK_TARGETS} NativePresetFactory)
+else (NOT DISABLE_NATIVE_PRESETS)
+ADD_DEFINITIONS(-DDISABLE_NATIVE_PRESETS)
endif(NOT DISABLE_NATIVE_PRESETS)
if (NOT DISABLE_MILKDROP_PRESETS)
@@ -114,6 +116,7 @@
endif(COMMAND cmake_policy)
if (BUILD_PROJECTM_STATIC)
+ADD_DEFINITIONS(-DGLEW_STATIC)
ADD_LIBRARY(projectM STATIC ${projectM_SOURCES})
else(BUILD_PROJECTM_STATIC)
ADD_LIBRARY(projectM SHARED ${projectM_SOURCES})
--- libprojectM.new/libprojectM.pc.in 2009-12-04 00:33:48.000000000 +0100
+++ libprojectM/libprojectM.pc.in 2009-12-04 08:59:27.000000000 +0100
@@ -9,5 +9,5 @@
Version: 2.0.0
Description: projectM - OpenGL Milkdrop
Requires:
-Libs: -L${libdir} -lprojectM
+Libs: -L${libdir} -lprojectM -lglu32 -lglew32 -lopengl32
Cflags: -I${includedir}
--- libprojectM/libprojectM.pc.in 2009-12-04 09:55:20.000000000 +0100
+++ libprojectM.new/libprojectM.pc.in 2009-12-04 09:54:55.000000000 +0100
@@ -9,5 +9,5 @@
Version: 2.0.0
Description: projectM - OpenGL Milkdrop
Requires:
-Libs: -L${libdir} -lprojectM -lglu32 -lglew32 -lopengl32
+Libs: -L${libdir} -lprojectM ${libdir}/libMilkdropPresetFactory.a ${libdir}/libRenderer.a ${libdir}/libprojectM.a -lglu32 -lglew32 -lopengl32
Cflags: -I${includedir}
diff -ruN libprojectM.new/libprojectM.pc.in libprojectM/libprojectM.pc.in
--- libprojectM.new/libprojectM.pc.in 2009-12-04 09:54:55.000000000 +0100
+++ libprojectM/libprojectM.pc.in 2009-12-04 10:15:18.000000000 +0100
@@ -1,6 +1,6 @@
prefix=@CMAKE_INSTALL_PREFIX@
exec_prefix=@CMAKE_INSTALL_PREFIX@
-libdir=@LIB_INSTALL_DIR@
+libdir=@CMAKE_INSTALL_PREFIX@/lib
includedir=@CMAKE_INSTALL_PREFIX@/include
pkgdatadir=@CMAKE_INSTALL_PREFIX@/@RESOURCE_PREFIX@
sysconfdir=@CMAKE_INSTALL_PREFIX@/@RESOURCE_PREFIX@
@@ -9,5 +9,5 @@
Version: 2.0.0
Description: projectM - OpenGL Milkdrop
Requires:
-Libs: -L${libdir} -lprojectM ${libdir}/libMilkdropPresetFactory.a ${libdir}/libRenderer.a ${libdir}/libprojectM.a -lglu32 -lglew32 -lopengl32
+Libs: -L${libdir} -lprojectM -lMilkdropPresetFactory -lRenderer -lglu32 -lglew32 -lopengl32
Cflags: -I${includedir}
diff -ruN libprojectM.new/MilkdropPresetFactory/CMakeLists.txt libprojectM/MilkdropPresetFactory/CMakeLists.txt
--- libprojectM.new/MilkdropPresetFactory/CMakeLists.txt 2009-12-01 07:38:42.000000000 +0100
+++ libprojectM/MilkdropPresetFactory/CMakeLists.txt 2009-12-04 10:26:42.000000000 +0100
@@ -5,7 +5,11 @@
cmake_policy(SET CMP0003 NEW)
endif(COMMAND cmake_policy)
-SET(MilkdropPresetFactory_SOURCES BuiltinFuncs.cpp Func.cpp MilkdropPreset.cpp Param.hpp PresetFrameIO.cpp CustomShape.cpp Eval.cpp MilkdropPresetFactory.cpp PerPixelEqn.cpp BuiltinParams.cpp InitCond.cpp Parser.cpp CustomWave.cpp Expr.cpp PerPointEqn.cpp Param.cpp PerFrameEqn.cpp IdlePreset.cpp)
+SET(MilkdropPresetFactory_SOURCES BuiltinFuncs.cpp Func.cpp MilkdropPreset.cpp
+ Param.hpp PresetFrameIO.cpp CustomShape.cpp Eval.cpp
+ MilkdropPresetFactory.cpp PerPixelEqn.cpp BuiltinParams.cpp
+ InitCond.cpp Parser.cpp CustomWave.cpp Expr.cpp PerPointEqn.cpp
+ Param.cpp PerFrameEqn.cpp IdlePreset.cpp ../PresetFactory.cpp )
SET (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC")
diff -ruN libprojectM.new/Renderer/Renderer.cpp libprojectM/Renderer/Renderer.cpp
--- libprojectM.new/Renderer/Renderer.cpp 2009-12-01 07:38:42.000000000 +0100
+++ libprojectM/Renderer/Renderer.cpp 2009-12-04 10:21:38.000000000 +0100
@@ -222,7 +222,7 @@
glTranslatef(-0.5, -0.5, 0);
// When console refreshes, there is a chance the preset has been changed by the user
- refreshConsole();
+ //refreshConsole();
draw_title_to_screen(false);
if (this->showhelp % 2)
draw_help();
diff -ruN libprojectM/RandomNumberGenerators.hpp libprojectM.new/RandomNumberGenerators.hpp
--- libprojectM/RandomNumberGenerators.hpp 2009-12-01 07:38:42.000000000 +0100
+++ libprojectM.new/RandomNumberGenerators.hpp 2010-01-09 01:09:38.000000000 +0100
@@ -4,6 +4,7 @@
#include <vector>
#include <cassert>
#include <iostream>
+#include <stdlib.h>
#define WEIGHTED_RANDOM_DEBUG 0
diff -ruN libprojectM/Renderer/TextureManager.cpp libprojectM.new/Renderer/TextureManager.cpp
--- libprojectM/Renderer/TextureManager.cpp 2010-01-09 01:16:11.000000000 +0100
+++ libprojectM.new/Renderer/TextureManager.cpp 2010-01-09 01:03:59.000000000 +0100
@@ -30,6 +30,10 @@
#include "IdleTextures.hpp"
+#include <stdio.h>
+#include <stdlib.h>
+#include <time.h>
+
TextureManager::TextureManager(const std::string _presetURL): presetURL(_presetURL)
{
diff -u libshout/include/shout/shout.h.in libshout-new/include/shout/shout.h.in
--- libshout/include/shout/shout.h.in 2004-10-30 02:23:15.000000000 +0100
+++ libshout-new/include/shout/shout.h.in 2006-03-12 21:06:13.000000000 +0000
@@ -22,9 +22,6 @@
#define __LIBSHOUT_SHOUT_H__
#include <sys/types.h>
-#ifdef WIN32
-#include <os.h>
-#endif
#define SHOUTERR_SUCCESS (0)
#define SHOUTERR_INSANE (-1)
--- libshout/Makefile.in 2009-06-15 02:28:13.000000000 +0200
+++ libshout/Makefile.in 2009-06-15 02:29:10.000000000 +0200
@@ -246,7 +246,7 @@
target_alias = @target_alias@
AUTOMAKE_OPTIONS = 1.6 foreign
ACLOCAL_AMFLAGS = -I m4
-SUBDIRS = include src examples debian doc win32
+SUBDIRS = include src doc win32
EXTRA_DIST = INSTALL m4/shout.m4 m4/ac_config_libconfig_in.m4 m4/acx_pthread.m4 \
m4/ogg.m4 m4/vorbis.m4 m4/xiph_compiler.m4 m4/xiph_net.m4 \
m4/xiph_types.m4
--- libtheora/tests/comment.c 2008-04-16 22:25:49.000000000 +0200
+++ libtheora.old/tests/comment.c 2008-05-14 19:25:34.000000000 +0200
@@ -15,11 +15,11 @@
********************************************************************/
-#include <theora/theoradec.h>
-
#include <string.h>
#include "tests.h"
+#include <theora/theoradec.h>
+
#define ARTIST1 "Bug-eyed Fish"
#define ARTIST2 "VJ Fugu"
#define COPYRIGHT "Copyright (C) 2005. Some Rights Reserved."
--- libupnp/configure.ac.orig 2011-02-09 00:55:44.000000000 +0100
+++ libupnp/configure.ac 2011-02-10 23:39:44.154929678 +0100
@@ -397,7 +397,6 @@
AC_PROG_MAKE_SET
AC_PROG_EGREP
-#
# Default compilation flags
#
echo "--------------------- Default compilation flags -------------------------------"
@@ -531,39 +530,46 @@
# Checks for POSIX Threads
#
echo "--------------------------- pthread stuff -------------------------------------"
-ACX_PTHREAD(
- [],
- [AC_MSG_ERROR([POSIX threads are required to build this program])])
+#ACX_PTHREAD(
+# [],
+# [AC_MSG_ERROR([POSIX threads are required to build this program])])
#
+PTHREAD_LIBS=" -lpthreadGC2 -lws2_32"
+PTHREAD_CFLAGS=" -DPTW32_STATIC_LIB -DUPNP_STATIC_LIB"
# Update environment variables for pthreads
#
-CC="$PTHREAD_CC"
+#CC="$PTHREAD_CC"
CFLAGS="$PTHREAD_CFLAGS $CFLAGS"
LIBS="$PTHREAD_LIBS $LIBS"
+
+AC_SUBST(PTHREAD_LIBS)
+AC_SUBST(PTHREAD_CFLAGS)
+AC_SUBST(PTHREAD_CC)
+
#
# Determine if pthread_rwlock_t is available
#
-echo "----------------------- pthread_rwlock_t stuff --------------------------------"
-AC_MSG_CHECKING([if pthread_rwlock_t is available])
-AC_LANG([C])
-AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM(
- [#include <pthread.h>],
- [pthread_rwlock_t *x;])],
- [AC_DEFINE([UPNP_USE_RWLOCK], [1], [Use pthread_rwlock_t])
- AC_MSG_RESULT([yes, supported without any options])],
- [AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM(
- [#define _GNU_SOURCE
- #include <pthread.h>],
- [pthread_rwlock_t *x;])],
- [AC_DEFINE([UPNP_USE_RWLOCK], [1], [Use pthread_rwlock_t])
- CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
- AC_MSG_RESULT([yes, definition of _GNU_SOURCE required])],
- [AC_DEFINE([UPNP_USE_RWLOCK], [0], [Do not use pthread_rwlock_t])
- AC_MSG_RESULT([no, needs to fallback to pthread_mutex])
- AC_MSG_ERROR([pthread_rwlock_t not available])])])
-echo "-------------------------------------------------------------------------------"
+#echo "----------------------- pthread_rwlock_t stuff --------------------------------"
+#AC_MSG_CHECKING([if pthread_rwlock_t is available])
+#AC_LANG([C])
+#AC_COMPILE_IFELSE(
+# [AC_LANG_PROGRAM(
+# [#include <pthread.h>],
+# [pthread_rwlock_t *x;])],
+# [AC_DEFINE([UPNP_USE_RWLOCK], [1], [Use pthread_rwlock_t])
+# AC_MSG_RESULT([yes, supported without any options])],
+# [AC_COMPILE_IFELSE(
+# [AC_LANG_PROGRAM(
+# [#define _GNU_SOURCE
+# #include <pthread.h>],
+# [pthread_rwlock_t *x;])],
+# [AC_DEFINE([UPNP_USE_RWLOCK], [1], [Use pthread_rwlock_t])
+# CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
+# AC_MSG_RESULT([yes, definition of _GNU_SOURCE required])],
+# [AC_DEFINE([UPNP_USE_RWLOCK], [0], [Do not use pthread_rwlock_t])
+# AC_MSG_RESULT([no, needs to fallback to pthread_mutex])
+# AC_MSG_ERROR([pthread_rwlock_t not available])])])
+#echo "-------------------------------------------------------------------------------"
AC_CONFIG_FILES([
--- libupnp/configure.ac.orig 2011-02-10 23:53:25.000000000 +0100
+++ libupnp/configure.ac 2011-02-10 23:54:23.574454501 +0100
@@ -546,6 +546,7 @@
AC_SUBST(PTHREAD_CFLAGS)
AC_SUBST(PTHREAD_CC)
+AC_DEFINE([_WIN32_WINNT], 0x0501, [Define to '0x0500' for Windows 2000 APIs.])
#
# Determine if pthread_rwlock_t is available
#
--- libupnp/libupnp.pc.in 2010-12-23 21:24:05.000000000 +0100
+++ libupnp.new/libupnp.pc.in 2011-02-13 11:27:23.000000000 +0100
@@ -6,6 +6,6 @@
Name: libupnp
Description: Linux SDK for UPnP Devices
Version: @VERSION@
-Libs: @PTHREAD_CFLAGS@ @PTHREAD_LIBS@ -L${libdir} -lupnp -lthreadutil -lixml
+Libs: @PTHREAD_CFLAGS@ -L${libdir} -lupnp -lthreadutil -lixml -liphlpapi @PTHREAD_LIBS@
Cflags: @PTHREAD_CFLAGS@ -I${includedir}/upnp
--- libupnp/upnp/src/inc/upnputil.h 2010-12-23 21:24:06.000000000 +0100
+++ libupnp.new/upnp/src/inc/upnputil.h 2011-02-13 08:24:24.000000000 +0100
@@ -125,7 +125,7 @@
#define strncasecmp strnicmp
#define sleep(a) Sleep((a)*1000)
#define usleep(a) Sleep((a)/1000)
- #define strerror_r(a,b,c) (strerror_s((b),(c),(a)))
+ #define strerror_r(a,b,c) strncpy( b, strerror(a), c)
#else
#define max(a, b) (((a)>(b))? (a):(b))
#define min(a, b) (((a)<(b))? (a):(b))
--- libupnp/upnp/inc/upnp.h 2011-03-15 22:59:38.000000000 +0100
+++ libupnp.new/upnp/inc/upnp.h 2011-09-23 01:39:55.000000000 +0200
@@ -57,6 +57,19 @@
/* Other systems ??? */
#endif
+# if defined( __MINGW32__ )
+# if !defined( _OFF_T_ )
+ typedef long long _off_t;
+ typedef _off_t off_t;
+# define _OFF_T_
+# else
+# ifdef off_t
+# undef off_t
+# endif
+# define off_t long long
+# endif
+# endif
+
#define LINE_SIZE 180
#define NAME_SIZE 256
#define MNFT_NAME_SIZE 64
--- libupnp/threadutil/inc/ThreadPool.h 2011-01-20 07:46:57.000000000 +0100
+++ libupnp.new/threadutil/inc/ThreadPool.h 2011-09-23 01:36:12.000000000 +0200
@@ -45,6 +45,7 @@
#include <errno.h>
#ifdef WIN32
+ #ifndef _TIMEZONE_DEFINED
#include <time.h>
struct timezone
{
@@ -52,6 +53,7 @@
int tz_dsttime; /* type of dst correction */
};
int gettimeofday(struct timeval *tv, struct timezone *tz);
+ #endif
#else /* WIN32 */
#include <sys/param.h>
#include <sys/time.h> /* for gettimeofday() */
Copyright (C) 2010 Rémi Denis-Courmont.
Licensed under GNU General Public License version 2 or higher.
diff -ru live.orig//groupsock/GroupsockHelper.cpp live//groupsock/GroupsockHelper.cpp
--- live.orig//groupsock/GroupsockHelper.cpp 2010-04-09 22:27:39.000000000 +0300
+++ live//groupsock/GroupsockHelper.cpp 2010-04-17 20:18:11.000000000 +0300
@@ -625,25 +625,29 @@
#include <hostLib.h>
if (ERROR == (ourAddress = hostGetByName( hostname ))) break;
#else
- struct hostent* hstent
- = (struct hostent*)gethostbyname(hostname);
- if (hstent == NULL || hstent->h_length != 4) {
- env.setResultErrMsg("initial gethostbyname() failed");
+ struct addrinfo hints, *res;
+ memset(&hints, 0, sizeof(hints));
+ hints.ai_family = AF_INET;
+ hints.ai_socktype = SOCK_DGRAM;
+ hints.ai_protocol = IPPROTO_UDP;
+ if (getaddrinfo(hostname, NULL, &hints, &res)) {
+ env.setResultErrMsg("initial getaddrinfo() failed");
break;
}
// Take the first address that's not bad
// (This code, like many others, won't handle IPv6)
netAddressBits addr = 0;
- for (unsigned i = 0; ; ++i) {
- char* addrPtr = hstent->h_addr_list[i];
- if (addrPtr == NULL) break;
+ for (const struct addrinfo *p = res; p; p = p->ai_next) {
+ const struct in_addr in =
+ ((const struct sockaddr_in *)p->ai_addr)->sin_addr;
- netAddressBits a = *(netAddressBits*)addrPtr;
+ netAddressBits a = in.s_addr;
if (!badAddress(a)) {
addr = a;
break;
}
}
+ freeaddrinfo(res);
if (addr != 0) {
fromAddr.sin_addr.s_addr = addr;
} else {
diff -ru live.orig//groupsock/inet.c live//groupsock/inet.c
--- live.orig//groupsock/inet.c 2010-04-09 22:27:39.000000000 +0300
+++ live//groupsock/inet.c 2010-04-17 20:14:07.000000000 +0300
@@ -83,16 +83,6 @@
#define NULL 0
#endif
-#if !defined(VXWORKS)
-struct hostent* our_gethostbyname(name)
- char* name;
-{
- if (!initializeWinsockIfNecessary()) return NULL;
-
- return (struct hostent*) gethostbyname(name);
-}
-#endif
-
#ifndef USE_OUR_RANDOM
/* Use the system-supplied "random()" and "srandom()" functions */
#include <stdlib.h>
diff -ru live.orig//groupsock/NetAddress.cpp live//groupsock/NetAddress.cpp
--- live.orig//groupsock/NetAddress.cpp 2010-04-09 22:27:39.000000000 +0300
+++ live//groupsock/NetAddress.cpp 2010-04-17 20:13:29.000000000 +0300
@@ -83,15 +83,12 @@
NetAddressList::NetAddressList(char const* hostname)
: fNumAddresses(0), fAddressArray(NULL) {
- struct hostent* host;
+
+ struct addrinfo *res;
// Check first whether "hostname" is an IP address string:
netAddressBits addr = our_inet_addr((char*)hostname);
if (addr != INADDR_NONE) { // yes it was an IP address string
- //##### host = gethostbyaddr((char*)&addr, sizeof (netAddressBits), AF_INET);
- host = NULL; // don't bother calling gethostbyaddr(); we only want 1 addr
-
- if (host == NULL) {
// For some unknown reason, gethostbyaddr() failed, so just
// return a 1-element list with the address we were given:
fNumAddresses = 1;
@@ -101,41 +98,40 @@
fAddressArray[0] = new NetAddress((u_int8_t*)&addr,
sizeof (netAddressBits));
return;
- }
} else { // Try resolving "hostname" as a real host name
-#if defined(VXWORKS)
- char hostentBuf[512];
- host = (struct hostent*)resolvGetHostByName((char*)hostname,(char*)&hostentBuf,sizeof hostentBuf);
-#else
- host = our_gethostbyname((char*)hostname);
-#endif
+ struct addrinfo hints;
+ memset(&hints, 0, sizeof(hints));
+ hints.ai_family = AF_INET;
+ hints.ai_socktype = SOCK_DGRAM; /* be sure to not get dups! */
+ hints.ai_protocol = IPPROTO_UDP;
- if (host == NULL) {
+ if (getaddrinfo(hostname, NULL, &hints, &res))
// It was a host name, and we couldn't resolve it. We're SOL.
return;
- }
}
- u_int8_t const** const hAddrPtr
- = (u_int8_t const**)host->h_addr_list;
- if (hAddrPtr != NULL) {
- // First, count the number of addresses:
- u_int8_t const** hAddrPtr1 = hAddrPtr;
- while (*hAddrPtr1 != NULL) {
- ++fNumAddresses;
- ++hAddrPtr1;
- }
-
- // Next, set up the list:
- fAddressArray = new NetAddress*[fNumAddresses];
- if (fAddressArray == NULL) return;
-
- for (unsigned i = 0; i < fNumAddresses; ++i) {
- fAddressArray[i]
- = new NetAddress(hAddrPtr[i], host->h_length);
- }
+ // First, count the number of addresses:
+ for (const struct addrinfo *p = res; p; p = p->ai_next)
+ fNumAddresses++;
+
+ // Next, set up the list:
+ fAddressArray = new NetAddress*[fNumAddresses];
+
+ unsigned i = 0;
+ for (const struct addrinfo *p = res; p; p = p->ai_next) {
+ union
+ {
+ struct in_addr ip4;
+ uint8_t b[4];
+ } buf;
+ const struct sockaddr_in *sin =
+ (const struct sockaddr_in *)p->ai_addr;
+
+ buf.ip4 = sin->sin_addr;
+ fAddressArray[i++] = new NetAddress(buf.b, 4);
}
+ freeaddrinfo(res);
}
NetAddressList::NetAddressList(NetAddressList const& orig) {
Copyright (C) 2010 Rémi Denis-Courmont.
Licensed under GNU General Public License version 2 or higher.
diff -ru live.orig/groupsock/Groupsock.cpp live/groupsock/Groupsock.cpp
--- live.orig/groupsock/Groupsock.cpp 2010-10-20 10:31:13.000000000 +0200
+++ live/groupsock/Groupsock.cpp 2010-10-20 12:34:04.762178010 +0200
@@ -335,8 +335,10 @@
}
}
if (DebugLevel >= 3) {
+ char buf[16];
+
env() << *this << ": read " << bytesRead << " bytes from ";
- env() << our_inet_ntoa(fromAddress.sin_addr);
+ env() << our_inet_ntoa(fromAddress.sin_addr, buf);
if (numMembers > 0) {
env() << "; relayed to " << numMembers << " members";
}
@@ -445,13 +447,14 @@
}
UsageEnvironment& operator<<(UsageEnvironment& s, const Groupsock& g) {
+ char buf[16];
UsageEnvironment& s1 = s << timestampString() << " Groupsock("
<< g.socketNum() << ": "
- << our_inet_ntoa(g.groupAddress())
+ << our_inet_ntoa(g.groupAddress(), buf)
<< ", " << g.port() << ", ";
if (g.isSSM()) {
return s1 << "SSM source: "
- << our_inet_ntoa(g.sourceFilterAddress()) << ")";
+ << our_inet_ntoa(g.sourceFilterAddress(), buf) << ")";
} else {
return s1 << (unsigned)(g.ttl()) << ")";
}
diff -ru live.orig/groupsock/include/GroupsockHelper.hh live/groupsock/include/GroupsockHelper.hh
--- live.orig/groupsock/include/GroupsockHelper.hh 2010-10-20 10:31:13.000000000 +0200
+++ live/groupsock/include/GroupsockHelper.hh 2010-10-20 12:34:04.762178010 +0200
@@ -116,7 +116,7 @@
// The following are implemented in inet.c:
extern "C" netAddressBits our_inet_addr(char const*);
-extern "C" char* our_inet_ntoa(struct in_addr);
+extern "C" char* our_inet_ntoa(struct in_addr, char *);
extern "C" struct hostent* our_gethostbyname(char* name);
extern "C" void our_srandom(int x);
extern "C" long our_random();
diff -ru live.orig/groupsock/inet.c live/groupsock/inet.c
--- live.orig/groupsock/inet.c 2010-10-20 10:31:13.000000000 +0200
+++ live/groupsock/inet.c 2010-10-20 12:34:04.762178010 +0200
@@ -21,26 +21,19 @@
}
char *
-our_inet_ntoa(in)
- struct in_addr in;
+our_inet_ntoa(in, result)
+ struct in_addr in;
+ char *result;
{
-#ifndef VXWORKS
- return inet_ntoa(in);
+#ifdef WIN32
+ char *ret = inet_ntoa(in);
+ if(ret != NULL)
+ strncpy(result, ret, 16);
+ return ret;
+#elif !defined (VXWORKS)
+ inet_ntop(AF_INET, &in, result, 16);
+ return(result);
#else
- /* according the man pages of inet_ntoa :
-
- NOTES
- The return value from inet_ntoa() points to a buffer which
- is overwritten on each call. This buffer is implemented as
- thread-specific data in multithreaded applications.
-
- the vxworks version of inet_ntoa allocates a buffer for each
- ip address string, and does not reuse the same buffer.
-
- this is merely to simulate the same behaviour (not multithread
- safe though):
- */
- static char result[INET_ADDR_LEN];
inet_ntoa_b(in, result);
return(result);
#endif
diff -ru live.orig/liveMedia/DarwinInjector.cpp live/liveMedia/DarwinInjector.cpp
--- live.orig/liveMedia/DarwinInjector.cpp 2010-10-20 10:31:13.000000000 +0200
+++ live/liveMedia/DarwinInjector.cpp 2010-10-20 12:34:04.762178010 +0200
@@ -146,7 +146,8 @@
NetAddress const* address = addresses.firstAddress();
addr.s_addr = *(unsigned*)(address->data());
}
- char const* remoteRTSPServerAddressStr = our_inet_ntoa(addr);
+ char buf[16];
+ char const* remoteRTSPServerAddressStr = our_inet_ntoa(addr, buf);
// Construct a SDP description for the session that we'll be streaming:
char const* const sdpFmt =
diff -ru live.orig/liveMedia/OnDemandServerMediaSubsession.cpp live/liveMedia/OnDemandServerMediaSubsession.cpp
--- live.orig/liveMedia/OnDemandServerMediaSubsession.cpp 2010-10-20 10:31:13.000000000 +0200
+++ live/liveMedia/OnDemandServerMediaSubsession.cpp 2010-10-20 12:34:04.762178010 +0200
@@ -365,7 +365,8 @@
char const* mediaType = rtpSink->sdpMediaType();
unsigned char rtpPayloadType = rtpSink->rtpPayloadType();
struct in_addr serverAddrForSDP; serverAddrForSDP.s_addr = fServerAddressForSDP;
- char* const ipAddressStr = strDup(our_inet_ntoa(serverAddrForSDP));
+ char ipAddressStr[16];
+ our_inet_ntoa(serverAddrForSDP, ipAddressStr);
char* rtpmapLine = rtpSink->rtpmapLine();
char const* rangeLine = rangeSDPLine();
char const* auxSDPLine = getAuxSDPLine(rtpSink, inputSource);
@@ -398,7 +399,7 @@
rangeLine, // a=range:... (if present)
auxSDPLine, // optional extra SDP line
trackId()); // a=control:<track-id>
- delete[] (char*)rangeLine; delete[] rtpmapLine; delete[] ipAddressStr;
+ delete[] (char*)rangeLine; delete[] rtpmapLine;
fSDPLines = strDup(sdpLines);
delete[] sdpLines;
diff -ru live.orig/liveMedia/PassiveServerMediaSubsession.cpp live/liveMedia/PassiveServerMediaSubsession.cpp
--- live.orig/liveMedia/PassiveServerMediaSubsession.cpp 2010-10-20 10:31:13.000000000 +0200
+++ live/liveMedia/PassiveServerMediaSubsession.cpp 2010-10-20 12:34:04.762178010 +0200
@@ -54,7 +54,8 @@
char const* auxSDPLine = fRTPSink.auxSDPLine();
if (auxSDPLine == NULL) auxSDPLine = "";
- char* const ipAddressStr = strDup(our_inet_ntoa(ipAddress));
+ char ipAddressStr[16];
+ our_inet_ntoa(ipAddress, ipAddressStr);
char const* const sdpFmt =
"m=%s %d RTP/AVP %d\r\n"
@@ -84,7 +85,7 @@
rangeLine, // a=range:... (if present)
auxSDPLine, // optional extra SDP line
trackId()); // a=control:<track-id>
- delete[] ipAddressStr; delete[] (char*)rangeLine; delete[] rtpmapLine;
+ delete[] (char*)rangeLine; delete[] rtpmapLine;
fSDPLines = strDup(sdpLines);
delete[] sdpLines;
diff -ru live.orig/liveMedia/RTSPClient.cpp live/liveMedia/RTSPClient.cpp
--- live.orig/liveMedia/RTSPClient.cpp 2010-10-20 12:34:33.662177993 +0200
+++ live/liveMedia/RTSPClient.cpp 2010-10-20 12:34:04.762178010 +0200
@@ -411,7 +411,8 @@
int RTSPClient::connectToServer(int socketNum, portNumBits remotePortNum) {
MAKE_SOCKADDR_IN(remoteName, fServerAddress, htons(remotePortNum));
if (fVerbosityLevel >= 1) {
- envir() << "Opening connection to " << our_inet_ntoa(remoteName.sin_addr) << ", port " << remotePortNum << "...\n";
+ char buf[16];
+ envir() << "Opening connection to " << our_inet_ntoa(remoteName.sin_addr, buf) << ", port " << remotePortNum << "...\n";
}
if (connect(socketNum, (struct sockaddr*) &remoteName, sizeof remoteName) != 0) {
if (envir().getErrno() == EINPROGRESS) {
diff -ru live.orig/liveMedia/RTSPServer.cpp live/liveMedia/RTSPServer.cpp
--- live.orig/liveMedia/RTSPServer.cpp 2010-10-20 10:31:13.000000000 +0200
+++ live/liveMedia/RTSPServer.cpp 2010-10-20 12:34:04.772177998 +0200
@@ -114,11 +114,12 @@
char urlBuffer[100]; // more than big enough for "rtsp://<ip-address>:<port>/"
portNumBits portNumHostOrder = ntohs(fRTSPServerPort.num());
+ char buf[16];
if (portNumHostOrder == 554 /* the default port number */) {
- sprintf(urlBuffer, "rtsp://%s/", our_inet_ntoa(ourAddress.sin_addr));
+ sprintf(urlBuffer, "rtsp://%s/", our_inet_ntoa(ourAddress.sin_addr, buf));
} else {
sprintf(urlBuffer, "rtsp://%s:%hu/",
- our_inet_ntoa(ourAddress.sin_addr), portNumHostOrder);
+ our_inet_ntoa(ourAddress.sin_addr, buf), portNumHostOrder);
}
return strDup(urlBuffer);
@@ -262,7 +263,8 @@
increaseSendBufferTo(envir(), clientSocket, 50*1024);
#ifdef DEBUG
- envir() << "accept()ed connection from " << our_inet_ntoa(clientAddr.sin_addr) << "\n";
+ char buf[16];
+ envir() << "accept()ed connection from " << our_inet_ntoa(clientAddr.sin_addr, buf) << "\n";
#endif
// Create a new object for this RTSP session.
@@ -881,8 +883,10 @@
ReceivingInterfaceAddr = origReceivingInterfaceAddr;
struct in_addr destinationAddr; destinationAddr.s_addr = destinationAddress;
- char* destAddrStr = strDup(our_inet_ntoa(destinationAddr));
- char* sourceAddrStr = strDup(our_inet_ntoa(sourceAddr.sin_addr));
+ char destAddrStr[16];
+ our_inet_ntoa(destinationAddr, destAddrStr);
+ char sourceAddrStr[16];
+ our_inet_ntoa(sourceAddr.sin_addr, sourceAddrStr);
if (fIsMulticast) {
switch (streamingMode) {
case RTP_UDP:
@@ -957,7 +961,7 @@
}
}
}
- delete[] destAddrStr; delete[] sourceAddrStr; delete[] streamingModeString;
+ delete[] streamingModeString;
} while (0);
delete[] concatenatedStreamName;
@@ -1540,7 +1544,8 @@
// If this gets called, the client session is assumed to have timed out,
// so delete it:
#ifdef DEBUG
- fprintf(stderr, "RTSP client session from %s has timed out (due to inactivity)\n", our_inet_ntoa(clientSession->fClientAddr.sin_addr));
+ char buf[16];
+ fprintf(stderr, "RTSP client session from %s has timed out (due to inactivity)\n", our_inet_ntoa(clientSession->fClientAddr.sin_addr, buf));
#endif
delete clientSession;
}
diff -ru live.orig/liveMedia/ServerMediaSession.cpp live/liveMedia/ServerMediaSession.cpp
--- live.orig/liveMedia/ServerMediaSession.cpp 2010-10-20 10:31:13.000000000 +0200
+++ live/liveMedia/ServerMediaSession.cpp 2010-10-20 12:34:04.772177998 +0200
@@ -185,7 +185,8 @@
char* ServerMediaSession::generateSDPDescription() {
struct in_addr ipAddress;
ipAddress.s_addr = ourIPAddress(envir());
- char* const ipAddressStr = strDup(our_inet_ntoa(ipAddress));
+ char ipAddressStr[16];
+ our_inet_ntoa(ipAddress, ipAddressStr);
unsigned ipAddressStrSize = strlen(ipAddressStr);
// For a SSM sessions, we need a "a=source-filter: incl ..." line also:
@@ -281,7 +282,7 @@
}
} while (0);
- delete[] rangeLine; delete[] sourceFilterLine; delete[] ipAddressStr;
+ delete[] rangeLine; delete[] sourceFilterLine;
return sdp;
}
diff -ru live.orig/liveMedia/SIPClient.cpp live/liveMedia/SIPClient.cpp
--- live.orig/liveMedia/SIPClient.cpp 2010-10-20 10:31:13.000000000 +0200
+++ live/liveMedia/SIPClient.cpp 2010-10-20 12:34:04.772177998 +0200
@@ -60,13 +60,14 @@
struct in_addr ourAddress;
ourAddress.s_addr = ourIPAddress(env); // hack
- fOurAddressStr = strDup(our_inet_ntoa(ourAddress));
+ char buf[16];
+ fOurAddressStr = strDup(our_inet_ntoa(ourAddress, buf));
fOurAddressStrSize = strlen(fOurAddressStr);
fOurSocket = new Groupsock(env, ourAddress, 0, 255);
if (fOurSocket == NULL) {
env << "ERROR: Failed to create socket for addr "
- << our_inet_ntoa(ourAddress) << ": "
+ << our_inet_ntoa(ourAddress, buf) << ": "
<< env.getResultMsg() << "\n";
}
@@ -84,7 +85,7 @@
fOurSocket = new Groupsock(env, ourAddress, fOurPortNum, 255);
if (fOurSocket == NULL) {
env << "ERROR: Failed to create socket for addr "
- << our_inet_ntoa(ourAddress) << ", port "
+ << our_inet_ntoa(ourAddress, buf) << ", port "
<< fOurPortNum << ": "
<< env.getResultMsg() << "\n";
}
diff -ru live.orig/testProgs/sapWatch.cpp live/testProgs/sapWatch.cpp
--- live.orig/testProgs/sapWatch.cpp 2010-10-20 10:31:13.000000000 +0200
+++ live/testProgs/sapWatch.cpp 2010-10-20 12:34:04.772177998 +0200
@@ -49,13 +49,14 @@
struct sockaddr_in fromAddress;
while (inputGroupsock.handleRead(packet, maxPacketSize,
packetSize, fromAddress)) {
+ char buf[16];
printf("\n[packet from %s (%d bytes)]\n",
- our_inet_ntoa(fromAddress.sin_addr), packetSize);
+ our_inet_ntoa(fromAddress.sin_addr, buf), packetSize);
// Ignore the first 8 bytes (SAP header).
if (packetSize < 8) {
*env << "Ignoring short packet from "
- << our_inet_ntoa(fromAddress.sin_addr) << "%s!\n";
+ << our_inet_ntoa(fromAddress.sin_addr, buf) << "%s!\n";
continue;
}
Copyright (C) 2008 Rémi Denis-Courmont, adaptation by Felix Kühne (C) 2009.
Licensed under GNU General Public License version 2 or higher.
diff -urN live.orig/liveMedia/include/Locale.hh live/liveMedia/include/Locale.hh
--- live.orig/liveMedia/include/Locale.hh 2009-03-23 01:26:16 +0300
+++ live/liveMedia/include/Locale.hh 2009-03-26 19:17:43 +0300
@@ -27,23 +27,26 @@
#ifndef LOCALE_NOT_USED
#include <locale.h>
+#ifdef __APPLE__
+#include <xlocale.h>
+#endif
#else
-#ifndef LC_ALL
-#define LC_ALL 0
+#ifndef LC_ALL_MASK
+#define LC_ALL_MASK 0
#endif
-#ifndef LC_NUMERIC
-#define LC_NUMERIC 4
+#ifndef LC_NUMERIC_MASK
+#define LC_NUMERIC_MASK 0
#endif
+typedef int locale_t;
#endif
class Locale {
public:
- Locale(char const* newLocale, int category = LC_ALL);
+ Locale(char const* newLocale, int category = LC_ALL_MASK);
virtual ~Locale();
private:
- int fCategory;
- char* fPrevLocale;
+ locale_t fLocale, fPrevLocale;
};
#endif
diff -urN live.orig/liveMedia/Locale.cpp live/liveMedia/Locale.cpp
--- live.orig/liveMedia/Locale.cpp 2009-03-23 01:26:16 +0300
+++ live/liveMedia/Locale.cpp 2009-03-26 19:17:43 +0300
@@ -22,19 +22,18 @@
#include "Locale.hh"
#include <strDup.hh>
-Locale::Locale(char const* newLocale, int category)
- : fCategory(category) {
+Locale::Locale(char const* newLocale, int category) {
#ifndef LOCALE_NOT_USED
- fPrevLocale = strDup(setlocale(category, NULL));
- setlocale(category, newLocale);
+ fLocale = newlocale(category, newLocale, NULL);
+ fPrevLocale = uselocale(fLocale);
#endif
}
Locale::~Locale() {
#ifndef LOCALE_NOT_USED
- if (fPrevLocale != NULL) {
- setlocale(fCategory, fPrevLocale);
- delete[] fPrevLocale;
+ if (fLocale != (locale_t)0) {
+ uselocale(fPrevLocale);
+ freelocale(fLocale);
}
#endif
}
--- live.orig/liveMedia/RTSPClient.cpp 2010-03-16 03:09:46.000000000 +0100
+++ live/liveMedia/RTSPClient.cpp 2010-08-24 15:04:31.000000000 +0200
@@ -469,7 +469,7 @@
// This is the default value; we don't need a "Scale:" header:
buf[0] = '\0';
} else {
- Locale l("C", LC_NUMERIC);
+ Locale l("C", LC_NUMERIC_MASK);
sprintf(buf, "Scale: %f\r\n", scale);
}
@@ -483,11 +483,11 @@
buf[0] = '\0';
} else if (end < 0) {
// There's no end time:
- Locale l("C", LC_NUMERIC);
+ Locale l("C", LC_NUMERIC_MASK);
sprintf(buf, "Range: npt=%.3f-\r\n", start);
} else {
// There's both a start and an end time; include them both in the "Range:" hdr
- Locale l("C", LC_NUMERIC);
+ Locale l("C", LC_NUMERIC_MASK);
sprintf(buf, "Range: npt=%.3f-%.3f\r\n", start, end);
}
@@ -935,7 +935,7 @@
}
Boolean RTSPClient::parseScaleParam(char const* paramStr, float& scale) {
- Locale l("C", LC_NUMERIC);
+ Locale l("C", LC_NUMERIC_MASK);
return sscanf(paramStr, "%f", &scale) == 1;
}
--- live/liveMedia/RTSPCommon.cpp.orig 2011-01-06 01:26:50.000000000 +0100
+++ live/liveMedia/RTSPCommon.cpp 2011-01-09 16:32:24.142645155 +0100
@@ -137,7 +137,7 @@
Boolean parseRangeParam(char const* paramStr, double& rangeStart, double& rangeEnd) {
double start, end;
int numCharsMatched = 0;
- Locale l("C", LC_NUMERIC);
+ Locale l("C", LC_NUMERIC_MASK);
if (sscanf(paramStr, "npt = %lf - %lf", &start, &end) == 2) {
rangeStart = start;
rangeEnd = end;
diff -ruN live/BasicUsageEnvironment/BasicHashTable.cpp live.new/BasicUsageEnvironment/BasicHashTable.cpp
--- live/BasicUsageEnvironment/BasicHashTable.cpp 2009-07-28 03:05:14.000000000 +0200
+++ live.new/BasicUsageEnvironment/BasicHashTable.cpp 2009-08-19 00:58:32.000000000 +0200
@@ -26,6 +26,7 @@
#endif
#include <string.h>
#include <stdio.h>
+#include <stdint.h>
// When there are this many entries per bucket, on average, rebuild
// the table to increase the number of buckets
@@ -253,17 +254,17 @@
}
unsigned BasicHashTable::hashIndexFromKey(char const* key) const {
- unsigned result = 0;
+ uintptr_t result = 0;
if (fKeyType == STRING_HASH_KEYS) {
while (1) {
char c = *key++;
if (c == 0) break;
- result += (result<<3) + (unsigned)c;
+ result += (result<<3) + (uintptr_t)c;
}
result &= fMask;
} else if (fKeyType == ONE_WORD_HASH_KEYS) {
- result = randomIndex((unsigned long)key);
+ result = randomIndex((uintptr_t)key);
} else {
unsigned* k = (unsigned*)key;
unsigned long sum = 0;
diff -ruN live/BasicUsageEnvironment/BasicTaskScheduler0.cpp live.new/BasicUsageEnvironment/BasicTaskScheduler0.cpp
--- live/BasicUsageEnvironment/BasicTaskScheduler0.cpp 2009-07-28 03:05:14.000000000 +0200
+++ live.new/BasicUsageEnvironment/BasicTaskScheduler0.cpp 2009-08-19 00:58:04.000000000 +0200
@@ -19,6 +19,7 @@
#include "BasicUsageEnvironment0.hh"
#include "HandlerSet.hh"
+#include <stdint.h>
////////// A subclass of DelayQueueEntry,
////////// used to implement BasicTaskScheduler0::scheduleDelayedTask()
@@ -64,7 +65,7 @@
}
void BasicTaskScheduler0::unscheduleDelayedTask(TaskToken& prevTask) {
- DelayQueueEntry* alarmHandler = fDelayQueue.removeEntry((long)prevTask);
+ DelayQueueEntry* alarmHandler = fDelayQueue.removeEntry((intptr_t)prevTask);
prevTask = NULL;
delete alarmHandler;
}
diff -ruN live/groupsock/Groupsock.cpp live.new/groupsock/Groupsock.cpp
--- live/groupsock/Groupsock.cpp 2009-07-28 03:05:14.000000000 +0200
+++ live.new/groupsock/Groupsock.cpp 2009-08-19 00:57:14.000000000 +0200
@@ -17,6 +17,7 @@
// 'Group sockets'
// Implementation
+#include <stdint.h>
#include "Groupsock.hh"
#include "GroupsockHelper.hh"
//##### Eventually fix the following #include; we shouldn't know about tunnels
@@ -403,7 +404,7 @@
= (TunnelEncapsulationTrailer*)&data[size];
TunnelEncapsulationTrailer* trailer;
- Boolean misaligned = ((unsigned long)trailerInPacket & 3) != 0;
+ Boolean misaligned = ((uintptr_t)trailerInPacket & 3) != 0;
unsigned trailerOffset;
u_int8_t tunnelCmd;
if (isSSM()) {
diff -ruN live/liveMedia/MP3StreamState.cpp live.new/liveMedia/MP3StreamState.cpp
--- live/liveMedia/MP3StreamState.cpp 2009-07-28 03:05:14.000000000 +0200
+++ live.new/liveMedia/MP3StreamState.cpp 2009-08-19 00:56:37.000000000 +0200
@@ -20,6 +20,7 @@
#include "MP3StreamState.hh"
#include "GroupsockHelper.hh"
+#include <stdint.h>
#if defined(__WIN32__) || defined(_WIN32)
#define snprintf _snprintf
@@ -35,8 +36,8 @@
// Close our open file or socket:
if (fFid != NULL && fFid != stdin) {
if (fFidIsReallyASocket) {
- long fid_long = (long)fFid;
- closeSocket((int)fid_long);
+ intptr_t fid_long = (intptr_t)fFid;
+ closeSocket((int)(intptr_t)fid_long);
} else {
fclose(fFid);
}
@@ -201,8 +202,8 @@
char const* const getCmdFmt = "GET %s HTTP/1.1\r\nHost: %s:%d\r\n\r\n";
if (fFidIsReallyASocket) {
- long fid_long = (long)fFid;
- int sock = (int)fid_long;
+ intptr_t fid_long = (intptr_t)fFid;
+ int sock = (int)(intptr_t)fid_long;
char writeBuf[100];
#if defined(IRIX) || defined(ALPHA) || defined(_QNX4) || defined(IMN_PIM) || defined(CRIS)
/* snprintf() isn't defined, so just use sprintf() */
@@ -412,8 +413,8 @@
unsigned numChars) {
// Hack for doing socket I/O instead of file I/O (e.g., on Windows)
if (fFidIsReallyASocket) {
- long fid_long = (long)fFid;
- int sock = (int)fid_long;
+ intptr_t fid_long = (intptr_t)fFid;
+ int sock = (int)(intptr_t)fid_long;
unsigned totBytesRead = 0;
do {
waitUntilSocketIsReadable(fEnv, sock);
diff -ruN live/liveMedia/RTCP.cpp live.new/liveMedia/RTCP.cpp
--- live/liveMedia/RTCP.cpp 2009-07-28 03:05:14.000000000 +0200
+++ live.new/liveMedia/RTCP.cpp 2009-08-19 00:57:01.000000000 +0200
@@ -18,6 +18,7 @@
// RTCP
// Implementation
+#include <stdint.h>
#include "RTCP.hh"
#include "GroupsockHelper.hh"
#include "rtcp_from_spec.h"
@@ -81,14 +82,14 @@
HashTable::Iterator* iter
= HashTable::Iterator::create(*fTable);
- unsigned long timeCount;
+ uintptr_t timeCount;
char const* key;
- while ((timeCount = (unsigned long)(iter->next(key))) != 0) {
+ while ((timeCount = (uintptr_t)(iter->next(key))) != 0) {
#ifdef DEBUG
fprintf(stderr, "reap: checking SSRC 0x%lx: %ld (threshold %d)\n", (unsigned long)key, timeCount, threshold);
#endif
- if (timeCount < (unsigned long)threshold) { // this SSRC is old
- unsigned long ssrc = (unsigned long)key;
+ if (timeCount < (uintptr_t)threshold) { // this SSRC is old
+ intptr_t ssrc = (uintptr_t)key;
oldSSRC = (unsigned)ssrc;
foundOldMember = True;
}
--- live/BasicUsageEnvironment/include/BasicHashTable.hh 2009-07-28 03:05:14.000000000 +0200
+++ live.new/BasicUsageEnvironment/include/BasicHashTable.hh 2009-08-19 19:00:05.000000000 +0200
@@ -24,6 +24,8 @@
#include "HashTable.hh"
#endif
+#include <stdint.h>
+
// A simple hash table implementation, inspired by the hash table
// implementation used in Tcl 7.6: <http://www.tcl.tk/>
@@ -87,7 +89,7 @@
unsigned hashIndexFromKey(char const* key) const;
// used to implement many of the routines above
- unsigned randomIndex(unsigned long i) const {
+ unsigned randomIndex(uintptr_t i) const {
return (((i*1103515245) >> fDownShift) & fMask);
}
diff -ruN live/groupsock/include/NetCommon.h live.new/groupsock/include/NetCommon.h
--- live/groupsock/include/NetCommon.h 2009-07-28 03:05:14.000000000 +0200
+++ live.new/groupsock/include/NetCommon.h 2009-08-19 19:00:59.000000000 +0200
@@ -37,8 +37,12 @@
#define closeSocket closesocket
#define EWOULDBLOCK WSAEWOULDBLOCK
#define EINPROGRESS WSAEWOULDBLOCK
-#define EAGAIN WSAEWOULDBLOCK
-#define EINTR WSAEINTR
+#ifndef EAGAIN
+ #define EAGAIN WSAEWOULDBLOCK
+#endif
+#ifndef EINTR
+ #define EINTR WSAEINTR
+#endif
#if defined(_WIN32_WCE)
#define NO_STRSTREAM 1
LUA: do not use readline on Linux
diff -ru lua-5.1/src/Makefile lua/src/Makefile
--- lua-5.1/src/Makefile 2006-02-16 17:45:09.000000000 +0200
+++ lua/src/Makefile 2009-02-09 23:35:21.000000000 +0200
@@ -92,7 +92,7 @@
$(MAKE) all MYCFLAGS=
linux:
- $(MAKE) all MYCFLAGS=-DLUA_USE_LINUX MYLIBS="-Wl,-E -ldl -lreadline -lhistory -lncurses"
+ $(MAKE) all MYCFLAGS=-DLUA_USE_LINUX MYLIBS="-Wl,-E -ldl"
macosx:
$(MAKE) all MYCFLAGS=-DLUA_USE_MACOSX
diff -ru lua-5.1/src/luaconf.h lua/src/luaconf.h
--- lua-5.1/src/luaconf.h 2006-02-10 19:44:06.000000000 +0200
+++ lua/src/luaconf.h 2009-02-09 23:33:29.000000000 +0200
@@ -36,7 +36,6 @@
#if defined(LUA_USE_LINUX)
#define LUA_USE_POSIX
#define LUA_USE_DLOPEN /* needs an extra library: -ldl */
-#define LUA_USE_READLINE /* needs some extra libraries */
#endif
#if defined(LUA_USE_MACOSX)
--- orc/orc/orc.h 2011-04-14 21:07:08.000000000 +0200
+++ orc.new/orc/orc.h 2011-05-08 19:03:51.294908858 +0200
@@ -2,6 +2,7 @@
#ifndef _ORC_ORC_H_
#define _ORC_ORC_H_
+#include <orc/orcutils.h>
#include <orc/orcprogram.h>
#include <orc/orc-stdint.h>
#include <orc/orcarm.h>
@@ -12,7 +13,6 @@
#include <orc/orcparse.h>
#include <orc/orcprogram.h>
#include <orc/orcsse.h>
-#include <orc/orcutils.h>
#include <orc/orcx86.h>
#include <orc/orcpowerpc.h>
--- orc/orc/orcutils.h 2011-04-28 00:29:24.000000000 +0200
+++ orc.new/orc/orcutils.h 2011-05-08 19:10:13.380803529 +0200
@@ -30,8 +30,8 @@
#ifndef _ORC_INTEGER_TYPEDEFS_
#define _ORC_INTEGER_TYPEDEFS_
-#if defined(__STDC__) && __STDC__ && __STDC_VERSION__ >= 199901L
#include <stdint.h>
+#if defined(__STDC__) && __STDC__ && __STDC_VERSION__ >= 199901L
typedef int8_t orc_int8;
typedef int16_t orc_int16;
typedef int32_t orc_int32;
diff -ruN portaudio/Makefile.in portaudio.n/Makefile.in
--- portaudio/Makefile.in 2007-10-24 17:29:04.000000000 +0200
+++ portaudio.n/Makefile.in 2007-12-18 05:43:27.000000000 +0100
@@ -120,7 +120,7 @@
SUBDIRS =
@ENABLE_CXX_TRUE@SUBDIRS += bindings/cpp
-all: lib/$(PALIB) all-recursive tests
+all: lib/$(PALIB) all-recursive
tests: bin-stamp $(TESTS)
--- ptw32_processTerminate.c Mon Jan 26 18:00:34 2009
+++ ptw32_processTerminate.c Mon Jan 26 18:00:42 2009
@@ -96,6 +96,9 @@
tp = tpNext;
}
+ ptw32_threadReuseTop = PTW32_THREAD_REUSE_EMPTY;
+ ptw32_threadReuseBottom = PTW32_THREAD_REUSE_EMPTY;
+
LeaveCriticalSection (&ptw32_thread_reuse_lock);
/*
--- pthreads/pthread.h 2006-01-24 14:59:57.000000000 +0100
+++ pthreads.new/pthread.h 2010-04-14 15:49:39.000000000 +0200
@@ -302,7 +302,7 @@
#endif
#endif
-#ifndef HAVE_STRUCT_TIMESPEC
+#if !defined( HAVE_STRUCT_TIMESPEC ) && !defined( _TIMESPEC_DEFINED )
#define HAVE_STRUCT_TIMESPEC 1
struct timespec {
long tv_sec;
diff -urN pthreads/GNUmakefile pthreads.new/GNUmakefile
--- pthreads/GNUmakefile 2010-10-08 22:30:43.029264998 +0200
+++ pthreads.new/GNUmakefile 2010-10-08 22:30:55.989265032 +0200
@@ -63,7 +63,7 @@
XOPT =
RCFLAGS = --include-dir=.
-LFLAGS = -lwsock32
+LFLAGS = -lws2_32
# ----------------------------------------------------------------------
# The library can be built with some alternative behaviour to
--- schroedinger/Makefile.am 2009-09-29 07:08:51.000000000 +0200
+++ schroedinger.new/Makefile.am 2010-01-09 02:18:41.000000000 +0100
@@ -1,6 +1,6 @@
AUTOMAKE_OPTIONS = foreign
-SUBDIRS = schroedinger doc tools testsuite
+SUBDIRS = schroedinger doc tools
DISTCHECK_CONFIGURE_FLAGS=--enable-gtk-doc
--- schroedinger/tools/Makefile.am 2010-01-04 03:52:01.000000000 +0100
+++ schroedinger.new/tools/Makefile.am 2010-05-08 20:50:30.000000000 +0200
@@ -5,7 +5,7 @@
AM_CFLAGS = $(SCHRO_CFLAGS) $(ERROR_CFLAGS) \
- $(ORC_CFLAGS) \
+ -L$(PREFIX)/lib $(ORC_CFLAGS) \
-DSCHRO_ENABLE_UNSTABLE_API
LDADD = $(SCHRO_LIBS)
--- sidplay-libs-2.1.1.orig/libsidplay/include/sidplay/sidendian.h
+++ sidplay-libs-2.1.1/libsidplay/include/sidplay/sidendian.h
@@ -16,6 +16,10 @@
***************************************************************************/
/***************************************************************************
* $Log: sidendian.h,v $
+ * Revision 1.6 2005/11/20 11:02:06 s_a_white
+ * Work around for bug in gcc 4 (optimiser breaks if variable never has a
+ * direct assignment).
+ *
* Revision 1.5 2001/07/03 22:44:13 s_a_white
* Added endian_16 to convert a 16 bit value to an array of 8s.
*
@@ -141,7 +145,7 @@
// Convert high-byte and low-byte to 16-bit word.
inline uint_least16_t endian_16 (uint8_t hi, uint8_t lo)
{
- uint_least16_t word;
+ uint_least16_t word = 0;
endian_16lo8 (word, lo);
endian_16hi8 (word, hi);
return word;
@@ -334,7 +338,7 @@
// Swap word endian.
inline void endian_32swap8 (uint_least32_t &dword)
{
- uint_least16_t lo, hi;
+ uint_least16_t lo = 0, hi = 0;
lo = endian_32lo16 (dword);
hi = endian_32hi16 (dword);
endian_16swap8 (lo);
@@ -346,8 +350,8 @@
// Convert high-byte and low-byte to 32-bit word.
inline uint_least32_t endian_32 (uint8_t hihi, uint8_t hilo, uint8_t hi, uint8_t lo)
{
- uint_least32_t dword;
- uint_least16_t word;
+ uint_least32_t dword = 0;
+ uint_least16_t word = 0;
endian_32lo8 (dword, lo);
endian_32hi8 (dword, hi);
endian_16lo8 (word, hilo);
@@ -374,7 +378,7 @@
defined(SID_WORDS_LITTLEENDIAN)
*((uint_least32_t *) ptr) = dword;
#else
- uint_least16_t word;
+ uint_least16_t word = 0;
ptr[0] = endian_32lo8 (dword);
ptr[1] = endian_32hi8 (dword);
word = endian_32hi16 (dword);
@@ -401,7 +405,7 @@
defined(SID_WORDS_BIGENDIAN)
*((uint_least32_t *) ptr) = dword;
#else
- uint_least16_t word;
+ uint_least16_t word = 0;
word = endian_32hi16 (dword);
ptr[1] = endian_16lo8 (word);
ptr[0] = endian_16hi8 (word);
--- sidplay-2.1.1/Makefile.am 2002-12-23 21:21:03.000000000 +0100
+++ sidplay-2.1.1.new/Makefile.am 2011-01-15 16:50:45.517649286 +0100
@@ -1,7 +1,7 @@
AUTOMAKE_OPTIONS = foreign
-SUBDIRS = libsidplay libsidutils resid builders
+SUBDIRS = libsidplay resid builders
# Remove CVS directories from any subdirs that get
# included completely (e.g. win, directx,...).
--- sidplay-libs-2.1.1/libsidplay/src/sidtune/SidTune.cpp.old 2008-07-25 16:55:02.000000000 \
+0000
+++ sidplay-libs-2.1.1/libsidplay/src/sidtune/SidTune.cpp 2008-07-25 16:53:58.000000000 \
+0000
@@ -283,7 +283,7 @@
uint_least32_t fileLen = 0;
// This sucks big time
- openmode createAtrr = std::ios::in;
+ std::_Ios_Openmode createAtrr = std::ios::in;
#ifdef HAVE_IOS_NOCREATE
createAtrr |= std::ios::nocreate;
#endif
@@ -952,7 +952,7 @@
if ( status )
{
// Open binary output file stream.
- openmode createAttr = std::ios::out;
+ std::_Ios_Openmode createAttr = std::ios::out;
#if defined(HAVE_IOS_BIN)
createAttr |= std::ios::bin;
#else
@@ -1002,7 +1002,7 @@
if ( status )
{
// Open ASCII output file stream.
- openmode createAttr = std::ios::out;
+ std::_Ios_Openmode createAttr = std::ios::out;
if ( overWriteFlag )
createAttr |= std::ios::trunc;
else
@@ -1036,7 +1036,7 @@
if ( status )
{
// Open binary output file stream.
- openmode createAttr = std::ios::out;
+ std::_Ios_Openmode createAttr = std::ios::out;
#if defined(HAVE_IOS_BIN)
createAttr |= std::ios::bin;
#else
--- sidplay-2.1.1/libsidplay/include/sidplay/SmartPtr.h 2004-06-14 22:08:04.000000000 +0200
+++ sidplay2/libsidplay/include/sidplay/SmartPtr.h 2010-12-28 23:33:07.803027697 +0100
@@ -211,16 +211,16 @@
{
if ( bufferLen >= 1 )
{
- pBufCurrent = ( bufBegin = buffer );
- bufEnd = bufBegin + bufferLen;
- bufLen = bufferLen;
- status = true;
+ this->pBufCurrent = ( this->bufBegin = buffer );
+ this->bufEnd = this->bufBegin + bufferLen;
+ this->bufLen = bufferLen;
+ this->status = true;
}
else
{
- pBufCurrent = bufBegin = bufEnd = 0;
- bufLen = 0;
- status = false;
+ this->pBufCurrent = this->bufBegin = this->bufEnd = 0;
+ this->bufLen = 0;
+ this->status = false;
}
}
};
diff -ruN sidplay-2.1.1/builders/resid-builder/src/resid-builder.cpp sidplay-2.1.1.new/builders/resid-builder/src/resid-builder.cpp
--- sidplay-2.1.1/builders/resid-builder/src/resid-builder.cpp 2004-06-14 22:07:58.000000000 +0200
+++ sidplay-2.1.1.new/builders/resid-builder/src/resid-builder.cpp 2011-01-15 16:49:24.909660710 +0100
@@ -46,6 +46,8 @@
#include "resid.h"
#include "resid-emu.h"
+#include <string.h>
+
// Error String(s)
const char *ReSIDBuilder::ERR_FILTER_DEFINITION = "RESID ERROR: Filter definition is not valid (see docs).";
Les fichiers binaires sidplay-2.1.1/builders/resid-builder/src/resid-builder.o et sidplay-2.1.1.new/builders/resid-builder/src/resid-builder.o sont différents.
diff -ruN sidplay-2.1.1/builders/resid-builder/src/resid.cpp sidplay-2.1.1.new/builders/resid-builder/src/resid.cpp
--- sidplay-2.1.1/builders/resid-builder/src/resid.cpp 2004-06-14 22:07:58.000000000 +0200
+++ sidplay-2.1.1.new/builders/resid-builder/src/resid.cpp 2011-01-15 16:49:05.441652832 +0100
@@ -25,6 +25,7 @@
#include "resid.h"
#include "resid-emu.h"
+#include <string.h>
char ReSID::m_credit[];
diff -ruN speex-1.1.12/Makefile.am speex/Makefile.am
--- speex-1.1.12/Makefile.am 2005-11-23 12:42:56.000000000 +0100
+++ speex/Makefile.am 2006-07-26 15:38:04.000000000 +0200
@@ -13,9 +13,9 @@
EXTRA_DIST = Speex.spec Speex.spec.in Speex.kdevelop speex.m4 speex.pc.in README.blackfin README.symbian README.TI-DSP
#Fools KDevelop into including all files
-SUBDIRS = libspeex include @src@ doc win32 symbian ti
+SUBDIRS = libspeex include doc win32 symbian ti
-DIST_SUBDIRS = libspeex include src doc win32 symbian ti
+DIST_SUBDIRS = libspeex include doc win32 symbian ti
rpm: dist
rpmbuild -ta ${PACKAGE}-${VERSION}.tar.gz
diff -ruN speex-1.1.12/Makefile.in speex/Makefile.in
--- speex-1.1.12/Makefile.in 2006-02-10 11:13:16.000000000 +0100
+++ speex/Makefile.in 2006-07-26 15:38:04.000000000 +0200
@@ -194,8 +194,8 @@
EXTRA_DIST = Speex.spec Speex.spec.in Speex.kdevelop speex.m4 speex.pc.in README.blackfin README.symbian README.TI-DSP
#Fools KDevelop into including all files
-SUBDIRS = libspeex include @src@ doc win32 symbian ti
-DIST_SUBDIRS = libspeex include src doc win32 symbian ti
+SUBDIRS = libspeex include doc win32 symbian ti
+DIST_SUBDIRS = libspeex include doc win32 symbian ti
all: config.h
$(MAKE) $(AM_MAKEFLAGS) all-recursive
--- taglib-orig/bindings/c/CMakeLists.txt 2011-08-13 21:00:27.511266275 -0400
+++ taglib/bindings/c/CMakeLists.txt 2011-08-13 21:00:45.071292030 -0400
@@ -19,9 +19,11 @@
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/taglib_c.pc.cmake ${CMAKE_CURRENT_BINARY_DIR}/taglib_c.pc )
########### next target ###############
-ADD_LIBRARY(tag_c SHARED tag_c.cpp)
if(ENABLE_STATIC)
+ ADD_LIBRARY(tag_c STATIC tag_c.cpp)
set_target_properties(tag_c PROPERTIES COMPILE_DEFINITIONS TAGLIB_STATIC)
+else(ENABLE_STATIC)
+ ADD_LIBRARY(tag_c SHARED tag_c.cpp)
endif(ENABLE_STATIC)
TARGET_LINK_LIBRARIES(tag_c tag )
--- taglib/admin/conf.change.pl 2005-07-27 10:23:52.000000000 +1000
+++ taglib/admin/conf.change.pl 2007-09-30 15:57:48.062500000 +1000
@@ -146,6 +146,7 @@
fi
done
if test -f \$tmp/subs.files ; then
+ dos2unix \$tmp/subs.files
perl $ac_aux_dir/config.pl "\$tmp/subs.sed" "\$tmp/subs.files" "\$srcdir" "\$INSTALL"
fi
rm -f \$tmp/subs.files
diff -ru taglib-1.5/taglib/taglib_export.h taglib/taglib/taglib_export.h
--- taglib-1.5/taglib/taglib_export.h 2008-02-04 15:14:46.000000000 +0000
+++ taglib/taglib/taglib_export.h 2008-04-13 18:25:29.000000000 +0100
@@ -28,9 +28,9 @@
#if !defined(TAGLIB_STATIC) && (defined(_WIN32) || defined(_WIN64))
#ifdef MAKE_TAGLIB_LIB
-#define TAGLIB_EXPORT __declspec(dllexport)
+#define TAGLIB_EXPORT
#else
-#define TAGLIB_EXPORT __declspec(dllimport)
+#define TAGLIB_EXPORT
#endif
#elif defined(__GNUC__) && (__GNUC__ > 4 || __GNUC__ == 4 && __GNUC_MINOR__ >= 1)
#define TAGLIB_EXPORT __attribute__ ((visibility("default")))
Index: os.h
===================================================================
--- os.h (révision 17483)
+++ os.h (copie de travail)
@@ -20,6 +20,14 @@
#include <math.h>
#include <ogg/os_types.h>
+#ifdef _LOW_ACCURACY_
+# define X(n) (((((n)>>22)+1)>>1) - ((((n)>>22)+1)>>9))
+# define LOOKUP_T const unsigned char
+#else
+# define X(n) (n)
+# define LOOKUP_T const ogg_int32_t
+#endif
+
#ifndef _V_IFDEFJAIL_H_
# define _V_IFDEFJAIL_H_
--- libvorbis/Makefile.in 2010-03-26 08:00:09.000000000 +0100
+++ libvorbis.new/Makefile.in 2010-03-29 21:39:50.000000000 +0200
@@ -80,7 +80,7 @@
distclean-recursive maintainer-clean-recursive
ETAGS = etags
CTAGS = ctags
-DIST_SUBDIRS = m4 include vq lib test doc examples
+DIST_SUBDIRS = m4 include vq lib
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir)
--- xml/config.sub.orig 2007-05-14 17:21:21.000000000 +0200
+++ xml/config.sub 2007-05-14 17:22:29.000000000 +0200
@@ -1110,6 +1110,9 @@
-unixware*)
os=-sysv4.2uw
;;
+ -uclibc*)
+ os=-linux
+ ;;
-gnu/linux*)
os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
;;
--- zlib/Makefile.in 2010-04-20 06:12:21.000000000 +0200
+++ zlib.new/Makefile.in 2010-06-08 14:02:43.000000000 +0200
@@ -168,7 +168,7 @@
-@if [ ! -d $(DESTDIR)$(man3dir) ]; then mkdir -p $(DESTDIR)$(man3dir); fi
-@if [ ! -d $(DESTDIR)$(pkgconfigdir) ]; then mkdir -p $(DESTDIR)$(pkgconfigdir); fi
cp $(STATICLIB) $(DESTDIR)$(libdir)
- cp $(SHAREDLIBV) $(DESTDIR)$(sharedlibdir)
+ cp $(SHAREDLIBV) $(DESTDIR)$(sharedlibdir) || true >/dev/null 2>&1
cd $(DESTDIR)$(libdir); chmod u=rw,go=r $(STATICLIB)
-@(cd $(DESTDIR)$(libdir); $(RANLIB) libz.a || true) >/dev/null 2>&1
-@cd $(DESTDIR)$(sharedlibdir); if test "$(SHAREDLIBV)" -a -f $(SHAREDLIBV); then \
--- zlib/zutil.h 2010-04-18 21:29:24.000000000 +0200
+++ zlib.new/zutil.h 2010-06-08 13:53:03.000000000 +0200
@@ -153,6 +153,10 @@
# endif
#endif
+#if defined(_WIN32_WCE)
+# define fdopen(fd,mode) NULL /* No fdopen() */
+#endif
+
#if defined(__BORLANDC__)
#pragma warn -8004
#pragma warn -8008
--- zvbi/Makefile.am.orig 2008-10-14 08:51:32.000000000 +0200
+++ zvbi/Makefile.am 2008-10-14 08:51:47.000000000 +0200
@@ -19,13 +19,7 @@ DISTCLEANFILES = site_def.h
# Attn order matters.
SUBDIRS = \
m4 \
- src \
- $(proxy_dirs) \
- contrib \
- examples \
- test \
- po \
- doc
+ src
ACLOCAL_AMFLAGS = -I m4
diff -ruN zvbi/src/conv.c zvbi.new/src/conv.c
--- zvbi/src/conv.c 2008-02-26 15:39:23.000000000 +0100
+++ zvbi.new/src/conv.c 2008-09-11 21:05:18.000000000 +0200
@@ -26,7 +26,9 @@
#endif
#include <errno.h>
+#ifndef WIN32
#include <langinfo.h>
+#endif
#include "misc.h"
#include "conv.h"
@@ -1234,9 +1236,12 @@
const char *dst_format;
dst_format = bind_textdomain_codeset (vbi_intl_domainname, NULL);
-
+#ifdef WIN32
+#warning this is wrong
+#else
if (NULL == dst_format)
dst_format = nl_langinfo (CODESET);
+#endif
return dst_format; /* may be NULL */
}
diff -ruN zvbi/src/export.c zvbi.new/src/export.c
--- zvbi/src/export.c 2008-02-19 01:35:15.000000000 +0100
+++ zvbi.new/src/export.c 2008-09-11 20:38:55.000000000 +0200
@@ -40,6 +40,26 @@
#include "conv.h"
#include "vbi.h" /* asprintf */
+#ifndef EOVERFLOW
+ #define EOVERFLOW 75
+#endif
+
+#ifndef S_IRGRP
+#define S_IRGRP 0
+#endif
+
+#ifndef S_IWGRP
+#define S_IWGRP 0
+#endif
+
+#ifndef S_IROTH
+#define S_IROTH 0
+#endif
+
+#ifndef S_IWOTH
+#define S_IWOTH 0
+#endif
+
extern const char _zvbi_intl_domainname[];
/**
diff -ruN zvbi/src/packet.c zvbi.new/src/packet.c
--- zvbi/src/packet.c 2008-02-20 18:04:33.000000000 +0100
+++ zvbi.new/src/packet.c 2008-09-11 21:00:35.000000000 +0200
@@ -32,7 +32,9 @@
#include <fcntl.h>
#include <time.h>
#include <errno.h>
+#ifndef WIN32
#include <sys/ioctl.h>
+#endif
#include "misc.h"
#include "hamm.h"
diff -ruN zvbi/src/proxy-msg.c zvbi.new/src/proxy-msg.c
--- zvbi/src/proxy-msg.c 2008-02-19 01:35:21.000000000 +0100
+++ zvbi.new/src/proxy-msg.c 2008-09-11 21:00:07.000000000 +0200
@@ -129,7 +129,9 @@
#include <netinet/tcp.h>
#include <arpa/inet.h>
#include <netdb.h>
+#ifndef WIN32
#include <syslog.h>
+#endif
#include <assert.h>
#include <sys/ioctl.h>
#include <sys/mman.h>
diff -ruN zvbi/src/proxy-msg.h zvbi.new/src/proxy-msg.h
--- zvbi/src/proxy-msg.h 2008-02-19 01:35:21.000000000 +0100
+++ zvbi.new/src/proxy-msg.h 2008-09-11 20:59:40.000000000 +0200
@@ -68,7 +68,9 @@
#ifndef PROXY_MSG_H
#define PROXY_MSG_H
+#ifndef WIN32
#include <sys/syslog.h>
+#endif
/* Public */
diff -ruN zvbi/src/vbi.c zvbi.new/src/vbi.c
--- zvbi/src/vbi.c 2008-03-05 14:33:04.000000000 +0100
+++ zvbi.new/src/vbi.c 2008-09-11 20:57:55.000000000 +0200
@@ -39,7 +39,9 @@
#include <fcntl.h>
#include <time.h>
#include <errno.h>
+#ifndef WIN32
#include <sys/ioctl.h>
+#endif
#include <sys/time.h>
#include <pthread.h>
--- zvbi/configure.in 2008-03-05 14:07:00.000000000 +0100
+++ zvbi.new/configure.in 2008-09-11 21:12:47.000000000 +0200
@@ -164,14 +164,14 @@
dnl Check how to link pthreads functions.
dnl (-lpthread on Linux, -pthread on FreeBSD).
dnl
-AC_CHECK_LIB(pthread, pthread_create,,[
- AC_TRY_LINK(, pthread_create();,,[
- LDFLAGS="$LDFLAGS -pthread"
- AC_TRY_LINK(, pthread_create();,,[
- AC_MSG_ERROR([Unable to link pthread functions])
- ])
- ])
-])
+dnl AC_CHECK_LIB(pthread, pthread_create,,[
+dnl AC_TRY_LINK(, pthread_create();,,[
+dnl LDFLAGS="$LDFLAGS -pthread"
+dnl AC_TRY_LINK(, pthread_create();,,[
+dnl AC_MSG_ERROR([Unable to link pthread functions])
+dnl ])
+dnl ])
+dnl ])
dnl
dnl Check for Gnome unicode library or libc 2.1.
--- zvbi/src/io.c 2008-02-19 01:35:20.000000000 +0100
+++ zvbi2/src/io.c 2008-09-11 21:18:59.000000000 +0200
@@ -28,8 +28,10 @@
#include <fcntl.h> /* open() */
#include <unistd.h> /* close(), mmap(), munmap(), gettimeofday() */
+#ifndef WIN32
#include <sys/ioctl.h> /* ioctl() */
#include <sys/mman.h> /* mmap(), munmap() */
+#endif
#include <sys/time.h> /* struct timeval */
#include <sys/types.h>
#include <errno.h>
@@ -514,7 +516,7 @@
}
}
-
+#ifndef WIN32
/**
* @internal
*
@@ -554,7 +556,7 @@
return ret;
}
}
-
+#endif
/* Helper functions to log the communication between the library and drivers.
FIXME remove fp arg, call user log function instead (0.3). */
@@ -668,7 +670,9 @@
"EXCL", O_EXCL,
"TRUNC", O_TRUNC,
"APPEND", O_APPEND,
+#ifndef WIN32
"NONBLOCK", O_NONBLOCK,
+#endif
0);
fprintf (fp, ", 0%o)", mode);
@@ -773,6 +777,7 @@
return err;
}
+#ifndef WIN32
/**
* @internal
* Drop-in for mmap(). Logs the request on fp if not NULL.
@@ -822,7 +827,7 @@
return r;
}
-
+#endif
/**
* @internal
* Drop-in for munmap(). Logs the request on fp if not NULL.
--- zvbi/zvbi-0.2.pc.in 2009-10-15 14:47:54.000000000 +0200
+++ zvbi.new/zvbi-0.2.pc.in 2009-10-15 14:47:46.000000000 +0200
@@ -7,5 +7,5 @@
Description: VBI Capturing and Decoding Library
Requires:
Version: @VERSION@
-Libs: -L${libdir} -lzvbi -lm @LIBS@
+Libs: -L${libdir} -lzvbi -lm -lpthreadGC2 -lwsock32 @LIBS@
Cflags: -I${includedir}
#***************************************************************************
# src/Makefile : Dearchive and compile all files necessary
# ***************************************************************************
# Copyright (C) 2003 - 2011 the VideoLAN team
# $Id$
#
# Authors: Christophe Massiot <massiot@via.ecp.fr>
# Derk-Jan Hartman <hartman at videolan dot org>
# Eric Petit <titer@m0k.org>
# Felix Paul Kühne <fkuehne at videolan dot org>
# Christophe Mutricy <xtophe AT xtelevision.com>
# Gildas Bazin <gbazin at videolan dot org>
# Damien Fouilleul <damienf at videolan dot org>
# Jean-Baptiste Kempf <jb at videolan dot org>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
# ***************************************************************************
include ../config.mak
include ./packages.mak
# ***************************************************************************
# Set a clean environment
# ***************************************************************************
ifdef HAVE_DARWIN_OS
export PATH := $(PREFIX)/bin:$(EXTRA_PATH):/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:
else
export PATH := $(PREFIX)/bin:$(EXTRA_PATH):$(PATH)
endif
export PKG_CONFIG_PATH
export PKG_CONFIG_LIBDIR = $(PREFIX)/lib/pkgconfig
export MACOSX_DEPLOYMENT_TARGET = $(SDK_TARGET)
export LIBRARY_PATH := $(PREFIX)/lib:$(LIBRARY_PATH)
export LD_LIBRARY_PATH := $(PREFIX)/lib:$(LD_LIBRARY_PATH)
export CFLAGS = -I$(PREFIX)/include $(EXTRA_CFLAGS) $(EXTRA_CPPFLAGS)
export CPPFLAGS = -I$(PREFIX)/include $(EXTRA_CFLAGS) $(EXTRA_CPPFLAGS)
export CXXFLAGS = -I$(PREFIX)/include $(EXTRA_CFLAGS) $(EXTRA_CPPFLAGS)
export LDFLAGS = -L$(PREFIX)/lib $(EXTRA_LDFLAGS)
export ACLOCAL = aclocal -I$(PREFIX)/share/aclocal
ifdef HAVE_MACOSX
export CC
export CXX
export LD
endif
# ***************************************************************************
# Cross compilation variables
# We'll usually use --host=<platform>, except for a few libraries which
# don't handle it (gotta set CC/CXX/etc), and obviously FFmpeg has its own
# way of doing it... ;)
# ***************************************************************************
ifneq ($(CC),)
HOSTCC+= CC="$(CC)"
endif
ifneq ($(CXX),)
HOSTCC+= CXX="$(CXX)"
endif
ifneq ($(LD),)
HOSTCC+= LD="$(LD)"
endif
ifneq ($(RANLIB),)
HOSTCC+= RANLIB="$(RANLIB)"
endif
ifneq ($(AR),)
HOSTCC+= AR="$(AR)"
endif
ifneq ($(STRIP),)
HOSTCC+= STRIP="$(STRIP)"
endif
# Define ranlib on non-cross compilation setups
ifeq ($(RANLIB),)
RANLIB=ranlib
endif
# Just a shortcut for readability
ENABLED=1
# cross compiling
#This should be inside the if block but some config scripts are buggy
HOSTCONF=--target=$(HOST) --host=$(HOST) --build=$(BUILD) --program-prefix=""
ifneq ($(BUILD),$(HOST))
#
# Compiling for MinGW under Cygwin could be deemed as cross compiling
# unfortunately there isn't a complete separate GCC toolchain for MinGW under Cygwin
#
ifndef HAVE_CYGWIN
# We are REALLY cross compiling
HAVE_CROSS_COMPILE=y
ifndef HAVE_IOS
HAVE_CROSS_COMPILE_NEEDS_CROSS_PREFIX=y
endif
else
# We are compiling for MinGW on Cygwin
endif
endif
#
# Special target-dependant options
#
ifdef HAVE_WIN32
HOSTCONF+= --without-pic --disable-shared --disable-dependency-tracking
endif
ifdef HAVE_WINCE
HOSTCONF+= --without-pic --disable-shared
endif
DATE=`date +%Y-%m-%d`
# ***************************************************************************
# Standard rules
# ***************************************************************************
# Generated by ./bootstrap from default configuration in src/Distributions
#
include ../distro.mak
FORCE:
# ***************************************************************************
# Useful macros
# ***************************************************************************
define EXTRACT_GZ
rm -rf $@ || true
gunzip -c $< | tar xf - --exclude='[*?:<>\|]'
mv $(patsubst %.tar.gz,%,$(patsubst %.tgz,%,$(notdir $<))) $@ || true
touch $@
endef
define EXTRACT_BZ2
rm -rf $@ || true
bunzip2 -c $< | tar xf - --exclude='[*?:<>\|]'
mv $(patsubst %.tar.bz2,%,$(notdir $<)) $@ || true
touch $@
endef
define EXTRACT_ZIP
rm -rf $@ || true
unzip $<
mv $(patsubst %.zip,%,$(notdir $<)) $@ || true
touch $@
endef
### Darwin-specific ###
# These macros prepare the dynamic libraries for inclusion in the Mac OS X
# bundle. For instance if you're building a library named libtoto.dylib,
# which depends on the contrib library libtata.dylib, you should have the
# following entry :
# .toto: toto_.tata
# cd $< ; ./configure --prefix=$(PREFIX)
# $(MAKE) -C $<
# $(MAKE) -C $< install
# $(INSTALL_NAME)
# touch $@
# ***************************************************************************
# errno
# ***************************************************************************
errno:
mkdir -p $@
$(WGET) $(ERRNO_URL)/errno.h -O $@/errno.h
.errno: errno
mkdir -p $(PREFIX)/include
cp $</errno.h $(PREFIX)/include
touch $@
CLEAN_FILE += .errno
CLEAN_PKG += errno
# ***************************************************************************
# CMake
# ***************************************************************************
cmake-$(CMAKE_VERSION).tar.gz:
$(WGET) $(CMAKE_URL)
cmake: cmake-$(CMAKE_VERSION).tar.gz
$(EXTRACT_GZ)
.cmake: cmake
(cd $<; ./configure --prefix=$(PREFIX) && make && make install)
touch $@
CLEAN_FILE += .cmake
CLEAN_PKG += cmake
# ***************************************************************************
# libtool
# ***************************************************************************
ifdef HAVE_MACOSX
libtool-$(LIBTOOL_VERSION).tar.gz:
$(WGET) $(LIBTOOL_URL)
libtool: libtool-$(LIBTOOL_VERSION).tar.gz
$(EXTRACT_GZ)
.libtool: libtool
(cd $<; ./configure --prefix=$(PREFIX) && make && make install)
ln -sf libtool $(PREFIX)/bin/glibtool
ln -sf libtoolize $(PREFIX)/bin/glibtoolize
touch $@
CLEAN_PKG += libtool
DISTCLEAN_PKG += libtool-$(LIBTOOL_VERSION).tar.gz
CLEAN_FILE += .libtool
endif
# ***************************************************************************
# autotools
# ***************************************************************************
autoconf-$(AUTOCONF_VERSION).tar.bz2:
$(WGET) $(AUTOCONF_URL)
autoconf: autoconf-$(AUTOCONF_VERSION).tar.bz2
$(EXTRACT_BZ2)
.autoconf: autoconf
(cd $<; ./configure --prefix=$(PREFIX) && make && make install)
touch $@
CLEAN_FILE += .autoconf
CLEAN_PKG += autoconf
DISTCLEAN_PKG += autoconf-$(AUTOCONF_VERSION).tar.bz2
automake-$(AUTOMAKE_VERSION).tar.gz:
$(WGET) $(AUTOMAKE_URL)
automake: automake-$(AUTOMAKE_VERSION).tar.gz
$(EXTRACT_GZ)
.automake: automake .autoconf
(cd $<; ./configure --prefix=$(PREFIX) && make && make install)
touch $@
CLEAN_FILE += .automake
CLEAN_PKG += automake
DISTCLEAN_PKG += automake-$(AUTOMAKE_VERSION).tar.gz
# ***************************************************************************
# pkgconfig
# ***************************************************************************
pkg-config-$(PKGCFG_VERSION).tar.gz:
$(WGET) $(PKGCFG_URL)
pkgconfig: pkg-config-$(PKGCFG_VERSION).tar.gz
$(EXTRACT_GZ)
(cd $@; autoconf)
.pkgcfg: pkgconfig
(cd pkgconfig; ./configure --prefix=$(PREFIX) --disable-shared --enable-static && make && make install)
touch $@
CLEAN_FILE += .pkgcfg
CLEAN_PKG += pkgconfig
DISTCLEAN_PKG += pkg-config-$(PKGCFG_VERSION).tar.gz
# ***************************************************************************
# gettext
# ***************************************************************************
gettext-$(GETTEXT_VERSION).tar.gz:
$(WGET) $(GETTEXT_URL)
gettext: gettext-$(GETTEXT_VERSION).tar.gz
$(EXTRACT_GZ)
ifdef HAVE_MACOSX
patch -p0 < Patches/gettext-macosx.patch
endif
.intl: gettext .iconv
ifdef HAVE_WIN32
( cd $< && $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-relocatable --disable-java --disable-native-java)
else
( cd $< && $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-java --disable-native-java --without-emacs)
endif
ifneq ($(HOST),$(BUILD))
ifndef HAVE_CYGWIN
# We'll use the installed gettext and only need to cross-compile libintl, also build autopoint and gettextsize tools need for VLC bootstrap
( cd $< && make -C gettext-runtime/intl && make -C gettext-runtime/intl install && make -C gettext-tools/misc install )
else
# We are compiling for MinGW on Cygwin -- build the full current gettext
( cd $< && make && make install )
endif
else
# Build and install the whole gettext
( cd $< && make && make install )
endif
# Work around another non-sense of autoconf.
ifdef HAVE_WIN32
(cd $(PREFIX)/include; sed -i.orig '314 c #if 0' libintl.h)
endif
$(INSTALL_NAME)
touch $@
CLEAN_FILE += .intl
CLEAN_PKG += gettext
DISTCLEAN_PKG += gettext-$(GETTEXT_VERSION).tar.gz
# ***************************************************************************
# libiconv
# ***************************************************************************
libiconv-$(LIBICONV_VERSION).tar.gz:
$(WGET) $(LIBICONV_URL)
libiconv: libiconv-$(LIBICONV_VERSION).tar.gz
$(EXTRACT_GZ)
ifdef HAVE_WIN64
patch -p0 < Patches/libiconv-win64.patch
endif
ifdef HAVE_WINCE
patch -p0 < Patches/libiconv-wince.patch
patch -p0 < Patches/libiconv-wince-hack.patch
endif
libiconv-snowleopard.tar.bz2:
$(WGET) $(LIBICONVMAC_URL)
libiconv-snowleopard: libiconv-snowleopard.tar.bz2
$(EXTRACT_BZ2)
ifdef HAVE_MACOSX
ifdef HAVE_MACOSX_DARWIN_10
.iconv-from-os: libiconv-snowleopard
(cd libiconv-snowleopard && cp libiconv.* $(PREFIX)/lib/)
touch $@
else
.iconv-from-os:
touch $@
endif
endif
.iconv: libiconv
(cd libiconv; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-nls && make && make install)
$(INSTALL_NAME)
touch $@
CLEAN_FILE += .iconv .iconv-from-os
CLEAN_PKG += libiconv
DISTCLEAN_PKG += libiconv-$(LIBICONV_VERSION).tar.gz
# ***************************************************************************
# fontconfig
# ***************************************************************************
fontconfig-$(FONTCONFIG_VERSION).tar.gz:
$(WGET) $(FONTCONFIG_URL)
fontconfig: fontconfig-$(FONTCONFIG_VERSION).tar.gz Patches/fontconfig.patch
$(EXTRACT_GZ)
patch -p0 < Patches/fontconfig-march.patch
patch -p0 < Patches/fontconfig-nodocs.patch
ifdef HAVE_WIN32
patch -p0 < Patches/fontconfig.patch
patch -p0 < Patches/fontconfig-noxml2.patch
(cd $@; autoreconf -ivf)
endif
FONTCONFIG_BASE_CONF = --prefix=$(PREFIX) \
--with-freetype-config=$(PREFIX)/bin/freetype-config \
--enable-libxml2 \
--disable-docs
FONTCONFIG_CONF-$(ENABLED) = $(HOSTCONF) $(FONTCONFIG_BASE_CONF)
FONTCONFIG_CONF-$(HAVE_MACOSX) += $(HOSTCONF) \
--with-cache-dir=~/Library/Caches/fontconfig \
--with-confdir=/usr/X11/lib/X11/fonts \
--with-default-fonts=/System/Library/Fonts \
--with-add-fonts=/Library/Fonts,~/Library/Fonts \
--with-arch=$(ARCH)
FONTCONFIG_CONF-$(HAVE_WIN32) = --with-arch=i686 $(FONTCONFIG_BASE_CONF)
ifndef HAVE_CYGWIN
FONTCONFIG_CONF-$(HAVE_WIN32) += $(HOSTCONF)
endif
FONTCONFIG_CONF-$(HAVE_CYGWIN) += --target=$(HOST) --disable-pic --disable-shared
FONTCONFIG_ENV-$(ENABLED) = $(HOSTCC) LIBXML2_CFLAGS=`$(PREFIX)/bin/xml2-config --cflags`
FONTCONFIG_ENV-$(HAVE_MACOSX) = $(HOSTCC) LIBXML2_CFLAGS=`xml2-config --cflags` LIBXML2_LIBS=`xml2-config --libs`
FONTCONFIG_ENV-$(HAVE_WIN32) = $(HOSTCC)
FONTCONFIG_ENV-$(HAVE_CYGWIN) =
FONTCONFIG_INSTALL-$(ENABLED) = make install
FONTCONFIG_INSTALL-$(HAVE_MACOSX) = make install-exec && (cd fontconfig ; make install-data) && cp fontconfig.pc $(PKG_CONFIG_LIBDIR) && sed -e 's%/usr/lib/libiconv.la%%' -i.orig $(PREFIX)/lib/libfontconfig.la
.fontconfig: fontconfig .xml .freetype
(cd $<; $(FONTCONFIG_ENV-1) ./configure $(FONTCONFIG_CONF-1) && make && $(FONTCONFIG_INSTALL-1))
$(INSTALL_NAME)
touch $@
CLEAN_FILE += .fontconfig
CLEAN_PKG += fontconfig
DISTCLEAN_PKG += fontconfig-$(FONTCONFIG_VERSION).tar.gz
# ***************************************************************************
# freetype2
# ***************************************************************************
freetype-$(FREETYPE2_VERSION).tar.gz:
$(WGET) $(FREETYPE2_URL)
freetype2: freetype-$(FREETYPE2_VERSION).tar.gz
$(EXTRACT_GZ)
.freetype: freetype2
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) && make && make install)
$(INSTALL_NAME)
touch $@
CLEAN_FILE += .freetype
CLEAN_PKG += freetype2
DISTCLEAN_PKG += freetype-$(FREETYPE2_VERSION).tar.gz
# ***************************************************************************
# fribidi
# ***************************************************************************
fribidi-$(FRIBIDI_VERSION).tar.gz:
$(WGET) $(FRIBIDI_URL)
fribidi: fribidi-$(FRIBIDI_VERSION).tar.gz
$(EXTRACT_GZ)
patch -p0 < Patches/fribidi.patch
( cd $@; rm -f configure; ./bootstrap)
ifdef HAVE_MACOSX
.fribidi: fribidi .iconv-from-os
else
.fribidi: fribidi .iconv
endif
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) && make && make install)
$(INSTALL_NAME)
touch $@
CLEAN_FILE += .fribidi
CLEAN_PKG += fribidi
DISTCLEAN_PKG += fribidi-$(FRIBIDI_VERSION).tar.gz
# ***************************************************************************
# liba52
# ***************************************************************************
a52dec-$(A52DEC_VERSION).tar.gz:
$(WGET) $(A52DEC_URL)
a52dec: a52dec-$(A52DEC_VERSION).tar.gz
$(EXTRACT_GZ)
ifeq ($(ARCH),armel)
(cd $@ ; patch -p0 < ../Patches/liba52-fixed.diff)
endif
ifdef HAVE_WIN64
(cd $@ ; autoreconf -if)
endif
.a52: a52dec
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) && cd liba52 && make && make install && cd ../include && make && make install)
touch $@
CLEAN_FILE += .a52
CLEAN_PKG += a52dec
DISTCLEAN_PKG += a52dec-$(A52DEC_VERSION).tar.gz
# ***************************************************************************
# mpeg2dec
# ***************************************************************************
libmpeg2-$(LIBMPEG2_VERSION).tar.gz:
$(WGET) $(LIBMPEG2_URL)
libmpeg2: libmpeg2-$(LIBMPEG2_VERSION).tar.gz
$(EXTRACT_GZ)
patch -p0 < Patches/libmpeg2-arm-pld.patch
cd libmpeg2 && patch -p0 < ../Patches/libmpeg2-mc-neon.patch
cd libmpeg2 && ./bootstrap
.mpeg2: libmpeg2
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --without-x --disable-sdl && cd libmpeg2 && make && make install && cd ../include && make && make install)
touch $@
CLEAN_FILE += .mpeg2
CLEAN_PKG += libmpeg2
DISTCLEAN_PKG += libmpeg2-$(LIBMPEG2_VERSION).tar.gz
# ***************************************************************************
# lua
# ***************************************************************************
LUA_MAKEPLATEFORM-$(ENABLED)=generic
LUA_MAKEPLATEFORM-$(HAVE_BSD)=bsd
LUA_MAKEPLATEFORM-$(HAVE_LINUX)=linux
LUA_MAKEPLATEFORM-$(HAVE_MACOSX)=macosx
LUA_MAKEPLATEFORM-$(HAVE_WIN32)=mingw
lua-$(LUA_VERSION).tar.gz:
$(WGET) $(LUA_URL)
lua: lua-$(LUA_VERSION).tar.gz
$(EXTRACT_GZ)
ifdef HAVE_MACOSX
(cd $@; sed -e 's%gcc%$(CC)%' -e 's%LDFLAGS=%LDFLAGS=$(EXTRA_CFLAGS) $(EXTRA_LDFLAGS)%' -i.orig src/Makefile)
endif
.lua: lua
ifdef HAVE_WIN32
( cd $< && sed -i.orig 's/lua luac/lua.exe/' Makefile && cd src && sed -i.orig 's/CC=/#CC=/' Makefile && sed -i 's/=strip/=$(STRIP)/;s/= ranlib/= $(RANLIB)/' Makefile && cd ../..)
(cd $<&& $(HOSTCC) make $(LUA_MAKEPLATEFORM-1)&& cd src&& $(HOSTCC) make liblua.a&& cd ..&&$(HOSTCC) make install INSTALL_TOP=$(PREFIX)&& $(RANLIB) $(PREFIX)/lib/liblua.a)
(cd $<&& sed -i.orig 's@prefix= /usr/local@prefix= $(PREFIX)@' etc/lua.pc&& mkdir -p $(PREFIX)/lib/pkgconfig&& cp etc/lua.pc $(PREFIX)/lib/pkgconfig)
else
(cd $<&& patch -p1) < Patches/lua-noreadline.patch
(cd $<&& $(HOSTCC) make $(LUA_MAKEPLATEFORM-1) && make install INSTALL_TOP=$(PREFIX))
endif
touch $@
CLEAN_FILE += .lua
CLEAN_PKG += lua
DISTCLEAN_PKG += lua-$(LUA_VERSION).tar.gz
# ***************************************************************************
# libmad
# ***************************************************************************
libmad-$(LIBMAD_VERSION).tar.gz:
$(WGET) $(LIBMAD_URL)
libmad: libmad-$(LIBMAD_VERSION).tar.gz
$(EXTRACT_GZ)
ifdef HAVE_MACOSX
( cd $@; sed -e 's%-march=i486%$(EXTRA_CFLAGS) $(EXTRA_LDFLAGS)%' -e 's%-dynamiclib%-dynamiclib -arch $(ARCH)%' -i.orig configure )
endif
.mad: libmad
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) CFLAGS="-O3 $(NOTHUMB)" && make && make install)
$(INSTALL_NAME)
touch $@
CLEAN_FILE += .mad
CLEAN_PKG += libmad
DISTCLEAN_PKG += libmad-$(LIBMAD_VERSION).tar.gz
# ***************************************************************************
# ogg
# ***************************************************************************
libogg-$(OGG_VERSION).tar.gz:
$(WGET) $(OGG_URL)
libogg: libogg-$(OGG_VERSION).tar.gz
$(EXTRACT_GZ)
patch -p0 < Patches/libogg-1.1.patch
ifdef HAVE_WINCE
patch -p0 < Patches/libogg-wince.patch
endif
(cd $@; autoconf)
.ogg: libogg
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) && make install)
$(INSTALL_NAME)
touch $@
CLEAN_FILE += .ogg
CLEAN_PKG += libogg
DISTCLEAN_PKG += libogg-$(OGG_VERSION).tar.gz
# ***************************************************************************
# vorbis
# ***************************************************************************
libvorbis-$(VORBIS_VERSION).tar.gz:
$(WGET) $(VORBIS_URL)
libvorbis: libvorbis-$(VORBIS_VERSION).tar.gz
$(EXTRACT_GZ)
patch -p0 < Patches/vorbis-noapps.patch
.vorbis: libvorbis .ogg
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) && make && make install)
# $(INSTALL_NAME)
touch $@
.vorbisenc: .vorbis .ogg
# $(INSTALL_NAME)
touch $@
CLEAN_FILE += .vorbis .vorbisenc
CLEAN_PKG += libvorbis
DISTCLEAN_PKG += libvorbis-$(VORBIS_VERSION).tar.gz
# ***************************************************************************
# tremor
# ***************************************************************************
ifdef SVN
tremor:
$(SVN) co http://svn.xiph.org/trunk/Tremor tremor
(cd $@ && patch -p0 < ../Patches/tremor.patch)
(cd $@; rm -f ogg.h && echo "#include <ogg/ogg.h>" > ogg.h && rm -f os_types.h && echo "#include <ogg/os_types.h>" > os_types.h)
else
tremor-$(TREMOR_VERSION).tar.bz2:
echo "tremor snapshot does not exist, you MUST use subversion !"
exit -1
$(WGET) $(TREMOR_URL)
tremor: tremor-$(TREMOR_VERSION).tar.bz2
$(EXTRACT_BZ2)
endif
.tremor: tremor .ogg
(cd $<; $(HOSTCC) ./autogen.sh $(HOSTCONF) --prefix=$(PREFIX) --disable-shared CFLAGS="$(NOTHUMB)" && make && make install)
$(INSTALL_NAME)
touch $@
ifdef SVN
tremor-source: tremor
tar cv --exclude=.svn tremor | bzip2 > tremor-$(DATE).tar.bz2
SOURCE += tremor-source
endif
CLEAN_FILE += .tremor
CLEAN_PKG += tremor
#DISTCLEAN_PKG += tremor-$(TREMOR_VERSION).tar.bz2 #no tremor snapshot
# ***************************************************************************
# theora
# ***************************************************************************
libtheora-$(THEORA_VERSION).tar.bz2:
$(WGET) $(THEORA_URL)
libtheora: libtheora-$(THEORA_VERSION).tar.bz2
$(EXTRACT_BZ2)
patch -p0 < Patches/libtheora-includes.patch
ifdef HAVE_WIN64
(cd $@ ; autoreconf -if -I m4)
endif
THEORACONF = --disable-sdltest --disable-oggtest --disable-vorbistest --disable-examples
ifdef HAVE_MACOSX64
THEORACONF += --disable-asm
endif
ifdef HAVE_WIN64
THEORACONF += --disable-asm
endif
.theora: libtheora .ogg
ifdef HAVE_MACOSX
cd $<; ($(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) $(THEORACONF) && make && make install)
else
ifdef HAVE_WIN32
cd $<; $(HOSTCC) ./autogen.sh $(HOSTCONF) --prefix=$(PREFIX) $(THEORACONF)
endif
if test ! -f $</config.status; then \
cd $< ; \
$(HOSTCC) ./configure $(HOSTCONF) \
--prefix=$(PREFIX) $(THEORACONF) ; \
fi
cd $< && make && make install
endif
$(INSTALL_NAME)
touch $@
CLEAN_FILE += .theora
CLEAN_PKG += libtheora
DISTCLEAN_PKG += libtheora-$(THEORA_VERSION).tar.bz2
# ***************************************************************************
# shout
# ***************************************************************************
libshout-$(SHOUT_VERSION).tar.gz:
$(WGET) $(SHOUT_URL)
libshout: libshout-$(SHOUT_VERSION).tar.gz
$(EXTRACT_GZ)
ifdef HAVE_WIN32
patch -p0 < Patches/libshout-win32.patch
endif
.shout: libshout .theora .ogg .speex .vorbis
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) && make && make install )
$(INSTALL_NAME)
touch $@
CLEAN_FILE += .shout
CLEAN_PKG += libshout
DISTCLEAN_PKG += libshout-$(SHOUT_VERSION).tar.gz
# ***************************************************************************
# flac
# ***************************************************************************
flac-$(FLAC_VERSION).tar.gz:
$(WGET) $(FLAC_URL)
flac: flac-$(FLAC_VERSION).tar.gz
$(EXTRACT_GZ)
ifdef HAVE_WIN32
patch -p0 < Patches/flac-win32.patch
endif
ifdef HAVE_MACOSX
( cd $@; sed -e 's%-dynamiclib%-dynamiclib -arch $(ARCH)%' -i.orig configure )
endif
patch -p0 < Patches/libFLAC-pc.patch
FLAC_DISABLE_FLAGS = --disable-oggtest --disable-xmms-plugin --disable-cpplibs
ifdef HAVE_MACOSX_ON_INTEL
FLAC_DISABLE_FLAGS += --disable-asm-optimizations
endif
.flac: flac .ogg
cd $< && $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) $(FLAC_DISABLE_FLAGS)
cd $</src && make -C libFLAC && make -C libFLAC install
cd $< && make -C include install
$(INSTALL_NAME)
touch $@
CLEAN_FILE += .flac
CLEAN_PKG += flac
DISTCLEAN_PKG += flac-$(FLAC_VERSION).tar.gz
# ***************************************************************************
# speex
# ***************************************************************************
speex-$(SPEEX_VERSION).tar.gz:
$(WGET) $(SPEEX_URL)
speex: speex-$(SPEEX_VERSION).tar.gz
$(EXTRACT_GZ)
patch -p0 < Patches/speex.patch
.speex: speex
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --enable-ogg=no && make && make install)
$(INSTALL_NAME)
touch $@
CLEAN_FILE += .speex
CLEAN_PKG += speex
DISTCLEAN_PKG += speex-$(SPEEX_VERSION).tar.gz
# ***************************************************************************
# faad2
# ***************************************************************************
faad2-$(FAAD2_VERSION).tar.gz:
$(WGET) $(FAAD2_URL)
faad2: faad2-$(FAAD2_VERSION).tar.gz
$(EXTRACT_GZ)
(cd $@; echo|$(CC) -iquote . -E - || sed -i 's/-iquote /-I/' libfaad/Makefile.am; autoreconf -ivf)
patch -p0 < Patches/faad-arm-fixed.patch
.faad: faad2
(cd $< && $(HOSTCC) ./configure $(HOSTCONF) --disable-shared --prefix=$(PREFIX) CFLAGS="-O3 $(NOTHUMB)" && sed -i.orig "s/shrext_cmds/shrext/g" libtool && make -C libfaad && make -C libfaad install)
touch $@
CLEAN_FILE += .faad
CLEAN_PKG += faad2
DISTCLEAN_PKG += faad2-$(FAAD2_VERSION).tar.gz
# ***************************************************************************
# libebml
# ***************************************************************************
libebml-$(LIBEBML_VERSION).tar.bz2:
$(WGET) $(LIBEBML_URL)
libebml: libebml-$(LIBEBML_VERSION).tar.bz2
$(EXTRACT_BZ2)
.ebml: libebml
ifdef HAVE_WIN32
(cd $<; make -C make/mingw32 prefix=$(PREFIX) $(HOSTCC) SHARED=no && make -C make/linux install_staticlib install_headers prefix=$(PREFIX) $(HOSTCC))
else
(cd $<; make -C make/linux prefix=$(PREFIX) $(HOSTCC) staticlib && make -C make/linux install_staticlib install_headers prefix=$(PREFIX))
$(RANLIB) $(PREFIX)/lib/libebml.a
endif
touch $@
CLEAN_FILE += .ebml
CLEAN_PKG += libebml
DISTCLEAN_PKG += libebml-$(LIBEBML_VERSION).tar.bz2
# ***************************************************************************
# libmatroska
# ***************************************************************************
libmatroska-$(LIBMATROSKA_VERSION).tar.bz2:
$(WGET) $(LIBMATROSKA_URL)
libmatroska: libmatroska-$(LIBMATROSKA_VERSION).tar.bz2
$(EXTRACT_BZ2)
.matroska: libmatroska .ebml
ifdef HAVE_WIN32
(cd $<; make -C make/mingw32 prefix=$(PREFIX) $(HOSTCC) SHARED=no EBML_DLL=no libmatroska.a && make -C make/linux install_staticlib install_headers prefix=$(PREFIX) $(HOSTCC))
else
(cd $<; make -C make/linux prefix=$(PREFIX) $(HOSTCC) staticlib && make -C make/linux install_staticlib install_headers prefix=$(PREFIX))
$(RANLIB) $(PREFIX)/lib/libmatroska.a
endif
touch $@
CLEAN_FILE += .matroska
CLEAN_PKG += libmatroska
DISTCLEAN_PKG += libmatroska-$(LIBMATROSKA_VERSION).tar.bz2
# ***************************************************************************
# libvp8
# ***************************************************************************
libvpx-$(VPX_VERSION).tar.bz2:
$(WGET) $(VPX_URL)
libvpx: libvpx-$(VPX_VERSION).tar.bz2
$(EXTRACT_BZ2)
ifdef HAVE_WIN32
CROSS=$(HOST)-
endif
VPX_TARGET-$(ENABLED) = --target=FIXME
VPX_TARGET-$(HAVE_LINUX) =
VPX_TARGET-$(HAVE_WIN32) = --target=x86-win32-gcc
VPX_TARGET-$(HAVE_DARWIN_OS) = --target=ppc32-darwin9-gcc
VPX_TARGET-$(HAVE_MACOSX_ON_INTEL) = --target=x86-darwin10-gcc
VPX_TARGET-$(HAVE_MACOSX64) = --target=x86_64-darwin10-gcc
VPX_DEPS-$(ENABLED) =
VPX_DEPS-$(HAVE_MACOSX_ON_INTEL) += .yasm
.libvpx: libvpx $(VPX_DEPS-1)
(cd $<; CROSS=$(CROSS) ./configure $(VPX_TARGET-1) --disable-install-bins --disable-install-srcs --disable-install-libs --disable-install-docs --disable-examples --disable-vp8-decoder && make && make install)
(rm -rf $(PREFIX)/include/vpx/ && mkdir -p $(PREFIX)/include/vpx/; cd $< && cp vpx/*.h vpx_ports/*.h $(PREFIX)/include/vpx/) # Of course, why the hell would one expect it to be listed or in make install?
rm $(PREFIX)/include/vpx/config.h
(cd $<; $(RANLIB) libvpx.a && mkdir -p $(PREFIX)/lib && cp libvpx.a $(PREFIX)/lib/) # Of course, why the hell would one expect it to be listed or in make install?
touch $@
CLEAN_FILE += .libvpx
CLEAN_PKG += libvpx
DISTCLEAN_PKG += libvpx-$(VPX_VERSION).tar.bz2
# ***************************************************************************
# lame
# ***************************************************************************
lame-$(LAME_VERSION).tar.gz:
$(WGET) $(LAME_URL)
lame: lame-$(LAME_VERSION).tar.gz
$(EXTRACT_GZ)
ifdef HAVE_WIN64
patch -p0 < Patches/lame-win64.patch
endif
.lame: lame
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-analyser-hooks --disable-decoder --disable-shared --disable-gtktest --disable-frontend && make && make install)
touch $@
CLEAN_FILE += .lame
CLEAN_PKG += lame
DISTCLEAN_PKG += lame-$(LAME_VERSION).tar.gz
# ***************************************************************************
# libamrnb
# ***************************************************************************
amrnb-$(LIBAMR_NB_VERSION).tar.bz2:
$(WGET) $(LIBAMR_NB)
libamrnb: amrnb-$(LIBAMR_NB_VERSION).tar.bz2
$(EXTRACT_BZ2)
.libamrnb: libamrnb
(cd $<; $(HOSTCC) ./configure --prefix=$(PREFIX) --enable-shared && make && make install)
touch $@
CLEAN_FILE += .libamrnb
CLEAN_PKG += libamrnb
DISTCLEAN_PKG += amrnb-$(LIBAMR_NB_VERSION).tar.bz2
# ***************************************************************************
# libamrwb
# ***************************************************************************
amrwb-$(LIBAMR_WB_VERSION).tar.bz2:
$(WGET) $(LIBAMR_WB)
libamrwb: amrwb-$(LIBAMR_WB_VERSION).tar.bz2
$(EXTRACT_BZ2)
.libamrwb: libamrwb
(cd $<; $(HOSTCC) ./configure --prefix=$(PREFIX) --enable-shared && make && make install)
touch $@
CLEAN_FILE += .libamrwb
CLEAN_PKG += libamrwb
DISTCLEAN_PKG += amrwb-$(LIBAMR_WB_VERSION).tar.bz2
# ***************************************************************************
# ffmpeg
# ***************************************************************************
#Common configuration
FFMPEGCONF = --disable-doc \
--disable-decoder=libvpx \
--disable-debug \
--enable-gpl \
--enable-postproc \
--disable-ffprobe \
--disable-ffserver \
--disable-ffmpeg \
--disable-ffplay \
--disable-avconv \
--disable-devices \
--disable-protocols \
--disable-avfilter \
--disable-network
FFMPEGCONFSMALL = --disable-encoders --disable-muxers
FFMPEGCONFNEON = --cpu=cortex-a8 --disable-runtime-cpudetect --enable-neon
#Cross-Compilation
ifdef HAVE_CROSS_COMPILE
FFMPEGCONF += --enable-cross-compile
endif
ifdef HAVE_CROSS_COMPILE_NEEDS_CROSS_PREFIX
ifndef HAVE_MACOSX
ifndef HAVE_ANDROID
ifndef HAVE_SYMBIAN
FFMPEGCONF += --cross-prefix=$(HOST)-
else
FFMPEGCONF += --cross-prefix=arm-none-symbianelf- --arch=armv6 --disable-asm --target-os=none
FFMPEGCONF += $(FFMPEGCONFSMALL)
endif
else
FFMPEGCONF += --cross-prefix=arm-linux-androideabi- --arch=armv6
FFMPEGCONF += $(FFMPEGCONFSMALL)
endif
endif
endif
ifdef CC
FFMPEGCONF += --cc="$(CC)"
endif
#
# Special target-dependant options
#
ifndef HAVE_UCLIBC
ifndef HAVE_WINCE
ifndef HAVE_IOS
ifndef HAVE_ANDROID
FFMPEGCONF+= --enable-libmp3lame --enable-libgsm
endif
endif
endif
endif
# MacOS X
ifdef HAVE_MACOSX_ON_INTEL
FFMPEGCONF += --enable-memalign-hack
endif
ifdef HAVE_DARWIN_OS
FFMPEGCONF += --arch=$(ARCH) --target-os=darwin
endif
ifdef HAVE_MACOSX32
FFMPEGCONF += --enable-libvpx
FFMPEGCONF += --cc=clang
endif
ifdef HAVE_MACOSX64
FFMPEGCONF += --enable-libvpx
FFMPEGCONF += --cc=clang
FFMPEGCONF += --cpu=core2
endif
ifdef HAVE_MACOSX_ON_INTEL
FFMPEG_CFLAGS += -DHAVE_LRINTF
endif
ifdef HAVE_IOS
FFMPEGCONF += --sysroot=${IOS_SDK_ROOT}
ifeq ($(ARCH),arm)
FFMPEGCONF += $(FFMPEGCONFNEON)
else
FFMPEGCONF += --disable-mmx
endif
endif #IOS
# Linux
ifdef HAVE_LINUX
FFMPEGCONF += --target-os=linux --enable-pic
endif
ifdef HAVE_ANDROID
ifdef HAVE_NEON
FFMPEGCONF += $(FFMPEGCONFNEON)
FFMPEG_CFLAGS +=-mfloat-abi=softfp -mfpu=neon
endif
endif
ifdef HAVE_UCLIBC
ifdef HAVE_BIGENDIAN
FFMPEGCONF+= --arch=armeb --enable-armv5te --enable-iwmmxt
else
FFMPEGCONF+= --arch=armv4l
endif
FFMPEGCONF+= --enable-small --disable-mpegaudio-hp
FFMPEG_CFLAGS += -DHAVE_LRINTF --std=c99
endif
# Win32
ifdef HAVE_WIN32
FFMPEGCONF+= --target-os=mingw32 --arch=x86 --enable-memalign-hack
FFMPEGCONF += --disable-bzlib --disable-decoder=dca --disable-encoder=vorbis \
--enable-libmp3lame --enable-w32threads --disable-bsfs --enable-dxva2
ifdef HAVE_WIN64
FFMPEGCONF+= --cpu=athlon64 --arch=x86_64
else # !WIN64
FFMPEGCONF+= --cpu=i686 --enable-libvpx
endif
endif
# WinCE
ifdef HAVE_WINCE
FFMPEGCONF+= --target-os=mingw32ce --arch=armv4l --cpu=armv4t \
--disable-decoder=snow --disable-decoder=vc9 \
--disable-decoder=wmv3 --disable-decoder=vorbis \
--disable-decoder=dvdsub --disable-decoder=dvbsub
FFMPEGCONF += $(FFMPEGCONFSMALL)
endif
ifndef HAVE_WIN32
FFMPEGCONF += --enable-pthreads
FFMPEG_CFLAGS += --std=gnu99
endif
ifdef GIT
ffmpeg:
$(GIT) clone $(FFMPEG_GIT)
ifdef HAVE_UCLIBC
patch -p0 < Patches/ffmpeg-svn-uclibc.patch
patch -p0 < Patches/ffmpeg-svn-internal-define.patch
patch -p0 < Patches/ffmpeg-svn-libavformat.patch
endif
ifdef HAVE_WIN32
sed -i "s/std=c99/std=gnu99/" ffmpeg/configure
endif
touch $@
else
ffmpeg:
echo "ffmpeg snapshot is too old, you MUST use git !"
exit 1
endif
ifeq ($(ARCH),armel)
HAVE_ARMELF=1
endif
FFMPEG_DEPS-$(ENABLED) = .lame .gsm .libvpx .zlib
FFMPEG_DEPS-$(HAVE_WINCE) = .zlib
FFMPEG_DEPS-$(HAVE_UCLIBC) =
FFMPEG_DEPS-$(HAVE_IOS) =
FFMPEG_DEPS-$(HAVE_WIN64) = .lame .gsm .zlib
FFMPEG_DEPS-$(HAVE_ARMELF) = .lame .gsm .zlib
FFMPEG_DEPS-$(HAVE_MACOSX) += .yasm
FFMPEG_DEPS-$(HAVE_WIN32) += .dshow_headers
FFMPEG_DEPS-$(HAVE_ANDROID) =
FFMPEG_DEPS-$(HAVE_SYMBIAN) =
.ffmpeg: ffmpeg $(FFMPEG_DEPS-1)
(cd ffmpeg; $(HOSTCC) ./configure --prefix=$(PREFIX) --extra-cflags="$(FFMPEG_CFLAGS) -DHAVE_STDINT_H" --extra-ldflags="$(LDFLAGS)" $(FFMPEGCONF) --disable-shared --enable-static && make && make install-libs install-headers)
touch $@
ifdef GIT
ffmpeg-source: ffmpeg
tar cv --exclude=.git ffmpeg | bzip2 > ffmpeg-$(DATE).tar.bz2
SOURCE += ffmpeg-source
endif
CLEAN_FILE += .ffmpeg
CLEAN_PKG += ffmpeg
# ***************************************************************************
# libdvdcss
# ***************************************************************************
libdvdcss-$(LIBDVDCSS_VERSION).tar.bz2:
$(WGET) $(LIBDVDCSS_URL)
# ifdef SVN
# libdvdcss:
# $(SVN) co svn://svn.videolan.org/libdvdcss/trunk libdvdcss
# cd $@ && sh bootstrap
# else
libdvdcss: libdvdcss-$(LIBDVDCSS_VERSION).tar.bz2
$(EXTRACT_BZ2)
# endif
.dvdcss: libdvdcss
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --disable-doc --prefix=$(PREFIX) && make && make install)
$(INSTALL_NAME)
touch $@
# ifdef SVN
# libdvdcss-source: libdvdcss
# tar cv --exclude=.svn libdvdcss | bzip2 > libdvdcss-$(DATE).tar.bz2
#
# SOURCE += libdvdcss-source
# endif
CLEAN_FILE += .dvdcss
CLEAN_PKG += libdvdcss
DISTCLEAN_PKG += libdvdcss-$(LIBDVDCSS_VERSION).tar.bz2
# ***************************************************************************
# libdvdread: We use dvdnav's dvdread
# ***************************************************************************
libdvdread-$(LIBDVDREAD_VERSION).tar.bz2:
$(WGET) $(LIBDVDREAD_URL)
libdvdread: libdvdread-$(LIBDVDREAD_VERSION).tar.bz2
$(EXTRACT_BZ2)
(cd $@; patch -p 0 < ../Patches/libdvdread-dvdcss-static.patch)
ifdef HAVE_WIN32
(cd $@; patch -p 0 < ../Patches/libdvdread-win32.patch)
endif
(cd $@; sh autogen.sh noconfig)
.libdvdread: libdvdread .dvdcss
(cd libdvdread; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --with-libdvdcss=$(PREFIX) && make && make install)
$(INSTALL_NAME)
touch $@
CLEAN_FILE += .libdvdread
CLEAN_PKG += libdvdread
DISTCLEAN_PKG += libdvdread-$(LIBDVDREAD_VERSION).tar.bz2
# ***************************************************************************
# libdvdnav
# ***************************************************************************
libdvdnav-$(LIBDVDNAV_VERSION).tar.bz2:
$(WGET) $(LIBDVDNAV_URL)
libdvdnav: libdvdnav-$(LIBDVDNAV_VERSION).tar.bz2
$(EXTRACT_BZ2)
patch -p0 < Patches/libdvdnav.patch
(cd $@; ./autogen.sh noconfig)
.dvdnav: libdvdnav .libdvdread
ifdef HAVE_WIN32
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --enable-static --prefix=$(PREFIX) && make && make install)
else
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --enable-static --prefix=$(PREFIX) CFLAGS="$(CFLAGS)" && make && make install)
endif
$(INSTALL_NAME)
touch $@
CLEAN_FILE += .dvdnav
CLEAN_PKG += libdvdnav
DISTCLEAN_PKG += libdvdnav-$(LIBDVDNAV_VERSION).tar.bz2
# ***************************************************************************
# libbluray
# ***************************************************************************
libbluray:
$(GIT) clone git://git.videolan.org/libbluray.git
.libbluray: libbluray
(cd $<; ./bootstrap; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) && make && make install)
$(INSTALL_NAME)
touch $@
CLEAN_FILE += .libbluray
CLEAN_PKG += libbluray
# ***************************************************************************
# libdvbpsi
# ***************************************************************************
libdvbpsi-$(LIBDVBPSI_VERSION).tar.gz:
$(WGET) $(LIBDVBPSI_URL)
libdvbpsi: libdvbpsi-$(LIBDVBPSI_VERSION).tar.gz
$(EXTRACT_GZ)
patch -p0 < Patches/libdvbpsi_example.patch
.dvbpsi: libdvbpsi
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --enable-release && cd src && make && make install)
touch $@
CLEAN_FILE += .dvbpsi
CLEAN_PKG += libdvbpsi
DISTCLEAN_PKG += libdvbpsi-$(LIBDVBPSI_VERSION).tar.gz
# ***************************************************************************
# live
# ***************************************************************************
live555-$(LIVEDOTCOM_VERSION).tar.gz:
$(WGET) $(LIVEDOTCOM_URL)
live: live555-$(LIVEDOTCOM_VERSION).tar.gz
$(EXTRACT_GZ)
chmod -R u+w live
patch -p0 < Patches/live-uselocale.patch
patch -p0 < Patches/live-inet_ntop.patch
ifdef HAVE_WIN64
patch -p0 < Patches/live-win64.patch
endif
ifndef HAVE_WIN32
ifndef HAVE_WINCE
patch -p0 < Patches/live-getaddrinfo.patch
endif
endif
LIVE_TARGET-$(ENABLED) = linux
LIVE_TARGET-$(HAVE_WIN32) = mingw
LIVE_TARGET-$(HAVE_WINCE) = mingw
LIVE_TARGET-$(HAVE_DARWIN_OS) = macosx
ifeq ($(ARCH),armel)
LIVE_TARGET-$(ENABLED) = armlinux
endif
ifdef HAVE_BIGENDIAN
LIVE_TARGET-$(HAVE_UCLIBC) = armeb-uclib
endif
LIVE_PATCH-$(ENABLED) =
LIVE_PATCH-$(HAVE_WINCE) = sed -e 's/-lws2_32/-lws2/g' -i.orig config.mingw
LIVE_PATCH-$(HAVE_DARWIN_OS) = sed -e 's%-DBSD=1%-DBSD=1\ $(EXTRA_CFLAGS)\ $(EXTRA_LDFLAGS)%' -e 's%cc%$(CC)%' -e 's%c++%$(CXX)\ $(EXTRA_LDFLAGS)%' -i.orig config.macosx
LIVE_PATCH-$(HAVE_LINUX) = sed -e 's/=/= EXTRA_CPPFLAGS/' -e 's%EXTRA_CPPFLAGS%-I/include%' -i.orig groupsock/Makefile.head
ifndef HAVE_UCLIBC
ifneq ($(ARCH),armel)
LIVE_PATCH-$(HAVE_LINUX) += ; sed -e 's%-D_FILE_OFFSET_BITS=64%-D_FILE_OFFSET_BITS=64\ -fPIC\ -DPIC%' -i.orig config.linux
endif
endif
.live: live
(cd $<; $(LIVE_PATCH-1) )
(cd $<; ./genMakefiles $(LIVE_TARGET-1) && make $(HOSTCC))
mkdir -p $(PREFIX)/lib $(PREFIX)/include
cp $</groupsock/libgroupsock.a $(PREFIX)/lib
cp $</liveMedia/libliveMedia.a $(PREFIX)/lib
cp $</UsageEnvironment/libUsageEnvironment.a $(PREFIX)/lib
cp $</BasicUsageEnvironment/libBasicUsageEnvironment.a $(PREFIX)/lib
cp $</groupsock/include/*.hh $</groupsock/include/*.h $(PREFIX)/include
cp $</liveMedia/include/*.hh $(PREFIX)/include
cp $</UsageEnvironment/include/*.hh $(PREFIX)/include
cp $</BasicUsageEnvironment/include/*.hh $(PREFIX)/include
touch $@
CLEAN_FILE += .live
CLEAN_PKG += live
DISTCLEAN_PKG += live555-$(LIVEDOTCOM_VERSION).tar.gz
# ***************************************************************************
# goom2k4
# ***************************************************************************
goom$(GOOM2k4_VERSION).tar.gz:
$(WGET) $(GOOM2k4_URL)
mv goom-$(GOOM2k4_VERSION)-src.tar.gz goom$(GOOM2k4_VERSION).tar.gz
goom: goom$(GOOM2k4_VERSION).tar.gz
$(EXTRACT_GZ)
ifdef HAVE_WIN32
(cd $@; fromdos configure.in)
patch -p0 < Patches/goom2k4-0-win32.patch
else
patch -p0 < Patches/goom2k4-0-mmx.patch
endif
patch -p0 < Patches/goom2k4-0-memleaks.patch
patch -p0 < Patches/goom2k4-autotools.patch
ifdef HAVE_MACOSX
patch -p0 < Patches/goom2k4-osx.patch
endif
patch -p0 < Patches/goom2k4-noxmmx.patch
patch -p0 < Patches/goom2k4-xmmslibdir.patch
(cd $@; rm -f configure; autoreconf -ivf)
.goom2k4: goom
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-shared --enable-static --disable-glibtest --disable-gtktest && make && make install)
touch $@
CLEAN_FILE += .goom2k4
CLEAN_PKG += goom
DISTCLEAN_PKG += goom$(GOOM2k4_VERSION).tar.gz
# ***************************************************************************
# libcaca
# ***************************************************************************
libcaca-$(LIBCACA_VERSION).tar.gz:
$(WGET) $(LIBCACA_URL)
libcaca: libcaca-$(LIBCACA_VERSION).tar.gz
$(EXTRACT_GZ)
ifdef HAVE_MACOSX
patch -p0 < Patches/libcaca-osx-sdkofourchoice.patch
(cd $@; sed -e 's%/Developer/SDKs/MacOSX10.4u.sdk%$(MACOSX_SDK)%' -i.orig configure)
endif
ifdef HAVE_WIN32
patch -p0 < Patches/libcaca-win32-static.patch
endif
.caca: libcaca
ifdef HAVE_MACOSX
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-imlib2 --disable-doc --disable-ruby --disable-csharp --disable-cxx --disable-x11 && cd caca && make && make install)
else
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-imlib2 --disable-doc --disable-ruby --disable-csharp --disable-cxx && cd caca && make && make install)
endif
touch $@
CLEAN_FILE += .caca
CLEAN_PKG += libcaca
DISTCLEAN_PKG += libcaca-$(LIBCACA_VERSION).tar.gz
# ***************************************************************************
# libdca
# ***************************************************************************
libdca-$(LIBDCA_VERSION).tar.bz2:
$(WGET) $(LIBDCA_URL)
libdca: libdca-$(LIBDCA_VERSION).tar.bz2
$(EXTRACT_BZ2)
ifdef HAVE_MACOSX_DARWIN_9
( cd $@; patch -p0 < ../Patches/libdca-llvm-gcc.patch )
endif
.dca: libdca
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) && make && make install)
$(INSTALL_NAME)
touch $@
CLEAN_FILE += .dca
CLEAN_PKG += libdca
DISTCLEAN_PKG += libdca-$(LIBDCA_VERSION).tar.bz2
# ***************************************************************************
# libx264
# ***************************************************************************
ifdef HAVE_MACOSX
X264CONF =--host=$(HOST)
X264CONF += --enable-pic
ifdef HAVE_MACOSX64
X264CONF +=--host=x86_64-apple-darwin10
endif
endif
ifdef HAVE_CROSS_COMPILE_NEEDS_CROSS_PREFIX
X264CONF=--host=$(HOST)
endif
ifdef HAVE_LINUX
X264CONF += --enable-pic
endif
X264CONF += --disable-avs --disable-lavf --disable-ffms --enable-static --disable-cli
x264-$(X264_VERSION).tar.gz:
$(WGET) $(X264_URL)
ifdef GIT
x264:
$(GIT) clone git://git.videolan.org/x264.git
else
x264:
echo "x264 snapshot is too old, you MUST use Git !"
exit -1
endif
ifdef HAVE_WIN32
.x264: x264
(cd $<; $(HOSTCC) ./configure $(X264CONF) --prefix="$(PREFIX)" --enable-win32thread && make && make install)
else
ifdef HAVE_MACOSX_ON_INTEL
.x264: x264 .yasm
(cd $<; $(HOSTCC) ./configure $(X264CONF) --prefix="$(PREFIX)" && make && make install)
else
.x264: x264
(cd $<; $(HOSTCC) ./configure $(X264CONF) --prefix="$(PREFIX)" && make && make install)
endif
endif
touch $@
ifdef GIT
x264-source: x264
cd x264 && \
git archive --format=tar HEAD | bzip2 > ../x264-$(DATE).tar.bz2
SOURCE += x264-source
endif
CLEAN_FILE += .x264
CLEAN_PKG += x264
DISTCLEAN_PKG += x264-$(X264_VERSION).tar.gz
# ***************************************************************************
# libmodplug
# ***************************************************************************
libmodplug-$(MODPLUG_VERSION).tar.gz:
$(WGET) $(MODPLUG_URL)
libmodplug: libmodplug-$(MODPLUG_VERSION).tar.gz
$(EXTRACT_GZ)
.mod: libmodplug
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-shared --enable-static && make && make install)
touch $@
CLEAN_FILE += .mod
CLEAN_PKG += libmodplug
DISTCLEAN_PKG += libmodplug-$(MODPLUG_VERSION).tar.gz
# ***************************************************************************
# libcddb
# ***************************************************************************
libcddb-$(CDDB_VERSION).tar.bz2:
$(WGET) $(CDDB_URL)
libcddb: libcddb-$(CDDB_VERSION).tar.bz2
$(EXTRACT_BZ2)
ifneq ($(HOST),$(BUILD))
(cd $@; patch -p0 < ../Patches/libcddb-cross.patch )
(cd $@; autoreconf -fisv)
endif
ifdef HAVE_WIN32
(cd $@; patch -p0 < ../Patches/libcddb-win32.patch )
endif
ifdef HAVE_DARWIN_OS
(cd $@; patch -p0 < ../Patches/libcddb-darwin.patch )
endif
patch -p0 < Patches/libcddb-getenv-crash.patch
ifdef HAVE_WIN32
.cddb: libcddb .regex
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-shared --enable-static --without-iconv CFLAGS="$(CFLAGS) -D_BSD_SOCKLEN_T_=int" && make && make install)
else
ifdef HAVE_DARWIN_OS
.cddb: libcddb
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-shared --enable-static --without-iconv CFLAGS="$(CFLAGS) -D_BSD_SOCKLEN_T_=int" LDFLAGS="$(LDFLAGS)" && make && make install)
else
.cddb: libcddb
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-shared --enable-static CFLAGS="$(CFLAGS) -D_BSD_SOCKLEN_T_=int" LDFLAGS="$(LDFLAGS) -liconv" && make && make install)
endif
endif
touch $@
CLEAN_FILE += .cddb
CLEAN_PKG += libcddb
DISTCLEAN_PKG += libcddb-$(CDDB_VERSION).tar.bz2
# ***************************************************************************
# vcdimager
# ***************************************************************************
vcdimager-$(VCDIMAGER_VERSION).tar.gz:
$(WGET) $(VCDIMAGER_URL)
vcdimager: vcdimager-$(VCDIMAGER_VERSION).tar.gz
$(EXTRACT_GZ)
.vcdimager: vcdimager .cdio
ifdef HAVE_MACOSX
(cd $<; ./configure --prefix=$(PREFIX) --disable-shared --enable-static LDFLAGS="$(LDFLAGS) -framework CoreFoundation -framework IOKit" && make && make install)
else
(cd $<; ./configure --prefix=$(PREFIX) --disable-shared --enable-static && make && make install)
endif
touch $@
CLEAN_FILE += .vcdimager
CLEAN_PKG += vcdimager
DISTCLEAN_PKG += vcdimager-$(VCDIMAGER_VERSION).tar.gz
# ***************************************************************************
# libcdio
# ***************************************************************************
libcdio-$(CDIO_VERSION).tar.gz:
$(WGET) $(CDIO_URL)
libcdio: libcdio-$(CDIO_VERSION).tar.gz
$(EXTRACT_GZ)
patch -p0 < Patches/libcdio-install-cdparanoia-pc.patch
ifdef HAVE_MACOSX
patch -p0 < Patches/libcdio-modernOSX.patch
endif
.cdio: libcdio
ifdef HAVE_DARWIN_OS
(cd $<; ./configure --prefix=$(PREFIX) --without-vcdinfo --disable-shared && make && make install && sed -e 's%/usr/lib/libiconv.la%%' -i.orig $(PREFIX)/lib/libcdio.la && sed -e 's%/usr/lib/libiconv.la%%' -i.orig $(PREFIX)/lib/libiso9660.la)
else
(cd $<; sed -e 's%@ENABLE_CPP_TRUE@SUBDIRS = C++%@ENABLE_CPP_TRUE@SUBDIRS = %' -i.orig example/Makefile.in && autoreconf -fisv && ./configure --prefix=$(PREFIX) --without-vcdinfo --disable-shared && make && make install)
endif
touch $@
CLEAN_FILE += .cdio
CLEAN_PKG += libcdio
DISTCLEAN_PKG += libcdio-$(CDIO_VERSION).tar.gz
# ***************************************************************************
# qt4 (win32 binary)
# ***************************************************************************
qt4-$(QT4_VERSION)-win32-bin.tar.bz2:
$(WGET) $(QT4_URL)
qt4_win32: qt4-$(QT4_VERSION)-win32-bin.tar.bz2
$(EXTRACT_BZ2)
chmod -R 755 qt4_win32
.qt4_win32: qt4_win32
(cd qt4_win32;mkdir -p $(PREFIX)/bin; mkdir -p $(PREFIX)/include;mkdir -p $(PREFIX)/lib/pkgconfig;rm -f $(PREFIX)/lib/pkgconfig/Qt*; sed 's,@@PREFIX@@,$(PREFIX),' lib/pkgconfig/QtCore.pc.in > $(PREFIX)/lib/pkgconfig/QtCore.pc;sed 's,@@PREFIX@@,$(PREFIX),' lib/pkgconfig/QtGui.pc.in > $(PREFIX)/lib/pkgconfig/QtGui.pc;cp -r include/* $(PREFIX)/include;cp lib/*a $(PREFIX)/lib)
ifeq ($(BUILD),i686-pc-cygwin)
(cd qt4_win32;cp bin/*.exe $(PREFIX)/bin)
else
(cd qt4_win32;cp bin/* $(PREFIX)/bin)
endif
touch $@
CLEAN_FILE += .qt4_win32
CLEAN_PKG += qt4_win32
DISTCLEAN_PKG += qt4-$(QT4_VERSION)-win32-bin.tar.bz2
# ***************************************************************************
# qt4 (Mac)
# ***************************************************************************
qt-mac-opensource-$(QT4_MAC_VERSION).dmg:
$(WGET) $(QT4_MAC_URL)
qt4_mac: qt-mac-opensource-$(QT4_MAC_VERSION).dmg
.qt4_mac: qt4_mac
cp Patches/QtCoreMac.pc.in $(PREFIX)/lib/pkgconfig/QtCore.pc
cp Patches/QtGuiMac.pc.in $(PREFIX)/lib/pkgconfig/QtGui.pc
touch $@
CLEAN_FILE += .qt4_mac
CLEAN_PKG += qt4_mac
DISTCLEAN_PKG += qt-mac-opensource-$(QT4_MAC_VERSION).dmg
# ***************************************************************************
# zlib
# ***************************************************************************
zlib-$(ZLIB_VERSION).tar.gz:
$(WGET) $(ZLIB_URL)
zlib: zlib-$(ZLIB_VERSION).tar.gz
$(EXTRACT_GZ)
patch -p0 < Patches/zlib-wince.patch
patch -p0 < Patches/zlib-static.patch
.zlib: zlib
(cd zlib; $(HOSTCC) ./configure --prefix=$(PREFIX) --static && make install)
$(INSTALL_NAME)
touch $@
CLEAN_FILE += .zlib
CLEAN_PKG += zlib
DISTCLEAN_PKG += zlib-$(ZLIB_VERSION).tar.gz
# ***************************************************************************
# PortAudio
# ***************************************************************************
pa_stable_v$(PORTAUDIO_VERSION).tgz:
$(WGET) $(PORTAUDIO_URL)
portaudio: pa_stable_v$(PORTAUDIO_VERSION).tgz
$(EXTRACT_GZ)
ifneq ($(HOST),$(BUILD))
(patch -p0 < Patches/portaudio-cross.patch;cd $@; autoconf)
endif
.portaudio: portaudio
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) && make && make install)
$(INSTALL_NAME)
touch $@
CLEAN_FILE += .portaudio
CLEAN_PKG += portaudio
DISTCLEAN_PKG += pa_stable_v$(PORTAUDIO_VERSION).tgz
# ***************************************************************************
# xml
# ***************************************************************************
libxml2-$(XML_VERSION).tar.gz:
$(WGET) $(XML_URL)
xml: libxml2-$(XML_VERSION).tar.gz
$(EXTRACT_GZ)
ifdef HAVE_UCLIBC
patch -p0 < Patches/xml2-uclibc.patch
endif
XMLCONF = --with-minimal --with-catalog --with-reader --with-tree --with-push --with-xptr --with-valid --with-xpath --with-xinclude --with-sax1 --without-zlib --without-iconv --without-http --without-ftp --without-debug --without-docbook --without-regexps --without-python
.xml: xml
ifdef HAVE_CYGWIN
(cd xml; ac_cv_header_pthread_h="no" CFLAGS="-DLIBXML_STATIC" $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) $(XMLCONF) && make && make install)
else
(cd xml; CFLAGS="-DLIBXML_STATIC" $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) $(XMLCONF) && make && make install)
endif
ifndef HAVE_MACOSX
$(INSTALL_NAME)
endif
touch $@
CLEAN_FILE += .xml
CLEAN_PKG += xml
DISTCLEAN_PKG += libxml2-$(XML_VERSION).tar.gz
# ***************************************************************************
# twolame
# ***************************************************************************
twolame-$(TWOLAME_VERSION).tar.gz:
$(WGET) $(TWOLAME_URL)
twolame: twolame-$(TWOLAME_VERSION).tar.gz
$(EXTRACT_GZ)
ifdef HAVE_WIN32
(cd twolame/win32; $(WGET) "http://twolame.svn.sourceforge.net/viewvc/*checkout*/twolame/trunk/win32/winutil.h")
endif
.twolame: twolame
(cd twolame; $(HOSTCC) CFLAGS="${CFLAGS} -DLIBTWOLAME_STATIC" ./configure $(HOSTCONF) --prefix=$(PREFIX) && cd libtwolame && make && make install && cd .. && make install-data)
$(INSTALL_NAME)
touch $@
CLEAN_FILE += .twolame
CLEAN_PKG += twolame
DISTCLEAN_PKG += twolame-$(TWOLAME_VERSION).tar.gz
# ***************************************************************************
# libpng
# ***************************************************************************
libpng-$(PNG_VERSION).tar.bz2:
$(WGET) $(PNG_URL)
libpng: libpng-$(PNG_VERSION).tar.bz2
$(EXTRACT_BZ2)
ifdef HAVE_WIN32
(cd $@; cat ../Patches/libpng-win32.patch | sed s,??PREFIX??,$(PREFIX), | patch -p0)
else
(cat Patches/libpng-osx.patch | sed -e 's%??PREFIX??%$(PREFIX)%' -e 's%??EXTRA_CFLAGS??%$(EXTRA_CFLAGS)%' -e 's%??EXTRA_LDFLAGS??%$(EXTRA_LDFLAGS)%' | patch -p0)
endif
(patch -p0 < Patches/libpng-makefile.patch)
.png: libpng .zlib
ifdef HAVE_MACOSX
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) && make && make install)
else
ifdef HAVE_WIN32
(cd $<; rm -f INSTALL; cp scripts/makefile.cygwin Makefile && make $(HOSTCC) && make install-static)
else
ifeq ($(PNG_VERSION),1.2.8)
(cd $<; PREFIX=$(PREFIX) DESTDIR=$(PREFIX) cp scripts/makefile.linux Makefile && make && make install)
else
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) && make && make install)
endif
endif
endif
$(INSTALL_NAME)
touch $@
CLEAN_FILE += .png
CLEAN_PKG += libpng
DISTCLEAN_PKG += libpng-$(PNG_VERSION).tar.bz2
# ***************************************************************************
# libzvbi
# ***************************************************************************
zvbi-$(ZVBI_VERSION).tar.bz2:
$(WGET) $(ZVBI_URL)
zvbi: zvbi-$(ZVBI_VERSION).tar.bz2
$(EXTRACT_BZ2)
ifdef HAVE_WIN32
(cd $@; patch -p1 < ../Patches/zvbi-win32.patch; patch -p1 < ../Patches/zvbi-makefile.patch; autoreconf -ivf)
endif
ifdef HAVE_WIN32
.zvbi: zvbi .pthreads
else
.zvbi: zvbi
endif
ifdef HAVE_MACOSX
(cd $<; ./configure $(HOSTCONF) --prefix=$(PREFIX) CFLAGS="$(CFLAGS) -fnested-functions" && make && make install)
else
ifdef HAVE_WIN32
(cd $<; ./configure $(HOSTCONF) --prefix=$(PREFIX) CFLAGS="$(CFLAGS) -DPTW32_STATIC_LIB --std=gnu99" && make && make install)
else
(cd $<; ./configure $(HOSTCONF) --prefix=$(PREFIX) CFLAGS="$(CFLAGS)" && make -C src && make -C src install)
endif
endif
$(INSTALL_NAME)
touch $@
CLEAN_FILE += .zvbi
CLEAN_PKG += zvbi
DISTCLEAN_PKG += zvbi-$(ZVBI_VERSION).tar.bz2
# ***************************************************************************
# libraw1394
# ***************************************************************************
libraw1394-$(LIBRAW1394_VERSION).tar.gz:
$(WGET) $(LIBRAW1394_URL)
libraw1394: libraw1394-$(LIBRAW1394_VERSION).tar.gz
$(EXTRACT_GZ)
.raw1394: libraw1394
(cd $<; ./configure --prefix=$(PREFIX) && make && make install)
# sed 's/^typedef u_int8_t byte_t;/\/* typedef u_int8_t byte_t;\*\//'
touch $@
CLEAN_FILE += .raw1394
CLEAN_PKG += libraw1394
DISTCLEAN_PKG += libraw1394-$(LIBRAW1394_VERSION).tar.gz
# ***************************************************************************
# libdc1394
# ***************************************************************************
libdc1394-$(LIBDC1394_VERSION).tar.gz:
$(WGET) $(LIBDC1394_URL)
libdc1394: libdc1394-$(LIBDC1394_VERSION).tar.gz
$(EXTRACT_GZ)
.dc1394: libdc1394
(cd $<; ./configure --prefix=$(PREFIX) && \
patch -p1 < ../Patches/libdc1394-noexamples.patch && \
make && make DESTDIR=$(PREFIX) install)
touch $@
CLEAN_FILE += .dc1394
CLEAN_PKG += libdc1394
DISTCLEAN_PKG += libdc1394-$(LIBDC1394_VERSION).tar.gz
# ***************************************************************************
# gpg-error
# ***************************************************************************
libgpg-error-$(GPGERROR_VERSION).tar.bz2:
$(WGET) $(GPGERROR_URL)
libgpg-error: libgpg-error-$(GPGERROR_VERSION).tar.bz2
$(EXTRACT_BZ2)
ifdef HAVE_WIN32
patch -p 0 < Patches/libgpg-error-win32.patch
(cd $@; autoreconf -ivf)
endif
.gpg-error: libgpg-error
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-nls --disable-shared --disable-languages && make && make install)
# $(INSTALL_NAME)
touch $@
CLEAN_FILE += .gpg-error
CLEAN_PKG += libgpg-error
DISTCLEAN_PKG += libgpg-error-$(GPGERROR_VERSION).tar.bz2
# ***************************************************************************
# libgcrypt
# ***************************************************************************
libgcrypt-$(GCRYPT_VERSION).tar.bz2:
$(WGET) $(GCRYPT_URL)
libgcrypt: libgcrypt-$(GCRYPT_VERSION).tar.bz2
$(EXTRACT_BZ2)
patch -p0 < Patches/gcrypt.patch
CIPHDIG= --enable-ciphers=aes,des,rfc2268,arcfour --enable-digests=sha1,md5,rmd160 --enable-publickey-digests=dsa
ifdef HAVE_WIN64
ac_cv_sys_symbol_underscore=no
endif
.gcrypt: libgcrypt .gpg-error
ifdef HAVE_WIN32
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --target=i586-mingw32msvc --prefix=$(PREFIX) CFLAGS="$(CFLAGS)" $(CIPHDIG) --disable-shared --enable-static --disable-nls ac_cv_sys_symbol_underscore=$(ac_cv_sys_symbol_underscore) && make && make install)
else
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS) -lgpg-error" $(CIPHDIG) && make && make install)
endif
$(INSTALL_NAME)
touch $@
CLEAN_FILE += .gcrypt
CLEAN_PKG += libgcrypt
DISTCLEAN_PKG += libgcrypt-$(GCRYPT_VERSION).tar.bz2
# ***************************************************************************
# opencdk (requires by gnutls 2.x)
# ***************************************************************************
opencdk-$(OPENCDK_VERSION).tar.bz2:
$(WGET) $(OPENCDK_URL)
opencdk: opencdk-$(OPENCDK_VERSION).tar.bz2
$(EXTRACT_BZ2)
.opencdk: opencdk
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) CFLAGS="$(CFLAGS)" $(HOSTCC) && make && make install)
touch $@
CLEAN_FILE += .opencdk
CLEAN_PKG += opencdk
DISTCLEAN_PKG += opencdk-$(OPENCDK_VERSION).tar.bz2
# ***************************************************************************
# gnutls
# ***************************************************************************
gnutls-$(GNUTLS_VERSION).tar.bz2:
$(WGET) $(GNUTLS_URL)
gnutls: gnutls-$(GNUTLS_VERSION).tar.bz2
$(EXTRACT_BZ2)
ifdef HAVE_WIN32
patch -p0 < Patches/gnutls-win32.patch
(cd $@; autoreconf)
endif
.gnutls: gnutls .gcrypt .gpg-error
ifdef HAVE_WIN32
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) CFLAGS="$(CFLAGS)" --with-libgcrypt --target=i586-mingw32msvc --disable-cxx -disable-shared --enable-static --disable-nls --with-included-opencdk --with-included-libtasn1 && cd gl && make && cd ../lib && make && make install )
else
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) CFLAGS="$(CFLAGS)" --with-libgcrypt --disable-cxx --with-included-opencdk --disable-guile && make && make install)
endif
$(INSTALL_NAME)
touch $@
CLEAN_FILE += .gnutls
CLEAN_PKG += gnutls
DISTCLEAN_PKG += gnutls-$(GNUTLS_VERSION).tar.bz2
# ***************************************************************************
# libopendaap
# ***************************************************************************
libopendaap-$(DAAP_VERSION).tar.bz2:
$(WGET) $(DAAP_URL)
libopendaap: libopendaap-$(DAAP_VERSION).tar.bz2
$(EXTRACT_BZ2)
patch -p0 < Patches/daap.patch
.opendaap: libopendaap
(cd $<; ./configure --prefix=$(PREFIX) CFLAGS="$(CFLAGS) -D_BSD_SOCKLEN_T_=int" && make install)
$(INSTALL_NAME)
touch $@
CLEAN_FILE += .opendaap
CLEAN_PKG += libopendaap
DISTCLEAN_PKG += libopendaap-$(DAAP_VERSION).tar.bz2
# ***************************************************************************
# Gecko SDK
# ***************************************************************************
gecko-sdk:
$(SVN) co $(NPAPI_HEADERS_SVN_URL) -r $(NPAPI_HEADERS_SVN_REVISION) gecko-sdk/include
.gecko: gecko-sdk
rm -rf $(PREFIX)/gecko-sdk
mv gecko-sdk $(PREFIX)
mkdir gecko-sdk #creating an empty dir is faster than copying the whole dir
(cd $<)
touch $@
CLEAN_FILE += .gecko
CLEAN_PKG += gecko-sdk
DISTCLEAN_PKG += gecko-sdk
# ***************************************************************************
# libjpeg
# ***************************************************************************
jpegsrc.v$(JPEG_VERSION).tar.gz:
$(WGET) $(JPEG_URL)
jpeg-$(JPEG_VERSION): jpegsrc.v$(JPEG_VERSION).tar.gz
$(EXTRACT_GZ)
.jpeg: jpeg-$(JPEG_VERSION)
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) CFLAGS="$(CFLAGS)" $(HOSTCC) && make && make install)
$(RANLIB) $(PREFIX)/lib/libjpeg.a
touch $@
CLEAN_FILE += .jpeg
CLEAN_PKG += jpeg-$(JPEG_VERSION)
DISTCLEAN_PKG += jpegsrc.v$(JPEG_VERSION).tar.gz
# ***************************************************************************
# tiff
# ***************************************************************************
tiff-$(TIFF_VERSION).tar.gz:
$(WGET) $(TIFF_URL)
tiff: tiff-$(TIFF_VERSION).tar.gz
$(EXTRACT_GZ)
.tiff: tiff
ifdef HAVE_WIN32
(cd $<; ./configure --target=i586-mingw32msvc --with-CFLAGS="$(CFLAGS)" --with-JPEG=no --with-ZIP=no --prefix=$(PREFIX) --host=$(HOST) &&make -C port && make -C libtiff && make -C libtiff install)
else
(cd $<; ./configure --with-CFLAGS="$(CFLAGS)" --with-JPEG=no --with-ZIP=no --prefix=$(PREFIX) && make -C port &&make -C libtiff && make -C libtiff install)
endif
$(INSTALL_NAME)
touch $@
CLEAN_FILE += .tiff
CLEAN_PKG += tiff
DISTCLEAN_PKG += tiff-$(TIFF_VERSION).tar.gz
# ***************************************************************************
# LibSDL
# ***************************************************************************
ifndef HAVE_MACOSX
SDL-$(SDL_VERSION).tar.gz:
$(WGET) $(SDL_URL)
SDL: SDL-$(SDL_VERSION).tar.gz
$(EXTRACT_GZ)
else
SDL:
$(SVN) co http://svn.libsdl.org/trunk/SDL -r 4444 SDL
(cd $@; sh autogen.sh)
endif
.SDL: SDL
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-video-x11 --disable-video-aalib --disable-video-dga --disable-video-fbcon --disable-video-directfb --disable-video-ggi --disable-video-svga --disable-directx --disable-joystick --disable-cdrom --disable-threads --disable-sdl-dlopen CFLAGS="$(CFLAGS)" && make && make install)
$(INSTALL_NAME)
touch $@
CLEAN_FILE += .SDL
CLEAN_PKG += SDL
DISTCLEAN_PKG += SDL-$(SDL_VERSION).tar.gz
# ***************************************************************************
# SDL_image
# ***************************************************************************
SDL_image-$(SDL_IMAGE_VERSION).tar.gz:
$(WGET) $(SDL_IMAGE_URL)
SDL_image: SDL_image-$(SDL_IMAGE_VERSION).tar.gz
$(EXTRACT_GZ)
patch -p0 < Patches/SDL_image.patch
.SDL_image: SDL_image .SDL .png .jpeg .tiff
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) CFLAGS="$(CFLAGS)" --enable-tif --disable-sdltest && make && make install)
$(INSTALL_NAME)
touch $@
CLEAN_FILE += .SDL_image
CLEAN_PKG += SDL_image
DISTCLEAN_PKG += SDL_image-$(SDL_IMAGE_VERSION).tar.gz
# ***************************************************************************
# Musepack decoder library (libmpcdec)
# ***************************************************************************
mpcdec:
$(SVN) co $(MUSE_SVN) -r 468 mpcdec
(cd $@; patch -p0 < ../Patches/libmpc-simple.patch)
ifdef HAVE_MACOSX
(cd $@; sed -e 's%-O3 -Wall%-O3 -Wall $(CFLAGS)%' -i.orig CMakeLists.txt)
endif
.mpcdec: mpcdec
(cd $<; cmake . -DCMAKE_TOOLCHAIN_FILE=../../toolchain.cmake -DCMAKE_INSTALL_PREFIX=$(PREFIX) && make install)
ifdef HAVE_WIN32
(cd $<; mkdir -p $(PREFIX)/lib && cp libmpcdec/libmpcdec_static.a $(PREFIX)/lib/libmpcdec.a)
endif
ifdef HAVE_MACOSX
(cd $<; mkdir -p $(PREFIX)/lib && cp libmpcdec/libmpcdec.dylib $(PREFIX)/lib/libmpcdec.dylib)
(install_name_tool -id $(PREFIX)/lib/libmpcdec.dylib $(PREFIX)/lib/libmpcdec.dylib)
endif
touch $@
CLEAN_FILE += .mpcdec
CLEAN_PKG += mpcdec
DISTCLEAN_PKG += libmpcdec-$(MUSE_VERSION).tar.bz2
# ***************************************************************************
# Dirac
# ***************************************************************************
dirac-$(DIRAC_VERSION).tar.gz:
$(WGET) $(DIRAC_URL)
dirac: dirac-$(DIRAC_VERSION).tar.gz
$(EXTRACT_GZ)
ifdef HAVE_CYGWIN
# incorrect compile warning with cygwin compiler 3.4.4
patch -p0 < Patches/dirac-cygwin.patch
endif
patch -p0 < Patches/dirac-noutils.patch
patch -p0 < Patches/dirac-autotools.patch
(cd $@; autoreconf -ivf)
DIRAC_SUBDIRS = libdirac_byteio libdirac_common libdirac_motionest libdirac_encoder libdirac_decoder
ifdef HAVE_WIN32
DIRAC_SUBDIRS += win32
endif
.dirac: dirac
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) CFLAGS="$(CFLAGS)" && DOC_DIR="" make $(DIRAC_SUBDIRS) && DOC_DIR="" make install)
touch $@
# for MacOS X, dirac is split into two libraries, which needs be installed using two targets
.dirac_encoder: .dirac
$(INSTALL_NAME)
touch $@
.dirac_decoder: .dirac
$(INSTALL_NAME)
touch $@
CLEAN_FILE += .dirac
CLEAN_PKG += dirac
DISTCLEAN_PKG += dirac-$(DIRAC_VERSION).tar.gz
# *************************************************************************
# DirectX headers
# *************************************************************************
directx-oss.tar.bz2:
$(WGET) $(DX_HEADERS_URL)
.dx_headers: directx-oss.tar.bz2
mkdir -p $(PREFIX)/include
tar xjf $< -C $(PREFIX)/include
touch $@
CLEAN_FILE += .dx_headers
DISTCLEAN_PKG += directx-oss.tar.bz2
# *************************************************************************
# DirectShow headers
# *************************************************************************
dshow-headers-oss.tar.bz2:
$(WGET) $(DSHOW_HEADERS_URL)
dxva2api.h:
$(WGET) $(DXVA2_URL)
CLEAN_FILE += dxva2api.h
d2d_headers.tar.gz:
$(WGET) $(D2D_URL) -O $@
.dshow_headers: dshow-headers-oss.tar.bz2 dxva2api.h d2d_headers.tar.gz
mkdir -p $(PREFIX)/include
tar xjf $< -C $(PREFIX)/include --wildcards --no-anchored '*.h' --strip-components=1
tar xzf d2d_headers.tar.gz -C $(PREFIX)/include --wildcards --no-anchored '*.h' --strip-components=1
cp dxva2api.h $(PREFIX)/include
touch $@
CLEAN_FILE += .dshow_headers
DISTCLEAN_PKG += dshow-headers-oss.tar.bz2 dxva2api.h
# ***************************************************************************
# libexpat
# ***************************************************************************
expat-$(EXPAT_VERSION).tar.gz:
$(WGET) $(EXPAT_URL)
expat: expat-$(EXPAT_VERSION).tar.gz
$(EXTRACT_GZ)
.expat: expat
(cd $<; ./configure --prefix=$(PREFIX) && make && make install)
touch $@
CLEAN_FILE += .expat
CLEAN_PKG += expat
DISTCLEAN_PKG += expat-$(EXPAT_VERSION).tar.gz
# ***************************************************************************
# YASM assembler
# ***************************************************************************
yasm-$(YASM_VERSION).tar.gz:
$(WGET) $(YASM_URL)
yasm: yasm-$(YASM_VERSION).tar.gz
$(EXTRACT_GZ)
.yasm: yasm
(cd $< && $(HOSTCC) ./configure --prefix=$(PREFIX) --host=$(HOST) && make && make install)
touch $@
CLEAN_FILE += .yasm
CLEAN_PKG += yasm
DISTCLEAN_PKG += yasm-$(YASM_VERSION).tar.gz
# ***************************************************************************
# kate
# ***************************************************************************
libkate-$(KATE_VERSION).tar.gz:
$(WGET) $(KATE_URL)
libkate: libkate-$(KATE_VERSION).tar.gz
$(EXTRACT_GZ)
.kate: libkate .ogg
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-valgrind --disable-doc && make && make install)
$(INSTALL_NAME)
touch $@
CLEAN_FILE += .kate
CLEAN_PKG += libkate
DISTCLEAN_PKG += libkate-$(KATE_VERSION).tar.gz
# ***************************************************************************
# tiger
# ***************************************************************************
libtiger-$(TIGER_VERSION).tar.gz:
$(WGET) $(TIGER_URL)
libtiger: libtiger-$(TIGER_VERSION).tar.gz
$(EXTRACT_GZ)
.tiger: libtiger .kate
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-valgrind --disable-doc && make && make install)
$(INSTALL_NAME)
touch $@
CLEAN_FILE += .tiger
CLEAN_PKG += libtiger
DISTCLEAN_PKG += libtiger-$(TIGER_VERSION).tar.gz
# ***************************************************************************
# TagLib read and editing of tags of popular audio formats
# ***************************************************************************
taglib-$(TAGLIB_VERSION).tar.gz:
$(WGET) $(TAGLIB_URL)
taglib: taglib-$(TAGLIB_VERSION).tar.gz
$(EXTRACT_GZ)
ifdef HAVE_ANDROID
patch -p0 < Patches/taglib-android.patch
endif
ifdef HAVE_WIN32
patch -p0 < Patches/taglib-static.patch
endif
ifdef HAVE_CYGWIN
patch -p0 < Patches/taglib-cygwin.patch
endif
ifdef HAVE_WIN64
TAGLIB_CMAKE_OPTS=-DCMAKE_SYSTEM_NAME=Generic
else
TAGLIB_CMAKE_OPTS=
endif
.tag: taglib
(cd $<; $(HOSTCC) CPPFLAGS="$(CPPFLAGS)" cmake . -DCMAKE_TOOLCHAIN_FILE=../../toolchain.cmake -DCMAKE_INSTALL_PREFIX=$(PREFIX) -DENABLE_STATIC:BOOL=ON -DWITH_ASF:BOOL=ON -DWITH_MP4:BOOL=ON $(TAGLIB_CMAKE_OPTS) && make && make install)
$(INSTALL_NAME)
touch $@
CLEAN_FILE += .tag
CLEAN_PKG += taglib
DISTCLEAN_PKG += taglib-$(TAGLIB_VERSION).tar.gz
# ***************************************************************************
# pthreads for win32
# ***************************************************************************
ifdef HAVE_CROSS_COMPILE_NEEDS_CROSS_PREFIX
PTHREADSCONF=CROSS="$(HOST)-"
endif
pthreads-w32-$(PTHREADS_VERSION)-release.tar.gz:
$(WGET) $(PTHREADS_URL)
pthreads: pthreads-w32-$(PTHREADS_VERSION)-release.tar.gz
$(EXTRACT_GZ)
(cd $@; patch -p0 < ../Patches/pthreads-detach.patch)
sed -i 's/^CROSS.*=/CROSS ?=/' $@/GNUmakefile
ifdef HAVE_WIN64
(patch -p0 < Patches/pthreads-win64.patch)
endif
.pthreads: pthreads
(cd $<; $(HOSTCC) $(PTHREADSCONF) make MAKEFLAGS=-j1 GC GC-static && mkdir -p $(PREFIX)/include && cp -v pthread.h sched.h semaphore.h $(PREFIX)/include/ && sed -i 's/#if HAVE_CONFIG_H/#if 0 \&\& HAVE_CONFIG_H/' $(PREFIX)/include/pthread.h && mkdir -p $(PREFIX)/lib && cp -v *.a *.dll $(PREFIX)/lib/)
$(INSTALL_NAME)
touch $@
CLEAN_FILE += .pthreads
CLEAN_PKG += pthreads
DISTCLEAN_PKG += pthreads-w32-$(PTHREADS_VERSION)-release.tar.gz
# ***************************************************************************
# ncurses library (with wide chars support)
# ***************************************************************************
ncurses-$(NCURSES_VERSION).tar.gz:
$(WGET) $(NCURSES_URL)
ncurses: ncurses-$(NCURSES_VERSION).tar.gz
$(EXTRACT_GZ)
.ncurses: ncurses
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=/usr --without-debug --enable-widec --without-develop --without-shared && make -C ncurses && make -C include && make -C ncurses DESTDIR=$(PREFIX) install && make -C include DESTDIR=$(PREFIX) install)
(cp -R $(PREFIX)/usr/* $(PREFIX) && rm -rf $(PREFIX)/usr)
touch $@
CLEAN_FILE += .ncurses
CLEAN_PKG += ncurses
DISTCLEAN_PKG += ncurses-$(NCURSES_VERSION).tar.gz
# ***************************************************************************
# FluidSynth library (Midi)
# ***************************************************************************
fluidsynth-$(FLUID_VERSION).tar.gz:
$(WGET) $(FLUID_URL)
fluidsynth: fluidsynth-$(FLUID_VERSION).tar.gz
$(EXTRACT_GZ)
ifdef HAVE_WIN32
patch -p0 < Patches/fluid-win32.patch
cd $@; ./autogen.sh || true
endif
.fluid: fluidsynth
cd $< && $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) \
--disable-ladspa \
--disable-oss-support \
--disable-alsa-support \
--disable-pulse-support \
--disable-midishare \
--disable-jack-support \
--disable-coreaudio \
--disable-lash \
--disable-ladcca \
--disable-portaudio-support \
--without-readline
cd $< && make
cd $< && make install
touch $@
CLEAN_FILE += .fluid
CLEAN_PKG += fluidsynth
DISTCLEAN_PKG += fluidsynth-$(FLUID_VERSION).tar.gz
# ***************************************************************************
# liboil
# ***************************************************************************
orc-$(ORC_VERSION).tar.gz:
$(WGET) $(ORC_URL)
orc: orc-$(ORC_VERSION).tar.gz
$(EXTRACT_GZ)
patch -p0 < Patches/orc-stdint.patch
.orc: orc
ifdef HAVE_MACOSX
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) CFLAGS="$(CFLAGS)")
else
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX))
endif
(cd $<; make && make install)
touch $@
CLEAN_FILE += .orc
CLEAN_PKG += orc
DISTCLEAN_PKG += orc-$(ORC_VERSION).tar.gz
# ***************************************************************************
# Schroedinger library
# ***************************************************************************
schroedinger-$(SCHROED_VERSION).tar.gz:
$(WGET) $(SCHROED_URL)
schroedinger: schroedinger-$(SCHROED_VERSION).tar.gz
$(EXTRACT_GZ)
patch -p0 < Patches/schroedinger-notests.patch
(cd $@; autoreconf -iv)
.schroedinger: schroedinger .orc
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --with-thread=none --disable-gtk-doc --prefix=$(PREFIX) CFLAGS="$(CFLAGS) -O3" && make && make install)
touch $@
CLEAN_FILE += .schroedinger
CLEAN_PKG += schroedinger
DISTCLEAN_PKG += schroedinger-$(SCHROED_VERSION).tar.gz
# ***************************************************************************
# libass
# ***************************************************************************
libass-$(ASS_VERSION).tar.gz:
$(WGET) $(ASS_URL)
libass: libass-$(ASS_VERSION).tar.gz
$(EXTRACT_GZ)
(cd $@; autoreconf -ivf)
.libass: libass .freetype .fontconfig .fribidi
(cd $<; $(HOSTCC) ./configure --disable-shared $(HOSTCONF) --prefix=$(PREFIX) CFLAGS="$(CFLAGS) -O3" && make && make install)
touch $@
CLEAN_FILE += .libass
CLEAN_PKG += libass
DISTCLEAN_PKG += libass-$(ASS_VERSION).tar.gz
# ***************************************************************************
# Sparkle
# ***************************************************************************
Sparkle-$(SPARKLE_VERSION).zip:
$(WGET) $(SPARKLE_URL)
.Sparkle: Sparkle-$(SPARKLE_VERSION).zip
rm -rf $@ || true
unzip $<
rm -rf $(PREFIX)/Sparkle
mv Sparkle $(PREFIX)
touch $@
CLEAN_FILE += .Sparkle
CLEAN_PKG += Sparkle
DISTCLEAN_PKG += Sparkle-$(SPARKLE_VERSION).zip
# ***************************************************************************
# BGHUDAppKit
# ***************************************************************************
BGHUDAppKit-$(BGHUDAPPKIT_VERSION).zip:
$(WGET) $(BGHUDAPPKIT_URL)
.BGHUDAppKit: BGHUDAppKit-$(BGHUDAPPKIT_VERSION).zip
rm -rf $@ || true
(mkdir BGHUDAppKit && cd BGHUDAppKit && unzip ../$<)
rm -rf $(PREFIX)/BGHUDAppKit
mv BGHUDAppKit $(PREFIX)
touch $@
CLEAN_FILE += .BGHUDAppKit
CLEAN_PKG += BGHUDAppKit
DISTCLEAN_PKG += BGHUDAppKit-$(BGHUDAPPKIT_VERSION).zip
# ***************************************************************************
# Growl
# ***************************************************************************
Growl-$(GROWL_VERSION).zip:
$(WGET) $(GROWL_URL)
.Growl: Growl-$(GROWL_VERSION).zip
rm -rf $@ || true
(mkdir Growl && cd Growl && unzip ../$<)
rm -rf $(PREFIX)/Growl
mv Growl $(PREFIX)
touch $@
CLEAN_FILE += .Growl
CLEAN_PKG += Growl
DISTCLEAN_PKG += Growl-$(GROWL_VERSION).zip
# ***************************************************************************
# UPNP library
# ***************************************************************************
libupnp-$(UPNP_VERSION).tar.bz2:
$(WGET) $(UPNP_URL)
libupnp: libupnp-$(UPNP_VERSION).tar.bz2
$(EXTRACT_BZ2)
ifdef HAVE_WIN32
patch -p0 < Patches/libupnp-configure.patch
patch -p0 < Patches/libupnp-win32.patch
patch -p0 < Patches/libupnp-win64.patch
endif
cd $@; libtoolize && autoreconf
ifdef HAVE_WIN32
LIBUPNP_ECFLAGS=-DPTW32_STATIC_LIB
endif
ifdef HAVE_WIN32
.libupnp: libupnp .pthreads
else
.libupnp: libupnp
endif
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-samples --without-documentation --enable-static --disable-webserver CFLAGS="$(CFLAGS) -O3 -DUPNP_STATIC_LIB $(LIBUPNP_ECFLAGS)" && make && make install)
touch $@
CLEAN_FILE += .libupnp
CLEAN_PKG += libupnp
DISTCLEAN_PKG += libupnp-$(UPNP_VERSION).tar.bz2
# ***************************************************************************
# GSM
# ***************************************************************************
gsm-$(GSM_VERSION).tar.gz:
$(WGET) $(GSM_URL)
gsm: gsm-$(GSM_VERSION).tar.gz
rm -rf $@ || true
gunzip -c $< | tar xf - --exclude='[*?:<>\|]'
mv gsm-1.0-* gsm || true
ifneq ($(HOST),$(BUILD))
(patch -p0 < Patches/gsm-cross.patch)
endif
ifdef HAVE_MACOSX
(cd $@; sed -e 's%-O2%-O2\ $(EXTRA_CFLAGS)\ $(EXTRA_LDFLAGS)%' -e 's%# LDFLAGS =%LDFLAGS = $(EXTRA_LDFLAGS)%' -e 's%gcc%$(CC)%' -i.orig Makefile)
endif
(cd $@; sed -i -e 's%-O2%-O2 -fPIC%' Makefile)
.gsm: gsm
(cd $<; $(HOSTCC) make && mkdir -p $(PREFIX)/include/gsm && cp inc/gsm.h $(PREFIX)/include/gsm && cp lib/libgsm.a $(PREFIX)/lib)
touch $@
CLEAN_FILE += .gsm
CLEAN_PKG += gsm
DISTCLEAN_PKG += gsm-$(GSM_VERSION).tar.gz
# ***************************************************************************
### GLEW
# ***************************************************************************
glew-$(GLEW_VERSION)-src.tgz:
$(WGET) $(GLEW_URL)
glew: glew-$(GLEW_VERSION)-src.tgz
$(EXTRACT_GZ)
(patch -p0 < Patches/glew-win32.patch)
.glew: glew
(cd $<; $(HOSTCC) CFLAGS="$(CFLAGS) -DGLEW_STATIC" make && $(HOSTCC) GLEW_DEST=$(PREFIX) make install)
ifdef HAVE_WIN32
rm -rf $(PREFIX)/lib/libglew32.dll*
endif
touch $@
CLEAN_FILE += .glew
CLEAN_PKG += glew
DISTCLEAN_PKG += glew-$(GLEW_VERSION)-src.tgz
# ***************************************************************************
# projectM
# ***************************************************************************
projectM-$(LIBPROJECTM_VERSION)-Source.tar.gz:
$(WGET) $(LIBPROJECTM_URL)
libprojectM: projectM-$(LIBPROJECTM_VERSION)-Source.tar.gz
rm -rf $@ || true
gunzip -c $< | tar xf - --exclude='[*?:<>\|]'
mv projectM-$(LIBPROJECTM_VERSION)-Source $@ || true
patch -p0 < Patches/libprojectM-win32.patch
-cd $@; rm CMakeCache.txt
.libprojectM: libprojectM .glew
(cd $<; $(HOSTCC) CPPFLAGS="$(CPPFLAGS)" cmake . -DCMAKE_TOOLCHAIN_FILE=../../toolchain.cmake -DINCLUDE-PROJECTM-LIBVISUAL:BOOL=OFF -DDISABLE_NATIVE_PRESETS:BOOL=ON -DUSE_FTGL:BOOL=OFF -DINCLUDE-PROJECTM-PULSEAUDIO:BOOL=OFF -DINCLUDE-PROJECTM-QT:BOOL=OFF -DBUILD_PROJECTM_STATIC:BOOL=ON -DCMAKE_INSTALL_PREFIX=$(PREFIX) && make install)
ifdef HAVE_WIN32
(cd $<;cp Renderer/libRenderer.a MilkdropPresetFactory/libMilkdropPresetFactory.a $(PREFIX)/lib)
endif
touch $@
CLEAN_FILE += .libprojectM
CLEAN_PKG += libprojectM
DISTCLEAN_PKG += libprojectM-$(LIBPROJECTM_VERSION)-Source.tar.gz
# ***************************************************************************
# X11 C Bindings
# ***************************************************************************
libxcb-$(XCB_VERSION).tar.bz2:
$(WGET) $(XCB_URL)/$@
libxcb: libxcb-$(XCB_VERSION).tar.bz2
-rm -rf $@
bzcat $< | tar xf -
mv libxcb-$(XCB_VERSION) $@
touch $@
.xcb: libxcb
cd $< && $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) \
--disable-shared \
--disable-composite \
--disable-damage \
--disable-dpms \
--disable-glx \
--enable-randr \
--disable-record \
--enable-render \
--disable-resource \
--disable-screensaver \
--disable-shape \
--enable-shm \
--disable-sync \
--disable-xevie \
--disable-xfixes \
--disable-xfree86-dri \
--disable-xinerama \
--disable-xinput \
--disable-xprint \
--disable-selinux \
--disable-xtest \
--enable-xv \
--disable-xvmc \
--disable-build-docs
cd $< && make
cd $< && sed -i -e s,^Requires.private:,Requires:,g xcb.pc
cd $< && make install
touch $@
xcb-util-$(XCB_UTIL_VERSION).tar.bz2:
$(WGET) $(XCB_UTIL_URL)/$@
xcb-util: xcb-util-$(XCB_UTIL_VERSION).tar.bz2
-rm -rf $@
bzcat $< | tar xf -
mv xcb-util-$(XCB_UTIL_VERSION) $@
touch $@
.xcb-util: xcb-util .xcb
cd $< && $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX)
cd $< && make install
touch $@
CLEAN_FILE += .xcb-util .xcb
CLEAN_PKG += xcb-util xcb
DISTCLEAN_PKG += xcb-util-$(XCB_UTIL_VERSION).tar.bz2 libxcb-$(XCB_VERSION).tar.bz2
# ***************************************************************************
# Peflags utility (Windows only)
# ***************************************************************************
peflags/peflags.c:
mkdir -p peflags
cd peflags && $(WGET) $(PEFLAGS_URL)/peflags.c
.peflags: peflags/peflags.c
cd peflags && gcc peflags.c -o peflags
install -d $(PREFIX)/bin
cd peflags && install ./peflags $(PREFIX)/bin
touch $@
CLEAN_PKG += peflags
CLEAN_FILE += .peflags
# ***************************************************************************
# Regex
# ***************************************************************************
regex-$(REGEX_VERSION).tar.gz:
$(WGET) $(REGEX_URL)
regex: regex-$(REGEX_VERSION).tar.gz
$(EXTRACT_GZ)
.regex: regex
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) && make subirs= && $(AR) ru libregex.a regex.o && $(RANLIB) libregex.a && cp -v regex.h $(PREFIX)/include && cp -v libregex.a $(PREFIX)/lib )
touch $@
CLEAN_FILE += .regex
CLEAN_PKG += regex
DISTCLEAN_PKG += regex-$(REGEX_VERSION).tar.gz
# ***************************************************************************
# SQLite
# ***************************************************************************
sqlite-amalgamation-$(SQLITE_VERSION).tar.gz:
$(WGET) $(SQLITE_URL)
sqlite-$(SQLITE_VERSION): sqlite-amalgamation-$(SQLITE_VERSION).tar.gz
$(EXTRACT_GZ)
.sqlite3: sqlite-$(SQLITE_VERSION)
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) && make && make install )
touch $@
CLEAN_FILE += .sqlite3
CLEAN_PKG += sqlite-$(SQLITE_VERSION)
DISTCLEAN_PKG += sqlite-amalgamation-$(SQLITE_VERSION).tar.gz
# *****************************
# GME
# *****************************
game-music-emu-$(GME_VERSION).tbz2:
$(WGET) $(GME_URL)
game-music-emu-$(GME_VERSION): game-music-emu-$(GME_VERSION).tbz2
$(EXTRACT_BZ2)
patch -p0 < Patches/gme-static.patch
.gme: game-music-emu-$(GME_VERSION)
(cd $<; $(HOSTCC) CPPFLAGS="$(CPPFLAGS)" cmake . -DCMAKE_TOOLCHAIN_FILE=../../toolchain.cmake -DCMAKE_INSTALL_PREFIX=$(PREFIX) && make && make install )
touch $@
CLEAN_FILE += .gme
CLEAN_PKG += game-music-emu-$(GME_VERSION)
DISTCLEAN_PKG += game-music-emu-$(GME_VERSION).tbz2
# ********************************
# SidPlay2
# ********************************
sidplay-libs-2.1.1.tar.gz:
$(WGET) $(SID_URL)
sidplay-2.1.1: sidplay-libs-2.1.1.tar.gz
$(EXTRACT_GZ)
(cd $@; patch -p1 < ../Patches/sidplay2-openmode.patch)
(cd $@; patch -p1 < ../Patches/sidplay2-endian.patch)
(cd $@; patch -p1 < ../Patches/sidplay2-smartprt.patch)
(cd $@; patch -p1 < ../Patches/sidplay2-noutils.patch)
(cd $@; patch -p1 < ../Patches/sidplay2-string.patch)
(cd $@; autoreconf -ivf)
.sidplay: sidplay-2.1.1
(cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) && make && make install)
(cp -f $(PREFIX)/lib/sidplay/builders/* $(PREFIX)/lib/)
touch $@
CLEAN_FILE += .sidplay
CLEAN_PKG += sidplay-2.1.1
DISTCLEAN_PKG += sidplay-libs-2.1.1.tar.gz
###################################
tools: $(TOOLS)
# ***************************************************************************
# Some cleaning
# ***************************************************************************
clean-dots: FORCE
rm -f $(CLEAN_FILE)
clean: clean-dots
rm -rf $(CLEAN_PKG)
clean-src: clean
rm -rf $(DISTCLEAN_PKG)
clean-svn:
rm -rf ffmpeg tremor x264 libdca pa_stable_v$(PORTAUDIO_VERSION).tar.gz portaudio live555-$(LIVEDOTCOM_VERSION).tar.gz live libass
distclean: clean-src
# ***************************************************************************
# Download all the sources and package unversionned copies of subversion trees
# ***************************************************************************
source: $(SOURCE) $(DISTCLEAN_PKG)
# ***************************************************************************
# src/packages.mak : Archive locations
# ***************************************************************************
# Copyright (C) 2003 - 2009 the VideoLAN team
# $Id$
#
# Authors: Christophe Massiot <massiot@via.ecp.fr>
# Derk-Jan Hartman <hartman at videolan dot org>
# Felix Paul Kühne <fkuehne at videolan dot org>
# Rafaël Carré <funman@videolanorg>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
# ***************************************************************************
PENGUIN=http://ftp.penguin.cz/pub/users/utx/amr
GNU=http://ftp.gnu.org/gnu
SF=http://heanet.dl.sourceforge.net/sourceforge
VIDEOLAN=http://downloads.videolan.org/pub/videolan
CONTRIB_VIDEOLAN=http://downloads.videolan.org/pub/videolan/testing/contrib
LIBAMR_NB_VERSION=7.0.0.0
LIBAMR_NB=$(PENGUIN)/amrnb-$(LIBAMR_NB_VERSION).tar.bz2
LIBAMR_WB_VERSION=7.0.0.2
LIBAMR_WB=$(PENGUIN)/amrwb-$(LIBAMR_WB_VERSION).tar.bz2
ERRNO_URL=http://altair.videolan.org/~linkfanel/errno
CMAKE_VERSION=2.8.3
CMAKE_URL=http://www.cmake.org/files/v2.8/cmake-$(CMAKE_VERSION).tar.gz
LIBTOOL_VERSION=2.2.10
LIBTOOL_URL=$(GNU)/libtool/libtool-$(LIBTOOL_VERSION).tar.gz
AUTOCONF_VERSION=2.68
AUTOCONF_URL=$(GNU)/autoconf/autoconf-$(AUTOCONF_VERSION).tar.bz2
AUTOMAKE_VERSION=1.11.1
AUTOMAKE_URL=$(GNU)/automake/automake-$(AUTOMAKE_VERSION).tar.gz
PKGCFG_VERSION=0.23
#PKGCFG_URL=$(CONTRIB_VIDEOLAN)/pkg-config-$(PKGCFG_VERSION).tar.gz
PKGCFG_URL=http://pkgconfig.freedesktop.org/releases/pkg-config-$(PKGCFG_VERSION).tar.gz
LIBICONV_VERSION=1.13.1
LIBICONV_URL=$(GNU)/libiconv/libiconv-$(LIBICONV_VERSION).tar.gz
LIBICONVMAC_URL=$(CONTRIB_VIDEOLAN)/libiconv-snowleopard.tar.bz2
GETTEXT_VERSION=0.18.1.1
GETTEXT_URL=$(GNU)/gettext/gettext-$(GETTEXT_VERSION).tar.gz
FONTCONFIG_VERSION=2.8.0
#FONTCONFIG_URL=$(CONTRIB_VIDEOLAN)/fontconfig-$(FONTCONFIG_VERSION).tar.gz
FONTCONFIG_URL=http://fontconfig.org/release/fontconfig-$(FONTCONFIG_VERSION).tar.gz
FREETYPE2_VERSION=2.4.8
FREETYPE2_URL=$(SF)/freetype/freetype-$(FREETYPE2_VERSION).tar.gz
FRIBIDI_VERSION=0.19.2
FRIBIDI_URL=http://fribidi.org/download/fribidi-$(FRIBIDI_VERSION).tar.gz
#FRIBIDI_URL=ftp://ftp.videolan.org/pub/testing/contrib/fribidi-$(FRIBIDI_VERSION).tar.bz2
A52DEC_VERSION=0.7.4
A52DEC_URL=$(CONTRIB_VIDEOLAN)/a52dec-$(A52DEC_VERSION).tar.gz
LIBMPEG2_VERSION=0.5.1
LIBMPEG2_URL=http://libmpeg2.sourceforge.net/files/libmpeg2-$(LIBMPEG2_VERSION).tar.gz
LIBMAD_VERSION=0.15.1b
LIBMAD_URL=$(CONTRIB_VIDEOLAN)/libmad-$(LIBMAD_VERSION).tar.gz
OGG_VERSION=1.3.0
OGG_URL=http://downloads.xiph.org/releases/ogg/libogg-$(OGG_VERSION).tar.gz
#GG_URL=$(CONTRIB_VIDEOLAN)/libogg-$(OGG_VERSION).tar.gz
OGG_CVSROOT=:pserver:anoncvs@xiph.org:/usr/local/cvsroot
VORBIS_VERSION=1.3.2
VORBIS_URL=http://downloads.xiph.org/releases/vorbis/libvorbis-$(VORBIS_VERSION).tar.gz
#VORBIS_URL=$(CONTRIB_VIDEOLAN)/libvorbis-$(VORBIS_VERSION).tar.gz
THEORA_VERSION=1.1.1
THEORA_URL=http://downloads.xiph.org/releases/theora/libtheora-$(THEORA_VERSION).tar.bz2
#THEORA_URL=$(CONTRIB_VIDEOLAN)/libtheora-$(THEORA_VERSION).tar.bz2
FLAC_VERSION=1.2.1
FLAC_URL=$(SF)/flac/flac-$(FLAC_VERSION).tar.gz
SPEEX_VERSION=1.2rc1
SPEEX_URL=http://downloads.us.xiph.org/releases/speex/speex-$(SPEEX_VERSION).tar.gz
SHOUT_VERSION=2.2.2
SHOUT_URL=http://downloads.us.xiph.org/releases/libshout/libshout-$(SHOUT_VERSION).tar.gz
FAAD2_VERSION=2.7
FAAD2_URL=$(SF)/faac/faad2-$(FAAD2_VERSION).tar.gz
#FAAD2_URL=$(CONTRIB_VIDEOLAN)/faad2-$(FAAD2_VERSION).tar.bz2
FAAD2_CVSROOT=:pserver:anonymous@cvs.audiocoding.com:/cvsroot/faac
LAME_VERSION=3.99.1
LAME_URL=$(SF)/lame/lame-$(LAME_VERSION).tar.gz
LIBEBML_VERSION=1.2.2
LIBEBML_URL=http://dl.matroska.org/downloads/libebml/libebml-$(LIBEBML_VERSION).tar.bz2
#LIBEBML_URL=$(CONTRIB_VIDEOLAN)/libebml-$(LIBEBML_VERSION).tar.bz2
LIBMATROSKA_VERSION=1.3.0
LIBMATROSKA_URL=http://dl.matroska.org/downloads/libmatroska/libmatroska-$(LIBMATROSKA_VERSION).tar.bz2
#IBMATROSKA_URL=$(CONTRIB_VIDEOLAN)/libmatroska-$(LIBMATROSKA_VERSION).tar.bz2
FFMPEG_GIT=git://git.videolan.org/ffmpeg.git
#FFMPEG_GIT=git://git.libav.org/libav.git
LIBDVDCSS_VERSION=1.2.11
LIBDVDCSS_URL=$(VIDEOLAN)/libdvdcss/$(LIBDVDCSS_VERSION)/libdvdcss-$(LIBDVDCSS_VERSION).tar.bz2
LIBDVDNAV_VERSION=4.2.0
LIBDVDNAV_URL=http://dvdnav.mplayerhq.hu/releases/libdvdnav-$(LIBDVDNAV_VERSION).tar.bz2
LIBDVDREAD_VERSION=4.2.0
LIBDVDREAD_URL=http://dvdnav.mplayerhq.hu/releases/libdvdread-$(LIBDVDREAD_VERSION).tar.bz2
#LIBDVDREAD_URL=$(VIDEOLAN)/libdvdread/$(LIBDVDREAD_VERSION)/libdvdread-$(LIBDVDREAD_VERSION).tar.gz
LIBDVBPSI_VERSION=0.2.2
LIBDVBPSI_URL=$(VIDEOLAN)/libdvbpsi/$(LIBDVBPSI_VERSION)/libdvbpsi-$(LIBDVBPSI_VERSION).tar.gz
LIVEDOTCOM_VERSION=latest
LIVEDOTCOM_URL=http://live555.com/liveMedia/public/live555-$(LIVEDOTCOM_VERSION).tar.gz
GOOM2k4_VERSION=2k4-0
GOOM2k4_URL=$(CONTRIB_VIDEOLAN)/goom-$(GOOM2k4_VERSION)-src.tar.gz
#GOOM2k4_URL=$(SF)/goom/goom-$(GOOM2k4_VERSION)-src.tar.gz
LIBCACA_VERSION=0.99.beta17
#LIBCACA_URL=$(CONTRIB_VIDEOLAN)/libcaca-$(LIBCACA_VERSION).tar.gz
LIBCACA_URL=http://caca.zoy.org/files/libcaca/libcaca-$(LIBCACA_VERSION).tar.gz
LIBDCA_VERSION=0.0.5
LIBDCA_URL=$(VIDEOLAN)/libdca/$(LIBDCA_VERSION)/libdca-$(LIBDCA_VERSION).tar.bz2
LIBDC1394_VERSION=1.2.1
LIBDC1394_URL=$(SF)/libdc1394/libdc1394-$(LIBDC1394_VERSION).tar.gz
LIBDC1394_SVN=https://svn.sourceforge.net/svnroot
LIBRAW1394_VERSION=1.2.0
LIBRAW1394_URL=$(SF)/libraw1394/libraw1394-$(LIBRAW1394_VERSION).tar.gz
LIBRAW1394_SVN=https://svn.sourceforge.net/svnroot
LIBDTS_VERSION=0.0.2
LIBDTS_URL=http://debian.unnet.nl/pub/videolan/libdts/$(LIBDTS_VERSION)/libdts-$(LIBDTS_VERSION).tar.gz
LIBDCA_SVN=svn://svn.videolan.org/libdca/trunk
MODPLUG_VERSION=0.8.8.4
MODPLUG_URL=$(SF)/modplug-xmms/libmodplug-$(MODPLUG_VERSION).tar.gz
REGEX_VERSION=0.12
REGEX_URL=http://ftp.gnu.org/old-gnu/regex/regex-$(REGEX_VERSION).tar.gz
CDDB_VERSION=1.3.2
CDDB_URL=$(SF)/libcddb/libcddb-$(CDDB_VERSION).tar.bz2
VCDIMAGER_VERSION=0.7.23
VCDIMAGER_URL=$(GNU)/vcdimager/vcdimager-$(VCDIMAGER_VERSION).tar.gz
CDIO_VERSION=0.80
CDIO_URL=$(GNU)/libcdio/libcdio-$(CDIO_VERSION).tar.gz
PNG_VERSION=1.5.6
PNG_URL=$(SF)/libpng/libpng-$(PNG_VERSION).tar.bz2
GPGERROR_VERSION=1.10
#GPGERROR_URL=$(CONTRIB_VIDEOLAN)/libgpg-error-$(GPGERROR_VERSION).tar.bz2
GPGERROR_URL=ftp://ftp.gnupg.org/gcrypt/libgpg-error/libgpg-error-$(GPGERROR_VERSION).tar.bz2
GCRYPT_VERSION=1.4.6
#GCRYPT_URL=$(CONTRIB_VIDEOLAN)/libgcrypt-$(GCRYPT_VERSION).tar.bz2
GCRYPT_URL=ftp://ftp.gnupg.org/gcrypt/libgcrypt/libgcrypt-$(GCRYPT_VERSION).tar.bz2
GNUTLS_VERSION=2.12.7
GNUTLS_URL=http://ftp.gnu.org/pub/gnu/gnutls/gnutls-$(GNUTLS_VERSION).tar.bz2
OPENCDK_VERSION=0.6.6
OPENCDK_URL=http://www.gnu.org/software/gnutls/releases/opencdk/opencdk-$(OPENCDK_VERSION).tar.bz2
DAAP_VERSION=0.4.0
DAAP_URL=http://craz.net/programs/itunes/files/libopendaap-$(DAAP_VERSION).tar.bz2
NPAPI_HEADERS_SVN_URL=http://npapi-sdk.googlecode.com/svn/trunk/
# NPAPI_HEADERS_SVN_REVISION can be a revision number, or just HEAD for the latest
NPAPI_HEADERS_SVN_REVISION=HEAD
TWOLAME_VERSION=0.3.13
TWOLAME_URL=$(SF)/twolame/twolame-$(TWOLAME_VERSION).tar.gz
X264_VERSION=20050609
X264_URL=$(CONTRIB_VIDEOLAN)/x264-$(X264_VERSION).tar.gz
JPEG_VERSION=8c
JPEG_URL=http://www.ijg.org/files/jpegsrc.v$(JPEG_VERSION).tar.gz
TIFF_VERSION=3.9.5
TIFF_URL=http://download.osgeo.org/libtiff/tiff-$(TIFF_VERSION).tar.gz
SDL_VERSION=1.2.14
SDL_URL=http://www.libsdl.org/release/SDL-$(SDL_VERSION).tar.gz
SDL_IMAGE_VERSION=1.2.10
SDL_IMAGE_URL=http://www.libsdl.org/projects/SDL_image/release/SDL_image-$(SDL_IMAGE_VERSION).tar.gz
MUSE_VERSION=1.2.6
MUSE_URL=http://files.musepack.net/source/libmpcdec-$(MUSE_VERSION).tar.bz2
MUSE_SVN=http://svn.musepack.net/libmpc/trunk/
#MUSE_URL=http://files2.musepack.net/source/libmpcdec-$(MUSE_VERSION).tar.bz2
QT4_VERSION=4.7.2
QT4_URL=$(CONTRIB_VIDEOLAN)/qt4-$(QT4_VERSION)-win32-bin.tar.bz2
QT4_MAC_VERSION=4.7.2
QT4_MAC_URL=http://get.qt.nokia.com/qt/source/qt-mac-opensource-$(QT4_MAC_VERSION).dmg
ZLIB_VERSION=1.2.5
ZLIB_URL=$(SF)/libpng/zlib-$(ZLIB_VERSION).tar.gz
XML_VERSION=2.7.8
#XML_URL=$(CONTRIB_VIDEOLAN)/libxml2-$(XML_VERSION).tar.gz
XML_URL=http://xmlsoft.org/sources/libxml2-$(XML_VERSION).tar.gz
DIRAC_VERSION=1.0.2
DIRAC_URL=$(SF)/dirac/dirac-$(DIRAC_VERSION).tar.gz
DX_HEADERS_URL=$(CONTRIB_VIDEOLAN)/directx-oss.tar.bz2
DSHOW_HEADERS_URL=$(VIDEOLAN)/contrib/dshow-headers-oss.tar.bz2
PORTAUDIO_VERSION=19_20110326
PORTAUDIO_URL=http://www.portaudio.com/archives/pa_stable_v$(PORTAUDIO_VERSION).tgz
CLINKCC_VERSION=171
CLINKCC_URL=$(SF)/clinkcc/clinkcc$(CLINKCC_VERSION).tar.gz
UPNP_VERSION=1.6.13
UPNP_URL=$(SF)/pupnp/libupnp-$(UPNP_VERSION).tar.bz2
EXPAT_VERSION=2.0.0
EXPAT_URL=$(SF)/expat/expat-$(EXPAT_VERSION).tar.gz
PTHREADS_VERSION=2-8-0
PTHREADS_URL=ftp://sources.redhat.com/pub/pthreads-win32/pthreads-w32-$(PTHREADS_VERSION)-release.tar.gz
ZVBI_VERSION=0.2.33
ZVBI_URL=$(SF)/zapping/zvbi-$(ZVBI_VERSION).tar.bz2
TAGLIB_VERSION=1.7
TAGLIB_URL=http://developer.kde.org/~wheeler/files/src/taglib-$(TAGLIB_VERSION).tar.gz
LUA_VERSION=5.1.4
LUA_URL=http://www.lua.org/ftp/lua-$(LUA_VERSION).tar.gz
NCURSES_VERSION=5.7
NCURSES_URL=$(GNU)/ncurses/ncurses-$(NCURSES_VERSION).tar.gz
FLUID_VERSION=1.0.9# DO NOT update, this will require glib
#FLUID_URL=http://download.savannah.gnu.org/releases/fluid/fluidsynth-$(FLUID_VERSION).tar.gz
FLUID_URL=http://downloads.sourceforge.net/project/fluidsynth/older%20releases/fluidsynth-$(FLUID_VERSION).tar.gz
YASM_VERSION=1.1.0
#YASM_URL=$(CONTRIB_VIDEOLAN)/yasm-$(YASM_VERSION).tar.gz
YASM_URL=http://www.tortall.net/projects/yasm/releases/yasm-$(YASM_VERSION).tar.gz
KATE_VERSION=0.3.8
KATE_URL=http://libkate.googlecode.com/files/libkate-$(KATE_VERSION).tar.gz
TIGER_VERSION=0.3.1
TIGER_URL=http://libtiger.googlecode.com/files/libtiger-$(TIGER_VERSION).tar.gz
ORC_VERSION=0.4.16
ORC_URL=http://code.entropywave.com/download/orc/orc-$(ORC_VERSION).tar.gz
SCHROED_VERSION=1.0.10
SCHROED_URL=http://diracvideo.org/download/schroedinger/schroedinger-$(SCHROED_VERSION).tar.gz
ASS_VERSION=0.10.0
ASS_URL=http://libass.googlecode.com/files/libass-$(ASS_VERSION).tar.gz
GSM_VERSION=1.0.12
#GSM_URL=http://user.cs.tu-berlin.de/~jutta/gsm/gsm-$(GSM_VERSION).tar.gz
GSM_URL=$(CONTRIB_VIDEOLAN)/gsm-$(GSM_VERSION).tar.gz
SPARKLE_VERSION=1.5b7-vlc
#SPARKLE_URL=http://sparkle.andymatuschak.org/files/Sparkle%20$(SPARKLE_VERSION).zip
SPARKLE_URL=$(CONTRIB_VIDEOLAN)/Sparkle-$(SPARKLE_VERSION).zip
#BGHUDAPPKIT_URL=git://github.com/binarygod/BGHUDAppKit.git
BGHUDAPPKIT_VERSION=0.7-10-g79a560d
BGHUDAPPKIT_URL=$(CONTRIB_VIDEOLAN)/BGHUDAppKit-$(BGHUDAPPKIT_VERSION).zip
GROWL_VERSION=1.2.2
GROWL_URL=$(CONTRIB_VIDEOLAN)/Growl-$(GROWL_VERSION).zip
XCB_VERSION=1.2
XCB_URL=http://xcb.freedesktop.org/dist/
XCB_UTIL_VERSION=0.2
XCB_UTIL_URL=$(XCB_URL)
GLEW_VERSION=1.5.1
GLEW_URL=$(SF)/glew/glew/$(GLEW_VERSION)/glew-$(GLEW_VERSION)-src.tgz
LIBPROJECTM_VERSION=2.0.1
LIBPROJECTM_URL=$(SF)/projectm/$(LIBPROJECTM_VERSION)/projectM-$(LIBPROJECTM_VERSION)-Source.tar.gz
LIBPROJECTM_SVN=https://projectm.svn.sourceforge.net/svnroot/projectm/trunk
PEFLAGS_URL=$(CONTRIB_VIDEOLAN)
SQLITE_VERSION=3.6.20
SQLITE_URL=http://www.sqlite.org/sqlite-amalgamation-$(SQLITE_VERSION).tar.gz
DXVA2_URL=$(CONTRIB_VIDEOLAN)/dxva2api.h
D2D_URL=http://nodeload.github.com/2of1/d2d1headers/tarball/master
VPX_VERSION=v0.9.6
VPX_URL=http://webm.googlecode.com/files/libvpx-$(VPX_VERSION).tar.bz2
GME_VERSION=0.5.5
GME_URL=http://game-music-emu.googlecode.com/files/game-music-emu-$(GME_VERSION).tbz2
SID_URL=$(SF)/sidplay2/sidplay2/sidplay-libs-2.1.1/sidplay-libs-2.1.1.tar.gz
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment