Skip to content

Commit

Permalink
changed: use system mpeg2 library on linux/osx
Browse files Browse the repository at this point in the history
git-svn-id: https://xbmc.svn.sourceforge.net/svnroot/xbmc/trunk@27125 568bbfeb-2a22-0410-94d2-cc84cf5bfa90
  • Loading branch information
spiff_ committed Jan 24, 2010
1 parent 4352fb6 commit 8369d4e
Show file tree
Hide file tree
Showing 4 changed files with 5 additions and 73 deletions.
2 changes: 1 addition & 1 deletion README.ubuntu
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ Two methods exist to install the required Ubuntu packages :

For Ubuntu (all versions >= 7.04):

# sudo aptitude install subversion make g++ gcc gawk pmount libtool nasm automake cmake gperf unzip bison libsdl-dev libsdl-image1.2-dev libsdl-gfx1.2-dev libsdl-mixer1.2-dev libfribidi-dev liblzo2-dev libfreetype6-dev libsqlite3-dev libogg-dev libasound-dev python-sqlite libglew-dev libcurl3 libcurl4-openssl-dev x11proto-xinerama-dev libxinerama-dev libxrandr-dev libxrender-dev libmad0-dev libogg-dev libvorbis-dev libsmbclient-dev libmysqlclient-dev libpcre3-dev libdbus-1-dev libhal-dev libhal-storage-dev libjasper-dev libfontconfig-dev libbz2-dev libboost-dev libfaac-dev libenca-dev libxt-dev libxtst-dev libxmu-dev libpng-dev libjpeg-dev libpulse-dev mesa-utils libcdio-dev libsamplerate-dev libmms-dev libmpeg3-dev libfaad-dev libflac-dev libiso9660-dev libass-dev libssl-dev fp-compiler gdc libwavpack-dev
# sudo aptitude install subversion make g++ gcc gawk pmount libtool nasm automake cmake gperf unzip bison libsdl-dev libsdl-image1.2-dev libsdl-gfx1.2-dev libsdl-mixer1.2-dev libfribidi-dev liblzo2-dev libfreetype6-dev libsqlite3-dev libogg-dev libasound-dev python-sqlite libglew-dev libcurl3 libcurl4-openssl-dev x11proto-xinerama-dev libxinerama-dev libxrandr-dev libxrender-dev libmad0-dev libogg-dev libvorbis-dev libsmbclient-dev libmysqlclient-dev libpcre3-dev libdbus-1-dev libhal-dev libhal-storage-dev libjasper-dev libfontconfig-dev libbz2-dev libboost-dev libfaac-dev libenca-dev libxt-dev libxtst-dev libxmu-dev libpng-dev libjpeg-dev libpulse-dev mesa-utils libcdio-dev libsamplerate-dev libmms-dev libmpeg3-dev libfaad-dev libflac-dev libiso9660-dev libass-dev libssl-dev fp-compiler gdc libwavpack-dev libmpeg2-4-dev

On 8.04 and older versions, libmms is outdated and thus XBMC will not compile properly.
In this case you will have to manually compile the latest version.
Expand Down
49 changes: 2 additions & 47 deletions configure.in
Original file line number Diff line number Diff line change
Expand Up @@ -55,8 +55,6 @@ external_liba52_enabled="== Use of external liba52 enabled. =="
external_liba52_disabled="== Use of external liba52 disabled. =="
external_libdts_enabled="== Use of external libdts enabled. =="
external_libdts_disabled="== Use of external libdts disabled. =="
external_libmpeg2_enabled="== Use of external libmpeg2 enabled. =="
external_libmpeg2_disabled="== Use of external libmpeg2 disabled. =="
external_libass_enabled="== Use of external libass enabled. =="
external_libass_disabled="== Use of external libass disabled. =="
external_libogg_enabled="== Use of external libogg enabled. =="
Expand Down Expand Up @@ -218,12 +216,6 @@ AC_ARG_ENABLE([external-libdts],
[use_external_libdts=$enableval],
[use_external_libdts=no])

