[oe-commits] org.oe.dev ffmpeg: make svn buildable, fix configure options for 0.4.9-pre1, unify, clean up

xjqian commit openembedded-commits at lists.openembedded.org
Sun Feb 24 18:05:21 UTC 2008


ffmpeg: make svn buildable, fix configure options for 0.4.9-pre1, unify, clean up
* fix svn using SRCDATE
* reformat EXTRA_OECONF to make the order of the options follow  ./configure --help
* NOTE: --cpu(0.4.9-pre1) equals --arch(svn); while --tune(0.4.9-pre1) equals --cpu(svn)
* NOTE: oe uses --march and --mtune, so the above optimization by ffmpeg (--mcpu) is not really needed
* NOTE: but we try to make --cpu(0.4.9-pre1) or --arch(svn) as close to $TARGET_ARCH as possible
* checked --march and --mtune and $TARGET_CFLAGS are used correctly
* remove unnecessary FLAGS, configure options, oe_runconf(), etc in either svn or pre1
* unify svn and 0.4.9-pre1, however not much can be done for packaging and staging
* QA: add LEAD_SONAME, fix DESCRIPTION, HOME, AUTHOR

Author: xjqian at openembedded.org
Branch: org.openembedded.dev
Revision: 6678db7afc1756949a7d7e0c29814b8ba5988e74
ViewMTN: http://monotone.openembedded.org/revision/info/6678db7afc1756949a7d7e0c29814b8ba5988e74
Files:
1
packages/ffmpeg/ffmpeg.inc
packages/ffmpeg/ffmpeg_0.4.9-pre1.bb
packages/ffmpeg/ffmpeg_svn.bb
Diffs:

#
# mt diff -r9d49069aa898848e0d9e809ccb033c0e93c8b6fc -r6678db7afc1756949a7d7e0c29814b8ba5988e74
#
# 
# 
# patch "packages/ffmpeg/ffmpeg.inc"
#  from [74e136608c8bb3130afc1af896150031726472c0]
#    to [84044f7d06812f97708d5aaf10e1e260f0a1dda0]
# 
# patch "packages/ffmpeg/ffmpeg_0.4.9-pre1.bb"
#  from [204fc94bcae002b164372234b0291b302e3a5307]
#    to [c3572c18ab65a446d322a3902f88912447563717]
# 
# patch "packages/ffmpeg/ffmpeg_svn.bb"
#  from [0ddf51c0c1f64b7d633cd541ce950ce8db509a71]
#    to [a88f11ff93c4722033c395383b54f840896271a4]
# 
============================================================
--- packages/ffmpeg/ffmpeg.inc	74e136608c8bb3130afc1af896150031726472c0
+++ packages/ffmpeg/ffmpeg.inc	84044f7d06812f97708d5aaf10e1e260f0a1dda0
@@ -1,39 +1,35 @@
-DESCRIPTION = "ffmpeg"
+DESCRIPTION = "FFmpeg is a complete solution to record, convert and stream audio and video"
 HOMEPAGE = "http://ffmpeg.mplayerhq.hu/"
 AUTHOR = "Fabrice Bellard ffmpeg-devel at mplayerhq.hu"
 SECTION = "libs"
 PRIORITY = "optional"
 LICENSE = "LGPL"
 
-DEPENDS = "zlib libvorbis faac liba52 lame"
+DEPENDS = "zlib libogg libvorbis faac faad2 liba52 lame"
 RSUGGESTS = "mplayer"
 
 inherit autotools pkgconfig
 
-TARGET_LDFLAGS_append = " -lm -la52 "
+LEAD_SONAME = "libavcodec.so"
 
 EXTRA_OECONF = "\
+        \
         --enable-pp \
         --enable-shared \
         --enable-pthreads \
         --enable-gpl \
         \
-        --disable-audio-beos \
-        --disable-v4l \
-        --disable-dv1394 \
+        --cross-prefix=${TARGET_PREFIX} \
         --disable-debug \
         --disable-ffserver \
         --disable-ffplay \
         \
-        --cross-prefix=${TARGET_PREFIX} \
-        \
-        --cpu=${PACKAGE_ARCH} \
-        \
 "
 
