summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--configure.ac17
-rw-r--r--intl/Makefile.in2
-rw-r--r--lib/Makefile.am9
-rw-r--r--lib/os_internal.h57
-rw-r--r--lib/os_types.h16
-rw-r--r--m4/_xine.m4150
-rw-r--r--src/demuxers/asfheader.h5
-rw-r--r--src/libffmpeg/libavcodec/Makefile.am5
-rw-r--r--src/libffmpeg/libavcodec/alpha/Makefile.am2
-rw-r--r--src/libffmpeg/libavcodec/armv4l/Makefile.am3
-rw-r--r--src/libffmpeg/libavcodec/i386/Makefile.am3
-rw-r--r--src/libffmpeg/libavcodec/libpostproc/Makefile.am3
-rw-r--r--src/libffmpeg/libavcodec/mlib/Makefile.am2
-rw-r--r--src/libffmpeg/libavcodec/ppc/Makefile.am2
-rw-r--r--src/libffmpeg/libavcodec/sparc/Makefile.am3
-rw-r--r--src/libffmpeg/libavutil/Makefile.am2
-rw-r--r--src/post/audio/filter.c3
-rw-r--r--src/post/audio/window.c3
-rw-r--r--src/post/goom/convolve_fx.c4
-rw-r--r--src/post/goom/diff_against_release.patch26
-rw-r--r--src/post/goom/goom_config.h4
-rw-r--r--src/xine-engine/Makefile.am2
-rw-r--r--src/xine-engine/load_plugins.c5
-rw-r--r--src/xine-engine/xine.c5
-rw-r--r--src/xine-utils/Makefile.am1
-rw-r--r--src/xine-utils/xineutils.h31
-rw-r--r--win32/include/msvc/config.h8
27 files changed, 285 insertions, 88 deletions
diff --git a/configure.ac b/configure.ac
index 5307581d8..55bf54ae9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -185,7 +185,8 @@ AC_TYPE_SIZE_T
AC_CHECK_SIZEOF(long)
dnl AC_CHECK_TYPES([ptrdiff_t])
dnl For systems without inttypes.h would be needed extend generated replacement.
-dnl AC_CHECK_GENERATE_INTTYPES([lib])
+AC_CHECK_GENERATE_INTTYPES([lib])
+AM_CONDITIONAL(GENERATED_INTTYPES_H, test x"$ac_cv_header_inttypes_h" != x"yes")
AC_CHECK_TYPE(ssize_t, :, AC_DEFINE(ssize_t, __int64, [define ssize_t to __int64 if it's missing in default includes]))
@@ -354,10 +355,10 @@ dnl mpeg2lib and ffmpeg stuff
dnl ---------------------------------------------
AC_SUBST(LIBMPEG2_CFLAGS)
-AC_SUBST(LIBFFMPEG_CFLAGS)
+AC_SUBST(LIBFFMPEG_CPPFLAGS)
LIBMPEG2_CFLAGS=""
-LIBFFMPEG_CFLAGS="-DSIMPLE_IDCT -DHAVE_AV_CONFIG_H -DRUNTIME_CPUDETECT -DUSE_FASTMEMCPY -DCONFIG_RISKY -DCONFIG_DECODERS -DXINE_MPEG_ENCODER -DCONFIG_ZLIB -DCONFIG_GPL"
+LIBFFMPEG_CPPFLAGS="-DSIMPLE_IDCT -DHAVE_AV_CONFIG_H -DRUNTIME_CPUDETECT -DUSE_FASTMEMCPY -DCONFIG_RISKY -DCONFIG_DECODERS -DXINE_MPEG_ENCODER -DCONFIG_ZLIB -DCONFIG_GPL"
AC_CHECK_DECL(lrintf,[
AC_DEFINE(HAVE_LRINTF,1,[Define this if the 'lrintf' function is declared in math.h])
@@ -366,6 +367,11 @@ AC_CHECK_DECL(lrintf,[
#define _ISOC9X_SOURCE
#include <math.h>
])
+AC_CHECK_DECL(rintf,[
+ AC_DEFINE(HAVE_RINTF,1,[Define this if the 'rintf' function is declared in math.h])
+ ],,[
+#include <math.h>
+])
AC_CHECK_TYPES(int_fast8_t, [], [LIBFFMPEG_CFLAGS="$LIBFFMPEG_CFLAGS -DEMULATE_FAST_INT"])
@@ -1879,12 +1885,11 @@ dnl ---------------------------------------------
AC_SYS_LARGEFILE
AC_CHECK_LIB(posix4, sched_get_priority_min)
-AC_CHECK_FUNCS([vsscanf sigaction sigset getpwuid_r nanosleep lstat memset strchr])
+AC_CHECK_FUNCS([_vsnprintf _snprintf _stricmp _strnicmp vsscanf sigaction sigset getpwuid_r nanosleep lstat memset readlink strchr strcasecmp strncasecmp])
AC_FUNC_FSEEKO
AC_DEFINE(_GNU_SOURCE)
AC_CHECK_HEADERS(assert.h byteswap.h malloc.h execinfo.h ucontext.h sys/mman.h sys/mixer.h libgen.h netdb.h dirent.h sys/times.h sys/ioctl.h sys/param.h)
AC_REPLACE_FUNCS(basename gettimeofday setenv strndup strpbrk strsep strtok_r timegm unsetenv)
-AC_CHECK_FUNCS(readlink)
AC_LIBSOURCE(hstrerror.c)
AC_LINK_IFELSE([#include <netdb.h>
@@ -2183,7 +2188,7 @@ dnl ---------------------------------------------
dnl some include paths ( !!! DO NOT REMOVE !!! )
dnl ---------------------------------------------
-INCLUDES='-I$(top_srcdir) -I$(top_builddir)/include -I$(top_srcdir)/include -I$(top_srcdir)/src -I$(top_builddir)/src/xine-engine -I$(top_srcdir)/src/xine-engine -I$(top_srcdir)/src/xine-utils $(INTLDIR) -I$(top_builddir)/src/input -I$(top_srcdir)/src/input $(WIN32_CPPFLAGS) -I$(top_srcdir)/lib'
+INCLUDES='-I$(top_srcdir) -I$(top_builddir)/include -I$(top_srcdir)/include -I$(top_srcdir)/src -I$(top_builddir)/src/xine-engine -I$(top_srcdir)/src/xine-engine -I$(top_srcdir)/src/xine-utils $(INTLDIR) -I$(top_builddir)/src/input -I$(top_srcdir)/src/input $(WIN32_CPPFLAGS) -I$(top_builddir)/lib -I$(top_srcdir)/lib'
AC_SUBST(INCLUDES)
diff --git a/intl/Makefile.in b/intl/Makefile.in
index 3dfec5dff..887d9a8fd 100644
--- a/intl/Makefile.in
+++ b/intl/Makefile.in
@@ -103,7 +103,7 @@ LTV_AGE=0
sed -e '/^#/d' -e 's/@''PACKAGE''@/@PACKAGE@/g' $< > t-$@
mv t-$@ $@
-INCLUDES = -I.. -I. -I$(top_srcdir)/intl -I$(top_srcdir)/include -I$(top_srcdir)/lib
+INCLUDES = -I.. -I. -I$(top_srcdir)/intl -I$(top_srcdir)/include -I$(top_builddir)/lib -I$(top_srcdir)/lib
all: all-@USE_INCLUDED_LIBINTL@
all-yes: libintl.$la libintl.h charset.alias ref-add.sed ref-del.sed
diff --git a/lib/Makefile.am b/lib/Makefile.am
index 5217afe55..37559c298 100644
--- a/lib/Makefile.am
+++ b/lib/Makefile.am
@@ -1,12 +1,15 @@
include $(top_srcdir)/misc/Makefile.common
+if GENERATED_INTTYPES_H
+inttypes_h = inttypes.h
+endif
+
EXTRA_DIST = Makefile.common
+CONFIG_CLEAN_FILES = $(inttypes_h)
noinst_LTLIBRARIES = libxineposix.la
-
noinst_HEADERS = os_internal.h
-
-include_HEADERS = os_types.h
+include_HEADERS = os_types.h $(inttypes_h)
libxineposix_la_SOURCES =
libxineposix_la_LIBADD = @LTLIBOBJS@
diff --git a/lib/os_internal.h b/lib/os_internal.h
index 67008c260..24ec8fe73 100644
--- a/lib/os_internal.h
+++ b/lib/os_internal.h
@@ -2,20 +2,21 @@
#define _XINE_OS_INTERNAL_H
#include <stddef.h>
-#include "os_types.h"
+#ifdef HOST_OS_DARWIN
+ /* Darwin (Mac OS X) needs __STDC_LIBRARY_SUPPORTED__ for SCNx64 and
+ * SCNxMAX macros */
+# ifndef __STDC_LIBRARY_SUPPORTED__
+# define __STDC_LIBRARY_SUPPORTED__
+# endif /* __STDC_LIBRARY_SUPPORTED__ */
+#endif
#if defined (__SVR4) && defined (__sun)
# include <sys/int_types.h>
-
-/* maybe needed for FreeBSD 4-STABLE */
-/*
-#elif defined (__FreeBSD__)
-# include <stdint.h>
-*/
-
#endif
+#include <inttypes.h>
+
#if defined(WIN32) || defined(__CYGWIN__)
# define XINE_PATH_SEPARATOR_STRING ";"
@@ -97,20 +98,39 @@ time_t _xine_private_timegm(struct tm *tm);
void _xine_private_unsetenv(const char *name);
#endif
-/* macross needed for MSVC */
-#ifdef _MSC_VER
+/* handle non-standard function names */
+#if !defined(HAVE_SNPRINTF) && defined(HAVE__SNPRINTF)
# define snprintf _snprintf
+#endif
+#if !defined(HAVE_VSNPRINTF) && defined(HAVE__VSNPRINTF)
# define vsnprintf _vsnprintf
+#endif
+#if !defined(HAVE_STRCASECMP) && defined(HAVE__STRICMP)
# define strcasecmp _stricmp
+#endif
+#if !defined(HAVE_STRNCASECMP) && defined(HAVE__STRNICMP)
# define strncasecmp _strnicmp
+#endif
+
+#include <math.h>
+#ifndef M_PI
# define M_PI 3.14159265358979323846
#endif
+#ifndef HAVE_LRINTF
+#define lrint(X) (long)((X) + ((X) >= 0 ? 0.5 : -0.5))
+#endif
+#ifndef HAVE_RINTF
+#define rint(X) (int)((X) + ((X) >= 0 ? 0.5 : -0.5))
+#endif
#ifdef WIN32
# include <io.h>
# ifdef _MSC_VER
# include <direct.h>
# endif
+# ifdef HAVE_SYS_STAT_H
+# include <sys/stat.h>
+# endif
# define mkdir(A, B) _mkdir((A))
# ifndef S_ISDIR
@@ -157,6 +177,23 @@ void _xine_private_unsetenv(const char *name);
# define S_IXUGO (S_IXUSR | S_IXGRP | S_IXOTH)
# endif
+/*
+ * workaround compatibility code due to 'near' and 'far' keywords in windef.h
+ * (do it only inside ffmpeg)
+ */
+# ifdef HAVE_AV_CONFIG_H
+# include <windef.h>
+# ifdef near
+# undef near
+# endif
+# ifdef far
+# undef far
+# endif
+ /* it sucks everywhere :-) */
+# define near win32_sucks_near
+# define far win32_sucks_far
+# endif /* av_config */
+
#endif
#ifndef HAVE_READLINK
diff --git a/lib/os_types.h b/lib/os_types.h
index 506a324bb..0cee183cc 100644
--- a/lib/os_types.h
+++ b/lib/os_types.h
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2004 the xine project
+ * Copyright (C) 2004-2006 the xine project
*
* This file is part of xine, a free video player.
*
@@ -17,7 +17,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*
- * $Id: os_types.h,v 1.4 2005/02/03 07:19:03 valtri Exp $ Ext
+ * $Id: os_types.h,v 1.5 2006/04/08 16:42:23 valtri Exp $ Ext
*
* Platform dependent types needed by public xine.h.
* Types not needed by xine.h are specified in os_internal.h.
@@ -97,22 +97,12 @@
typedef long int64_t;
typedef unsigned long int64_t;
-#elif defined(HOST_OS_DARWIN)
-
- /* Darwin (Mac OS X) needs __STDC_LIBRARY_SUPPORTED__ for SCNx64 and
- * SCNxMAX macros */
-# ifndef __STDC_LIBRARY_SUPPORTED__
-# define __STDC_LIBRARY_SUPPORTED__
-# endif /* __STDC_LIBRARY_SUPPORTED__ */
-
-# include <inttypes.h>
-
#else
/*
* CygWin: _WIN32 & __GNUC__
* BeOS: __BEOS__
- * Linux, Solaris and others
+ * Linux, Solaris, Mac and others
*/
# include <inttypes.h>
diff --git a/m4/_xine.m4 b/m4/_xine.m4
index f59d0baae..a67425bdc 100644
--- a/m4/_xine.m4
+++ b/m4/_xine.m4
@@ -179,11 +179,21 @@ AC_DEFUN([AC_TRY_CFLAGS],
dnl AC_CHECK_GENERATE_INTTYPES_H (INCLUDE-DIRECTORY)
dnl generate a default inttypes.h if the header file does not exist already
AC_DEFUN([AC_CHECK_GENERATE_INTTYPES],
- [AC_CHECK_HEADER([inttypes.h],[],
- [AC_COMPILE_CHECK_SIZEOF([char],[1])
- AC_COMPILE_CHECK_SIZEOF([short],[2])
- AC_COMPILE_CHECK_SIZEOF([int],[4])
- AC_COMPILE_CHECK_SIZEOF([long long],[8])
+ [AC_CHECK_HEADER([inttypes.h],,
+ [[ ! -d $1 ] && mkdir $1
+ AC_CHECK_HEADER([stdint.h],
+ [cat >$1/inttypes.h << EOF
+#ifndef _INTTYPES_H
+#define _INTTYPES_H
+/* helper inttypes.h for people who do not have it on their system */
+
+#include <stdint.h>
+EOF
+ ],
+ [AC_COMPILE_CHECK_SIZEOF([char],[1])
+ AC_COMPILE_CHECK_SIZEOF([short],[2])
+ AC_COMPILE_CHECK_SIZEOF([int],[4])
+ AC_COMPILE_CHECK_SIZEOF([long long],[8])
cat >$1/inttypes.h << EOF
#ifndef _INTTYPES_H
#define _INTTYPES_H
@@ -206,9 +216,137 @@ typedef unsigned int uint32_t;
typedef unsigned long long uint64_t;
#endif
#endif
+EOF
+ ])
+ cat >>$1/inttypes.h << EOF
+
+#ifdef WIN32
+# define PRI64_PREFIX "I64"
+#else
+# define PRI64_PREFIX "l"
+#endif
+
+#ifndef PRId8
+# define PRId8 "d"
+#endif
+#ifndef PRId16
+# define PRId16 "d"
+#endif
+#ifndef PRId32
+# define PRId32 "d"
+#endif
+#ifndef PRId64
+# define PRId64 PRI64_PREFIX "d"
+#endif
+
+#ifndef PRIu8
+# define PRIu8 "u"
+#endif
+#ifndef PRIu16
+# define PRIu16 "u"
+#endif
+#ifndef PRIu32
+# define PRIu32 "u"
+#endif
+#ifndef PRIu64
+# define PRIu64 PRI64_PREFIX "u"
+#endif
+
+#ifndef PRIx8
+# define PRIx8 "x"
+#endif
+#ifndef PRIx16
+# define PRIx16 "x"
+#endif
+#ifndef PRIx32
+# define PRIx32 "x"
+#endif
+#ifndef PRIx64
+# define PRIx64 PRI64_PREFIX "x"
+#endif
+
+#ifndef PRIdFAST8
+# define PRIdFAST8 "d"
+#endif
+#ifndef PRIdFAST16
+# define PRIdFAST16 "d"
+#endif
+#ifndef PRIdFAST32
+# define PRIdFAST32 "d"
+#endif
+#ifndef PRIdFAST64
+# define PRIdFAST64 "d"
+#endif
+
+#ifndef PRIuFAST8
+# define PRIuFAST8 "u"
+#endif
+#ifndef PRIuFAST16
+# define PRIuFAST16 "u"
+#endif
+#ifndef PRIuFAST32
+# define PRIuFAST32 "u"
+#endif
+#ifndef PRIuFAST64
+# define PRIuFAST64 PRI64_PREFIX "u"
+#endif
+
+#ifndef PRIxFAST8
+# define PRIxFAST8 "x"
+#endif
+#ifndef PRIxFAST16
+# define PRIxFAST16 "x"
+#endif
+#ifndef PRIxFAST32
+# define PRIxFAST32 "x"
+#endif
+#ifndef PRIxFAST64
+# define PRIxFAST64 PRI64_PREFIX "x"
+#endif
+
+#ifndef SCNd8
+# define SCNd8 "hhd"
+#endif
+#ifndef SCNd16
+# define SCNd16 "hd"
+#endif
+#ifndef SCNd32
+# define SCNd32 "d"
+#endif
+#ifndef SCNd64
+# define SCNd64 PRI64_PREFIX "d"
+#endif
+
+#ifndef SCNu8
+# define SCNu8 "hhu"
+#endif
+#ifndef SCNu16
+# define SCNu16 "hu"
+#endif
+#ifndef SCNu32
+# define SCNu32 "u"
+#endif
+#ifndef SCNu64
+# define SCNu64 PRI64_PREFIX "u"
+#endif
+
+#ifndef PRIdMAX
+# define PRIdMAX PRId64
+#endif
+#ifndef PRIuMAX
+# define PRIuMAX PRIu64
+#endif
+#ifndef PRIxMAX
+# define PRIxMAX PRIx64
+#endif
+#ifndef SCNdMAX
+# define SCNdMAX SCNd64
+#endif
+
#endif
EOF
- ])])
+ ])]
+)
dnl AC_COMPILE_CHECK_SIZEOF (TYPE SUPPOSED-SIZE)
diff --git a/src/demuxers/asfheader.h b/src/demuxers/asfheader.h
index 0a73a2570..2f2fd6705 100644
--- a/src/demuxers/asfheader.h
+++ b/src/demuxers/asfheader.h
@@ -17,7 +17,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*
- * $Id: asfheader.h,v 1.4 2005/01/12 00:05:36 tmattern Exp $
+ * $Id: asfheader.h,v 1.5 2006/04/08 16:42:24 valtri Exp $
*
* demultiplexer for asf streams
*
@@ -109,8 +109,9 @@
#define ASF_MAX_NUM_STREAMS 23
-#ifndef GUID_DEFINED
+#if !defined(GUID_DEFINED) && !defined(_GUID_DEFINED)
#define GUID_DEFINED
+#define _GUID_DEFINED
typedef struct _GUID { /* size is 16 */
uint32_t Data1;
diff --git a/src/libffmpeg/libavcodec/Makefile.am b/src/libffmpeg/libavcodec/Makefile.am
index 34a6b522b..53db0d604 100644
--- a/src/libffmpeg/libavcodec/Makefile.am
+++ b/src/libffmpeg/libavcodec/Makefile.am
@@ -9,8 +9,9 @@ EXTRA_DIST = motion_est_template.c \
# we need to compile everything in debug mode, including the encoders,
# otherwise we get unresolved symbols, because some unsatisfied function calls
# are not optimized away with debug optimization
-AM_CFLAGS = $(LIBFFMPEG_CFLAGS) `test "$(CFLAGS)" = "$(DEBUG_CFLAGS)" && echo -DCONFIG_ENCODERS`
-AM_CPPFLAGS = $(ZLIB_CPPFLAGS) -I$(top_srcdir)/src/libffmpeg/libavutil
+AM_CFLAGS = `test "$(CFLAGS)" = "$(DEBUG_CFLAGS)" && echo -DCONFIG_ENCODERS`
+AM_CPPFLAGS = $(ZLIB_CPPFLAGS) $(LIBFFMPEG_CPPFLAGS) \
+ -I$(top_srcdir)/src/libffmpeg/libavutil
ASFLAGS =
noinst_LTLIBRARIES = libavcodec.la
diff --git a/src/libffmpeg/libavcodec/alpha/Makefile.am b/src/libffmpeg/libavcodec/alpha/Makefile.am
index b7bb5f7ca..f0df03d75 100644
--- a/src/libffmpeg/libavcodec/alpha/Makefile.am
+++ b/src/libffmpeg/libavcodec/alpha/Makefile.am
@@ -1,6 +1,6 @@
include $(top_srcdir)/misc/Makefile.common
-AM_CFLAGS = $(LIBFFMPEG_CFLAGS)
+AM_CPPFLAGS = $(LIBFFMPEG_CPPFLAGS)
EXTRA_DIST = asm.h \
dsputil_alpha.c \
diff --git a/src/libffmpeg/libavcodec/armv4l/Makefile.am b/src/libffmpeg/libavcodec/armv4l/Makefile.am
index 194cba8eb..a67ef8ea8 100644
--- a/src/libffmpeg/libavcodec/armv4l/Makefile.am
+++ b/src/libffmpeg/libavcodec/armv4l/Makefile.am
@@ -1,6 +1,7 @@
include $(top_srcdir)/misc/Makefile.common
-AM_CFLAGS = -O2 $(LIBFFMPEG_CFLAGS)
+AM_CFLAGS = -O2
+AM_CPPFLAGS = $(LIBFFMPEG_CPPFLAGS)
ASFLAGS =
noinst_LTLIBRARIES = libavcodec_armv4l.la
diff --git a/src/libffmpeg/libavcodec/i386/Makefile.am b/src/libffmpeg/libavcodec/i386/Makefile.am
index 49df37f80..35c2dc5be 100644
--- a/src/libffmpeg/libavcodec/i386/Makefile.am
+++ b/src/libffmpeg/libavcodec/i386/Makefile.am
@@ -2,10 +2,11 @@ include $(top_srcdir)/misc/Makefile.common
# -fomit-frame-pointer is always needed. it might cause debug to not
# work, but at least it compiles.
-AM_CFLAGS = $(LIBFFMPEG_CFLAGS) -I$(top_srcdir)/src/libffmpeg/libavutil -fomit-frame-pointer
+AM_CFLAGS = -fomit-frame-pointer
# CFLAGS is here to filter out -funroll-loops because it causes bad
# behavior of libavcodec
CFLAGS := `echo @CFLAGS@ | sed -e 's/-funroll-loops//g'`
+AM_CPPFLAGS = $(LIBFFMPEG_CPPFLAGS) -I$(top_srcdir)/src/libffmpeg/libavutil
# Avoid "can't find register" failures with -O1 and higher
dsputil_mmx.o dsputil_mmx.lo: CFLAGS=`echo @CFLAGS@ | sed -e 's/-funroll-loops//g; s/-O[0-9]/-Os/g'`
diff --git a/src/libffmpeg/libavcodec/libpostproc/Makefile.am b/src/libffmpeg/libavcodec/libpostproc/Makefile.am
index febb2ee85..7b0c2d484 100644
--- a/src/libffmpeg/libavcodec/libpostproc/Makefile.am
+++ b/src/libffmpeg/libavcodec/libpostproc/Makefile.am
@@ -2,7 +2,8 @@ include $(top_srcdir)/misc/Makefile.common
# -fomit-frame-pointer is always needed. it might cause debug to not
# work, but at least it compiles.
-AM_CFLAGS = $(LIBFFMPEG_CFLAGS) -I$(top_srcdir)/src/libffmpeg/libavcodec -fomit-frame-pointer
+AM_CFLAGS = -fomit-frame-pointer
+AM_CPPFLAGS = $(LIBFFMPEG_CPPFLAGS) -I$(top_srcdir)/src/libffmpeg/libavcodec
ASFLAGS =
noinst_LTLIBRARIES = libpostprocess.la
diff --git a/src/libffmpeg/libavcodec/mlib/Makefile.am b/src/libffmpeg/libavcodec/mlib/Makefile.am
index 69e9ed245..12b022d19 100644
--- a/src/libffmpeg/libavcodec/mlib/Makefile.am
+++ b/src/libffmpeg/libavcodec/mlib/Makefile.am
@@ -1,6 +1,6 @@
include $(top_srcdir)/misc/Makefile.common
-AM_CFLAGS = $(LIBFFMPEG_CFLAGS)
+AM_CPPFLAGS = $(LIBFFMPEG_CPPFLAGS)
ASFLAGS =
noinst_LTLIBRARIES = libavcodec_mlib.la
diff --git a/src/libffmpeg/libavcodec/ppc/Makefile.am b/src/libffmpeg/libavcodec/ppc/Makefile.am
index 0fab4b916..3f9edaa25 100644
--- a/src/libffmpeg/libavcodec/ppc/Makefile.am
+++ b/src/libffmpeg/libavcodec/ppc/Makefile.am
@@ -1,6 +1,6 @@
include $(top_srcdir)/misc/Makefile.common
-AM_CFLAGS = $(LIBFFMPEG_CFLAGS)
+AM_CPPFLAGS = $(LIBFFMPEG_CPPFLAGS)
# CFLAGS is here to filter out -funroll-loops because it causes bad
# behavior of libavcodec
CFLAGS = `echo @CFLAGS@ | sed -e 's/-funroll-loops//g'`
diff --git a/src/libffmpeg/libavcodec/sparc/Makefile.am b/src/libffmpeg/libavcodec/sparc/Makefile.am
index 7d9777ed5..edf74a9b8 100644
--- a/src/libffmpeg/libavcodec/sparc/Makefile.am
+++ b/src/libffmpeg/libavcodec/sparc/Makefile.am
@@ -1,7 +1,6 @@
include $(top_srcdir)/misc/Makefile.common
-AM_CFLAGS = $(LIBFFMPEG_CFLAGS)
-AM_CPPFLAGS = -I$(top_srcdir)/src/libffmpeg/libavutil
+AM_CPPFLAGS = $(LIBFFMPEG_CPPFLAGS) -I$(top_srcdir)/src/libffmpeg/libavutil
ASFLAGS =
noinst_LTLIBRARIES = libavcodec_sparc.la
diff --git a/src/libffmpeg/libavutil/Makefile.am b/src/libffmpeg/libavutil/Makefile.am
index 67fe1eec1..1edfaa10d 100644
--- a/src/libffmpeg/libavutil/Makefile.am
+++ b/src/libffmpeg/libavutil/Makefile.am
@@ -1,6 +1,6 @@
include $(top_srcdir)/misc/Makefile.common
-AM_CFLAGS = $(LIBFFMPEG_CFLAGS)
+AM_CPPFLAGS = $(LIBFFMPEG_CPPFLAGS)
ASFLAGS =
noinst_LTLIBRARIES = libavutil.la
diff --git a/src/post/audio/filter.c b/src/post/audio/filter.c
index cb0363633..c5602736c 100644
--- a/src/post/audio/filter.c
+++ b/src/post/audio/filter.c
@@ -10,6 +10,9 @@
/* Design and implementation of different types of digital filters */
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
#include <string.h>
#include <math.h>
#include "dsp.h"
diff --git a/src/post/audio/window.c b/src/post/audio/window.c
index 23c024668..fdea90590 100644
--- a/src/post/audio/window.c
+++ b/src/post/audio/window.c
@@ -15,6 +15,9 @@
* coefficients will be stored.
*/
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
#include <math.h>
#include "dsp.h"
diff --git a/src/post/goom/convolve_fx.c b/src/post/goom/convolve_fx.c
index ccd24dbd6..e86bb3723 100644
--- a/src/post/goom/convolve_fx.c
+++ b/src/post/goom/convolve_fx.c
@@ -7,10 +7,6 @@
#include <stdlib.h>
#include <string.h>
-#if HAVE_CONFIG_H
-# include "config.h"
-#endif
-
//#define CONV_MOTIF_W 32
//#define CONV_MOTIF_WMASK 0x1f
diff --git a/src/post/goom/diff_against_release.patch b/src/post/goom/diff_against_release.patch
index 026cc9862..5bded9393 100644
--- a/src/post/goom/diff_against_release.patch
+++ b/src/post/goom/diff_against_release.patch
@@ -361,17 +361,6 @@ diff -u -p -r1.13 goom_core.c
diff -r -u xine-lib-1.1.0-orig/src/post/goom/convolve_fx.c xine-lib-1.1.0/src/post/goom/convolve_fx.c
--- convolve_fx.c 2005-07-22 12:42:00.000000000 -0400
+++ convolve_fx.c 2005-11-11 14:59:39.925112333 -0500
-@@ -7,6 +7,10 @@
- #include <stdlib.h>
- #include <string.h>
-
-+#if HAVE_CONFIG_H
-+# include "config.h"
-+#endif
-+
- //#define CONV_MOTIF_W 32
- //#define CONV_MOTIF_WMASK 0x1f
-
@@ -151,7 +155,8 @@
ytex = yprime + yi + CONV_MOTIF_W * 0x10000 / 2;
yprime += c;
@@ -494,3 +483,18 @@ diff -r -u xine-lib-1.1.0-orig/src/post/goom/xmmx.c xine-lib-1.1.0/src/post/goom
}
#define DRAWMETHOD_PLUS_XMMX(_out,_backbuf,_col) \
+Index: goom_config.h
+===================================================================
+RCS file: /cvsroot/xine/xine-lib/src/post/goom/goom_config.h,v
+retrieving revision 1.9
+diff -u -p -r1.9 goom_config.h
+--- goom_config.h 21 Nov 2004 15:10:40 -0000 1.9
++++ goom_config.h 8 Apr 2006 15:35:01 -0000
+@@ -1,3 +1,7 @@
++#ifdef HAVE_CONFIG_H
++#include "config.h"
++#endif
++
+ #if WORDS_BIGENDIAN
+ #define COLOR_ARGB
+ #else
diff --git a/src/post/goom/goom_config.h b/src/post/goom/goom_config.h
index 5f6f15893..44c4d7d81 100644
--- a/src/post/goom/goom_config.h
+++ b/src/post/goom/goom_config.h
@@ -1,3 +1,7 @@
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
#if WORDS_BIGENDIAN
#define COLOR_ARGB
#else
diff --git a/src/xine-engine/Makefile.am b/src/xine-engine/Makefile.am
index 18f3541b5..8bd404993 100644
--- a/src/xine-engine/Makefile.am
+++ b/src/xine-engine/Makefile.am
@@ -2,7 +2,7 @@ include $(top_srcdir)/misc/Makefile.common
include $(top_srcdir)/lib/Makefile.common
AM_CFLAGS = $(X_CFLAGS) $(FT2_CFLAGS)
-AM_CPPFLAGS = $(ZLIB_CPPFLAGS)
+AM_CPPFLAGS = $(ZLIB_CPPFLAGS) -DXINE_LIBRARY_COMPILE
LIBTOOL = $(SHELL) $(top_builddir)/libtool
lib_LTLIBRARIES = libxine.la
diff --git a/src/xine-engine/load_plugins.c b/src/xine-engine/load_plugins.c
index 0bca4bd4e..3a7302ef9 100644
--- a/src/xine-engine/load_plugins.c
+++ b/src/xine-engine/load_plugins.c
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2000-2005 the xine project
+ * Copyright (C) 2000-2006 the xine project
*
* This file is part of xine, a free video player.
*
@@ -17,7 +17,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*
- * $Id: load_plugins.c,v 1.220 2006/02/14 18:47:46 dsalt Exp $
+ * $Id: load_plugins.c,v 1.221 2006/04/08 16:42:37 valtri Exp $
*
*
* Load input/demux/audio_out/video_out/codec plugins
@@ -39,6 +39,7 @@
#include <string.h>
#include <errno.h>
#include <stdlib.h>
+#include <stdio.h>
#include <ctype.h>
#include <signal.h>
diff --git a/src/xine-engine/xine.c b/src/xine-engine/xine.c
index 8dac5c264..99c46d1e3 100644
--- a/src/xine-engine/xine.c
+++ b/src/xine-engine/xine.c
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2000-2005 the xine project
+ * Copyright (C) 2000-2006 the xine project
*
* This file is part of xine, a free video player.
*
@@ -17,7 +17,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*
- * $Id: xine.c,v 1.322 2006/03/17 18:52:04 hadess Exp $
+ * $Id: xine.c,v 1.323 2006/04/08 16:42:37 valtri Exp $
*/
/*
@@ -36,6 +36,7 @@
#include <stdlib.h>
#include <pthread.h>
#include <stdarg.h>
+#include <stdio.h>
#if defined (__linux__)
#include <endian.h>
#elif defined (__FreeBSD__)
diff --git a/src/xine-utils/Makefile.am b/src/xine-utils/Makefile.am
index 6e22f0ab2..d4f37ceea 100644
--- a/src/xine-utils/Makefile.am
+++ b/src/xine-utils/Makefile.am
@@ -12,6 +12,7 @@ endif
endif
AM_CFLAGS = $(X_CFLAGS)
+AM_CPPFLAGS=-DXINE_LIBRARY_COMPILE
libxineutils_la_SOURCES = $(pppc_files) \
cpu_accel.c \
diff --git a/src/xine-utils/xineutils.h b/src/xine-utils/xineutils.h
index 4f3542154..c3b56c8c7 100644
--- a/src/xine-utils/xineutils.h
+++ b/src/xine-utils/xineutils.h
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2000-2005 the xine project
+ * Copyright (C) 2000-2006 the xine project
*
* This file is part of xine, a free video player.
*
@@ -17,7 +17,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*
- * $Id: xineutils.h,v 1.100 2006/02/14 19:12:16 dsalt Exp $
+ * $Id: xineutils.h,v 1.101 2006/04/08 16:42:38 valtri Exp $
*
*/
#ifndef XINEUTILS_H
@@ -65,9 +65,14 @@ extern "C" {
#include <stdio.h>
#include <string.h>
-/* for alloca under MinGW */
-#ifdef HAVE_MALLOC_H
-#include <malloc.h>
+
+/*
+ * Mark exported data symbols for link engine library clients with older
+ * Win32 compilers
+ */
+#if defined(WIN32) && !defined(XINE_LIBRARY_COMPILE)
+# define DL_IMPORT __declspec(dllimport)
+# define extern DL_IMPORT extern
#endif
/*
@@ -595,18 +600,7 @@ typedef union {
/* Optimized/fast memcpy */
-/*
- TODO : fix dll linkage problem for xine_fast_memcpy on win32
-
- xine_fast_memcpy dll linkage is screwy here.
- declaring as dllimport seems to fix the problem
- but causes compiler warning with libxineutils
-*/
-#ifdef _MSC_VER
-__declspec( dllimport ) extern void *(* xine_fast_memcpy)(void *to, const void *from, size_t len);
-#else
extern void *(* xine_fast_memcpy)(void *to, const void *from, size_t len);
-#endif
#ifdef HAVE_XINE_INTERNAL_H
/* Benchmark available memcpy methods */
@@ -978,6 +972,11 @@ const char *xine_guess_spu_encoding(void);
*/
int xine_monotonic_clock(struct timeval *tv, struct timezone *tz);
+/* don't harm following code */
+#ifdef extern
+# undef extern
+#endif
+
#ifdef __cplusplus
}
#endif
diff --git a/win32/include/msvc/config.h b/win32/include/msvc/config.h
index 1429047e0..038508f53 100644
--- a/win32/include/msvc/config.h
+++ b/win32/include/msvc/config.h
@@ -18,6 +18,10 @@
* X_DISPLAY_MISSING 1
* HAVE_MEMCPY 1
* XINE_REL_PLUGINDIR "lib\\xine\\plugins"
+ * HAVE__SNPRINTF 1
+ * HAVE__VSNPRINTF 1
+ * HAVE__STRICMP 1
+ * HAVE__STRNICMP 1
* Disable:
* esd, arts, alsa, gnome_vfs, png, sdl, speex, x11, theora
*/
@@ -620,5 +624,9 @@
/* Define this to plugin directory relative to execution prefix */
#define XINE_REL_PLUGINDIR "lib\\xine\\plugins"
+#define HAVE__SNPRINTF 1
+#define HAVE__VSNPRINTF 1
+#define HAVE__STRICMP 1
+#define HAVE__STRNICMP 1
#include "os_internal.h"