AC_ARG_ENABLE([external-libmpeg2],
[AS_HELP_STRING([--enable-external-libmpeg2],
[enable use of external libmpeg2 library (default is no) 'Linux only'])],
[use_external_libmpeg2=$enableval],
[use_external_libmpeg2=no])

AC_ARG_ENABLE([external-libass],
[AS_HELP_STRING([--enable-external-libass],
[enable use of external libass library (default is no) 'Linux only'])],
Expand Down Expand Up @@ -328,6 +320,8 @@ AC_CHECK_LIB([z], [main],, AC_MSG_ERROR($missing_library))
AC_CHECK_LIB([ssl], [main],, AC_MSG_ERROR($missing_library))
AC_CHECK_LIB([crypto], [main],, AC_MSG_ERROR($missing_library))
AC_CHECK_LIB([wavpack], [main],, AC_MSG_ERROR($missing_library))
AC_CHECK_LIB([mpeg2], [main],, AC_MSG_ERROR($missing_library))
AC_CHECK_LIB([mpeg2convert],[main],, AC_MSG_ERROR($missing_library))
PKG_CHECK_MODULES([MAD], [mad],
[INCLUDES+=" $MAD_CFLAGS"; LIBS+=" $MAD_LIBS"],
AC_MSG_ERROR($missing_library))
Expand Down Expand Up @@ -592,19 +586,6 @@ else
USE_EXTERNAL_LIBDTS=0
fi

# External libmpeg2
if test "$use_external_libraries" = "yes" || test "$use_external_libmpeg2" = "yes"; then
AC_CHECK_LIB([mpeg2], [main],, AC_MSG_ERROR($missing_library))
AC_CHECK_LIB([mpeg2convert], [main],, AC_MSG_ERROR($missing_library))

AC_MSG_NOTICE($external_libmpeg2_enabled)
USE_EXTERNAL_LIBMPEG2=1
AC_DEFINE([USE_EXTERNAL_LIBMPEG2], [1], [Whether to use external libmpeg2 library.])
else
AC_MSG_NOTICE($external_libmpeg2_disabled)
USE_EXTERNAL_LIBMPEG2=0
fi

# External libass
if test "$use_external_libraries" = "yes" || test "$use_external_libass" = "yes"; then
# We need libass >= 0.9.7.
Expand Down Expand Up @@ -984,11 +965,6 @@ else
else
final_message="$final_message\n External libdts:\tNo"
fi
if test "$use_external_libmpeg2" = "yes"; then
final_message="$final_message\n External libmpeg2:\tYes"
else
final_message="$final_message\n External libmpeg2:\tNo"
fi
if test "$use_external_libass" = "yes"; then
final_message="$final_message\n External libass:\tYes"
else
Expand Down Expand Up @@ -1354,27 +1330,6 @@ XB_CONFIG_MODULE([xbmc/cores/dvdplayer/Codecs/liba52], [
fi
], [$USE_EXTERNAL_LIBA52])

XB_CONFIG_MODULE([xbmc/cores/dvdplayer/Codecs/libmpeg2], [
if test "$host_vendor" = "apple" ; then
CFLAGS="-fPIC -fno-common -isysroot /Developer/SDKs/MacOSX10.4u.sdk -mmacosx-version-min=10.4" \
./configure MACOSX_DEPLOYMENT_TARGET=10.4 \
--with-pic \
--disable-static \
--enable-shared \
--disable-directx \
--disable-sdl \
--without-x
else
./configure \
--with-pic \
--disable-static \
--enable-shared \
--disable-directx \
--disable-sdl \
--without-x
fi
], [$USE_EXTERNAL_LIBMPEG2])

XB_CONFIG_MODULE([xbmc/cores/dvdplayer/Codecs/libmad], [
if test "$host_vendor" = "apple" ; then
CFLAGS="-fno-common -isysroot /Developer/SDKs/MacOSX10.4u.sdk -mmacosx-version-min=10.4" \
Expand Down
23 changes: 0 additions & 23 deletions xbmc/cores/dvdplayer/Codecs/Makefile.in
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,6 @@ endif
ifneq (@USE_EXTERNAL_LIBDTS@,1)
DIRS+=libdts
endif
ifneq (@USE_EXTERNAL_LIBMPEG2@,1)
DIRS+=libmpeg2
endif

LIBS=
ifneq (@USE_EXTERNAL_FFMPEG@,1)
Expand All @@ -35,9 +32,6 @@ endif
ifneq (@USE_EXTERNAL_LIBDTS@,1)
LIBS+=libdts-$(ARCH).so
endif
ifneq (@USE_EXTERNAL_LIBMPEG2@,1)
LIBS+=libmpeg2-$(ARCH).so
endif

ifeq ($(findstring osx,$(ARCH)),osx)
DIRS+=libmad
Expand Down Expand Up @@ -131,11 +125,6 @@ $(SYSDIR)/libao-$(ARCH).so: $(WRAPPER_OSX) liba52/libao/libao.a
liba52/libao/libao.a $(BUNDLE1_O)
#$(WRAPPER_OSX) $@;mv output.so $@

$(SYSDIR)/libmpeg2-$(ARCH).so: $(WRAPPER_OSX) libmpeg2/libmpeg2/libmpeg2.la
ld -bundle -flat_namespace -undefined suppress -o $@ \
libmpeg2/libmpeg2/.libs/*.o $(BUNDLE1_O)
$(WRAPPER_OSX) $@;mv output.so $@

libdts/libdts/libdts.a : libdts;
libdts:
$(MAKE) -C $@
Expand All @@ -153,10 +142,6 @@ liba52/libao/libao.a: liba52
liba52:
$(MAKE) -C $@

libmpeg2/libmpeg2/libmpeg2.la: libmpeg2
libmpeg2:
$(MAKE) -C $@

else

$(SYSDIR)/avutil-50-$(ARCH).so: ffmpeg/libavutil/libavutil.so
Expand Down Expand Up @@ -203,10 +188,6 @@ $(SYSDIR)/libao-$(ARCH).so: $(WRAPPER) liba52/libao/libao.a
$(CC) -o $@ $(LDFLAGS) --soname,$@ liba52/libao/libao.a \
-Wl`cat $(WRAPPER:.o=.def)` $(WRAPPER)

$(SYSDIR)/libmpeg2-$(ARCH).so: $(WRAPPER) libmpeg2/libmpeg2/libmpeg2.la
$(CC) -o $@ $(LDFLAGS) --soname,$@ libmpeg2/libmpeg2/.libs/*.o \
-Wl`cat $(WRAPPER:.o=.def)` $(WRAPPER)

libdts/libdts/libdts.a : libdts;
libdts:
$(MAKE) -C $@
Expand All @@ -216,10 +197,6 @@ liba52/libao/libao.a: liba52
liba52:
$(MAKE) -C $@

libmpeg2/libmpeg2/libmpeg2.la: libmpeg2
libmpeg2:
$(MAKE) -C $@

endif

clean:
Expand Down
4 changes: 2 additions & 2 deletions xbmc/cores/dvdplayer/DVDCodecs/Video/DllLibMpeg2.h
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
#include "config.h"
#endif
extern "C" {
#if (defined USE_EXTERNAL_LIBMPEG2)
#if (!defined WIN32)
#include <mpeg2dec/mpeg2.h>
#include <mpeg2dec/mpeg2convert.h>
#else
Expand Down Expand Up @@ -54,7 +54,7 @@ class DllLibMpeg2Interface
virtual void mpeg2_skip(mpeg2dec_t * mpeg2dec, int skip)=0;
};

#if (defined USE_EXTERNAL_LIBMPEG2)
#if (!defined WIN32)

class DllLibMpeg2 : public DllDynamic, DllLibMpeg2Interface
{
Expand Down

0 comments on commit 8369d4e

Please sign in to comment.