diff options
author | Heiko Schaefer <heikos@users.sourceforge.net> | 2001-08-17 13:34:25 +0000 |
---|---|---|
committer | Heiko Schaefer <heikos@users.sourceforge.net> | 2001-08-17 13:34:25 +0000 |
commit | 63d519983a6a5776e473454b912a2e7521c4262a (patch) | |
tree | 5c7e0779d7635359528be5e5f8ae67d521ca1826 /src/libffmpeg | |
parent | 6951f7e71dfab220d0b00a3fe75e38a082d9ab57 (diff) | |
download | xine-lib-63d519983a6a5776e473454b912a2e7521c4262a.tar.gz xine-lib-63d519983a6a5776e473454b912a2e7521c4262a.tar.bz2 |
compile-fix for non-gnu systems (e.g. freebsd)
CVS patchset: 441
CVS date: 2001/08/17 13:34:25
Diffstat (limited to 'src/libffmpeg')
-rw-r--r-- | src/libffmpeg/Makefile.am | 2 | ||||
-rw-r--r-- | src/libffmpeg/bswap.h | 91 | ||||
-rw-r--r-- | src/libffmpeg/libavcodec/common.c | 2 |
3 files changed, 2 insertions, 93 deletions
diff --git a/src/libffmpeg/Makefile.am b/src/libffmpeg/Makefile.am index 998146fe3..992b45aec 100644 --- a/src/libffmpeg/Makefile.am +++ b/src/libffmpeg/Makefile.am @@ -18,7 +18,7 @@ xineplug_decode_ff_la_LDFLAGS = \ $(top_builddir)/src/libffmpeg/libavcodec/libavcodec.la \ -avoid-version -module -noinst_HEADERS = config.h bswap.h +noinst_HEADERS = config.h debug: @$(MAKE) CFLAGS="@DEBUG_CFLAGS@ -DCONFIG_DECODERS -DHAVE_AV_CONFIG_H" diff --git a/src/libffmpeg/bswap.h b/src/libffmpeg/bswap.h deleted file mode 100644 index 21ef3a74e..000000000 --- a/src/libffmpeg/bswap.h +++ /dev/null @@ -1,91 +0,0 @@ -#ifndef __BSWAP_H__ -#define __BSWAP_H__ - -/* It's need for ffmpeg. Else where will be defined ARCH_X86?*/ -#include "config.h" - -#ifdef HAVE_BYTESWAP_H -#include <byteswap.h> -#else - -#include <inttypes.h> - -#ifdef ARCH_X86 -inline static unsigned short ByteSwap16(unsigned short x) -{ - __asm("xchgb %b0,%h0" : - "=q" (x) : - "0" (x)); - return x; -} -#define bswap_16(x) ByteSwap16(x) - -inline static unsigned int ByteSwap32(unsigned int x) -{ -#if __CPU__ > 386 - __asm("bswap %0": - "=r" (x) : -#else - __asm("xchgb %b0,%h0\n" - " rorl $16,%0\n" - " xchgb %b0,%h0": - "=q" (x) : -#endif - "0" (x)); - return x; -} -#define bswap_32(x) ByteSwap32(x) - -inline static unsigned long long int ByteSwap64(unsigned long long int x) -{ - register union { __extension__ unsigned long long int __ll; - unsigned long int __l[2]; } __x; - asm("xchgl %0,%1": - "=r"(__x.__l[0]),"=r"(__x.__l[1]): - "0"(bswap_32((unsigned long)x)),"1"(bswap_32((unsigned long)(x>>32)))); - return __x.__ll; -} -#define bswap_64(x) ByteSwap64(x) - -#else - -#define bswap_16(x) (((x) & 0x00ff) << 8 | ((x) & 0xff00) >> 8) - - -// code from bits/byteswap.h (C) 1997, 1998 Free Software Foundation, Inc. -#define bswap_32(x) \ - ((((x) & 0xff000000) >> 24) | (((x) & 0x00ff0000) >> 8) | \ - (((x) & 0x0000ff00) << 8) | (((x) & 0x000000ff) << 24)) - -#define bswap_64(x) \ - (__extension__ \ - ({ union { __extension__ unsigned long long int __ll; \ - unsigned long int __l[2]; } __w, __r; \ - __w.__ll = (x); \ - __r.__l[0] = bswap_32 (__w.__l[1]); \ - __r.__l[1] = bswap_32 (__w.__l[0]); \ - __r.__ll; })) -#endif /* !ARCH_X86 */ - -#endif /* !HAVE_BYTESWAP_H */ - -// be2me ... BigEndian to MachineEndian -// le2me ... LittleEndian to MachineEndian - -#ifdef WORDS_BIGENDIAN -#define be2me_16(x) (x) -#define be2me_32(x) (x) -#define be2me_64(x) (x) -#define le2me_16(x) bswap_16(x) -#define le2me_32(x) bswap_32(x) -#define le2me_64(x) bswap_64(x) -#else -#define be2me_16(x) bswap_16(x) -#define be2me_32(x) bswap_32(x) -#define be2me_64(x) bswap_64(x) -#define le2me_16(x) (x) -#define le2me_32(x) (x) -#define le2me_64(x) (x) -#endif - -#endif diff --git a/src/libffmpeg/libavcodec/common.c b/src/libffmpeg/libavcodec/common.c index 24a9a1656..77b6d85d2 100644 --- a/src/libffmpeg/libavcodec/common.c +++ b/src/libffmpeg/libavcodec/common.c @@ -29,7 +29,7 @@ #define NDEBUG #include <assert.h> -#include "../bswap.h" +#include "xine-engine/bswap.h" void init_put_bits(PutBitContext *s, UINT8 *buffer, int buffer_size, |