-# We do this because the install program is called with -s which causes it to call "strip" and it then mangles cross compiled stuff..
-PATH_prepend="${CROSS_DIR}/${TARGET_SYS}/bin:"
+PACKAGES += "${PN}-vhook-dbg ${PN}-vhook"
 
+FILES_${PN} = "${bindir}"
+FILES_${PN}-dev = "${includedir}/${PN}"
+
+FILES_${PN}-vhook = "${libdir}/vhook"
+FILES_${PN}-vhook-dbg += "${libdir}/vhook/.debug"
-do_configure_prepend() {
-        export CC="${CC}"
-}
============================================================
--- packages/ffmpeg/ffmpeg_0.4.9-pre1.bb	204fc94bcae002b164372234b0291b302e3a5307
+++ packages/ffmpeg/ffmpeg_0.4.9-pre1.bb	c3572c18ab65a446d322a3902f88912447563717
@@ -1,16 +1,18 @@ require ffmpeg.inc
 require ffmpeg.inc
 
-DEPENDS += "faad2"
+PR = "r3"
 
-PR = "r2"
-
 SRC_URI = "${SOURCEFORGE_MIRROR}/ffmpeg/ffmpeg-${PV}.tar.gz \
-	file://configure.patch;patch=0 \
-	file://gcc4.patch;patch=1 \
-	file://soname.patch;patch=1 \
-	"
+           file://configure.patch;patch=0 \
+           file://gcc4.patch;patch=1 \
+           file://soname.patch;patch=1 \
+          "
 
 EXTRA_OECONF += " \
+        \
+        --prefix=${D}${prefix} \
+        --mandir=${D}${prefix}/share/man \
+        \
         --enable-mp3lame \
         --enable-vorbis \
         --enable-faad \
@@ -22,39 +24,37 @@ EXTRA_OECONF += " \
         --disable-amr_nb \
         --enable-amr_nb-fixed \
         --disable-amr_wb \
-        --enable-zlib \
         \
+        --cpu=${TARGET_ARCH} \
+        --tune=${PACKAGE_ARCH} \
+        --extra-ldflags="-la52" \
         \
-        --extra-cflags=\$(TARGET_CFLAGS) \
-        --extra-ldflags=\$(TARGET_LDFLAGS) \
-        --extra-libs=\$(TARGET_LDFLAGS) \
-        \
-        --prefix=${D}${prefix} \
-        --mandir=${D}${prefix}/share/man \
+        --disable-audio-beos \
+        --disable-v4l \
+        --disable-dv1394 \
 "
 
-PACKAGES += "libavcodec libavcodec-dev libavformat libavformat-dev"
-
-FILES_${PN} += "${libdir}/vhook"
-FILES_${PN}-dev = "${includedir}"
-FILES_${PN}-dbg += "${libdir}/vhook/.debug"
-
-FILES_libavcodec = "${libdir}/libavcodec*.so.*"
-FILES_libavcodec-dev = "${libdir}/libavcodec*.so ${libdir}/libavcodec*.la ${libdir}/libavcodec*.a"
-FILES_libavformat = "${libdir}/libavformat*.so.*"
-FILES_libavformat-dev = "${libdir}/libavformat*.so ${libdir}/libavformat*.la ${libdir}/libavformat*.a"
-
 do_stage() {
-        oe_libinstall -a -so -C libavcodec libavcodec ${STAGING_LIBDIR}
+        oe_libinstall -a -so -C libavcodec  libavcodec ${STAGING_LIBDIR}
         oe_libinstall -a -so -C libavformat libavformat ${STAGING_LIBDIR}
 
         install -d ${STAGING_INCDIR}/ffmpeg
-        install -m 0644 ${S}/libavcodec/avcodec.h ${STAGING_INCDIR}/ffmpeg/avcodec.h
-        install -m 0644 ${S}/libavcodec/common.h ${STAGING_INCDIR}/ffmpeg/common.h
+
+        install -m 0644 ${S}/libavcodec/avcodec.h  ${STAGING_INCDIR}/ffmpeg/avcodec.h
+        install -m 0644 ${S}/libavcodec/common.h   ${STAGING_INCDIR}/ffmpeg/common.h
         install -m 0644 ${S}/libavcodec/rational.h ${STAGING_INCDIR}/ffmpeg/rational.h
-        install -m 0644 ${S}/libavformat/avformat.h ${STAGING_INCDIR}/ffmpeg/avformat.h
-        install -m 0644 ${S}/libavformat/avio.h ${STAGING_INCDIR}/ffmpeg/avio.h
-        install -m 0644 ${S}/libavformat/rtp.h ${STAGING_INCDIR}/ffmpeg/rtp.h
-        install -m 0644 ${S}/libavformat/rtsp.h ${STAGING_INCDIR}/ffmpeg/rtsp.h
+
+        install -m 0644 ${S}/libavformat/avformat.h  ${STAGING_INCDIR}/ffmpeg/avformat.h
+        install -m 0644 ${S}/libavformat/avio.h      ${STAGING_INCDIR}/ffmpeg/avio.h
+        install -m 0644 ${S}/libavformat/rtp.h       ${STAGING_INCDIR}/ffmpeg/rtp.h
+        install -m 0644 ${S}/libavformat/rtsp.h      ${STAGING_INCDIR}/ffmpeg/rtsp.h
         install -m 0644 ${S}/libavformat/rtspcodes.h ${STAGING_INCDIR}/ffmpeg/rtspcodes.h
 }
