Browse Source

update ffmpeg to latest stable version, enable more subpackages

Waldemar Brodkorb 14 years ago
parent
commit
cf69e58c32
2 changed files with 43 additions and 38 deletions
  1. 35 19
      package/ffmpeg/Makefile
  2. 8 19
      package/ffmpeg/patches/patch-configure

+ 35 - 19
package/ffmpeg/Makefile

@@ -4,32 +4,40 @@
 include ${TOPDIR}/rules.mk
 
 PKG_NAME:=		ffmpeg
-PKG_VERSION:=		0.6.1
+PKG_VERSION:=		0.8.3
 PKG_RELEASE:=		1
-PKG_MD5SUM:=		4f5d732d25eedfb072251b5314ba2093
+PKG_MD5SUM:=		556870ccfd6c9c0426c7dd86dd5beb62
 PKG_DESCR:=		record, convert and stream audio & video
 PKG_SECTION:=		libs
-PKG_DEPENDS:=		libfaad2
-PKG_BUILDDEP:=		faad2
 PKG_URL:=		http://www.ffmpeg.org/
 PKG_SITES:=		http://www.ffmpeg.org/releases/
 
 PKG_ARCH_DEPENDS:=	!cris
 
-PKG_SUBPKGS:=		FFMPEG FFPLAY
+PKG_SUBPKGS:=		LIBFFMPEG FFPLAY FFSERVER FFPROBE FFMPEG
 PKGSD_FFPLAY:=		ffmpeg based video player
 PKGSC_FFPLAY:=		multimedia
 PKGSS_FFPLAY:=		libsdl libpthread ffmpeg
 PKGSB_FFPLAY:=		sdl
+PKGSD_FFMPEG:=		ffmpeg video converter
+PKGSD_FFMPEG:=		multimedia
+PKGSD_FFSERVER:=	streaming server
+PKGSD_FFSERVER:=	multimedia
+PKGSD_FFPROBE:=		simple multimedia stream analyzer
+PKGSD_FFPROBE:=		multimedia
 
 DISTFILES:=		${PKG_NAME}-${PKG_VERSION}.tar.bz2
 
 include ${TOPDIR}/mk/package.mk
 
