diff options
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" |