+
+PACKAGES += "libavcodec libavcodec-dev \ 
+             libavformat libavformat-dev"
+
+FILES_libavcodec = "${libdir}/libavcodec*.so.*"
+FILES_libavcodec-dev = "${libdir}/libavcodec*.so"
+FILES_libavformat = "${libdir}/libavformat*.so.*"
+FILES_libavformat-dev = "${libdir}/libavformat*.so"
============================================================
--- packages/ffmpeg/ffmpeg_svn.bb	0ddf51c0c1f64b7d633cd541ce950ce8db509a71
+++ packages/ffmpeg/ffmpeg_svn.bb	a88f11ff93c4722033c395383b54f840896271a4
@@ -1,9 +1,9 @@ require ffmpeg.inc
 require ffmpeg.inc
 
-DEPENDS += "libogg"
+DEPENDS += "libgsm"
 
-PV = "0.4.9+svnr${SRCREV}" 
-PR = "r2"
+PV = "0.4.9+svn${SRCDATE}" 
+PR = "r3"
 
 DEFAULT_PREFERENCE = "-1"
 
@@ -12,118 +12,94 @@ EXTRA_OECONF += " \
 S = "${WORKDIR}/trunk"
 
 EXTRA_OECONF += " \
-        --enable-libmp3lame \
-        --enable-libvorbis \
-        --disable-libfaad \
+        --prefix=/usr \
+        \
+        --enable-nonfree \
+        --enable-swscaler \
+        --enable-x11grab \
+        \
         --enable-liba52 \
         --enable-liba52bin \
-        --enable-libogg \
-        --enable-gpl \
+        --enable-libfaac \
+        --enable-libfaad \
+        --enable-libfaadbin \
+        --enable-libgsm \
+        --enable-libmp3lame \
+        --enable-libvorbis \
         \
-        --disable-strip \
-        \
-        \
-        --cpu=${PACKAGE_ARCH} \
-        --arch=${PACKAGE_ARCH} \
+        --arch=${TARGET_ARCH} \
+        --cross-compile \
+        --cc="gcc ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}" \
+        --extra-cflags="${TARGET_CFLAGS}" \
+        --extra-ldflags="${TARGET_LDFLAGS}" \
+        --enable-hardcoded-tables \
 "
 