-$(eval $(call PKG_template,FFMPEG,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
+$(eval $(call PKG_template,LIBFFMPEG,libffmpeg,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
+$(eval $(call PKG_template,FFMPEG,ffmpeg,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_FFMPEG},${PKGSD_FFMPEG}))
+$(eval $(call PKG_template,FFSERVER,ffserver,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_FFSERVER},${PKGSD_FFSERVER}))
+$(eval $(call PKG_template,FFPROBE,ffprobe,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_FFPROBE},${PKGSD_FFPROBE}))
 $(eval $(call PKG_template,FFPLAY,ffplay,${PKG_VERSION}-${PKG_RELEASE},${PKGSS_FFPLAY},${PKGSD_FFPLAY},${PKGSC_FFPLAY}))
 
 TARGET_CFLAGS:=         $(filter-out -flto,$(TARGET_CFLAGS))
+TARGET_CFLAGS:=		$(subst Os,O2,$(TARGET_CFLAGS))
 
 ifeq ($(ADK_TARGET_CPU_WITH_MMX),y)
 CONFIGURE_CPU_OPTS:=	--enable-mmx
@@ -53,7 +61,6 @@ CONFIGURE_ARGS:=	--prefix=/usr \
 			--arch=${CPU_ARCH} \
 			--enable-cross-compile \
 			--sysroot=${STAGING_TARGET_DIR} \
-			--source-path=${WRKSRC} \
 			--cross-prefix=${TARGET_CROSS} \
 			--cc='$(TARGET_CC)' \
 			--host-cc=$(CC_FOR_BUILD) \
@@ -63,26 +70,35 @@ CONFIGURE_ARGS:=	--prefix=/usr \
 			--disable-stripping \
 			--enable-shared \
 			--enable-static \
-			--disable-ffmpeg \
-			--disable-ffserver \
-			--enable-ffplay \
 			--enable-gpl \
 			--enable-swscale \
 			--enable-postproc \
-			--enable-libfaad \
 			${CONFIGURE_CPU_OPTS}
 
-post-install:
-	${INSTALL_DIR} ${IDIR_FFMPEG}/usr/lib
-	${CP} ${WRKINST}/usr/lib/libavdevice.so* ${IDIR_FFMPEG}/usr/lib
-	${CP} ${WRKINST}/usr/lib/libavformat.so* ${IDIR_FFMPEG}/usr/lib
-	${CP} ${WRKINST}/usr/lib/libavcodec.so* ${IDIR_FFMPEG}/usr/lib
-	${CP} ${WRKINST}/usr/lib/libavutil.so* ${IDIR_FFMPEG}/usr/lib
-	${CP} ${WRKINST}/usr/lib/libpostproc.so* ${IDIR_FFMPEG}/usr/lib
-	${CP} ${WRKINST}/usr/lib/libswscale.so* ${IDIR_FFMPEG}/usr/lib
+libffmpeg-install:
+	${INSTALL_DIR} ${IDIR_LIBFFMPEG}/usr/lib
+	${CP} ${WRKINST}/usr/lib/libavdevice.so* ${IDIR_LIBFFMPEG}/usr/lib
+	${CP} ${WRKINST}/usr/lib/libavformat.so* ${IDIR_LIBFFMPEG}/usr/lib
+	${CP} ${WRKINST}/usr/lib/libavfilter.so* ${IDIR_LIBFFMPEG}/usr/lib
+	${CP} ${WRKINST}/usr/lib/libavcodec.so* ${IDIR_LIBFFMPEG}/usr/lib
+	${CP} ${WRKINST}/usr/lib/libavutil.so* ${IDIR_LIBFFMPEG}/usr/lib
+	${CP} ${WRKINST}/usr/lib/libpostproc.so* ${IDIR_LIBFFMPEG}/usr/lib
+	${CP} ${WRKINST}/usr/lib/libswscale.so* ${IDIR_LIBFFMPEG}/usr/lib
 
 ffplay-install:
 	${INSTALL_DIR} ${IDIR_FFPLAY}/usr/bin
 	${INSTALL_BIN} ${WRKINST}/usr/bin/ffplay ${IDIR_FFPLAY}/usr/bin
 
+ffmpeg-install:
+	${INSTALL_DIR} ${IDIR_FFMPEG}/usr/bin
+	${INSTALL_BIN} ${WRKINST}/usr/bin/ffmpeg ${IDIR_FFMPEG}/usr/bin
+
+ffserver-install:
+	${INSTALL_DIR} ${IDIR_FFSERVER}/usr/bin
+	${INSTALL_BIN} ${WRKINST}/usr/bin/ffserver ${IDIR_FFSERVER}/usr/bin
+
+ffprobe-install:
+	${INSTALL_DIR} ${IDIR_FFPROBE}/usr/bin
+	${INSTALL_BIN} ${WRKINST}/usr/bin/ffprobe ${IDIR_FFPROBE}/usr/bin
+
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 8 - 19
package/ffmpeg/patches/patch-configure

@@ -1,22 +1,11 @@
---- ffmpeg-0.6.1.orig/configure	2010-06-15 21:44:30.000000000 +0200
-+++ ffmpeg-0.6.1/configure	2011-02-05 19:31:24.000000000 +0100
-@@ -1689,8 +1690,8 @@ if ! check_cmd type mktemp; then
- fi
- 
- tmpfile(){
--    tmp=$(mktemp -u "${TMPDIR}/ffconf.XXXXXXXX")$2 &&
--        (set -C; exec > $tmp) 2>/dev/null ||
-+    tmp=$(mktemp "${TMPDIR}/ffconf.XXXXXXXX")$2 &&
-+        (set -C; rm $tmp; exec > $tmp) ||
-         die "Unable to create temporary file in $TMPDIR."
-     append TMPFILES $tmp
-     eval $1=$tmp
-@@ -2640,7 +2641,7 @@ if enabled libdc1394; then
-     die "ERROR: No version of libdc1394 found "
- fi
+--- ffmpeg-0.8.3.orig/configure	2011-09-07 15:34:40.000000000 +0200
++++ ffmpeg-0.8.3/configure	2011-09-16 05:19:35.928726043 +0200
+@@ -2947,7 +2947,7 @@ enabled libxavs    && require  libxavs x
+ enabled libxvid    && require  libxvid xvid.h xvid_global -lxvidcore
+ enabled mlib       && require  mediaLib mlib_types.h mlib_VectorSub_S16_U8_Mod -lmlib
  
 -SDL_CONFIG="${cross_prefix}sdl-config"
 +SDL_CONFIG="${sysroot}/usr/bin/sdl-config"
- if "${SDL_CONFIG}" --version > /dev/null 2>&1; then
-     sdl_cflags=$("${SDL_CONFIG}" --cflags)
-     sdl_libs=$("${SDL_CONFIG}" --libs)
+ if check_pkg_config sdl SDL_version.h SDL_Linked_Version; then
+     check_cpp_condition SDL.h "(SDL_MAJOR_VERSION<<16 | SDL_MINOR_VERSION<<8 | SDL_PATCHLEVEL) >= 0x010201" $sdl_cflags &&
+     enable sdl &&