-oe_runconf () {
-        # make ffmpeg detect arm targets that don't end in 'l'
-        sed -i -e s:'armv\[4567\]\*l':'armv\[4567\]\*':g ${S}/configure
-        if [ -x ${S}/configure ] ; then
-                cfgcmd="${S}/configure \
-                        --prefix=${prefix} \
-                        --mandir=${mandir} \
-                        ${EXTRA_OECONF} \
-                    $@"
-                oenote "Running $cfgcmd..."
-                $cfgcmd || oefatal "oe_runconf failed"
-        else
-                oefatal "no configure script found"
-        fi
-
+do_configure() {
+         ${S}/configure ${EXTRA_OECONF}
 }
 
 do_stage() {
-        oe_libinstall -a -so -C libavcodec libavcodec ${STAGING_LIBDIR}
-        oe_libinstall -a -so -C libavdevice libavdevice ${STAGING_LIBDIR}
-        oe_libinstall -a -so -C libavformat libavformat ${STAGING_LIBDIR}
-        oe_libinstall -a -so -C libavutil libavutil ${STAGING_LIBDIR}
-        oe_libinstall -a -so -C libpostproc libpostproc ${STAGING_LIBDIR}
+        for lib in libavcodec libavdevice libavformat \
+                   libavutil libpostproc libswscale
+        do
+            oe_libinstall -a -so -C $lib $lib ${STAGING_LIBDIR}
+        done 
 
         install -d ${STAGING_INCDIR}/ffmpeg
-        install -m 0644 ${S}/libavcodec/avcodec.h \
-                ${STAGING_INCDIR}/ffmpeg/avcodec.h
-        install -m 0644 ${S}/libavdevice/avdevice.h \
-                ${STAGING_INCDIR}/ffmpeg/avdevice.h
-        install -m 0644 ${S}/libavformat/avformat.h \
-                ${STAGING_INCDIR}/ffmpeg/avformat.h
-        install -m 0644 ${S}/libavformat/avio.h \
-                ${STAGING_INCDIR}/ffmpeg/avio.h
-        install -m 0644 ${S}/libavformat/rtp.h \
-                ${STAGING_INCDIR}/ffmpeg/rtp.h
-        install -m 0644 ${S}/libavformat/rtsp.h \
-                ${STAGING_INCDIR}/ffmpeg/rtsp.h
-        install -m 0644 ${S}/libavformat/rtspcodes.h \
-                ${STAGING_INCDIR}/ffmpeg/rtspcodes.h
 
-        install -m 0644 ${S}/libavutil/avutil.h \
-                ${STAGING_INCDIR}/ffmpeg/avutil.h
-        install -m 0644 ${S}/libavutil/bswap.h \
-                ${STAGING_INCDIR}/ffmpeg/bswap.h
-        install -m 0644 ${S}/libavutil/common.h \
-                ${STAGING_INCDIR}/ffmpeg/common.h
-        install -m 0644 ${S}/libavutil/crc.h \
-                ${STAGING_INCDIR}/ffmpeg/crc.h
-        install -m 0644 ${S}/libavutil/integer.h \
-                ${STAGING_INCDIR}/ffmpeg/integer.h
-        install -m 0644 ${S}/libavutil/intfloat_readwrite.h \
-                ${STAGING_INCDIR}/ffmpeg/intfloat_readwrite.h
-        install -m 0644 ${S}/libavutil/mathematics.h \
-                ${STAGING_INCDIR}/ffmpeg/mathematics.h
-        install -m 0644 ${S}/libavutil/rational.h \
-                ${STAGING_INCDIR}/ffmpeg/rational.h
-        install -m 0644 ${S}/libavutil/mem.h \
-                ${STAGING_INCDIR}/ffmpeg/mem.h
-        install -m 0644 ${S}/libavutil/log.h \
-                ${STAGING_INCDIR}/ffmpeg/log.h
+        install -m 0644 ${S}/libavcodec/avcodec.h ${STAGING_INCDIR}/ffmpeg/avcodec.h
+        install -m 0644 ${S}/libavcodec/opt.h ${STAGING_INCDIR}/ffmpeg/opt.h
 
+        install -m 0644 ${S}/libavdevice/avdevice.h  ${STAGING_INCDIR}/ffmpeg/avdevice.h
+        
+        for h in avformat.h avio.h rtp.h rtsp.h rtspcodes.h
+        do
+           install -m 0644 ${S}/libavformat/$h  ${STAGING_INCDIR}/ffmpeg/$h
+        done
+
+        for h in adler32.h avstring.h avutil.h base64.h bswap.h \
+                 common.h crc.h fifo.h integer.h intfloat_readwrite.h \
+                 log.h lzo.h mathematics.h md5.h mem.h random.h \
+                 rational.h sha1.h
+        do
+           install -m 0644 ${S}/libavutil/$h        ${STAGING_INCDIR}/ffmpeg/$h
+        done
+
+        install -m 0644 ${S}/libswscale/swscale.h ${STAGING_INCDIR}/ffmpeg/swscale.h
+        install -m 0644 ${S}/libswscale/rgb2rgb.h ${STAGING_INCDIR}/ffmpeg/rgb2rgb.h
+
         install -d ${STAGING_INCDIR}/libpostproc
-        install -m 0644 ${S}/libpostproc/postprocess.h \
-                ${STAGING_INCDIR}/libpostproc/postprocess.h
+        install -m 0644 ${S}/libpostproc/postprocess.h ${STAGING_INCDIR}/libpostproc/postprocess.h
 }
 
-PACKAGES += "libavcodec libavcodec-dev \
-        libavdevice libavdevice-dev \
-        libavformat libavformat-dev \
-        libavutil libavutil-dev \
-        libpostproc libpostproc-dev"
+PACKAGES += "libavcodec  libavcodec-dev  libavcodec-dbg \
+             libavdevice libavdevice-dev libavdevice-dbg \
+             libavformat libavformat-dev libavformat-dbg \
+             libavutil   libavutil-dev   libavutil-dbg \
+             libpostproc libpostproc-dev libpostproc-dbg \
+             libswscale  libswscale-dev  libswscale-dbg"
 
-FILES_${PN} = "${bindir} ${libdir}/vhook"
-FILES_${PN}-dev += "${bindir} ${libdir}/pkgconfig/libswscale.pc"
-FILES_${PN}-doc = "${mandir}"
-
 FILES_libavcodec = "${libdir}/libavcodec*.so.*"
-FILES_libavcodec-dev = "${libdir}/libavcodec*.so \
-        ${libdir}/pkgconfig/libavcodec.pc \
-        ${libdir}/libavcodec*.la ${libdir}/libavcodec*.a"
+FILES_libavcodec-dev = "${libdir}/libavcodec*.so ${libdir}/pkgconfig/libavcodec.pc ${libdir}/libavcodec*.a"
+FILES_libavcodec-dbg += "${libdir}/.debug/libavcodec*"
 
 FILES_libavdevice = "${libdir}/libavdevice*.so.*"
-FILES_libavdevice-dev = "${libdir}/libavdevice*.so \
-        ${libdir}/pkgconfig/libavdevice.pc \
-        ${libdir}/libavdevice*.la ${libdir}/libavdevice*.a"
+FILES_libavdevice-dev = "${libdir}/libavdevice*.so ${libdir}/pkgconfig/libavdevice.pc ${libdir}/libavdevice*.a"
+FILES_libavdevice-dbg += "${libdir}/.debug/libavdevice*"
 
 FILES_libavformat = "${libdir}/libavformat*.so.*"
-FILES_libavformat-dev = "${libdir}/libavformat*.so \
-        ${libdir}/pkgconfig/libavformat.pc \
-        ${libdir}/libavformat*.la ${libdir}/libavformat*.a"
+FILES_libavformat-dev = "${libdir}/libavformat*.so ${libdir}/pkgconfig/libavformat.pc ${libdir}/libavformat*.a"
+FILES_libavformat-dbg += "${libdir}/.debug/libavformat*"
 
 FILES_libavutil = "${libdir}/libavutil*.so.*"
-FILES_libavutil-dev = "${libdir}/libavutil*.so \
-        ${libdir}/pkgconfig/libavutil.pc \
-        ${libdir}/libavutil*.la ${libdir}/libavutil*.a"
+FILES_libavutil-dev = "${libdir}/libavutil*.so ${libdir}/pkgconfig/libavutil.pc ${libdir}/libavutil*.a"
+FILES_libavutil-dbg += "${libdir}/.debug/libavutil*"
 
 FILES_libpostproc = "${libdir}/libpostproc*.so.*"
+FILES_libpostproc-dev = "${libdir}/libpostproc*.so  ${libdir}/pkgconfig/libpostproc.pc ${libdir}/libpostproc*.a ${includedir}/postproc"
+FILES_libpostproc-dbg += "${libdir}/.debug/libpostproc*"
+
+FILES_libswscale = "${libdir}/libswscale*.so.*"
+FILES_libswscale-dev = "${libdir}/libswscale*.so ${libdir}/pkgconfig/libswscale.pc ${libdir}/libswscale*.a"
+FILES_libswscale-dbg += "${libdir}/.debug/libswscale*"
-FILES_libpostproc-dev = "${libdir}/libpostproc*.so \
-        ${libdir}/pkgconfig/libpostproc.pc \
-        ${libdir}/libpostproc*.la ${libdir}/libpostproc*.a"






More information about the Openembedded-commits mailing list